#linux #installation #debian #uninstallation #deb
#linux #установка #debian #удаление #deb
Вопрос:
У нас есть различные программы и сценарии, которые мы создаем, которые нам нужно развернуть на рабочих серверах Ubuntu после тестирования. Мы рассматриваем возможность упаковки нашего программного обеспечения в виде файлов Debian (.deb) и использования чего-то вроде apt-get или aptitude для установки программного обеспечения.
Это просто, но мне не ясно, как можно откатить или удалить новые версии, которые окажутся нежелательными. Очевидный выбор apt-get remove new-pkg
следует apt-get install old-pkg
, но правильный ли это подход?
Существуют ли специальные правила, которым следует следовать (или которых следует избегать) в postinst, prerm или postrm, чтобы все прошло гладко?
Обратите внимание, что все наше программное обеспечение и серверы являются частными, и у нас есть полный контроль над всем, если это поможет.
Комментарии:
1. Все ли серверы Ubuntu в этой группе служат одной и той же цели или им нужно запускать разные наборы программ?
2. Некоторые серверы выполняют одну задачу, некоторые — другие. Все контролируется нами. Мы ищем согласованную схему развертывания, которая работает для всего нашего программного обеспечения, независимо от его назначения.
Ответ №1:
В схеме Debian автоматическое понижение рейтинга обычно не рассматривается. Предпочтительным способом было бы установить новый и более высокий номер версии для фиксированной сборки (даже если «исправлено» означает «удалены все новые функции»).
Если вам абсолютно необходимо откатить обновление, вы можете рассмотреть возможность использования номера эпохи Debian для объявления нового начала в номерах версий, начиная с откатанной версии. Для примера предположим, что версия 1.2 пакета повреждена, и вам нужно срочно перейти на 1.1, затем вы переиздаете пакет debian 1.1-5 как 1: 1.1-6, что является более высоким номером версии, чем обычный 1.2-1.
Понижение версии вручную, безусловно, нежелательно, вы наверняка пропустите хотя бы один важный сервер во время хотя бы одного понижения версии.
Для postinst, prerm и postrm рассмотрите новое руководство по сопровождению Debian.
Комментарии:
1. Что ж, я бы хотел, чтобы существовал общепринятый метод отката, который широко известен, но спасибо за ваш вклад.
2. Переход на более низкую версию — это очень плохая идея. Как только эпоха была пройдена, пути назад нет. Обычным решением является использование 1.2 really1.1-1. По крайней мере, это только временно.
Ответ №2:
Как apt-get, так и aptitude позволяют указать желаемую установленную версию:
apt-get install <your-package>=<your-version>
aptitude install <your-package>=<your-version>
В любом случае было бы целесообразно использовать это в процессе развертывания, чтобы вы точно определяли, какая версия будет развернута на серверах.
Для отката к предыдущей версии достаточно просто указать номер предыдущей версии. Конечно, если имеет больше смысла решить проблему с помощью новой версии, то сделайте это, а не откатывайтесь назад.