「Bcachefs」の版間の差分
(→Installation: 翻訳) |
(→Setup: 翻訳) |
||
11行目: | 11行目: | ||
Bcachefs ユーザースペースツールは {{AUR|bcachefs-tools-git}} から入手できます。 |
Bcachefs ユーザースペースツールは {{AUR|bcachefs-tools-git}} から入手できます。 |
||
− | == |
+ | == セットアップ == |
− | === |
+ | === シングルドライブ === |
− | # |
+ | #bcachefs format /dev/sda |
− | # |
+ | #mount -t bcachefs /dev/sda/mnt |
− | === |
+ | === RAID0/1 の複数のドライブ=== |
+ | Bcachefs はレプリカをデータの任意のインスタンスとして定義するため、2つのドライブを備えた1つのレプリカは RAID0 に相当し、2つのドライブを備えた2つのレプリカは RAID1 に相当します。 |
||
− | Bcachefs defines a replica as any instance of data, so 1 replica with 2 drives is equivalent to RAID0, 2 replicas with 2 drives is equivalent to RAID1, etc. |
||
# bcachefs format /dev/sda /dev/sdb --replicas=''n'' |
# bcachefs format /dev/sda /dev/sdb --replicas=''n'' |
||
# mount -t bcachefs /dev/sda1:/dev/sdb1 /mnt |
# mount -t bcachefs /dev/sda1:/dev/sdb1 /mnt |
||
− | === RAID0/1 |
+ | === SSD キャッシングを備えた RAID0/1 === |
+ | Bcachefs には、バックグラウンド、フォアグラウンド、プロモートの3つのストレージカテゴリがあります。ファイルシステムへの書き込みでは、フォアグラウンドドライブに優先順位が付けられ、その後、時間の経過とともにバックグラウンドに移動されます。読み取りはプロモートドライブにキャッシュされます。 |
||
− | Bcachefs has 3 categories of storage: background, foreground, and promote. Writes to the filesystem prioritize the foreground drives, which are then moved to the background over time. Reads are cached on the promote drives. |
||
+ | 次の例のように、推奨される構成は、フォアグラウンドとプロモートに ssd グループを使用し、バックグラウンドに hdd グループを使用することです。 |
||
− | A recommended configuration is to use an ssd group for the foreground and promote, and an hdd group for the background, as in the following example. |
||
+ | {{Note|これらはストレージの分離された「層」ではありません。これらは、単一の大きなプールのガイドラインにすぎません。フォアグラウンドがいっぱいの場合はバックグラウンドに書き込み、両方がいっぱいの場合はプロモートします。メタデータはそれらのいずれにも書き込むことができます。この構成では、データを失うことなくキャッシュドライブに障害が発生する可能性があるため、 {{ic|metadata_replicas}} は少なくとも2である必要があります。}} |
||
− | {{Note|These are not separated "tiers" of storage. They are just guidelines for a single large pool. Writes will go directly to the background if the foreground is full, or to promote if they both are. Metadata can be written to any of them. In this configuration, {{ic|metadata_replicas}} should be at least 2, so that a cache drive may be able to fail without causing data loss.}} |
||
# bcachefs format \ |
# bcachefs format \ |
2020年12月14日 (月) 12:47時点における版
Bcachefs は、 Btrfs と ZFS の機能をよりクリーンなコードベース、より安定性、より高速、 GPL 互換のライセンスを提供することを目的とした次世代の CoW ファイルシステムです。
主に Kent Overstreet によって開発されています。
目次
インストール
Bcachefs はまだアップストリーム カーネル にありませんが、 linux-bcachefs-gitAUR カーネルは AURからインストールできます。
Bcachefs ユーザースペースツールは bcachefs-tools-gitAUR から入手できます。
セットアップ
シングルドライブ
#bcachefs format /dev/sda #mount -t bcachefs /dev/sda/mnt
RAID0/1 の複数のドライブ
Bcachefs はレプリカをデータの任意のインスタンスとして定義するため、2つのドライブを備えた1つのレプリカは RAID0 に相当し、2つのドライブを備えた2つのレプリカは RAID1 に相当します。
# bcachefs format /dev/sda /dev/sdb --replicas=n # mount -t bcachefs /dev/sda1:/dev/sdb1 /mnt
SSD キャッシングを備えた RAID0/1
Bcachefs には、バックグラウンド、フォアグラウンド、プロモートの3つのストレージカテゴリがあります。ファイルシステムへの書き込みでは、フォアグラウンドドライブに優先順位が付けられ、その後、時間の経過とともにバックグラウンドに移動されます。読み取りはプロモートドライブにキャッシュされます。
次の例のように、推奨される構成は、フォアグラウンドとプロモートに ssd グループを使用し、バックグラウンドに hdd グループを使用することです。
# bcachefs format \ --group=ssd /dev/sda /dev/sdb --group=hdd /dev/sdc /dev/sdd /dev/sde /dev/sdf \ --data_replicas=1 --metadata_replicas=2 \ --foreground_target=ssd \ --background_target=hdd \ --promote_target=ssd # mount -t bcachefs /dev/sda:/dev/sdb:/dev/sdc:/dev/sdd/dev/sde:/dev/sdf /mnt
Configuration
Most options can be set at either during bcachefs format
, at mount time (mount -o option=value
), or through sysfs (echo X > /sys/fs/bcachefs/UUID/options/option
). Setting the option during format or changing it through sysfs saves it in the filesystem's superblock, making it the default for those drives. Mount options override those defaults.
- data_checksum, metadata_checksum (none, crc32c, crc64)
- (foreground) compression, background_compression (none, lz4, gzip, zstd)
- foreground_target, background_target, promote_target
The following can also be set on a per directory or per file basis with bcachefs setattr file --option=value
- data_replicas
- data_checksum
- compression, background_compression
- foreground_target, background_target, promote_target
Changing a device's group
# echo group > /sys/fs/bcachefs/filesystem_uuid/dev-X/label
Adding a device
# bcachefs device add --group=group /mnt /dev/device
If this is the first drive in a group, you'll need to change the target settings to make use of it. This example is for adding a cache drive.
# echo new_group > /sys/fs/bcachefs/filesystem_uuid/options/promote_target # echo new_group > /sys/fs/bcachefs/filesystem_uuid/options/foreground_target # echo old_group > /sys/fs/bcachefs/filesystem_uuid/options/background_target
Removing a device
First make sure there are at least 2 metadata replicas (Evacuate does not appear to work for metadata). If your data and metadata are already replicated, you may skip this step.
# echo 2 > /sys/fs/bcachefs/UUID/options/metadata_replicas # bcachefs data rereplicate /mnt # bcachefs device set-state device readonly # bcachefs device evacuate device
To remove the device.
# bcachefs device remove device # bcachefs data rereplicate /mnt
Tips and tricks
Documentation
Up-to-date documentation is only available via bcachefs --help
. The man page, for instance, includes the now-useless --tier
option.
Check dmesg for more useful error messages.