- Dave McKay
@TheGurkha
- 3 September 2019, 8:00 am EDT
Filer och kataloger i Linux-system som alla hör till någon. Du kan ändra äganderätten med kommandot chown
. Vi visar dig hur.
varje fil tillhör en användare och en grupp
Linux är ett fleranvändarsystem., Operativsystemet tillåter flera användarkonton som ska definieras och för alla giltiga användare att logga in på datorn. Dessutom kan flera användare använda en enda dator samtidigt.
För att upprätthålla en post över vilka filer som tillhör vilken användare och för att upprätthålla viss säkerhet använder Linux ägarbegreppet. Varje fil tillhör en ägare-en användare-och en grupp.
När en fil skapas är dess ägare användaren som skapade den. Den grupp som filen tillhör-gruppen” äga ” – är användarens aktuella grupp., Användare och grupper har namn, och de har också numeriska identiteter, kallas en användare (eller unik) identifierare (UID) och en grupp identifierare (GID).
När du skapar en fil ägs den av dig och tillhör din nuvarande grupp. Vanligtvis är detta den grupp du har skrivit in. Som standard är detta en grupp som delar samma namn som ditt användarnamn och skapades när du skapades som användare på systemet.
Du kan använda kommandotchown
för att ändra ägarvärdena till något annat., Du kan ställa in en ny ägare, en ny grupp eller en ny ägare och en ny grupp samtidigt. Ägaren till en fil kan ändra gruppägandet, men endast root kan ändra användarägandet eftersom det innebär en annan användare. Utan root-privilegier kan du inte göra en annan användare på systemet omedvetet ”anta” en fil.
Varför vill du ändra äganderätten?,
här är några exempel på situationer där du kanske vill göra det här:
- Om du överför filer mellan olika Linux-eller Unix-liknande operativsystem måste du byta användare och gruppägare till den nya användaren och gruppägare av kontot du vill använda filerna under på den nya Linux-datorn.
- en användare kan lämna din organisation, och alla hans filer kommer att vara en annan anställd. Du kommer att behöva byta ägare och gruppägare till den anställd som nu ansvarar för dessa filer.,
- Du kan skriva ett skript som kommer att användas av en viss användare.
- Du kan skapa en fil eller katalog inloggad som root, men du vill att den ska vara tillgänglig för en viss användare.
visa dina grupper, UID och GID
för att lista de grupper du är i kan du använda kommandotgroups
.,
groups
för att få en lista över grupperna, deras numeriska ID och ditt UID och GID, använd kommandotid
:
id
Du kan använda några alternativ med ID för att förfina utgången.
- -u: lista din UID.
- -g: lista din effektiva (nuvarande) GID.
- -nu: lista ditt användarnamn.
- -ng: lista ditt nuvarande gruppnamn.,
id -u
id -g
id -nu
id -ng
Visa användare och Gruppägande av en fil
för att se ägarna till en fil eller katalog, använd -l
(lång notering) alternativ med ls
.
ls -l
Vi kan se att namnetdave
visas två gånger i noteringen. Det vänstra utseendet talar om för oss att filägaren är en användare som heter dave
., Den höger-mest dave
berättar filen tillhör en grupp som också kallas dave
.
När en Linux-användare skapas läggs de som standard till i en privat grupp som heter användarnamn. De är den enda medlemmen i den gruppen.
den här körbara filen ägs av användaren mary
och gruppen filen tillhör är mary's
privat grupp.,
ls -l
den här filen ägs av användarenoscar
, men gruppen som filen tillhör kallasresearchlab
. Det betyder att andra medlemmar i gruppen researchlab
kan komma åt den här filen, enligt de filbehörigheter som har ställts in för medlemmarna i den gruppen.
ändra Användarägande
låt oss arbeta igenom några exempel. Det här kommandot ändrar användarens ägande av filen medan.C till användaren mary
.,
sudo chown mary while.c
vi kan användals
för att se ändringarna av filegenskaperna.
ls -l while.c
Du kan användachown
för att ändra äganderätten till flera filer samtidigt.
sudo chown mary getval.c global.c goto.c
detta ändrar användarägandet för alla tre filerna.
ls -l getval.c global.c goto.c
Du kan använda jokertecken för att välja grupper av filer. Detta kommando kommer att ändra användarens ägande av alla filer som börjar med bokstaven ” C.,”
sudo chown mary c*.*
alla filer kommer nu att ha mary
som ägare. Observera att ingen av koncernens ägarskap har ändrats.
ls -l mary c*.*
låt oss ändra äganderätten till en katalog. Vi skickar helt enkelt katalognamnet till chown
istället för ett filnamn.
sudo chown mary ./archive/
för att kontrollera ägande egenskaper i katalogen använder vils
, men också använda-d
(katalog) alternativet till det., Detta listar egenskaperna för katalogen, Inte filerna inuti den.
ls -l -d ./archive/
för att ändra äganderätten till alla filer i en katalog kan du använda alternativet -R
(rekursiv). Det här alternativet ändrar användarägandet för alla filer i mappenarchive
.
sudo chown -R mary ./archive/
låt oss nu titta på filerna i arkivkatalogen.
ls -l ./archive/
som förväntat hör alla filer nu till mary
.,
ändra Gruppägande
det finns olika sätt att ändra gruppägande.
för att ändra gruppägandet samtidigt som du ändrar användarägandet, skicka det nya ägarnamnet och det nya gruppnamnet med ett kolon ”:” separera dem. Gruppen måste redan existera.
sudo chown mary:researchlab charm.c
användarägaren och gruppen som filen tillhör har båda ändrats.
ls -l charm.c
ett stenografiskt sätt att ändra gruppägandet till den nuvarande gruppen av den nya ägaren, bara ge kolon och utelämna gruppnamnet.,
sudo chown mary: caps.c
ls -l caps.c
både användarägande och gruppägande har ändrats tillmary
.
om du bara vill ändra gruppägandet föregår du det med ett kolon och utelämnar användarnamnet. Användarägaren kommer inte att ändras.
sudo chown :researchlab at.c
ls -l at.c
gruppägandet har ändrats, men användarägandet förblir detsamma.
använda Chown med UID-och GID-värden
Du kan använda de numeriska UID-och GID-värdena med kommandotchown
., Det här kommandot ställer in användaren och gruppägandet till mary
.
sudo chown 1001:1001 at.c
ls -l at.c
innehav är nio tiondelar av lagen
eller så säger de. Men i Linux är ägande en massiv del av filsäkerhet, med filbehörigheter som ger resten av det. Använd kommandonachown
ochchmod
för att säkra filåtkomst på ditt system.
Dave McKay använde först datorer när stansade papperstejp var på modet, och han har programmerat sedan dess., Efter över 30 år i IT-branschen är han nu en heltidsjournalist inom teknik. Under sin karriär har han arbetat som frilansprogrammerare, chef för ett internationellt mjukvaruutvecklingsteam, en IT-tjänst projektledare och senast som dataskyddsansvarig. Dave är en Linux evangelist och öppen källkod förespråkare.Läs hela Bio ”