Filhantering

Hur gör du chown rekursiv?

Hur gör du chown rekursiv?

Ibland kan du hitta fel när du använder alla Linux-operativsystem, t.ex. nekade när du redigerar en fil. Detta beror på färre rättigheter för den aktuella filen. Chown förkortas vanligtvis som "ändra ägare", vilket betyder att Chown är en instruktion för att ändra ägaren till en grupp filer och mappar på Linux. Dessutom måste du ändra ägaren till en mapp som innehåller alla dokument i vissa situationer. Du kan behöva konsumera rekursiv chown, vilket är ett av valen i chown-instruktionen. Rekursivt innebär att chown kommer att göras för alla dokument i den angivna katalogen, och även filer och mappar i alla underkataloger. Du kommer att upptäcka hur du rekursivt kan ändra katalog- och filbehörigheter medan du använder chown-instruktionen i den här guiden.

Syntax:

$ Chown -R Mode Directory

Exempel 01: Enkel chown

Först måste vi se hur chown-kommandot fungerar. Öppna kommandoradsterminalen från applikationerna. Ordna alla mappar och filer från hemkatalogen för användaren “aqsayasin” med hjälp av listkommandot. Utdata visar en lista över filer och mappar som visas.

$ ls

Vi har en fil “main.c ”i hemkatalogen för användaren“ aqsayasin ”. Vi måste kontrollera ägaren till en specifik fil för att tillämpa ändringarna ytterligare. För detta speciella ändamål kommer vi att använda instruktionen “ls -lart”. Som visas nedan kan vi säga att användaren "aqsayasin" är dess ägare och den finns i gruppen "aqsayasin".

$ ls -lart filnamn

Låt oss ändra det genom att ändra dess ägare till "root" -användare. Vi kommer att använda kommandot "chown" nedan för att göra det.

$ sudo chown rotfilnamn

När du kontrollerar filägaren och gruppen med samma kommando “ls -lart” kan du se att ägaren har ändrats. Utgången visar att "root" -användaren som ägare, och den tillhör samma grupp "aqsayasin".

$ ls -lart filnamn

Chown Rekursiv med -R Flagga:

Det första och enklaste sättet är att använda -R-flaggan för att specificera rekursiv karaktär av chowninstruktioner. Låt oss först kontrollera ägarna till alla filer och mappar som finns i hemkatalogen för användaren "aqsayasin" med hjälp av kommandot "ls" nedan. Från nedanstående utdata kan vi se att ägaren av alla filer utom två av dem är användaren “aqsayasin”.

$ ls -la

Exempel 01: Byt ägare

Nu är det dags att byta ägare till alla filer och mappar med -R-flaggan med chown-fråga. Så vi kommer att använda sudo-privilegier för att göra detta. Prova nedanstående "chown" -kommando följt av "-R" -flaggan tillsammans med namnet på ägaren som är "root". Vi har angett katalogens plats inom denna instruktion. Detta innebär att alla filer och mappar som finns i "aqsayasin" -mappen i "Home" -katalogen kommer att ha en "root" i stället för användaren "aqsayasin". Det kan kräva ditt lösenord för root-kontot för att tillämpa ändringarna.

$ sudo chown -R root / home / aqsayasin /

Efter körningskommandot är det dags att kontrollera om ändringarna har gjorts effektivt eller inte. För detta speciella ändamål kommer vi att använda samma listkommando som vi använde tidigare. Så resultatet visar att alla filer ändras till “root”.

$ ls -la

Exempel 02: Ändra grupp

Efter att ha bytt ägare är det dags att ändra gruppen med alla filer och mappar med hjälp av -R-flaggan i chown-instruktionen. Först lista alla filer och mappar med hjälp av listkommandot. Du kan se alla filer och mappar som ligger i gruppen “aqsayasin”.

$ ls -la

Vi kommer att ändra gruppen till "root" från "aqsayasin". För detta kommer vi att använda chown-kommandot med -R-flaggan. Det här kommandot förändras något. För att ändra gruppen kommer vi att använda “:” före gruppnamnet. Vi ger platsen för katalogen som vi vill ändra gruppen för dess undermappar för. Använd nyckelordet "sudo" för att tillämpa gruppnamnet. Det kan kräva att ditt lösenord för sudo-kontot tillämpas enligt nedan.

$ sudo chown -R: root / home / aqsayasin /

Efter att ändringarna har tillämpats listar vi igen alla filer och mappar för att kontrollera uppdateringen. Använd listan nedan för att göra det. Du kan se att gruppen med alla filer och mappar har ändrats till “root”.

$ ls -la

Exempel på enkel chown:

Låt oss ta ett enkelt annat exempel än chown. Du måste skapa två filnamn ”en.txt ”och” scnd.txt ”med hjälp av kommandot pekskärm enligt följande:

$ touch filnamn1
$ touch filnamn2

Låt oss kontrollera ägaren och gruppen för båda filerna med hjälp av listkommandot enligt nedan:

$ ls -l filnamn1
$ ls -l filnamn2

Du kan se att båda filerna har samma ägare och grupp, t.ex.g., “Aqsayasin”.

Låt oss först byta ägare till filen “one.txt ”till“ root ”-användare med det enkla kommandot“ sudo chown ”följt av ägarnamnet och filnamnet enligt nedan:

$ sudo chown rotfilnamn1

När du kontrollerar den första filen igen med hjälp av listkommandot kan du se att ägaren har ändrats till “root”.

$ ls -l filnamn1

Nu kommer vi att tilldela samma rättigheter för den första filen till den andra filen med hjälp av "referens" i kommandot chown följt av det första filnamnet. Därefter måste du ange namnet på den andra filen på vilken ändringarna kommer att tillämpas enligt nedan:

$ sudo chown -reference = filnamn1 filnamn2

Kontrollera nu ägaren och gruppen för den andra filen med samma listkommando som visas nedan:

$ ls -l filnamn2

Från utdata nedan kan vi se att ägaren har ändrats till 'root'.

Slutsats:

Vi har gjort chownen rekursiv med "-R" -flaggan. Förhoppningsvis! Du får inga problem när du använder den här guiden.

Hur man använder AutoKey för att automatisera Linux-spel
AutoKey är ett verktyg för desktopautomatisering för Linux och X11, programmerat i Python 3, GTK och Qt. Med hjälp av dess skript och MACRO-funktional...
Hur man visar FPS-räknare i Linux-spel
Linux-spel fick ett stort tryck när Valve tillkännagav Linux-stöd för Steam-klient och deras spel 2012. Sedan dess har många AAA- och indiespel tagit ...
Hur man laddar ner och spelar Sid Meier's Civilization VI på Linux
Introduktion till spelet Civilization 6 är ett modernt intag av det klassiska konceptet som introducerades i serien Age of Empires-spel. Idén var gans...