Eine Anwendung, die ich verwende, startet nicht mit der folgenden Benutzermeldung: [Errno 13] Permission denied: '/home/sleblanc/.config/app/.config
Als ich verwendete ls
, zeigte sich die Datei als solche:
?--------- 1 root root 0 Dec 31 1969 .config
Das Ausführen von stat in der Datei gibt mir Folgendes:
% 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
Am überraschendsten ist die Erwähnung einer "seltsamen Datei".
Was ist eine seltsame Datei?
filesystems
stat
sleblanc
quelle
quelle
stat -c '%f' .config
druckt? (Sie sollten eine vierstellige Hexadezimalzahl erhalten.) Was wird auchstat -f .config
gedruckt? (Dieser Bericht enthält Informationen zum Dateisystem.config
.)Antworten:
(Angenommen, GNU ...) Wenn
stat
nicht klar ist, um welchen Typ es sich handelt (Verzeichnis, (leere) reguläre Datei, Link, Socket, ...), heißt esweird file
. Ich würde die Beschädigung des Dateisystems erraten und vorschlagenfsck
.Im Jahr 2014 wurden zusätzliche erkannte Dateitypen zu GNU coreutils hinzugefügt. Wenn Ihre Version älter als diese ist, kann es sich unter bestimmten Umständen durchaus um eine vernünftige Datei handeln, aber eine App speichert ihre Konfiguration höchstwahrscheinlich in einer regulären Datei.
quelle
stat
von GNU coreutils auf meinem System meldet glücklich einen Socket alssocket
. Symlinks werden als gemeldetsymbolic link
. Hardlinks sind nicht von "regulären" Dateien zu unterscheiden und werden alsregular file
(das ist es schließlich) gemeldet , mit der Ausnahme, dass die Anzahl der Links> 1 ist.