预计所需编译时间: 0.1 SBU 预计所需硬盘空间: 0.9 MB |
Sysvinit软件包包含控制启动,运行和关闭所有其他程序的工具。
安装下列程序: halt, init, killall5, last, lastb (link to last), mesg, pidof (link to killall5), poweroff (link to halt), reboot (link to halt), runlevel, shutdown, sulogin, telinit (link to init), utmpdump 和 wall
Sysvinit 依赖于: Binutils, Coreutils, GCC, Glibc, Make.
当运行级(run level)改变(例如:要关闭系统)时,init程序就会向由它启动的所有进程发出TERM和KILL信号。但是init程序向屏幕输出的信息是:"Sending processes the TERM signal"。这些信息表示向系统所有正在运行的进程发送信号,事实上并非如此。为了避免这种混淆,可以修改init.c文件,让其显示 "Sending processes started by init the TERM signal"。
改变halt消息:
cp src/init.c{,.backup} sed 's/Sending processes/& started by init/g' \ src/init.c.backup > src/init.c |
编译Sysvinit:
make -C src |
安装软件包:
make -C src install |
使用如下命令创建一个新的 /etc/inittab 文件:
cat > /etc/inittab << "EOF" # Begin /etc/inittab id:3:initdefault: si::sysinit:/etc/rc.d/init.d/rc sysinit l0:0:wait:/etc/rc.d/init.d/rc 0 l1:S1:wait:/etc/rc.d/init.d/rc 1 l2:2:wait:/etc/rc.d/init.d/rc 2 l3:3:wait:/etc/rc.d/init.d/rc 3 l4:4:wait:/etc/rc.d/init.d/rc 4 l5:5:wait:/etc/rc.d/init.d/rc 5 l6:6:wait:/etc/rc.d/init.d/rc 6 ca:12345:ctrlaltdel:/sbin/shutdown -t1 -a -r now su:S016:once:/sbin/sulogin 1:2345:respawn:/sbin/agetty tty1 9600 2:2345:respawn:/sbin/agetty tty2 9600 3:2345:respawn:/sbin/agetty tty3 9600 4:2345:respawn:/sbin/agetty tty4 9600 5:2345:respawn:/sbin/agetty tty5 9600 6:2345:respawn:/sbin/agetty tty6 9600 # End /etc/inittab EOF |