在这章的例子中使用了一个 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 选择项得到备份介质的文件列表,例如:
从 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
oracle视频教程请关注:http://u.youku.com/user_video/id_UMzAzMjkxMjE2.html