系统备份与恢复常用命令

系统备份与恢复常用命令

1. fbackup & frecover
  
  A. 系统备份命令: fbackup
  
  1) fbackup的常用方式一:
  
  (1) 进入单用户:
  
  # shutdown -y 0
  # /etc/mount -a
  
  (2) 系统全备份
  
  # fbackup -f /dev/rmt/0m -0v -i / -I /tmp/sysbk.index
  
  -f : 设备文件名 ( such as DDS tape driver)
  -i : 要包含的目录
  -e: 不包含的目录
  - I: 备份内容检索目录
  - v: 备份内容详细列表
  - 0 :零级备份
  
  # fbackup -f /dev/rmt/0m -i / -e /home
  
  备份除了目录 /home的所有目录
  
  (3) 说明
  
  ? 该命令方式对系统当前"mounted"的文件系统进行备份
  ? 备份级别说明
  
  备份级别有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 -y 0
  # /etc/mount -a
  (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 -y 0
  # /etc/mount -a
  
  (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) 说明
  
  ? 文件 mygraph: 包含需要备份的目录,格式如下:
  
  i /users/data
  i /home/app
  e /oracle/sql
  
  ? 参数 u :
  
  当备份系统成功时,系统将更新 /var/adm/fbackupfiles/dates.
  
  4) fbackup的常用方式四:
  
  备份远程系统
  
  (1) 登录在本地系统时
  
  # remsh backup_sysname " fbackup -f DDS_sysname: /dev/rmt/0m -0v -i / "
  
  (2) 登录在远程系统时
  
  # fbackup -f DDS_sysname: /dev/rmt/0m -0v -i /
  5) fbackup的常用方式五:
  
  压缩方式备份( 不建议使用、影响系统性能)
  
  (1) 压缩方式备份
  
  # fbackup -0vi /dir -f - | compress | dd of=/dev/rmt/0m obs=10k
  
  "-" : 指向标准输出
  (2) 查看备份内容
  
  # dd if=/dev/rmt/0m ibs=10k | uncompress | frecover -I - -f -
  
  B. 系统恢复命令: frecover
  
  1) 恢复磁带机上所有内容:
  
  (1) 进入单用户:
  
  # shutdown -y 0
  # /etc/mount -a
  
  (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 -xvFi /dir
  
  -F: 仅恢复文件,而不恢复到文件的路径
  
  例如:
  
  # 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"
  
  2. tar 命令
  
  A. 对系统全备份
  
  # tar cvf /dev/rmt/0m /
  
  B. 备份某目录
  
  # tar cvf /dev/rmt/0m /tmp
  
  C. 改变文件的备份路径
  
  # tar cvf /dev/rmt/0m -C /tmp .
  
  [Note] : 路径 /tmp 在磁带上的备份路径变为 ./
  
  # cd /tmp
  # tar cvf /dev/rmt/0m ./*
  
  D. 恢复数据
  
  # tar xvf /dev/rmt/0m (磁带上所有数据)
  
  # tar xvf /dev/rmt/0m /tmp ( 恢复目录 /tmp )
  
  E. 查看磁带上的数据
  
  # tar tvf /dev/rmt/0m
  
  3. SAM
  
  1) 备份数据
  
  # sam
  
  ----> Select " Backup and Recovery "
  ---- >Select " Interactive Backup and Recovery "
  ---- >Select " Backup Device "
  ---- > Select " Backup Files Interactively " ( From [ Action ] menus )
  ----- > Select Backup Scope
  ----- > Select Local File Systems Only ( no NFS )
  -----> Select"OK"
  2. 检查备份的数据
  
  (1) 检查文件 /var/sam/log/br_log
  
  
  
  
  
  
  
  
  
  
  Notes: if Exit code=2, there is problem on backup procedure.
  
  (2) 查看磁带上有那些文件
  
  # frecover -rNsv -f /dev/rmt/0m
  
  4. Copyutil
  
  如何启动" Copyutil "
  
  (1) 从CD boot , 进入ISL
  
  BOOT_ADMIN>boot scsi.n.m ( path of CDROM drive----such as scsi.4.0)
  
  (2) ISL>ode copyutil
  
  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 SEAGATEST31230N disk drive SCSI 1.0 GB HPM4
  D 1 16/5.5.0 SEAGATEST31230N disk drive SCSI 1.0 GB HPM4
  T 2 16/5.0.0 HPC1504[X]/HPC1521B DDS tape SCSI n/a 1009
  
  
  a. 备份系统硬盘上的所有数据
  
  COPYUTIL>backup
  
  Enter the disk index ([q]/?): 0
  Enter the Tape index ([q]/?): 2
  
  Use data compression? (y/[n])? n
  
  When backup finished, system will show: DONE!
  
  COPYUTIL> exit
  恢复数据到指定的系统硬盘上
  
  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 is finished!
  
  COPYUTIL> exit
  
  b. 注意:
  
  当用copyutil备份RootDisk到相应的磁带时,该磁带可以作为bootable 磁带使用。
  
  5. make_recovery
  
  1) 安装 " Ignite-UX application"
  
  (1) 从 " HP-UX Application CD-ROM"上安装
  
  a. # swinstall
  b. " Mark" [A. 1.53 HP-UX Installation Utility( Ignite-ux for 10.20)]
  c. " Analysis"
  d. " Install"
  
  (2) 从 WebSite 下载并安装:
  
  http://www.software.hp.com/
  Select : " Network & System administration "
  Download: " ignite-ux_10.20.tar"(10.20 为 OS 版本)
  
  (3)从硬盘上安装:
  
  # cd /tmp
  # tar xvf /dev/rmt/0m ./ignite-ux_10.20.tar
  # swinstall -s /tmp/ignite-ux_10.20.tar
  
  (4)从磁带上安装:
  
  # dd if=/tmp/ignite-ux_10.20.tar of=/dev/rmt/0m bk=2
  # swinstall -s /dev/rmt/0m
  
  2)make_recovery:
  
  /opt/ignite/bin/make_recovery [ -AprvC] [-d destination] [-b boot_destination]
  
  -A : 指定要备份整个Root disk / Volume Group
  
  -p : 预览备份过程,并不创建 Bootable DDS 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 命令
  
  3)注意:
  
  用make_recovery备份的磁带是bootable 磁带,用它可以安装OS。
  
  4)备份系统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 2621440 2530838 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
  
   make_recovery -A:
  vg00:备份Root Volume Group 上的所有数据
  
  vg01:备份non-Root volume Group 上的所有数据
  
  只有当/usr 位于non-root volume group时,
  该 non-root volume group 上的所有数据也将
  被备份到磁带上
  
  5)恢复磁带上的所有数据
  
  (1) 非交互式恢复系统
  
  a. 在磁带机中,插入系统恢复带
  
  b. Boot 系统
  
  c. 中断Boot 流程,进入 Boot_admin> 提示下
  
  d. Boot_admin> bo 8/16.0.0
  
  8/16.0.0: 磁带机的 hardware path
  
  e. 选取 " non-interactive "
  
  f. 等待系统恢复完毕
  
  (2) 交互式恢复系统
  
  a. 在磁带机中,插入系统恢复带
  
  b. Boot 系统
  
  c. 中断Boot 流程,进入 Boot_admin> 提示下
  
  d. Boot_admin> bo 8/16.0.0
  
  8/16.0.0: 磁带机的 hardware path
  
  e. 不选取 " non-interactive "
  
  f. 选取
  
  <1> [ Install HP-UX ]
  
  <2> [ Advanced Installation ]
  
  <3> 配置或改变如下选项:
  
  disks, file systems,
  hostname, IP ddress,
  timezone, root password,
  DNS server, and gateway
  
  g. 选取 [install continue… ],直到系统恢复完毕