
Я вносил некоторые изменения, но в одном из них ошибся.
Я изменил разрешения почти всего внутри /usr
папки на своего пользователя. Это не изменило все, потому что это привело к сбою в середине выполнения, у меня все еще есть /sbin
, /share
и /src
назначено root.
команда, которую я выполнил, была такой(это было выполнено, находясь внутри /usr):
sudo chown -R myuser:myuser .
Есть ли способ вернуть это обратно?
Если я запущу:
sudo chown -R root:root .
Я получаю эту ошибку:
sudo: /usr/bin/sudo must be owned by uid 0 and have the setuid bit set
решение1
Вы не можете просто chown -R раздела /usr, потому что не все в этом разделе принадлежит root. Это отстой, вам придется все переустановить, но единственное безопасное решение — сделать переустановку или восстановиться из резервной копии.
решение2
Полная переустановка — это отстой. Это, конечно, один из вариантов. Однако большинство файлов в /usr/bin — это root:root. Это единственные, которые таковыми не являются:
-rwsr-sr-x 1 daemon daemon 51464 Oct 21 2013 at
-rwxr-sr-x 1 root shadow 54968 Feb 17 02:42 chage
-rwxr-sr-x 1 root crontab 35984 Feb 9 2013 crontab
-rwsr-xr-x 1 root lpadmin 14336 Apr 10 19:40 lppasswd
-rwxr-sr-x 3 root mail 14592 Dec 3 2012 mail-lock
-rwxr-sr-x 3 root mail 14592 Dec 3 2012 mail-touchlock
-rwxr-sr-x 3 root mail 14592 Dec 3 2012 mail-unlock
-rwxr-sr-x 1 root mlocate 39520 Jun 20 2013 mlocate
-rwxr-sr-x 1 root ssh 284784 May 12 17:04 ssh-agent
-rwxr-sr-x 1 root tty 19024 Apr 16 17:07 wall
для стандартной установки. В /usr/sbin это:
-rwsr-xr-- 1 root dip 343168 Jan 22 2013 pppd
-rwsr-sr-x 1 libuuid libuuid 18904 Apr 16 17:07 uuidd
в /usr/lib/
drwxr-xr-x 2 root utempter 4096 May 7 23:46 utempter
в /usr/local/share
drwxrwsr-x 2 root staff 4096 Aug 20 2013 ca-certificates
drwxrwsr-x 2 root staff 4096 Aug 20 2013 fonts
drwxrwsr-x 7 root staff 4096 May 8 17:11 sgml
drwxrwsr-x 6 root staff 4096 May 8 17:11 xml
и в /usr/local/lib любые каталоги python, например:
drwxrwsr-x 4 root staff 4096 May 8 18:44 python2.7