Безопасно ли `sudo chown -R $USER $HOME`?

Безопасно ли `sudo chown -R $USER $HOME`?

Есть ли ~/.configв домашнем каталоге какие-либо файлы, например, в или где-либо еще, владельцем которых должен быть пользователь root?

Будет ли вредным рекурсивное изменение владельца каждого файла в папке моего пользователя ~на моего пользователя?

решение1

Есть ли ~/.configв домашнем каталоге какие-либо файлы, например, в или где-либо еще, владельцем которых должен быть пользователь root?

Нет, вы должны быть владельцем всех файлов и папок в вашем домашнем каталоге.

В противном случае какие могут быть проблемы?

В вашем доме существует множество настроек уровня пользователя для различных приложений и самой системы в скрытых файлах и папках. Если вы chownих сделаете root, у вас будут проблемы при следующем входе в систему. Во время входа ваш профиль не может быть загружен, так как у вас больше нет прав доступа к файлам конфигурации. И вас, скорее всего, выкинет на экран входа в систему. В процессе вы заблокируете себя.

Будет ли вредным рекурсивное изменение владельца каждого файла в папке моего пользователя ~на моего пользователя?

В этом нет ничего плохого. Но имейте в виду случай, как указаноЛекенштейнв комментарии выше. Я его цитирую,

Остерегайтесь редких крайних случаев, когда буквальное выполнение команды в заголовке, $USER и $HOME могут быть изменены. Например USER=nobody, ; HOME=/; sudo chown -R $USER $HOMEнебезопасно.

chownВ комментарии выше есть предложение получше, чем рекурсия :

вы можете найти файлы, которые вам не принадлежат, используя find ~ ! -user $USER -ls(предполагая, что та же среда, где переменные не были изменены). И переименовать только эти файлы.

решение2

Все файлы и каталоги в вашем домашнем каталоге( /home/user) должны принадлежать вашему пользователю.

Связанный контент