Linux 系統的備份恢復
tar 命令
副本(本機備份整個系統,以後還原還是還原到本機)
注意根目錄下要有充足的可用空間用於備份。
cd /#tar.gz格式tar cvpzf system_backup.tar.gz / --exclude=/proc --exclude=/lost+found --exclude=/system_backup.tar.gz --exclude=/mnt --exclude=/sys#tar.bz2格式tar cvpjf system_backup.tar.bz2 / --exclude=/proc --exclude=/lost+found --exclude=/system_backup.tar.bz2 --exclude=/mnt --exclude=/sys# 恢復系統cd /#上傳檔案到根目錄下tar xvpfz system_backup.tar.gz -C /或tar xvpfj system_backup.tar.bz2 -C /#建立備份時排除的目錄mkdir procmkdir lost+foundmkdir mntmkdir sys
- /proc 許可權:檔案所有者:root群組:root 所有者:讀取 執行 群組:讀取 執行 其它:讀取 執行
- /lost+found 許可權:檔案所有者:root群組:root 所有者:讀取 寫入 執行 群組:讀取 執行 其它:讀取 執行
- /mnt 許可權:檔案所有者:root群組:root 所有者:讀取 寫入 執行 群組:讀取 執行 其它:讀取 執行
- /sys 許可權:檔案所有者:root群組:root 所有者:讀取 寫入 執行 群組:讀取 執行 其它:讀取 執行
恢復完成重啟以後,所以的事情都會和你備份的時候一模一樣。
映象(本機備份系統,還原到新主機上)
1,檢查系統版本,在目標機上安裝一樣版本的系統(最簡安裝即可),分割槽格式,型別也一樣(我沒試過不一樣的情況,不知道能否成功)lsb_release -auname -adf -Thfree -h2,備份源系統# 因為目標機和源主機硬體配置不同,所以排除dev,tmp;再適當增加你要排除的檔案,如:--exclude=/root/*.bz2# 這裡再mnt下有充足空間,所以儲存到mnt下。cd /tar cvpzf /mnt/system_backup.tar.gz / --exclude=/mnt/system_backup.tar.gz --exclude=/proc --exclude=/lost+found --exclude=/mnt --exclude=/sys --exclude=/dev --exclude=/tmp --exclude=/media# 上傳到目標主機scp /mnt/system_backup.tar.gz root@192.168.0.166:/mnt3,在目標機上用ISO、LiveCD等啟動,掛載磁碟(一般會自動掛載到/media資料夾)sudo -s cd /media/<對應的uuid號># 備份重要配置檔案/boot/gurb/gurb.cfg /etc/fstab記錄裡面的UUID,# 刪除重複檔案# 除了上面備份系統時排除的一些資料夾外,比如說dev mnt media sys這些資料夾,其他全部刪除。rm -rf root home usr lib lib64 etc var bin sbin opt boot run selinux vmlinuz initrd.img# 還原備份mount /dev/vda1 /mnt/1# 這裡注意千萬不要寫/目錄,會把現有的系統搞掛!!!應該是掛載的目錄tar xvpfz system_backup.tar.gz -C /mnt/1cd /mnt/1 #此時你可以看到根目錄的結構,但是編輯fstab檔案發現是現有系統的fstabchroot ./ #執行chroot後會以./目錄為根目錄,這時編輯的檔案就是真正的目標原始檔了。還原後修改/etc/fstab裡的UUID為剛剛備份的檔案裡面的資訊,注意分割槽格式也要對應。修改/boot/gurb/gurb.cfg裡的UUID為剛剛備份的檔案裡面的資訊。修改網路卡、IP配置檔案,以防無法分配IP。(如果是虛擬機器記得新增網路卡,配置中等效能的顯示卡)如果有依賴於原有平臺的服務,如內建NTP,Agent等監控程式;關閉服務,關閉開機自啟;Ubuntu:在命令列輸入runleve可以檢視當前執行級別,一般預設是2檢視/etc/rc2.d目錄中的S開頭的服務都是會開機自動執行的;裡面是軟連結,想新增的話自己建一個連結檔案就可以,S代表start,後面數字是啟動順序,刪除軟連結。同時刪除/etc/init.d/下對應的指令碼。vim /etc/init.d/rc.localCentos:用systemctl完成上述步驟後exit #退出chrootcd ~umount /mnt/1# 一切完成後就可以重啟了,不出意外就正常啟動系統了(啟動後原來安裝系統時設定的賬戶等全部消失;賬戶和源主機一致)。若開機Grub提示“boot error 15 :Error 15 file not found”解決方法:請檢查GRUB相關檔案的核心檔案所在位置。通常與/boot分割槽有關。若開機Grub提示“dracut:dono't how to hand root=f078”解決方法:將root=UUID改成root=/dev/sdaX這種格式。若開機系統提示/usr/libexec/gconf-sanity-check-2退出狀態256的解決解決方法:chmod 777 /tmp
rsync命令
注意目標分割槽的格式最好是NTFS、FAT、EXT之類的格式,避免遇到大於4G的檔案無法備份的問題。
#最好有其他分割槽或外接儲存裝置,掛載好,df -lh看掛載點。#備份rsync -Pa / /media/usb/backup_20170410 --exclude=/media/* --exclude=/sys/* --exclude=/proc/* --exclude=/mnt/* --exclude=/tmp/*#恢復rsync -Pa /media/usb/backup_20170410 /
dd[命令]
dd命令屬於扇區克隆,目標分割槽要比備份分割槽要大,即使沒有使用的空間也會被原樣克隆下來,會比較慢。
#備份df -h #檢視系統所在分割槽dd if=/dev/sda1 of=/dev/sdb3 #備份sda1到sdb3中#恢復dd if=/dev/sdb3 of=/dev/sda1 #恢復sdb3到sdb1中
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/4422/viewspace-2826878/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Linux 系統的備份與恢復Linux
- Others——Linux系統備份及恢復(轉)Linux
- HP系統的備份與恢復
- Linux中XFS檔案系統的備份,恢復,修復Linux
- 【物理熱備】(下)備份恢復系統表空間 手工備份恢復
- Linux系統備份及恢復 轉載 oldunixLinux
- XFS檔案系統的備份、恢復、修復
- HP系統備份及恢復方案
- RMAN備份恢復典型案例——RMAN備份&系統變慢
- Windows oracle 11g rman備份恢復到linux系統WindowsOracleLinux
- Linux下mysql備份 恢復LinuxMySql
- 備份與恢復--利用備份的控制檔案恢復
- 【備份恢復】從備份恢復資料庫資料庫
- 【管理篇備份恢復】備份恢復基礎
- vivo 資料庫備份恢復系統演化資料庫
- Linux作業系統中備份恢復技術的應用(轉)Linux作業系統
- Oracle備份恢復之熱備份恢復及異機恢復Oracle
- Linux中SVN的備份與恢復Linux
- 實戰:xfs檔案系統的備份和恢復
- Windows XP系統資料的備份和恢復(轉)Windows
- 在Linux中,如何配置和管理系統備份和恢復策略?Linux
- 備份與恢復系列 十一 控制檔案的備份與恢復
- 【oracle】統計資訊的恢復和備份Oracle
- 【備份恢復】歸檔模式下丟失系統關鍵資料檔案 利用RMAN備份恢復模式
- MySQL備份與恢復——基於Xtrabackup物理備份恢復MySql
- 生產系統下,RMAN的2級備份。以及恢復
- Mysql備份恢復MySql
- Postgresql 備份恢復SQL
- redis備份恢復Redis
- mysql 備份恢復MySql
- 備份和恢復
- 備份&恢復之四:非歸檔模式下的備份與恢復模式
- linux的OS簡單的備份和恢復Linux
- 備份與恢復:polardb資料庫備份與恢復資料庫
- 【備份恢復】Oracle 資料備份與恢復微實踐Oracle
- 非系統表空間損壞,rman備份恢復
- 備份與應急恢復系統功能實現(轉)
- Mysql的備份與恢復MySql