Ubuntu Suomen keskustelualueet
Muut alueet => Muut käyttöjärjestelmät ja Linux-jakelut => Aiheen aloitti: teele - 07.05.15 - klo:10.23
-
Yrittäisin kokeilla Debiania, mutta miten se pitäisi asentaa, että sen sudo-käytäntö olisi samanlainen kuin Ubuntussa, johon tässä on jo ehtinyt tottua.
Tarvitaanko erillinen pääkäyttäjä ja sen salasana?
Mitä vähemmän joudun muokkailemaan sudoers ym. -tiedostoja, sitä paremmat ovat mahdollisuuteni saada järjestelmä toimimaan.
-
Asennuksessa voi jättää rootin salasanan tyhjäksi, jolloin root-käyttäjää ei luoda, ja ensimmäinen käyttäjä saa sudo-oikeudet.
Minulla on tapana kuitenkin lisätä sudo-oikeudet käyttäjälleni erikseen, sillä esimerkiksi slim, jota käytän kirjautumisohjelmana vaatii rootin-salasanaa sammuttamiseen ja boottaamiseen suoraan kirjautumisikkunasta. Tällaisia ohjelmia voi olla muitakin, ei tosin ole tullut vastaan.
Olen tehnyt tiedoston /etc/sudoers.d/sudo_user_conf
su
nano /etc/sudoers.d/sudo_user_conf
Sisällöksi:
käyttäjänimi ALL=(ALL:ALL) ALL
Sitten olen komentanut:
chmod 0440 /etc/sudoers.d/sudo_user_conf
ettei tiedosto ole kaikkien luettavissa.
-
Kaikki sudoa tarvitsevat käyttäjät lisätään vain sudo-käyttäjäryhmään ja se on sillä selvä, sen jälkeen toimii kuten *buntussakin. Käy esimerkiksi päätteessä komennolla:
adduser TUNNUS sudo
Tuo komento on siis annettava rootina; vasta tämän jälkeen voi tavallinen käyttäjä sudota.
-
Kaikki sudoa tarvitsevat käyttäjät lisätään vain sudo-käyttäjäryhmään ja se on sillä selvä, sen jälkeen toimii kuten *buntussakin. Käy esimerkiksi päätteessä komennolla:
adduser TUNNUS sudo
Tuo komento on siis annettava rootina; vasta tämän jälkeen voi tavallinen käyttäjä sudota.
Harmi, kun en muista missä tilanteessa, mutta olen törmännyt valitukseen, että käyttäjääni ei löydy sudoers-tiedostosta, kun olen vain kuulunut sudo-ryhmään. Siksi olen tehnyt tuon tiedoston. Sitte on homma toiminut.
-
Kaikki sudoa tarvitsevat käyttäjät lisätään vain sudo-käyttäjäryhmään ja se on sillä selvä, sen jälkeen toimii kuten *buntussakin. Käy esimerkiksi päätteessä komennolla:
adduser TUNNUS sudo
Tuo komento on siis annettava rootina; vasta tämän jälkeen voi tavallinen käyttäjä sudota.
Harmi, kun en muista missä tilanteessa, mutta olen törmännyt valitukseen, että käyttäjääni ei löydy sudoers-tiedostosta, kun olen vain kuulunut sudo-ryhmään. Siksi olen tehnyt tuon tiedoston. Sitte on homma toiminut.
Tässä on huomioitava, että käyttäjän on kirjauduttava ulos ja takaisin sisään, jotta ryhmälisäys tulee voimaan.
-
Kaikki sudoa tarvitsevat käyttäjät lisätään vain sudo-käyttäjäryhmään ja se on sillä selvä, sen jälkeen toimii kuten *buntussakin. Käy esimerkiksi päätteessä komennolla:
adduser TUNNUS sudo
Tuo komento on siis annettava rootina; vasta tämän jälkeen voi tavallinen käyttäjä sudota.
Harmi, kun en muista missä tilanteessa, mutta olen törmännyt valitukseen, että käyttäjääni ei löydy sudoers-tiedostosta, kun olen vain kuulunut sudo-ryhmään. Siksi olen tehnyt tuon tiedoston. Sitte on homma toiminut.
Tässä on huomioitava, että käyttäjän on kirjauduttava ulos ja takaisin sisään, jotta ryhmälisäys tulee voimaan.
Joo tuo on tiedossa, eikä ollut kyse vain siitä, koska yleensä ottaen sudon käyttö onnistui noin, jossain tilanteessa ei.
Ajan kyllä yleensä Debian testingiä, oisko ollut jokin häikkä siinä. Lisäämpä itseni sudo-ryhmään ja poistan sudoers lisäyksen. Onnistuisinko toistamaan.
-
Ainakin jostain olen kuullut että tuota sudoers conffia saisi editoida vain visudo käskyllä. Se kun tsekkaa tiedoston syntaksin ennen kuin muutoksia tallennetaan.
-
Minusta su - on näppärämpi kuin sudo. Hankalia ongelmia tulee silloin jos sudo ohjelma kirjoittaa tiedostoja rootin oikeuksilla käyttäjän kotihakemistoon. Sudo:n käyttö on Ubuntun erikoisuus.
Ps. slim on kiva ja kevyt. Käytän sitä htpc:ssä automaattisella sisäänkirjautumisella. Itse en ole siinä sudo:ta tarvinnut kun
sitä ei käytössä edes huomaa.
-
Sudo:n käyttö on Ubuntun erikoisuus.
Nykyisin se on niin että sudon käyttämättömyys on Debianin erikoisuus. ;)
-
Nykyisin se on niin että sudon käyttämättömyys on Debianin erikoisuus. ;)
Debiania en ole käyttänyt aikoihin. Jos tuossa Jessessä toimii vdr ja
xbmc vakaasti voisin ehkä kokeilla. Systemd:stä en oikein pidä.
Ehkä sekin on tullut vakaaksi. Ehkä intelin ajuritkin jo sillä tasolla,
että saa TV-kuvankin näkymään.
Sudo vai su - siitä löytyy paljon keskusteluita. Itsellä sudo -l tulostaa
eeebox@eeebox ~ $ sudo -l
Luotamme, että olet saanut tavanomaisen saarnan paikalliselta järjestelmän
ylläpitäjältä. Yleensä se tiivistyy kolmeen asiaan:
#1) Kunnioita muiden yksityisyyttä.
#2) Ajattele ennen kuin kirjoitat.
#3) Suuren voiman mukana tulee suuri vastuu.
Salasana:
Käyttäjä eeebox ei voi suorittaa komentoa sudo tietokoneella eeebox.
eli hyvin on tultu ilman sudo komento toimeen.
Ps. debootstrap on näppärä Debianin asennukseen jos
ei halua ladata asennusmediaa.
-
En ole koskaan Debianissa käyttänyt SUDO:a. Ilmeisesti asennus vaiheessa voi jättää rootin teon tai jotain. Täyty testata joskus.
Itse olen erittäin tyytyväinen Su työskentelyyn ja joskus kdesu käskyyn. Samaa laulua oon tavannut 2008 vuodesta asti.
Itse tykkään Debianin tavasta, että pääkäyttäjä tekee tärkeät hommat ja käyttäjä tekee mitä tekee...
-
En ole koskaan Debianissa käyttänyt SUDO:a. Ilmeisesti asennus vaiheessa voi jättää rootin teon tai jotain. Täyty testata joskus.
Itse tykkään Debianin tavasta, että pääkäyttäjä tekee tärkeät hommat ja käyttäjä tekee mitä tekee...
Muistaakseni sudo pitää asentaa erikseen - yleensä kyllä tulee riippuvuuksien mukana. Itsellä "su -" on selkäytimessä. Ei pelkoa, että käyttäjän hakemistoon tulee tiedostoja root-oikeuksin. Systeemi pysyy puhtaana. Kun vielä välttää X sovelluksia root oikeuksilla niin kaikki on hyvin. Jos ssh ym käytössä kannattaa etänä kirjautuminen roottina estää.
-
Ei pelkoa, että käyttäjän hakemistoon tulee tiedostoja root-oikeuksin.
Tämänhän voi välttää neljällä tavalla:
1. Käyttää graafisten ohjelmien kanssa graafista sudo-wrapperia (gksudo, kdesudo)
2. Käyttää sudon kanssa $HOME muuttujan määräävää optiota ( -H, -i )
3. laittaa /etc/sudoers:n defaults:iin "always_set_home"-asetuksen
4. distribuutio-tasolla kääntämällä sudon oikeilla optioilla (valtaosa distroista kääntää sudon näin, jostain syystä ubuntu ei)
Sudolla pystyy tekemään kaikki samoin kuin su:lla (jos haluaa), mutta toisin päin ei. Tämä ei tietenkään tarkoita, ettet saisi käyttää su:ta, jos siitä enemmän pidät (tai ettei se olisi sinulle parempi).
-
Hienot ohjeet. Kohta 3 oli minulle uusi. Sudo on silloin tärkeä jos haluaa jollekin ohjelmalla antaa laajempia oikeuksia. Esim. vaikka koneen sammutus (shutdown -h now).
'su -' komennon kanssa ei tarvitse muistella pametreja. Myös pitkissä komennoissa sudo:lla on ongelmansa. Silloin alkuosa suoritetaan root oikeuksilla ja loppu käyttäjän. Tuosta seuraa erikoisia ongelmia. Varsinkin jos vielä home muuttuu kesken komennon. Aina ei osaa hahmottaa mihin asti sudo:n "näkyvyys" yltää.
Itse vältän x-ohjelmien suorittamista roottina. Varsinkin asennusvaiheessa. Jos vaikka .config kansio saa root oikeudet systeemi käyttäytyy kovin oudosti.
-
Myös pitkissä komennoissa sudo:lla on ongelmansa. Silloin alkuosa suoritetaan root oikeuksilla ja loppu käyttäjän. Tuosta seuraa erikoisia ongelmia.
Onko sulla antaa esimerkkiä, kun en tuollaiseen ole törmännyt...ellet sitten tarkoita "pitkillä" komennoilla putkituksia (|), uudelleenohjauksia (<,>,>>) ja/tai sarjoituksia (||,&&,;), mitkä on siis komentotulkin funktioita (eivätkä osa komentoja), ja toimivat siten luonnollisesti komentotulkin oikeuksin eikä sudo siis kanna niiden "yli".
Tämän "ongelman" voi ratkoa komentoja muokkaamalla tai käynnistämällä rootin tulkin (esim sudo -i).
-
Onko sulla antaa esimerkkiä, kun en tuollaiseen ole törmännyt...ellet sitten tarkoita "pitkillä" komennoilla putkituksia (|), uudelleenohjauksia (<,>,>>) ja/tai sarjoituksia (||,&&,;), mitkä on siis komentotulkin funktioita (eivätkä osa komentoja), ja toimivat siten luonnollisesti komentotulkin oikeuksin eikä sudo siis kanna niiden "yli".
Tämän "ongelman" voi ratkoa komentoja muokkaamalla tai käynnistämällä rootin tulkin (esim sudo -i).
Yksinkertainen esimerkki: sudo echo "joku optio" >> /etc/default/config
Äkkiseltään ei tuossa mitään vikaa huomaa. Tarkoitus on lisätä rivi tiedoston
config loppuun. Kyllä tuon voi korjata. Käyttäjälle ei tietysti oikeuksia tuohon
tiedostoon tai kansioon. Mikä olisi oikea muoto?
-
Onko sulla antaa esimerkkiä, kun en tuollaiseen ole törmännyt...ellet sitten tarkoita "pitkillä" komennoilla putkituksia (|), uudelleenohjauksia (<,>,>>) ja/tai sarjoituksia (||,&&,;), mitkä on siis komentotulkin funktioita (eivätkä osa komentoja), ja toimivat siten luonnollisesti komentotulkin oikeuksin eikä sudo siis kanna niiden "yli".
Tämän "ongelman" voi ratkoa komentoja muokkaamalla tai käynnistämällä rootin tulkin (esim sudo -i).
Yksinkertainen esimerkki: sudo echo "joku optio" >> /etc/default/config
Äkkiseltään ei tuossa mitään vikaa huomaa. Tarkoitus on lisätä rivi tiedoston
config loppuun. Kyllä tuon voi korjata. Käyttäjälle ei tietysti oikeuksia tuohon
tiedostoon tai kansioon. Mikä olisi oikea muoto?
sudo sh -c "echo \"joku optio\" >> /etc/default/config"
tai oma suosikkini:
echo "joku optio" | sudo tee -a /etc/default/config
Ensimmäisessä käynnistetään komentotulkki root-oikeuksin ja echo ajetaan myös näillä korotetuilla oikeuksilla. Jälkimmäisessä root-oikeudet saa vain tee-komento, joka sitten lisää (-a-vipu on tärkeä) tuohon tiedostoon saamansa syötteen.
-
Katso myös http://stackoverflow.com/questions/84882/sudo-echo-something-etc-privilegedfile-doesnt-work-is-there-an-alterna
-
sudo sh -c "echo \"joku optio\" >> /etc/default/config"[/code]
tai oma suosikkini:
echo "joku optio" | sudo tee -a /etc/default/config
Ensimmäisessä käynnistetään komentotulkki root-oikeuksin ja echo ajetaan myös näillä korotetuilla oikeuksilla. Jälkimmäisessä root-oikeudet saa vain tee-komento, joka sitten lisää (-a-vipu on tärkeä) tuohon tiedostoon saamansa syötteen.
Hyviä vastauksia. Joskus kopion vastaavia jostain asennusohjeesta ja en tajunnut, että sudo ei anna rootin oikeuksia koko komennolle. su -c echo "joku optio" >> /etc/default/config
toimii myös. Jos pidempi komento niin sen "kääntäminen" sudo:lle vaatii jo melkoista taitoa. En ymmärrä tuota sudo:n kehumista, joskus on vaan helpompaa kun ottaa ne rootin oikeudet käyttöön "su -" :lla. Moni tietysti kirjoittaa sudo kwrite ja sitten kwrite voi olla koko päivänkin root oikeuksilla käytössä.
-
Hyviä vastauksia. Joskus kopion vastaavia jostain asennusohjeesta ja en tajunnut, että sudo ei anna rootin oikeuksia koko komennolle. su -c echo "joku optio" >> /etc/default/config
toimii myös.
Tuossa tulee kyllä sama ongelma ulostulon ohjauksen kanssa kuin sudon tapauksessa. Suoritettava komentorivi pitää laittaa lainausmerkkeihin, kuten Tomin neuvoi yllä. Yksinkertaiset lainaukset voivat olla tässä kätevät, ainakin silloin kun ei ole tarvetta viitata alkuperäisen käyttäjän ympäristömuuttujiin:
su -c 'echo "joku optio" >> /etc/default/config'
Jos pidempi komento niin sen "kääntäminen" sudo:lle vaatii jo melkoista taitoa.
Vaatiihan sen pitkän komennon kirjoittaminenkin yleensä taitoa ja tietoa. Tai jos lunttaa valmiista esimerkistä, se on hyvällä todennäköisyydellä jo valmiiksi kirjoitettu sudottajia silmälläpitäen.
-
Jos pidempi komento niin sen "kääntäminen" sudo:lle vaatii jo melkoista taitoa.
Kuten aiemmin yritin mainita, kyse ei ole komennon "pituudesta", vaan esimerkissä on komento+uudelleenohjaus (>>)-merkin avulla ja uudelleenohjaus ei ole osa komentoa vaan se on tulkin funktio, johon sudo ei antamassasi esimerkissä vaikuta. Muut ovatkin jo antaneet erinomaisia esimerkkejä, miten sama asia voidaan tehdä sudon avulla.
En ymmärrä tuota sudo:n kehumista, joskus on vaan helpompaa kun ottaa ne rootin oikeudet käyttöön "su -" :lla.
Komento "sudo -i" ajaa ihan saman asian kuin "su -", eli käynnistää rootin tulkin.