Hvernig á að framkvæma skipanir/forskriftir sjálfkrafa við endurræsingu eða ræsingu


Ég er alltaf heilluð af hlutunum sem gerast á bak við tjöldin þegar ég ræsi Linux kerfi og skrái mig inn. Með því að ýta á aflhnappinn á berum málmi eða ræsa sýndarvél, seturðu af stað röð atburða sem leiða til fullvirks kerfis - stundum á innan við mínútu. Sama gildir þegar þú skráir þig út og/eða lokar kerfinu.

Það sem gerir þetta áhugaverðara og skemmtilegra er sú staðreynd að þú getur látið stýrikerfið framkvæma ákveðnar aðgerðir þegar það ræsir sig og þegar þú skráir þig eða skráir þig út.

Í þessari distro-agnostic grein munum við ræða hefðbundnar aðferðir til að ná þessum markmiðum í Linux.

Athugið: Við munum gera ráð fyrir notkun Bash sem aðalskel fyrir innskráningu og útskráningarviðburði. Ef þú skyldir nota aðra, gætu sumar af þessum aðferðum virka eða ekki. Ef þú ert í vafa skaltu skoða skjölin á skelinni þinni.

Að keyra Linux forskriftir við endurræsingu eða ræsingu

Það eru tvær hefðbundnar aðferðir til að framkvæma skipun eða keyra forskriftir við ræsingu:

Fyrir utan venjulegt snið (mínúta/klukkustund/dagur mánaðar/mánuður/vikudagur) sem er mikið notað til að gefa til kynna áætlun, leyfir cron tímaáætlun einnig notkun @reboot. Þessi tilskipun, fylgt eftir af algeru slóðinni að handritinu, mun valda því að það keyrir þegar vélin ræsir.

Hins vegar eru tveir fyrirvarar við þessa nálgun:

  1. a) cron púkinn verður að vera í gangi (sem er raunin undir venjulegum kringumstæðum), og
  2. b) handritið eða crontab skráin verða að innihalda umhverfisbreyturnar (ef einhverjar eru) sem þarf (sjá þennan StackOverflow þráð fyrir frekari upplýsingar).

Þessi aðferð er gild jafnvel fyrir dreifingar sem byggja á kerfi. Til þess að þessi aðferð virki verður þú að veita /etc/rc.d/rc.local framkvæmdarheimildir sem hér segir:

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

og bættu handritinu þínu við neðst í skránni.

Eftirfarandi mynd sýnir hvernig á að keyra tvö sýnishorn forskrifta (/home/gacanepa/script1.sh og /home/gacanepa/script2.sh) með því að nota cron starf og rc. staðbundin, í sömu röð, og niðurstöður þeirra.

#!/bin/bash
DATE=$(date +'%F %H:%M:%S')
DIR=/home/gacanepa
echo "Current date and time: $DATE" > $DIR/file1.txt
#!/bin/bash
SITE="linux-console.net"
DIR=/home/gacanepa
echo "$SITE rocks... add us to your bookmarks." > $DIR/file2.txt

Hafðu í huga að báðar forskriftirnar verða að fá framkvæmdarheimildir áður:

$ chmod +x /home/gacanepa/script1.sh
$ chmod +x /home/gacanepa/script2.sh

Að keyra Linux forskriftir við innskráningu og útskráningu

Til að keyra skriftu við innskráningu eða útskráningu, notaðu ~.bash_profile og ~.bash_logout, í sömu röð. Líklegast þarftu að búa til síðarnefndu skrána handvirkt. Slepptu bara línu sem kallar á handritið þitt neðst í hverri skrá á sama hátt og áður og þú ert tilbúinn að fara.

Í þessari grein höfum við útskýrt hvernig á að keyra handrit við endurræsingu, innskráningu og útskráningu. Ef þér dettur í hug aðrar aðferðir sem við hefðum getað sett hér inn, ekki hika við að nota athugasemdareyðublaðið hér að neðan til að benda á þær. Okkur hlakkar til að heyra frá þér!