Jak vytvořit shellový skript v Linuxu pro CRON?

Zabezpečenie Linuxových / UNIXových serverov

Automatizovat systém Linux je dobrý nápad, SHELL skripty skripty tvoří základní stavební kámen pro automatizaci Linuxů. Vyšší level představují PERL skripty, které obsahují poročilé nástroje pro analýzu a zpracování textu. Jak si vytvoříme ultra-jednoduchý shellovský skript?

Vytvořit soubor skriptik.sh

Vytvoříme si soubor skirptik.sh, který bude obsahovat jen jeden příkaz. Příkaz rsync s těmito parametry funguje pro inkrementální zálohování. Před prvním spuštěním skriptu si nejprve vytvoříme složku / záloha:

#!/bin/bash

# komentar

rsync -a /home/* /zaloha

První řádek je haspling, který určuje, který systémový interpret spustí skript. Systémový interpret je lepší zadat absolutní cestou (než na ukázce) a musí existovat v seznamu systémových interpretů v /etc/shells.

Změna přístupových práv

Momentálně soubor skriptik.sh nemá práva na spouštění, změníme to následujícím příkazem:

# chmod u+x /root/skriptik.sh

Výsledek můžeme ověřit pomocí příkazu:

# ls –l /root/skriptik.sh

Spuštění skriptu

Na implicitní spuštění potřebujeme mít práva na spouštění souboru. Skript spustíme implicitně takto:

# /root/skriptik.sh

Na explicitní spouštění nepotřebujeme mít práva na spouštění souboru. Potřebujeme jen práva na čtení. Skript spustíme explicitně takto:

# bash /root/skriptik.sh

Vložení do plánovače úloh

V Linuxu funkci plánovače úloh plní cron, v souboru /etc/crontab přidáme na samostatný řádek dolů takový záznam:

*/30 * * * * root /root/skriptik.sh > /root/result.txt 2>&1

Tím zajistíme, že se skript bude provádět každých 30 minut pod uživatelem root. Standardní (STDOUT) i chybový (STDERR) výstup ze skriptu najdeme v souboru /root/result.txt.

UNIX shell je krásný, dokáže Vám ušetřit spoustu hodin potřebných pro administraci systému Linux.

Marián Knězek

 

Súvisiace články: