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 12:00 | Nová verze

Po cca 3 týdnech od vydání Linux Mintu 18.3 s kódovým jménem Sylvia a prostředími MATE a Cinnamon byla oznámena také vydání s prostředími KDE a Xfce. Podrobnosti v poznámkách k vydání (KDE, Xfce) a v přehledech novinek s náhledy (KDE, Xfce). Linux Mint 18.3 je podporován do roku 2021.

Ladislav Hagara | Komentářů: 6
15.12. 12:55 | Nová verze

Byla vydána verze 17.12.0 KDE Aplikací (KDE Applications). Přehled novinek v kompletním seznamu změn a na stránce s dalšími informacemi. Aplikace, které nebyly dosud portovány na KDE Frameworks 5, byly z KDE Aplikací odstraněny.

Ladislav Hagara | Komentářů: 46
15.12. 03:00 | Komunita

Na Humble Bundle lze získat počítačovou hru Company of Heroes 2 (Wikipedie, YouTube) běžící také v Linuxu zdarma. Speciální akce končí v sobotu v 19:00.

Ladislav Hagara | Komentářů: 0
15.12. 02:00 | Zajímavý software

Christian Kellner představil na svém blogu projekt Bolt řešící bezpečnost rozhraní Thunderbolt 3 na Linuxu. Pomocí příkazu boltctl nebo rozšíření GNOME Shellu lze komunikovat s démonem boltd a například zakázat neznámá zařízení a předejít tak útokům typu Thunderstrike nebo DMA.

Ladislav Hagara | Komentářů: 8
15.12. 01:00 | Nová verze

Po půl roce vývoje od vydání verze 11.0 byla vydána verze 11.1 svobodného softwaru pro vytváření datových úložišť na síti FreeNAS (Wikipedie). Nejnovější FreeNAS je postaven na FreeBSD 11.1. Přehled novinek v příspěvku na blogu. Zdůraznit lze zvýšení výkonu OpenZFS, počáteční podporu Dockeru nebo synchronizaci s cloudovými službami Amazon S3 (Simple Storage Services), Backblaze B2 Cloud, Google Cloud a Microsoft Azure

Ladislav Hagara | Komentářů: 0
14.12. 23:55 | Nová verze

Po dvou měsících vývoje od vydání verze 235 oznámil Lennart Poettering vydání verze 236 správce systému a služeb systemd (GitHub, NEWS).

Ladislav Hagara | Komentářů: 10
14.12. 20:00 | Nová verze Ladislav Hagara | Komentářů: 0
14.12. 19:33 | Pozvánky

Pražská Fedora 27 Release Party, oslava nedávného vydání Fedory 27, se uskuteční 19. prosince od 19:00 v prostorách společnosti Etnetera (Jankovcova 1037/49). Na programu budou přednášky o novinkách, diskuse, neřízený networking atd.

Ladislav Hagara | Komentářů: 0
14.12. 18:11 | Nová verze

Byla vydána verze 2.11.0 QEMU (Wikipedie). Přispělo 165 vývojářů. Provedeno bylo více než 2 000 commitů. Přehled úprav a nových vlastností v seznamu změn.

Ladislav Hagara | Komentářů: 0
14.12. 17:44 | Komunita

Canonical oznámil dostupnost kryptografických balíčků s certifikací FIPS 140-2 úrovně 1 pro Ubuntu 16.04 LTS pro předplatitele podpory Ubuntu Advantage Advanced. Certifikace FIPS (Federal Information Processing Standards) jsou vyžadovány (nejenom) vládními institucemi USA.

Ladislav Hagara | Komentářů: 3
Jak se vás potenciálně dotkne trend odstraňování analogového audio konektoru typu 3,5mm jack z „chytrých telefonů“?
 (8%)
 (0%)
 (1%)
 (1%)
 (76%)
 (14%)
Celkem 1003 hlasů
 Komentářů: 45, poslední 1.12. 19:00
    Rozcestník

    Dotaz: Skript spustí jen něco

    8.10. 12:56 Luky
    Skript spustí jen něco
    Přečteno: 576×
    Ahoj, chtěl bych se zeptat, proč v sh skriptu mohu spouštět příkazy jako např. mount a touch, ale cryptsetup ne? Jaký je v tom rozdíl?

    Řešení dotazu:


    Odpovědi

    8.10. 13:13 Kit | skóre: 40 | Brno
    Rozbalit Rozbalit vše Re: Skript spustí jen něco
    Možná proto, že Bash obsahuje správně nastavenou cestu v PATH, ale sh ji nastavenou nemá.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    8.10. 13:24 Luky
    Rozbalit Rozbalit vše Re: Skript spustí jen něco
    No nevím, když pustím sh skript, ve kterém mám cryptsetup ručně, spustí se...
    8.10. 13:37 Kit | skóre: 40 | Brno
    Rozbalit Rozbalit vše Re: Skript spustí jen něco
    Co takhle zkusit spustit cryptsetup ručně v sh?

    Také by se hodilo spouštět takové příkazy s absolutní cestou.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    8.10. 13:47 Luky
    Rozbalit Rozbalit vše Re: Skript spustí jen něco
    spustit ručně v sh funguje
    8.10. 13:28 Luky
    Rozbalit Rozbalit vše Re: Skript spustí jen něco
    # which cryptsetup
    /usr/sbin/cryptsetup
    
    # which touch
    /bin/touch
    
    # which mount
    /usr/bin/mount
    
    # echo $PATH
    /usr/sbin:/usr/bin:/sbin:/bin
    
    k3dAR avatar 8.10. 16:01 k3dAR | skóre: 47
    Rozbalit Rozbalit vše Re: Skript spustí jen něco
    kdyz to takto pustis v shellu, tak to neznamena ze z pozice kde poustis script (predpokladam udev pravidlo) to bude stejne...
    obecne kdyz resis ze neco se nepousti tak proste do scriptu pridej tyhle tve prikazy s presmerovanim do souboru, nech to pustit tim co se to vola a zkoukni vystupni soubory... pripadne nesrovnalosti v porovnani s vystupem prikazu v shellu te uz navedou ;)
    porad nemam telo, ale uz mam hlavu... nobody
    8.10. 13:47 petr
    Rozbalit Rozbalit vše Re: Skript spustí jen něco
    co pouzivas za shell ve svem skriptu? Na zacatku budes mit treba #!/bin/bash nebo neco jineho... Pokud ti to ve skriptu nefunguje, zkus si spustit treba ten /bin/bash a spustit to co potrebujes rucne v nem... jak jiz ti nekdo napovida, patrne nemas validni PATH... Dalsi vec ze bez nejakeho chyboveho hlaseni ti tezko nekdo pomuze kdyz nevime co se deje ve tvem skriptu, tudiz mam tady na stole takovou tu kristalovku a vestim odrazem z oblohy...
    8.10. 13:56 Luky
    Rozbalit Rozbalit vše Re: Skript spustí jen něco
    #!/bin/sh
    
    # Copyright (C) 2009 OpenWrt.org
    PRODID="1058/10b8/1012"
    
    case "$ACTION" in
        add)
            
            if [ "${PRODUCT}" = "${PRODID}" ];
             then
                 /usr/sbin/cryptsetup --key-file /etc/ssl/usbbackup_key luksOpen /dev/sdb1 backup
            fi
            ;;
    
        remove)
    
             if [ "${PRODUCT}" = "${PRODID}" ];      
              then            
                 umount /mnt/usbbackup
             fi           
    
            ;;
    esac
    Ruční spouštění cryptsetup v sh funguje.
    8.10. 14:29 Kit | skóre: 40 | Brno
    Rozbalit Rozbalit vše Re: Skript spustí jen něco
    if [ "${PRODUCT}" = "${PRODID}" ];
    Tato podmínka zřejmě nikdy není splněna.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    8.10. 14:36 Luky
    Rozbalit Rozbalit vše Re: Skript spustí jen něco
    Je, protože když vyměním příkaz cryptsetup... za touch /tmp/test a rm /tmp/test, soubor se po připojení USB disku vytvoří a po odpojení odstraní
    8.10. 16:08 NN
    Rozbalit Rozbalit vše Re: Skript spustí jen něco
    po připojení USB disku
    Kdy? Po bootu? Skript se pousti pres udev? Co znamena "nespusti se", nevytvri se mapper zarizeni? K cemu je tam ten umount?

    Mimochodem uz si se jednou ptal, priste laskave nezakladej dalsi vlakna..
    8.10. 20:07 Luky
    Rozbalit Rozbalit vše Re: Skript spustí jen něco
    Připojeni, odpojení za běhu. Skript se spouští před hotplug.d. Ne, nevytvoří. Když ho ale spustím ručně nebo s rc.local po startu, vytvoří se. Ten umount tam je proto, protože jsem tam měl ještě && mount v add části. Ptal, ale ve vlákně, kde jsem primárně řešil něco jiného a tenhle dotaz tam zřejmě zanikl, omlouvám se. Podstata dotazu je, jaký rozdíl je mezi jednotlivými příkazy.. v čem je "mount" a "touch" pro systém "víc", než cryptsetup?
    8.10. 20:15 Kit | skóre: 40 | Brno
    Rozbalit Rozbalit vše Re: Skript spustí jen něco
    Ten umount spouštíš až po vytažení flešky? To by leccos vysvětlovalo...
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    8.10. 21:49 Luky
    Rozbalit Rozbalit vše Re: Skript spustí jen něco
    No ale to, proč se nespustí příkaz cryptsetup narozdíl od touch to bohužel nevysvětluje.
    8.10. 22:15 NN
    Rozbalit Rozbalit vše Re: Skript spustí jen něco
    Jak vypada cely proces v dmesg/messages? Zkousel jsi dat pred cryptsetup nejakou prodlevu (sleep 5) a jeste by mohlo pomoct --debug ..
    8.10. 22:21 Luky
    Rozbalit Rozbalit vše Re: Skript spustí jen něco
    Sleep 10 jsem zkoušel a nepomohlo. V dmesg vidím jen nalezení nového USB disku, víc podrobností jsem bohužel nenašel. Je to openwrt, takže se to chová řekněme nestandardně:)
    9.10. 08:32 NN
    Rozbalit Rozbalit vše Re: Skript spustí jen něco
    Dej tam --debug a na konec '> ~/setup.log 2>&1 &'
    9.10. 09:23 Luky
    Rozbalit Rozbalit vše Re: Skript spustí jen něco
    Díky, mám tu nová zjištění:)
    [  282.560000] usb-storage 1-1.2:1.0: USB Mass Storage device detected
    [  282.580000] scsi host1: usb-storage 1-1.2:1.0
    [  283.580000] scsi 1:0:0:0: Direct-Access     WD       Elements 10B8    1012 PQ: 0 ANSI: 6
    [  283.590000] sd 1:0:0:0: [sdb] Spinning up disk...
    [  284.620000] .....ready
    [  288.660000] sd 1:0:0:0: [sdb] 1465081856 512-byte logical blocks: (750 GB/698 GiB)
    [  288.670000] sd 1:0:0:0: [sdb] Write Protect is off
    [  288.670000] sd 1:0:0:0: [sdb] Mode Sense: 47 00 10 08
    [  288.680000] sd 1:0:0:0: [sdb] No Caching mode page found
    [  288.680000] sd 1:0:0:0: [sdb] Assuming drive cache: write through
    [  288.710000]  sdb: sdb1
    [  288.730000] sd 1:0:0:0: [sdb] Attached SCSI disk
    /Device /dev/sdb1 doesn't exist or access denied.
    Command failed with code 15: Block device required
    # cryptsetup 1.6.7 processing "/usr/sbin/cryptsetup --debug --key-file /etc/ssl/usbbackup_key luksOpen /dev/sdb1 backup"
    # Running command open.
    # Locking memory.
    # Installing SIGINT/SIGTERM handler.
    # Unblocking interruption on signal.
    # Allocating crypt device /dev/sdb1 context.
    # Trying to open and read device /dev/sdb1 with direct-io.
    # Trying to open device /dev/sdb1 without direct-io.
    # Unlocking memory.
    Takže příkaz se spouští, omlouvám se všem za zavádějící informaci:) Ale pro změnu nerozumím tomu, jak je to možné /Device /dev/sdb1 doesn't exist or access denied.. Nepomohl ani sleep 10. Mám prodloužit interval? Přitom když USB připojím, tak ruční připojení cryptsetupem zhruba po 5 vteřinách funguje. Každopádně díky všem, že jsem se posunul dál:)
    9.10. 10:23 Luky
    Rozbalit Rozbalit vše Re: Skript spustí jen něco
    Tak jsem sleep nakonec vyšponoval až na 30 a funguje. Ale dobrý to se dá zvládnout:) Díky moc všem za pomoc.
    9.10. 11:11 Kit | skóre: 40 | Brno
    Rozbalit Rozbalit vše Re: Skript spustí jen něco
    To už zní skoro jako chyba v resolveru. Nemáš tam někde hledání IP podle domény?
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    9.10. 12:38 Luky
    Rozbalit Rozbalit vše Re: Skript spustí jen něco
    Co to s tím má (nebo by mohlo mít), prosím Tě, společnýho?
    9.10. 16:13 Kit | skóre: 40 | Brno
    Rozbalit Rozbalit vše Re: Skript spustí jen něco
    Stačí někde ve skriptu některého z démonů poslat dotaz na DNS a čekat na odpověď s chybně nakonfigurovaným resolverem. Může to být i dotaz na reverzní záznam. Zkusil bych to zopakovat s odpojenou sítí.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    9.10. 20:21 lertimir | skóre: 61 | blog: Par_slov
    Rozbalit Rozbalit vše Re: Skript spustí jen něco
    Myslím že skript spouštíš na špatném mistě. Evidentně ho spustíš ve chvíli, kdy ještě zařízení /dev/sdb1 neexistuje. Takže ho mužeš spustí něčím, co spustí triger "něco je v USB", ale zatím neproběhly akce, které dělá udev, aby /dev/sdb1 vytvořil. To jak je to se sleepama může být i to, že jsi skrip narval tak dopředu, že udev na něj třeba čeká, a teprve po nějaké timeoutu pustí akci, když je tam obrovský sleep. vžycky mi pomáhaly výpisy. dej si do skriptu výpis do syslogu před a po, nebo cyklus na existenci /dev/sdb1.
    9.10. 22:21 NN
    Rozbalit Rozbalit vše Re: Skript spustí jen něco
    Podle skriptu je to poustene na starem OpenWrt pres hotplug.d ..
    9.10. 16:24 Filip Jirsák | skóre: 67 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: Skript spustí jen něco
    sleep není dobré řešení, resp. je to poslední zoufalý pokus to nějak obejít. Protože když spustíte ten skript, evidentně nejsou splněné podmínky, které ke svému běhu potřebuje – a tím sleep jenom oddálíte spuštění požadovaného příkazu a doufáte, že se to zatím nějak samo magicky spraví. Ono se vám to teď možná samo magicky spraví, jenže když se něco magicky samo spravuje, má tendenci se to zase samo magicky rozbíjet. Takže pokud chcete dlouhodobě udržitelné řešení, měl byste zjistit, co jsou ty další podmínky, které skript ke svému běhu potřebuje, a zajistit, aby byly splněné.
    8.10. 16:53 petr
    Rozbalit Rozbalit vše Re: Skript spustí jen něco
    zadna chybova hlaska? Kdyz tam pouzijes --verbose porad nic nevidis?
    8.10. 16:04 R
    Rozbalit Rozbalit vše Re: Skript spustí jen něco
    Skontroluj navratovu hodnotu cryptsetup, pripadne jeho vystup (aj chybovy) presmeruj do nejakeho tmp suboru.
    8.10. 21:58 Kit | skóre: 40 | Brno
    Rozbalit Rozbalit vše Re: Skript spustí jen něco
    Pod kterým uživatelem se skript spouští?
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    8.10. 22:07 Luky
    Rozbalit Rozbalit vše Re: Skript spustí jen něco
    Řekl bych, že hotplug.d se spouští pod rootem, ale pro jistotu, jak to ověřím?
    8.10. 22:14 Kit | skóre: 40 | Brno
    Rozbalit Rozbalit vše Re: Skript spustí jen něco
    Například když se tam dá ten touch, tak podle vlastníka vytvořeného souboru.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    8.10. 22:23 Luky
    Rozbalit Rozbalit vše Re: Skript spustí jen něco
    super, díky.. tak je to root
    8.10. 22:04 jekub
    Rozbalit Rozbalit vše Re: Skript spustí jen něco
    jak vite, ze se prikaz nespusti?
    8.10. 22:10 Luky
    Rozbalit Rozbalit vše Re: Skript spustí jen něco
    protože se nevytvoří /dev/mapper/backup (když pustím cryptsetup skriptem nebo nechám spustit v rc.local po startu, vytvoří se)
    8.10. 22:27 jekub
    Rozbalit Rozbalit vše Re: Skript spustí jen něco
    Jenze to neznamena, ze se nespusti. Jen neudela, co potrebujete.

    Zkusil bych prikaz volani cryptsetup nahradit skriptem a logovat spusteni, volani a navratovy kod.

    8.10. 22:32 Luky
    Rozbalit Rozbalit vše Re: Skript spustí jen něco
    zkoušel jsem, jenže jediný log na openwrt se vyvolá příkazem logread (-f) a tam se žádná chyba neobjevila
    k3dAR avatar 8.10. 23:57 k3dAR | skóre: 47
    Rozbalit Rozbalit vše Re: Skript spustí jen něco
    tohle si prehlid nedopatrenim nebo umyslne aby jsi mohl trollovat? ;)
    porad nemam telo, ale uz mam hlavu... nobody
    Jendа avatar 9.10. 04:37 Jendа | skóre: 74 | blog: Výlevníček | JO70FB
    Rozbalit Rozbalit vše Re: Skript spustí jen něco
    Vytvoř skript, který spustí tvůj skript s >/tmp/a 2>/tmp/b a spouštěj ten wrapper.
    Why did the multithreaded chicken cross the road? to To other side. get the
    9.10. 10:37 Luky
    Rozbalit Rozbalit vše Re: Skript spustí jen něco
    Díky, vyřešeno, viz výše (sleep 20). A ještě bych měl jeden dotaz a nevím, jestli založit nové vlákno, tak to dám sem a budu doufat, že to tu zase nezanikne:) Stává se mi, že ten disk někdy změní název /dev/sdb1, což je blbý, protože cryprsetup s ním počítá. Jsou dvě možnosti, jak to ošetřit. První, že se budu odkazovat na UUID, ale na OpenWrt není cesta k dispozici. Druhá možnost je, že si podle zařízení bude pamatovat název. Jenže tady nejsou udev pravidla. Napadá vás, jak to vyřešit?
    9.10. 10:38 Luky
    Rozbalit Rozbalit vše Re: Skript spustí jen něco
    jen detail, sleep 30.. pardon :)
    9.10. 11:49 trubicoid2
    Rozbalit Rozbalit vše Re: Skript spustí jen něco
    co treba pustit lsscsi a z toho si vybrat?
    9.10. 18:15 Luky
    Rozbalit Rozbalit vše Re: Skript spustí jen něco
    Když bych ošetřil nějak ten luksOpen, bylo by mi v podstatě jedno, jestli se USB disk připojí jako sda nebo sdb.. Ale jak v tom skriptu nastavit proměnou k luksOpen, aby např. z blkid (mám k dispozici na openwrt) vytáhl, že patřičné uuid patří třeba k /dev/sda1 a to by vložil do příkazu za luksOpen. Lze to vůbec nebo je to úplná blbost?
    9.10. 19:36 trubicoid2
    Rozbalit Rozbalit vše Re: Skript spustí jen něco
    man blkid

    ...

    -U uuid Look up the device that uses this filesystem uuid. For more details see the -L option.
    Řešení 1× (vencour)
    k3dAR avatar 9.10. 20:21 k3dAR | skóre: 47
    Rozbalit Rozbalit vše Re: Skript spustí jen něco
    predvedeno v prikladu... nejdriv si zjistit UUID daneho LUKS oddilu a ve scriptu:
    UUID="SemNapsatRucneToUUID"
    LUKS="$(blkid -U ${UUID})"
    ...
    /usr/sbin/cryptsetup --key-file /etc/ssl/usbbackup_key luksOpen ${LUKS} backup
    ...
    
    pripadne misto nevhodneho reseni pres sleep 30, cekat ve scriptu dokud neni dostupne
    UUID="SemNapsatRucneToUUID"
    until [ $LUKS ]; do LUKS="$(blkid -U ${UUID})"; sleep 1; done
    ...
    /usr/sbin/cryptsetup --key-file /etc/ssl/usbbackup_key luksOpen ${LUKS} backup
    ...
    
    porad nemam telo, ale uz mam hlavu... nobody
    9.10. 20:50 Luky
    Rozbalit Rozbalit vše Re: Skript spustí jen něco
    Tak tohle je pomoc nad zlato.. a dokonce to i chápu:) Zítra otestuju a dám vědět. MOC DÍKY:)
    k3dAR avatar 9.10. 23:50 k3dAR | skóre: 47
    Rozbalit Rozbalit vše Re: Skript spustí jen něco
    jen pozor, to SemNapsatRucneToUUID je potreba UUID primo LUKS oddilu, tedy pred odemcenim, ve vypisu blkid je zobrazen na radku koncicim TYPE="crypto_LUKS", tedy ne aby jsi vkladal UUID jiz odemceneho, v tvem pripade ne z radku zacinajici /dev/mapper/backup ;)
    porad nemam telo, ale uz mam hlavu... nobody
    10.10. 08:23 Luky
    Rozbalit Rozbalit vše Re: Skript spustí jen něco
    jj, to jsem pochopil, díky:)
    10.10. 08:56 Luky
    Rozbalit Rozbalit vše Re: Skript spustí jen něco
    Šlape to jako víno.. ještě jednou díky (všem:). PS: To odpojování asi líp nevymyslím.

    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.