Я хотел бы вывести список всех установленных пакетов в текстовый файл, чтобы я мог просмотреть его и выполнить массовую установку в другой системе. Как бы я это сделал?
1886
Я хотел бы вывести список всех установленных пакетов в текстовый файл, чтобы я мог просмотреть его и выполнить массовую установку в другой системе. Как бы я это сделал?
Ответы:
Ubuntu 14.04 и выше
apt
Инструмент на Ubuntu 14.04 и выше делает это очень легко.Старые версии
Чтобы получить список установленных пакетов, сделайте это в своем терминале:
(
-v
Тег «инвертирует» grep для возврата несовпадающих строк)Чтобы получить список установленных пакетов:
Чтобы сохранить этот список в текстовом файле, который вызывается
packages
на вашем рабочем столе, сделайте это в своем терминале:В качестве альтернативы просто используйте
(вам не нужно запускать какие-либо из этих команд в качестве суперпользователя, поэтому здесь нет
sudo
никаких других вариантов)источник
cat ~/Desktop/packages > sudo dpkg --set-selections && sudo apt-get dselect upgrade
исходный кодsudo dpkg --set-selections < ~/Desktop/packages && sudo apt-get -u dselect-upgrade
делает трюк.apt list installed
. Когда-нибудь мы должны перестать систематически отказываться от принципа «будь проще».Чтобы получить только те пакеты, которые были явно установлены (а не просто установлены как зависимости), вы можете запустить
Это также будет включать краткое описание, которое вы можете захотеть. Если нет, также добавьте опцию
-F '%p'
, как упомянуто karthick87.Еще один вариант - скопировать файл
/var/lib/apt/extended_states
, который представляет собой базу данных текстовых файлов в этом формате:Auto-Installed: 0
указывает, что пакет был явно установлен и является не просто зависимостью.источник
apt-get
?Чтобы вывести список всех пакетов, преднамеренно установленных (не как зависимости) с помощью команд apt, выполните следующее:
Это обеспечивает представление на основе обратного времени, причем более старые команды перечислены первыми:
Установочные данные также показывают использование синапсов, но без подробностей (то же самое с датой установки):
предоставляя следующее:
источник
zgrep -hE '^(Start-Date:|Commandline:)' $(ls -tr /var/log/apt/history.log*.gz ) | egrep -v 'aptdaemon|upgrade' | egrep -B1 '^Commandline:'
dpkg
??Создайте резервную копию установленных пакетов:
Затем (в другой системе) восстановите установки из этого списка:
Чтобы избавиться от устаревших пакетов:
Чтобы установить как во время резервного копирования (т.е. установить пакеты, установленные
dpkg --set-selections
):источник
ubuntu-desktop
его удалили - возможно, из-за одной из команд dpkg. будьте осторожны, мне потребовались часы, чтобы восстановить ущерб!sudo apt-mark hold name-your-package
. Это предотвратит обновление apt-get до текущей версии, которая используется по умолчанию для процесса обновления.Страницы руководства:
Таким образом, он должен просто предоставить список явно установленных пакетов (хотя это включает в себя пакеты, которые были частью начальной установки по умолчанию) без учета всех зависимостей, связанных с установкой этих пакетов.
Чтобы вывести результат в текстовый файл:
источник
apt-mark showmanual
не совсем. В нем также перечислены тонны автоматически установленных пакетов, вероятно, часть базовой установки.apt list --manual-installed
.dpkg-query
(вместо тогоdpkg --get-selections
, чтобы перечислить некоторые пакеты, которые не установлены) следующим образом:Или же:
источник
# for pkg in `cat installed-pkgs`; do apt-get install -y $pkg; done
во второй системе, я сделал это для установки пакетов.apt-get install -y $(< installed-pkgs)
сделает так, чтобы apt-get запускался только один раз и одновременно заботился обо всех зависимостях.sudo apt-get build-dep name-package; sudo apt-get install name-package;
?Чтобы вывести список всех установленных пакетов,
или же
или же
Примечание:
вы получите файл 1.txt результата в вашей домашней папке или можете указать свой собственный путь.
источник
Вы можете использовать Synaptic, чтобы сохранить текущее состояние установленного пакета. В Synaptic выберите «файл / сохранить метки», введите имя файла, в который нужно сохранить состояние, и обязательно установите флажок «Сохранить полное состояние, а не только изменения».
Сохраненный из этого файл может быть загружен на новый компьютер с помощью «маркировки файла / чтения» в Synaptic.
источник
Я рекомендую использовать план . Несмотря на то, что он предназначен для серверов, он также может использоваться с настольных компьютеров. Он создаст скрипт оболочки / chef / puppet, который вы сможете использовать для переустановки всех ваших пакетов.
источник
Вы хотите переустановить пакеты сейчас там 12.04, верно?
Если это так, это очень легко. Вам понадобится учетная запись Ubuntu Single Sign On. (Создайте его перед переустановкой, чтобы ваша система синхронизировалась.)
Перейдите в Центр программного обеспечения и найдите пункт «Синхронизировать между компьютерами ...» в меню «Файл».
Когда вы нажмете на нее, вы увидите, что ваш компьютер зарегистрирован и список всех приложений на вашем компьютере.
Когда вы установите новую версию, этот компьютер будет считаться новым компьютером.
Вы просто должны войти в свою учетную запись Ubuntu, и ваш предыдущий компьютер будет показан.
Нажмите здесь; вы получите список всех приложений. Выберите «установить» в приложении, которое вы хотите установить.
источник
Существует также инструмент под названием Aptik (как с командной строкой, так и с графическим интерфейсом), который может помочь вам просмотреть список всех установленных пакетов, с возможностью выбрать / отменить выбор некоторых из них, создать резервную копию списка, а затем восстановить тот же набор пакетов в другая система.
Установить:
Дополнительная информация: https://teejeetech.in/aptik/
Как видно на скриншоте, Aptik позволяет также выполнять резервное копирование и восстановление PPA , что, безусловно, будет необходимо для установки некоторых установленных пакетов.
источник
apt-get install aptik-gtk
а такжеAPT-Clone используется
ubiquity
(установщик Ubuntu) для процесса обновления. Это намного лучше, чемdpkg --get-selections
решение, потому что:Как пользоваться
устанавливать
Сделать резервную копию
Восстановление резервной копии
Восстановить до новой версии:
Это делает простой GZIP-файл tar, который можно легко редактировать и просматривать перед восстановлением на других машинах. Вот пример его структуры:
источник
В Unix StackExchange есть отличное объяснение, которое описывает, как использовать aptitude для вывода списка пакетов, не установленных как зависимости, и как сравнить этот список со списком пакетов по умолчанию для вашей версии Ubuntu.
Чтобы получить файл манифеста для настольных версий 12.04 и новее, посетите этот сайт , выберите свой выпуск и прокрутите вниз под образами компакт-дисков раздел «Файлы». Вы найдете что-то вроде «ubuntu-12.04.4-desktop-amd64 + mac.manifest», которое соответствует вашей архитектуре.
Для версий сервера вам необходимо получить файл манифеста из ISO, который использовался для установки исходной системы. Для VPS или облачного сервера ваш провайдер может предоставить доступ к изображениям или вам может потребоваться связаться с ними.
Вот пример использования кода из упомянутого поста, а также модификации для установки на новый сервер.
Старый сервер (код из другого поста, вывод сохранен в файл):
На новом сервере скопируйте файл с помощью scp, а затем с помощью sed добавьте 'install' к каждой строке (-i выполняет inline-replace). Затем вы можете использовать список в качестве входных данных для 'dpkg --set-selections' и установить пакеты с помощью apt-get:
Перед тем как приступить к выполнению этой задачи, я рекомендую прочитать и понять все части поста, упомянутого в начале, а затем обратиться к справочному руководству aptitude для получения подробной информации о шаблонах поиска.
источник
Вы можете посмотреть
apt
журнал под/var/log/apt/
иdpkg
журнал под/var/log/
и вы можете получить список установленных пакетов с помощью команды:
источник
Я удивлен, что
apt-cache
команда, разработанная именно для этой цели , не была упомянута выше ...Для получения дополнительной информации запустите
apt-cache --help
:источник
apt --installed list
дает лучший результат (как это было предложено в верхнем ответе выше. Хотяapt-cache pkgnames
на первый взгляд кажется, что он работает, он перечисляет «все пакеты в системе» (согласно тексту справки выше), который также включает пакеты, о которых apt знает но на самом деле не установлены. Есть--installed
опция, но, похоже, она не работаетpkgnames
.apt-cache pkgnames | wc -l
дает55909
пакеты (о которых знает система), тогда какaptitude search '~i!~M' | wc -l
дает2160
(пакеты установлены явно, без зависимостей).Для полного изложения см:
https://help.ubuntu.com/community/SwitchingToUbuntu/FromLinux/RedHatEnterpriseLinuxAndFedora#Command_Line_Tools
половина пути через страницу:
источник
Команда ниже также выведет список всех установленных пакетов,
источник
/var/log/dpkg.log*
чтобы получить все повернутые журналы.Помогите этому сообществу вики - добавьте актуальные решения.
dpkg, xargs, & apt-get
Эта команда должна завершить создание текстового файла, содержащего установленные пакеты:
Для выполнения массовой установки перечисленных пакетов вам необходимо отредактировать файл package_list.txt. Удалите странные строки в верхней части файла с помощью текстового редактора. Затем вы можете использовать эту команду для установки пакетов из созданного файла, используя:
apt-cache, xargs, & apt-get
Используйте этот метод, только если вы хотите, чтобы все текущие пакеты были установлены с использованием списка ( который включает в себя автоматически установленные и т. Д.).
Выведите ответ «apt-cache pkgnames» в файл, который мы просто назовем «package_list.txt». Вы можете сделать это с помощью:
Затем, когда вы хотите установить пакеты из "package_list.txt", вы должны использовать эту команду:
apt-mark, xargs, & apt-get
Мы можем использовать команду,
apt-mark showmanual
чтобы получить список пакетов, которые были вручную или изначально установлены с Ubuntu. Мы хотим вывести это в файл, который мы будем называть «package-list.txt». Используйте эту команду для выполнения этого:Команда, которую мы будем использовать для установки пакетов из файла "package_list.txt", приведена ниже.
Aptik Migration Utility
Для получения информации о Aptik, попробуйте посетить его официальную страницу , и для скриншота нажмите здесь или просмотрите конец этого раздела.
Установка Aptik проста. Следуй этим шагам:
Добавьте PPA с:
sudo add-apt-repository -y ppa:teejee2008/ppa
Обновите apt с помощью приведенной ниже команды.
sudo apt-get update
Установите Aptik, используя:
sudo apt-get install aptik
источник
apt-mark showmanual
включает в себя Bash, Unity и Xorg, среди других. Они должны быть там?Чтобы сохранить список установленных пакетов в файл с именем
installed_packages.txt
, просто запустите:источник
Я думаю, что интересно отметить
apt list --installed
илиdpkg-query --list
фактически использовать файл, вызванный/var/lib/dpkg/status
сзади, где вся информация о пакетах бородатая.Так что если вы хотите иметь дело с супер расширенным списком пакетов просто
cat /var/lib/dpkg/status
.Примечание. Не изменяйте
/var/lib/dpkg/status
файл.источник
В дополнение к пакетам APT многие пакеты GUI в настоящее время распространяются в виде оснасток .
Если ваша посылка не найдена
apt list --installed
, попробуйтеsnap list
:Также неплохо добавить
/snap/bin
в PATH, чтобы вы могли запускать их из терминала (это делается автоматически для пользователей без полномочий root).источник
Пакет
dctrl-tools
предоставляетgrep-status
инструмент для получения списка пакетов, помеченных как установленные в вашей системе:Использование:
видеть :
man dctrl-tools
источник
https://www.rosehosting.com/blog/list-all-installed-packages-with-apt-on-ubuntu/ :
источник
Есть много способов сделать это. Если вы используете CentOS, как я, вы можете использовать их: 1.
yum list installed
2.rpm -qa
источник