Kuinka suorittaa automaattisesti komentosarjakomentosarja käynnistyksen yhteydessä systemd Linuxissa

Seuraavassa konfiguraatiossa käsitellään perusesimerkki komentosarjakomentosarjan suorittamisesta käynnistyksen aikana systemd Linuxissa. Saattaa olla erilaisia syitä, miksi haluat ehkä suorittaa komentosarjakomentosarjan Linuxin käynnistyksen aikana, kuten esimerkiksi käynnistää tietyn mukautetun palvelun, tarkistaa levytilan, luoda varmuuskopion jne.
Alhaalla oleva esimerkki toimii perusmallina, jota voidaan myöhemmin muokata omiin tarpeisiisi sopivaksi. Alla olevassa esimerkissä tarkistamme /home/-hakemiston levytilan käynnistyksen aikana ja kirjoitamme raportin /root/-hakemistoon.

Systemd-palveluyksikkö

Aluksi meidän on luotava systemd-käynnistysskripti esim.disk-space-check.serviceja sijoitettava se /etc/systemd/system/-hakemistoon. Alla on esimerkki tällaisesta systemd-käynnistysskriptistä:

After=mysql.serviceExecStart=/usr/local/bin/disk-space-check.shWantedBy=default.target
  • After: Ohjaa systemd:tä siitä, milloin skripti tulisi ajaa. Meidän tapauksessamme skripti suoritetaan sen jälkeen, kun mysql-tietokanta on käynnistetty. Toinen esimerkki voisi olla network.target jne.
  • ExecStart:
  • WantedBy: Mihin käynnistyskohteeseen systemd-yksikkö tulisi asentaa

Yllä oleva on ehdoton minimi, jonka systemd-palveluyksikkömme tulisi sisältää, jotta skriptimme voidaan suorittaa käynnistyshetkellä. Lisätietoja ja käytettävät vaihtoehdot löytyvät systemd.service manuaalisivulta:

$ man systemd.service

Startup shell script

Seuraavaksi luomme mukautetun shell-skriptimme, joka suoritetaan systemd:n käynnistyksen aikana. Sijainti ja skriptin nimi on jo määritelty palveluyksikössä /usr/local/bin/disk-space-check.sh. Skriptin sisältö voi olla yksinkertainen kuten:

#!/bin/bashdate > /root/disk_space_report.txtdu -sh /home/ >> /root/disk_space_report.txt
Etsitään Linux-järjestelmäanalyytikkoa !
UAF Geophysical Institute, etsii kokenutta Linux-järjestelmäanalyytikkoa liittyäkseen tutkimuskyberinfrastruktuurin analyytikkojen ja insinöörien tiimiinsä. SIJAINTI: Fairbanks, Alaska, USA
HAKEMUS

Konfiguroi ja asenna

Ennen kuin käynnistämme järjestelmämme uudelleen, meidän on saatava skriptimme suoritettavaksi:

# chmod 744 /usr/local/bin/disk-space-check.sh

Asenna seuraavaksi systemd-palveluyksikkö ja ota se käyttöön, jotta se suoritetaan käynnistyksen yhteydessä:

# chmod 664 /etc/systemd/system/disk-space-check.service# systemctl daemon-reload# systemctl enable disk-space-check.serviceCreated symlink from /etc/systemd/system/default.target.wants/disk-space-check.service to /etc/systemd/system/disk-space-check.service.

Jos haluat testata skriptisi ennen uudelleenkäynnistystä suorita:

# systemctl start disk-space-check.service# cat /root/disk_space_report.txt Thursday 7 July 11:30:25 AEST 20161.5G /home/

Kaikki valmista. Linux-järjestelmän uudelleenkäynnistyksen jälkeen yllä oleva systemd-yksikkö kutsuu shell-skriptin suoritettavaksi käynnistyksen aikana.

Vastaa

Sähköpostiosoitettasi ei julkaista.