Cum să utilizați la comandă pentru a programa o sarcină la un moment dat sau mai târziu în Linux


Ca o alternativă la programatorul de joburi cron, comanda at vă permite să programați o comandă să ruleze o dată la un moment dat, fără a edita un fișier de configurare.

Singura cerință constă în instalarea acestui utilitar și pornirea și activarea execuției acestuia:

# yum install at              [on CentOS based systems]
$ sudo apt-get install at     [on Debian and derivatives]

Apoi, porniți și activați serviciul la momentul pornirii.

--------- On SystemD ---------
# systemctl start atd
# systemctl enable atd

--------- On SysVinit ---------
# service atd start
# chkconfig --level 35 atd on

Odată ce atd rulează, puteți programa orice comandă sau sarcină după cum urmează. Dorim să trimitem 4 sonde ping la www.google.com când începe următorul minut (adică dacă este 22:20:13, comanda va fi executată la 22:21:00) și raportează rezultatul printr-un e-mail (-m, necesită Postfix sau echivalent) utilizatorului care invocă comanda:

# echo "ping -c 4 www.google.com" | at -m now + 1 minute

Dacă alegeți să nu utilizați opțiunea -m, comanda va fi executată, dar nimic nu va fi tipărit la ieșirea standard. Cu toate acestea, puteți alege să redirecționați rezultatul către un fișier.

În plus, vă rugăm să rețineți că at nu permite doar următoarele ore fixe: acum, prânz (12:00) și miezul nopții (00:00), dar și personalizate cu 2 cifre (reprezentând orele) și Timp de 4 cifre (ore și minute).

De exemplu,

Pentru a rula updatedb la 23:00 astăzi (sau mâine dacă data curentă este mai mare de 23:00), procedați:

# echo "updatedb" | at -m 23

Pentru a opri sistemul la 23:55 astăzi (se aplică aceleași criterii ca în exemplul anterior):

# echo "shutdown -h now" | at -m 23:55

De asemenea, puteți întârzia execuția cu minute, ore, zile, săptămâni, luni sau ani folosind semnul + și specificația de timp dorită ca în primul exemplu.

Specificațiile de timp sunt supuse standardului POSIX.

rezumat

Ca regulă generală, utilizați la în loc de programatorul de joburi cron oricând doriți să executați o comandă sau să executați o anumită sarcină la un moment bine definit o singură dată. Pentru alte scenarii, utilizați cron.

În continuare, vom aborda cum să criptăm fișierele arhive tar folosind openssl, până atunci rămânem conectat la Tecmint.