สถานการณ์
ฉันสำรองข้อมูลหนึ่งในเครื่อง wheezy Debian ผ่าน rsnapshot ไดเร็กทอรีเป้าหมายคือการแชร์ NFS ที่เมาท์ Qnap NAS ให้บริการไดเรกทอรีเป้าหมายนี้
ปัญหา
แต่ rsnapshot บ่นเกี่ยวกับไฟล์บางไฟล์ที่มีอยู่แล้วเมื่อมันพยายามที่จะสร้างสแน็ปช็อตใหม่ผ่านทาง cp -al ไม่สำคัญว่าฉันจะใช้ cn ของ gnu-cp หรือ rsnapshot:
root@shuttle:~# rsnapshot -v daily
echo 25852 > /var/run/rsnapshot.pid
/bin/rm -rf /mnt/backup/rsnapshot/daily.6/
mv /mnt/backup/rsnapshot/daily.5/ /mnt/backup/rsnapshot/daily.6/
mv /mnt/backup/rsnapshot/daily.4/ /mnt/backup/rsnapshot/daily.5/
mv /mnt/backup/rsnapshot/daily.3/ /mnt/backup/rsnapshot/daily.4/
mv /mnt/backup/rsnapshot/daily.2/ /mnt/backup/rsnapshot/daily.3/
mv /mnt/backup/rsnapshot/daily.1/ /mnt/backup/rsnapshot/daily.2/
native_cp_al("/mnt/backup/rsnapshot/daily.0", \
"/mnt/backup/rsnapshot/daily.1")
----------------------------------------------------------------------------
rsnapshot encountered an error! The program was invoked with these options:
/usr/bin/rsnapshot -v daily
----------------------------------------------------------------------------
ERROR: Warning! "/mnt/backup/rsnapshot/daily.1/shuttle/etc/alternatives/Mail.1.gz" exists!
ERROR: Warning! copy_symlink("/mnt/backup/rsnapshot/daily.0/shuttle/etc/alternatives/Mail.1.gz", "/mnt/backup/rsnapshot/daily.1/shuttle/etc/alternatives/Mail.1.gz")
[-- snip! --]
The Twist
สิ่งที่สนุกคือไฟล์ที่ให้ rsnapshot (หรือ cp -al) เป็นช่วงเวลาที่ยากลำบากจริงๆ ดู inodes ที่จุดเริ่มต้นของบรรทัด นี่คือผลลัพธ์ของ ls -li
บนกล่อง Debian ของฉัน:
lennart@shuttle:~$ ls -li /mnt/backup/rsnapshot/daily.0/shuttle/etc/alternatives/ |grep -i mail
71047301 lrwxrwxrwx 1 root root 23 Oct 28 09:32 mail -> /usr/bin/heirloom-mailx
71047299 lrwxrwxrwx 1 root root 23 Oct 28 09:32 Mail -> /usr/bin/heirloom-mailx
71047302 lrwxrwxrwx 1 root root 39 Oct 28 09:32 mail.1.gz -> /usr/share/man/man1/heirloom-mailx.1.gz
71047300 lrwxrwxrwx 1 root root 39 Oct 28 09:32 Mail.1.gz -> /usr/share/man/man1/heirloom-mailx.1.gz
71047300 lrwxrwxrwx 1 root root 39 Oct 28 09:32 Mail.1.gz -> /usr/share/man/man1/heirloom-mailx.1.gz
71047303 lrwxrwxrwx 1 root root 23 Oct 28 09:32 mailx -> /usr/bin/heirloom-mailx
71047304 lrwxrwxrwx 1 root root 39 Oct 28 09:32 mailx.1.gz -> /usr/share/man/man1/heirloom-mailx.1.gz
ที่นี่เหมือนกัน ls -l1
ดำเนินการบนเซิร์ฟเวอร์ที่กำลังส่งออกไดเรกทอรี:
[~] # ls -li /share/backup/rsnapshot/daily.0/shuttle/etc/alternatives/ |grep ->
71047299 lrwxrwxrwx 1 admin administ 23 Oct 28 09:32 Mail -> /usr/bin/heirloom-mailx
71047300 lrwxrwxrwx 1 admin administ 39 Oct 28 09:32 Mail.1.gz -> /usr/share/man/man1/heirloom-mailx.1.gz@
71047301 lrwxrwxrwx 1 admin administ 23 Oct 28 09:32 mail -> /usr/bin/heirloom-mailx
71047302 lrwxrwxrwx 1 admin administ 39 Oct 28 09:32 mail.1.gz -> /usr/share/man/man1/heirloom-mailx.1.gz@
71047303 lrwxrwxrwx 1 admin administ 23 Oct 28 09:32 mailx -> /usr/bin/heirloom-mailx
71047304 lrwxrwxrwx 1 admin administ 39 Oct 28 09:32 mailx.1.gz -> /usr/share/man/man1/heirloom-mailx.1.gz@
คำถาม
ไม่มีใครมีความคิดใด ๆ ที่ทำให้เกิดสิ่งนี้และจะแก้ไขได้อย่างไร
[แก้ไข 1]
ls เดียวกันจากเครื่องที่ใช้ OS X 10.9:
thebook-wlan:~ lennart$ ls -li /Volumes/backup/rsnapshot/daily.0/shuttle/etc/alternatives/ |grep -i mail
71047299 lrwxrwxrwx 1 root wheel 23 28 Okt 09:32 Mail -> /usr/bin/heirloom-mailx
71047300 lrwxrwxrwx 1 root wheel 39 28 Okt 09:32 Mail.1.gz -> /usr/share/man/man1/heirloom-mailx.1.gz
71047301 lrwxrwxrwx 1 root wheel 23 28 Okt 09:32 mail -> /usr/bin/heirloom-mailx
71047302 lrwxrwxrwx 1 root wheel 39 28 Okt 09:32 mail.1.gz -> /usr/share/man/man1/heirloom-mailx.1.gz
71047303 lrwxrwxrwx 1 root wheel 23 28 Okt 09:32 mailx -> /usr/bin/heirloom-mailx
71047304 lrwxrwxrwx 1 root wheel 39 28 Okt 09:32 mailx.1.gz -> /usr/share/man/man1/heirloom-mailx.1.gz
กล่อง Debian ของฉันเท่านั้นที่ดูเหมือนจะมีปัญหากับรายชื่อไดเรกทอรี
ls -li
แสดงให้เห็นว่าทุกอย่างเป็นปกติอย่างสมบูรณ์สำหรับฉัน ฉันได้ลองทำสิ่งต่าง ๆ มากมายรวมถึงการเล่าใหม่การทำให้การสำรองข้อมูลทั้งหมดหายไป