Lucrez pentru a face copii de rezervă pentru un laptop care rulează Ubuntu pe ZFS. Am un server de rezervă care rulează și ZFS pe unele volume auxiliare (nu rădăcină).
Am făcut un instantaneu bpool
astăzi și l-am trimis la serverul de rezervă folosind zfs trimite/recv
comenzi:
export SNAPSHOT=first-backup-2022-01-27
zfs snapshot -r bpool@$SNAPSHOT
zfs trimite -LRc bpool@$SNAPSHOT | pv | ssh [email protected] zfs recv -F susepool0/sets/1M/os-images/Ubuntu-thinkpad-t460s/bpool@$SNAPSHOT
Acest lucru funcționează bine pentru prima copie de rezervă, dar când am mers la serverul unde vor fi stocate backup-urile, punctul de montare este încă setat la /boot
:
lista zfs | grep t460s
susepool0/sets/1M/os-images/Ubuntu-thinkpad-t460s/bpool@first-backup-2022-01-27 591M 3.83T 96K /boot
susepool0/sets/1M/os-images/Ubuntu-thinkpad-t460s/bpool/BOOT@first-backup-2022-01-27 591M 3,83T 96K niciunul
susepool0/sets/1M/os-images/Ubuntu-thinkpad-t460s/bpool/BOOT/ubuntu_qjvcro@first-backup-2022-01-27 591M 3.83T 162M /boot
Cum pot configura cel mai bine această copie de rezervă, astfel încât punctele sale de montare să nu intre în conflict cu serverul pe care vor fi stocate? The rpool
are de toate, cum ar fi /usr
, /var
, /etc
- Aș putea vedea că este o adevărată mizerie dacă li s-ar permite să se monteze din nou de la distanță.
Edit: Cineva mi-a cerut să postez punctele de montare ZFS pe sursă și destinație pentru că s-a gândit că ar putea fi de ajutor, așa că sunt bucuros să vă oblig:
Editare editată (30.1.2021): mi s-a cerut să fac aceste liste mai puțin voluminoase, astfel încât aceste liste includ doar cele mai pertinente monturi ale sistemului de fișiere pentru a demonstra ceea ce spun despre modul în care punctele de montare zfs vor intra în conflict cu căile fișierelor Unix dacă este trimisă o imagine instantanee care conține aceleași monturi
Mă gândesc că o posibilă soluție ar putea fi să setați o rădăcină alternativă pentru instantanee, fie înainte, fie după trimiterea instantaneului, dar nu sunt sigur cum să fac asta sau ce comandă ar fi responsabilă.
Client (sursă) - Aceasta este mașina care rulează rădăcină ZFS (Ubuntu 21.10):
⯠pentru i în bpool rpool/ROOT; face ecoul ' '; lista zfs -t sistem de fișiere -o nume,punct de montare -d 4 $i; Terminat
NUME MOUNTPOINT
bpool /boot
bpool/BOOT niciunul
bpool/BOOT/ubuntu_qjvcro /boot
NUME MOUNTPOINT
rpool/ROOT niciunul
rpool/ROOT/ubuntu_qjvcro /
rpool/ROOT/ubuntu_qjvcro/srv /srv
rpool/ROOT/ubuntu_qjvcro/usr /usr
rpool/ROOT/ubuntu_qjvcro/usr/local /usr/local
rpool/ROOT/ubuntu_qjvcro/var /var
rpool/ROOT/ubuntu_qjvcro/var/games /var/games
rpool/ROOT/ubuntu_qjvcro/var/lib /var/lib
rpool/ROOT/ubuntu_qjvcro/var/lib/AccountsService /var/lib/AccountsService
rpool/ROOT/ubuntu_qjvcro/var/lib/NetworkManager /var/lib/NetworkManager
rpool/ROOT/ubuntu_qjvcro/var/lib/apt /var/lib/apt
rpool/ROOT/ubuntu_qjvcro/var/lib/dpkg /var/lib/dpkg
rpool/ROOT/ubuntu_qjvcro/var/lib/machines /var/lib/machines
rpool/ROOT/ubuntu_qjvcro/var/log /var/log
rpool/ROOT/ubuntu_qjvcro/var/mail /var/mail
rpool/ROOT/ubuntu_qjvcro/var/snap /var/snap
rpool/ROOT/ubuntu_qjvcro/var/spool /var/spool
rpool/ROOT/ubuntu_qjvcro/var/www /var/www
Server (destinație) - rețineți, această mașină folosește btrfs pentru sistemul său de fișiere rădăcină, dar asta nu înseamnă dacă rpool/ROOT
încearcă să monteze la /
nu va fi o problema:
⯠ssh osuse-leap zfs list -t sistem de fișiere, volum -o nume, punct de montare -d 2
NUME MOUNTPOINT
susepool0 /mnt/susepool0
susepool0/sets /mnt/susepool0/sets
susepool0/sets/16K /mnt/susepool0/sets/16K
susepool0/sets/1M /mnt/susepool0/sets/1M
susepool0/sets/4K /mnt/susepool0/sets/4K
susepool0/sets/64K /mnt/susepool0/sets/64K
susepool0/sets/chipmunk-user-folder /mnt/ubuntu/home/avery
susepool0/snapper-backup /mnt/snapper
susepool0/snapper-backup/vols /mnt/snapper/vols
susepool0/vols /mnt/susepool0/vols
susepool0/vols/endpoint-bob-image -
susepool0/vols/macosvol0 -
susepool0/vols/real-endpoint-bob -
susepool0/vols/testvol -
susepool0/vols/vmfspool0 -