Serviciile binecunoscute din Linux pot fi adăugate la pornire fără probleme, deoarece cele mai multe dintre ele vin cu propriul lor script, care se realizează cu ajutorul comenzilor ‘chkconfig’ și ‘systemctl’.

De exemplu, pentru a adăuga serviciul ‘Apache httpd’ la pornire, rulați una dintre următoarele comenzi în funcție de managerul dvs. de sistem. În mod similar, puteți adăuga orice serviciu binecunoscut, după cum este necesar, la pornire.

Pentru sistemul Sys V init:

# chkconfig --level 35 httpd on

Pentru sistemul systemd:

# systemctl enable httpd

Câteodată este posibil să aveți nevoie să adăugați un script, o comandă sau un serviciu personalizat la pornire/boot. Dacă da, cum o faceți?

În acest articol, să înțelegem cum să folosim următoarele trei metode pentru a-l implementa:

  • Utilizarea /etc/rc.d/rc.d/rc.local file
  • Utilizarea fișierului crontab

  • unitatea de serviciu systemd

Metoda-1: Utilizarea fișierului /etc/rc.d/rc.local

Filele „/etc/rc.local” este executat în mod tradițional după ce toate serviciile normale ale calculatorului au fost pornite, la sfârșitul procesului de trecere la un nivel de execuție multiutilizator.

Această metodă funcționează și pe sistemul systemd și trebuie să adăugați locația scriptului dvs. în fișierul „/etc/rc.d/rc.local” pentru a fi executat la pornire.

Asigurați-vă că fișierul are permisiunea de execuție.

# chmod +x /etc/rc.d/rc.local

Pentru a înțelege acest lucru în detaliu, vom crea un script simplu, așa cum se arată mai jos, dar puteți crea orice script după cum este necesar:

# vi /opt/scripts/run-script-on-boot.sh#!/bin/bashdate > /root/on-boot-output.txthostname > /root/on-boot-output.txt

După ce scriptul este gata, setați permisiunea de execuție așa cum se arată mai jos:

# chmod +x /opt/scripts/run-script-on-boot.sh

În cele din urmă adăugați scriptul în partea de jos a fișierului:

# vi /etc/rc.d/rc.local/opt/scripts/run-script-on-boot.sh

Reporniți sistemul pentru a verifica acest lucru:

# reboot

Metoda-2: Utilizarea fișierului crontab

cron execută automat lucrările programate în backend la o anumită oră.

Acest lucru poate fi realizat cu ușurință folosind un șir special numit "@reboot" cu cron job.

@reboot este un șir special și permite utilizatorului să ruleze orice comandă sau script la pornire (boot time).

Acest exemplu execută fișierul ‘/opt/scripts/run-script-on-boot.sh’ la repornirea sistemului.

Vom folosi același script care a fost creat în exemplul de mai sus. Pentru a face acest lucru, trebuie doar să adăugați următoarea intrare în fișierul crontab:

# crontab -e@reboot /opt/scripts/run-script-on-boot.sh

Reporniți sistemul pentru a verifica acest lucru:

# reboot

Metoda-3: Utilizarea unității de servicii systemd

Această metodă funcționează doar pe sistemul systemd și este foarte simplă.

Pentru a face acest lucru, trebuie să creați un script de pornire systemd și să îl plasați în directorul „/etc/systemd/system/”.

Acesta este exemplul nostru de script unitar de pornire systemd:

# vi sample-on-boot-script.serviceDescription=Run a Custom Script at StartupAfter=default.targetExecStart=/opt/scripts/run-script-on-boot.shWantedBy=default.target

După ce ați plasat scriptul unitar în locația systemd, rulați următoarea comandă pentru a actualiza fișierele de configurare systemd și pentru a activa serviciul:

# systemctl daemon-reload# systemctl enable sample-on-boot-script.service

Reporniți sistemul pentru a verifica acest lucru:

# reboot

Sugestii bonus:

Dacă doriți să rulați un script în fundal, trebuie să adăugați simbolul ampersand de sfârșit "&".

/Path/To/My_Script &

Dacă doriți să rulați comanda ca utilizator diferit, utilizați următorul format:

su - $USER -c /Path/To/My_Script

Concluzie

Acest tutorial discută pe scurt despre cum să adăugați un script sau o comandă sau un serviciu personalizat la pornire.

.

Lasă un răspuns

Adresa ta de email nu va fi publicată.