Chinaunix首页 | 论坛 | 博客
  • 博客访问: 427345
  • 博文数量: 72
  • 博客积分: 2120
  • 博客等级: 大尉
  • 技术积分: 789
  • 用 户 组: 普通用户
  • 注册时间: 2009-03-02 11:21
个人简介

简单

文章分类

全部博文(72)

文章存档

2019年(4)

2018年(2)

2017年(2)

2014年(1)

2011年(6)

2010年(7)

2009年(50)

我的朋友

分类:

2009-12-04 08:51:03

AIX的备份和恢复
1.mksysb命令
 
1.1概述
mksysb命令针对rootvg上已经mount的file system建立一个bootable image,该文件是backup-file格式,用户定义的paging space、未mount的file system、raw device不包含在备份集中。
 
1.2备份文件的格式
BOS boot image + mkinsttape image + dummy.toc + rootvg data...
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
BOS boot image   :包含从 mksysb 磁带引导所需的系统内核和设备驱动的副本。由 bosboot 命令创建。
mkinsttape image : 有三个重要的文件
    ./tapeblksz 文件包含 mksysb 命令运行时设定磁带驱动器的块大小。
    ./bosinst.data 文件包含自定义的 BOS 安装过程和指示 BOS 安装程序如何运行。执行mksysb 命令前可自定义该文件,或映像备份完成后使用程序自定义该文件。
    ./image.data 文件包含描述 BOS 安装过程中安装的映像的信息。这些信息包括逻辑卷的大小、名称、映射以及在rootvg 的安装点。可在使用 mksysb 命令之前自定义该文件,或在备份期间运行 mksysb -i 命令在磁带上生成一个新的 ./image.data 文件。mkszfile 命令生成 ./image.data 文件。./image.data 文件以 stanza 格式安排。
table of contents:使 mksysb 磁带包含和BOS安装磁带同样数目的映像。
rootvg data      :包含 mksysb 命令备份的 rootvg 卷组上的所有数据。mksysb 命令使用 backup 命令保存 rootvg 上安装 JFS 数据内容,除了 raw 数据。
 
1.3排除文件系统
比如要排除/tmp:
# cat /etc/exclude.rootvg
^./tmp/
然后使用-e标志来执行mksysb
# mksysb -e /dev/rmt0
 
1.4创建可引导的系统备份
#smitty mksysb (可以创建到tape中,也可以创建到file system中)
#/usr/bin/mksysb -i /tmp/rootvg.bak
#/usr/bin/mksysb -i /dev/rmt0
 
1.5备份用户卷组
不能使用mksysb,只能使用savevg、tar、cpio、backup
 
1.6列出mksysb映象的内容
smitty lsmkssyb
 
1.7恢复
smitty restmksysb
 
2.管理磁带备份介质
 
2.1tctl
   tctl命令发送subcommand到流(streaming)磁带设备,如 /dev/rmt0。该命令可容易地操作磁带用于备份和恢复。
   subcommand Description
   ~~~~~~~~~~~~~~~~~~~~~~
   rewind   磁带倒带
   offline  把磁带倒带并把磁带置于离线。
   status   显示指定磁带设备的状态信息。
   reset    向磁带设备发送一个bus device reset。BDR 只在设备不能打开和不忙时被发送。
   fsf Count向前移动磁带以 Count 参数指定的文件标记的数目
   bsf Count向后移动磁带以 Count 参数指定的文件标记的数目如果 bsf 子命令试图移动磁带超过起点, 磁带将倒带,tctl 命令返回 EIO。

2.2tapeutil
   也可以操作磁带,输入tapeutil后,会出现命令菜单选项,选择1先open device,然后选择17可以load,接着输入下面的命令,可以备份testvg到rmt0中
   #savevg -ivf /dev/rmt0 testvg   
 
3.备份策略
3.1全备份
全备份过程中,所有的文件都放到介质上
3.2差异备份
差异备份策略首先查看文件的修改时间,并与最后的全备份时间相比较,恢复时,最新的全备份,和只有最新的差异备份介质需要
3.3增量备份
增量备份与差异备份比较类似,都是只备份修改的文件。不过,增量备份检查文件的修改时间和上次备份时间之间的不同,恢复时,需要最近的全备份和全备份之后所有随后的增量备份介质,
 
4.相关备份和恢复命令
4.1 savevg
savevg -e 从该命令备份的文件中排除在 /etc/exclude.vgname 文件中指定的文件
       -f Device 指定要存储映像的设备或文件名。默认为 /dev/rmt0 设备
       -i 调用 mkvgdata 命令创建数据文件
#lsvg -p testvg
testvg:
PV_NAME           PV STATE          TOTAL PPs   FREE PPs    FREE DISTRIBUTION
hdisk5            active            247         241         50..43..49..49..50
#lsvg -l testvg
testvg:
LV NAME             TYPE       LPs   PPs   PVs  LV STATE      MOUNT POINT
testlv1             jfs        5     5     1    open/syncd    /seagull
loglv01             jfslog     1     1     1    open/syncd    N/A
#savevg -ivf /tmp/testvg.savevg testvg
 
4.2 restvg
restvg [-f Device] [-s] [-n] DiskName       
#cd
#umount /seagull
#varyoffvg testvg
#restvg -f /tmp/testvg.savevg hdisk5
 
4.3 backup
backup命令备份文件和文件系统
backup -i [ -f Device ] [ -l Number ] [ -v ]
       -i   指定从标准输入(stin)读取的文件,并以文件名归档 
       -f Device  指定输出设备
       -v   使用 backup 命令显示备份的额外信息
 
#backup -0 -f /tmp/test.backup /seagull              (-0表示全备)
#find /seagull -print|backup -i -f /tmp/test1.backup (绝对路径)
#cd /seagull
#find . -print |backup -i -f /tmp/test2.backup       (相对路径)
 
4.4 restore
restore 命令从 backup 命令创建的归档中提取文件。
restore -x -T [ v q ] [ -f Device ] [ File ... ]
-f Device  指定恢复映像所在的设备或文件名。默认为 /dev/rmt0 设备
-T   显示备份归档的信息
-q   指示可移除介质准备可用
-v   显示关于备份的额外信息
-x   单独恢复 file 参数指定的文件
#pwd
/
#restore -rvqf /tmp/test1.backup
#cd /seagull
#ls
hello.seagull  ibmsupt        lost+found
#rm -r *
#restore -xvqf /tmp/test1.backup /seagull/hello.seagull
#ls
hello.seagull
 
4.5 tar
tar命令通过向归档存储介质写文件、或从归档存储介质中检索文件和抽取文件
c   创建一个新的归档,并把通过一个或多个 file 参数指定的文件写到归档的开始
-t   以其在归档中的顺序列出文件      
-B   强制每个记录(record)输入和输出分组(blocking)为 20 块(blocks)
-f Archive  使用 Archive 变量作为读取或写入的归档     
-v   程序进行时列出各个文件名
-x   恢复 File  参数指定的单个文件 
 
这个命令用了n次了,不试验了,呵呵
 
4.6 cpio
cpio 命令把文件复制到一个 cpio 归档,也可从一个 cpio 归档中把文件复制出来。
-B  既不使用该选项,也不使用 -C 选项,默认的 buffer 大小是 512 字节。
 但使用 -B 标记时,用于 Input/Output 操作的 buffer 大小设定为一个 5120 字节的块。
-c  以 ASCII 字符格式为系统互操作性和可移植性读取或写入头信息。       
 -c 标记与 -H 和 -6 标记互异。当目标和目标机器是不同的类型时,可使用 -c 或 -H 选项。     
-d  根据需要创建目录
-m  保留先前的文件修改时间。一个恢复文件的修改时间和访问时间设定为该文件备份时的修改时间。目录的修改时间不保留。 
-u  无条件复制。旧文件立即替换同名的新文件。
-v  列出文件名。             
-o  从标准输入读取文件路径名,并把这些文件复制到标准输出。
这个命令比较难搞,试了半天也没完全弄清楚.
复制文件到软盘:              # cpio -ov /dev/fd0
复制当前目录下的文件到软盘:    # ls *.c | cpio -ov >/dev/fd0
复制当前目录和所有子目录到软盘: # find . -print | cpio -ov >/dev/fd0
以前安装9i时用过得命令:      # cpio -idmv < ship_9204_linux_disk1.cpio
 
4.7 gzip和gunzip
#ls
hello.seagull  ibmsupt        lost+found
#gzip -c hello.seagull > hello.seagull.gz   (-c表示原文件保留)
#ls -l
total 32
-rw-r--r--   1 root     sys              43 Dec 20 11:29 hello.seagull
-rw-r--r--   1 root     sys              64 Dec 20 11:32 hello.seagull.gz
drwx------  10 root     system          512 Dec 13 11:57 ibmsupt
drwxrwx---   2 root     system          512 Dec 20 10:29 lost+found
#rm hello.seagull
#gunzip hello.seagull.gz
#ls
hello.seagull  ibmsupt        lost+found
#more hello.seagull
take me to your heart
take me to your soal
#
 
5.验证备份介质
创建备份的命令与恢复或验证内容是同一个命令,也可使用 tcopy 命令(通常用于将磁带从一种介质格式复制为另一种),当只指定源磁带参数,tcopy 命令输出记录和磁带文件大小的信息。
#tcopy /dev/rmt0
tcopy: Tape File: 1; Record: 1; Size 51200.
tcopy: File: 1; End of File after: 1 Records, 51200 Bytes.
tcopy: The end of the tape is reached.
tcopy: The total tape length is 51200 bytes.
#
阅读(1420) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~