1. 利用SAM做常规系统备份恢复
HPUX 提供的SAM(System Administrate Manager)可以简便的完成文件系 统级 的备份与恢复。
具体做法是:
1) 备份数据
# sam
sam ->Backup and Recovery-> AutomatedBackups进入自动备份;
sam ->Backup and Recovery->Interactive Backup and Recovery进入交互式备份。
自动备份与交互式备份的区别在于:前者需定义开始备份的时间。通常,系统管理员可利用自动备份方法来将系统备份设定在午夜,或系统空闲时间段内进行。下面我们以交互式备份为例来说明整个过程:
进入sam -> Backup and Recovery-> Interactive Backup andRecovery后,sam将自动搜寻所有可用于备份的设备,包括DDS、DLT、Jukebox等,然后在设备列表窗口中选择恁欲备份的设备。Actions内选择Back Up Files Interactively...,最后定义您欲备份的范围,Include Files里置欲备份的文件系统目录,ExcludedFiles内置不想备份的目录。 确认后,备份过程即开始。
系统恢复过程和备份过程基本一致。
2) 检查备份的数据
[1] 检查文件 /var/sam/log/br_log
注意:如果 Exit code=2,指示在备份过程中有问题。
[2] 查看磁带上有那些文件
# frecover –rNsv–f /dev/rmt/0m
以上方法的备份和恢复,实际上是使用HPUX的fbackup和frecover命令对,对于有兴趣深入了解该对命令的系统管理员,可从下个章节中如愿以偿。
2. fbackup & frecover
A、系统备份命令: fbackup
1) fbackup的常用方式一:
[1] 进入单用户:
# init –s 或
# shutdown 0
[2] 系统全备份
# fbackup –f /dev/rmt/0m -0iv / -I/tmp/sysbk.index
-f : 设备文件名 ( such asDDS tape driver)
-i : 要包含的目录
-e: 不包含的目录
- I: 备份内容检索目录
- v: 备份内容详细列表
- 0 : 零级备份
# fbackup –f /dev/rmt/0m -i / -e /home
备份除了目录 /home的所有目录
[3] 说明
a、该命令方式对系统当前mounted的文件系统进行备份
b、备份级别说明
备份级别有0~9个级别,如果当前系统采用零级备份,当下一次采用5级备份时,系统仅将会对有变化的文件进行备份。
2) fbackup的常用方式二:
〖1〗 # mkdir -p /tmp/fbackupfiles/index
# mkdir -p /tmp/fbackupfiles/log
〖2〗 # touch/tmp/fbackupfiles/index/full.`date’+%y%m%d.%H:%M’`
〖3〗进入单用户
# shutdown –y0
〖4〗对系统进行全备份
# fbackup –0vi/ -f /dev/rmt/0m \
-I/tmp/fbackupfiles/index/full.`date ’+%y%m%d.%H:%M’`\
2 >/tmp/fbackupfiles/log/ full.`date ’+%y%m%d.%H:%M’`
〖5〗说明
通过该方式可以知道系统备份需要的时间
3) fbackup的常用方式三:
〖1〗进入单用户
# shutdown –y0
〖2〗对系统进行全备份
# fbackup –0uv / -f /dev/rmt/0m \
-g /tmp/fbackupfiles/mygraph \
-I/tmp/fbackupfiles/index/full.`date ’+%y%m%d.%H:%M’`\
2 >/tmp/fbackupfiles/log/ full.`date ’+%y%m%d.%H:%M’`
〖3〗说明
a、文件mygraph: 包含需要备份的目录,格式如下:
/users/data
/home/app
e /oracle/sql
b、参数 u :
当备份系统成功时,系统将更新/var/adm/fbackupfiles/dates.
4) fbackup的常用方式四:
备份远程系统
[1] 登录在本地系统时
# remsh backup_sysname ”fbackup –f DDS_sysname: /dev/rmt/0m -0vi / ”
[2] 登录在远程系统时
# fbackup –f backup_sysname: /dev/rmt/0m –0vi /
5) fbackup的常用方式五:
压缩方式备份( 不建议使用、影响系统性能)
[1] 压缩方式备份
# fbackup –0vi /dir -f - | compress | dd of=/dev/rmt/0m obs=10k
“-” : 指向标准输出
[2] 查看备份内容
# dd if=/dev/rmt/0mibs=10k | uncompress | frecover –I - -f -
B、 系统恢复命令: frecover
1) 恢复磁带机上所有内容:
[1] 进入单用户:
# init –s or shutdown 0
[2] 恢复数据
# frecover –rf /dev/rmt/0m
恢复磁带上的所有数据
-f: 设备文件名
-r: 恢复磁带上的所有数据
-I: 将磁带上文件索引存到指定的文件中
# frecover –I/tmp/index.txt -f /dev/rmt/0m
2) 恢复某一目录:
# frecover -xi /directory
# frecover –x -i /dir1 -i /dir2
# frecover -xoi /dir
-o: 覆盖/dir下已有的、相同名称的文件
# frecover -xvXi /dir
-X: 按磁带上目录恢复数据
# cd /tmp/local; frecover –xvYi /dir
-Y: 按磁带上文件名恢复数据
例如:
# cd /tmp/local
# frecover –xvF -i /home/filename
[恢复结果]/tmp/local/filename 不是 /home/filename
3) 从远程磁带机上恢复数据到本地:
# frecover –xi /dir –f remote_name : /dev/rmt/0m
4) 从本地磁带机上恢复数据到远地系统:
# remsh remote_name ”frecover–xi /dir -f local_name:
/dev/rmt/0m”
3. tar 命令
1) 对系统全备份
# tar cvf /dev/rmt/0m /
2) 备份某目录
# tar cvf /dev/rmt/0m /tmp
3) 改变文件的备份路径
# tar cvf /dev/rmt/0m -C /tmp .
注意 : 路径 /tmp 在磁带上的备份路径变为 ./
# cd /tmp
# tar cvf /dev/rmt/0m ./*
4) 恢复数据
# tar xvf /dev/rmt/0m (磁带上所有数据)
# tar xvf /dev/rmt/0m /tmp ( 恢复目录/tmp )
5) 查看磁带上的数据
# tar tvf /dev/rmt/0m
4. Copyutil
1) 如何启动 “ Copyutil “
[1] 从CDboot , 进入ISL
BOOT_ADMIN>boot scsi.n.m ( path ofCDROM drive----such as scsi.4.0)
[2] ISL>odecopyutil
Type help for command information
[3]ISL_CMD>copyutil
please wait while scan device bussess…
TY Indx Path Product ID Bus Size Rev
D 0 16/5.6.0 SEAGATEST31230Ndisk drive SCSI 1.0 GB HPM4
D 1 16/5.5.0 SEAGATEST31230Ndisk drive SCSI 1.0 GB HPM4
T 2 16/5.0.0 HPC1504[X]/HPC1521BDDS tape SCSI n/a 1009
2) 备份系统硬盘上的所有数据
COPYUTIL>backup
Enter the disk index ([q]/?): 0
Enter the Tape index ([q]/?): 2
Use data compression? (y/[n])? Y
When backup finished, system will show: DONE!
COPYUTIL> exit
3) 恢复数据到指定的系统硬盘上
COPYUTIL> restore
Enter the Tape index ([q]/?): 2
Enter the disk index ([q]/?): 0
Use data compression? (y/[n])? Y
After system display: Restored Successful, that means restore isfinished!
COPYUTIL> exit
4) 注意:
当用copyutil备份Root Disk到相应的磁带时,该磁带可以作为bootable磁 带使用
1. make_recovery
1) 安装 “Ignite-UX application”
[1] 从 “HP-UX Application CD-ROM “ 上安装
1) #swinstall
2) “Mark”[A. 1.53 HP-UX Installation Utility(Ignite-ux for 10.20)]
3) “Analysis”
4) “Install”
[2] 从WebSite 下载并安装:
a、 http://www.software.hp.com/
Select : “Network & System administration ”
Download: “ ignite-ux_10.20.tar”(10.20为 OS 版本)
b、 从硬盘上安装:
# cd /tmp
# tar xvf/dev/rmt/0m ./ignite-ux_10.20.tar
# swinstall –s /tmp/ignite-ux_10.20.tar
c、 从磁带上安装:
# dd if=/tmp/ignite-ux_10.20.tar of=/dev/rmt/0m bk=2
# swinstall –s /dev/rmt/0m
[3] make_recovery:
/opt/ignite/bin/make_recovery[-AprvC] [-d destination] [-b boot_destination]
-A : 指定要备份整个Root disk / Volume Group
-p : 预览备份过程,并不创建 BootableDDS Tape
a. 确认/var/opt/ignite/recovery/mkrec.append 文件
b. 创建/var/opt/ignite/recovery/arch.include 文件
-r : 使用 –p选项后,可以用该选项创建 Bootable DDS Tape
a. 该选项可以识别/var/opt/ignite/recovery/arch.include文件
-v : 用于显示备份过程的提示信息
-d : 指定DDS 的设备文件名 ( default: /dev/rmt/0mn )
-b : 指定系统备份过程中,用到的临时文件
(default:/var/tmp/uxinstlf recovery )
该文件大小为32M,对系统进行make_recovery时,要注意 /var文件系统的大小,当/var文件系统大小不足时,可用如下命令对系统进行备份:
# make_recovery –A -C -b /tmp/uxinstlf.recovery
-C : 创建反映系统当前状态的文件:
/var/opt/ignite/recovery/makrec.last
如果该文件存在,那么可以用check_recovery 命令
[4] 注意:
用make_recovery备份的磁带是bootable 磁带,用它可以安装OS。
2) 备份系统Root Disk
[1] 创建“最小”OS 的 bootable DDS tape (default 设备文件: /dev/rmt/0mn)
# make_recovery
[2] 创建“最小”OS的 bootable DDS tape
(设备文件:/dev/rmt/c0t1d1BESTn)
# make_recovery –d /dev/rmt/c0t1d1BESTn
[3] 先预览,再创建 bootable DDS tape
# make_recovery -p
# vi /var/opt/ignite/recovery/arch.include
# make_recovery -r
[4] 复制 整个 Root Disk
# make_recovery -A
[5] 复制 整个 Root Disk, 且生成反映系统当前状态的文件:
(/var/opt/ignite/recovery/makrec.last )
# make_recovery -C -A
[6] 实例分析:
(1)系统文件系统:
Filesystem kbytes used avail %used Mounted on
/dev/vg01/osdepot 26214402530838 84872 97% /osdepot
/dev/vg01/lvol1 480341 58696 373610 14% /var
/dev/vg01/lvol7 378965 297521 43547 87% /usr
/dev/vg01/lvol6 588643 245540 284238 46% /opt
/dev/vg00/lvol3 107669 38577 58325 40% /
/dev/vg00/lvol1 67733 12409 48550 20% /stand
/dev/vg00/lvol4 30597 19 27518 0% /tmp
/dev/vg00/lvol5 19861 1416 16458 8% /home
(2) 分析:
[a] make_recovery:
vg00: /stand, /sbin, /dev, /etc, /tmp, /home
vg01: parts of /opt and /var (see Core-OS list)
/usr/bin, /usr/lib
/usr/obam, /usr/sam,
/usr/share, /usr/ccs,
/usr/conf, /usr/lbin,
/usr/contrib, /usr/local,
/usr/newconfig
[b] make_recovery -A:
vg00: 备份Root Volume Group 上的所有数据
vg01: 备份non-Root volume Group 上的所有数据
只有当/usr 位于non-root volume group时,
该 non-root volumegroup 上的所有数据也将
被备份到磁带上
3) 恢复磁带上的所有数据
(1)非交互式恢复系统
[1] 在磁带机中,插入系统恢复带
[2] Boot 系统
[3] 中断Boot流程,进入 Boot_admin> 提示下
[4] Boot_admin> bo 8/16.0.0
8/16.0.0: 磁带机的 hardware path
[5] 选取 “non-interactive ”
[6] 等待系统恢复完毕
(2)交互式恢复系统
[1] 在磁带机中,插入系统恢复带
[2] Boot 系统
[3] 中断Boot 流程,进入 Boot_admin> 提示下
[4] Boot_admin> bo 8/16.0.0
8/16.0.0: 磁带机的 hardware path
[5] 不选取 “non-interactive ”
[6] 选取
a. [ Install HP-UX ]
b. [ ] Advanced Installation
c. 配置或改变如下选项:
disks, file systems,
hostname, IP ddress,
timezone, root password,
DNS server, and gateway
[7] 选取 [install continue… ],直到系统恢复完毕
二、系统备份 / 恢复方法及策略
1. 系统备份的策略
1) HP-UX Core-OS:
这部分内容主要包括一些HP-UX用到的文件系统,如 /、 /opt、 /var、 /tmp、/usr、/home、/stand 。通常这些文件系统位于vg00中。
备份的方法:
(a)#backup:
# fbackup –0vi/ -f /dev/rmt/0m \
-I/tmp/fbackupfiles/index/full.`date ’+%y%m%d.%H:%M’`\
2 >/tmp/fbackupfiles/log/ full.`date ’+%y%m%d.%H:%M’
详见 ( fbackup的常用方式二)
(b) make_recovery :
# make_recovery –C -A -b /tmp/oslif.rec
详见 ( make_recovery)
2) 系统配置文件
对于系统一些关键性的文件或信息需要单独进行备份这样有利于对系统进行恢复。这些文件或信息包括:
(a)系统Swap 信息
# swapinfo –t
(b)系统文件系统信息
# bdf
(c)系统的I / O 信息
# ioscan –fnCdisk
(d)/etc/fstab
(e)系统逻辑卷配置文件
/etc/lvmconf/vg00.conf 、vg01.conf、vg02.conf
这些逻辑卷配置文件可以用命令:
vgcfgbackup / vgcfgrestore 生成和恢复
(f)利用HP的Tools 收集和备份系统的配置信息
这些Tools 包括:LVMcollect.10
collect.sh
capture.sh
collect.conf
备份的方法:
(1)tar
# tar cvf /dev/rmt/0m ./vg00.conf ./vg01.conf
(2)fbackup
# fbackup –f /dev/rmt/0m –i /etc/lvmconf/vg01.conf
3) 系统其它逻辑卷 ( 如:vg01 、vg02)
备份的方法:
(1) fbackup :
# fbackup –0uv / -f /dev/rmt/0m \
-g /tmp/fbackupfiles/mygraph \
-I /tmp/fbackupfiles/index/full.`date ‘+%y%m%d.%H:%M’`\
2 > /tmp/fbackupfiles/log/full.`date ’+%y%m%d.%H:%M’`
(2) tar
# tar cvf/dev/rmt/0m /oracle/app /home/oracle
4) 数据库的备份
请参照数据库的备份方法
2. 系统恢复的策略
1) 用fbackup/ tar 对系统进行备份时
1) Install Core-OS
2) 恢复vg00/ vg01 / vg02 的备份内容
# frecover –o–r –f /dev/rmt/0m
2) 用make_recovery 对系统进行备份时
(a)用磁带boot system, 恢复vg00
详见 make_recovery 的恢复方法
(b)恢复其它逻辑卷
# frecover -o –r -f /dev/rmt/0m