На любом компьютере с Debian это один из распространенных способов дублирования набора пакетов. На старой машине:
dpkg --get-selections "*" > my_favorite_packages
Скопируйте файл my_favorite_packages
на новый компьютер (флэш-накопитель является хорошим вариантом, но scp
также отлично работает). Затем запустите эту последовательность (с правами суперпользователя):
apt-get update dpkg --set-selections < my_favorite_packages apt-get -u dselect-upgrade
Это не дает вам только те пакеты, которые вы установили. Он также получает их зависимости и т. Д. Кроме того, если хранилища между двумя компьютерами разные, все ставки отключены.
Что касается журналов, apt-get
ведет журнал в /var/log/apt/history.log
(спасибо Tshepang за обновление этого в комментарии); dpkg
делает (в /var/log/dpkg.log
), но это, как известно, трудно анализировать и может быть прочитано только с привилегиями root; aptitude
имеет один на /var/log/aptitude
и вы можете просматривать его с правами обычного пользователя.
Насколько я могу судить, вы правы, что ни один из этих журналов не отслеживает конкретно то, что вы установили, в отличие от автоматически устанавливаемых зависимостей. Вы можете получить эту информацию, однако, из aptitude
поиска. Поиск всех установленных пакетов, которые также были установлены автоматически:
aptitude search '~i ~M'
Если вам нужны только те, которые вы установили (не авто-зависимости), отмените ~M
:
aptitude search '~i !~M'
Если вы хотите, чтобы он был отформатирован так, чтобы у вас были только имена пакетов и слово «установить», aptitude
можете сделать это тоже. Это дает вам список готовых к подаче dpkg --get-selections
:
aptitude search '~i !~M' -F "%p install"
(У меня ничего нет в системах RedHat или RedHat. Извините. На самом деле нет единого ответа для Linux как такового, поскольку управление пакетами - это большая часть того, что делает разные дистрибутивы разными .)