GNU/Linux >> Tutoriels Linux >  >> Ubuntu

'cat' :Impossible d'ouvrir le fichier :autorisation refusée ?

J'essaie de copier l'intégralité du / répertoire vers un autre emplacement. Lorsque vous faites cp de manière récursive, cela échoue sur certains fichiers comme :-

/ # ls -lrt /sys/module/nf_conntrack_ipv4/uevent
--w-------    1 root     root          4096 Mar  7 06:29 /sys/module/nf_conntrack_ipv4/uevent
/ #
/ # cat /sys/module/nf_conntrack_ipv4/uevent
cat: can't open '/sys/module/nf_conntrack_ipv4/uevent': Permission denied
/ # cp /sys/module/nf_conntrack_ipv4/uevent /tmp
cp: can't open '/sys/module/nf_conntrack_ipv4/uevent': Permission denied

Si je crée un fichier avec seulement w permissions et essayez de le copier/catcher, je n'y voyais aucun problème. Cependant, pour certains fichiers comme celui mentionné ci-dessus, je ne parviens pas à le copier ou à le chater même si j'essaie en tant qu'utilisateur root. De plus, la chose étrange est que la taille du fichier mentionné ci-dessus est mentionnée comme étant 4096, ce qui est similaire à celui que nous avons pour le répertoire. Est-ce un fichier spécial ?

Je suppose qu'il me manque quelque chose ici et que j'ai besoin d'informations pour en savoir plus sur ces fichiers ou ces comportements. Veuillez m'aider à comprendre pourquoi je ne suis pas autorisé à cat le contenu de ces fichiers.

Réponse acceptée :

Dans un système de fichiers normal, par ex. ext4 , si vous n'avez que w autorisation dans un fichier, vous ne pourrez pas lire (cat ) il, vous devez lire (r ) peu pour cela. Notez que, root peut lire n'importe quel fichier indépendamment des bits d'autorisation.

Maintenant, /sys est un point de montage de sysfs spécial fourni par le noyau Linux qui est en fait un système de fichiers virtuel et fonctionne différemment des systèmes de fichiers ordinaires. /sys contient des informations relatives à l'appareil du système.

Modifier quelque chose dans /sys modifierait directement la structure de données interne du noyau, donc cela dépend du noyau ce qu'il autoriserait ou refuserait.

Pour /sys/module/nf_conntrack_ipv4/uevent , vous n'avez que w bit défini pour le propriétaire (root ), même si vous ajoutez r bit pour root (ce qui est une très mauvaise idée ), lors de la lecture du fichier, vous obtiendrez une erreur d'E/S car, de par sa conception, le noyau ne permettrait à personne de lire les uevents pour le nf_conntrack_ipv4 module.


Ubuntu
  1. (Résolu) Impossible d'ouvrir la boîte aux lettres /var/mail/user :erreur d'autorisation refusée sous Linux

  2. Questions d'entretien Linux :fichiers ouverts / descripteurs de fichiers ouverts

  3. C ouvert vs ouvert

  4. Autorisation d'extraction Git refusée Linux ?

  5. autorisation refusée sur le fichier authorized_key

Comment décompresser (ouvrir) le fichier Gz

Comment ouvrir un fichier sous Linux

Comment ouvrir le gestionnaire de fichiers Ubuntu en tant qu'utilisateur root

Apache ne peut pas accéder au fichier alors qu'il a l'autorisation ?

Autorisation de montage CIFS refusée sous Linux - Corrigé !

maven:autorisation bash mvn refusée