特殊:Badtitle/NS100:Btrfs

来自Ubuntu中文
Wikibot留言 | 贡献2010年5月19日 (三) 21:47的版本
(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)
跳到导航跳到搜索

{{#ifexist: :Btrfs/zh | | {{#ifexist: Btrfs/zh | | {{#ifeq: {{#titleparts:Btrfs|1|-1|}} | zh | | }} }} }} {{#ifeq: {{#titleparts:Btrfs|1|-1|}} | zh | | }}

What is btrfs

Basic description of btrfs. Strengths, weaknesses, why is this important, etc.

Features:

  • Extent based file storage (2^64 max file size)
  • Space efficient packing of small files
  • Space efficient indexed directories
  • Dynamic inode allocation
  • Writable snapshots
  • Subvolumes (separate internal filesystem roots)
  • Object level mirroring and striping
  • Checksums on data and metadata (multiple algorithms available)
  • Compression
  • Integrated multiple device support, with several raid algorithms
  • Online filesystem check
  • Very fast offline filesystem check
  • Efficient incremental backup and FS mirroring
  • Online filesystem defragmentation

How to install

Ubuntu 8.10 Intrepid

PPA deb packages

[1] Lines for sources.list.d:

deb http://ppa.launchpad.net/brcha/ppa/ubuntu intrepid main
deb-src http://ppa.launchpad.net/brcha/ppa/ubuntu intrepid main

Add the GPG key:

sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 17f547c39c5c4071e254d0a7313d312748a22a95

Download module source and btrfs tools:

sudo apt-get install btrfs btrfs-progs module-assistant

Build and install kernel module:

sudo module-assistant auto-install btrfs
sudo modprobe btrfs

Compile from Source

NOT ACTUALLY WORKING YET btrfs wiki getting started page

Kernel Module Dependencies

8.10 Kernel 2.6.27-9-generic

  • CONFIG_LIBCRC32C=m
  • CONFIG_ZLIB_INFLATE=y
  • CONFIG_ZLIB_DEFLATE=m
  • build-essential: make, compiler, etc
  • linux-headers-2.6.27-9-generic: latest kernel headers
sudo apt-get install build-essential linux-headers-2.6.27-9-generic

Patch: [2] Download, patch and compile code:

wget http://www.kernel.org/pub/linux/kernel/people/mason/btrfs/btrfs-0.17.tar.bz2
tar -jxvf btrfs-0.17.tar.bz2
cd btrfs-0.17
#apply patch
make

Currently btrfs does not work with kernel 2.6.27 Ensure modules are up and running, and insert btrfs module into kernel.

sudo modprobe libcrc32c zlib_inflate zlib_deflate
sudo insmod btrfs.ko
btrfs progs dependencies
sudo apt-get install e2fsprogs uuid-dev
wget http://www.kernel.org/pub/linux/kernel/people/mason/btrfs/btrfs-progs-0.17.tar.bz2
tar -jxvf btrfs-progs-0.17.tar.bz2
make

btrfs-progs compile fine

Ubuntu 9.04 Jaunty

TBD

How to use

  • How to format disk as btrfs
  • How to grow/shrink file system
  • How to create snapshots
  • How to access snapshots
  • How to convert ext2/3(/4?) partitions to btrfs
  • How to create an image of a btrfs file system
  • How to restore from an image of a btrfs file system
  • How to recover from a failed device
  • How to add another device to file system

[[category:Category:Documentation btrfs wiki documentation category]]

Troubleshooting

Alternatives

  • Tux3?
  • ZFS over Fuse?
  • Hammer FS (DragonFly BSD)

Links