tail head cat sleep
QR code linking to this page

Manual Pages  — LIBUFS


libufs – operate on UFS file systems from userland



UFS File System Access Library (libufs, -lufs)


#include <sys/param.h>
#include <sys/mount.h>
#include <ufs/ufs/ufsmount.h>
#include <ufs/ufs/dinode.h>
#include <ufs/ffs/fs.h>
#include <libufs.h>


The libufs library and the functions it provides are used for implementing utilities which need to access a UFS file system at a low level from userland. Facilities provided are used to implement utilities such as newfs(8) and dumpfs(8). The libufs library is designed to be simple, and to provide functions that are traditionally useful to have.

A disk is represented as the type struct uufsd as defined in <libufs.h>. The structure is filled out, operations are performed, and the disk is closed.


Functions provided by libufs return -1 in every functional error situation. They also set the d_error field of struct uufsd to a string describing the error.


bread(3), bwrite(3), cgread(3), cgread1(3), cgwrite1(3), sbread(3), sbwrite(3), ufs_disk_close(3), ufs_disk_fillout(3), ufs_disk_fillout_blank(3), ufs_disk_write(3), ffs(7)


The libufs(3) library first appeared in FreeBSD 5.0 .


Juli Mallett <Mt jmallett@FreeBSD.org>

Additional design, feedback, and ideas were provided by Poul-Henning Kamp <Mt phk@FreeBSD.org>.

LIBUFS (3) June 4, 2003

tail head cat sleep
QR code linking to this page

Please direct any comments about this manual page service to Ben Bullock. Privacy policy.

C is a language that combines all the elegance and power of assembly language with all the readability and maintainability of assembly language.