За да се не чудиш къде да ги слагаш тия неща всеки път , като смениш дистрото или нещо такова , трябва горе долу да получиш представа , къде и какво се изпълнява при стартиране на системата.
Та пръв е init ( бащата на всички процеси ). Ако има /etc/inittab , това му е разписанието какво да прави. Гледам от PCLinux сега , „inittab“ :
Начи системата ще премине през S, 0 , 1 , 2 , 3 , 4 ta do 5 -то ниво , където ти е графичната среда.
То си е и написано:
# Default runlevel. The runlevels used by Mandriva Linux are:
# 0 - halt (Do NOT set initdefault to this)
# 1 - Single user mode
# 2 - Multiuser, without NFS (The same as 3, if you do not have networking)
# 3 - Full multiuser mode
# 4 - unused
# 5 - X11
# 6 - reboot (Do NOT set initdefault to this)
#
id:5:initdefault:
Нищо загадъчно няма тука , просто не си струва обаче да се ровиш надълбоко , в реда
l5:5:wait:/etc/rc.d/rc 5 е кодирано , че на ниво 5 ( то и за 1,2,3,4 е така ) , се вика един и същи скрипт , /etc/rc.d/rc , като му се даде за параметър нивото . А тоя скрипт от своя страна стартира всички скриптове от директорията /etc/rc5.d/ ( както при 2 , ще бъде /etc/rc2.d/* ) .
Та , твоите писания имат място там , но трябва да са изпълними.
#!/bin/bash
#MyScript....
ifconfig eth0 down
ifconfig eth0 hw ether..........
ifconfig eth0 up
.............
правиш го изпълним chmod a+x MyScript
И го набутваш при другите , не в /etc/rc5.d/ , а в /etc/rc.d/init.d .Защото в /etc/rc5.d/ са направени
само връзки към истинските скриптове . Това е така , защото може един скрипт да се вика много пъти от много нива. Важно е , името на линка да почва с „ S“ , с това се оказва , че е стартиращ скрипт , с „К“ - kill ... . Ta:
cp MyScript /etc/rc.d/init.d/
cd /etc/rc3.d/ промените ще са е 3 ниво
ln -s ../init.d/ MyScript S55myscipt
Може би изглежда малко сложно , ама повярвай ми , много по малко време ще загубиш така.
По принцип де , гледам в случая са ти казали къде да направиш промени.
Един друг също , /etc/rc.d/rc.local е оставен с тази цел :
Цитат |
# Short-Description: Local initialization script # Description: This script will be executed *after* all the other init scripts. # You can put your own initialization stuff in here if you don't # want to do the full Sys V style init stuff. ### END INIT INFO
|