btrfs-progs-5.7

btrfs-progs の概要

btrfs-progs パッケージは B ツリーファイルシステム (btffs) の管理およびデバッグを行うツールを提供します。

本パッケージは LFS-10.0 において正しくビルドでき動作することが確認されています。

パッケージ情報

Btrfs-progs の依存パッケージ

必須

LZO-2.10

推奨

任意

LVM2-2.03.10 (テストにて dmsetup が利用される), Python-2.7.18 (Python バインディング), reiserfsprogs-3.6.27 (テストのため)

ユーザー情報: http://wiki.linuxfromscratch.org/blfs/wiki/btrfs-progs

カーネルの設定

カーネル設定における以下のオプションを有効にして、カーネルを再コンパイルします。

File systems --->
  <*/M> Btrfs filesystem support [CONFIG_BTRFS_FS]
[注記]

注記

テストの中には CONFIG_BTRFS_FS_POSIX_ACL と CONFIG_REISERFS_FS_XATTR の設定を必要とするものがあります。 Btrfs に関する他のオプションはすべて任意設定です。

btrfs-progs のインストール

以下のコマンドを実行して btrfs-progs をビルドします。

./configure --prefix=/usr \
            --bindir=/bin \
            --libdir=/lib &&
make
[注記]

注記

Some tests require grep built with perl regular expressions. To obtain this, rebuild grep with the LFS Chapter 8 instructions after installing PCRE-8.44.

テストを実行する場合は、その前にサポートプログラムをビルドし、さらに失敗するテストは無効にします。

make fssum &&

sed -i '/found/s/^/: #/' tests/convert-tests.sh &&

mv tests/convert-tests/010-reiserfs-basic/test.sh{,.broken}                 &&
mv tests/convert-tests/011-reiserfs-delete-all-rollback/test.sh{,.broken}   &&
mv tests/convert-tests/012-reiserfs-large-hole-extent/test.sh{,.broken}     &&
mv tests/convert-tests/013-reiserfs-common-inode-flags/test.sh{,.broken}    &&
mv tests/convert-tests/014-reiserfs-tail-handling/test.sh{,.broken}

ビルド結果をテストする場合は (root ユーザーになって) 以下を実行します。

pushd tests
   ./fsck-tests.sh    
   ./mkfs-tests.sh    
   ./cli-tests.sh     
   ./convert-tests.sh 
   ./misc-tests.sh    
   ./fuzz-tests.sh    
popd

root ユーザーになってパッケージをインストールします。

make install &&

ln -sfv ../../lib/$(readlink /lib/libbtrfs.so) /usr/lib/libbtrfs.so &&
ln -sfv ../../lib/$(readlink /lib/libbtrfsutil.so) /usr/lib/libbtrfsutil.so &&
rm -fv /lib/libbtrfs.{a,so} /lib/libbtrfsutil.{a,so} &&
mv -v /bin/{mkfs,fsck}.btrfs /sbin

コマンド説明

--disable-documentation: このオプションは、推奨する依存パッケージがインストールされていない場合に必要となります。

mv tests/{cli,convert,misc,fuzz}-tests/ ...: 失敗するテストを無効にし、テスト全体を成功させます。

ln -s ... /usr/lib/libbtrfs.so: 必要なシンボリックリンクを生成します。

rm /lib/libbtrfs.{a,so}: 不要なライブラリを削除します。

パッケージ構成

インストールプログラム: btrfs, btrfs-convert, btrfs-find-root, btrfs-image, btrfs-map-logical, btrfs-select-super, btrfsck (link to btrfs), btrfstune, fsck.btrfs, mkfs.btrfs
インストールライブラリ: libbtrfs.so, libbtrfsutil.so
インストールディレクトリ: /usr/include/btrfs

概略説明

btrfs

is the main interface into btrfs filesystem operations.

btrfs-convert

converts from an ext2/3/4 filesystem to btrfs.

btrfs-find-root

is a filter to find btrfs root.

btrfs-map-logical

maps btrfs logical extent to physical extent.

btrfs-select-super

overwrites the primary superblock with a backup copy.

btrfstune

tunes various filesystem parameters.

fsck.btrfs

does nothing, but is present for consistency with fstab.

mkfs.btrfs

creates a btrfs file system.

最終更新日: 2020-08-21 20:11:43 +0900