Snapshot命令快速進(jìn)行在線備份和恢復(fù)的方法是什么,針對這個問題,這篇文章詳細(xì)介紹了相對應(yīng)的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
成都創(chuàng)新互聯(lián)公司專注于東寶網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗。 熱誠為您提供東寶營銷型網(wǎng)站建設(shè),東寶網(wǎng)站制作、東寶網(wǎng)頁設(shè)計、東寶網(wǎng)站官網(wǎng)定制、成都小程序開發(fā)服務(wù),打造東寶網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供東寶網(wǎng)站排名全網(wǎng)營銷落地服務(wù)。
為何使用 Snapshot
為何使用 snapshot 而不是 tar 或 copy 實用工具?使用 snapshot 時,文件系統(tǒng)被凍結(jié),確保您能獲得完整的副本,并且可避免“打開文件”、“正在運(yùn)行進(jìn)程”或“文件未找到”等問題。另外,通常無需關(guān)閉應(yīng)用程序,盡管我通常在制作快照前會讓應(yīng)用程序進(jìn)入靜態(tài)狀態(tài);之后再取消靜態(tài)狀態(tài)。
您最多可擁有 JFS2 文件系統(tǒng)的 15 個連續(xù)外部快照。在測試環(huán)境中升級應(yīng)用程序時,常見的做法是每次更新文件系統(tǒng)中包含的環(huán)境后,都制作一個快照。
進(jìn)行 JFS2 在線備份是一件非常好的事情,但還需要能夠在出現(xiàn)錯誤時恢復(fù)內(nèi)容。使用 rollback 實用工具,通過指定快照所駐留的設(shè)備,可將外部快照回滾到制作快照時的那個點(diǎn)。沒有什么比這個功能更好了。要回滾備份快照,可使用 restore 命令。
個人第一項
使用哪種方法來創(chuàng)建快照取決于您最喜歡哪種方法。所以讓我們介紹一下各種快照類型:
外部快照
在現(xiàn)有的 JFS2 文件系統(tǒng)上創(chuàng)建
其存儲空間位于不同的邏輯卷上
可作為單獨(dú)的文件系統(tǒng)來掛載
有一個只讀的數(shù)據(jù)區(qū)域
備份快照
主要是 snapshot 命令的一個接口
執(zhí)行所有快照工作
在存檔文件或磁帶上保存最終得到的文件系統(tǒng)備份
如果某個快照遇到空間不足問題,該文件系統(tǒng)的所有快照都將變?yōu)闊o效的 — 換言之,都不可用。在我自己的工作中,我更喜歡外部快照,主要是因為可以根據(jù)需要掛載它們,以便更好地查看。
外部快照
文件系統(tǒng)名為 /opt/portal。其大小是 512M,數(shù)據(jù)文件 281M 多。
# lsfs |grep -w portal /dev/fslv02 -- /opt/portal jfs2 1048576 rw yes no # df -m |grep portal /dev/fslv02 512.00 231.60 55% 7 1% /opt/portal # pwd /opt/portal # ls app_be app_fr app_nl lost+found
要創(chuàng)建外部快照,作為一條規(guī)則,我用約原始文件系統(tǒng)大小的一半來創(chuàng)建該快照。IBM 文檔建議的快照大小是源文件系統(tǒng)的 10 % 到 15 %。但是,我喜歡為快照提供充足的空間,并且從安全性方面來看也是有好處的。在本例中,50 % 的空間相當(dāng)于 250M。創(chuàng)建快照的常見格式為:
snapshot -o snapfrom= -o size= |
現(xiàn)在創(chuàng)建外部快照:
# snapshot -o snapfrom=/opt/portal -o size=250M Snapshot for file system /opt/portal created on /dev/fslv04
自動創(chuàng)建一個邏輯卷來保存快照。為了確認(rèn)已創(chuàng)建了快照,使用 snapshot 命令查詢相關(guān)文件系統(tǒng)的快照,如:
# snapshot -q /opt/portal Snapshots for /opt/portal Current Location 512-blocks Free Time * /dev/fslv04 524288 523520 Sun Nov 4 10:57:46 GMT 2012
現(xiàn)在,我可以掛載快照,查看已復(fù)制的數(shù)據(jù),但首先需要創(chuàng)建掛載快照所需的目錄:
# mkdir /snap_portal # mount -v jfs2 -o snapshot /dev/fslv04 /snap_portal # df -m |grep portal /dev/fslv02 512.00 231.60 55% 7 1% /opt/portal /dev/fslv04 256.00 255.62 1% - - /snap_portal
現(xiàn)在,我可用 cd 命令進(jìn)入該快照 (/snap_portal) 文件夾并查看已復(fù)制的文件;注意,文件系統(tǒng)是只讀的,不允許寫入數(shù)據(jù):
# cd /snap_portal # ls app_be app_fr app_nl lost+found # ls >file1
file1:The file system has read permission only.
現(xiàn)在,我可以進(jìn)一步將快照文件系統(tǒng)備份到磁帶或 SAN。假設(shè)我已對 /opt/portal 執(zhí)行了某些數(shù)據(jù)維護(hù)操作并且誤刪除了一個文件,那么只需從已掛載的快照中將被刪除的文件復(fù)制到 /opt/portal 中。但是,現(xiàn)在我們來創(chuàng)建 /opt/portal 的另一個快照:
# snapshot -o snapfrom=/opt/portal -o size=250M Snapshot for file system /opt/portal created on /dev/fslv05
和前面類似,查詢 /opt/portal 的快照:
# snapshot -q /opt/portal Snapshots for /opt/portal Current Location 512-blocks Free Time /dev/fslv04 524288 523520 Sun Nov 4 10:57:46 GMT 2012 * /dev/fslv05 524288 523520 Sun Nov 4 11:00:53 GMT 2012
在上面的輸出中,* 代表***的快照。如果以后不再需要使用某個快照,可使用 snapshot 命令刪除該快照。刪除快照的通用格式為:
snapshot -d
例如,要刪除 fslv04,我可使用以下命令:
# snapshot -d /dev/fslv04
假設(shè)由于某些更新導(dǎo)致 /opt/portal 上出現(xiàn)錯誤,因此需要恢復(fù)整個文件系統(tǒng)。我可以選擇要回滾哪個快照。對我而言,這是快照的主要賣點(diǎn)之一。如果已經(jīng)制作了多個快照,那么就有多個恢復(fù)點(diǎn)。在我們的演示中,我將回滾在 10:57 制作的快照,即 /dev/fslv04。首先我要卸載所有快照(如果已掛載的話),然后卸載 /opt/portal,之后執(zhí)行 rollback 命令。在這個例子中,時間點(diǎn)是 Sunday, Nov. 4 的 10:57。rollback 命令的常見格式為:
rollback -v
進(jìn)行回滾時,會刪除該文件系統(tǒng)的所有快照。要回滾并恢復(fù)到原始文件系統(tǒng) /opt/portal,我可使用:
# umount /opt/portal # rollback -v /opt/portal /dev/fslv04 Restoring block 1 Restoring block 1000 Restoring block 2000 ... Restoring block 12000 Total blocks restored = 12809 rmlv:Logical volume fslv04 is removed. rmlv:Logical volume fslv05 is removed. Rollback complete
要確認(rèn)沒有留下任何快照,可列出快照:
# snapshot -q /opt/portal /opt/portal has no snapshots.
現(xiàn)在,我可以重新掛載 /opt/portal,并且已恢復(fù)了文件系統(tǒng)的原始內(nèi)容!
# mount /opt/portal
備份快照
backsnap 在后臺為您完成大部分的工作。它創(chuàng)建邏輯卷來保存快照,然后將內(nèi)容復(fù)制到一個存檔文件中或磁帶設(shè)備上。然后可使用 restore 命令來恢復(fù)已備份的文件。使用 /opt/portal 文件系統(tǒng)創(chuàng)建備份快照,讓我們看看它是如何工作的。backsnap 命令的常見格式為:
backsnap -m -s size -f
在這個例子中,我將使用以下值:/backsnap_portal 是臨時掛載點(diǎn);250M 是大小;/opt/dump/backup_portal 是存檔文檔;/opt/portal 是源文件系統(tǒng)。
# backsnap -m /backsnap_portal -s size=250M -f /opt/dump/backup_portal /opt/portal Snapshot for file system /opt/portal created on /dev/fslv05 backup:Backing up /dev/rfslv05 to /opt/dump/backup_portal. backup:There are an estimated 286768 1k blocks. backup:There are 287321 1k blocks on 1 volumes. backup:The backup is complete.
現(xiàn)在我們有了一個存檔文件 backup_portal,它位于目錄 /opt/dump 中。看看存檔的大小,是 280M:
# du -ms /opt/dump/backup_portal 280.56 backup_portal
要確認(rèn)文件已位于存檔中,我可使用 restore 命令列出各個文件:
# restore -tvf /opt/dump/backup_portal
要從存檔文件中將文件 app_be 恢復(fù)到 /opt/portal,我可使用:
# cd /opt/portal # restore -xvf /opt/dump/backup_portal app_be. Extracting directories from media. Initializing the symbol table. Extracting requested files.. Specify the next volume number:1 Extracting file ./app_be.
要制作一個快照并將文件置于磁帶 rmt0,同時使用以前的備份快照的屬性,我可使用:
# backsnap -m /backsnap_portal -s size=250M -f /dev/rmt0 /opt/portal
如果您已制作了快照并且已將內(nèi)容發(fā)送到磁帶,可使用 restore 命令列出磁帶,如:
# restore -tvf /dev/rmt0
也可使用以下命令列出已制作的快照:
# snapshot -q /opt/portal Snapshots for /opt/portal Current Location 512-blocks Free Time * /dev/fslv08 524288 522496 Sun Nov 4 11:30:25 GMT 2012
如果決定要刪除快照,已發(fā)送到磁帶的已存檔文件不會發(fā)生任何變化,這與刪除外部快照不同。也就是,除非您以前將該快照的其他備份發(fā)送到某些介質(zhì)上。
注意空間
作為系統(tǒng)管理員,我相信快照是進(jìn)行在線備份的出色方式,并且如果出現(xiàn)了錯誤,還能恢復(fù)內(nèi)容。但是要記住,一定要注意文件系統(tǒng)中已用的空間;您可不想因為空間不足導(dǎo)致最終得到無效的快照吧。
關(guān)于Snapshot命令快速進(jìn)行在線備份和恢復(fù)的方法是什么問題的解答就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道了解更多相關(guān)知識。