|
Linux 开机程序之研讨(4) ## 1 - File system errors corrected ## 2 - File system errors corrected, system should ## be rebooted if file system was mounted ## 4 - File system errors left uncorrected ## 8 - Operational error ## 16 - Usage or syntax error ## 128 - Shared library error ## 很明显的 , 若有任何错误产生的话 , 那 fsck 的传回值都大於 1 . 其实 ## 就我的观点认为 , 应该写成 if [ $? -ge 1 ] 比较好 . 既然有错呢 , 系统 ## 应该就要跳至单人模式 , 在单人模式中主要就是 /etc/rc.d/rc.K ## 中的两件事 : 关掉 swap 及 卸下所有的档案系统 , 而最後重新 login . ## 一般正常的情况下 , if 下面这一大段是不会执行的 , 而会跳至下面 ## 标有 ************************* Normal 1 ************************* 处
if [ $? -gt 1 ] ; then echo echo echo "**************************************" echo "fsck returned error code - REBOOT NOW!" echo "**************************************" echo echo /bin/login fi
## ****************************** Normal 1 ************************** ## 当 fsck 检查没有错误之後 , 就把 root partition 重新 mount 上来 ## 下面指令的参数有三个 , -w 代表mount 成可读写 , -n 代表把一个 file- ## system mount 上来 , 但不会把记录写到 /etc/mtab 中 , 在上次对 /etc/mtab ## 介绍时有提到 , 当我们使用 mount 这个指令把一个 filesystem mount 上来 ## 的时候 , /etc/mtab 就会记录 ! 利用 -n 这个 option 可使得做 mount 的动 ## 作 , 却不会记录 . -o 後面可以接许多的选项 , 在这里 , 我们给它的选项是 ## remount . remount 的意思是 : 重新 mount 一个已经被 mount 的 filesystem ## 这个选项通常被用来改变该 filesystem 的读写旗号 ,尤其是把 filesystem ## 从 read-only 的状态 , 改变成 read-write 的状态 .
|