MC' Napisano Październik 5, 2010 Zgłoszenie Share Napisano Październik 5, 2010 Witam. wydaje mi się, że nie widzę jakiejś oczywistości w tym co robię bo sprawa jest błaha. Otóż dodałem sobie plik /etc/cron.d/plik z wpisem testowym: * * * * * /bin/echo "*********************************************************" Czyli co minutę powinien wyświetlać mi gwiazdki. Niestety ten skomplikowany system nie działa tak jak sie tego spodziewam hehe w czym tkwi problem? Mało tego jeśli dodam ten sam wpis przez crontab również nic nie jest drukowane na konsole... Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
@WalDo Napisano Październik 5, 2010 Zgłoszenie Share Napisano Październik 5, 2010 Cron nie ma pojęcia, na której konsoli to wyświetlać. Musisz przekierować wyjście na konkretne urządzenie. Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
MC' Napisano Październik 5, 2010 Autor Zgłoszenie Share Napisano Październik 5, 2010 Tak też kombinowałem tylko ze po prostu przekierowałem sobie >> do pliku. Niestety taki plik nie został po upływie minuty zapełniony gwiazdkami ;/ Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
@WalDo Napisano Październik 5, 2010 Zgłoszenie Share Napisano Październik 5, 2010 uruchom konsole (moze byc jakis emulator typu gnome-terminal), sprawdz co to za urzadzenie (komenda "tty") i w cronie (crontab -e) wpisz * * * * * /bin/echo "***********************" > /dev/pty/0 Oczywiscie /dev/pty/0 to przyklad - wpisz to co zwróci "tty". Nie wylaczaj tego terminala i cierpliwie czekaj [EDIT] A jak do pliku, to musisz podac pelna sciezke dostepu. Tak jak to zrobiles z poleceniem "echo". Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
MC' Napisano Październik 5, 2010 Autor Zgłoszenie Share Napisano Październik 5, 2010 wszystko działa ok (przy użyciu polecenia crontab -e) tzn nawet nie trzeba pełnej ścieżki do echo bo już jest podana w zmiennej PATH z /etc/crontab. Niestety tworząc sobie plik /etc/cron.d/cron.RootConfigsCron i umieszczając w nim dokładnie tą samą formułę nic się nie dzieje? Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
@WalDo Napisano Październik 5, 2010 Zgłoszenie Share Napisano Październik 5, 2010 Niestety tworzac sobie plik /etc/cron.d/cron.RootConfigsCron i umieszczajac w nim dokladnie ta sama formule nic sie nie dzieje?A masz pusta linie na koncu tego pliku? [EDIT] A przede wszystkim zobacz kto jest wlascicielem tego pliku i z konto wlasciciela sprawdz czy widac polecenie ("crontab -l" - male L) i czy wlasciciel pliku nie dostal poczty systemowej z informacja o bledzie ("mail") [EDIT2] I jeszcze jedno - prawa do pliku powinny byc 600 Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
MC' Napisano Październik 5, 2010 Autor Zgłoszenie Share Napisano Październik 5, 2010 Nie mialem ale dodalem i dalej nic ... po minucie i wpisie * * * * * /bin/echo "*********************************************************" > /root/aaaa dalej plik aaaa sie nie dodaje Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
@WalDo Napisano Październik 5, 2010 Zgłoszenie Share Napisano Październik 5, 2010 Pokaz crontab -l z roota. Pokaz jak wyglada plik ls -l /etc/cron.d/cron.RootConfigsCron cat /etc/cron.d/cron.RootConfigsCron Cos musisz zle robic, bo sobie wlasnie sprawdzilem na VirtualBox i gwiazdki wypisuja sie zarówno do pliku jak i na wskazana konsole. 1 Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
MC' Napisano Październik 5, 2010 Autor Zgłoszenie Share Napisano Październik 5, 2010 hehe no dobra .. jeszcze pliki to potrafię wyświetlić i wartości crontaba Plik wygląda tak: * * * * * /bin/echo "*********************************************************" > /root/aaaa a crontaba wyzerowałem przez '-r' bo nie chce by dziłał crontab tylko plik z /etc/crond PS a po co Ci był VirtualBox? Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
@WalDo Napisano Październik 5, 2010 Zgłoszenie Share Napisano Październik 5, 2010 [...]bo nie chce by dziłał crontab tylko plik z /etc/crond Szczerze mówiąc nie próbowałem nigdy uruchamiać crona inaczej niż przez crontab. Pewnie żeby to zrobić "ręcznie" tak jak próbujesz trzeba zainicjować jakieś inne pliki, ale nie wiem jak. Zawsze korzystając z pliku robiłem po prostu "crontab <plik>" i wszystko działało. Albo edytowałem bezpośrednio przez "crontab -e". PS a po co Ci był VirtualBox?Bo w pracy wyglądam na świat przez okna Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
borzole Napisano Październik 5, 2010 Zgłoszenie Share Napisano Październik 5, 2010 Jesli móglbym cos zasugerowac Kiedy korzystasz z polecenia crontab wówczas cron wprowadza zmiany dla konkretnego usera w pliku /var/spool/cron/user Natomiast kiedy korzystasz: z pliku /etc/crontab z plików w katalogu /etc/cron.d (wliczajac w to cron.daily/ cron.hourly/ cron.monthly/ cron.weekly/) to musisz okreslic usera np. $ cat /etc/cron.d/sysstat # Run system activity accounting tool every 10 minutes */10 * * * * root /usr/lib64/sa/sa1 -S DISK 1 1 # 0 * * * * root /usr/lib64/sa/sa1 -S DISK 600 6 & # Generate a daily summary of process accounting at 23:53 53 23 * * * root /usr/lib64/sa/sa2 -A $ cat /etc/cron.d/vnstat MAILTO=root # to enable interface monitoring via vnstat remove comment on next line */5 * * * * vnstat /usr/sbin/vnstat.cron [EDIT] a tak na marginesie, jak chcesz cos wyslac na konsole to proponuje man wall man write 1 Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
MC' Napisano Październik 6, 2010 Autor Zgłoszenie Share Napisano Październik 6, 2010 Natomiast kiedy korzystasz: z pliku /etc/crontab z plików w katalogu /etc/cron.d (wliczajac w to cron.daily/ cron.hourly/ cron.monthly/ cron.weekly/) to musisz okreslic usera np. Piwo dla borza trafiony zatopiony! o to chodzilo. Cala reszte znalem i rozumialem ale tego mi w dokumentacjach i tutakach zabraklo [EDIT] a tak na marginesie, jak chcesz cos wyslac na konsole to proponuje man wall man write hehe wiem ale to chodzilo o test crona jakis prosty wiec wywalalem na konsole Teraz mam tylko jedne problem w pliku /etc/crontab jest zmienna path ustawiona tak: PATH=/sbin:/bin:/usr/sbin:/usr/bin z tego co napisano w tutorialach pliki z /etc/cron.d/xxx maja taka sama skladnie. Wiec jesli dam: PATH=$PATH:/root/configs/cron w takim pliku xxx to zmienna PATH powinna zawierac katalog configs z którego bezposrednio moge wywolywac polecenia zawarte w postaci skryptów w /root/configs/cron a niestety to nie dziala. PLiki wygladaja tak: /etc/cron.d/xxx PATH=$PATH:/root/configs/cron * * * * * root ./odswiezacz.sh /root/configs/cron/odswiezacz.sh: #!/bin/bash # Test Crona ---------------------------- echo '*******************************************************' >> /dev/pts/0; Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
MC' Napisano Październik 7, 2010 Autor Zgłoszenie Share Napisano Październik 7, 2010 1. Jeśli podam ścieżkę bezwzględną i zakometuję zmienną PATH to idzie poprawnie ale dalej nie działa tak jak bym chciał elegancko z dodaniem do zmiennej PATH po prostu ścieżki i następnie wywoływaniem względnym. 2.Nawet jak już działa plik odświezacz.sh to wydanie w nim polecenia: sh /root/configs/iptables_conf.sh Nie wywołuje skryptu. tzn w regułach iptables nie zachodzą zmiany mimo że np wyświetlenie gwiazdek zadziała (?) Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
borzole Napisano Październik 7, 2010 Zgłoszenie Share Napisano Październik 7, 2010 może daj również na początku skryptu export PATH=... Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
MC' Napisano Październik 7, 2010 Autor Zgłoszenie Share Napisano Październik 7, 2010 @borzole No tak tyle ze PATH w /etv/crontab nie uzywa export Dodatkowo zmienna PATH z crontab jest inna niz systemowa Co ciekawe co jakis czas cron mi spamuje maila /var/spool/mail/root co minute czyli tak ajk wykonuje skrypt odswiezacz.sh komunikatami tej tresci: ----- The following addresses had permanent fatal errors ----- <root@xxx> (reason: 550 Host unknown) ----- Transcript of session follows ----- 550 5.1.2 <root@xxx>... Host unknown (Name server: xxx: host not found) --o97EF1Dr021330.1286460901/yyy.localdomain Content-Type: message/delivery-status Reporting-MTA: dns; yyy.localdomain Received-From-MTA: DNS; localhost.localdomain Arrival-Date: Thu, 7 Oct 2010 16:15:01 +0200 Final-Recipient: RFC822; root@xxx Action: failed Status: 5.1.2 Remote-MTA: DNS; xxx Diagnostic-Code: SMTP; 550 Host unknown Last-Attempt-Date: Thu, 7 Oct 2010 16:15:01 +0200 --o97EF1Dr021330.1286460901/yyy.localdomain Content-Type: message/rfc822 Return-Path: <root@xxx> Received: from xxx (localhost.localdomain [127.0.0.1]) by yyy.localdomain (8.13.8/8.13.8) with ESMTP id o97EF1Dr021328 for <root@xxx>; Thu, 7 Oct 2010 16:15:01 +0200 Received: (from root@localhost) by xxx (8.13.8/8.13.8/Submit) id o97EF1GJ021327; Thu, 7 Oct 2010 16:15:01 +0200 Date: Thu, 7 Oct 2010 16:15:01 +0200 Message-Id: <201010071415.o97EF1GJ021327@xxx> From: root@xxx (Cron Daemon) To: root@xxx Subject: Cron <root@xxx> /root/configs/cron/odswiezacz.sh Content-Type: text/plain; charset=UTF-8 Auto-Submitted: auto-generated X-Cron-Env: <SHELL=/bin/sh> X-Cron-Env: <HOME=/root> X-Cron-Env: <PATH=/usr/bin:/bin> X-Cron-Env: <LOGNAME=root> X-Cron-Env: <USER=root> iptables v1.3.5: Unknown arg `--sport' Try `iptables -h' or 'iptables --help' for more information. --o97EF1Dr021330.1286460901/yyy.localdomain-- --o97EF1Ds021330.1286460901/yyy.localdomain-- Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
Rekomendowane odpowiedzi
Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto
Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.
Zarejestruj nowe konto
Załóż nowe konto. To bardzo proste!
Zarejestruj sięZaloguj się
Posiadasz już konto? Zaloguj się poniżej.
Zaloguj się