Første gang jeg klarte en travel server, måtte jeg vente på et passende tidspunkt å starte den på nytt når folk ikke brukte den. Jeg la merke til at dette skjedde rundt klokken 03.00. Så tenkte jeg for meg selv: «Vel, dette er upraktisk, jeg må våkne på en urimelig time bare for å starte serveren min på nytt.» Fem sekunder senere skjønte jeg at det var en dum tanke. «Dette er Linux. Jeg er sikker på at det er enkelt å automatisere en så enkel oppgave.» Og så, at
ble oppdaget.
Verktøyet er veldig enkelt å bruke. Du sender bare tid og dato som en kommandolinjeparameter, og skriver deretter inn en eller flere kommandoer du vil at den skal utføre.
På en server er det nyttig å ha et slikt program fordi du ofte vil at det skal utføre handlinger uten tilsyn. Men selv på et skrivebord at
kan være et veldig praktisk verktøy. Si for eksempel at du laster ned en veldig stor fil. Du kan planlegge at PC-en skal slå seg av sent på kvelden. Du kan også fortelle at
for å minne deg om ting du trenger å gjøre. Nesten alle handlinger du kan tenke deg kan planlegges med riktige verktøy og kommandolinjealternativer.
Slik installerer du «at» på forskjellige Linux-distribusjoner
På Debian eller distribusjoner basert på Debian, kjør:
sudo apt install at
På Fedora, løp:
sudo dnf install at
Slik installerer du “at” på Arch Linux:
sudo pacman -S at
Og på openSUSE:
sudo zypper install at
Aktiver automatisk oppstart av «at» Daemon and Run Service
Noen distribusjoner vil automatisk aktivere oppstart av «at» -demonen ved oppstart. Andre vil ikke. Sjekk med:
systemctl is-enabled atd.service
Hvis det står «deaktivert», aktiverer du det med:
sudo systemctl enable atd.service
Og start daemon:
sudo systemctl start atd.service
Hvordan spesifisere dato og klokkeslett for å planlegge «på» -kommandoer
Du kan bruke et av følgende skjemaer.
1. Kjør kommando etter angitt antall minutter, timer, dager eller uker.
at now + 10 minutes at now + 10 hours at now + 10 days at now + 10 weeks
2. Kjør på nøyaktig tidspunkt:
at 23:10
Hvis klokken allerede er 12:00, og du løper:
at 11:00
Da vil kommandoen kjøre i morgen, til angitt tidspunkt.
3. Kjør på nøyaktig tidspunkt og dato:
at 12:00 December 31
Andre alternative måter å spesifisere tid og dato på finner du i online “at” manual.
Hvordan bruke kommandoen “at”
Som du kanskje har lagt merke til, etter at du har spesifisert den planlagte tiden, blir du sluppet av en melding som ser ut som følgende bilde:
Her skriver du ganske enkelt inn kommandoer du vil kjøre. Disse vil kjøres under ditt nåværende brukernavn. Skriv inn kommandoen du vil kjøre til et spesifisert tidspunkt, og trykk Enter. Hvis du vil kjøre en påfølgende kommando, gjenta samme fremgangsmåte. Når du er ferdig, trykk Ctrl + D. <EOT>
vises når du trykker på disse tastene, etterfulgt av tidspunktet da kommandoen (e) blir utført.
Hvis du vil kjøre kommandoer som krever rotprivilegier, ikke bruk sudo
. Husk at kommandoen vil kjøre uten tilsyn, så sudo
fungerer ikke fordi ingen kan skrive inn passordet. I stedet må du først logge på som rotbruker:
sudo -i
Og bruk deretter «at» -kommandoen normalt. Nå blir alle kommandoer utført som root, i stedet for din vanlige bruker.
Når du har planlagt kommandoen din, skriver du inn:
exit
Dette vil logge deg ut fra rotbrukerkontoen.
I eksemplet som tilbys i dette skjermbildet, ble en nedleggelse planlagt på to minutter. Du kan tilpasse dette til dine egne formål.
Hvis datamaskinen slås av før en planlagt jobb har sjansen til å kjøre, vil den bare kjøres ved neste oppstart (hvis tiden har gått). Hvis du for eksempel planlegger en jobb klokken 15.00, slår av klokken 14.00 og slår den på klokken 16.00, kjører jobben klokken 16:00.
Vis og / eller fjern planlagte jobber
Du kan se jobber i kø med:
atq
eller
at -l
For å se hvilke kommandoer som er planlagt i en jobb, bruk prefikset nummeret til den jobben.
at -c 22
De siste linjene med utgang viser kommandoene du har planlagt.
For å fjerne en jobb, bruk prefiksetallet slik:
atrm 22
Planlegg «at» for å kjøre grafiske applikasjoner
Finn først ut gjeldende verdi for skjermvariabel:
echo $DISPLAY
Vanligvis vil det være det :0
.
Rute at
å løpe. I «at» -meldingen angir du DISPLAY
variabel til forrige verdi (export DISPLAY=:0
), og kjør ønsket grafisk applikasjon.
Kommandoene som ble brukt i forrige skjermbilde ville resultere i følgende.
Nå vil den grafiske appen være «i ansiktet ditt» og minne deg på en viktig jobb bedre enn en telefonalarm ville gjort.
Konklusjon
Det er enkelt å bruke “at”. Den vanskeligste delen er å finne ut en kreativ måte å ta en handling du ønsker. Men du kan stort sett gjøre hva du vil, som å starte en nedlasting, lukke et program, sette datamaskinen i beredskap og så videre.