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í
×
    dnes 13:33 | IT novinky

    Před 25 lety, ve čtvrtek 29. dubna 1999, byla spuštěna služba "Úschovna".

    Ladislav Hagara | Komentářů: 0
    dnes 01:00 | Nová verze

    Byla vydána nová verze 24.04.28 s kódovým názvem Time After Time svobodného multiplatformního video editoru Shotcut (Wikipedie) a nová verze 7.24.0 souvisejícího frameworku MLT Multimedia Framework. Nejnovější Shotcut je vedle zdrojových kódů k dispozici také ve formátech AppImage, Flatpak a Snap.

    Ladislav Hagara | Komentářů: 0
    včera 16:33 | Nová verze Ladislav Hagara | Komentářů: 0
    včera 03:22 | Zajímavý článek

    V aktuálním příspěvku na blogu počítačové hry Factorio (Wikipedie) se vývojář s přezývkou raiguard rozepsal o podpoře Linuxu. Rozebírá problémy a výzvy jako přechod linuxových distribucí z X11 na Wayland, dekorace oken na straně klienta a GNOME, změna velikosti okna ve správci oken Sway, …

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

    Rakudo (Wikipedie), tj. překladač programovacího jazyka Raku (Wikipedie), byl vydán ve verzi #171 (2024.04). Programovací jazyk Raku byl dříve znám pod názvem Perl 6.

    Ladislav Hagara | Komentářů: 6
    27.4. 17:44 | Nová verze

    Společnost Epic Games vydala verzi 5.4 svého proprietárního multiplatformního herního enginu Unreal Engine (Wikipedie). Podrobný přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    26.4. 17:11 | Nová verze

    Byl vydán Nextcloud Hub 8. Představení novinek tohoto open source cloudového řešení také na YouTube. Vypíchnout lze Nextcloud AI Assistant 2.0.

    Ladislav Hagara | Komentářů: 12
    26.4. 13:33 | Nová verze

    Vyšlo Pharo 12.0, programovací jazyk a vývojové prostředí s řadou pokročilých vlastností. Krom tradiční nadílky oprav přináší nový systém správy ladících bodů, nový způsob definice tříd, prostor pro objekty, které nemusí procházet GC a mnoho dalšího.

    Pavel Křivánek | Komentářů: 9
    26.4. 04:55 | Zajímavý software

    Microsoft zveřejnil na GitHubu zdrojové kódy MS-DOSu 4.0 pod licencí MIT. Ve stejném repozitáři se nacházejí i před lety zveřejněné zdrojové k kódy MS-DOSu 1.25 a 2.0.

    Ladislav Hagara | Komentářů: 47
    25.4. 17:33 | Nová verze

    Canonical vydal (email, blog, YouTube) Ubuntu 24.04 LTS Noble Numbat. Přehled novinek v poznámkách k vydání a také příspěvcích na blogu: novinky v desktopu a novinky v bezpečnosti. Vydány byly také oficiální deriváty Edubuntu, Kubuntu, Lubuntu, Ubuntu Budgie, Ubuntu Cinnamon, Ubuntu Kylin, Ubuntu MATE, Ubuntu Studio, Ubuntu Unity a Xubuntu. Jedná se o 10. LTS verzi.

    Ladislav Hagara | Komentářů: 14
    KDE Plasma 6
     (75%)
     (8%)
     (2%)
     (15%)
    Celkem 880 hlasů
     Komentářů: 4, poslední 6.4. 15:51
    Rozcestník

    Dotaz: sudo sudo

    29.10.2005 09:20 Tomáš | skóre: 25 | Ústí nad Labem
    sudo sudo
    Přečteno: 480×
    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: 72 | 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: 72 | 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: 72 | 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: 72 | 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: 72 | 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: 72 | 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: 72 | 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.