Commande Linux chattr avec des exemples pratiques

LinuxBeginner
Pratiquer maintenant

Introduction

Dans ce laboratoire, nous allons apprendre à utiliser la commande Linux chattr, qui est utilisée pour modifier les attributs de fichiers et de répertoires. Nous allons explorer comment utiliser la commande chattr pour définir et supprimer divers attributs de fichiers, tels que l'attribut immuable qui empêche un fichier d'être supprimé ou modifié. Nous verrons également des exemples pratiques d'utilisation de la commande chattr pour protéger des fichiers et des répertoires importants.

Le laboratoire couvre les étapes suivantes :

  1. Comprendre la commande chattr et ses options courantes.
  2. Modifier les attributs de fichiers à l'aide de la commande chattr, y compris la définition des attributs immuable et append-only.
  3. Protéger des fichiers importants avec l'attribut immuable.

Linux Commands Cheat Sheet

Comprendre la commande chattr

Dans cette étape, nous allons apprendre à utiliser la commande chattr en Linux, qui est utilisée pour modifier les attributs d'un fichier ou d'un répertoire. La commande chattr vous permet de définir ou de supprimer divers attributs de fichiers, tels que l'attribut immuable, qui empêche un fichier d'être supprimé ou modifié.

Tout d'abord, explorons la syntaxe de base de la commande chattr :

sudo chattr [options] [files]

Les options les plus couramment utilisées avec chattr sont les suivantes :

  • + - Ajoute l'attribut (ou les attributs) spécifié(s)
  • - - Supprime l'attribut (ou les attributs) spécifié(s)
  • i - Définit l'attribut immuable
  • a - Définit l'attribut append-only
  • s - Définit l'attribut de suppression sécurisée
  • u - Définit l'attribut undeletable

Maintenant, voyons quelques exemples d'utilisation de la commande chattr :

## Définit l'attribut immuable sur un fichier
sudo chattr +i file.txt

## Supprime l'attribut immuable d'un fichier
sudo chattr -i file.txt

## Définit l'attribut append-only sur un répertoire
sudo chattr +a ~/project/logs

## Supprime l'attribut append-only d'un répertoire
sudo chattr -a ~/project/logs

Sortie d'exemple :

## Définit l'attribut immuable sur un fichier
$ sudo chattr +i file.txt

## Supprime l'attribut immuable d'un fichier
$ sudo chattr -i file.txt

## Définit l'attribut append-only sur un répertoire
$ sudo chattr +a ~/project/logs

## Supprime l'attribut append-only d'un répertoire
$ sudo chattr -a ~/project/logs

La commande chattr est un outil puissant pour gérer les attributs de fichiers et de répertoires en Linux. Dans l'étape suivante, nous explorerons des exemples pratiques supplémentaires d'utilisation de la commande chattr.

Modifier les attributs de fichiers à l'aide de chattr

Dans cette étape, nous explorerons en détail la manière d'utiliser la commande chattr pour modifier les attributs de fichiers.

Tout d'abord, créons un fichier d'échantillonnage avec lequel travailler :

touch ~/project/file.txt

Maintenant, définissons l'attribut immuable sur le fichier :

sudo chattr +i ~/project/file.txt

Sortie d'exemple :

$ sudo chattr +i ~/project/file.txt

Avec l'attribut immuable défini, le fichier ne peut pas être supprimé, renommé ou modifié, même par l'utilisateur root. Essayons de supprimer le fichier :

rm ~/project/file.txt

Sortie d'exemple :

$ rm ~/project/file.txt
rm: impossible de supprimer '~/project/file.txt': Operation non autorisée

Comme vous pouvez le voir, la commande rm a échoué à supprimer le fichier en raison de l'attribut immuable.

Ensuite, définissons l'attribut append-only sur un répertoire :

sudo chattr +a ~/project/logs

Sortie d'exemple :

$ sudo chattr +a ~/project/logs

Avec l'attribut append-only défini, les fichiers dans le répertoire ~/project/logs ne peuvent que recevoir des ajouts, pas être modifiés ou supprimés. Essayons de créer un nouveau fichier et d'y ajouter du texte :

echo "Nouvelle entrée de journal" >> ~/project/logs/log.txt

Sortie d'exemple :

$ echo "Nouvelle entrée de journal" >> ~/project/logs/log.txt

Cependant, si nous essayons de modifier le fichier, l'opération sera refusée :

echo "Modifier le journal" > ~/project/logs/log.txt

Sortie d'exemple :

$ echo "Modifier le journal" > ~/project/logs/log.txt
-bash: ~/project/logs/log.txt: Operation non autorisée

Dans cette étape, vous avez appris à utiliser la commande chattr pour définir respectivement les attributs immuable et append-only sur des fichiers et des répertoires. Ces attributs peuvent être utiles pour protéger des fichiers et des journaux importants contre des modifications accidentelles ou non autorisées.

Protéger des fichiers importants avec l'attribut immuable

Dans cette dernière étape, nous allons apprendre à utiliser l'attribut immuable pour protéger des fichiers importants contre des modifications ou suppressions accidentelles ou malveillantes.

Commençons par créer un fichier important que nous souhaitons protéger :

echo "Ceci est un fichier important" > ~/project/important.txt

Maintenant, définissons l'attribut immuable sur le fichier :

sudo chattr +i ~/project/important.txt

Sortie d'exemple :

$ sudo chattr +i ~/project/important.txt

Avec l'attribut immuable défini, le fichier ne peut pas être supprimé, renommé ou modifié, même par l'utilisateur root. Essayons de supprimer le fichier :

rm ~/project/important.txt

Sortie d'exemple :

$ rm ~/project/important.txt
rm: impossible de supprimer '~/project/important.txt': Opération non autorisée

Comme vous pouvez le voir, la commande rm a échoué à supprimer le fichier en raison de l'attribut immuable.

Ensuite, essayons de modifier le fichier :

echo "Essayez de modifier le fichier" > ~/project/important.txt

Sortie d'exemple :

$ echo "Essayez de modifier le fichier" > ~/project/important.txt
-bash: ~/project/important.txt: Opération non autorisée

Encore une fois, l'opération n'est pas autorisée car le fichier a l'attribut immuable défini.

Pour supprimer l'attribut immuable et autoriser les modifications, vous pouvez utiliser la commande suivante :

sudo chattr -i ~/project/important.txt

Sortie d'exemple :

$ sudo chattr -i ~/project/important.txt

Maintenant, vous pouvez modifier ou supprimer librement le fichier.

L'attribut immuable est un outil puissant pour protéger des fichiers et des répertoires importants contre des modifications accidentelles ou malveillantes. En définissant cet attribut, vous pouvez vous assurer que les fichiers système critiques, les paramètres de configuration ou les données sensibles restent intacts, même face à des erreurs d'utilisateur ou des violations de sécurité.

Résumé

Dans ce laboratoire, nous avons appris à utiliser la commande Linux chattr, qui est utilisée pour modifier les attributs de fichiers et de répertoires. Nous avons tout d'abord exploré la syntaxe de base et les options courantes de la commande chattr, telles que la définition des attributs immuable, append-only et de suppression sécurisée. Ensuite, nous avons pratiqué la modification des attributs de fichiers à l'aide de la commande chattr, y compris la définition de l'attribut immuable pour protéger les fichiers importants contre la suppression ou la modification. Dans l'ensemble, la commande chattr est un outil puissant pour gérer les attributs de fichiers et de répertoires en Linux.

Linux Commands Cheat Sheet