патч сообщает об ошибке, но успешно применяет изменения - PullRequest
0 голосов
/ 06 августа 2020

Я получаю следующую ошибку из сценария, который выполняет следующие действия:

  1. монтирует изображение локально с помощью команды mount
  2. применяет файл исправления к смонтированному файлу system
  3. отключает файловую систему с помощью команды umount

на шаге 2 Я получаю 3 ошибки, например Hunk #1 FAILED at 1., для двух из них, в нем говорится, что причина в том, что файл уже существует, и патч пытается создать новый файл. Третья ошибка - Hunk #1 FAILED at 3. и не указывает причин для отказа. Итак, я проверил несколько вещей:

  1. Файлы, которые он пытается создать, не существуют, когда я смотрю на монтирование до применения патча. чтобы быть более уверенным, я поставил точку останова в скрипт непосредственно перед применением патча и проверил смонтированную файловую систему.
  2. Когда я проверяю файлы после запуска скрипта, все 3 патча действительно успешно применили свои изменения

поэтому я уже смотрел на этот ответ здесь , но ответ, который он дает, похоже, не объясняет, что происходит. Может ли кто-нибудь объяснить мне такое поведение?

ОБНОВЛЕНИЕ:

Файлы, которые вызывают эту ошибку, находятся в одном каталоге: usr/lib/systemd/system и ранее в патче похожие файлы перечислены как исправляется в другом каталоге: lib/systemd/system Поэтому мне интересно, обновляется ли каким-то образом путь usr, когда применяются эти исправления, которые затем конфликтуют с более поздними исправлениями. Однако ни один из каталогов в пути к файлу, похоже, не связан с символической ссылкой, поэтому я не знаю, как это будет происходить

ИСПРАВЛЕНИЕ:

lib - это символическая ссылка на usr/lib Так что это определенно проблема. Спасибо, что потратили время, чтобы посмотреть на это

...