Root/
1 | |
2 | BTRFS |
3 | ===== |
4 | |
5 | Btrfs is a new copy on write filesystem for Linux aimed at |
6 | implementing advanced features while focusing on fault tolerance, |
7 | repair and easy administration. Initially developed by Oracle, Btrfs |
8 | is licensed under the GPL and open for contribution from anyone. |
9 | |
10 | Linux has a wealth of filesystems to choose from, but we are facing a |
11 | number of challenges with scaling to the large storage subsystems that |
12 | are becoming common in today's data centers. Filesystems need to scale |
13 | in their ability to address and manage large storage, and also in |
14 | their ability to detect, repair and tolerate errors in the data stored |
15 | on disk. Btrfs is under heavy development, and is not suitable for |
16 | any uses other than benchmarking and review. The Btrfs disk format is |
17 | not yet finalized. |
18 | |
19 | The main Btrfs features include: |
20 | |
21 | * Extent based file storage (2^64 max file size) |
22 | * Space efficient packing of small files |
23 | * Space efficient indexed directories |
24 | * Dynamic inode allocation |
25 | * Writable snapshots |
26 | * Subvolumes (separate internal filesystem roots) |
27 | * Object level mirroring and striping |
28 | * Checksums on data and metadata (multiple algorithms available) |
29 | * Compression |
30 | * Integrated multiple device support, with several raid algorithms |
31 | * Online filesystem check (not yet implemented) |
32 | * Very fast offline filesystem check |
33 | * Efficient incremental backup and FS mirroring (not yet implemented) |
34 | * Online filesystem defragmentation |
35 | |
36 | |
37 | |
38 | MAILING LIST |
39 | ============ |
40 | |
41 | There is a Btrfs mailing list hosted on vger.kernel.org. You can |
42 | find details on how to subscribe here: |
43 | |
44 | http://vger.kernel.org/vger-lists.html#linux-btrfs |
45 | |
46 | Mailing list archives are available from gmane: |
47 | |
48 | http://dir.gmane.org/gmane.comp.file-systems.btrfs |
49 | |
50 | |
51 | |
52 | IRC |
53 | === |
54 | |
55 | Discussion of Btrfs also occurs on the #btrfs channel of the Freenode |
56 | IRC network. |
57 | |
58 | |
59 | |
60 | UTILITIES |
61 | ========= |
62 | |
63 | Userspace tools for creating and manipulating Btrfs file systems are |
64 | available from the git repository at the following location: |
65 | |
66 | http://git.kernel.org/?p=linux/kernel/git/mason/btrfs-progs-unstable.git |
67 | git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-progs-unstable.git |
68 | |
69 | These include the following tools: |
70 | |
71 | mkfs.btrfs: create a filesystem |
72 | |
73 | btrfsctl: control program to create snapshots and subvolumes: |
74 | |
75 | mount /dev/sda2 /mnt |
76 | btrfsctl -s new_subvol_name /mnt |
77 | btrfsctl -s snapshot_of_default /mnt/default |
78 | btrfsctl -s snapshot_of_new_subvol /mnt/new_subvol_name |
79 | btrfsctl -s snapshot_of_a_snapshot /mnt/snapshot_of_new_subvol |
80 | ls /mnt |
81 | default snapshot_of_a_snapshot snapshot_of_new_subvol |
82 | new_subvol_name snapshot_of_default |
83 | |
84 | Snapshots and subvolumes cannot be deleted right now, but you can |
85 | rm -rf all the files and directories inside them. |
86 | |
87 | btrfsck: do a limited check of the FS extent trees. |
88 | |
89 | btrfs-debug-tree: print all of the FS metadata in text form. Example: |
90 | |
91 | btrfs-debug-tree /dev/sda2 >& big_output_file |
92 |
Branches:
ben-wpan
ben-wpan-stefan
javiroman/ks7010
jz-2.6.34
jz-2.6.34-rc5
jz-2.6.34-rc6
jz-2.6.34-rc7
jz-2.6.35
jz-2.6.36
jz-2.6.37
jz-2.6.38
jz-2.6.39
jz-3.0
jz-3.1
jz-3.11
jz-3.12
jz-3.13
jz-3.15
jz-3.16
jz-3.18-dt
jz-3.2
jz-3.3
jz-3.4
jz-3.5
jz-3.6
jz-3.6-rc2-pwm
jz-3.9
jz-3.9-clk
jz-3.9-rc8
jz47xx
jz47xx-2.6.38
master
Tags:
od-2011-09-04
od-2011-09-18
v2.6.34-rc5
v2.6.34-rc6
v2.6.34-rc7
v3.9