Chown-kommando i Linux: Hur man använder det

Hantera ägande och filbehörigheter är förmodligen den viktigaste uppgiften för en systemadministratör. I alla operativsystem för flera användare som Linux är det avgörande att korrekt tilldela äganderätten till filer och kataloger.

Kommandot chown är det mest användbara verktyget för detta. För att inte förväxlas med chmod kan chown ändra användarens ägande av filer och tilldela dem till olika grupper. Det är ett viktigt kommando att bemästra för alla seriösa Linux- användare.

Här är en guide för att komma igång.

Hur kontrollerar du äganderätten(Ownership) till en fil(A File) ?

Innan du börjar flytta filer runt olika ägare och grupper bör du först lära dig hur du kontrollerar en fils nuvarande ägare. Processen är enkel: att lägga till en -l-flagga till ett vanligt ls-kommando inkluderar ägarinformation för filen eller katalogen som efterfrågas.

Säg att(Say) du har en fil som heter example.txt. Så här kommer kommandot att se dess ägarinformation se ut:

ls -l exempel.txt

Använda chown på en enda fil

Det enklaste sättet att använda chown är att ändra användaren som äger en viss fil. Syntaxen är sudo chown användarnamn filnamn, där användarnamn är namnet på användaren du vill ge filen till, och filnamn är namnet på filen i fråga. Så här ser det ut i praktiken:

sudo chown someone_else example.txt

Observera att detta inte ändrar gruppägandet av filerna, bara användaren. För att byta gruppägare måste du använda en annan syntax – sudo chown :gruppnamn filnamn

I det här specifika fallet blir detta:

sudo chown :group2 exempel.txt

Du kan också kombinera båda kommandona till en enda rad för att ändra användaren och gruppägandet av en fil:

sudo chown me:group1 example.txt

Ändra ägande(Ownership) av flera filer(Multiple Files) med Chown

Att ändra ägandet av varje fil individuellt är ganska tråkigt när man hanterar ett större antal filer. Tack och lov låter de flesta Linux-kommandon(most Linux commands) dig kedja ihop flera mellanslagsseparerade filnamn inom ett enda kommando. Så här:

sudo chown someone_else:grupp2 exempel1.txt exempel2.txt

Använd samma knep för att kontrollera ägandet av flera filer också:

ls -l exempel1.txt exempel2.txt

Även för att kombinera flera filnamn till ett enda kommando är processen för obekväm för mer än ett par filer. Ett bättre tillvägagångssätt är att ändra ägandet av hela innehållet i en katalog på en gång.

Detta uppnås genom att lägga till en -R-flagga till chown-kommandot. Detta gör att chown går igenom katalogens innehåll och rekursivt ändrar ägandet av varje fil inuti. Här är en demonstration:

sudo chown -R someone_else:grupp2 exempel

Vi kan använda den rekursiva flaggan igen för att kontrollera äganderätten till filerna i exempelmappen.

ls -l -R exempel

Ändra filägande med UID

Systemadministratörer som hanterar många användare kommer snabbt att tröttna på att ange användarnamn upprepade gånger. Ett enstaka stavfel i något av namnen orsakar ett fel i att använda chown, vilket saktar ner avsevärt.

Ett bättre alternativ är att använda användar-ID istället. UID är ett(UID) fyrsiffrigt nummer som tilldelas varje skapad användare, från 1000 och uppåt. Detta är mycket lättare att ange än en sträng och mycket mindre felbenäget.

För att använda den här metoden, ersätt bara användarnamnet med UID:

sudo chown 1001 exempel.txt

Om du inte känner till en användares UID kan du snabbt kontrollera det med kommandot id. Ange bara(Just) id -u användarnamn för att se användarens unika ID.

Denna metod kan utökas till att även omfatta gruppnamn. För att få UID för en användares inloggningsgrupp och andra grupper de tillhör, använd kommandot id utan flaggan -u.

id någon_annan

Som du kan se har vi olika grupp-ID som den angivna användaren tillhör. Om vi ​​sätter ihop allt, kan vi använda chown så här för att tilldela en ny ägare och ändra gruppen för en fil:

sudo chown 1001:1003 exempel.txt

Vad mer kan du göra med kommandot(Command) chown ?

Vi har redan visat de flesta vanliga användningsområdena för chown. Du kan nu ändra användare och grupper som äger en fil genom olika metoder. Men det är inte den fullständiga gränsen för kommandots förmågor.

Du kan hänvisa till de officiella man-sidorna för en teknisk beskrivning och en komplett lista över argument som du kan använda med kommandot. Ange bara(Just) man chown i terminalen för att se den.

Är Chown användbar?

Om du är den enda användaren av din dator behöver du aldrig använda chown. Men om du använder ett Linux- system i en professionell miljö, oavsett om det är en kommersiell server eller en universitetsdator, är det ytterst viktigt att behärska kommandot chown (utöver chmod ).

Möjligheten att tilldela och ta bort filer till användare och grupper är avgörande för att upprätthålla strikta gränser i fleranvändarsystem. Det bästa med chown är dess flexibilitet – du kan arbeta med enskilda filer eller hela kataloger med samma kommando.

Du kan också tilldela äganderätt till användare och grupper separat och i ett kombinerat uttalande. Används med de mer bekväma UID:erna(UIDs) gör det hanteringen av även de mest komplexa användarhierarkierna till en lek.



About the author

Jag är en mjukvaruingenjör med över 15 års erfarenhet av Microsoft Office och Edge. Jag har också utvecklat flera verktyg som används av slutanvändare, till exempel en app för att spåra viktig hälsodata och en ransomware-detektor. Mina färdigheter ligger i att utveckla elegant kod som fungerar bra på olika plattformar, samt att ha stor förståelse för användarupplevelse.



Related posts