abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 20:55 | IT novinky

    IKEA ve Spojeném království hledá zaměstnance do své nové pobočky. Do pobočky v počítačové hře Roblox. Nástupní mzda je 13,15 liber na hodinu.

    Ladislav Hagara | Komentářů: 0
    včera 10:44 | Zajímavý článek

    Alyssa Rosenzweig se v příspěvku na svém blogu Vulkan 1.3 na M1 za 1 měsíc rozepsala o novém Vulkan 1.3 ovladači Honeykrisp pro Apple M1 splňujícím specifikaci Khronosu. Vychází z ovladače NVK pro GPU od Nvidie. V plánu je dále rozchodit DXVK a vkd3d-proton a tím pádem Direct3D, aby na Apple M1 s Asahi Linuxem běžely hry pro Microsoft Windows.

    Ladislav Hagara | Komentářů: 28
    včera 01:00 | Nová verze

    Byla vydána (𝕏) květnová aktualizace aneb nová verze 1.90 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a animovanými gify v poznámkách k vydání. Ve verzi 1.90 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.

    Ladislav Hagara | Komentářů: 0
    včera 00:44 | Nová verze

    Byla vydána (Mastodon, 𝕏) nová verze 2024.2 linuxové distribuce navržené pro digitální forenzní analýzu a penetrační testování Kali Linux (Wikipedie). Přehled novinek se seznamem nových nástrojů v oficiálním oznámení.

    Ladislav Hagara | Komentářů: 0
    5.6. 16:44 | IT novinky

    Počítačová hra Tetris slaví 40 let. Alexej Pažitnov dokončil první hratelnou verzi 6. června 1984. Mezitím vznikla celá řada variant. Například Peklo nebo Nebe. Loni měl premiéru film Tetris.

    Ladislav Hagara | Komentářů: 10
    5.6. 10:44 | Nová verze

    MicroPython (Wikipedie), tj. implementace Pythonu 3 optimalizovaná pro jednočipové počítače, byl vydán ve verzi 1.23.0. V přehledu novinek je vypíchnuta podpora dynamických USB zařízení nebo nové moduly openamp, tls a vfs.

    Ladislav Hagara | Komentářů: 0
    5.6. 10:22 | Nová verze

    Canonical vydal Ubuntu Core 24. Představení na YouTube. Nová verze Ubuntu Core vychází z Ubuntu 24.04 LTS a podporována bude 12 let. Ubuntu Core je určeno pro IoT (internet věcí) a vestavěné systémy.

    Ladislav Hagara | Komentářů: 2
    5.6. 01:00 | Nová verze Ladislav Hagara | Komentářů: 0
    4.6. 19:55 | IT novinky

    Intel na veletrhu Computex 2024 představil (YouTube) mimo jiné procesory Lunar Lake a Xeon 6.

    Ladislav Hagara | Komentářů: 0
    4.6. 13:44 | IT novinky

    Na blogu Raspberry Pi byl představen Raspberry Pi AI Kit určený vlastníkům Raspberry Pi 5, kteří na něm chtějí experimentovat se světem neuronových sítí, umělé inteligence a strojového učení. Jedná se o spolupráci se společností Hailo. Cena AI Kitu je 70 dolarů.

    Ladislav Hagara | Komentářů: 0
    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: 750×
    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: 38 | 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.