|
Szukaj |
Automatyzacja zadańW Linuxie można zażądać, aby zadania były wykonywane automatycznie w określonej chwili. Red Hat Linux jest domyślnie skonfigurowane dla wykonania niektórych prac systemowych, pozwalających na aktualizowanie systemu. Na przykład, baza danych jest aktualizowana codziennie. Administrator systemu może zdefiniować automatyzację zadań w celu wykonywania okresowych kopii zabezpieczenia, nadzorowania systemu, wykonywania określonych skryptów itd. Konfiguracja pracy CronGłówny plik konfiguracji cron, /etc/crontab, zawiera następujące linie : SHELL=/bin/bash PATH=/sbin:/bin:/usr/sbin:/usr/bin MAILTO=root HOME=/
02 4 * * * root run-parts /etc/cron.daily 22 4 * * 0 root run-parts /etc/cron.weekly 42 4 1 * * root run-parts /etc/cron.monthly Cztery pierwsze linie służą do konfigurowania środowiska, w którym prace cron są wykonywane. Wartość zmiennej SHELL wskazuje systemowi, jakiego środowiska shell powinien użyć (w niniejszym przykładzie, bash shell), natomiast zmienna PATH definiuje ścieżkę dostępu do plików wykonywalnych. Wynik prac cron jest przesyłany e-mailem na nazwę użytkownika zdefiniowanego przez zmienną MAILTO. Jeżeli zmienna MAILTO nie została podana, żaden e-mail nie zostanie wysłany. Zmienna HOME może być użyta w celu opisania katalogu wykonywania komend lub skryptów. Każda linia pliku etc/contrab ma format : minute hour day month dayofweek command
Dla powyższych wartości, gwiazdka (*) jest używana jako "wszystko", na przyklad, * użyta dla wartości miesiąca oznacza wykonanie komendy w każdym miesiącu (z uwzględnieniem zastrzeżeń wprowadzonych przez inne wartości). Myślnik (-) umieszczony między liczbami całkowitymi oznacza szereg liczb całkowitych. Na przykład, 1-4 odpowiada liczbom całkowitym 1, 2, 3 i 4. Lista wartości oddzielonych przecinkami (,) odpowiada liście. Na przykład, 3,4,6,8 odpowiada tym konkretnym czterem liczbom czałkowitym. Slash (/) może być użyty dla wskazania wartości w określonych odstępach. Aby wstawić liczbę całkowitą do szeregu, wpisz po niej /<liczba całkowita>. Na przykład, 0-59/2 pozwala zdefiniować co drugą minutę w polu minut. Wartości te mogą również być wpisane z gwiazdką. Na przykład, wartość */3 może zostać wpisana w polu miesięcy dla wskazania co trzeciego miesiąca. Wersy rozpoczynające się od znaku (#) to komentarze. Nie są one brane pod uwagę. Jak automatycznie wykonać skrypt na serwerze wirtualnym (używając crond) ?Najpierw należy upewnić się, czy skrypt ten działa w mode shell i czy ma ustawione prawa do wykonywania. W tym celu w pierwszym wersie należy wpisać #!/usr/local/bin/php jeżeli w grę wchodzi skrypt php, #!/usr/bin/perl jeżeli jest to skrypt perl, albo #!/bin/bash dla skryptu shell, następnie należy użyć dla skryptu komendę chmod 700 script.cgi. Jeżeli masz dostę do telnet.ssh, możesz przetestować jego wykonanie przy pomocy ./script.cgi Nie zapomnij użyć komendy "cd /home/login" na samym początku Twojego skryptu, albo użyć odnośników absolutnych, kiedy wpisujesz nazwę pliku (na przykład /home/login/texte.txt zamiast texte.txt), ponieważ Twój skrypt wykona się w katalogu. Gdy jesteś już pewien, że Twój skrypt w mode shell dobrze funkcjonuje, musisz przesłać e-mail z tym skryptem do naszego supportu wraz z :
|