DOKK / manpages / debian 10 / manpages-pl / update-rc.d.8.pl
UPDATE-RC.D(8) sysv-rc UPDATE-RC.D(8)

update-rc.d - instaluje lub usuwa dowiązania do skryptów startowych w stylu System-V

update-rc.d [-n] [-f] nazwa remove

update-rc.d [-n] nazwa defaults

update-rc.d [-n] nazwa disable|enable [ S|2|3|4|5 ]

update-rc.d automatycznie aktualizuje dowiązania do skryptów w stylu System V. Dowiązania o nazwie /etc/rcrunlevel.d/NNnazwa są kierowane do skryptu /etc/init.d/nazwa. Uruchamiane są przez init, gdy zmieniany jest tryb pracy (runlevel), i ogólnie używane są do uruchamiania oraz zatrzymywania pracy serwisów systemowych, takich jak demony. runlevel jest jednym z trybów pracy obsługiwanym przez init, mianowicie 0123456789S, a NN jest dwucyfrowym kodem używanym przez init do określenia kolejności uruchamiania skryptów.

Ten podręcznik opisuje jedynie sposób użycia i zachowanie się polecenia update-rc.d. Szczegóły dotyczące mechanizmów skryptów startowych w stylu System V są zawarte w opisie init(8) oraz w dokumencie Debian Policy Manual.

update-rc.d wymagają informacji o zależnościach i poziomie uruchomienia zapewnionych przez nagłówek komentarza LSB wszystkich skryptów init.d. Strona podręcznika insserv(8) zawiera więcej informacji na temat formatu nagłówka LSB.

Gdy update-rc.d jest uruchamiany z opcją defaults, to tworzy dowiązania o nazwie /etc/rcrunlevel.d/[SK]NNnazwa do skryptu /etc/init.d/nazwa używając informacji o poziomie pracy i zależnościach z nagłówka komentarza LSB skryptu init.d.

Jeśli istnieje już jakiś plik o nazwie /etc/rcrunlevel.d/[SK]??nazwa, to update-rc.d nie tworzy dowiązania. Dzięki temu administrator systemu może poprzestawiać dowiązania (zmieniając tym samym kolejność wykonywania skryptów) i jeżeli pozostanie przynajmniej jedno dowiązanie, to ta konfiguracja utworzona przez administratora nie zostanie nadpisana przez update-rc.d. Program tworzy dowiązania tylko wtedy, gdy żadne dowiązanie nie jest obecne, tj. gdy wydaje się, że usługa nigdy wcześniej nie była zainstalowana.

Starsze wersje update-rc.d obsługiwał również opcje start i stop. Obecnie nie są już stosowane i odpowiadają opcji defaults.

Częstym błędem popełnianym przez administratorów jest usuwanie wszystkich dowiązań z przekonaniem, że tym sposobem "wyłączy się" usługę, czyli że usługa nie będzie już uruchamiana. Jednakże, jeżeli usunie się wszystkie dowiązania, to podczas kolejnej aktualizacji pakietu, jego skrypt poinstalacyjny uruchomi update-rc.d, które ponownie utworzy dowiązania, zgodnie z ustawieniami podanymi przez opiekuna pakietu. Poprawnym sposobem wyłączania usług jest skonfigurowanie usługi jako zatrzymanej we wszystkich poziomach pracy, w których wcześniej była uruchamiana. W systemie init z Systemu V oznacza to zmienienie nazwy dowiązaniom symbolicznym z S na K.

Skrypt /etc/init.d/nazwa musi już istnieć w momencie wywołania polecenia update-rc.d.

update-rc.d uruchomiony z opcją remove usuwa wszystkie dowiązania symboliczne do skryptu /etc/init.d/nazwa z katalogów /etc/rcrunlevel.d. Sam skrypt musi być wcześniej usunięty. Jeżeli skrypt wciąż istnieje, to update-rc.d przerywa działanie, zwracając odpowiedni komunikat błędu.

update-rc.d jest zazwyczaj uruchamiany ze skryptu usuwającego pakiet, jeżeli przekazano temu skryptowi argument purge. Jakiekolwiek pliki w katalogach /etc/rcrunlevel.d, które nie są dowiązaniami symbolicznymi do /etc/init.d/nazwa nie będą zmieniane.

update-rc.d uruchomiony z opcjami disable [ S|2|3|4|5 ] zmieni istniejące dowiązania skryptu /etc/init.d/nazwa przez zastąpienie dowiązań uruchamiających usługę na dowiązania ją zatrzymujące i ustawi im numer sekwencji równy różnicy między liczbą 100 a oryginalnym numerem sekwencji.

update-rc.d uruchomiony z opcjami enable [ S|2|3|4|5 ] zmieni istniejące dowiązania skryptu /etc/init.d/nazwa przez zastąpienie dowiązań zatrzymujących usługę na dowiązania ją uruchamiające i ustawi im numer sekwencji równy różnicy między liczbą 100 a oryginalnym numerem sekwencji, co powinno spowodować powrót do oryginalnego numeru sekwencji, z którym skrypt został zainstalowany zanim go wyłączono.

Obie opcje działają tylko na dowiązaniach startowych w poziomach S, 2, 3, 4 lub 5. Jeśli po słowach kluczowych disable lub enable nie poda się żadnych poziomów uruchomieniowych, to skrypt spróbuje zmienić dowiązania we wszystkich poziomach uruchomieniowych.

Niczego nie rusza, tylko pokazuje, co mogłoby być zmienione.
Zmusza do usunięcia dowiązań, nawet w przypadku, gdyby skrypt /etc/init.d/nazwa wciąż istniał.

Utworzenie domyślnych dowiązań:

update-rc.d blabla defaults
Odpowiadający mu nagłówek zależności określałby zależności
uruchamiające i kończące od "$remote_fs" i "$syslog" oraz uruchamianie
usługi w poziomach 2-5 i jej zatrzymywanie w poziomach 0, 1 i 6.

Usuwa wszystkie dowiązania dla skryptu (zakładając, że blabla zostało już usunięte):

update-rc.d blabla remove

Przykład wyłączania usługi:

update-rc.d foobar disable

Przykład polecenia instalującego systemowy skrypt inicjacji-i-zamykania:

update-rc.d foobar defaults

Przykład polecenia wyłączającego systemowy skrypt inicjacji-i-zamykania:

update-rc.d foobar disable

Patrz http://bugs.debian.org/sysv-rc.

/etc/init.d/
Katalog zawierający aktualne skrypty startowe.
/etc/rc?.d/
Katalog zawierający dowiązania używane przez init i modyfikowane przez update-rc.d.
/etc/init.d/skeleton
Przykładowy skrypt do wykorzystania przez programistę przy tworzeniu własnych skryptów init.d.

Debian Policy Manual,
/etc/init.d/skeleton,
insserv(8), sysv-rc-conf(8), bum(8), init(8).

Autorami polskiego tłumaczenia niniejszej strony podręcznika man są: Piotr Roszatycki (PTM) <dexter@debian.org>, Robert Luberda <robert@debian.org> i Michał Kułach <michal.kulach@gmail.com>.

Polskie tłumaczenie jest częścią projektu manpages-pl; uwagi, pomoc, zgłaszanie błędów na stronie http://sourceforge.net/projects/manpages-pl/. Jest zgodne z wersją 2.88 oryginału.

14 listopada 2005 Projekt Debiana