
Используя chmod, я случайно изменил все в папке bin, и теперь sudo/su не работает.
Я знаюrpm -q --whatprovidesможет указать, какой RPM предоставляет определенный файл. иоб/мин --setpermsможет восстановить все, что предоставляет RPM.
Есть ли способ восстановить права доступа ко всем файлам в папке с помощью rpm?
решение1
Боюсь, что встроенные функции не применяются к каталогу. Однако следующее может быть решением... предположим, что вы /usr/bin
рекурсивно испортили разрешения, следующее может помочь:
rpm --setperms $(rpm -qf $(find /usr/bin) | sort -u)
Он просматривает все элементы ниже /usr/bin
и запрашивает базу данных RPM для соответствующего пакета, дедуплицирует список пакетов RPM и запускается rpm --setperms
для каждого соответствующего пакета RPM.