歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Unix知識 >> Unix基礎知識 >> 簡述AIX的備份和恢復

簡述AIX的備份和恢復

日期:2017/3/3 15:20:39   编辑:Unix基礎知識

在這章的例子中使用了一個 5GB 8-mm 磁帶驅動器,其設備文件為/dev/rmt0。

一、備份

備份可以通過命令行或 SMIT 菜單實現。

1、命令行備份

AIX命令 backup 和 restore 專門用於備份和恢復。這兩個命令做為標准 UNIX實用程序 tar、cpio、dd 和 pax 的補充。下面我們分別介紹備份整個文件系統和單個文件或目錄的方法。

(1)備份文件系統

在 AIX 中用 backup 命令做一個文件系統轉儲是通過 i-node 格式備份。i-node 是AIX 管理數據的一種方式,通過 i-node 格式備份文件系統的基本的句法是:

# backup -f Device -DumpLevel -u File system

說明:

Device 設備可以是一個普通文件或一個設備文件。

DumpLevel 是從 0~9 的數字值,0在此代表完整的文件系統備份。其它級別代表增長備份,例如:n 級備份包括從最近一次 n- 1 級備份後被修改了的所有文件。

如果不指定備份級別,backup 缺省為 9級備份。

-u 選項可以更改用 backup 做增長備份時的記錄文件,該文件是/etc/dumpdates。在備份文件系統之前應該先做 unmount 並做 fsck,當然根文件系統是例外的。如果要備份根文件系統,MOUNT 在根上的其他文件系統,包括日志文件系統都不被備份。

以下是使用 backup 的兩個例子。

例 1:對/home 文件系統的一個完整的備份:

# umount /home

# fsck /home

# backup - f /dev/rmt0 - O - u /home

# mount /home

例 2:備份根文件系統,從最後一次 0 級備份後改變了的文件:

# backup - f /dev/rmt0 - 1 - u /

在第一例我們使用了安裝點/home 作為文件系統的名字。這樣做是為了更容易記住它。當然,在 backup 命令中也可以使用裸設備文件名或塊設備文件名。要得到一個文件系統的塊設備文件名,請使用 lsfs 命令。而在塊設備文件前面加字符 r就是裸設備文件名了。

(2)備份單個文件和目錄

備份單個文件和目錄,請使用-i 選項,基本的句法是:

# backup –f Device –i

注意:

1.如果不包括-fDevice,backup 自動寫到/dev/rfd0磁盤驅動器。

2.必須提供給 backup 一列需要備份的文件名字做為標准輸入。有多種方法可以提供給 backup 做為標准輸入,通過輸入每個文件的名字並以 Ctrl-D結束;使用重定向;使用 find 命令或 cat 命令。

如果備份介質已經裝好,下例中後面的-q 選擇項是用來禁止 backup 命令提示裝入備份介質。

# backup - f /dev/rmt0 - iq

/.profile

/etc/profile

/home

^D

# backup -f /dev/rmt0 < /tmp/filelist -iq

# cat /tmp/filelist | backup -f /dev/rmt0 -iq

# find /home - print|backup - f /dev/rmt0 - iq

上面最後一個例子將備份/home 目錄的全部內容。但是在此前的 2 個例子中,如果把/home 列入/tmp/filelist 裡面,那麼僅僅此目錄名被備份。為了使它能象備份文件一樣備份目錄樹,可輸入:

# find $(</tmp/filelist)- print|backup - f /dev/rmt0 – iq

另外為了在運行 backup 時看見文件和目錄列表在屏幕上滾動,使用-v 選擇項。為了保存這些輸出,可以用重定向標准輸出或使用 tee 命令,如下:

# find $(< /tmp/filelist) -print | backup -f /dev/rmt0 -iqv >\ /var/adm/backed.up.files

# find $ ( < /tmp/filelist ) -print | backup -f /dev/rmt0 -iqv | tee |\

var/adm/backed.up.files

2、用 SMIT 菜單備份

使用 smit backfilesys 快捷命令備份文件系統。

使用 smit backfile 快捷命令來按文件名方式備份。

二、恢復

restore 命令是用來恢復通過 i-node 方式或按名字方式備份的文件。這個命令僅僅對 backup 備份的文件有效,並且可以確定備份時通過哪種格式,是 i-node 或名字。

恢復完整文件系統的基本句法是:

# restore -f Device -r

恢復通過名字備份的文件的基本句法是:

# restore -f Device -x

例子:從磁帶恢復通過 i-node 備份的一個完整文件系統:

# restore -f /dev/rmt0 - r

用這種方式恢復前,不必 unmount 文件系統,但是因為 restore 用相對的路徑名字,所以要確定把當前目錄改變到適當的目錄。

恢復通過 i-node 備份的單個的文件,使用-i 選擇項,將啟動 restore 交互模式,它將引導完成恢復文件的整個進程。例如:

# restore -f /dev/rmt0 -i

從磁帶恢復通過名字備份的所有文件:

# restore -f /dev/rmt0 -x

從磁帶提取所有文件並且運行時顯示文件名字:

# restore - f /dev/rmt0 - xv

恢復文件/home/partlist:

# restore - f /dev/rmt0 - xv /home/partlist

從磁帶恢復/home 目錄的全部內容:

# restore - f /dev/rmt0 - xv - d /home

為了避免在恢復文件時失敗,要知道是使用完整路徑(通過名字備份的文件)或相對的路徑,這是極其重要的。要確定這點,使用-T 選擇項得到備份介質的文件列表,例如:

查看本欄目更多精彩內容:http://www.bianceng.cn/OS/unix/

從 backup 命令生成的/archive/backup1 中列出文件:

#restore - f /archive/backup1 - T

從磁帶列出文件:

# restore - f /dev/rmt0 - T

就算路徑名由一個“點”開始,例如。/home/partlist,也要按列出的內容使用文件或目錄的名字。

同樣,可以使用 SMIT 恢復文件,使用快捷命令 smit restfile 恢復單個的文件,用 smit restfilesys 恢復文件系統。

三、映象備份

mksysb 是 AIX 提供的生成可啟動磁帶的方法,讓磁帶包含根卷組的一個映象。這也是單個磁盤系統的一種保存方式,在磁盤失敗的情況下,它提供了一種迅速的恢復方式,當然,用來恢復的mksysb 映象應該是較新的。也可以使用 mksysb 去安裝另外的機器,這將要求再做一些配置,例如 IP 地址,因為幾乎在原機器上的任何東西都被拷貝到磁帶了。

做系統映象備份:

# smit mksysb

得到如下界面:

---------------------------------------------------------------------------------

Back Up the System

80

Type or select values in entry fields.

Press Enter AFTER making all desired changes.

[TOP] [Entry Fields]

WARNING: Execution of the mksysb command will

result in the loss of all material

previously stored on the selected

output medium. This command backs

up only rootvg volume group.

* Backup DEVICE or FILE [] +/

Create MAP files? no +

EXCLUDE files? no +

Make BOOTABLE backup? yes +

(Applies only to tape)

EXPAND /tmp if needed? no +

(Applies only to bootable tape)

Number of BLOCKS to write in a single output [] #

(Leave blank to use a system default)

---------------------------------------------------------------------------------

簡單地輸入磁帶驅動器的設備文件名字,例如/dev/rmt0,如果系統的備份超過一盤磁帶,在 FORCE increase of work space if needed 選擇 yes。

mksysb 僅僅備份根卷組(rootvg)。AIX版本 4開始可以通過使用 savevg 命令或使用的 SMIT 命令 smit savevg 做其它卷組的映象,例如,備份一個叫datavg 的卷組,輸入:

# savevg - i datavg

缺省設備是/dev/rmt0,使用其它的設備可以用-f 選擇項指定。

為了恢復這個卷組,使用 restvg 命令或 smit restvg。例如,從/dev/rmt0 恢復

這個卷組,且不須要出現提示,輸入:

# restvg – q

a

作者信息:51cto博客 Oracle小混子

Copyright © Linux教程網 All Rights Reserved