Portál AbcLinuxu, 5. května 2025 21:43
Tento program spustí před i po záznamu tzv.recording-hook, do kterého můžu zadat nějaký příkaz. I když v souboru /var/log/syslog uvidím, že recording-hook proběhl
7:14 pavel-lubuntu recordingaction: executing /usr/share/vdr/recording-hooks/R90.custom before recording /var/lib/video.00/U_nás_na_farmě/2015-06-10.09.46.11-0.rec as shell script
Příkaz, který byl do něj vložen (třeba jen zápis datumu do souboru.txt) vykonán není. Pravděpodobně to bude asi nějakými právy, nevěděl by někdo co s tím? To samé když ve scriptu použiju Zenity, tak se okno s upozorněním Zenity spustí pouze, když je script spuštěný z terminálu (jsem root). Když je script spuštěný přes cron, tak se okno Zenity nezobrazí.
Je nastaveno automatické přihlášení jako root. V PC nic není, bezpečnost neřeším, případný hacker si může maximálně přehrát zaznamenaný Večerníček.
Zkoušel jsem hledat na webu, ale zatím bezúspěšně. Potřeboval bych nastavit, aby programy VDR a Zenity mohly vykonávat příkazy ze scriptů, které spouští cron. Cron normálně funguje, např.datum zapíše do souboru,ale nechce vykonat Zenity a ten recording-hook.
Předem díky.
DISPLAY=:0 XAUTHORITY=/home/pavel/.Xauthority zenity --info --text 'Funguje to'Ale jinak je lepší root účet nepoužívat a vše dělat pod běžným uživatelským účtem. Odpadnou ti problémy s oprávněními a když něco poděláš, tak si nerozdrbeš celý systém. Cron jako uživatel můžeš používat pomocí příkazu
crontab -e
. Xauthority pak nemusíš řešit, stačí nastavit DISPLAY.
Zenity skutečně funguje, mám script který se spouští každou minutu pomocí cronu - dal jsem do něj řádek od tebe z příspěvku - Funguje to.
Díky moc.Další věcí jsou ty recording-hooks, už se mi podařilo vykonat příkaz před zahájením nahrávání before - zkusmo napsat datum do souboru. Dále jsou tam shutdown-hooks, to umožňuje PC vypnout dle načasovaného timeru.
Do přílohy jsem dal soubor shutdown-hooks. Nevěděl by někdo jak ho upravit, aby se před vypnutím PC zobrazila nějaká varovná zpráva, že PC bude vypnutý a tato zpráva pokud ji nezruším, tak se PC vypne.
Také jsem chtěl upravit soubor /etc/sudoers, aby vdr mohl vykonávat všechny činnosti - bohužel nevím jak.
Do souboru /etc/lightdm/lightdm.conf jsem napsal autologin-user=root a už není potřeba vyplňovat root a heslo. Dále jsem musel upravit soubor /root/.profile a místo mesg n napsat if `tty -s`; then mesg n fi.
step=5 for i in `seq 1 $step 100` do echo $i sleep 1 done \ | zenity --progress --auto-close \ --text '\n<b>Počítač bude vypnut!</b>\n' --time-remaining 2>/dev/null if [ "$?" = "0" ] then echo shutdown fi(
$step
je krok, jak rychle se blížit ke 100%.)
Recording-hooks mi už fungují i before i after.
Ale pokud script se zenity nechám spustit Recording-hooks_after (spustí Test.sh), tak se příkazy v Test.sh vykonají, ale okno zenity není zobrazeno.
Bude to určitě zase nějakými právy, jsem automaticky přihlášený jako root, potřeboval bych povolit úplně všechno všem, v PC nic na zcizení není.
Mohl by někdo poradit ? Zatím jsem se ničeho nedopátral. Díky moc.
Jun 12 14:44:01 pavel-lubuntu recordingaction: executing /usr/share/vdr/recording-hooks/R90.custom before recording /var/lib/video.00/CT_1_HD/2015-06-12.14.44.1-0.rec Jun 12 14:44:01 pavel-lubuntu recordingaction: error when executing /usr/share/vdr/recording-hooks/R90.custom
Proto jsem našel na webu tu úpravu, abych byl automaticky přihlášený jako root. Potom se Recording-hooks vykonají a v logu chyba není. Zkoušel jsem i do scriptu napsat cestu k zenity /usr/bin/zenity a v souboru zenity změnit v záložce Práva na třikrát Kdokoliv.
Můj výtvor v příloze. Berte to s nadhledem, terminál i linux jsem poprvé viděl o něco více než před rokem.
Tímto chci ještě jednou poděkovat za ten script vypínání Zenity, funguje perfektně.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.