i386 fixes from axboe
[platform/upstream/btrfs-progs.git] / INSTALL
1 Install Instructions
2
3 Btrfs puts snapshots and subvolumes into the root directory of the FS.  This
4 directory can only be changed by btrfsctl right now, and normal filesystem
5 operations do not work on it.  The default subvolume is called 'default',
6 and you can create files and directories in mount_point/default
7
8 Btrfs uses the crypto manager interface in the kernel for file and
9 metadata checksums.  You need to compile the kernel with:
10
11 CONFIG_CRYPTO=y
12 CONFIG_CRYPTO_MANAGER=m
13 CONFIG_CRYPTO_CRC32C=m
14
15 cryptomanager and crc32c can be static as well.  Once your kernel is
16 setup, typing make in the btrfs module sources will build against the
17 running kernel.  When the build is complete:
18
19 modprobe crc32c
20 modprobe cryptomgr
21 insmod btrfs.ko
22
23 The Btrfs utility programs require libuuid to build.  This can be found
24 in the e2fsprogs sources, and is usually available as libuuid or
25 e2fsprogs-devel from various distros.
26
27 Building the utilities is just make ; make install.  The programs go
28 into /usr/local/bin.  The commands available are:
29
30 mkfs.btrfs: create a filesystem
31
32 btrfsctl: control program to create snapshots and subvolumes:
33
34         mount /dev/sda2 /mnt
35         btrfsctl -s new_subvol_name /mnt
36         btrfsctl -s snapshot_of_default /mnt/default
37         btrfsctl -s snapshot_of_new_subvol /mnt/new_subvol_name
38         btrfsctl -s snapshot_of_a_snapshot /mnt/snapshot_of_new_subvol
39         ls /mnt
40         default snapshot_of_a_snapshot snapshot_of_new_subvol
41         new_subvol_name snapshot_of_default
42
43         Snapshots and subvolumes cannot be deleted right now, but you can
44         rm -rf all the files and directories inside them.
45
46 btrfsck: do a limited check of the FS extent trees.</li>
47
48 debug-tree: print all of the FS metadata in text form.  Example:
49
50         debug-tree /dev/sda2 >& big_output_file
51