Vad är Sudo i Linux och hur man använder det

Betrakta ovanstående serie från den utmärkta XKCD-webbserien(XKCD) . Den lata killen i stolen vill att deras vän ska göra en smörgås till dem, men de saknar auktoriteten att få dem att göra det. Det vill säga tills han åberopar det mäktiga sudo-kommandot. Därefter kommer en smörgås att göras på ett eller annat sätt. 

Även om det förmodligen inte kommer att vara lika effektivt att prova sudo på en person i verkliga livet, är det det magiska kommandot som tar sig förbi varje vägspärr i Linux -världen . Vad är sudo? Varför finns det ens? Svaret ligger i hur Linux hanterar behörigheter.

Förstå Linux-användarbehörigheter(Linux User Permissions)

Linux anses vara ett säkert operativsystem på grund av hur det hanterar behörigheter. Även om operativsystem som macOS (som delade en förfader med Linux ) och Windows nu är mer som Linux i detta avseende, är operativsystemet med öppen källkod fortfarande något unikt.(Open Source)

Att förstå hur Linux hanterar behörigheter gör det mycket lättare att komma runt sudo-kommandot. Alla moderna operativsystem har en "administratör" eller "root" användarbehörighetsnivå. Om du har ett administratörs- eller rootkonto kan du ändra valfri inställning, radera all data och i allmänhet göra vad du vill med datorn. 

Det inkluderar saker som du förmodligen inte borde göra som kan leda till dataförlust eller behovet av en fullständig rensning och ominstallation.

Linux gör inte behörigheter på rootanvändarnivå till standard. Istället kan ditt konto inte komma åt de riktigt känsliga delarna av systemet utan att höja din behörighetsnivå. Det betyder att systemet kommer att be dig ange administratörslösenordet när du vill göra något utöver det vanliga med hjälp av ett grafiskt gränssnitt. 

Men när du vill använda kommandoraden Terminal för att få saker gjorda är sudo det säkraste och mest effektiva sättet att gå tillväga.(Terminal)

Sudo och terminalen

Det finns två sätt att ge dig själv förhöjda behörigheter i Linux . En är att logga in som root-användare permanent. Problemet med detta är att alla andra som kan komma åt datorn kan orsaka förödelse, och även du kan göra det av misstag. Sudo höjer dina behörigheter endast under en kort tid för att utföra de specifika kommandon som följer den.

Sudo syntax

Sudos syntax (kommandots format) är enkel. Skriv bara(Simply) "sudo" följt av kommandot du vill köra.

Till exempel kommer "sudo apt-get update" att uppdatera alla appförråd som anges i den relevanta filen. Om du försökte köra det utan sudo, skulle du få ett felmeddelande som talar om att du inte har behörighet. För övrigt är detta i allmänhet det första sudo-kommandot du vill köra efter en ny installation av din favorit Linux -distro. 

"Su" i Sudo

"su" i sudo är en förkortning för "superanvändare" och det är ett fristående kommando. Kommandot "su" låter dig ändra vilken användares privilegier sudo höjer dig till. 

Även om sudo höjer dig till root tillfälligt, ändrar su dig till en annan användare med lämpliga privilegier. Det kan tyckas vara en oviktig skillnad, men det finns goda skäl att ändra kontot som sudo lyfter en användare till. 

Först(First) av allt, att ändra kontot innebär att vanliga användare inte känner till root-lösenordet. För det andra finns det en logg över alla sudo-kommandon, vilket betyder att systemadministratören (root) kan leta upp vem som utfärdat su-kommandon.

Syntaxen för su är i huvudsak densamma som sudo:

Su ANVÄNDARNAMN -c KOMMAND(Su USERNAME -c COMMAND)

Byt ut USERNAME(Replace USERNAME) med önskad användare för att köra kommandot och COMMAND med Linux- kommandot du vill köra.

Om du vill köra flera kommandon som en annan användare, använd helt enkelt:

Su ANVÄNDARE(Su USER)

Ersätt USER(Replace USER) med önskad användarkontoidentitet.

Om du använder su själv, kommer Linux att byta till det andra användarkontot tills du använder kommandot "exit." Det är viktigt att komma ihåg att den här eller nästa användare som kommer åt terminalen i den sessionen fortfarande har förhöjda behörigheter. Det är därför det generellt sett är bättre att använda sudo istället för su.

Tidsgränsen för Sudo

Första gången du använder ett sudo-kommando måste du ange ett lösenord. Sedan kommer lösenordet att vara giltigt i 15 minuter. Du kan ändra denna standard genom att köra kommandot sudo visudo och ändra "timestamp_timeout=" till ett längre eller kortare värde. Vi rekommenderar dock inte att du gör detta om du inte har en god anledning att förlänga eller förkorta hur länge ett sudo-lösenord är giltigt.

Sudo Option Switches

Även om sudo-syntaxen är enkel, är flera switchar värda att veta om. Dessa kommandon öppnar ytterligare information eller hjälper dig att kontrollera sudo-sessionen:

  • -h visar syntax och kommandoinformation för sudo.
  • -V visar den aktuella versionen för sudo på din maskin.
  • -v uppdaterar sudo-tidsgränsen och startar om klockan.
  • -l listar användarbehörigheter.
  • -k dödar den aktuella sudo-sessionen omedelbart och tar bort förhöjda privilegier.

Det finns många fler alternativ inbyggda i sudo, och du kan se dem alla med den första -h-växeln som listas ovan.

Ovanstående skärmdump är vad som resulterar när du använder hjälpalternativet.

Användbara Sudo-kommandon

Så vilka kommandon bemyndigade av sudo bör alla Linux- användare känna till? Vi har redan täckt sudo apt-get update, men notera dessa också:

  • Sudo apt-get upgrade kommer att uppgradera alla installerade paket.
  • Sudo apt-get install <package-name> installerar programvara som du väljer; ändra bara paketnamnet till det du vill installera.
  • Om du inte känner till paketnamnet, använd dpkg –list .
  • Om du vill ta bort ett installerat paket från terminalen, använd sudo apt-get remove <package-name (återigen ersätter det specifika paketnamnet i fråga).

Dessa är förmodligen de första sudo-kommandona du måste använda, men som du har lärt dig ovan kan vilket kommando som helst följa sudo, men du bör bara använda de som behöver högre privilegier med det.



About the author

Inom affärer och teknik är Windows 10 och Windows 11/10 mycket viktiga verktyg. De låter dig interagera med datorer enklare och säkrare än någonsin tidigare, samt kör kraftfulla men anpassningsbara appar utan några säkerhetsrisker. Dessa verktyg är också viktiga för företag som vill kunna utöka sin onlinenärvaro och nå nya kunder. På grund av detta skulle jag säga att mina kunskaper i Windows 10 och Windows 11/10 gör mig till en utmärkt kandidat för ett sådant jobb eller företag.



Related posts