En aquest tema, aprendrem sobre els permisos i la propietat dels fitxers en un sistema Unix/Linux. Aquests conceptes són fonamentals per a la seguretat i la gestió dels fitxers en el teu sistema.
Conceptes Clau
- Propietat de Fitxers
- Usuari (Owner): L'usuari que ha creat el fitxer o directori.
- Grup (Group): Un conjunt d'usuaris que poden compartir permisos específics sobre el fitxer o directori.
- Altres (Others): Tots els altres usuaris que no són ni l'usuari propietari ni membres del grup.
- Permisos de Fitxers
Els permisos de fitxers es defineixen per a l'usuari, el grup i altres. Hi ha tres tipus de permisos:
- Lectura (r): Permet veure el contingut del fitxer o llistar el contingut del directori.
- Escriptura (w): Permet modificar el contingut del fitxer o afegir/eliminar fitxers dins d'un directori.
- Execució (x): Permet executar un fitxer (si és un script o un programa) o accedir a un directori.
- Visualització de Permisos
Per veure els permisos d'un fitxer o directori, utilitzem la comanda ls -l
.
Sortida típica:
Desglossament:
-rw-r--r--
: Permisos del fitxer.-
: Tipus de fitxer (un guió indica un fitxer regular).rw-
: Permisos de l'usuari (lectura i escriptura).r--
: Permisos del grup (lectura).r--
: Permisos d'altres (lectura).
1
: Nombre d'enllaços.usuari
: Propietari del fitxer.grup
: Grup del fitxer.1234
: Mida del fitxer en bytes.Jan 1 12:34
: Data i hora de la darrera modificació.fitxer.txt
: Nom del fitxer.
Modificació de Permisos
- Comanda
chmod
chmod
La comanda chmod
s'utilitza per canviar els permisos d'un fitxer o directori.
Sintaxi
Exemples
- Afegir permís d'execució per a l'usuari:
chmod u+x fitxer.txt
- Treure permís d'escriptura per al grup:
chmod g-w fitxer.txt
- Establir permisos exactes (lectura i escriptura per a l'usuari, lectura per al grup i altres):
chmod 644 fitxer.txt
- Comanda
chown
chown
La comanda chown
s'utilitza per canviar el propietari i/o el grup d'un fitxer o directori.
Sintaxi
Exemples
- Canviar el propietari del fitxer:
chown nou_usuari fitxer.txt
- Canviar el propietari i el grup del fitxer:
chown nou_usuari:nou_grup fitxer.txt
- Comanda
chgrp
chgrp
La comanda chgrp
s'utilitza per canviar el grup d'un fitxer o directori.
Sintaxi
Exemple
- Canviar el grup del fitxer:
chgrp nou_grup fitxer.txt
Exercicis Pràctics
Exercici 1: Visualitzar Permisos
- Crea un fitxer anomenat
exemple.txt
.touch exemple.txt
- Visualitza els permisos del fitxer.
ls -l exemple.txt
Exercici 2: Modificar Permisos
- Afegir permís d'execució per a l'usuari al fitxer
exemple.txt
.chmod u+x exemple.txt
- Treure permís de lectura per a altres al fitxer
exemple.txt
.chmod o-r exemple.txt
Exercici 3: Canviar Propietari i Grup
- Canviar el propietari del fitxer
exemple.txt
anou_usuari
.sudo chown nou_usuari exemple.txt
- Canviar el grup del fitxer
exemple.txt
anou_grup
.sudo chgrp nou_grup exemple.txt
Resum
En aquesta secció, hem après sobre la propietat i els permisos dels fitxers en un sistema Unix/Linux. Hem vist com visualitzar, modificar i gestionar aquests permisos utilitzant les comandes ls
, chmod
, chown
i chgrp
. Aquests conceptes són essencials per a la seguretat i la gestió eficient dels fitxers en el teu sistema.
Curs de Programació en Bash
Mòdul 1: Introducció a Bash
- Què és Bash?
- Configuració del teu Entorn
- Navegació Bàsica per la Línia de Comandes
- Entenent la Shell
Mòdul 2: Comandes Bàsiques de Bash
- Operacions amb Fitxers i Directoris
- Comandes de Processament de Text
- Permisos i Propietat de Fitxers
- Redirecció i Piping
Mòdul 3: Conceptes Bàsics de Scripting
Mòdul 4: Scripting Intermedi
Mòdul 5: Tècniques Avançades de Scripting
- Operacions Avançades amb Fitxers
- Gestió de Processos
- Gestió d'Errors i Depuració
- Expressions Regulars
Mòdul 6: Treballant amb Eines Externes
Mòdul 7: Automatització i Programació
- Treballs Cron
- Automatització de Tasques
- Scripts de Còpia de Seguretat i Restauració
- Monitorització i Registre
Mòdul 8: Millors Pràctiques i Optimització
- Escriure Codi Llegible
- Optimització de Scripts en Bash
- Consideracions de Seguretat
- Control de Versions amb Git