4Aug

Hva er forskjellen mellom Sudo og Su i Linux?

click fraud protection

Hvis du er en Linux-bruker, har du sannsynligvis sett referanser til både sudo og su. Artikler her på How-To Geek og andre steder instruerer Ubuntu-brukere om å bruke sudo og andre Linux-distribusjonsbrukere til å bruke su, men hva er forskjellen?

Sudo og su er to forskjellige måter å få root-privilegier på.Hver funksjon på en annen måte, og forskjellige Linux-distribusjoner, bruker forskjellige konfigurasjoner som standard.

Root Bruker

Både su og sudo brukes til å kjøre kommandoer med root-tillatelser. Roten brukeren er i utgangspunktet ekvivalent med administratorbrukeren på Windows - roten brukeren har maksimale tillatelser og kan gjøre noe for systemet. Normale brukere på Linux kjører med reduserte tillatelser - for eksempel kan de ikke installere programvare eller skrive til systemkataloger.

For å gjøre noe som krever disse tillatelsene, må du skaffe dem med su eller sudo.

Su vs Sudo

Su-kommandoen bytter til superbruker- eller rotbrukeren - når du kjører den uten ekstra alternativer. Du må legge inn passordet til rotkontoen. Dette er ikke alt su-kommandoen gjør, men du kan bruke den til å bytte til hvilken som helst brukerkonto. Hvis du utfører

instagram viewer
su bob -kommandoen, blir du bedt om å skrive inn Bobs passord og skallet vil bytte til Bobs brukerkonto.

Når du er ferdig med å kjøre kommandoer i rotskjellet, bør du skrive exit for å forlate rotskjellet og gå tilbake til begrenset tilgangsmodus.

Sudo kjører en enkelt kommando med root privilegier. Når du kjører sudo-kommandoen , ber systemet deg om ditt nåværende brukerkontoens passord før du kjører -kommandoen som roten bruker. Som standard husker Ubuntu passordet i femten minutter og vil ikke be om et passord igjen til de femten minuttene er oppe.

Dette er en nøkkelforskjell mellom su og sudo. Su bytter deg til root-brukerkontoen og krever root-kontoens passord. Sudo kjører en enkelt kommando med root privilegier - den bytter ikke til roten brukeren eller krever et eget roten brukerpassord.

Ubuntu vs andre Linux-distribusjoner

Su-kommandoen er den tradisjonelle måten å skaffe rotrettigheter på Linux på.Sudo-kommandoen har eksistert i lang tid, men Ubuntu var den første populære Linux-distribusjonen for å gå sudo-only som standard. Når du installerer Ubuntu, blir standard rotorkonto opprettet, men det er ikke gitt noe passord. Du kan ikke logge på som root før du tilordner et passord til rotkontoen.

Det er flere fordeler med å bruke sudo i stedet for su som standard. Ubuntu-brukere må bare gi og huske et enkelt passord, mens Fedora og andre distribusjoner krever at du oppretter separate root- og brukerkonto passord under installasjonen.

En annen fordel er at det fraråder brukerne å logge inn som roten brukeren - eller ved hjelp av su for å få et rotskjell - og holde rotskjellet åpent for å gjøre sitt normale arbeid. Kjører færre kommandoer som rot øker sikkerheten og forhindrer utilsiktede systemovergripende endringer.

Distribusjoner basert på Ubuntu, inkludert Linux Mint, bruker også sudo i stedet for su som standard.

Noen få triks

Linux er fleksibel, så det tar ikke mye arbeid å lage su på samme måte som sudo - eller vice versa.

For å kjøre en enkelt kommando som roten bruker med su, kjør følgende kommando:

su -c 'kommando'

Dette ligner på å kjøre en kommando med sudo, men du trenger root-kontoens passord i stedet for din nåværende brukerkontoens passord.

For å få et komplett rotasjonsskall med sudo, kjør sudo -i.

Du må oppgi ditt nåværende brukerkontoens passord i stedet for rotkontoens passord.

Aktivering av roten brukeren i Ubuntu

For å aktivere rotbrukerkontoen på Ubuntu, bruk følgende kommando for å angi et passord for det. Husk at Ubuntu anbefaler dette.

sudo passwd root

Sudo vil spørre deg om ditt nåværende brukerkonto passord før du kan angi et nytt passord. Bruk ditt nye passord for å logge på som root fra en terminal påloggingsprompt eller med su-kommandoen. Du bør aldri kjøre et fullt grafisk miljø som roten bruker - dette er en svært dårlig sikkerhetspraksis, og mange programmer vil nekte å jobbe.

Legge til brukere til Sudoers-filen

Bare administrator-type kontoer i Ubuntu kan kjøre kommandoer med sudo. Du kan endre en brukerkonto type fra konfigurasjonsvinduet for brukerkontoer.

Ubuntu angir automatisk brukerkontoen som ble opprettet under installasjonen som en administratorkonto.

Hvis du bruker en annen Linux-distribusjon, kan du gi brukeren tillatelse til å bruke sudo ved å kjøre visudo -kommandoen med rotasjonsrettigheter( så kjør su først eller bruk su -c ).

Legg til følgende linje i filen, erstatt bruker med navnet på brukerkontoen:

bruker ALL =( ALLE: ALL) ALLE

Trykk Ctrl-X og deretter Y for å lagre filen. Du kan også legge til en bruker i en gruppe som er angitt i filen. Brukere i gruppene som er angitt i filen, vil automatisk ha sudo-privilegier.

Grafiske versjoner av Su

Linux støtter også grafiske versjoner av su, som ber om passordet ditt i et grafisk miljø.For eksempel kan du kjøre følgende kommando for å få en grafisk passordprompt og kjør Nautilus-filleseren med root-tillatelser. Trykk Alt-F2 for å kjøre kommandoen fra en grafisk kjøre dialog uten å starte en terminal.

gksu nautilus

Gksu-kommandoen har også et par andre triks på ermet - det beholder dine nåværende skrivebordsinnstillinger, slik at grafiske programmer ikke ser ut på plass når du starter dem som en annen bruker. Programmer som gksu er den foretrukne måten å starte grafiske applikasjoner med root privilegier.

Gksu bruker enten en su eller sudo-basert backend, avhengig av Linux-distribusjonen du bruker.

Du bør nå være forberedt på å møte både su og sudo! Du vil møte både hvis du bruker forskjellige Linux-distribusjoner.