Приложение, которое я использую, не запустится с этим сообщением пользователя: [Errno 13] Permission denied: '/home/sleblanc/.config/app/.config
Когда я использовал ls
, файл обнаружился так:
?--------- 1 root root 0 Dec 31 1969 .config
Запуск stat в файле дает мне это:
% 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
Самым удивительным является упоминание о «странном файле».
Что за странный файл?
filesystems
stat
sleblanc
источник
источник
stat -c '%f' .config
печатает? (Вы должны получить четырехзначное шестнадцатеричное число.) Кроме того, чтоstat -f .config
печатает? (Это сообщает информацию о файловой системе, содержащей.config
.)Ответы:
(Предполагая, что GNU ...) Если
stat
не мог сказать, что это за тип (каталог, (пустой) обычный файл, ссылка, сокет, ...), он говоритweird file
. Я бы догадался о повреждении файловой системы и предложил быfsck
.В 2014 году в GNU coreutils были добавлены дополнительные распознанные типы файлов. Таким образом, если ваша версия старше этой, это может быть приемлемый файл для некоторых особых обстоятельств, но приложение, скорее всего, сохранит свою конфигурацию в обычном файле.
источник
stat
из GNU coreutils в моей системе радостно сообщает о сокете какsocket
. Симлинки сообщаются какsymbolic link
. Жесткие ссылки неотличимы от «обычных» файлов и сообщаются какregular file
(в конце концов, так и есть), за исключением того, что количество ссылок> 1.