Une application que j'utilise ne commencera pas par ce message utilisateur: [Errno 13] Permission denied: '/home/sleblanc/.config/app/.config
Quand j'ai utilisé ls
, le fichier est apparu comme tel:
?--------- 1 root root 0 Dec 31 1969 .config
Exécuter stat sur le fichier me donne ceci:
% stat .config
File: .config
Size: 0 Blocks: 0 IO Block: 4096 weird file
Device: 2dh/45d Inode: 9799944 Links: 1
Access: (0666/?rw-rw-rw-) Uid: ( 1000/ sleblanc) Gid: ( 1000/ sleblanc)
Access: 1969-12-31 19:00:00.000000000 -0500
Modify: 1969-12-31 19:00:00.000000000 -0500
Change: 2018-04-07 23:40:22.549653691 -0400
Le plus surprenant est cette mention d'un "fichier étrange".
Qu'est-ce qu'un fichier étrange?
filesystems
stat
sleblanc
la source
la source
stat -c '%f' .config
impression? (Vous devriez obtenir un nombre hexadécimal à quatre chiffres.) Aussi, qu'est-ce qui eststat -f .config
imprimé? (Cela rapporte des informations sur le système de fichiers contenant.config
.)Réponses:
(En supposant que GNU ...) Si
stat
je ne pouvais pas dire de quel type il s'agit (répertoire, fichier normal (vide), lien, socket, ...), dit-ilweird file
. Je suppose que la corruption du système de fichiers et suggèrefsck
.En 2014 , d'autres types de fichiers reconnus ont été ajoutés à GNU coreutils. Donc, si votre version est plus ancienne que cela, il se peut que ce soit un fichier raisonnable dans certaines circonstances spéciales, mais une application risque fort de stocker sa configuration dans un fichier normal.
la source
stat
de GNU coreutils sur mon système rapporte avec bonheur un socket en tant quesocket
. Les liens symboliques sont signalés commesymbolic link
. Les liens durs sont impossibles à distinguer des fichiers "normaux" et sont signalés comme telsregular file
(c'est ce qu'ils sont après tout), sauf que le nombre de liens est> 1.