abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 22:33 | Nová verze

    Byl vydán Debian 13.5, tj. pátá opravná verze Debianu 13 s kódovým názvem Trixie a Debian 12.14, tj. čtrnáctá opravná verze Debianu 12 s kódovým názvem Bookworm. Řešeny jsou především bezpečnostní problémy, ale také několik vážných chyb. Instalační média Debianu 13 a Debianu 12 lze samozřejmě nadále k instalaci používat. Po instalaci stačí systém aktualizovat.

    Ladislav Hagara | Komentářů: 0
    15.5. 12:55 | Nová verze

    CiviCRM (Wikipedie) bylo vydáno v nové verzi 6.14.0. Podrobnosti o nových funkcích a opravách najdete na release stránce. CiviCRM je robustní open-source CRM systém navržený speciálně pro neziskové organizace, spolky a občanské iniciativy. Projekt je napsán v jazyce PHP a licencován pod GNU Affero General Public License (AGPLv3). Český překlad má nyní 45 % přeložených řetězců a přibližuje se milníku 50 %. Potřebujeme vaši pomoc, abychom se dostali dál. Pokud máte chuť přispět překladem nebo korekturou, přidejte se na platformu Transifex.

    jardaIT | Komentářů: 2
    15.5. 12:22 | Bezpečnostní upozornění

    Další lokální zranitelností Linuxu je ssh-keysign-pwn. Uživatel si může přečíst obsah souborů, ke kterým má právo ke čtení pouze root, například soubory s SSH klíči nebo /etc/shadow. V upstreamu již opraveno [oss-security mailing list].

    Ladislav Hagara | Komentářů: 1
    14.5. 17:22 | Komunita

    Singularity (YouTube) je nejnovější otevřený film od Blender Studia. Jedná se o jejich první 4K HDR film.

    Ladislav Hagara | Komentářů: 9
    14.5. 16:55 | Zajímavý software

    Vyšla hra Život Není Krásný: Poslední Exekuce (Steam, ProtonDB). Kreslená point & click adventura ze staré školy plná černého humoru a nekorektního násilí. Vžijte se do role zpustlého exekutora Vladimíra Brehowského a projděte s ním jeho poslední pracovní den. Hra volně navazuje na sérii Život Není Krásný.

    Ladislav Hagara | Komentářů: 27
    14.5. 14:00 | Zajímavý projekt

    Společnost Red Hat představila Fedora Hummingbird, tj. linuxovou distribuci s nativním kontejnerovým designem určenou pro vývojáře využívající AI agenty.

    Pinhead | Komentářů: 6
    14.5. 02:22 | Zajímavý software

    Hru The Legend of Zelda: Twilight Princess od společnosti Nintendo si lze nově díky projektu Dusklight (původně Dusk) a reverznímu inženýrství zahrát i na počítačích a mobilních zařízeních. Vyžadována je kopie původní hry (textury, modely, hudba, zvukové efekty, …). Ukázka na YouTube. Projekt byl zahájen v srpnu 2020.

    Ladislav Hagara | Komentářů: 0
    14.5. 01:11 | Nová verze

    Byla vydána nová major verze 29.0 programovacího jazyka Erlang (Wikipedie) a související platformy OTP (Open Telecom Platform, Wikipedie). Detailní přehled novinek na GitHubu.

    Ladislav Hagara | Komentářů: 0
    13.5. 21:22 | Bezpečnostní upozornění

    Po zranitelnostech Copy Fail a Dirty Frag přichází zranitelnost Fragnesia. Další lokální eskalace práv na Linuxu. Zatím v upstreamu neopravena. Přiřazeno ji bylo CVE-2026-46300.

    Ladislav Hagara | Komentářů: 1
    13.5. 14:00 | Komunita

    Sovereign Tech Agency (Wikipedie) prostřednictvím svého fondu Sovereign Tech Fund podpoří KDE částkou 1 285 200 eur.

    Ladislav Hagara | Komentářů: 14
    Které desktopové prostředí na Linuxu používáte?
     (13%)
     (8%)
     (2%)
     (14%)
     (31%)
     (4%)
     (6%)
     (3%)
     (15%)
     (26%)
    Celkem 1646 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník

    Dotaz: Spouštění příkazů ve skriptech - práva (root,user....)

    10.6.2015 11:10 Pavel
    Spouštění příkazů ve skriptech - práva (root,user....)
    Přečteno: 827×
    Zdravím. Na starší PC jsem nainstaloval lubuntu 14.04.2. PC využívám pouze jako nahrávací stroj na pozemní vysílání s programem VDR verze 2.0.3.

    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.

    Odpovědi

    Josef Kufner avatar 10.6.2015 12:08 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Spouštění příkazů ve skriptech - práva (root,user....)
    Přístup k X serveru a tedy zobrazení okýnka potřebuje dvě věci. Jednak musí program vědět, kam se připojit, to mu řekne proměnná prostředí zvaná DISPLAY. Druhá věc je, že mu X server musí povolit přístup a to obvykle dělá na základě sušenky uložené v ~/.Xauthority.

    Tedy pokud spustíš něco jako root a chceš, aby to ukázalo okýnko na tvém desktopu, který běží jako uživatel, musíš tyto dvě věci podstrčit ručně:
    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.
    Hello world ! Segmentation fault (core dumped)
    10.6.2015 13:10 Vtipnéř | skóre: 39 | blog: Vtipnéřův blog | Brno
    Rozbalit Rozbalit vše Re: Spouštění příkazů ve skriptech - práva (root,user....)
    Nemám teď VDR nikde puštěno, takže si to nemůžu ověřit, ale myslím, že vše, co VDR dělá, dělá jako uživatel 'vdr'. Takže možná by stačilo nastavit jeho práva pomocí /etc/sudoers a příslušné příkazy pouštět jako 'sudo .....'.

    Jirka
    Opening Windows is better than washing them. Clearing Windows (e.g. erasing or deleting) is even much better.
    Josef Kufner avatar 10.6.2015 13:19 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Spouštění příkazů ve skriptech - práva (root,user....)
    Pak jsou ještě skupiny. Pokdu se přidáš do skupiny uživatele a bude vhodně nastaven umask, aby výchozí oprávnění byla 0775 a nikoliv 0755 (tedy navíc zápis skupině), budeš moct mu hrabat do vygenerovaných souborů jako běžný uživatel, ale vdr ti nebude moct hrabat do tvých.
    Hello world ! Segmentation fault (core dumped)
    10.6.2015 15:01 Pavel
    Rozbalit Rozbalit vše Re: Spouštění příkazů ve skriptech - práva (root,user....)
    Příloha:
    Tedy pokud spustíš něco jako root a chceš, aby to ukázalo okýnko na tvém desktopu, který běží jako uživatel, musíš tyto dvě věci podstrčit ručně: DISPLAY=:0 XAUTHORITY=/home/pavel/.Xauthority zenity --info --text 'Funguje to'

    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.

    Josef Kufner avatar 11.6.2015 11:12 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Spouštění příkazů ve skriptech - práva (root,user....)
    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%.)
    Hello world ! Segmentation fault (core dumped)
    11.6.2015 15:36 Pavel
    Rozbalit Rozbalit vše Re: Spouštění příkazů ve skriptech - práva (root,user....)
    Díky moc, vyzkoušel jsem to a je to přesně to co jsem potřeboval. Funguje mi spouštění z terminálu, zatím nevím do jakého místa vložit to DISPLAY=:0 XAUTHORITY=/home/pavel/.Xauthority aby se to spouštělo i v cronu. Musel jsem smazat --time-remaining, psalo to Tento přepínač není k dispozici. Ale i bez něj to funguje a zobrazuje se na "teploměru" ubíhající čas.

    Recording-hooks mi už fungují i before i after.

    12.6.2015 10:41 Pavel
    Rozbalit Rozbalit vše Re: Spouštění příkazů ve skriptech - práva (root,user....)
    Podařilo se mi zprovoznit výše uvedený script zenity, funguje přesně tak jak jsem potřeboval, ale bohužel jen když je spuštěný z terminálu nebo spuštěný automaticky cronem. Vytvořil jsem zkušební soubor Test.sh, který spouští cron každou minutu. V tomto případě zenity funguje jak má ( i výše uvedený script s ukazatelem času i třeba když do Test.sh dám jen informační okno zenity ).

    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.

    Josef Kufner avatar 12.6.2015 13:59 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Spouštění příkazů ve skriptech - práva (root,user....)
    Říct ti o příkazu xhost by bylo poněkud nezodpovědné, takže takto: Vykašli se na roota, pracuj pod běžným uživatelem a případné spouštění pod jiným uživatelem řeš přes sudo.
    Hello world ! Segmentation fault (core dumped)
    12.6.2015 14:53 Pavel
    Rozbalit Rozbalit vše Re: Spouštění příkazů ve skriptech - práva (root,user....)
    Když Recording-hooks spustím z účtu uživatele, tak se nevykoná a v /var/log/syslog dostanu chybu

    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.

    Josef Kufner avatar 12.6.2015 19:20 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Spouštění příkazů ve skriptech - práva (root,user....)
    Hlavně by to chtělo zjistit tu chybu a ne jen hlášku, že se stala.
    Hello world ! Segmentation fault (core dumped)
    13.6.2015 17:01 Pavel
    Rozbalit Rozbalit vše Re: Spouštění příkazů ve skriptech - práva (root,user....)
    Příloha:
    Já jsem to vyřešil tím, že místo spouštění Zenity ve scriptu recording-hooks after jsem tímto scriptem nechal zapsat hodnotu 180 do souboru VDR_vypnuti.txt. Tento script Lubuntu_vypnuti.sh spouští cron každé tři minuty a pokud se nasčítá hodnota 180, tj.tři hodiny, tak se PC vypne. Je to proto, když by se náhodou stalo, že by se PC nevypnul dle timeru, tak je tu tato pojistka a po třech hodinách PC vypne. To se mi teď hodilo, tak jsem tu hodnotu 180 nechal zapsat scriptem Recording-hooks_after.sh a PC se začne vypínat, zobrazí se "teploměr" s ubíhajícím časem a pokud po nastaveném timeoutu není vypnutí zrušeno, PC se vypne.

    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ě.

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.