2014年2月5日水曜日

Btrfs にラベルを付けてみる。

Btrfs を使い始めてみましたが、
これで ソフトウェア RAID を構成するとなんとなく悩ましい気がします。

たとえば /dev/sdb と /dev/sdc で RAID0 を構成すると、
/dev/sdb でも /dev/sdc でも、どちらを指定してもマウントできます。
fstab ファイルにも、どちらかを記載しておけばマウントできます。
※最近の Oracle Linux では、デフォルトだと fstab でも UUID が使われています。
[root@ovnfs3 ~]# cat /etc/oracle-release
Oracle Linux Server release 6.5

[root@ovnfs3 ~]# cat /etc/fstab
UUID=e35804ed-5eca-4a97-9415-1d07158e297d /     ext4    defaults        1 1
UUID=fddf4134-4067-48fb-a8de-a61b790ebbdb /boot ext4    defaults        1 2
UUID=f5d199da-3fec-4c76-bdb2-8d0d9ed7256a swap  swap    defaults        0 0
tmpfs                   /dev/shm                tmpfs   defaults        0 0
devpts                  /dev/pts                devpts  gid=5,mode=620  0 0
sysfs                   /sys                    sysfs   defaults        0 0
proc                    /proc                   proc    defaults        0 0
/dev/sdb                /fs01                   btrfs   defaults        0 0
/dev/sdd                /fs02                   btrfs   defaults        0 0

Btrfsファイルシステムの一覧を表示したときも
デバイスが増えてきたら、わかりづくなりそうな予感がします。
※下の例だと、RAID0 のファイルシステムが2つ(Diskは2つづつ)あります。
[root@ovnfs3 ~]# btrfs filesystem show --all-devices
Label: none  uuid: a0833497-61c0-44c2-a5bc-3e51b8c04f4b
        Total devices 2 FS bytes used 3.35GB
        devid    1 size 40.00GB used 3.03GB path /dev/sdb
        devid    2 size 40.00GB used 3.01GB path /dev/sdc

Label: none  uuid: 685f8baf-52a7-473f-90f1-0738511cd837
        Total devices 2 FS bytes used 1.03MB
        devid    1 size 10.00GB used 2.03GB path /dev/sdd
        devid    2 size 10.00GB used 2.01GB path /dev/sde

Btrfs v0.20-rc1

ファイルシステムへのラベル付与

普段は、私はファイルシステムにラベルを付けないのですが、
ちょっとわかりやすくしたいと思ってラベルを付けてみました。

マウントしたままデバイス名を指定してラベルをつけようとしたら、
(期待通り)エラーになりました。
/dev/fd0 のエラーが気になります・・・
[root@ovnfs3 ~]# btrfs filesystem label /dev/sdd /fs02
failed to open /dev/fd0: No such device or address
ERROR: dev /dev/sdd is mounted, use mount point
Btrfs をマウントしたままでも、
マウントポイントを指定したらラベル付けができてしまいました。
ちょっとわかりやすくなった気がします。
[root@ovnfs3 ~]# btrfs filesystem label /fs01 /fs01
[root@ovnfs3 ~]# btrfs filesystem label /fs02 /fs02
[root@ovnfs3 ~]# btrfs filesystem show --all-devices
Label: '/fs01'  uuid: a0833497-61c0-44c2-a5bc-3e51b8c04f4b
        Total devices 2 FS bytes used 3.35GB
        devid    1 size 40.00GB used 3.03GB path /dev/sdb
        devid    2 size 40.00GB used 3.01GB path /dev/sdc

Label: '/fs02'  uuid: 685f8baf-52a7-473f-90f1-0738511cd837
        Total devices 2 FS bytes used 1.03MB
        devid    1 size 10.00GB used 2.03GB path /dev/sdd
        devid    2 size 10.00GB used 2.01GB path /dev/sde

Btrfs v0.20-rc1

ちなみに、ラベル付けのコマンドラインの、
一番後ろで指定しているのがラベルです。
[root@ovnfs3 ~]# btrfs filesystem | grep label
    btrfs filesystem show [--all-devices] [<uuid>|<label>]
    btrfs filesystem label [<device>|<mountpoint>] [<newlabel>]
        Get or change the label of a filesystem

ラベルを指定してでマウント

一度アンマウントして、
[root@ovnfs3 ~]# umount /fs01
[root@ovnfs3 ~]# umount /fs02
[root@ovnfs3 ~]# df -h

Filesystem      Size  Used Avail Use% Mounted on
/dev/sda3       8.6G  2.7G  5.5G  33% /
tmpfs           498M     0  498M   0% /dev/shm
/dev/sda1       190M   54M  126M  31% /boot

「-L」 でラベルを指定してマウントします。
当然ながら、結局、見た目は変わりません。
[root@ovnfs3 ~]# mount -L /fs01 /fs01
[root@ovnfs3 ~]# mount -L /fs02 /fs02
[root@ovnfs3 ~]# df -h

Filesystem      Size  Used Avail Use% Mounted on
/dev/sda3       8.6G  2.7G  5.5G  33% /
tmpfs           498M     0  498M   0% /dev/shm
/dev/sda1       190M   54M  126M  31% /boot
/dev/sdb         80G  3.4G   75G   5% /fs01
/dev/sdd         20G  1.1M   18G   1% /fs02

fstab もラベル指定にしてみました。
[root@ovnfs3 ~]# cat /etc/fstab
UUID=e35804ed-5eca-4a97-9415-1d07158e297d /     ext4    defaults        1 1
UUID=fddf4134-4067-48fb-a8de-a61b790ebbdb /boot ext4    defaults        1 2
UUID=f5d199da-3fec-4c76-bdb2-8d0d9ed7256a swap  swap    defaults        0 0
tmpfs                   /dev/shm                tmpfs   defaults        0 0
devpts                  /dev/pts                devpts  gid=5,mode=620  0 0
sysfs                   /sys                    sysfs   defaults        0 0
proc                    /proc                   proc    defaults        0 0
LABEL=/fs01             /fs01                   btrfs   defaults        0 0
LABEL=/fs02             /fs02                   btrfs   defaults        0 0

fstab を上記のように編集したあとに一度アンマウントして、
[root@ovnfs3 ~]# umount /fs01 /fs02
[root@ovnfs3 ~]# df -h

Filesystem      Size  Used Avail Use% Mounted on
/dev/sda3       8.6G  2.7G  5.5G  33% /
tmpfs           498M     0  498M   0% /dev/shm
/dev/sda1       190M   54M  126M  31% /boot

マウントします。マウントされました。
[root@ovnfs3 ~]# mount -a
[root@ovnfs3 ~]# df -h

Filesystem      Size  Used Avail Use% Mounted on
/dev/sda3       8.6G  2.7G  5.5G  33% /
tmpfs           498M     0  498M   0% /dev/shm
/dev/sda1       190M   54M  126M  31% /boot
/dev/sdb         80G  3.4G   75G   5% /fs01
/dev/sdd         20G  1.1M   18G   1% /fs02

以上、Btrfs にラベルを付けてみる話でした・・・

0 件のコメント:

コメントを投稿