Btrfs¶
Btrfs, Linux çekirdeği için geliştirilmiş bir dosya sistemidir. Gelişmiş özellikleri ve esnek yapısıyla, modern depolama ihtiyaçlarını karşılamak üzere tasarlanmıştır.
Disk bağlama¶
btrfs diskleri bağlamak için öncelikle çekirdek modülünün bulunması gerekmektedir. Bunun için /sys/fs/btrfs dizini bulunuyormu diye kontrol edebilirsiniz. Eğer bulunmuyorsa aşağıdaki komut ile etkinleştirebilirsiniz.
$ modprobe btrfs
Ardından diski bağlamak için aşağıdaki komutu kullanabilirsiniz.
$ mount -t btrfs -o defaults,rf /dev/sda1 /baglama/noktasi
Btrfs biçimlendirme¶
mkfs.btrfs komutu btrfs-progs paketi ile sağlanır. Öncelikle btrfs-progs yüklemeliyiz.
$ ymp install btrfs-progs
Ardından diski biçimlendirelim.
$ mkfs.btrfs /dev/sda1
Not: diski biçimlendirmek verilerinize kalıca hasar verebilir.
Rootfs olarak kullanma¶
Btrfs dosya sistemini kök dizin olarak kullanmak için çekirdek parametrelerine rootfstype=btrfs eklenmesi gerekmektedir. Eğer grub kullanıyorsanız /etc/default/grub dosyanıza aşağıdaki gibi ekleme yapmalısınız ve yapılandırmanızı güncellemelisiniz.
GRUB_CMDLINE_LINUX_DEFAULT="quiet rootfstype=btrfs"
Ardından /etc/fstab içerisine aşağıdaki gibi girdi yazmalısınız.
UUID=abcdef-0055-4958-990f-1413ed1186ec / btrfs defaults,rw 0 0
Subvolume kavramı¶
Btrfs dosya sisteminde "subvolume", dosya sisteminin içinde bağımsız bir dosya sistemi gibi davranabilen bir alt bölüm veya mantıksal birimdir. Subvolumelar, Btrfs'nin sunduğu esnekliği ve yönetim kolaylığını artıran önemli bir özelliktir.
Bağlamak¶
Bir btrfs dosya sisteminde subvolume bağlamak için bağlama paraetrelerine subvol=subvol_adi şeklinde ekleme yapmalıyız.
$ mount -t btrfs -o defaults,rw,subvol=@/yedek /dev/sda1 /yedek
Bununla birlikte bir subvolume varsayılan ayarlanıp seçenek kullanılmadan da bağlanabilir.
# subvol-id değerini subvolume listesinden bulabilirsiniz.
$ btrfs subvol set-default subvol-id /
Oluşturma¶
Bir subvolume oluşturmak için aşağıdaki komutu kullanabilirsiniz
# /bagli/dizin/ dizinine btrfs dosya sistemi bağlı olduğunu düşünebilirsiniz.
$ btrfs subvol create /bagli/dizin/yeni_subvolume
Listeleme¶
Btrfs üstündeki subvolume listesi için aşağıdaki komutu kullanabilirsiniz.
# /bagli/dizin/ dizinine btrfs dosya sistemi bağlı olduğunu düşünebilirsiniz.
$ btrfs subvol list -t /bagli/dizin/
Silme¶
Btrfs dosya sisteminde subvolume silmek için:
# /bagli/dizin/ dizinine btrfs dosya sistemi bağlı olduğunu düşünebilirsiniz.
$ btrfs subvol delete /bagli/dizin/silinecek_subvolume
Yeniden adlandırma¶
Btrfs dosya sisteminde bir subvolume adını değiştirmek için basitçe mv komutunu kullanabilirsiniz.
$ mv /bagli/dizin/@dosyalar /bagli/dizin/eski-dosyalar
Yedekleme (snapshot)¶
Btrfs dosya sisteminde bir subvolume yedeği alınabilir. Bunun için aşağıdaki komutu kullanabilirsiniz.
$ btrfs subvol snapshot /bagli/dizin/@dosyalar /bagli/dizin/@yedek
Bu sayede subvolume yedeğini almış olduk. Yedekten geri dönmek için mevcut subvolume silinip yedeğin yedeği alınabilir.