Ohodnotit tento článek :
5/5 | 2 názor
Tento článek byl pro vás užitečný ?
Ano
Ne
Vous avez noté 0 étoile(s)
Sommaire
Procédure
Velkou část správy systému lze automatizovat pomocí skriptů Perlu nebo shellových skriptů spouštěných v pravidelných intervalech. Například můžete mít skript, který kontroluje, zda není disk plný, a který se spouští jednou za hodinu, aby vás informoval o případných problémech. Nejběžnějším mechanismem pro plánování příkazů v systémech Linux je balík cron.
V Debianu je balíček cron součástí základního systému a je spuštěn ve výchozím nastavení.
Balíček Cron je v Debianu dodáván ke dvěma účelům:
Spouštění systémových úloh na denní/týdenní/měsíční bázi.
Umožňuje uživatelům konfigurovat vlastní naplánované úlohy.
Balíček Cron automaticky vytváří následující adresáře:
/etc/cron.d /etc/cron.daily /etc/cron.hourly /etc/cron.monthly /etc/cron.weekly.
Kromě prvního z nich, který je speciální, umožňují tyto adresáře jednoduchým způsobem plánovat úlohy pro celý systém. Jakýkoli skript umístěný v nich se bude spouštět tak často, jak napovídá jeho název.
Pokud například umístíte skript do adresáře /etc/cron.daily, bude se spouštět jednou denně, každý den.
Tyto adresáře jsou v některých případech užitečné, ale pokud potřebujete časy spouštění dále upravit, lze to provést úpravou souboru /etc/crontab, kterou si vysvětlíme dále:
Obvyklý způsob, jakým lidé používají cron, je prostřednictvím příkazu crontab. Ten umožňuje zobrazit nebo upravit soubor crontab, což je soubor pro každého uživatele obsahující položky popisující příkazy, které se mají spustit, a čas jejich spuštění.
Chcete-li zobrazit svůj soubor, spusťte následující příkaz:
crontab -l
Uživatel root může zobrazit soubor crontab libovolného uživatele přidáním parametru -u username, například :
crontab -u username -l
Formát těchto souborů je poměrně jednoduchý na pochopení. Každý řádek je souborem šesti polí oddělených mezerami.
Pole jsou následující :
Počet minut po hodině (0 až 59)
Hodina ve formátu vojenského času (24 hodin) (0 až 23)
Den v měsíci (1 až 31).
Měsíc (1 až 12).
Den v týdnu (0 nebo 7).
Příkaz, který se má provést.
Vypadaly by takto:
* * * * * Příkaz, který se má provést - - - - - - | | | | | | | | +-----> Den v týdnu (0-7) | +-----------> Měsíc (1 - 12) | +-----------------> Den v měsíci (1 - 31) | +-----------------------> Hodina (0 - 23) +-----------------------------> Minuty (0 - 59)
(Každé z prvních pěti polí obsahuje pouze čísla, ale mohou být ponechána jako *, aby bylo uvedeno, že je přijatelná jakákoli hodnota).
Nyní, když jsme viděli strukturu, bychom měli zkusit spustit několik příkladů:
Upravte svůj soubor crontab:
crontab -e
Tím spustíte výchozí editor souboru crontab (v případě potřeby jej vytvoříte). Po uložení souboru a ukončení editoru se váš crontab nainstaluje do systému, pokud v něm nejsou chyby.
Výchozí editor je nano
Zadejte následující text:
* * * * /bin/ls > /var/log/ls.log.
Po uložení souboru a ukončení editoru se zobrazí zpráva jako :
crontab: instalace nového crontabu
Zda soubor obsahuje to, co očekáváte, můžete zkontrolovat pomocí:
crontab -l
Zde jsme Cronu řekli, aby spustil příkaz /bin/ls a přesměroval výstup příkazu do souboru /var/log/ls.log pokaždé, když se minuta rovná 0, tj. spustí příkaz v celou hodinu, každou hodinu.
Další příklady:
Spustit příkaz "noc" deset minut po půlnoci, každý den.
10 0 * * * /bin/night
Spusťte příkaz "pondělí" každé pondělí ve dvě hodiny ráno.
0 2 * * 1 /usr/local/bin/lundi
Pokud chcete něco spouštět velmi pravidelně, můžete použít jinou syntaxi: místo pouhých čísel můžete použít rozsahy nebo množiny.
Řada čísel označuje, že každý bod v tomto rozsahu bude k dispozici, takže pokud použijete následující řádek, spustíte příkaz v 1 hodinu, 2 hodiny, 3 hodiny a 4 hodiny:
* 1-4 * * * /bin/command
Podobně je tomu u sady, která se skládá z množiny čísel oddělených čárkami, přičemž každá položka seznamu bude porovnána. Předchozí příklad vypadá při použití sad takto:
* 1,2,3,4 * * * /bin/command
Ohodnotit tento článek :
5/5 | 2 názor
Tento článek byl pro vás užitečný ?
Ano
Ne
2mn čtení
Jak nakonfigurovat bránu firewall na dedikovaném serveru VPS?
1mn čtení
Jak se na dedikovaném serveru VPS připojím jako root pomocí nástroje Putty?
0mn čtení
Příkazy SSH pro Linux / Debian
0mn čtení
SSH - Příkaz Apt-get: Instalace a odinstalace balíčků