Мне не удалось войти в свою учетную запись «admin», и Alt kbd> + Ctrl kbd> + F1 kbd> показал, что все мои файлы принадлежат моему «стандартный» пользователь. Одд.
Так что я осторожно перешел на /home/admin
и сделал
sudo chown -R admin:admin *
(и .*
тоже).
Великий.
Тогда я не смог войти как «стандартный» пользователь, и оказалось, что все файлы в /home/standard
теперь принадлежат «admin».
sudo chown -R standard:standard /home/standard/*
сделал то же самое, изменил /home/admin
, а также /home/standard
.
Я более запутан, чем обычно, потому что я пытался обновить систему до 15.04, и это в значительной степени сломало мой компьютер, поэтому я возвращаюсь к 14.04, пожалуйста, будьте терпеливы со мной.
Эта проблема вызывается, потому что Вы работали:
sudo chown -R admin:admin .*
Мы знаем это .
указывает на текущий каталог и ..
указывает на родительский каталог. Когда Вы выполняете команду с .*
, это просто означает, что соответствуют любому скрытому файлу в текущем каталоге (утверждение с .
), сам текущий каталог (.
), родительский каталог (..
). Просто поместите что-либо после .
(*
средства 0 или больше символов). В результате родительский каталог наряду со всем этим дочерние каталоги добирается chown
- редактор к admin:admin
.
Взгляд на этот тест:
test$ ls -al
drwxrwxr-x 4 foo foo 4096 Jun 3 07:15 .
drwxrwxr-x 4 foo foo 4096 Jun 2 18:06 ..
drwxrwxr-x 2 foo foo 4096 Jun 3 07:15 egg
drwxrwxr-x 2 foo foo 4096 Jun 3 07:12 spam
$ sudo chown -R bar:bar spam/.*
test$ ls -al
drwxrwxr-x 4 bar bar 4096 Jun 3 07:15 .
drwxrwxr-x 4 foo foo 4096 Jun 2 18:06 ..
drwxrwxr-x 2 bar bar 4096 Jun 3 07:15 egg
drwxrwxr-x 2 bar bar 4096 Jun 3 07:12 spam
Для возвращения назад, Вы должны chown
затронутые каталоги снова.
Я не действительно уверен, каков Ваш план был, но здесь является некоторыми идеями:
Кому: chown
любой каталог рекурсивно (включая скрытые файлы):
sudo chown -R foo:foo /spam/egg/
Кому: chown
только файлы (включая скрытые файлы) в том каталоге (не сам каталог):
(shopt -s dotglob && sudo chown -R foo:foo egg/*)
Кому: chown
только нескрытые файлы (без самого каталога):
sudo chown -R foo:foo egg/*
Я думаю, что это ".*" параметр для файлов; это соответствует всему запускающемуся с, включая "." и ".." файлы ".." родительский каталог, который включает все под ним.
лучший способ состоит в том, чтобы создать резервную копию одной папки и определить фактическую папку, которую Вы хотите изменить (/home/admin).