Automatiser opgaver med init og cron
Under Linux kan du nemt automatisere opgaver med init-kommandoen, for at starte en opgave ved opstart eller med cron at køre en opgave ad gangen.
Der er flere softwarehåndtering cron, her får vi et godt eksempel på disse software: crontab.
Opret en ny opgave
Først og fremmest skal vi oprette en ny fil, der vil udføre den kode, du vil have.
For at gøre dette skal du blot åbne en editor (som root) og gem filen i den ønskede mappe. Sørg for at inkludere den tolk, der blev brugt i begyndelsen af filen.
For eksempel (ved brug af bash):
#! / bin / bash kommando;
...
Det er muligt at bruge en anden skal, simpelthen ved at ændre #! / Bin / bash valgt af tolken: #! / Bin / python, #! / Bin / perl, osv.
Så skal vi gøre filen eksekverbar:
# chmod 755 / directory / myfile
Automatiser en opgave ved opstart: init
Oversigt
init er den første proces udført af kernen.
Ved opstart kører det forskellige scripts i /etc/init.d/ eller /etc/rc*.d/.
I /etc/init.d skal du gemme filen for at starte ved opstart.
Du skal derefter føje filen til listen over processer, der kører ved opstart:
# update-rc.d my-fil3 standardindstillinger
For mere information
Indtast en terminal:
- ls -l /etc/init.d/: for at se scripts, der kører ved opstart
- init --hjælp
- kat /etc/init.d/README
- mand init
- info init
- mand opdatering-rc.d
Start en opgave på et bestemt tidspunkt: crontab
Oversigt
- cron kan køre en opgave regelmæssigt: dagligt, ugentligt, hver time ...
- Der er en cron-fil til bruger
Tilføjelse af en opgave
Der er flere mapper indeholdende opgaver udført af cron:
- /etc/cron.hourly: Kør scripts hver time.
- /etc/cron.daily: scripts udført hver dag. .
- /etc/cron.weekly: Kør scripts hver uge.
- /etc/cron.monthly: Kør scripts hver måned.
Du skal blot oprette en fil i mappen.
Det er dog muligt at forsøge at påbegynde opgaver på mere præcise tidspunkter.
Til dette skal vi oprette en fil med korrekt syntaks for crontab i /etc/cron.d, som indeholder en kommando eller udføre en anden fil.
Det er også muligt at oprette opgaver til en bestemt bruger. Du skal redigere brugerens crontab.
Syntaks for crontab
Der er allerede mange vejledninger på nettet om det.
- Linux -Automate opgaver
- Fedora wiki: Konfiguration af automatiserede opgaver
Start en opgave for en eneste bruger
For at gøre dette skal du redigere filnavnet ved at indtaste en konsol crontab-e.
Hvis du vil oprette en crontab-fil til en anden bruger, skal du gå gennem kommandoen
# crontab -u bruger -e.
- Du skal derefter gemme filen uden at ændre navn eller sted.
- Du vil altid gå gennem kommandoen crontab-e for at redigere filen.
For mere information
Indtast en terminal:
mand cron
info cron
- Crontab på Wikipedia
Cron med GUI
Der er forskellige grafiksoftware, som kan skabe automatiske opgaver:
kcron
gcrontab