Не удается перейти в домашний каталог, хотя права настроены правильно.

Вопрос или проблема

Я полагаю, мне нужна помощь от опытного пользователя Unix…

На системе Ubuntu я сделал что-то глупое. Я ввел sudo chmod 774 .* или что-то подобное в подпапке своей домашней папки, и вдруг я больше не смог перейти в свою домашнюю директорию. Я не совсем уверен в точных цифрах в команде, но я уверен в .*.

Теперь, после перезагрузки, я даже не могу войти в графический интерфейс, и когда я Ctrl + Alt + F1 открываю консоль и вхожу, я получаю сообщение No directory, logging in with HOME=/.

Когда я пытаюсь cd в /home/myusername, я получаю ошибку: -bash: cd: /home/myusername: Permission denied. Также ls не может получить доступ к папке.

Я проверил права доступа к /home/myusername с помощью sudo, и они все правильно установлены:

drwxr-xr-x 25 myusername myusername 4096 Aug 26 17:30 myusername

Тестовый пользователь, которого я создал, имеет те же проблемы. Он также не может войти в графический интерфейс. Только гостевая сессия может это сделать (я полагаю, это потому, что домашняя папка гостя создается внутри /tmp).

Что мне нужно сделать, чтобы восстановить мои права доступа/получить доступ к моей домашней папке снова??? Есть какие-нибудь предложения?

С уважением, Себастьян

Итак, вы владеете своей домашней директорией /home/myusername и имеете права rwx на нее.

Но
cd /home/myusername
вызывает Permission denied?

Это похоже на то, что вам не разрешено смотреть на /home с самого начала, прежде чем доходит до поиска myusername в этой директории.

С помощью
sudo chmod 774 .*
в /home/myusername вы включили файл ...
А /home/myusername/.. – это то же самое, что и /home.

Права доступа были применены как root, поэтому 4 – это то, что применяется к вам как к обычному пользователю. это r--, он не содержит права на выполнение. В директории права на выполнение позволяют вам заглянуть внутрь директории.

Проблема касается всех пользователей, чьи домашние директории находятся под /home, как вы уже выяснили.

Вы можете использовать эту команду Linux :

sudo chown -v -R user:user /home/user/

а затем используйте эту

sudo chown -v -R user:user /home/user/..

Ответ или решение

К сожалению, столкнувшись с описанной вами ситуацией, вы изменили права доступа к родительскому каталогу с использованием команды chmod на каталоги, которые содержат .. (родительский каталог). Давайте разберемся, в чем именно проблема, и как ее можно решить.

Проблема

Когда вы выполнили команду sudo chmod 774 .*, вы изменили права доступа к текущему каталогу и всем его элементам, включая .., который ссылается на родительский каталог. Права 774 подразумевают, что для владельца (root) имеются права на чтение, запись и выполнение (rwx), для группы — чтение и запись (rw-), а для других пользователей — только чтение (r–). Это означает, что другие пользователи не получат доступа к исполняемым правам (x) в директориях, что является решающим для возможности перехода в эти каталоги.

Ваша описанная ошибка при попытке войти в домашний каталог означает, что у вашего пользователя отсутствуют необходимые права для доступа к директории /home, что также подтверждает сообщение об ошибке -bash: cd: /home/myusername: Permission denied.

Решение проблемы

Для того чтобы восстановить доступ к вашему домашнему каталогу, необходимо изменить права доступа к каталогу /home и всем его подкаталогам.

1. Восстановление прав доступа к каталогу /home

Войдите в систему в режиме терминала (например, с помощью Ctrl + Alt + F1), а затем выполните следующие команды:

sudo chmod 755 /home
sudo chmod 755 /home/myusername

Здесь:

  • 755 — это права доступа, которые позволяют владельцу (root) читать, записывать и выполнять (rwx), а всем остальным пользователям — читать и выполнять (r-x). Это обеспечит возможность пользователям заходить в каталог /home и доступ к каталогу вашего пользователя.

2. Устранение проблем с правами доступа к уровню выше

Поскольку вы также затронули каталог родителя (..), убедитесь, что права доступа к каталогу /home исправлены:

sudo chmod 755 /home

3. Проверка прав доступа

После выполнения вышеуказанных команд, вы можете проверить права доступа к вашему домашнему каталогу с помощью:

ls -ld /home/myusername
ls -ld /home

Убедитесь, что они установлены правильно как drwxr-xr-x.

Заключение

С помощью предоставленных шагов вам удастся восстановить доступ к вашей домашней директории. После этого вы сможете войти в графическую среду и продолжить работу с системой. Не забывайте, что манипуляции с правами доступа могут негативно сказаться на безопасности и работе системы, поэтому всегда рекомендуется выполнять команды с sudo с повышенной осторожностью.

Если у вас возникнут дополнительные вопросы или проблемы, не стесняйтесь обращаться за помощью.

Оцените материал
Добавить комментарий

Капча загружается...