Linux 101: chmod en chown gebruiken

Probeer Ons Instrument Voor Het Oplossen Van Problemen

Als je Linux lang genoeg gebruikt, ga je de opdrachtregel gebruiken. Hoewel bijna elke opdrachtregel-truc nu kan worden gedaan vanaf een GUI-front-end, zijn er momenten waarop de opdrachtregel de enige route is (bijvoorbeeld een headless-server). Als je die route moet afleggen, zul je blij zijn dat je de basisprincipes van de meer belangrijke Linux-commando's onder de knie hebt. Twee zeer belangrijke commando's, chmod en chown, hebben betrekking op rechten en eigendom (respectievelijk). Met deze tools bepaal je wie de eigenaar is en wie bestanden en mappen op je Linux-systeem leest, schrijft en uitvoert. Laten we eens kijken hoe u deze opdrachten kunt gebruiken.

Installatie?

Niet een beetje. Standaard heb je zowel chmod als chown op je systeem geïnstalleerd.

Chmod

Met de opdracht chmod kunt u de machtigingen voor een bestand wijzigen. Het basisgebruik is:

chmod TOESTEMMINGEN BESTAND

Waar PERMISSIONS ofwel het numerieke of het alfa-equivalent is van de machtigingen die u wilt toewijzen en FILE het bestand (of de map) is dat u wilt bewerkstelligen.

Omdat de numerieke machtigingen het gemakkelijkst te begrijpen (en te gebruiken) zijn, laten we die methode eens bekijken.

Onthoud dat bestandsrechten de volgende vorm hebben:

EIGENAAR | GROEP | Alle anderen

Elk van deze secties bevat:

LEES | SCHRIJVEN | UITVOEREN

Elke toestemming (lezen, schrijven, uitvoeren) wordt weergegeven met de binaire weergave van de beginletter:

  • r - 4
  • in 2
  • x - 1

Om de numerieke toestemming te krijgen, voegt u toe welke rechten u samen wilt gebruiken. Dus als je r + w wilt, krijg je 6. Als je r + w + x wilt, krijg je 7. Als je r + x wilt, krijg je 5. Als je alleen r wilt, krijg je 4. Dus onthoud nu dat je moet dekken machtigingen voor drie verschillende gebruikers (Eigenaar, Groep, Alle anderen), moet u voor elk een numeriek nummer hebben. Dus als je wilt dat Eigenaar en Groep rwx-machtigingen hebben en Alle anderen alleen r-machtigingen hebben, heb je:

774

Om nu de toestemming van een bepaald bestand in 774 te veranderen, zou u de volgende opdracht geven:

chmod 774 BESTANDSNAAM

Waar FILENAME de naam van het bestand is.

Chown

Laten we nu eens kijken naar de eigendomsoverdracht. Dit zal je bijten als je een applicatie in een directory installeert als een gebruiker en deze als een andere moet gebruiken. Stel dat u een map heeft in het / opt directory genaamd APP dat behoort tot de gebruiker Bethany maar gebruiker Jakob moet het in plaats daarvan bezitten (als ze allebei toegang nodig hebben, kunt u natuurlijk gewoon de rechten wijzigen of hiervoor een groep maken). Om het eigendom van deze map te veranderen (hiervoor heb je beheerdersrechten nodig), geef je een commando als:

sudo chown jacob.jacob / opt / APP

Het bovenstaande commando zou zowel het eigendom als het groepseigendom van de map veranderen (aangezien jacob.jacob werd gebruikt). Als u die map die bij de oorspronkelijke groep hoort wilt verlaten, voert u de volgende opdracht uit:

sudo chown jacob / opt / APP

en het oorspronkelijke groepseigendom zou intact blijven.

Laatste gedachten

Machtigingen en eigendom op Linux is echter lang niet zo uitdagend als jij - zelfs vanaf de opdrachtregel! Natuurlijk kunt u dezelfde taken uitvoeren vanuit uw bestandsbeheer - als u een bestandsbeheerder heeft!