[ 永遠的UNIX::UNIX技術資料的寶庫 ]   GB | BIG5

首頁 > 系統管理 > HP-UX > 正文
HP-UX系統備份與恢復全功略
本文出自: 作者: (2002-01-29 20:03:38)
目錄 

一、系統備份與恢復常用命令  
1. fbackup / frecover  
2. tar  
3. sam  
4. copyutil  
5. make_recovery  

二、系統備份與恢復方法與策略  
1. 系統備份的策略  
2. 系統恢復的策略  



一 系統備份與恢復常用命令 


1. fbackup & frecover 

1.1系統備份命令: fbackup  

1) fbackup的常用方式一: 

[1] 進入單用戶: 

# shutdown -y 0 
# /etc/mount -a 

[2] 系統全備份 

# fbackup f /dev/rmt/0m -0iv / -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] 說明 

1) 該命令方式對系統當前”mounted “ 的文件系統進行備份 
2) 備份級別說明 

備份級別有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’` 

4說明 

a. 文件 mygraph: 包含需要備份的目錄,格式如下: 

i /users/data 
i /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/0m ibs=10k | uncompress | frecover I - -f -  


1.2 系統恢復命令: 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 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”  

2.tar 命令 

2.2.1 對系統全備份 

# tar cvf /dev/rmt/0m / 

2.2.2 備份某目錄 

# tar cvf /dev/rmt/0m /tmp 

2.2.3 改變文件的備份路徑 

# tar cvf /dev/rmt/0m -C /tmp . 

[Note] : 路徑 /tmp 在磁帶上的備份路徑變為 ./ 

# cd /tmp 
# tar cvf /dev/rmt/0m ./* 

2.2.4 恢復數據 

# tar xvf /dev/rmt/0m (磁帶上所有數據) 

# tar xvf /dev/rmt/0m /tmp ( 恢復目錄 /tmp ) 

2.2.5 查看磁帶上的數據 

# 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 

-------------------------------------------------- 
Full backup started on host1: Wed oct 16 15: 10: 09 EAT 1998 
( Scheduled Backup ) 
{ fbackup 0 u v g /etc/sam/br/graphDCAa04366 I /var/sam/log/br_indext.full 
-c /etc/sam/br/fbackup_config d /var/adm/fbackupfiles/dates f /dev/rmt/c1td0d0 
BEST } 2>&1 
Full backup completed on host1: Wed Oct 16 16:44:01 EAT 1998 
Exit code=0 
-------------------------------------------------- 

Notes: if Exit code=2, there is problem on backup procedure. 

[2] 查看磁帶上有那些文件 

# frecover rNsv f /dev/rmt/0m 


4. Copyutil 

1) 如何啟動 “ 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 



1) 備份系統硬盤上的所有數據 

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 is finished! 

COPYUTIL> exit 

4) 注意: 

當用copyutil備份Root Disk到相應的磁帶時,該磁帶可以作為bootable 磁帶使用  

5 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 下載並安裝:  

1) http://www.software.hp.com/  
Select : “ Network & System administration ” 
Download: “ ignite-ux_10.20.tar”(10.20 為 OS 版本) 

2) 從硬盤上安裝: 

# cd /tmp 
# tar xvf /dev/rmt/0m ./ignite-ux_10.20.tar 
# swinstall s /tmp/ignite-ux_10.20.tar 

3) 從磁帶上安裝: 

# dd if=/tmp/ignite-ux_10.20.tar of=/dev/rmt/0m bk=2 
# swinstall s /dev/rmt/0m 

[4] 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 命令  

[5] 注意: 

用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 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 

[b] make_recovery -A: 

vg00: 備份Root Volume Group 上的所有數據 

vg01: 備份non-Root volume Group 上的所有數據 

只有當/usr 位non-root volume group時, 
該 non-root volume group 上的所有數據也將 
被備份到磁帶上 

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… ],直到系統恢復完畢  



二 系統備份 / 恢復方法及策略 

2.1 系統備份的策略 


1HP-UX Core-OS:  

這部分內容主要包括一些HP-UX用到的文件系統,如/, /opt, /var,/tmp, /usr, /home, /stand 通常這些文件系統位vg00中。 

備份的方法: 

(1) fbackup : 

# 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的常用方式二) 

(2) make_recovery : 

# make_recovery C -A -b /tmp/oslif.rec 

詳見 ( make_recovery) 

2系統配置文件 

對系統一些關鍵性的文件或信息需要單獨進行備份這樣有利對系統進行恢復。這些文件或信息包括: 

(1) 系統Swap 信息 

#swapinfo t 

(2) 系統文件系統信息 

#bdf 

(3) 系統的 I / O 信息 

# ioscan fnCdisk 

(4) /etc/fstab 

(5) 系統邏輯卷配置文件 

/etc/lvmconf/vg00.conf 、vg01.conf、vg02.conf 

這些邏輯卷配置文件可以用命令: 
vgcfgbackup / vgcfgrestore 生成和恢復 

(6) 利用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.2 系統恢復的策略 

1用fbackup / tar 對系統進行備份時 

1) Install Core-OS 

2) 恢復vg00 / vg01 / vg02 的備份內容 

# frecover o r f /dev/rmt/0m 

 2 用make_recovery 對系統進行備份時 

1) 用磁帶boot system, 恢復vg00 

詳見 make_recovery 的恢復方法  

2) 恢復其它邏輯卷 

# frecover -o r -f /dev/rmt/0m    
(http://www.fanqiang.com)
    進入【UNIX論壇

相關文章
 

★  樊強制作 歡迎分享  ★