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
- FreeBSD live iso
- Snapshot için harici bir disk
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
- FreeBSD kurulu belleğinizden (benim durumumda Ventoy kurulu bir harddisk) bilgisayarınızı başlatın.
- Kurulum ekranı gelince Shell’i seçin çünkü baştan kurmayacağız, işimizi komut satırında halledeceğiz.
- ZFS modülünü yükleyin ve gerekli ayarları yapın.
-
Diskinizi bölümlendirin, benim sistem diskim
nda0
. - Diskinizin bölümlerini formatlayın.
- FreeBSD için uefi girdisi oluşturun.
- Harici diskinizi bağlayın.
- Snapshotu zroot pooluna yazdırın.
- zroot poolu için bootfs ayarlayın.
- ZFS poollarını ayırıp sistemi yeniden başlatın.
- Sisteminizi güle güle kullanın. :)
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
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
newfs_msdos -F32 -c1 /dev/nda0p1 swapon /dev/nda0p2 zpool create -f -m none -R /mnt/zroot zroot gpt/zfs0
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
zpool import -fR /mnt/wdc wdc
zfs receive -Fv zroot < /mnt/wdc/mnt/wdc/yedekler/27052024
zpool set bootfs=zroot/ROOT/default zroot
zpool export -a reboot