Испорченные полномочия Linux - как зафиксировать?

Из http://code.google.com/p/modwsgi/wiki/DebuggingTechniques

def application(environ, start_response):
    status = '200 OK'
    output = 'Hello World!'

    print >> environ['wsgi.errors'], "application debug #1"

    response_headers = [('Content-type', 'text/plain'),
                        ('Content-Length', str(len(output)))]
    start_response(status, response_headers)

    print >> environ['wsgi.errors'], "application debug #2"

    return [output]

1
задан 18 March 2012 в 10:58
2 ответа

Как говорит Билл Вайс, вам может быть проще и безопаснее выполнить восстановление из заведомо исправной резервной копии в чистой системе. Вы не только испортили разрешения, но и заменили файлы. Даже если исходная и целевая машины были одним и тем же дистрибутивом, нет гарантии, что они будут идентичными файлами, и это может вызвать всевозможные дурацкие проблемы.

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

  • Используйте системный менеджер пакетов, чтобы узнать, кому принадлежит каждый из этих файлов.
  • Настройте новую систему и убедитесь, что вы устанавливаете на нее точно такие же версии этих пакетов.
  • Загрузите копию файлов на сервер.
  • Загрузите сервер в однопользовательском режиме и аккуратно замените все файлы .
  • Установите соответствующие разрешения / владение.
  • Перезагрузите

Вы можете затем обнаружить, что у вас снова есть рабочая система, но я бы не стал доверять этому, и это, вероятно, займет больше времени, чем маршрут очистки / восстановления.

Вот полезная команда, которую вы можете запустить для списка полных путей затронутых файлов, чтобы получить список затронутых пакетов (Debian / Ubuntu):

for a in `cat files.txt`; do dpkg -S $a |cut -d':' -f1; done |sort -u
0
ответ дан 4 December 2019 в 10:04

В будущем вы, возможно, захотите изучить rdiff-backup как альтернативу rsync. В частности, поскольку rdiff-backup имеет флаг только для увеличения существующей резервной копии, по крайней мере, тогда риск повторения исчезнет.

0
ответ дан 4 December 2019 в 10:04

Теги

Похожие вопросы