ฉันกำลังทำงานเพื่อสำรองแล็ปท็อปที่ใช้ Ubuntu บน ZFS ฉันมีเซิร์ฟเวอร์สำรองที่รัน ZFS บนวอลุ่มเสริมบางตัวด้วย (ไม่ใช่รูท)
ฉันทำภาพรวมของ บีพูล
วันนี้และส่งไปยังเซิร์ฟเวอร์สำรองโดยใช้ zfs ส่ง / รับ
คำสั่ง:
ส่งออก SNAPSHOT=สำรองข้อมูลครั้งแรก-2022-01-27
zfs สแน็ปช็อต -r bpool@$SNAPSHOT
zfs ส่ง -LRc bpool@$SNAPSHOT | พีวี | ssh [email protected] zfs recv -F susepool0/sets/1M/os-images/Ubuntu-thinkpad-t460s/bpool@$SNAPSHOT
วิธีนี้ใช้ได้ดีสำหรับการสำรองข้อมูลครั้งแรก แต่เมื่อฉันไปที่เซิร์ฟเวอร์ที่จะจัดเก็บข้อมูลสำรอง จุดเมานต์ยังคงตั้งค่าเป็น /บูต
:
รายการ zfs | เกรป t460s
susepool0/sets/1M/os-images/Ubuntu-thinkpad-t460s/bpool@first-backup-2022-01-27 591M 3.83T 96K /บูต
susepool0/sets/1M/os-images/Ubuntu-thinkpad-t460s/bpool/BOOT@first-backup-2022-01-27 591M 3.83T 96K ไม่มี
susepool0/sets/1M/os-images/Ubuntu-thinkpad-t460s/bpool/BOOT/ubuntu_qjvcro@first-backup-2022-01-27 591M 3.83T 162M /boot
ฉันจะกำหนดค่าการสำรองข้อมูลนี้ให้ดีที่สุดได้อย่างไร เพื่อให้จุดเมานต์ไม่ขัดแย้งกับเซิร์ฟเวอร์ที่จะเก็บไว้ เดอะ อาร์พูล
มีทุกอย่างเช่น /usr
, /var
, / ฯลฯ
- ฉันเห็นว่ามันยุ่งเหยิงจริง ๆ ถ้าสิ่งเหล่านั้นได้รับอนุญาตให้ติดตั้งใหม่จากระยะไกล
แก้ไข: มีคนขอให้ฉันโพสต์จุดเมานต์ ZFS บนต้นทางและปลายทาง เพราะพวกเขาคิดว่ามันอาจมีประโยชน์ ดังนั้นฉันจึงยินดีที่จะบังคับ:
แก้ไข แก้ไข (1-30-2021): ฉันถูกขอให้ทำให้รายการเหล่านี้มีจำนวนน้อยลง ดังนั้นรายการเหล่านี้จึงมีเฉพาะการเมาต์ระบบไฟล์ที่เกี่ยวข้องมากที่สุดเพื่อสาธิตสิ่งที่ฉันพูดเกี่ยวกับวิธีที่จุดเมาต์ zfs จะขัดแย้งกับเส้นทางไฟล์ยูนิกซ์หาก ภาพสแน็ปช็อตที่มีการเมานต์เดียวกันจะถูกส่งไป
ฉันคิดว่าวิธีแก้ปัญหาที่เป็นไปได้คือตั้งค่ารูทอื่นสำหรับสแน็ปช็อต ไม่ว่าจะก่อนหรือหลังสแนปชอตถูกส่ง แต่ฉันไม่แน่ใจว่าจะทำอย่างไรหรือคำสั่งใดที่จะรับผิดชอบ
ลูกค้า (แหล่งที่มา) - นี่คือเครื่องที่ใช้ ZFS root (Ubuntu 21.10):
⯠สำหรับฉันใน bpool rpool/ROOT; ทำเสียงก้อง ' '; zfs list -t filesystem -o name,mountpoint -d 4 $i; เสร็จแล้ว
ชื่อ MOUNTPOINT
bpool /บูต
bpool/BOOT ไม่มี
bpool/BOOT/ubuntu_qjvcro /บูต
ชื่อ MOUNTPOINT
rpool / ROOT ไม่มี
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/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/เครื่อง /var/lib/เครื่อง
rpool/ROOT/ubuntu_qjvcro/var/log /var/log.rpool/ROOT/ubuntu_qjvcro/var/log
rpool/ROOT/ubuntu_qjvcro/var/mail /var/mail
rpool/ROOT/ubuntu_qjvcro/var/snap /var/snap.rpool/ROOT/ubuntu_qjvcro/var/snap
rpool/ROOT/ubuntu_qjvcro/var/spool /var/spool
rpool/ROOT/ubuntu_qjvcro/var/www /var/www
เซิร์ฟเวอร์ (ปลายทาง) - โปรดทราบว่าเครื่องนี้ใช้ btrfs สำหรับระบบไฟล์รูท แต่นั่นไม่ได้หมายความว่าถ้า rpool/ราก
พยายามที่จะเมานต์ /
มันจะไม่มีปัญหา:
⯠ssh osuse-leap zfs list -t filesystem,volume -o name,mountpoint -d 2
ชื่อ 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 -