Yusuf Yaman'ın bloğu

FreeBSD ZFS snapshottan sistemi geri yükleme

Merhaba. Bu yazıda canım sıkılıp bilgisayara başka bir işletim sistemi kurunca FreeBSD’ye geri dönmek için yaptığım işlemleri anlatacağım. Bunun için Root on ZFS kullanmanız ve sisteminizin çalışan bir kopyasını snapshot almanız gerekiyor. Bu kopyayı harici bir diske almalısınız. Benim durumumda snapshotlarım ZFS kullanan bir harddiskte.

Gerekenler

Snapshot nasıl alınır ve nasıl bir diske dosya olarak gönderilir.

# zfs snapshot -r zroot@27052024
# zfs send -Rv zroot@27052024 > /mnt/wdc/yedekler/27052024

Adımlar

  1. FreeBSD kurulu belleğinizden (benim durumumda Ventoy kurulu bir harddisk) bilgisayarınızı başlatın.
  2. Kurulum ekranı gelince Shell’i seçin çünkü baştan kurmayacağız, işimizi komut satırında halledeceğiz.
  3. ZFS modülünü yükleyin ve gerekli ayarları yapın.
  4. kldload zfs
    sysctl vfs.zfs.min_auto_ashift=12
    # /mnt dizinine diskimizi bağlayacağımız için yazılabilir
    # bir tmpfs sanal dosya sistemi oluşturuyoruz.
    mount -o size=100m -t tmpfs tmpfs /mnt
  5. Diskinizi bölümlendirin, benim sistem diskim nda0.
  6. gpart destroy -F nda0
    gpart create -s gpt nda0
    gpart add -a 4k -t efi -s 100MB -l efiboot0 nda0
    gpart add -a 4k -t freebsd-swap -s 32GB -l swap0 nda0
    gpart add -a 4k -t freebsd-zfs -l zfs0 nda0
  7. Diskinizin bölümlerini formatlayın.
  8. newfs_msdos -F32 -c1 /dev/nda0p1
    swapon /dev/nda0p2
    zpool create -f -m none -R /mnt/zroot zroot gpt/zfs0
  9. FreeBSD için uefi girdisi oluşturun.
  10. mount_msdosfs /dev/nda0p1 /media
    mkdir -p /media/efi/freebsd
    cp /boot/loader.efi /media/efi/freebsd
    efibootmgr --activate --create --label FreeBaSeD --loader "/media/efi/freebsd/loader.efi"
    umount /media
  11. Harici diskinizi bağlayın.
  12. zpool import -fR /mnt/wdc wdc
  13. Snapshotu zroot pooluna yazdırın.
  14. zfs receive -Fv zroot < /mnt/wdc/mnt/wdc/yedekler/27052024
  15. zroot poolu için bootfs ayarlayın.
  16. zpool set bootfs=zroot/ROOT/default zroot
  17. ZFS poollarını ayırıp sistemi yeniden başlatın.
  18. zpool export -a
    reboot
  19. Sisteminizi güle güle kullanın. :)