2

Поэтому я случайно запустил chmod -R 0777 /var и мне нужно отменить это (не говоря уже о разрешении chmod правильного каталога ssh, чтобы я мог снова в него войти). Я чувствую себя обманутым, кто-нибудь может помочь? Чем скорее, тем лучше, спасибо.

2 ответа2

2

Есть для вар

drwxr-xr-x 21 root root 4096 6 апреля 2011 г. var

и для подпапок '* var/**' на моем хосте (CentOS 6)

drwxr-xr-x  6 root root 4096 Apr  2  2011 cache
drwxr-xr-x  2 root root 4096 Sep  3  2009 cvs
drwxr-xr-x  2 root root 4096 Jan 26  2010 db
drwxr-xr-x  3 root root 4096 Mar 15  2011 empty
drwxr-xr-x  3 root root 4096 Mar 15  2011 ftp
drwxr-xr-x  2 root root 4096 Jan 26  2010 games
drwxr-xr-x 21 root root 4096 Apr  6  2011 lib
drwxr-xr-x  2 root root 4096 Jan 26  2010 local
drwxrwxr-x  5 root lock 4096 Apr  5 04:02 lock
drwxr-xr-x  6 root root 4096 Apr  5 04:02 log
lrwxrwxrwx  1 root root   10 Mar 15  2011 mail -> spool/mail
drwxr-xr-x  2 root root 4096 Jan 26  2010 nis
drwxr-xr-x  2 root root 4096 Jan 26  2010 opt
drwxr-xr-x  2 root root 4096 Jan 26  2010 preserve
drwxr-xr-x 14 root root 4096 Feb  2 07:39 run
drwxr-xr-x  7 root root 4096 Mar 15  2011 spool
drwxr-xr-x  4 root root 4096 Apr  9  2011 svn
drwxrwxrwt  4 root root 4096 Jan 31 19:58 tmp
drwxr-xr-x  6 root root 4096 Mar 15  2011 www
drwxr-xr-x  2 root root 4096 Jan 26  2010 yp
0

Все ваши файлы теперь также выполняются во всех подкаталогах /var . Это может быть решено, например, с помощью find и chmod , но трудно понять, какие из них должны были быть исполняемыми для начала.

В моей системе несколько исполняемых файлов ниже /var

  • те, которые заканчиваются на

    • .preinst
    • .prerm
    • .postinst
    • .postrm

    в /var/lib/dpkg/info ,

  • /var/lib/apt-xapian-index/update-lock
  • /var/lib/shorewall/.restore
  • /var/lib/shorewall/.restart
  • /var/lib/shorewall/firewall
  • /var/lib/shorewall/.start
  • /var/lib/dkms/nvidia/295.33/build/conftest.sh

Если бы мне пришлось восстанавливать исполняемый бит после sudo chmod 777 -R /var , я мог бы запустить

sudo find /var -type f -exec chmod -x {} +

а затем вручную установить chmod +x на файлы , которые я перечислил выше, но вы также будете иметь проблемы восстанавливающие права на файлы и каталоги , которые ранее были полностью запрещены для любого (кроме корня) , чтобы прочитать, что касается гораздо больше файлов.

Постоянной проблемой является безопасность, но чаще всего, если кто-то может войти в систему как обычный пользователь на компьютере. Если это однопользовательская система с низким уровнем угрозы, вы, вероятно, можете продолжать и просто принять это за урок. Если бы это было что-то еще, переустановка была бы самым простым способом исправить все.

Разрешения являются центральными в обработке файлов в * nix. Это довольно разрушительная операция, чтобы полностью стереть их все в фундаментальном дереве каталогов; и поэтому довольно трудно восстановить.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .