Menggunakan BTRFS untuk beberapa harddisk

Submitted by w41lf0x on Fri, 11/22/2013 - 18:40

slackwareSebelumnya saya pernah menulis mengenai menggunakan #btrfs di #Slackware. Hanya saja sebelumnya saya masih menggunakan satu harddisk untuk satu filesystem btrfs. Sekarang saya ingin menulis tentang penggunaan beberapa harddisk untuk btrfs. Setelah beberapa waktu menggunakan btrfs saya juga menemukan hal penting dalam hal partisi. Akan saya jelaskan di bawah.

Seperti yang kita ketahui, btrfs dapat juga kita anggap sebagai sebuah wadah, bukan hanya sebuah filsystem. Sebagai sebuah wadah maka btrfs dapat menampung lebih dari satu volume dalam hal ini adalah beberapa volume harddisk. Dan lebih hebatnya, fitur ini dapat digunakan dengan sangat mudah tanpa perlu pusing soal partisi. Sangat menarik.

Baiklah tanpa banyak kata lagi saya ingin menunjukkan sebuah hal yang sangat menarik bagi saya, yaitu soal partisi dan btrfs. Jika kita menggunakan btrfs maka kita dapat melupakan soal partisi! Kita dapat melakukan hal seperti ini dan tetaplah valid:

# mkfs.btrfs /dev/sdb

Lihat, saya memformat harddisk /dev/sdb tanpa melakukan pemartisian sama sekali. Volume tersebut tetaplah valid dan dapat di-mount seperti biasa:

# mount /dev/sdb /mnt

Jika saya memiliki beberapa harddisk, misalnya sdb, sdc, dan sdd, maka saya dapat menggabungkannya seperti ini:

Metadata di-mirror, alokasi data linear

# mkfs.btrfs /dev/sdb /dev/sdc /dev/sdd

Menggunakan RAID0: data stripe tanpa mirroring

# mkfs.btrfs -d raid0 /dev/sdb /dev/sdc

Menggunakan RAID10 untuk data and metadata

# mkfs.btrfs -m raid10 -d raid10 /dev/sdb /dev/sdc /dev/sdd

Tidak menggunakan duplikasi metadata pada drive tunggal (default pada SSDs)

# mkfs.btrfs -m single /dev/sdb

Jika kita memiliki beberapa harddisk yang berbeda-beda ukurannya, kita dapat menggunakan konfigurasi tunggal (bukan RAID0) sehingga kapasitas total dapat digunakan

Metadata di-mirror, data tidak di-mirror dan di-stripe

# mkfs.btrfs -d single /dev/sdb /dev/sdc /dev/sdd

Hebatnya lagi adalah, jika kita menggunakan lebih dari satu harddisk, begitu filesystem tunggal terbentuk kita dapat me-mount filesystem tersebut menggunakan harddisk yang mana saja (tidak harus harddisk pertama):

# mkfs.btrfs /dev/sdb /dev/sdc /dev/sdd
# mount /dev/sdd /mnt

Kita juga dapat menambahkan atau mengurangi harddisk yang dipakai seperti berikut, dengan menggunakan contoh sebelumnya, kita mount dulu jika belum di-mount:

# mount /dev/sdd /mnt

Untuk menambah

# btrfs device add /dev/sde /mnt

Untuk mengurangi

# btrfs device remove /dev/sdc /mnt

Oke setelah semua itu, saya dapat menuliskan baris berikut ke dalam /etc/fstab

/dev/sdc   /mnt   btrfs   defaults,rw    0   1

atau menggunakan uuid dari filesystem btrfs seperti ini (lihat pakai blkid):

UUID=758847af-7231-4583-bccb-69b3c7ae42c7   /mnt   btrfs   defaults,rw   0   1

[tambahan] Tanpa gambar sepertinya kurang meyakinkan ya? Nih

btrfs-multidevice

Tentu saja kita tetap dapat menggunakan subvolume seperti sebelumnya. Bagaimana? Tertarik?

Selamat mencoba