RC.Lokalny to przestarzały skrypt prowadzony do celów kompatybilności dla systemów systemowych.
Kiedyś był to uniwersalny plik obecny w większości dystrybucji Linux ze względu na jego prostotę dla administratorów Linux w celu zdefiniowania skryptów uruchamiania lub dodatkowych usług na rozpoczęcie.
Plik rc.Lokalny nie zawiera informacji o komponentach uruchamiania systemu, ale tylko komponenty zdefiniowane. Jednak nie wszystkie programy uruchamiania głównego są opisane w RC.lokalne, ale tylko te, które nie zakłócają komponentów systemowych. Zwykle RC.Lokalne jest wykonywane po uruchomieniu normalnych usług.
Nowsze systemy Linux, w tym SystemD, zastąpiły RC.lokalny scenariusz, ale pomimo tego można go przywrócić Bycie zalecanym rozwiązaniem. Ten samouczek pokazuje, jak przywrócić i używać RC.skrypt lokalny i używaj RC-Local przez systemd w nowszych dystrybucjach Linux.
Włączanie /etc /rc.Lokalne rozkłady w Linux za pomocą SystemD:
WAŻNY: Ważne jest, aby pamiętać /etc /rc.Lokalne jest przerwane i zastępowane. Obecna metoda uruchamiania skryptów w rozruchu jest opisana po instrukcjach, aby włączyć /etc /rc.lokalny. Ten samouczek jest przeznaczony dla użytkowników o określonych potrzebach.
Aby rozpocząć, utwórz plik /etc/rc.lokalny Korzystanie z edytora, którego chcesz i sudo (lub root):
nano /etc /rc.lokalny
Wklej poniższy kod w pliku i wymień z poleceniem, które chcesz uruchomić przy uruchomieniu. Nie używaj sudo. Jeśli polecenie zawarte w tym skrypcie nie uda się wykonywać, usługa, która wywoła RC.Lokalny (RC-Local.usługa) zawiedzie.
#!/bin/sh -e
#
# rc.lokalny
#
# Ten skrypt jest wykonywany na końcu każdego wielopasmowego poziomu.
# Upewnij się, że skrypt „wyjdzie z 0” o sukcesie lub w jakimkolwiek innym
# Wartość błędu.
#
# Aby włączyć lub wyłączyć ten skrypt, po prostu zmień wykonanie
# bity.
#
# Domyślnie ten skrypt nic nie robi.
Wyjście 0
W moim przykładzie użyję RC.skrypt lokalny do aktualizacji bazy danych skanowania bezpieczeństwa za każdym razem, gdy uruchamia się system. Możesz napisać dowolny skrypt, który chcesz być wykonywany na początku, z wyjątkiem skryptów sieciowych (takich jak iptables), które mogą zakłócać normalny proces uruchamiania i mieć własne skrypty lub katalogi uruchamiania.
Zapisz plik (Ctrl+x I Y) i daj mu uprawnienia do wykonania, uruchamiając poniższe polecenie:
sudo chmod +x /etc /rc.lokalny
Utwórz plik /etc/systemd/system/rc-lokal.praca, uruchomić:
nano/etc/systemd/system/rc-lokal.praca
Wklej następujące polecenia i wypuszczenie oszczędzania, naciskając Ctrl+x I Y.
ExecStart =/etc/rc.lokalny start
Timeoutsec = 0
Standardoutput = tty
Resztki autyczne = tak
SysvstartPriority = 99
[Zainstalować]
Wantby = Multi-User.cel
Włącz RC-Local:
Sudo Systemctl włącza RC-Local
Teraz możesz rozpocząć RC-Local.usługa, która odczytuje /etc /rc.Plik lokalny. Uruchom polecenie pokazane poniżej:
SystemCtl Start RC-Local.praca
Możesz sprawdzić, czy RC-Local został poprawnie załadowany, uruchamiając następujące:
Status SystemCtl RC-Local.praca
Prawidłowy sposób (SystemD):
Proces opisany powyżej jest stary, przestarzały i może zderzyć się z niektórymi usługami.
W tej sekcji pokazuje bieżący proces uruchamiania skryptów lub usług w rozruchu dla rozkładów Linux za pomocą SystemD.
SystemD to menedżer usług, który przypisuje grupy kontrolne usług (CGROUP) i śledzi procesy. SystemD to proces (PID) 1 odpowiedzialny za uruchamianie systemu.
Aby dodać usługi lub skrypty podczas uruchamiania, musisz utworzyć SystemD jednostka.
Jednostki systemowe obejmują usługi (.praca), Montaż punkty (.uchwyt), urządzenia (.urządzenie) lub gniazda (.gniazdo elektryczne). W przeciwieństwie do starego procesu opisanego wcześniej z RC.Lokalny, zamiast edytować ten sam plik zawierający informacje o skryptach użytkowników, musisz utworzyć jednostkę serwisową SystemD dla każdego skryptu, który chcesz uruchomić przy uruchomieniu.
Jednostki systemowe znajdują się pod adresem /etc/systemd/system, I tam musimy utworzyć jednostkę SystemD dla skryptu, który chcemy uruchomić podczas rozruchu.
Poniższy obraz pokazuje zawartość urządzenia TeamViewer.praca.
Gdzie dyrektywy [jednostki]:
Niektóre dyrektywy używane w sekcji [Service] mogą być udostępnione [jednostce].
Jedyną dyrektywa [instaluj] w powyższym przykładzie jest Wanted.
Notatka: Możesz sprawdzić wszystkie dyrektywy systemowe pod adresem
https: // www.Freedesktop.org/oprogramowanie/systemd/man/systemd.dyrektywy.html
Dodanie własnej jednostki SystemD:
Aby uruchomić skrypt podczas uruchamiania, utwórz go pod /etc/systemd/system na przykład z jego nazwą, a następnie kropką i usługą, Linuxhint. Praca. Możesz użyć Nano jak w poniższej próbce:
Wklej następujące, zastępując <Nazwa lub opis skryptu> Z opisem twojego skryptu i gdzie /usr/sbin/linuxhint.cii Napisz poprawną ścieżkę.
[Jednostka]
Opis ==