Воспроизводимая установка пакета

Воспроизводимая установка пакета

Есть ли способ отслеживать пакеты, которые вы устанавливаете в Ubuntu?

Например, скажите "npm install blah", и тогда вы можете установить blah в текущем каталоге и задокументировать в вашем package.json. За исключением использования чего-то вроде Ansible, есть ли возможность отслеживать пакеты, которые я устанавливаю/удаляю через apt (нет необходимости отслеживать пакеты по умолчанию, поступающие из базовой установки) в файле, который я затем мог бы держать под контролем версий?

решение1

Какие пакеты установлены или удалены в системе Ubuntu, отслеживается пакетом dpkg. Чтобы воспроизвести набор установленных пакетов с одной машины на другую, сделайте следующее на первой машине:

sudo dpkg --get-selections > installed-packages

Это запишет все установленные (и удаленные) пакеты в файл installed-packages. Перенесите этот файл на другую машину и там выполните:

sudo dpkg --set-selections < installed-packages
sudo apt-get dselect-upgrade

(Возможно, вам придется вручную установить пакет, названный dselectfirst) Это позволит установить выбранные пакеты на «install» и, на втором этапе, фактически установить их.

Не работает для машин с разными sources.listфайлами или когда PPA установлены на первой машине, но в целом вы копируете установку первой системы на вторую.

Связанный контент