Я обычно видел это, если срок действия учетной записи пользователя истек, что может произойти и с пользователем root.
Чтобы проверить, su
пользователю и проверьте, получили ли вы Authentication Failure
, например.:
$ sudo su -
Your account has expired; please contact your system administrator
su: Authentication failure
(Ignored)
Чтобы исправить:обновите срок действия на аккаунте:
sudo chage -M 300 root
Или любое другое имя пользователя, с которым у вас возникли проблемы, вместо root
выше.
Безусловно, файлы в пользовательском каталоге home
могут быть символическими ссылками, указывающими на файлы вне его домашнего каталога. И chmod
изменит разрешения цели символической ссылки, так как разрешения самой символической ссылки обычно не используются. Но проверяя справочную страницу для chmod
, мы видим, что «chmod игнорирует символические ссылки, встречающиеся во время рекурсивного обхода каталогов». Таким образом, ваша заявленная команда chmod o-r -R ~
не повлияет ни на что, что на самом деле не находится непосредственно в вашем домашнем каталоге.
Дополнительную информацию об этом можно найти на справочных страницах chmod
, chown
и ls
.