php mysql google Android HTML5 nginx 微软 centos shell Firefox wordpress 程序员 apache Python 开源 linux java Ubuntu Windows linux命令

suse linux跳过ctrl+d修复模式

机器安装的是suse Linux,有时候服务器关不掉,只能通过ipmi来关闭,但是这样直接断电,系统重启进入CTRL +D模式,提示需要手动fsck文件系统,才能将系统正常启动,但是有时候是不得已而断电,机房在外地,很不方便,有时候系统断电并不需要fsck,只是suse默认就自动进入这个模式,以下是跳过此步骤的解决办法:

1、修改/boot/grub/menu.lst 文件中的这一段

title SUSE Linux Enterprise Server 11 SP1 - 2.6.32.19-0.7
root (hd0,0)
kernel /vmlinuz-2.6.32.19-0.7-default root=/dev/sda3 resume=/dev/sda2 splash=silent showopts vga=0×314 fastboot
initrd /initrd-2.6.32.19-0.7-default

在 kernel 这一行添加fastboot选项,此选项的作用是跳过/文件系统的检查

2、修改/etc/fstab文件

/dev/sda2 swap swap defaults 0 0
/dev/sda3 / ext3 acl,user_xattr 0 0
/dev/sda1 /boot ext3 acl,user_xattr 0 0
proc /proc proc defaults 0 0
sysfs /sys sysfs noauto 0 0
debugfs /sys/kernel/debug debugfs noauto 0 0
usbfs /proc/bus/usb usbfs noauto 0 0
devpts /dev/pts devpts mode=0620,gid=5 0 0

将后面的数字全部改成0,此项主要是跳过其他文件系统的检查

3、在/etc/rc.d/after.local文件中最前面添加以下内容:

echotest”>>/root/fsck.log
if [ $? -eq 1 ];then
mount -o,remount,rw /
sleep 60
echo ”System will reboot”>>/root/shell_reboot.log
shutdown -r now
else
echo ”System is boot normal!”
fi

通过这样跳过crtl+d模式起来的系统会变成read only文件系统,此时正常重启即可恢复正常,写脚本的目的也在于此,但是有的时候系统确实要fsck了,那这方法就无效了,系统将会变成无限循环重启下去,所以在上面加了个sleep 60,这时候是可以通过ssh上去的,可以去掉此选项,然后手动fsck,再重启系统,机房在外地的这种方法至少能操作系统了,在某些场合下绝对有用,你懂的。

延伸阅读

评论