Эй, ребята, во-первых, я много искал на этом сайте, но не получил точного ответа на мои вопросы. Не знаю, что-то произошло автоматически, и все разрешения для папок изменились автоматически, и на всех моих папках и файлах появился значок блокировки. Затем я искал на этом сайте и получил решение в виде этой команды
sudo chown 777 -R $USER:$USER $HOME
Это решило мою проблему наполовину, он убрал значок блокировки, но теперь все разрешения для папок доступны только для чтения, поэтому, пожалуйста, сообщите мне, как сбросить все права доступа к папке, как это было раньше?
Я использую Ubuntu 12.10
Спасибо
Вы написали, что сделали sudo chown 777 -R ${USER}:${USER} ${HOME}
Вы используете sudo
для выполнения операции, которая обычно должна изменять ресурсы, которыми вы управляете с вашим текущим пользователем. Это крайне небезопасно.
Вы используете переменные sudo и environment. Это может привести вас к ошибочной ситуации. Для иллюстрации попробуйте следующее.
sudo echo $USER
-> например, шивам sudo echo '$USER'
-> корень chown
изменит владельца файла. К счастью, вы добавили ошибку. Параметр 777
будет определен как имя пользователя, которое не существует, а файл $ {USER}: $ {USER} не найден.
Команда chmod
отвечает за изменение прав доступа к файлу или каталогу.
Используйте следующее, чтобы изменить права доступа к папкам под отдельным каталогом:
find BASEDIR -type d -exec chmod u+rwx \{\} \;
В вашем случае замените BASEDIR
на ~
. Для bash ~
будет заменен домашним каталогом текущего пользователя.
Это будет обрабатывать только каталоги (не файлы) и устанавливать права доступа для чтения , записи и , ввода (он же execute ) для владелец каталога.
Для получения дополнительной информации, пожалуйста, прочитайте man chmod
Примечания:
-R
, поскольку она будет обрабатывать все каталоги и файлы под данным каталогом. u+rwx
, потому что ее легче понять. sudo
, если вам это действительно не нужно. Убедитесь, что раздел, содержащий проблемный домашний каталог, смонтирован для чтения-записи .
grep /home /proc/mounts
Это должно дать похожий вывод:
/ dev / mapper / system-home / home ext4 rw , relaytime, discard, commit = 600, data = упорядоченный 0 0
blockquote>Если опция rw не отображается, то раздел монтируется по некоторым причинам (например, несогласованность) только для чтения. Если это так, вызовите проверку файловой системы. Обычно это также вызывается во время загрузки вашего компьютера.
Самая большая проблема заключается в том, что все ваши файлы находятся в состоянии, которое, хотя и читаемо сейчас, довольно непригодно для использования.
Проблема с настройкой разрешений вручную состоит в том, что не все файлы имеют одинаковый набор разрешений (например, подумайте о ваших ssh-ключах, вы не хотите, чтобы кто-то другой мог их читать), поэтому вы попадаете в грязную ситуацию где вы должны решить для каждого отдельного файла, какие разрешения они должны иметь.
Лучшее, что вы можете сделать, - это создать новую учетную запись и скопировать нужные файлы из старой учетной записи. Разрешения будут установлены автоматически. Кроме того, если вам нужны ваши личные настройки, вы можете скопировать их также со своей старой учетной записи. Они находятся в скрытых файлах или скрытых каталогах в вашем домашнем каталоге. Будьте внимательны, копируйте только то, что вам нужно.
Также может быть целесообразно выполнить проверку файловой системы впоследствии.