Используя sudo nautilus
Я создал некоторые папки, и я хочу избавиться от корневого разрешения на них. Но у меня есть многие, и я хочу сделать это ко всему каталогу и его содержанию папок.
Таким образом, как позволить чтение-запись текущему пользователю во все файлы и папки в определенном каталоге, который является внутренним домой?
Чтобы возместить ущерб, нанесенный с помощью sudo nautilus
, вы должны сделать себя владельцем любых каталогов (и их содержимого), принадлежащих root.
Вы можете использовать find
для этого, так как он имеет тест для поиска только файлов, принадлежащих определенному пользователю.
Это позволит найти все каталоги в вашем доме, принадлежащие пользователю root:
sudo find ~ -type d -user root
Затем вы можете повторить команду find
и добавить действие, которое вы хотите выполнить - рекурсивно изменить владельца всех найденных каталоги и их содержимое для текущего пользователя:
sudo find ~ -type d -user root -exec sudo chown -R $USER: {} +
~
домашний каталог -type d
найти только каталоги -user root
найти только вещи, принадлежащие корню -exec
выполнить следующую команду для того, что было найдено sudo chown -R
рекурсивно сменить владельца $USER
текущий пользователь :
также меняет группу на конкретного пользователя Более эффективно, вы можете опустить -type d
, чтобы найти файлы любого типа, принадлежащие root, а также опустите -R
, поскольку find
выполнит для вас рекурсию, воздействуя на все файлы
sudo find ~ -user root -exec sudo chown $USER: {} +
Выполнение инструментов GUI, как nautilus
как root
Считают Вредным поэтому среди других (скрытые функции, способность тихо выполнить фрагменты программы от того, кто знает где...).
у Вас нет проблемы "разрешения", у Вас есть проблема "владения".
Для нахождения всех файлов принадлежавшими root
(действительно принадлежавший кому-либо еще) сделайте:
sudo find $HOME \! -user $USER
Для возврата владения Вам Вы могли
sudo chown -R $(id -u):$(id -g) $HOME
, но это изменит владение всех файлов в, и под $HOME
sudo find $HOME \! -user $USER >/tmp/list-of-files
# edit the list of files, and delete file files you don't want to chown
nano /tmp/list-of-files
xargs sudo chown $(id -u):$(id -g) </tmp/list-of-files
Дает одному возможность скорректировать список файлов, принадлежавших не - Вы, которым возвратят их владение Вам.
То, что необходимо сделать, изменить владение папки от пользователя (и группа) корень другому пользователю (и группа), Вы хотите.
Предполагают, что Вы хотите работать над /home/randomFolder, и что пользователь, к которому Вы хотите обработать владение, vitor-abella, что необходимо сделать, просто выполняют это как корень:
chown -R vitor-abella:vitor-abella /home/randomFolder
Это может требовать времени, если существует много файлов и подпапок, но после этого необходимо быть на правильном пути.
Аплодисменты.