Om du någonsin har dabbled med kommandoraden i Linux (vem gör inte?), Är du säker på att komma över kommandot "sudo" och "su". Medan veterananvändare vet exakt vad de menar är nya Linux-användare alltid förvirrade när man ska använda vilken och implikationen och komplikationen som medför båda. I den här artikeln kommer vi att förklara i detalj vad "sudo" och "su" är, skillnaden mellan dem och när de ska användas.

Linux basics

Under installationen av Linux uppmanas du att skapa ett användarkonto och ange ditt eget lösenord. När installationen är klar och systemet startas om, blir du uppmanad att logga in på användarkontot som du tidigare skapat. När du är i denna användarmiljö är du din egen administratör och du kan köra applikationer och anpassa skrivbordet efter eget tycke. Detta är ungefär samma som i Windows och Mac. Du har också en egen personlig hemmapp där du kan lägga till / ta bort en mapp till och från den. Det är ganska mycket allt du kan göra. Utanför din hemmapp (dvs. rotmappen) hittar du att de flesta (om inte alla) filsystemen inte är tillgängliga för dig.

Medan du kan komma åt och läsa filerna i dessa mappar kan du inte göra ändringar i dem. Anledningen är att du inte har tillräckligt med tillstånd.

Användarbehörighet

Användarrättighetsfunktionen är en säkerhetsfunktion som skyddar Linux-användare. Med ditt administratorkonto får du tillstånd att hantera allt i din hemmapp (och den externa partitionen eller hårddisken du har monterat). Utan det behöver du root tillstånd för att göra ändringar i systemfilen, inklusive installation och avinstallation av program. Uppdelningen av administratörskonto och rotkontot gör att du inte rubbar ditt system onödigt och gör det svårare för hacker / virus / skadlig kod att komma in i ditt rotsystem.

Obs! Till skillnad från Windows betyder inte att du är administratör för ditt eget användarkonto att du har root-åtkomst till systemet. Du kan inte bara installera / avinstallera program genom att dubbelklicka på installationsprogrammet. I Linux måste du ange ditt lösenord för att höja ditt användarkonto innan du kan installera / avinstallera en app. Detta innebär också att saker inte blir installerade om du inte ger uttrycklig tillåtelse till.

Förekomsten av "sudo" och "su" är att du kan få root access så att du kan bli den verkliga administratören av ditt eget system.

SU

"Su" står för " superuser " och låter dig logga in som root och göra vad du vill med systemet. Det kan köras med kommandot:

 su 

och det krävs att du anger lösenordet för root-kontot. I vissa distroer, särskilt Ubuntu, är root lösenordet inte inställt under installationen. Detta gör det praktiskt taget omöjligt att logga in som root (med "su") eftersom det inte kan verifieras.

Om du verkligen behöver använda kommandot "su" för att få root-åtkomst kan du ändra root-lösenordet med hjälp av kommandot:

 sudo passwd root 

Som standard loggar "su" in som root i din egen användarmiljö. Använd kommandot för att ändra användarmiljön till root.

 su - 

Annan användning av "su" inkluderar:

  • Byter till en annan användare som inte är superanvändaren
 su 
  • Byter till en annan användare och använder den användarmiljön
 su - 

Som det kan ses, med kommandot "su" får du stor kraft att administrera och ändra ditt system, och om det är okontrollerat (eller om du är oerfaren) kan det vara destruktivt för ditt system.

Obs! Använd inte så mycket som möjligt för att administrera ditt system.

SUDO

"Sudo" står för " superuser do " och det låter dig höja ditt nuvarande användarkonto för att ha root privilegier tillfälligt. Detta skiljer sig från "su". Med "sudo" använder du fortfarande ditt användarkonto, men med root-privilegiet, medan i "su" är du inloggad på root-kontot. Dessutom är root-privilegiet i "sudo" endast giltigt under en kort tidsperiod. När det löper ut måste du skriva in ditt lösenord igen för att återställa root-privilegiet.

Med "sudo" kan du göra ganska mycket samma saker som "su". För att kunna använda det måste du bara lägga till "sudo" framför alla rotkommandon, till exempel:

 sudo apt-få uppdatering sudo apt-get uppgradering 
  • I vissa fall, om du verkligen behöver logga in som root, istället för att använda "su", är det bättre att använda:
 sudo -i 

att starta ett rotskal. Det här låter dig logga in som root med ditt eget användarnamn.

  • Du kan också logga in som en annan användare
 sudo -i -u 

Slutsats

Detta är en grundläggande inledande artikel till "sudo" och "su". Om du är nybörjare, är det lämpligt att hålla händerna av "su" och använd "sudo" om det behövs. För grundläggande användare räcker det med "sudo" för de flesta rotkommandon. I över 6 år med att använda Linux har jag inte stött på en instans där jag behöver använda "su" eller "sudo -i".

För att administrera server, kommer vissa att hävda att du måste vara rot hela tiden för att utföra underhåll och utföra någon annan uppgift. Det kan vara sant, men i min personliga erfarenhet, om du installerar "sudo", skapa en ny användare och lägg till den här användaren till sudo-gruppen, kan du göra ganska mycket allt med det begränsade användarkontot och sudo-kommandot. Faktum är att jag tror att det här är ett säkrare sätt att administrera din server. Berätta om jag har fel.