Automatyczne uruchamianie programów podczas
startu systemu to zagadnienie
złożone. Aby je zrozumieć, proponuję lekturę
strony opisującej start Linuksa.
Będąc początkującym użytkownikiem Linuksa,
autostart demonów konfiguruj w okienkach poprzez KDE- MANDRAKE
CONTROL CENTER -USŁUGI-. To samo w powłoce tekstowej uzyskasz
zleceniem
drakxservices (przemieszczasz się
TABULATOREM, klawiszami kierunkowymi, zaznaczasz SPACJĄ,
zatwierdzasz ENTEREM). Ponadto wyedytuj też plik
/etc/rc.d/
rc.local. Za jego pomocą możesz automatycznie odpalać (
podczas startu systemu) swoje
własne scrypty - przykładem jest autostart połączenia SDI-HIS z
Internetem (patrz na ostatnie wiersze w pliku
rc.local oraz
opis automatycznego podmieniania plików).
Zaawansowany użytkownik Linuksa będzie chciał rozumieć dlaczego
demony "same" się uruchamiają podczas startu systemu i jak
konfigurować autostart w powłoce tekstowej.
Należy wiedzieć, że w zależności od tego czy system
startuje w powłoce tekstowej, czy w okienkach (np. KDE) - są
wykorzystywane inne pliki autostartu. O tym czy system
załaduje okienka, czy zatrzyma się na powłoce tekstowej decyduje
plik /etc/inittab . W wierszu id:3:initdefault:
wybieramy okienka (5) z opcjami sieciowymi systemu lub
konsolę tekstową (3) z opcjami sieciowymi. Ważny jest poziom 0 (zatrzymanie systemu) oraz 6 (restart komputera). Poziom 4 nie jest skonfigurowany. Mając dużą wiedzę można go zaprojektować wg własnych potrzeb.
Informację o aktualnym numerze poziomu uzyskasz poprzez zlecenie
runlevel
*
Jeżeli wybraliśmy domyślny poziom działania nr 3, to
automatycznie zmusiliśmy system, by w czasie startu odczytał
zawartość katalogu /etc/rc.d/rc3.d (który działa podobnie
jak autostart w windowsowm menu START- PROGRAMY- AUTOSTART). W
przypadku startu systemu w okienkach (czyli domyślnym poziomem
działania 5) system odczyta zawartość katalogu
/etc/rc.d/rc5.d . W katalogu rc3.d (lub rc5.d)
znajdują się SKRÓTY do plików startowych. Skróty te można śmiało
ręcznie kasować lub dodawać w zależności od potrzeb. Skąd się tam
biorą? Ano, podczas instalacji KAŻDEGO demona w katalogu
/etc/rc.d/init.d powinien być utworzony plik (w razie
potrzeby należy go wykonać ręcznie, naśladując inne istniejące tam
scrypty). To właśnie od niego są tworzone wspomniane skróty.
W przykładowym pliku /etc/rc.d/init.d/httpd są ważne informacje. Odszukaj wpis chkconfig: 2345 85 15. Oznacza on, że od pliku /etc/rc.d/init.d/httpd należy umieścić skróty (linki) w katalogach rc2.d, rc3.d, rc4.d, rc5.d, z priorytetem startu 85 oraz priorytetem zatrzymania 15. Wartości priorytetów startu (w plikach umieszczonych w katalogach 1, 2, 3, 4, 5) są wprowadzone do nazwy pliku np. /etc/rc.d/rc5.d/S85httpd (literka S czyli start). Wartości priorytetów zatrzymania (w plikach umieszczonych w katalogach 0, 6) np. /etc/rc0.d/K01mysql (literka K czyli kill - zabicie). Oczywiście w razie potrzeby plik z literką K (zabijający proces) może być wprowadzony do katalogów startu rc1.d, rc2.d, rc3.d, rc4.d, rc5.d.
Skróty można wykonać za pomocą zlecenia chkconfig lub ręcznie zleceniem ln.
chkconfig --add httpd
Przypominam składnię tworzenia skrótu w powłoce tekstowej:
ln -s /etc/rc.d/init.d/httpd /etc/rc.d/rc5.d/S85httpd
Polecenie jest zbudowane z czterech członów: ln (link)
czyli zlecenie tworzące skrót, -s (opcja narzucajaca rodzaj łącza typu symlink), /etc/rc.d/init.d/httpd czyli
skąd i co (scrypt httpd odpalajacy Apacha),
/etc/rc.d/rc5.d/S85httpd czyli gdzie i z jaką nazwą (S
oznacza, że link ma odpalić w czasie startu, 85 to numer
porządkowy, decydujący o kolejności startu i na końcu nazwa
demona).
*
Kasowanie skrótu wykonasz zleceniem:
rm -f /etc/rc.d/rc5.d/S85httpd lub programem
mc.
Jak powiedziałem na początku, pod KDE wystarczy
wybrać MANDRAKE CONTROL CENTER -USŁUGI i kliknąć w odpowiedni
przycisk. Zostanie wtedy wykonany (w sposób niewidoczny dla
użytkownika) skrót pliku z katalogu /etc/rc.d/init.d do
katalogu /etc/rc.d/rc5.d (5 czyli okienka).
Jak w okienkach KDE wykonać
autostart programu, którego ikonkę mamy na Desktopie?
Jako zwykły użytkownik wykonaj kopię tej ikonki do katalogu /home/uzytkownik/.kde/Autostart/
Osobnym problemem jest samodzielne wykonanie takiej ikonki na Desktopie. Proponuję skorzystać ze schematu instalacji Netscape 7.2. Po zainstalowaniu programu wykonaj:
kliknij w Desktop prawym przyciskiem myszy i wybierz wybierz NOWY- URUCHOM, APLIKACJĘ- i w ścieżce dostępu wpisz /usr/local/danyprogram/plikstartujacy (czyli /usr/local/netscape/netscape) . Inne programy mogą być umieszczone w /usr/bin/plikstartujacy
Demony można restartować odwołując się do plików w katalogu
/etc/rc.d/init.d/
/etc/rc.d/init.d/sshd restart (restart,
stop)
Aby zabić proces sshd wpisz:
killall -HUP sshd