Jak spustit programy jako root

Dědek

Jak spustit programy jako root
« kdy: 06. 05. 2016, 15:25:47 »
Dobrý den, nainstaloval jsem na dvě PC Linux mint, na jeden Cinnamon a na druhý Mate. Nevím ale pro který co patři když chci spustit aplikaci jako root.
Našel jsem, že se používá su, sudo, gksu, gksudo, kdesu, kdesudo. Nejsem z toho vůbec moudrý :( Pomůže mi prosím někdo? Děkuji


Re:Jak spustit programy jako root
« Odpověď #1 kdy: 06. 05. 2016, 16:04:12 »
je potřeba trochu použít Google. Pro tebe bude platit sudo pro příkaz do terminálu jako root a gksudo pro grafickou aplikaci.

nobody(ten pravej)

Re:Jak spustit programy jako root
« Odpověď #2 kdy: 06. 05. 2016, 17:21:02 »
kdesu & kdesude je pak nativni pro prostredi KDE... a pak tu mame nove take pxexec, protoze gksu balik ani v novejch distrech casto neni defaultne nainstalovan a pkexec pouziva overovani PoliceKit, narozdil od sudo/*sudo ktere pouziva overovani suoders...

iviak

Re:Jak spustit programy jako root
« Odpověď #3 kdy: 06. 05. 2016, 18:07:24 »
otvoríš terminál (príkazový riadok) a napíšeš:

"sudo nazovprogramu"

bez úvodzoviek samozrejme, vypýta si to root heslo a následne spustí program. S ostatnými programami som nemal tú česť (kdesu a tak) som hlavne terminálový.



6

Re:Jak spustit programy jako root
« Odpověď #4 kdy: 07. 05. 2016, 12:06:02 »
Ne, neptá se to na heslo roota, nýbrž na heslo aktuálního uživatele; tento musí být samozřejmě uveden v /etc/sudoers.


Re:Jak spustit programy jako root
« Odpověď #5 kdy: 07. 05. 2016, 13:22:05 »
kde* a gk* jsou grafické utility (pro KDE resp. Gnome), které dělají to samé, jako jejich ekvivalenty pro příkazový řádek – tedy třeba kdesu dělá to samé pod KDE, jako su v příkazovém řádku.

su změní aktuálního uživatele. Když neurčíte jméno uživatele, použije se root. A pokud jako parametr zadáte pomlčku, nastaví se prostředí stejně, jako kdybyste se na toho uživatele přímo přihlásil. Takže když provedete příkaz su - v terminálu, budete po jeho úspěšném provedení v shellu roota stejně, jako kdybyste se na roota přímo přihlásil. su se vás samozřejmě zeptá na heslo roota, a někdy také bývá omezené, že su na roota mohou provést pouze uživatelé nějaké skupiny. Root může udělat su na kteréhokoli uživatele a nepotřebuje znát jeho heslo. Mnemotechnická pomůcka: někdo tvrdí, že autorem su je Moravák, a pojmenoval to utilitu ve svém nářečí. Takže když chcete počítači říci, že od teď jste root – jsem root, musíte použít moravské nářečí – su root.

Příkaz sudo proveden jeden zadaný příkaz jako jiný uživatel (je to složení su a do – „udělej“). Nemůžete takhle provést libovolný příkaz, který vás napadne – v souboru sudoers je nakonfigurováno, který uživatel může přes sudo spouštět které příkazy. Zároveň tam je nakonfigurováno, zda pro ten který příkaz bude vyžadováno heslo uživatele, který spouští sudo (takže někdo může spustit příkaz pod rootem, i když nezná jeho heslo – ale musí zadat své heslo, aby si uvědomil, že dělá něco potenciálně nebezpečného), nebo že ten příkaz může spustit úplně bez hesla.

Pokud není povoleno udělat su na roota, bývá obvykle nakonfigurováno, že někteří uživatelé mohou spustit su - přes sudo. Má to takhle třeba Ubuntu, takže tam se na roota trvale přepnete příkazem sudo su -.

Rozdíl je tedy ten, že se su musíte znát heslo cílového uživatele (pokud už nejste root), ale pak můžete pod cílovým uživatelem dělat cokoli. sudo může být nakonfigurované tak, že heslo cílového uživatele znát nemusíte, ale zase můžete provádět jenom přesně dané příkazy.

superrr

Re:Jak spustit programy jako root
« Odpověď #6 kdy: 07. 05. 2016, 13:34:21 »
nebo taky

su -c'echo 12345' root

samozrejme chce heslo roota

gotcha

Re:Jak spustit programy jako root
« Odpověď #7 kdy: 07. 05. 2016, 14:22:31 »
kde* a gk* jsou grafické utility (pro KDE resp. Gnome), které dělají to samé, jako jejich ekvivalenty pro příkazový řádek – tedy třeba kdesu dělá to samé pod KDE, jako su v příkazovém řádku.

su změní aktuálního uživatele. Když neurčíte jméno uživatele, použije se root. A pokud jako parametr zadáte pomlčku, nastaví se prostředí stejně, jako kdybyste se na toho uživatele přímo přihlásil. Takže když provedete příkaz su - v terminálu, budete po jeho úspěšném provedení v shellu roota stejně, jako kdybyste se na roota přímo přihlásil. su se vás samozřejmě zeptá na heslo roota, a někdy také bývá omezené, že su na roota mohou provést pouze uživatelé nějaké skupiny. Root může udělat su na kteréhokoli uživatele a nepotřebuje znát jeho heslo. Mnemotechnická pomůcka: někdo tvrdí, že autorem su je Moravák, a pojmenoval to utilitu ve svém nářečí. Takže když chcete počítači říci, že od teď jste root – jsem root, musíte použít moravské nářečí – su root.

Příkaz sudo proveden jeden zadaný příkaz jako jiný uživatel (je to složení su a do – „udělej“). Nemůžete takhle provést libovolný příkaz, který vás napadne – v souboru sudoers je nakonfigurováno, který uživatel může přes sudo spouštět které příkazy. Zároveň tam je nakonfigurováno, zda pro ten který příkaz bude vyžadováno heslo uživatele, který spouští sudo (takže někdo může spustit příkaz pod rootem, i když nezná jeho heslo – ale musí zadat své heslo, aby si uvědomil, že dělá něco potenciálně nebezpečného), nebo že ten příkaz může spustit úplně bez hesla.

Pokud není povoleno udělat su na roota, bývá obvykle nakonfigurováno, že někteří uživatelé mohou spustit su - přes sudo. Má to takhle třeba Ubuntu, takže tam se na roota trvale přepnete příkazem sudo su -.

Rozdíl je tedy ten, že se su musíte znát heslo cílového uživatele (pokud už nejste root), ale pak můžete pod cílovým uživatelem dělat cokoli. sudo může být nakonfigurované tak, že heslo cílového uživatele znát nemusíte, ale zase můžete provádět jenom přesně dané příkazy.
Na su je treba poznat cielove heslo alebo byt root. Vyhoda su je, ze funguje bez konfiguracie a je uplne jednoduche.
Pri sudo sa da pri kazdom prikaze nastavit, ci treba poznat svoje heslo, heslo cieloveho uzivatela, root heslo alebo netreba poznat nic.

Spustit su - cez sudo je zbytocne narocne. To podla nastavenia ako prve pusti sudo. To overi cieloveho uzivatela pre prikaz su -, potom overi, ci ma uzivatel pristup, pripadne sa ho opyta na heslo. Nakoniec pusti su -, ktore najskor overi, ci je uzivatel root - ak este nie je, tak si vypyta heslo roota a potom sa pokusi pustit root login shell.
Na login shell uz je prikaz sudo -i, ktory je este kratsi. Ja ale typicky nechcem login shell roota s nejakym exotickym shellom ako csh a rootovym .profile, preto pouzijem sudo -s, ktore mi spusti moj shell pod rootom, pripadne este castejsie sudo -u cielovyuzivatel -s.

nebo taky

su -c'echo 12345' root

samozrejme chce heslo roota
root sa pisat nemusi. Okrem toho pozor na escapeovanie, ten prikazovy riadok sa raz interpretuje v aktualnom shelli (tomu v tomto pripade zabrania apostrofy) a druhykrat v cielovom, co uz tieto apostrofy neosetruju.

ByCzech

  • *****
  • 1 870
    • Zobrazit profil
    • E-mail
Re:Jak spustit programy jako root
« Odpověď #8 kdy: 09. 05. 2016, 03:35:46 »
kde* a gk* jsou grafické utility (pro KDE resp. Gnome), které dělají to samé, jako jejich ekvivalenty pro příkazový řádek – tedy třeba kdesu dělá to samé pod KDE, jako su v příkazovém řádku.

Zrovna u kdesu to není přesné, dá se jednoduše nastavit aby fungovalo jako sudo, stačí do jejího konfigu dát:

[super-user-command]
super-user-command=sudo