Dodanie tekstu do syslog w crontabie

Wyłącznie system! Wątpliwości dotyczące aplikacji proszę umieszczać niżej, w odpowiednich forach.
zukers
Piegowaty Guziec
Piegowaty Guziec
Posty: 11
Rejestracja: 18 mar 2007, 18:20
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: Brak
Architektura: x86

Dodanie tekstu do syslog w crontabie

Post autor: zukers »

Hej,
chciałbym dodać krótki tekst do sysloga w każdym wykonywanym kroku crontaba ale wpisuje mi do całą komendę, mam coś takiego:

Kod: Zaznacz cały

28 10 * * * sudo ifconfig wlan0 down | logger -t WiFi_Down
30 10 * * * sudo ifconfig wlan0 up | logger -t WiFi_UP
więc chciałbym tylko tekst w syslogu "Wifi_Down" WiFi_UP, a mam coś takiego:

Kod: Zaznacz cały

Jan 30 10:30:01 raspberrypi CRON[4644]: (root) CMD (sudo ifconfig wlan0 up | logger -t WiFi_UP)
Awatar użytkownika
jacekalex
Gibki Gibbon
Gibki Gibbon
Posty: 4707
Rejestracja: 17 cze 2007, 02:54
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: MATE
Architektura: x86_64

Re: Dodanie tekstu do syslog w crontabie

Post autor: jacekalex »

Do crontaba nie dodajesz sudo, bo cron chodzi z prawami roota.
Czyli dodajesz do tabeli crontab roota.
Najlepiej do pliku w folderze

Kod: Zaznacz cały

/etc/cron.d/
Poza tym ifconfig nic nie wyświetla, tylko wykonuje polecenie w tym przypadku.
Problemy rozwiązujemy na forum nie na PW -> Niech inni na tym skorzystają.
Komputer jest jak klimatyzacja - gdy otworzysz okna, robi się bezużyteczny...
Linux User #499936
Inny OS: Gentoo Linux :)
zukers
Piegowaty Guziec
Piegowaty Guziec
Posty: 11
Rejestracja: 18 mar 2007, 18:20
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: Brak
Architektura: x86

Re: Dodanie tekstu do syslog w crontabie

Post autor: zukers »

ja wiem co robi to polecenie ifconfig, polecenie mi działa tzn włączy i wyłącza WiFi bez względu czy jest z sudo czy nie - więc nie tu jest problem,
Jak zapisać ten krótki tekst "WiFi_Down" oraz "WiFi_UP" w syslogu po wykonaniu każdego z tych dwóch poleceń?
Awatar użytkownika
arecki
Zakręcona Traszka
Zakręcona Traszka
Posty: 747
Rejestracja: 17 lis 2018, 09:31
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: Xfce
Architektura: x86_64
Lokalizacja: 44 Bronson Lane Hensonville

Re: Dodanie tekstu do syslog w crontabie

Post autor: arecki »

RTFM

Kod: Zaznacz cały

logger WiFi_Up `ifconfig wlan0 up`

Kod: Zaznacz cały

logger WiFi_Down `ifconfig wlan0 down`

Kod: Zaznacz cały

logger -t TWÓJ_TAG TWOJA_WIADOMOŚĆ `TWOJA KOMENDA`
zukers
Piegowaty Guziec
Piegowaty Guziec
Posty: 11
Rejestracja: 18 mar 2007, 18:20
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: Brak
Architektura: x86

Re: Dodanie tekstu do syslog w crontabie

Post autor: zukers »

nie za bardzo nie dość że dalej cała komenda jest w syslogu, to WiFi nie zostało wyłączone:
Jan 30 15:05:01 raspberrypi CRON[14244]: (root) CMD (logger WiFi_Down 'ifconfig wlan0 down')
Jan 30 15:05:01 raspberrypi root: WiFi_Down ifconfig wlan0 down
Awatar użytkownika
arecki
Zakręcona Traszka
Zakręcona Traszka
Posty: 747
Rejestracja: 17 lis 2018, 09:31
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: Xfce
Architektura: x86_64
Lokalizacja: 44 Bronson Lane Hensonville

Re: Dodanie tekstu do syslog w crontabie

Post autor: arecki »

Bo źle to przepisujesz.
Skopiuj i wklej lub jak nie potrafisz tego opanować to przynajmniej odróżniaj apostrof od grawisa
'
to nie to samo co
`
zukers
Piegowaty Guziec
Piegowaty Guziec
Posty: 11
Rejestracja: 18 mar 2007, 18:20
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: Brak
Architektura: x86

Re: Dodanie tekstu do syslog w crontabie

Post autor: zukers »

poprawiłem:
58 19 * * * logger -t WiFi_Down `ifconfig wlan0 down`
00 20 * * * logger -t WiFi_UP `ifconfig wlan0 up`
dalej nic to nie daje, tzn WiFi się nie wyłącza a w syslogu zapisuje się cała komenda:

Jan 30 19:58:01 raspberrypi CRON[16201]: (root) CMD (logger -t WiFi_Down`ifconfig wlan0 down`)
Awatar użytkownika
arecki
Zakręcona Traszka
Zakręcona Traszka
Posty: 747
Rejestracja: 17 lis 2018, 09:31
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: Xfce
Architektura: x86_64
Lokalizacja: 44 Bronson Lane Hensonville

Re: Dodanie tekstu do syslog w crontabie

Post autor: arecki »

Bo dalej źle przepisujesz.
Wpisz sobie w terminalu i zobacz czy działa.
zukers
Piegowaty Guziec
Piegowaty Guziec
Posty: 11
Rejestracja: 18 mar 2007, 18:20
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: Brak
Architektura: x86

Re: Dodanie tekstu do syslog w crontabie

Post autor: zukers »

wszystko wpisuje w terminalu:
pi@raspberrypi:~ $ logger -t WiFi_UP `ifconfig wlan0 up`
SIOCSIFFLAGS: Operation not permitted

pi@raspberrypi:~ $ sudo logger -t WiFi_UP `ifconfig wlan0 up`
SIOCSIFFLAGS: Operation not permitted
Awatar użytkownika
arecki
Zakręcona Traszka
Zakręcona Traszka
Posty: 747
Rejestracja: 17 lis 2018, 09:31
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: Xfce
Architektura: x86_64
Lokalizacja: 44 Bronson Lane Hensonville

Re: Dodanie tekstu do syslog w crontabie

Post autor: arecki »

I teraz porównaj to z tym co napisałem.

Kod: Zaznacz cały

logger -t TWÓJ_TAG TWOJA_WIADOMOŚĆ `TWOJA KOMENDA`
zukers
Piegowaty Guziec
Piegowaty Guziec
Posty: 11
Rejestracja: 18 mar 2007, 18:20
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: Brak
Architektura: x86

Re: Dodanie tekstu do syslog w crontabie

Post autor: zukers »

wiesz co nie jarze o co Ci chodzi napisz mi dokładnie jak mam wpisać, bo to co mi podałeś wcześniej wpisałem i nie działa.
Awatar użytkownika
arecki
Zakręcona Traszka
Zakręcona Traszka
Posty: 747
Rejestracja: 17 lis 2018, 09:31
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: Xfce
Architektura: x86_64
Lokalizacja: 44 Bronson Lane Hensonville

Re: Dodanie tekstu do syslog w crontabie

Post autor: arecki »

Wpisz w terminalu jako root:

Kod: Zaznacz cały

logger WiFi_UP `ifconfig wlan0 up`
, skontroluj czy interfejs został podniesiony oraz czy informacja trafiła do logów i potem to samo zrób z użyciem crona.
Awatar użytkownika
jacekalex
Gibki Gibbon
Gibki Gibbon
Posty: 4707
Rejestracja: 17 cze 2007, 02:54
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: MATE
Architektura: x86_64

Re: Dodanie tekstu do syslog w crontabie

Post autor: jacekalex »

Próbowałeś:

Kod: Zaznacz cały

ifconfig wlan0 down && "logger wifi_down" || logger "nie udało się wifi_down"

Kod: Zaznacz cały

ifconfig wlan0 up  &&  logger "wifi_up"  || logger "nie udało się wifi_up"
U mnie dokładnie w ten sposób działa grzecznie z terminala.

W logu zostało:

Kod: Zaznacz cały

2022 Jan 31 01:12:45 localhost root: nie udało się wifi_up
2022 Jan 31 01:12:58 localhost root: wifi_up
Możesz mieć kłopot z powyższym w CRONie, bo CRON troszkę inaczej używa powłoki, aniżeli terminal basha.

Naucz się na przyszłość odpowiedzi funkcji czyli 0 -sukces, 1 -nie udało się.
Tu masz wyjaśnienia tego mechanizmu:
https://wiki.gentoo.org/wiki/Bash#Logical_operators
https://unix.stackexchange.com/question ... -operators

Jest też 255 innych numerów funkcji specyficznych dla różnych programów,
ale te dwa są podstawowe dla prawie każdego polecenia powłoki.
https://www.cyberciti.biz/faq/linux-bas ... usin-bash/
:pt36:


Pozdro
:craz:
Problemy rozwiązujemy na forum nie na PW -> Niech inni na tym skorzystają.
Komputer jest jak klimatyzacja - gdy otworzysz okna, robi się bezużyteczny...
Linux User #499936
Inny OS: Gentoo Linux :)
zukers
Piegowaty Guziec
Piegowaty Guziec
Posty: 11
Rejestracja: 18 mar 2007, 18:20
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: Brak
Architektura: x86

Re: Dodanie tekstu do syslog w crontabie

Post autor: zukers »

arecki pisze: 30 sty 2022, 22:12 Wpisz w terminalu jako root:

Kod: Zaznacz cały

logger WiFi_UP `ifconfig wlan0 up`
, skontroluj czy interfejs został podniesiony oraz czy informacja trafiła do logów i potem to samo zrób z użyciem crona.
ok chyba jest OK, musiałem dać tylko w crantabie sudo inaczej nie wyłączało anie nie włączało mi wifi, tak teraz mam:

Kod: Zaznacz cały

Jan 31 18:11:01 raspberrypi CRON[19962]: (root) CMD (logger WiFi_Down `sudo ifconfig wlan0 down`)
Jan 31 18:11:01 raspberrypi root: WiFi_Down
Jan 31 18:17:01 raspberrypi CRON[20130]: (root) CMD (logger WiFi_UP `sudo ifconfig wlan0 up`)
Jan 31 18:17:01 raspberrypi kernel: [165669.441873] brcmfmac: brcmf_cfg80211_set_power_mgmt: power save enabled
Jan 31 18:17:01 raspberrypi root: WiFi_UP

mam osobą linijkę o włączeniu i wyłączeniu i gitara. dzięki.
zukers
Piegowaty Guziec
Piegowaty Guziec
Posty: 11
Rejestracja: 18 mar 2007, 18:20
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: Brak
Architektura: x86

Re: Dodanie tekstu do syslog w crontabie

Post autor: zukers »

czemu po wykonania polecenia crona o godzinei 23:00, syslog zasypywany jest przez kila minut jeszcze takimi wpisami:

Kod: Zaznacz cały

Jan 31 23:01:01 raspberrypi CRON[21077]: (root) CMD (logger WiFi_Down `sudo ifconfig wlan0 down`)
Jan 31 23:01:01 raspberrypi root: WiFi_Down
Jan 31 23:02:01 raspberrypi CRON[21082]: (root) CMD (logger WiFi_Down `sudo ifconfig wlan0 down`)
Jan 31 23:02:01 raspberrypi root: WiFi_Down
Jan 31 23:03:01 raspberrypi CRON[21087]: (root) CMD (logger WiFi_Down `sudo ifconfig wlan0 down`)
Jan 31 23:03:01 raspberrypi root: WiFi_Down
Jan 31 23:04:01 raspberrypi CRON[21092]: (root) CMD (logger WiFi_Down `sudo ifconfig wlan0 down`)
Jan 31 23:04:01 raspberrypi root: WiFi_Down
Jan 31 23:05:01 raspberrypi CRON[21101]: (root) CMD (logger WiFi_Down `sudo ifconfig wlan0 down`)
Jan 31 23:05:01 raspberrypi root: WiFi_Down
Jan 31 23:06:01 raspberrypi CRON[21108]: (root) CMD (logger WiFi_Down `sudo ifconfig wlan0 down`)
Jan 31 23:06:01 raspberrypi root: WiFi_Down
Jan 31 23:07:01 raspberrypi CRON[21115]: (root) CMD (logger WiFi_Down `sudo ifconfig wlan0 down`)
Jan 31 23:07:01 raspberrypi root: WiFi_Down
Jan 31 23:08:01 raspberrypi CRON[21120]: (root) CMD (logger WiFi_Down `sudo ifconfig wlan0 down`)
Jan 31 23:08:01 raspberrypi root: WiFi_Down
Jan 31 23:09:01 raspberrypi CRON[21125]: (root) CMD (logger WiFi_Down `sudo ifconfig wlan0 down`)
Jan 31 23:09:01 raspberrypi root: WiFi_Down
Jan 31 23:10:02 raspberrypi CRON[21132]: (root) CMD (logger WiFi_Down `sudo ifconfig wlan0 down`)
Jan 31 23:10:02 raspberrypi root: WiFi_Down
Jan 31 23:11:01 raspberrypi CRON[21138]: (root) CMD (logger WiFi_Down `sudo ifconfig wlan0 down`)
Jan 31 23:11:01 raspberrypi root: WiFi_Down
Jan 31 23:12:01 raspberrypi CRON[21145]: (root) CMD (logger WiFi_Down `sudo ifconfig wlan0 down`)
Jan 31 23:12:01 raspberrypi root: WiFi_Down
Jan 31 23:13:01 raspberrypi CRON[21150]: (root) CMD (logger WiFi_Down `sudo ifconfig wlan0 down`)
Jan 31 23:13:01 raspberrypi root: WiFi_Down
Jan 31 23:14:01 raspberrypi CRON[21156]: (root) CMD (logger WiFi_Down `sudo ifconfig wlan0 down`)
Jan 31 23:14:01 raspberrypi root: WiFi_Down
Jan 31 23:15:01 raspberrypi CRON[21162]: (root) CMD (logger WiFi_Down `sudo ifconfig wlan0 down`)
Jan 31 23:15:01 raspberrypi root: WiFi_Down
Jan 31 23:16:01 raspberrypi CRON[21169]: (root) CMD (logger WiFi_Down `sudo ifconfig wlan0 down`)
Jan 31 23:16:01 raspberrypi root: WiFi_Down
ODPOWIEDZ

Wróć do „Instalacja, aktualizacja i konfiguracja Ubuntu”

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 15 gości