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 19:55 | Zajímavý software

    Uživatelé mobilních telefonů s Linuxem si nyní mohou nainstalovat aplikaci Mobilní Datovka. Díky tomu je přístup k datovým schránkám dostupný i na zařízeních s mobilními linuxovými distribucemi, jako jsou například Mobian, NixOS Mobile, pmOS atd. Aplikace je dostupná na Flathubu.

    David Heidelberg | Komentářů: 0
    včera 13:33 | Komunita

    Software Freedom Conservancy v novém dokumentu shrnuje doporučení, jak přistupovat ke generativní AI založené na LLM při přispívání do svobodného a open-source softwaru. Mimo jiné vyzývá k obezřetnosti, transparentnosti a revizi generovaného kódu člověkem.

    |🇵🇸 | Komentářů: 0
    včera 13:22 | Nová verze

    Byla vydána nová verze 5.6.0 programu na úpravu digitálních fotografií darktable (Wikipedie).

    Ladislav Hagara | Komentářů: 0
    20.6. 20:11 | Komunita

    Na čem aktuálně pracují vývojáři GNOME a KDE Plasma? Pravidelný přehled novinek v Týden v GNOME a Týden v KDE Plasma. V Týdnu v GNOME je zmíněn flatpak balíček pro GIMP 0.54.1 z roku 1996. Jedná se o poslední verzi GIMPu postavenou nad toolkitem Motif.

    Ladislav Hagara | Komentářů: 0
    20.6. 19:11 | Nová verze

    Home Assistant Operating System, tj. linuxová distribuce optimalizována pro hostování Home Assistanta a jeho aplikací, byl vydán v nové major verzi 18.0.

    Ladislav Hagara | Komentářů: 0
    20.6. 18:11 | Komunita

    Po šestiletém úsilí byla z jádra Linux odstraněna funkce strncpy(). Všechna předchozí volání této funkce byla převedena na bezpečnější alternativy.

    Ladislav Hagara | Komentářů: 1
    20.6. 17:22 | Nová verze

    Byla vydána nová verze 261 správce systému a služeb systemd (Wikipedie, GitHub). Z novinek lze vypíchnout nový subsystém IMDS (Cloud "Instance Metadata Service"), nový příkaz storagectl nebo novou komponentu systemd-sysinstall.

    Ladislav Hagara | Komentářů: 3
    20.6. 12:00 | Nová verze

    Vývojové prostředí Qt Creator bylo vydáno ve verzi 20 (seznam změn). Novinky zahrnují hlavně rozšíření pro integraci LLM agentů nebo minimalistický editační režim uživatelského rozhraní („zen mode“).

    |🇵🇸 | Komentářů: 0
    19.6. 10:22 | Humor

    Už jste se prolétli na webu Google Earth? Přibyl tam Simulátor letu (Nástroje / Simulátor letu). Funguje i bez účtu Google [𝕏].

    Ladislav Hagara | Komentářů: 0
    19.6. 09:55 | Nová verze

    Byla vydána nová verze 4.7 (𝕏, Bluesky, Mastodon) multiplatformního open source herního enginu Godot (Wikipedie, GitHub). Přehled novinek i s náhledy v příspěvku na blogu.

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


    Dotaz: BASH - smyčka se dvěmi proměnnými

    30.1.2013 13:51 Tjunikov
    BASH - smyčka se dvěmi proměnnými
    Přečteno: 335×
    Hezký den, omlouvám se předem za zřejmě banální dotaz, ale už několik dní přeinstalovávám server a hlava mi už nebere. Mám prosbu, zda by mi někdo zběhlý v bashi nemohl poradit s jednoduchým skriptíkem. Potřebuji hromadně změnit UID v domovských adresářích. Příkaz by vypadal takto:

    chown -R $UID:513 /home/$USER

    Proměnné UID a USER by se nacházely ve dvou samostatných text. souborech seřazeny pochopitelně tak, aby pořadí UID v jednom souboru odpovídalo pořadí USER v druhém - aby se to správně ve smyčce přiřazovalo.

    S jednou proměnnou nemám problém, ale s dvěma nevím a už nemám sílu hledat. Prosím, prosím - už jsem skoro ve finále, ještě tohle musím dodělat (změnila se mi UID uživateů - 370 ks)

    Řešení dotazu:


    Odpovědi

    Tarmaq avatar 30.1.2013 14:18 Tarmaq | skóre: 39
    Rozbalit Rozbalit vše Re: BASH - smyčka se dvěmi proměnnými
    paste users uids | awk '{system("chown -R "$2":513 /home/"$1)}'
    
    (users je cesta k souboru s uzivateli, uids je cesta k souboru s UID)
    Don't panic!
    30.1.2013 14:24 Tjunikov
    Rozbalit Rozbalit vše Re: BASH - smyčka se dvěmi proměnnými
    Sice vůbec nechápu jak, ale funguje to naprosto perfektně :-D Opravdu moc děkuji - snad už to zítra všechno poběží, nebo mě sežerou :-) Tj.
    30.1.2013 15:56 NN
    Rozbalit Rozbalit vše Re: BASH - smyčka se dvěmi proměnnými
    Jenom rada do budoucna "kdyz nevim co to dela, tak to zasadne nepoustim" ..
    rADOn avatar 30.1.2013 17:23 rADOn | skóre: 44 | blog: bloK | Praha
    Rozbalit Rozbalit vše Re: BASH - smyčka se dvěmi proměnnými
    Kazisvete, ted jsi nam zkazil oblibeny rm -rf vtip :-)
    "2^24 comments ought to be enough for anyone" -- CmdrTaco
    30.1.2013 14:34 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: BASH - smyčka se dvěmi proměnnými

    Jen poznámka: pokud je teď už databáze v pořádku, nebylo by jednodušší nekomplikovat si zbytečně život a použít rovnou

      while read name; do chown -R $name:513 /home/$name; done <users
    

    Mimochodem, usermod by se o to podle manuálové stránky měl postarat automaticky.

    30.1.2013 15:29 Tjunikov
    Rozbalit Rozbalit vše Re: BASH - smyčka se dvěmi proměnnými
    On je momentální stav tento:

    Server Samba PDC s ověřováním přes LDAP, uživatelé se přihlašují jak z Linux tak Windows PC.

    Po havárii disku a několika marných pokusech nová instalace serveru. Mám zálohy LDAP v ldif, ale zaboha tam nejdou dostat zpět. Takže jsem se rozhodl vytvořit uživatele znovu s tímto postupem:

    Uložím uživatelská jména do souboru výčtem z /home (ls /home > users), skriptem je přes smbldap-useradd vytvořím účty a nastavím jednotné heslo, z ldap vyexportuji jména a uid -> vytvořím z toho dva soubory a výše uvedeným skriptem změním UID /home adresářů, která teď pochopitelně nesedí (home jsou na diskovém poli netknuté) Přijde mi to momentálně nejrychlejší, protože už jsem v časové tísni a já nejsem zase takový guru - ale určitě existuje i jiné řešení. Děkuji za další nápad, ale už asi zůstanu u toho prvního. Jistě by šlo asi vyexportovat z LDAP záloh jména i uid a nové uživatele vytvářet s nastavením starého uid, ale už se mi nechce si s tím moc hrát - aspoň ten LDAP strom "vyčistím", už v tom byl stejně bordel. :-)
    30.1.2013 15:53 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: BASH - smyčka se dvěmi proměnnými
    První část mého komentáře upozorňovala jen na to, že si nemusíte komplikovat život dvěma soubory, protože příkazu chown můžete místo UID dát jako argument i jméno, on si to přeloží sám.
    31.1.2013 05:44 Ash | skóre: 53
    Rozbalit Rozbalit vše Re: BASH - smyčka se dvěmi proměnnými
    Michal neříkal, že máte nastavovat novým uživatelům staré uid, abyste nemusel měnit home.

    Naopak, navrhl způsob, jak starým home adresářům uživatelů nastavit nové uid bez rizika chyby, že se vám ta číselná uid která máte v odděleném souboru od jmen nějak pomotají. Tedy totéž, o co usilujete, akorát bez práce.
    31.1.2013 05:46 Ash | skóre: 53
    Rozbalit Rozbalit vše Re: BASH - smyčka se dvěmi proměnnými
    V podstatě se jedná o paste users uids | awk '{system("chown -R "$1":513 /home/"$1)}' máte pak jistotu, že všem uživatelům opravdu patří soubory v jejich home a soubor uids tam je jen pro zmatení nepřítele :)
    31.1.2013 05:50 Tjunikov
    Rozbalit Rozbalit vše Re: BASH - smyčka se dvěmi proměnnými
    Aha, díky. Jak jsem říkal, nejsem žádný guru a z bashe znám jen základy - proto jsem to hned nepochopil. Díky - vyzkouším to u těch dalších userů, zatím jsem zavedl jen účty učitelů, studenty si nechám na víkend. Ještě jednou všem moc děkuji. Tj.

    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.