Guies i tutorials

Centenars de tutorials i guies pas a pas curosament escrits per el nostre equipo de suport.

Com canviar els permisos d'un fitxer o directori a Linux

En aquest manual aprendrem a canviar els permisos de qualsevol fitxer en un sistema operatiu GNU/Linux a través de la línia d'ordres.

Abans de començar amb el tutorial, no teniu un servidor Cloud amb Linux? No et preocupis! Amb només un clic, pots desplegar fàcilment amb SW Hosting.

cta:cloud_so

Abans d'esmentar qualsevol tipus d'ordres, però, haurem d'aprendre sobre el funcionament del sistema de permisos en sistemes operatius GNU/Linux. T'ho mostrarem a continuació:

1. Tipus de permisos

En concret hi ha tres tipus de permisos que un fitxer o directori en linux pot tenir assignat:

  • Permís de lectura: permet a l'usuari llegir l'arxiu o en directoris llistar el contingut.
  • Permís d'escriptura: permet a l'usuari modificar el fitxer o directoris afegir fitxers o modificar el propi directori.
  • Permís d'execució: permet executar fitxers (per exemple scripts de BASH) o en directoris tenir-hi accés (encara que no necessàriament llistar el contingut si no es disposa de permís de lectura).

2. Tipus d'usuaris

Els tres tipus de permisos que hem esmentat anteriorment poden ser activats o desactivats a cada fitxer/directori per a qualsevol dels tres tipus d'usuaris que esmentarem a continuació:

  • Propietari: designat com el propietari de l'arxiu/directori.
  • Grup: grup d'usuaris a qui pertany l'arxiu/directori.
  • Un altre: qualsevol altre usuari del sistema.

3. Combinacions de permisos i usuaris

Com ja hem explicat a l'apartat anterior, aquests tres tipus d'usuaris i permisos poden ser assignats lliurement.

Per exemple, el propietari del fitxer/directori pot tenir permisos de lectura, escriptura i execució, mentre que altres usuaris del sistema només poden tenir permisos de lectura. Qualsevol combinació d'aquests tres permisos i tres usuaris és factible brindant un total de 512 combinacions possibles.

Abans de començar amb el tutorial, no tens un servidor Cloud amb Linux? No et preocupis! Amb només un clic, pots desplegar-lo fàcilment amb SW Hosting.

cta:cloud_so

4. Canviar permisos d'un fitxer o directori

Finalment, per assignar aquests permisos utilitzarem l'ordre chmod.

info Per poder canviar els permisos d'un fitxer o directori cal ser propietari o usuari amb privilegis d'administració. Només el propietari o usuaris de tipus root poden canviar els permisos d'un fitxer/directori.

La comanda chmod té la sintaxi següent:

chmod [permís a assignar o retirar] nomdearxiu

Els símbols usats per descriure un permís són els següents:

Permisos:

  • r: lectura
  • w: escriptura
  • x: execució

Usuaris:

  • u: propietari
  • g: grup
  • o: altres
  • a: tots els anteriors

Així, l'abreujament u+w indicaria que es vol assignar el permís d'escriptura al propietari.

Altres exemples i combinacions:

  • o+x (assigna el permís d'execució a "altres")
  • a-x (elimina el permís d'execució a tots els usuaris)
  • g-w (elimina el permís d'execució als membres del grup a qui pertany l'arxiu)
  • u+r (atorga permisos de lectura al propietari)

Coneixent aquestes abreviatures, ara podrem utilitzar la comanda chmod de la següent manera:

chmod u+x nomarxiu

Aquesta ordre atorgaria permís d'execució al fitxer nomarxiu i al propietari del mateix.

Múltiples permisos poden ser atorgats a múltiples usuaris alhora. D'aquesta manera:

chmod ug+wrx nomarxiu

Aquesta ordre atorgaria permisos de lectura, escriptura i execució (permisos complets) tant al propietari com als membres del grup, a l'arxiu nomarxiu.

Finalment, cal destacar la utilitat de l'opció -R que aplica aquests permisos de forma recursiva a qualsevol fitxer que es trobi dins d'un directori. Per exemple:

chmod -R u+wx nomdirectori

Aquesta ordre aplica els permisos d'escriptura i execució per al propietari a qualsevol fitxer o directori contingut dins de nomdirectori, inclusivament a fitxers/directoris continguts en nivells inferiors.

info l'ordre chmod disposa d'una anomenada mod octal que permet assignar permisos mitjançant l'ús de números. Aquesta informació estarà detallada en un altre manual d'usuari.

Recuerda que si no dispones aun de un servidor Cloud con Linux puedes desplegarlo fácilmente con SW Hosting.

cta:cloud_so