# fsck -F vxfs -o full,nolog /dev/vx/rdsk/dg02/vol01
fileset 1 primary-ilist inode 65 has invalid block map
fileset 1 primary-ilist inode 65 has invalid block map
no valid ILISTs for fileset 999
UX:vxfs fsck: ERROR: cannot initialize aggregate
file system check failure, aborting ...
操作系统:solaris 7
Vxfs 3.4
A5200,5*73GB硬盘做成一个raid5
#echo "8192B.p S" | fsdb -F vxfs /dev/vx/rdsk/dg02/vol01
super-block at 00000001.0000
magic a501fcf5 version 4
ctime 1024024705 630275 (Fri Jun 14 11:18:25 2002 CDT)
log_version 9 logstart 0 logend 0
bsize 8192 size 17780992 dsize 17780992 ninode 0 nau 0
defiextsize 0 oilbsize 0 immedlen 96 ndaddr 10
aufirst 0 emap 0 imap 0 iextop 0 istart 0
bstart 0 femap 0 fimap 0 fiextop 0 fistart 0 fbstart 0
nindir 2048 aulen 32768 auimlen 0 auemlen 1
auilen 0 aupad 0 aublocks 32768 maxtier 15
inopb 32 inopau 0 ndiripau 0 iaddrlen 1 bshift 13
inoshift 5 bmask ffffe000 boffmask 1fff checksum e434c629
free 834125 ifree 0
efree 411469 127916 41706 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
flags 1 mod 0 clean 3c
time 1166419090 148035 (Mon Dec 18 13:18:10 2006 CDT)
oltext[0] 12 oltext[1] 1028 oltsize 1
iauimlen 1 iausize 4 dinosize 256
checksum2 518
checksum3 0
手册上有这么一段:
File System Response to Problems
When the file system encounters problems, it responds in one of three ways:
• marks an inode bad
• disables transactions
• disables the file system
Marking an Inode Bad
Inodes can be marked bad if an inode update or a directory-block update fails.
In these types of failures, the file system doesn’t know what information is on
the disk, and considers all the information that it finds to be invalid. After an
inode is marked bad, the kernel still permits access to the file name, but any
attempt to access the data in the file or change the inode fails.
Disabling Transactions
If the file system detects an error while writing the intent log, it disables
transactions. After transactions are disabled, the files in the file system can still
be read or written, but no block or inode frees or allocations, structural
changes, directory entry changes, or other changes to metadata are allowed.
Disabling the File System
If an error occurs that compromises the integrity of the file system, VxFS
disables itself. If the intent log fails or an inode-list error occurs, the superblock
is ordinarily updated (setting the VX_FULLFSCK flag) so that the next
fsck does a full structural check. If this super-block update fails, any further
changes to the file system can cause inconsistencies that are undetectable by
the intent log replay. To avoid this situation, the file system disables itself.
Recovering a Disabled File System
When the file system is disabled, no data can be written to the disk. Although
some minor file system operation still work, most simply return EIO. The only
thing that can be done when the file system is disabled is to do a umount and
run a full fsck.
Although a log replay may produce a clean file system, do a full structural
check to be safe. To do a full structural check, enter:
# fsck -F vxfs -o full -y /dev/rdsk/c1t0d0s1
The file system usually becomes disabled because of disk errors. Disk failures
that disabled a file system should be fixed as quickly as possible (see
fsck_vxfs(1M)).
#fsck -F vxfs -n /dev/vx/rdsk/dg02/vol01 | grep "marked bad"
UX:vxfs fsck: ERROR: cannot initialize aggregate
输出结果如下:
super-block at 00000001.0000
magic a501fcf5 version 4
ctime 1024024705 630275 (Fri Jun 14 11:18:25 2002 CDT)
log_version 9 logstart 0 logend 0
bsize 8192 size ...
...
flags 1 mod 0 clean 3c
...
flags是 "1" 意思是 "full fsck required"
no valid ILISTs for fileset 999 (incident 45311 refers)
On file systems created prior to VERITAS File System (VxFS) 3.3.2, if the primary inode list grows beyond 2 Gbytes, fsck may fail with the errors listed above. This problem has been reported as incident 45311. It is caused by VxFS not setting the largefiles flag on the structural fileset. The fsck included in VxFS 3.4 and later will handle this situation. A point patch is available for VxFS 3.3.3 patch 01 running on Solaris 2.6, 7 and 8. Please contact VERITAS Technical Support for more information on this point patch.
(VERITAS Incident Number 45311):
WARNING: Incident 45311 is NOT fixed in VxFS 3.3.3 Patch01. Original publication of this TechFile listed Incident 45311 as fixed in VxFS 3.3.3 Patch01. Fix for incident 45311 never made it to Patch01. It is, however, fixed in VxFS 3.4 and above. If it is not possible to upgrade to VxFS 3.4, then there is also a workaround. The workaround is to use a modified fsck binary for Solaris 2.6 and 7 only. Please contact VERITAS Technical Support to request fsck binary.
An "invalid size" error for the ilist inodes is displayed while running a full fsck on a VxFS file system that has grown beyond 2 gigabytes in size. This may prevent the file system from being mounted. Because the largefiles flag on the primary fileset was not set automatically, the error reported that the primary inode had an invalid size. This is a corner case situation that can occur after a VxFS upgrade from a previous version of VxFS that did not use the largefiles flag and the inode structural file had exceeded 2 gigabytes.