Les fichiers et répertoires Linux ont des informations de permission telles que "qui est autorisé à effectuer quel type d'opération", et cela s'appelle "permission".
Je savais que le fichier avait des permissions
, mais je ne savais pas qu'il était également défini dans le répertoire, donc je vais le mettre ensemble.
Tout d'abord, utilisez ls -l / bin / cat
pour afficher les informations de la commande cat
.
$ ls -l /bin/cat
-rwxr-xr-x 1 root root 35064 Jan 18 2018 /bin/cat
Le «-» au début de la ligne indique le type de fichier.
symbole | sens |
---|---|
- | Fichier normal |
d | annuaire |
l | Lien symbolique |
Les neuf caractères après le type de fichier (rwxr-xr-x
) sont appelés modes de fichier, qui indiquent les autorisations du fichier.
Les 9 caractères sont «un bloc pour 3 caractères», et sont respectivement divisés en «propriétaire», «groupe» et «autres groupes».
Propriétaire | groupe | その他のgroupe |
---|---|---|
rwx | r-x | r-x |
rwx signifie respectivement "lire", "écrire" et "exécuter".
symbole | sens |
---|---|
r | en train de lire(read) |
w | l'écriture(write) |
x | Courir(excute) |
$ ls -l /bin/cat
-rwxr-xr-x 1 root root 35064 Jan 18 2018 /bin/cat
Le / bin / cat
ci-dessus, mais l'écriture par quiconque autre que l'utilisateur root est interdite.
Quand j'ai essayé d'écrire, j'étais en colère de ne pas écraser l'option `` 'readonly' option is set (add! To override) `.
Vérifiez les autorisations du répertoire sujet.
Pour vérifier les autorisations de répertoire avec la commande ls
, vous devez utiliser l'option -d
, qui affiche des informations sur le répertoire lui-même, en plus de l'option -l
.
$ ls -ld Code/
drwxrwxr-x 4 vagrant vagrant 4096 Apr 8 14:54 Code/
Les permissions de répertoire utilisent les symboles "r", "w" et "x" ainsi que les fichiers, mais ** la signification de chaque symbole peut différer de celle des fichiers (en particulier "x"). ~~ Il a une signification complètement différente. ~~ **
symbole | sens |
---|---|
r | en train de lire(Obtenir une liste des fichiers contenus dans un répertoire) |
w | l'écriture(Créer et supprimer des fichiers et des répertoires sous le répertoire) |
x | Courir(Faire du répertoire le répertoire courant) |
Créez maintenant un fichier et testez-le.
$ mkdir permissionTest //Créez un répertoire appelé permissionTest
$ touch permissionTest/file1.txt //file1 sous permissionTest.Créez un fichier appelé txt
$ ls -ld permissionTest/ //Vérifiez le répertoire permissionTest
drwxrwxr-x 2 vagrant vagrant 4096 Apr 23 11:50 permissionTest/
$ ls -l permissionTest/ //Vérifiez les fichiers sous permission
-rw-rw-r-- 1 vagrant vagrant 0 Apr 23 11:50 file1.txt //Succès
Rendez les autorisations du répertoire permissionTest illisibles et essayez d'y accéder.
$ chmod a-r permissionTest/ //Protection en lecture pour tous les utilisateurs
$ ls -ld permissionTest/
d-wx-wx--x 2 vagrant vagrant 4096 Apr 23 11:50 permissionTest/ //Protégé en lecture.
$ ls permissionTest/
ls: cannot open directory 'permissionTest/': Permission denied
** Impossible d'accéder sans autorisation. ** **
Si write (w) est défini dans le répertoire, il peut être créé / supprimé même si les fichiers qu'il contient ont des restrictions d'écriture.
** Cela signifie que la suppression d'un fichier dépend des autorisations du répertoire, et non des autorisations du fichier. ** **
Essayez d'écrire des restrictions sur le fichier et voyez si le fichier peut être supprimé.
$ chmod a-w file1.txt //Supprimer l'autorisation d'écriture pour le fichier
$ ll file.txt //Vérifier les autorisations des fichiers
-r--r--r-- 1 vagrant vagrant 0 Apr 23 11:50 file1.txt //Confirmation de la suppression de l'autorisation d'écriture
$ rm file1.txt //Supprimer le fichier
rm: remove write-protected regular empty file 'file1.txt'?oui Voulez-vous le supprimer?
Bien sûr, vous pouvez le supprimer.
Assurez-vous que vous ne pouvez pas accéder aux répertoires qui ne sont pas configurés pour exécuter "x".
$ chmod a-x permissionTest/ //Restreindre l'autorisation d'exécution de permissionTest
$ ls -ld permissionTest/ //Vérifiez les autorisations de permissionTest
drw-rw-r-- 2 vagrant vagrant 4096 Apr 23 11:50 permissionTest/ //Vérification
v$ cd permissionTest/ //permissionTest/Accès
-bash: cd: permissionTest/: Permission denied //Ne peux pas.
symbole | Pour les fichiers | Pour les répertoires |
---|---|---|
r | Lire le fichier | Obtenir une liste des fichiers contenus dans un répertoire |
w | Écrire dans un fichier | Créer et supprimer des fichiers et des répertoires sous le répertoire |
x | Exécution de fichier | Faire du répertoire le répertoire courant |
Nouveau manuel Linux
Recommended Posts