Giunsa ang Awtomatikong Ipatuman ang mga Sugo/Mga Script Panahon sa Pag-reboot o Pagsugod


Kanunay kong nadani sa mga butang nga nahitabo luyo sa mga talan-awon sa dihang nag-boot ako sa usa ka sistema sa Linux ug nag-log on. Pinaagi sa pagpindot sa power button sa usa ka hubo nga metal o pagsugod sa usa ka virtual nga makina, imong gipalihok ang sunod-sunod nga mga panghitabo nga motultol ngadto sa usa ka fully-functional nga sistema - usahay sa ubos sa usa ka minuto. Tinuod usab kini kung mag-log-off ka ug/o isira ang sistema.

Ang nakapahimo niini nga mas makapaikag ug makalingaw mao ang kamatuoran nga mahimo nimong ipabuhat ang operating system sa pipila ka mga aksyon kung kini mag-boot ug kung mag-logon ka o mag-logout.

Niini nga distro-agnostic nga artikulo atong hisgutan ang tradisyonal nga mga pamaagi alang sa pagkab-ot niini nga mga tumong sa Linux.

Mubo nga sulat: Atong isipon ang paggamit sa Bash isip pangunang kabhang para sa logon ug logout nga mga panghitabo. Kung mogamit ka ug lahi, ang pipila niini nga mga pamaagi mahimo o dili molihok. Kung nagduhaduha, tan-awa ang dokumentasyon sa imong kabhang.

Pagpatuman sa Linux Scripts Atol sa Reboot o Startup

Adunay duha ka tradisyonal nga mga pamaagi sa pagpatuman sa usa ka sugo o pagpadagan sa mga script sa panahon sa pagsugod:

Gawas sa naandan nga pormat (minuto/oras/adlaw sa bulan/bulan/adlaw sa semana) nga kaylap nga gigamit sa pagpakita sa usa ka iskedyul, ang cron scheduler usab nagtugot sa paggamit sa @reboot. Kini nga direktiba, nga gisundan sa hingpit nga agianan sa script, hinungdan nga kini modagan kung ang makina mag-boot.

Bisan pa, adunay duha ka mga pasidaan sa kini nga pamaagi:

  1. a) ang cron daemon kinahanglan nga nagdagan (nga mao ang kaso sa normal nga mga kahimtang), ug
  2. b) ang script o ang crontab file kinahanglang maglakip sa environment variables (kon aduna man) nga gikinahanglan (tan-awa kining StackOverflow thread alang sa dugang mga detalye).

Kini nga pamaagi balido bisan alang sa systemd-based distributions. Aron molihok kini nga pamaagi, kinahanglan nimo nga hatagan ang mga pagtugot sa pagpatuman sa /etc/rc.d/rc.local ingon sa mosunod:

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

ug idugang ang imong script sa ubos sa file.

Ang mosunod nga hulagway nagpakita kon unsaon pagpadagan ang duha ka sample scripts (/home/gacanepa/script1.sh ug /home/gacanepa/script2.sh) gamit ang cron job ug rc. lokal, matag usa, ug ilang tagsa-tagsa nga mga resulta.

#!/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

Hinumdumi nga ang duha nga mga script kinahanglan hatagan mga pagtugot sa pagpatuman kaniadto:

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

Pagpatuman sa Linux Scripts sa Logon ug Logout

Para magbuhat ug script sa pag-logon o pag-logout, gamita ang ~.bash_profile ug ~.bash_logout, matag usa. Lagmit, kinahanglan nimo nga maghimo sa ulahi nga file nga mano-mano. Ihulog lang ang usa ka linya nga naghangyo sa imong script sa ilawom sa matag file sa parehas nga paagi sama kaniadto ug andam ka nga moadto.

Sa kini nga artikulo among gipasabut kung giunsa ang pagpadagan sa script sa pag-reboot, pag-logon, ug pag-logout. Kung makahunahuna ka sa ubang mga pamaagi nga mahimo namon nga ilakip dinhi, ayaw pagduhaduha nga gamiton ang porma sa komento sa ubos aron itudlo kini. Kami nagpaabut nga makadungog gikan kanimo!