Если я бегу:
sudo chown -R user:user /
Могу ли я вернуть его к тому, что было до запуска?
command-line
permissions
chown
fronthem
источник
источник
sudo chown -R user:user ..
может иметь тот же эффект, что и упомянутая здесь, если вы находитесь на один уровень ниже корня файловой системы. Не пытайтесь делать что-то подобное.Ответы:
Короче говоря: нет.
Вам нужно будет восстановить из резервной копии. (Некоторые инструменты резервного копирования могут иметь параметры только для восстановления только разрешений, другие могут отображать файлы резервных копий с их разрешениями, и вы можете использовать это для исправления вашей системы.)
Если у вас нет резервной копии, вам нужно все исправить вручную.
источник
sudo chown -R user:user /
этого вполне вероятно, что система настолько плохо подключена, что вы не сможете восстановить ее из резервной копии.chown
описано, вполне вероятно , что вы не будете в состоянии сделать что - либо перед установкой всей системы с нуля; система даже не имеетroot
учетной записи иsudo
не будет работать. Вероятно, стоит попробовать загрузиться с однопользовательской оболочки, но не ожидайте, что она будет работать.sudo
или дажеsu
будет продолжать функционировать , когда все его соответствующие файлы принадлежатuser
другое дело (вероятно , не потому , что среди прочего бит SUID на ехе пропадут).Только если вы знаете пользователя и группу владельцев каждого файла и каталога в вашем
/
каталоге.Даже тогда вы уже потеряли владение критически важными системными файлами, которые должны принадлежать пользователю root, включая
sudo
команду. Возможно, вам понадобится смонтировать жесткий диск в другой системе - и помните, что другая система, скорее всего, не будет иметь тех же сопоставлений UID и GID, что и только что скопированная.Сделайте копию всего жесткого диска, если можете, затем переустановите операционную систему. После того, как вы это сделаете, вы можете попробовать скопировать файлы обратно во вновь стёртую систему и восстановить их права собственности. Вы, вероятно, можете предположить (хотя и не на 100% достоверно), что все находящееся
/home/foo
в собственности принадлежит пользователюfoo
, и что каждый файл почтового спула/var/mail
принадлежит соответствующему пользователю (если у вас есть электронная почта в системе). Скорее всего, вы можете обойтись без восстановления большинства файлов, которые не находятся под/home
, в зависимости от того, что вы сделали с системой.А затем начните культивировать привычку перепроверять любую команду, под которой вы работаете,
sudo
прежде чем ударить Enter.источник
Если ваш дистрибутив основан на RPM, вы можете восстановить ТОЛЬКО файлы, установленные пакетами rpm.
Чтобы восстановить все разрешения пакета:
Для восстановления всего владельца пакета (пользователь / группа):
Если -a не запускается, вы можете выполнить цикл bash:
Для разрешений:
Для владельца:
Извлечено из: http://www.sysadmit.com/2016/10/linux-restaurar-permisos-de-un-paquete.html
источник
Вы можете сохранить текущие версии, а затем проанализировать их, чтобы отменить, используя опцию -v.
Содержание будет:
Используя ваш любимый язык сценариев и регулярные выражения, вы можете выполнить болезненный процесс их возврата (если необходимо).
Я настоятельно рекомендую не делать рекурсивный переход на /, так как вы выставите / etc / shadow или любой другой важный файл.
источник
если дистрибутив основан на rpm:
источник