linux/Documentation/filesystems/btrfs.txt
<<
>>
Prefs
   1
   2        BTRFS
   3        =====
   4
   5Btrfs is a new copy on write filesystem for Linux aimed at
   6implementing advanced features while focusing on fault tolerance,
   7repair and easy administration. Initially developed by Oracle, Btrfs
   8is licensed under the GPL and open for contribution from anyone.
   9
  10Linux has a wealth of filesystems to choose from, but we are facing a
  11number of challenges with scaling to the large storage subsystems that
  12are becoming common in today's data centers. Filesystems need to scale
  13in their ability to address and manage large storage, and also in
  14their ability to detect, repair and tolerate errors in the data stored
  15on disk.  Btrfs is under heavy development, and is not suitable for
  16any uses other than benchmarking and review. The Btrfs disk format is
  17not yet finalized.
  18
  19The 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
  41There is a Btrfs mailing list hosted on vger.kernel.org. You can
  42find details on how to subscribe here:
  43
  44http://vger.kernel.org/vger-lists.html#linux-btrfs
  45
  46Mailing list archives are available from gmane:
  47
  48http://dir.gmane.org/gmane.comp.file-systems.btrfs
  49
  50
  51
  52        IRC
  53        ===
  54
  55Discussion of Btrfs also occurs on the #btrfs channel of the Freenode
  56IRC network.
  57
  58
  59
  60        UTILITIES
  61        =========
  62
  63Userspace tools for creating and manipulating Btrfs file systems are
  64available from the git repository at the following location:
  65
  66 http://git.kernel.org/?p=linux/kernel/git/mason/btrfs-progs.git
  67 git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-progs.git
  68
  69These include the following tools:
  70
  71mkfs.btrfs: create a filesystem
  72
  73btrfsctl: 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
  87btrfsck: do a limited check of the FS extent trees.
  88
  89btrfs-debug-tree: print all of the FS metadata in text form.  Example:
  90
  91        btrfs-debug-tree /dev/sda2 >& big_output_file
  92
lxr.linux.no kindly hosted by Redpill Linpro AS, provider of Linux consulting and operations services since 1995.