成为超级用户或承担等效角色。
确定根 (/)、/usr 或 /var 文件系统中是否存在坏的超级块,然后选择以下项之一:
如果根 (/)、/usr 或 /var 文件系统中存在坏的超级块,则从网络或本地连接的 CD 进行引导。
从本地连接的 CD 进行引导时使用以下命令:
ok boot cdrom -s |
从已设置引导服务器或安装服务器的网络进行引导时使用以下命令:
ok boot net -s |
如果需要有关如何停止系统的帮助,请参见《系统管理指南:基本管理》中的第 10 章 “引导系统(任务)”或《系统管理指南:基本管理》中的第 11 章 “基于 GRUB 的引导(任务)”。
如果根 (/)、/usr、/var 文件系统中不存在坏的超级块,则转到损坏的文件系统之外的目录,并取消挂载文件系统。
# umount /mount-point |
务必在下一步中使用 newfs -N。如果省略 -N 选项,则会损坏文件系统中的所有数据,并将它替换为空的文件系统。
使用 newfs -N 命令显示超级块的值。
# newfs -N /dev/rdsk/device-name |
除非文件系统是使用特殊参数创建的,否则命令输出将显示 newfs 命令创建文件系统时用于超级块副本的块编号。有关创建自定义文件系统的信息,请参见自定义 UFS 文件系统参数。
使用 fsck 命令提供备用超级块。
# fsck -F ufs -o b=block-number /dev/rdsk/device-name |
fsck 命令使用指定的备用超级块恢复主超级块。可以始终尝试将 32 作为备用块。或者,使用 newfs -N 命令所示的任何备用块。
以下示例说明如何恢复超级块副本 5264。
# newfs -N /dev/rdsk/c0t3d0s7 /dev/rdsk/c0t3d0s7: 163944 sectors in 506 cylinders of 9 tracks, 36 sectors 83.9MB in 32 cyl groups (16 c/g, 2.65MB/g, 1216 i/g) super-block backups (for fsck -b #) at: 32, 5264, 10496, 15728, 20960, 26192, 31424, 36656, 41888, 47120, 52352, 57584, 62816, 68048, 73280, 78512, 82976, 88208, 93440, 98672, 103904, 109136, 114368, 119600, 124832, 130064, 135296, 140528, 145760, 150992, 156224, 161456, # fsck -F ufs -o b=5264 /dev/rdsk/c0t3d0s7 Alternate superblock location: 5264. ** /dev/rdsk/c0t3d0s7 ** Last Mounted on ** Phase 1 - Check Blocks and Sizes ** Phase 2 - Check Pathnames ** Phase 3 - Check Connectivity ** Phase 4 - Check Reference Counts ** Phase 5 - Check Cyl groups 36 files, 867 used, 75712 free (16 frags, 9462 blocks, 0.0% fragmentation) ***** FILE SYSTEM WAS MODIFIED ***** # |