1、华胜天成科技股份有限公司 HPUX下数据丢失或损坏两个案例分享 HP Unix单用户模式下处理系统逻辑卷全部丢失的故障 系统环境: hp unix 11.31 硬件环境: rp4440 故障现象: 系统重启后只能进入单用户模式,vgdisplay看不到任何系统的lvm。 物理环境: 不能接触主机,单可以远程登录MP管理。 1. 系统不能正常启动,引导后从ISL中敲"hpux -is"进入单用户模式: NOTICE: return ramfs memory for BTL: [FREE] top 0x00000000c0400000, pages
2、2258 Create STCP device files Starting the STREAMS daemons-phase 2 $Revision: vmunix: B.11.31_LR FLAVOR=perf Memory Information: physical page size = 4096 bytes, logical page size = 4096 bytes Physical: 4192256 Kbytes, lockable: 2982120 Kbytes, available: 3400940 Kbytes /sbi
3、n/ioinitrc: Can't stat /dev/vg00/lvol1 /dev/vg00/lvol1: CAN'T CHECK FILE SYSTEM. /dev/vg00/lvol1: UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY. mount: /dev/vg00/lvol1: No such file or directory Unable to mount /stand - please check entries in /etc/fstab Skipping KRS database initialization - /s
4、tand can't be mounted INIT: Overriding default level with level 's' INIT: SINGLE USER MODE INIT: Running /sbin/sh # 2. 先看一下磁盘设备是否正常: # ioscan -funC disk Class I H/W Path Driver S/W State H/W Type Description ================================================================
5、 disk 6 0/1/1/0.0.0 sdisk CLAIMED DEVICE HP 146 GST3146707LC /dev/dsk/c2t0d0 /dev/rdsk/c2t0d0 disk 0 0/1/1/0.1.0 sdisk CLAIMED DEVICE HP 73.4GST373453LC /dev/dsk/c2t1d0 /dev/rdsk/c2t1d0 我的系统就在73.
6、4GB的硬盘上。 3. 看一下vg00的逻辑卷: # ls /dev/vg00 # 都没了。 单从/etc/lvmtab目录下找到了vg00的map文件。尝试导入。 # vgimport -s -m /etc/lvmconf/vg00.map vg00 /dev/dsk/c2t0d0 /dev/dsk/c2t1d0 vgimport: Volume group "/dev/vg00" already exists in the "/etc/lvmtab" file. 4. vg00存在多种问题。 1、不能被反激活 2、单用户模式下也不能用vg
7、cfgrestore命令 3、不能export和import 所以决定试用vg01带代替vg00做系统卷组尝试。 # mv /etc/lvmtab /etc/lvmtab.bak #vgscan -v 准备重新生成lvmtab文件: # vgimport -s -m /etc/lvmconf/vg00.conf vg01 /dev/dsk/c2t0d0 /dev/dsk/c2t1d0 vgimport: "/dev/vg01/group": not a character device. 提示错误,需要先建立/dev/vg01目录和节点设备/dev/vg01/gr
8、oup: # mkdir /dev/vg01 # mknod /dev/vg01/group c 64 0x010000 再次导入: # vgimport -s -m /etc/lvmconf/vg00.conf vg01 /dev/dsk/c2t0d0 /dev/dsk/c2t1d0 vgimport: Volume group "/dev/vg01" has been successfully created. Warning: A backup of this volume group may not exist on this machine. Please remem
9、ber to take a backup using the vgcfgbackup command after activating the volume group. Also, upon first activation of an imported bootable volume group, make sure to run lvlnboot(1M) command in recovery mode (-R option) to resync the information on the disk 导入成功。 尝试激活: # vgchange -a y vg01 A
10、ctivated volume group Volume group "vg01" has been successfully changed. 激活成功。 显示一下: # vgdisplay -v --- Volume groups --- VG Name /dev/vg01 VG Write Access read/write VG Status available Max LV 255
11、 Cur LV 9 Open LV 9 Max PV 16 Cur PV 2 Act PV 2 Max PE per PV 4384 VGDA 4 PE Size (Mbytes) 16
12、 Total PE 8759 Alloc PE 4044 Free PE 4715 Total PVG 0 Total Spare PVs 0 Total Spare PVs in use 0 VG Version 1.0.0
13、 --- Logical volumes --- LV Name /dev/vg01/lvol1 LV Status available/syncd LV Size (Mbytes) 1792 Current LE 112 Allocated PE 224 Used PV
14、 2 LV Name /dev/vg01/lvol2 LV Status available/syncd LV Size (Mbytes) 8192 Current LE 512 Allocated PE 1024 Used PV 2
15、 LV Name /dev/vg01/lvol3 LV Status available/syncd LV Size (Mbytes) 1024 Current LE 64 Allocated PE 128 Used PV 2 LV Name
16、 /dev/vg01/lvol4 LV Status available/syncd LV Size (Mbytes) 512 Current LE 32 Allocated PE 64 Used PV 2 LV Name
17、 /dev/vg01/lvol5 LV Status available/syncd LV Size (Mbytes) 112 Current LE 7 Allocated PE 14 Used PV 2 LV Name /dev/vg01/lv
18、ol6 LV Status available/syncd LV Size (Mbytes) 4960 Current LE 310 Allocated PE 620 Used PV 2 LV Name /dev/vg01/lvol7 LV Stat
19、us available/syncd LV Size (Mbytes) 2960 Current LE 185 Allocated PE 370 Used PV 2 LV Name /dev/vg01/lvol8 LV Status
20、 available/syncd LV Size (Mbytes) 8704 Current LE 544 Allocated PE 1088 Used PV 2 LV Name /dev/vg01/myswap LV Status availabl
21、e/syncd LV Size (Mbytes) 8192 Current LE 512 Allocated PE 512 Used PV 1 --- Physical volumes --- PV Name /dev/dsk/c2t1d0 PV Status
22、 available Total PE 4375 Free PE 2097 Autoswitch On Proactive Polling On PV Name /dev/dsk/c2t0d0 PV Status available
23、 Total PE 4384 Free PE 2618 Autoswitch On Proactive Polling On vg01拥有了vg00的全部逻辑卷: 6. 显示一下boot设备: # lvlnboot -v Boot Definitions for Volume Group /dev/vg01: Physic
24、al Volumes belonging in Root Volume Group: /dev/dsk/c2t1d0 -- Boot Disk /dev/dsk/c2t0d0 -- Boot Disk Boot: lvol1 on: /dev/dsk/c2t1d0 /dev/dsk/c2t0d0 Root: ??? on: /dev/dsk/c2t1d0 /dev/dsk/c2t0d0 Swap: ???
25、on: /dev/dsk/c2t1d0 /dev/dsk/c2t0d0 Dump: ??? on: /dev/dsk/c2t1d0, 0 异常。这与vg00的lvm丢失有直接关系。 或者#lvlnboot -R 否则到后面即使恢复成功,可能回出现lvlnboot -v输出异常。 7. 查看/etc/fstab文件: # cat /etc/fstab # System /etc/fstab file. Static information about the file systems # Se
26、e fstab(4) and sam(1M) for further details on configuring devices. /dev/vg00/lvol3 / vxfs delaylog 0 1 /dev/vg00/lvol1 /stand hfs defaults 0 1 /dev/vg00/lvol4 /tmp vxfs delaylog 0 2 /dev/vg00/lvol5 /home vxfs delaylog 0 2 /dev/vg00/lvol6 /opt vxfs delaylog 0 2 /dev/vg00/lvol7 /usr vxfs delaylo
27、g 0 2 /dev/vg00/lvol8 /var vxfs delaylog 0 2 /dev/vg00/myswap /myswap swap defaults 0 0 /dev/vg00/lvol3时/,能否重指定lvlnboot设备呢? # lvlnboot -r /dev/vg01/lvol3 lvlnboot: A Logical Volume has already been assigned to be the Root or Swap Logical Volume. 依次重新制定 # mount /dev/vg01/lvol3 / vxfs mount:
28、 V-3-21264: /dev/vg01/lvol3 is already mounted, / is busy, allowable number of mount points exceeded # 不能重建。因为单用户模式已经挂载了根。 8. 修改/etc/fstab吧,让系统启动时自动挂载/dev/vg01吧。 # cat /etc/fstab # System /etc/fstab file. Static information about the file systems # See fstab(4) and sam(
29、1M) for further details on configuring devices. /dev/vg00/lvol3 / vxfs delaylog 0 1 /dev/vg00/lvol1 /stand hfs defaults 0 1 /dev/vg00/lvol4 /tmp vxfs delaylog 0 2 /dev/vg00/lvol5 /home vxfs delaylog 0 2 /dev/vg00/lvol6 /opt vxfs delaylog 0 2 /dev/vg00/lvol7 /usr vxfs delaylog 0 2 /dev/vg00/lv
30、ol8 /var vxfs delaylog 0 2 /dev/vg00/myswap /myswap swap defaults 0 0 vi命令单用户模式下不能用。 # mv /etc/fstab /etc/fstab.bak 用echo来写入吧。 # echo /dev/vg01/lvol3 / vxfs delaylog 0 1 > fstab # cat fstab /dev/vg01/lvol3 / vxfs delaylog 0 1 # echo /dev/vg01/lvol1 /stand hfs defaults 0 1 >> fstab # echo /
31、dev/vg01/lvol4 /tmp vxfs delaylog 0 2 >> fstab # echo /dev/vg01/lvol5 /home vxfs delaylog 0 2 >>fstab # echo /dev/vg01/lvol6 /opt vxfs delaylog 0 2 >>fstab # echo /dev/vg01/lvol7 /usr vxfs delaylog 0 2>>fstab /dev/vg01/lvol7 /usr vxfs delaylog 0 # cat fstab /dev/vg01/lvol3 / vxfs delaylog 0 1
32、 /dev/vg01/lvol1 /stand hfs defaults 0 1 /dev/vg01/lvol4 /tmp vxfs delaylog 0 2 /dev/vg01/lvol5 /home vxfs delaylog 0 2 /dev/vg01/lvol6 /opt vxfs delaylog 0 2 # echo /dev/vg01/lvol7 /usr vxfs delaylog 0 2 >>fstab # echo /dev/vg01/lvol8 /var vxfs delaylog 0 2 >>fstab # pwd /etc # ls fstab* f
33、stab fstab.bak # echo /dev/vg01/myswap /myswap swap defaults 0 0 >> fstab 写入完毕。 9. 修改/sbin/ioinitrc文件,让系统启动时激活vg01。 将"/sbin/vgchange -a y /dev/vg01" 写入/sbin/ioinitrc文件开头,我写在了BOOT_AUTH() {...}函数下面,vg01可以被激活。 10.重新启动机器进入多用户模式。 # reboot Shutdown at 22:33 (in 0 minutes) System shutdown ti
34、me has arrived * The kernel registry database has been saved to disk. ERROR: The system could not create the file system links needed for proper operation of the kernel configuration. sync'ing disks (0 buffers to flush): 0 fcache pages still dirty 0 buffers not flushed 0
35、buffers still dirty Calling function a1c530 for Shutdown State 5 type 0x1 Calling function 5b3248 for Shutdown State 5 type 0x1 Closing open logical volumes... Done Firmware Version 44.21 Duplex Console IO Dependent Code (IODC) revision 1 Firmware Version 44.21 Duplex Console IO D
36、ependent Code (IODC) revision 1 ------------------------------------------------------------------------------ (c) Copyright 1995-2004, Hewlett-Packard Company, All rights reserved ------------------------------------------------------------------------------ Processor Speed St
37、ate CoProcessor State Cache Size Number State Inst Data --------- -------- --------------------- ----------------- ------------ 0 1000 MHz Active Functional 33554432 33554432 1
38、 1000 MHz Idle Functional 33554432 33554432 Central Bus Speed (in MHz) : 200 Available Memory : 4194304 KB Good Memory Required : Not initialized. Defaults to 32 MB. Primary boot path: 0/1/1/0.1 Alternate b
39、oot path: 0/1/1/0.0 Console path: 0/0/1/1.0 Keyboard path: 0/0/4/0.0 Processor is booting from the first available device. To discontinue, press any key within 10 seconds. Boot terminated. ---- Main Menu -------------------------------
40、
Command Description
------- -----------
BOot [PRI|ALT| 41、>] Search for boot devices
COnfiguration menu Displays or sets boot values
INformation menu Displays hardware information
SERvice menu Displays service commands
DIsplay Redisplay the current me 42、nu
HElp [
43、0.1.0.0.0.0.0;0)/stand/vmunix 16756736 + 4042784 + 5755240 start 0x140368 alloc_pdc_pages: Relocating PDC from 0xfffffff0f0c00000 to 0x3e900000. DoCalllist done Module btlan is put into ramfs:load time: driver_install, state: loaded Module procsm is put into ramfs:load time: driver_install
44、 state: loaded Module c8xx is put into ramfs:load time: driver_install, state: loaded Module cdfs is put into ramfs:load time: driver_install, state: auto Module cfsmdr is put into ramfs:load time: driver_install, state: auto Module cfsm is put into ramfs:load time: driver_install, state: auto
45、 Module cifs is put into ramfs:load time: driver_install, state: auto Module fcd is put into ramfs:load time: driver_install, state: loaded Module td is put into ramfs:load time: driver_install, state: loaded Module gelan is put into ramfs:load time: driver_install, state: loaded Module iether i
46、s put into ramfs:load time: driver_install, state: loaded Module igelan is put into ramfs:load time: driver_install, state: loaded Module ciss is put into ramfs:load time: driver_install, state: loaded Module mpt is put into ramfs:load time: driver_install, state: loaded gate64: sysvec_vaddr = 0
47、xc0002000 for 2 pages Memory Class Setup ------------------------------------------------------------------------- Class Physmem Lockmem Swapmem ------------------------------------------------------------------------- System : 3894 MB 3894 MB
48、 3894 MB Kernel : 3893 MB 3893 MB 3893 MB User : 3712 MB 3291 MB 3304 MB ------------------------------------------------------------------------- Starting ktracer 0 1 Installing Socket Protocol
49、families AF_INET and AF_INET6 Kernel EVM initialized sec_init(): kernel RPC authentication/security initialization. secgss_init(): kernel RPCSEC_GSS security initialization. rpc_init(): kernel RPC initialization. rpcmod_install(): kernel RPC STREAMS module "rpcmod" installation. ...(driver_ins
50、tall) NOTICE: nfs_client_pv3_install(): nfs3 File system was registered at index 11. NOTICE: nfs_client_pv4_install(): nfs4 File system was registered at index 12. NOTICE: cachefsc_install: cachefs File system was registered at index 14. System Console is on the Built-In Serial Interface ig






