Plánování úloh

Z MiS
(Rozdíly mezi verzemi)
Přejít na: navigace, hledání
(Vytvoření stránky)
 
(Přidány zdroje a info o výstupu.)
 
(Nejsou zobrazeny 3 mezilehlé verze od 1 uživatele.)
Řádka 3: Řádka 3:
 
== Plánování úloh v GNU/Linuxu ==
 
== Plánování úloh v GNU/Linuxu ==
  
Každý uživatel má svůj seznam spouštěných úloh. Navíc existuje systémový seznam úloh v&nbsp;souboru <code>/etc/crontab</code>.
+
* Každý uživatel má svůj seznam spouštěných úloh.  
 +
* Navíc existuje systémový seznam úloh v&nbsp;souboru <code>/etc/crontab</code>.
 +
* Seznam úloh můžeme:
 +
** [[#Zobrazení seznamu plánovaných úloh|Zobrazit]]
 +
** [[#Úprava seznamu úloh|Upravit]]
  
; Úprava osobního seznamu úloh
+
 
 +
== Zobrazení seznamu plánovaných úloh ==
 +
; Osobní seznam úloh
 +
crontab -l
 +
; Systémový seznam úloh
 +
cat /etc/crontab
 +
 
 +
 
 +
== Úprava seznamu úloh ==
 +
* V&nbsp;další kapitole uvádíme [[#Formát záznamu crontabu|formát, ve kterém seznam úloh zapisujeme]].
 +
 
 +
; Osobní seznam úloh
 
  crontab -e
 
  crontab -e
* Vytváření osobního seznamu úloh.
+
* Otevře textový editor a umožní upravit osobní seznam úloh.
 
* Při prvním spuštění se vytvoří prázdný seznam úloh.
 
* Při prvním spuštění se vytvoří prázdný seznam úloh.
  
; Zobrazení seznamu plánovaných úloh
+
; Systémový seznam úloh
  crontab -l
+
  nano /etc/crontab
* Správce systému (root) může zobrazit seznam úloh jiných uživatelů:
+
* Systémový seznam úloh můžeme upravovat přímou editací souboru (může jen root).
  crontab -u ''user''
+
 
 +
 
 +
<div class="Poznamka">Správce může pracovat (zobrazit, upravovat,...) s&nbsp;osobním seznamem jiného uživatele připojením parametru <code>-u username</code>:
 +
  crontab -u simunek -e
 +
crontab -u xkarel -l
 +
</div>
 +
 
 +
 
 +
== Formát záznamu crontabu ==
 +
* Formát je společný pro osobní i systémový seznam úloh.
 +
* Jeden řádek popisuje vždy jednu naplánovanou úlohu:
 +
** kdy se spustí
 +
** jaký příkaz se provede
 +
 
 +
Formát řádku:
 +
''minuty'' ''hodiny''  ''den-v-měsíci''  ''měsíc''  ''den-v-týdnu''  ''příkaz''
 +
 
 +
Hodnoty mohou být:
 +
* Konkrétní čísla:
 +
0 3 13 6 1 /cesta/skript
 +
* Můžeme použít hvězdičku &mdash; pak se spustí v libovolnou minutu|hodinu|den v týdnu,...
 +
0 3 * * 1 /cesta/skript
 +
* Rozsah hodnot
 +
0 1 * * 1-5 /cesta/skript
 +
* Výčet hodnot
 +
0 1 * * 1,3,5 /cesta/skript
 +
<!-- * Místo konkrétního čísla můžeme použít <code>/1</code>, pak se úkol provede každou minutu/hodinu.-->
 +
 
 +
; Příklady:
 +
0 3 * * * /usr/bin/my-backup-script
 +
* Každý den ve 3:00 se spustí uvedený skript.
 +
0 * * * * /usr/bin/my-backup-script
 +
* Skript se spustí každou hodinu.
 +
 
 +
; Vyzkoušejte
 +
* * * * * date >> ~/vystup_cronu.txt
 +
 
 +
 
 +
== Výstup skriptů ==
 +
* Výstup spouštěných skriptů (i&nbps;chybový výstup) se odesílá na systémový mail.
 +
* Můžeme výstup přesměrovat do souboru nebo do <code>/dev/null</code>:
 +
 
 +
0 5 * * * /usr/bin/skript >/dev/null 2&>1
  
; Formát záznamu crontabu:
 
''minuty''  ''hodiny''  ''den-v-měsíci''  měsíc''  ''den-v-týdnu''  ''příkaz''
 
Příklad:
 
* Nastavíme-li: <code>00 03 * * * /usr/bin/my-backup-script</code>, pak se každý den ve 3:00 spustí uvedený skript.
 
  
Nastavení minut:
+
== Zdroje ==
* Místo konkrétního čísla můžeme použít <code>/1</code>, pak se úkol provede každou minutu.
+
* [https://debian-administration.org/article/56/Command_scheduling_with_cron Debian Administration &rarr; Command scheduling with cron]

Aktuální verze z 3. 6. 2016, 07:38


Obsah

Plánování úloh v GNU/Linuxu


Zobrazení seznamu plánovaných úloh

Osobní seznam úloh
crontab -l
Systémový seznam úloh
cat /etc/crontab


Úprava seznamu úloh

Osobní seznam úloh
crontab -e
Systémový seznam úloh
nano /etc/crontab


Správce může pracovat (zobrazit, upravovat,...) s osobním seznamem jiného uživatele připojením parametru -u username:
crontab -u simunek -e
crontab -u xkarel -l


Formát záznamu crontabu

Formát řádku:

minuty  hodiny   den-v-měsíci  měsíc   den-v-týdnu   příkaz

Hodnoty mohou být:

0 3 13 6 1 /cesta/skript
0 3 * * 1 /cesta/skript
0 1 * * 1-5 /cesta/skript
0 1 * * 1,3,5 /cesta/skript
Příklady
0 3 * * * /usr/bin/my-backup-script
0 * * * * /usr/bin/my-backup-script
Vyzkoušejte
* * * * * date >> ~/vystup_cronu.txt


Výstup skriptů

0 5 * * * /usr/bin/skript >/dev/null 2&>1


Zdroje

Osobní nástroje
Jmenné prostory
Varianty
Akce
Výuka
Navigace
Nástroje