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í
×
    dnes 02:33 | Komunita

    V Amsterdamu probíhá Blender Conference 2025. Videozáznamy přednášek lze zhlédnout na YouTube. V úvodní keynote Ton Roosendaal oznámil, že k 1. lednu 2026 skončí jako chairman a CEO Blender Foundation. Tyto role převezme současný COO Blender Foundation Francesco Siddi.

    Ladislav Hagara | Komentářů: 0
    dnes 02:22 | Zajímavý článek

    The Document Foundation, organizace zastřešující projekt LibreOffice a další aktivity, zveřejnila výroční zprávu za rok 2024.

    ZCR | Komentářů: 0
    včera 17:33 | Nová verze

    Byla vydána nová stabilní verze 7.6 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 140. Přehled novinek i s náhledy v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    včera 16:22 | Nová verze

    Byla vydána verze 1.90.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání. Vyzkoušet Rust lze například na stránce Rust by Example.

    Ladislav Hagara | Komentářů: 0
    včera 16:11 | Nová verze

    GNUnet (Wikipedie) byl vydán v nové major verzi 0.25.0. Jedná se o framework pro decentralizované peer-to-peer síťování, na kterém je postavena řada aplikací.

    Ladislav Hagara | Komentářů: 0
    včera 12:11 | Nová verze

    Byla vydána nová major verze 7.0 živé linuxové distribuce Tails (The Amnesic Incognito Live System), jež klade důraz na ochranu soukromí uživatelů a anonymitu. Nově je postavena je na Debianu 13 (Trixie) a GNOME 48 (Bengaluru). Další novinky v příslušném seznamu.

    Ladislav Hagara | Komentářů: 0
    včera 04:44 | IT novinky

    Společnost Meta na dvoudenní konferenci Meta Connect 2025 představuje své novinky. První den byly představeny nové AI brýle: Ray-Ban Meta (Gen 2), sportovní Oakley Meta Vanguard a především Meta Ray-Ban Display s integrovaným displejem a EMG náramkem pro ovládání.

    Ladislav Hagara | Komentářů: 0
    včera 01:11 | Nová verze

    Po půl roce vývoje od vydání verze 48 bylo vydáno GNOME 49 s kódovým názvem Brescia (Mastodon). S přehrávačem videí Showtime místo Totemu a prohlížečem dokumentů Papers místo Evince. Podrobný přehled novinek i s náhledy v poznámkách k vydání a v novinkách pro vývojáře.

    Ladislav Hagara | Komentářů: 11
    17.9. 16:22 | Nová verze

    Open source softwarový stack ROCm (Wikipedie) pro vývoj AI a HPC na GPU od AMD byl vydán ve verzi 7.0.0. Přidána byla podpora AMD Instinct MI355X a MI350X.

    Ladislav Hagara | Komentářů: 0
    17.9. 15:22 | Nová verze

    Byla vydána nová verze 258 správce systému a služeb systemd (GitHub).

    Ladislav Hagara | Komentářů: 6
    Jaké řešení používáte k vývoji / práci?
     (39%)
     (55%)
     (6%)
     (9%)
     (12%)
     (9%)
     (12%)
     (9%)
     (15%)
    Celkem 33 hlasů
     Komentářů: 5, poslední včera 22:30
    Rozcestník

    Dotaz: sudo sudo

    29.10.2005 09:20 Tomáš | skóre: 25 | Ústí nad Labem
    sudo sudo
    Přečteno: 512×
    Mám takovýto problém:

    Dejme tomu, že aplikace, které mohou konat svou činnost jen pod rootem můžem rozdělit do dvou skupin: ty, co se spustí, ale něco na nás zařvou (např. apt-get) a druhé, tedy ty, které můžem se pokusit spustit leda absolutní cestou (tedy pokud nejsme v jejich složce.

    Př. 1.:
    
    user@machine:~$ apt-get ckeck
    E: Nešlo otevřít zámkový soubor /var/lib/dpkg/lock - open (13 Přístup odmítnut)
    E: Unable to lock the administration directory (/var/lib/dpkg/), are you root?             
    
    Př. 2a:
    
    user@machine:~$ fdisk
    bash: fdisk: command not found
    
    Př. 2b:
    
    user@machine:~$ /sbin/fdisk
    
    Usage: fdisk [-l] [-b SSZ] [-u] device
    E.g.: fdisk /dev/hda  (for the first IDE disk)
      or: fdisk /dev/sdc  (for the third SCSI disk)
      or: fdisk /dev/eda  (for the first PS/2 ESDI drive)
      or: fdisk /dev/rd/c0d0  or: fdisk /dev/ida/c0d0  (for RAID devices)
      ...
    
    Pokud zkusíme spustit 1. typ aplikace se sudo:
    
    user@machine:~$ sudo apt-get check
    Čtu seznamy balíků... Hotovo
    Vytvářím strom závislostí... Hotovo
    
    Vše je v pořádku, aplikace se spustí tak, jak má. Pokud však 2. typ:
    
    user@machine:~$ sudo fdisk
    sudo: fdisk: command not found
    
    Výsledek je, že aplikace nebyla nalazene (jakoby k ní neznal cestu). Řešením je:
    
    user@machine:~$ sudo sudo fdisk
    
    Usage: fdisk [-l] [-b SSZ] [-u] device
    E.g.: fdisk /dev/hda  (for the first IDE disk)
      or: fdisk /dev/sdc  (for the third SCSI disk)
      ...
    
    Aplikace se normálně spustí. Domníval jsem se, že za to mohou PATH, příliš moudrý z toho však nejsem:
    
    user@machine:~$ echo $PATH
    /usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin:/usr/games
    user@machine:~$ sudo echo $PATH
    /usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin:/usr/games
    user@machine:~$ sudo sudo echo $PATH
    /usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin:/usr/games
    user@machine:~$ su
    Password:
    machine:/home/user# echo $PATH
    /sbin:/bin:/usr/sbin:/usr/bin:/usr/bin/X11:/usr/local/sbin:/usr/local/bin
    
    Sudo mám vyřešené tak, že v /etc/sudoers mám:
    
    root    ALL=(ALL) ALL
    %sudo   ALL=(ALL) ALL
    

    V systému je skupina sudo, takže její člen by neměl mít problém sudo používat. Skupina se vytvořila sama a např. dle tohoto threadu je její účel právě tento (tedy členové skupiny sudo mohou používat sudo).

    Prosím tedy poraďte, co mám dělat, aby sudo šlo používat normálně a skupinu sudo bych i nadále používal rád.

    Všem zůčastněním předem díky moc!

    Odpovědi

    29.10.2005 22:30 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: sudo sudo
    Především neexistují žádné aplikace prvního a druhého typu, existují jen adresáře, které máte v cestě, a adresáře, které tam nemáte.

    tedy pokud nejsme v jejich složce

    (terminologická poznámka: žádné složky, adresář se tomu říká) Vy máte tečku v cestě? To není dobrý nápad, ve vlastním zájmu pryč s ní.

    user@machine:~$ echo $PATH
    /usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin:/usr/games
    user@machine:~$ sudo echo $PATH
    /usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin:/usr/games
    user@machine:~$ sudo sudo echo $PATH
    /usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin:/usr/games
    
    Špatný přístup. Tohle nevypovídá naprosto o ničem, protože ve všech třech případech expanduje $PATH tentýž shell: ten, kterému to píšete.

    Mám-li vám poradit podle svého nejlepšího vědomí a svědomí, zapomeňte na černou magii s (ne)děděním proměnné PATH a pište

      sudo /sbin/fdisk
    
    Pokud to chcete pohodlněji, udělejte si alias:
      alias fdisk='/usr/bin/sudo /sbin/fdisk'
    
    30.10.2005 10:20 Tomáš | skóre: 25 | Ústí nad Labem
    Rozbalit Rozbalit vše Re: sudo sudo
    Především neexistují žádné aplikace...
    Vím, že ne. Jen jsem chtěl naznačit, že určité fungují a jiné ne.
    tedy pokud nejsme v jejich složce
    To sem trochu ulít, to by platilo jen s ./
    ...pište sudo /sbin/fdisk...
    Ale to není vůbec žádné řešení, to bych takhle musel psát pomalu každý druhý příkaz! To samé s tím aliasem, to bych musel udělat aliasy na kde co, to je naprosto nesystémové řešení.
    Josef Kufner avatar 30.10.2005 10:50 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: sudo sudo
    Aliasy si uděláš jen na ten jeden nebo dva programy, které používáš často. Zrovna fdisk se používá většinou jen jednou za život počítače/disku. Já takle pomocí sudo a aliasu mám jen aptitude, ifup, ifdown a hibernate.
    Hello world ! Segmentation fault (core dumped)
    30.10.2005 11:13 Tomáš | skóre: 25 | Ústí nad Labem
    Rozbalit Rozbalit vše Re: sudo sudo

    Jenomže těch příkazů, kdy musím psát sudo sudo příkaz je celkem dost: adduser, deluser, visudo, ntpdate, ifconfig, ...

    Řekl bych, že to bude rozdíl těchto dvou hodnot:

    
    user@machine:~$[TAB][TAB]
    Display all 1924 possibilities? (y or n)
    user@machine:~$ su
    Password:
    machine:/home/user#[TAB][TAB]
    Display all 2205 possibilities? (y or n)
    machine:/home/user#  
    

    Pokud to vyřeším tak, že v /etc/sudoers budu mít místo:

    %sudo   ALL=(ALL) ALL
    jen:
    user1   ALL=(ALL) ALL
    user2   ALL=(ALL) ALL
    user2   ALL=(ALL) ALL

    Tak to jde, ale když už skupina sudo v Debianu (Sarge) je, řekl bych, že by měla fungovat...

    30.10.2005 11:23 Tomáš | skóre: 25 | Ústí nad Labem
    Rozbalit Rozbalit vše Re: sudo sudo
    *user3 atd.
    30.10.2005 11:28 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: sudo sudo
    No pokud hodláte systém používat takovýmto způsobem, tak si prostě /sbin a /usr/sbin přidejte do cesty a bude vymalováno…
    30.10.2005 11:37 Tomáš | skóre: 25 | Ústí nad Labem
    Rozbalit Rozbalit vše Re: sudo sudo
    Nj. ale když jsem k tomu účelu používal mnou vytvořenou skupinu users, fše bylo OK. Když jsem narazil na skupinu sudo a řekl jsem si, že od toho tam asi je, tak asi jen u ní to nefunguje tak, jak má.
    … přidejte do cesty a bude vymalováno
    a lze to přidat všem ve skupině sudo?
    30.10.2005 11:05 #Tom
    Rozbalit Rozbalit vše Re: sudo sudo
    Na všechny uvedené věci je sudo zbytečný luxus, lepší je přihlásit se jako root. Sudo je dobré třeba na to, aby některé věci mohl uživatel udělat pouze u počítače a ne na dálku - třeba vypnutí počítače.
    30.10.2005 11:20 Tomáš | skóre: 25 | Ústí nad Labem
    Rozbalit Rozbalit vše Re: sudo sudo
    A s tím já zase vůbec nesouhlasím - potřebuju udělat v ten moment jeden příkaz jako root, tak ho udělám. Je zbytečný běžet pod su a pak psát exit, když si člověk vzpomene. Když to není nutné, neběžet jako root.
    30.10.2005 11:29 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: sudo sudo
    a pak psát exit

    Ctrl-D :-)

    David Watzke avatar 30.10.2005 13:25 David Watzke | skóre: 74 | blog: Blog... | Praha
    Rozbalit Rozbalit vše Re: sudo sudo
    Taky nemusíš mít otevřenou jen jednu konzoli ne? Já používám YaKuake a tam mám otevřených hafo tabů a to jak rootích, tak svých.
    “Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
    30.10.2005 11:32 Tomáš | skóre: 25 | Ústí nad Labem
    Rozbalit Rozbalit vše Re: sudo sudo
    Resp. aby to nevyznělo nějak špatně - máte pravdu, je to k také k tomu vhodné. Jenže když musím psát sudo sudo, beru to jako chybu.
    Josef Kufner avatar 30.10.2005 11:36 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: sudo sudo
    Nemusíš psát sudo dvakrát.
    Hello world ! Segmentation fault (core dumped)
    30.10.2005 11:42 Tomáš | skóre: 25 | Ústí nad Labem
    Rozbalit Rozbalit vše Re: sudo sudo
    Jakto?
    
    user@machine:~$ sudo fdisk
    sudo: fdisk: command not found
    user@machine:~$ sudo sudo fdisk
    
    Usage: fdisk [-l] [-b SSZ] [-u] device
    E.g.: fdisk /dev/hda  (for the first IDE disk)
      or: fdisk /dev/sdc  (for the third SCSI disk)
      ...
    
    30.10.2005 11:56 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: sudo sudo
    Ale to, že vám taková šílenost čirou náhodou funguje, vůbec neznamená, že to tak musíte dělat. Dozvěděl jste se tady nejméně tři způsoby, jak to zařídit jinak (a rozumněji (a spolehlivěji)).
    30.10.2005 11:37 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: sudo sudo
    Né-mů-sí-té :-) Nastavte si cestu, udělejte si symlink, udělejte si alias, možností jsou spousty. Jen, prosím vás, netvrďte, že musíte používat něco tak perverzního. Není to pravda. Mimochodem, námět k zamyšlení: je opravdu jednodušší napsat 'sudo sudo fdisk' než 'sudo /sbin/fdisk'? Mně to tak nepřipadá…
    30.10.2005 11:44 Tomáš | skóre: 25 | Ústí nad Labem
    Rozbalit Rozbalit vše Re: sudo sudo
    A není nejlepší, aby to fungovalo jak má a stačilo napsat jen sudo fdisk? A např. se skupinou users to šlo OK a se skupinou sudo už tomu tak není, proč? Je to tedy BUG?
    30.10.2005 11:54 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: sudo sudo
    Ale ono to funguje "jak má", jen vy máte trochu divné představy o tom, jak to má fungovat. Napíšete-li jméno programu bez cesty (absolutní nebo relativní), prohledají se adresáře, které jsou uvedeny v proměnné PATH. Tak to funguje vždy a všude, to není žádný bug.

    Existuje aforismus, vysvětlující naprosto přesně váš problém: "Počítač nedělá to, co po něm chcete, ale to, o co ho požádáte."

    30.10.2005 12:24 Tomáš | skóre: 25 | Ústí nad Labem
    Rozbalit Rozbalit vše Re: sudo sudo
    Budu se opakovat:
    ... když jsem k tomu účelu používal mnou vytvořenou skupinu users, vše bylo OK. Když jsem narazil na skupinu sudo a řekl jsem si, že od toho tam asi je, tak asi jen u ní to nefunguje tak, jak má.
    Josef Kufner avatar 30.10.2005 12:29 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: sudo sudo
    Tak se podívej na konfiguraci sudo a hledej co se děje se skupinou tou a tou druhou....
    Hello world ! Segmentation fault (core dumped)
    30.10.2005 12:43 Tomáš | skóre: 25 | Ústí nad Labem
    Rozbalit Rozbalit vše Re: sudo sudo
    Konečně někdo schopný pochopit a i něco poradit! Kdybych však věděl, co mám dělat, nejspíš bych tady ani nepsal. Něco však zkusím, ale příliš si od toho neslibuji...
    30.10.2005 13:20 Tomáš | skóre: 25 | Ústí nad Labem
    Rozbalit Rozbalit vše Re: sudo sudo

    Tady aspoň pro nevěřící Tomáše:

    /etc/sudoers:

    
    Defaults targetpw
    %sudo   ALL=(ALL) ALL
    
    
    user@machine:~$ groups
    dialout cdrom floppy sudo audio dip video plugdev webmasters
    user@machine:~$ sudo fdisk
    sudo: fdisk: command not found
    user@machine:~$ sudo sudo fdisk
    
    Usage: fdisk [-l] [-b SSZ] [-u] device
    E.g.: fdisk /dev/hda  (for the first IDE disk)
      or: fdisk /dev/sdc  (for the third SCSI disk)
      or: fdisk /dev/eda  (for the first PS/2 ESDI drive)
      or: fdisk /dev/rd/c0d0  or: fdisk /dev/ida/c0d0  (for RAID devices)
      ...
    

    Nyní vymazání se ze skupiny sudo, zapsání se do users, úprava /etc/sudoers na:

    
    Defaults targetpw
    %users  ALL=(ALL) ALL
    

    A po rebootu:

    
    user@machine:~$ groups
    dialout cdrom floppy audio dip video plugdev users webmasters
    user@machine:~$ sudo fdisk
    
    Usage: fdisk [-l] [-b SSZ] [-u] device
    E.g.: fdisk /dev/hda  (for the first IDE disk)
      or: fdisk /dev/sdc  (for the third SCSI disk)
      or: fdisk /dev/eda  (for the first PS/2 ESDI drive)
      or: fdisk /dev/rd/c0d0  or: fdisk /dev/ida/c0d0  (for RAID devices)
      ...
    
    

    Proč tedy se skupinou users narozdíl od skupiny sudo to jde?

    30.10.2005 12:32 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: sudo sudo
    Co to pořád je to vaše "používal skupinu users" nebo "používal skupinu sudo"? Podstatné je, jak (a podle čeho) se nastaví proměnná PATH tomu příkazu. Nic víc a nic míň. Tak se podívejte, co se píše o předávání environmentu v dokumentaci k shellu a k příkazu sudo.

    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.