提问:如何只用一个root bash重起Linux系统
假设你远程连着一个 Linux 系统 shell, 这个 shell 是 root shell, 但是任何其它外部命令都没得用. 如何将这台 Linux 系统重起呢?这个 Linux 是默认安装的 fedora core, 没有自己重新编译 kernel 之类事情。
这个问题的背景是这样的,最近远程升级一台 FC2 -> FC6, 因为 FC3 有 udev 问题,FC4 有 non-ext3 root 问题,所以决定不重起一路冲上 FC6,结果忘记了 FC5 的 glibc 2.4 强迫需要新版本 kernel,于是升到一半就挂了。这时候唯一能用的命令是 bash 内部命令和静态链接的程序,可惜平时没有想到会出现这样的事情,没有储备一个 busybox 之类的东西,系统上面仅有的一些静态链接命令都是 dmraid 之类搞硬盘的。其他命令统统不可用。
这个问题的答案我已经找到了,聪明的读者们,你们知道我是怎么做的吗?请在留言里面发表你的办法.
跪拜康神,搬小板凳听布道
一点感觉都没有,小板凳放着看热闹了.
nb…orz!
kill -SIGTERM 1?
我想了下,有下面思路:
1) 用 kill 向某进程发信号,init 或者和 kernel 有关系的;
2) echo 一些东西给 /dev 下的某个文件;
3) echo 一些东西给 /proc 下的某个文件。
不过还不知道怎么玩有效,今天躺在床上好好想想 :-)
噢,康神,伟大的康神!
康神太牛了!!
我只知道那个功能在有键盘时能用
不知道远程也能用!orz
强烈建议康神开个这样的shell给大家玩
我也要玩。
有kdb的话我知道…
/dev/kmem < /dev/zero ???