Hur användarkonton, rättigheter och äganderätt fungerar i Linux
HurLinux är ett operativsystem för flera användare, även om du är den enda personen som använder din dator. Systemets mest grundläggande har två användare: du och superanvändaren, som också kallas root.
Varje fil eller katalog ägs av en användare och har inställningar, kallade behörigheter, som anger vilka som kan läsa eller skriva till den. Detta skyddar dina filer från att överskrivas av en annan användare, eller kanske läs av dem om de är så angivna.
Det skyddar även systemfiler eftersom de ägs av rot och kan bara ändras med rot. Detta inkluderar skrivning till systemkataloger, så bara rotanvändaren kan installera ny programvara där. (Så hur installerar du programvara? Se avsnittet "Bli rot" för svaret.)
Ett ord försiktigt när du använder data på flera datorer, till exempel med en extern hårddisk. Medan du kanske ser ditt användarnamn som ett namn, säg johnny99, ser datorn och lagrar den som ett nummer, ett UID eller användar-ID.
Under installationen kommer din distro att ha skapat en root-användare, som alltid har en UID på 0 och en vanlig användare. De flesta distros börjar vid 1000 för den första allmänanvändaren, men vissa börjar vid 500. Poängen är, det är det nummer som lagrats på skivan som ägare till en fil, så samma användarnamn kanske inte äger filen när du flyttar disk till en annan dator.
De flesta skrivbord har grafiska alternativ för användarhantering. Detta är KDE: s Kuser.Skapa en användare
Varje användare har en hemkatalog. Detta är vanligtvis home / användarnamn men det kan faktiskt vara var som helst - användaren som skapats för att köra en webbserver kommer att ha en hemkatalog någonstans som / Var / www. Förutom användare har Linux också grupper. En grupp är i grunden en samling användare.
Om du till exempel har en USB-skanner på din dator, behöver du ofta vara medlem i scannergruppen för att kunna använda den.
Nu när vi förstår användarnamn, grupper, UID och hemkataloger kan vi skapa en användare, som så:
sudo useradd -m -c "John Smith" -g användare -G scanner, audio john
Vi använder sudo här eftersom bara rootanvändaren kan skapa användare. De -m alternativ skapar en hemkatalog på / Home / John, -c specificerar en kommentar för att lagra för användaren, som vanligtvis är användarens fullständiga namn, -g ställer in användarens primära grupp medan -G lägger till sekundära grupper. Slutligen ger vi användarnamnet.
Inte alla dessa alternativ är nödvändiga: om du släpper bort -g, till exempel används en standardgrupp. Vissa distros använder en enda grupp som heter användare för alla icke-systemanvändare, medan andra skapar en separat grupp för varje användare. De groupadd Kommandot fungerar på ett liknande sätt, liksom de båda motparterna för att radera, userdel och groupdel.
Lägg till ett lösenord
Vi har skapat en användare men de kan inte logga in ännu tills vi ger dem ett lösenord med följande:
sudo passwd john
Detta kommer att fråga dig lösenordet två gånger. De passwd Kommandot kan också användas för att ändra lösenordet för ett befintligt konto. Om du kör det utan sudo eller ett användarnamn kommer det att ändra din egen användares lösenord; endast root kan ställa in lösenord för någon annan.
Det anses också som god praxis att byta lösenord regelbundet. Du kan genomdriva detta med passwd:
sudo passwd -maxdays 60-wardays 7 john
Detta lösenord blir ogiltigt efter två månader och john kommer att varnas om utgången en vecka innan. De vanliga reglerna om lösenord gäller här: gör dem långa och blandade fall, och helst med siffror. Dessa regler gäller dubbelt till root-lösenordet - nyckeln till riket.
Användaruppgifter lagras i / Etc / passwd - Lösenordet är förvirrande i / Etc / shadow - och båda kan redigeras om du vill ändra dem. Att göra ett misstag kan dock förhindra att du loggar in, så använd vipw att redigera den. Detta laddar en kopia av / Etc / passwd in i din föredragna redaktör (som definierad i $ EDITOR) och kontrollerar dess validitet när du sparar det innan du ersätter den befintliga filen.
Formatet av / Etc / passwd förklaras fullständigt med man 5 passwd.
Överför ägande
Om du vill ändra ägaren till en fil behöver du det chown:
chown john somefile
chown john: användare someotherfile
chown john: someotherfile
chown -R John: Somedir
Den första av dessa gör John till ägaren av en enda fil. Det andra kommandot ändrar också gruppen. Om du inte levererar en grupp efter kolon, som i det tredje exemplet, ändras gruppen till användarens standardgrupp.
När den tillämpas på en katalog, -R Alternativet ändrar också alla filer och underkataloger i den katalogen. Alternativt kan du bara ändra gruppen med chgrp. Dessa kommandon måste köras som root. Ändring av filbehörigheter görs med chmod.
- Denna artikel gavs till TechRadar av Linux Format, den första tidningen för att öka din kunskap om Linux, öppen källkodsutveckling, distroversioner och mycket mer. Prenumerera på utskrift eller digital version av Linux Format här