Відповіді:
Для резервного копіювання:
sudo dpkg --get-selections > /tmp/dpkglist.txt
Відновити:
sudo dpkg --set-selections < /tmp/dpkglist.txt
sudo apt-get -y update
sudo apt-get dselect-upgrade
Також дивіться це питання для додаткових параметрів та інформації: Ubuntu, як налаштувати нову машину, як існуючу
У мене вищезазначене працює у щоденній cronjob, яка перевіряє dpgklist у SVN як частину нашого серверного інвентарю. Це дозволить вам зберігати розумну точну інвентаризацію встановлених пакетів на своїх серверах, і це легко зробити швидкий побічний розріз, щоб побачити, чи не вистачає серверу певного пакету.
aptitude
також задовольняє цю службову скриньку, і вона зберігає інформацію про "автоматично встановлені" пакети, яких інші методи не мають. Виконайте наступне на довідковому апараті:
aptitude search -F '%p' '~i!~M' > package_list
Скопіюйте package_list
на іншу машину і запустіть
xargs aptitude --schedule-only install < package_list; aptitude install;
aptitude search -F '%p' '~i!~M' > package_list
також має працювати добре.
deborphan
@ bogdan.org.ua/2013/10/18/…
[insert your own linebreaks, since http://serverfault.com/editing-help#linebreaks lies]
Що стосується відновлення пакету: це потрібно зробити як root, ні? Якщо так, <br/> xargs
у командному рядку відновлення = xargs aptitude - встановити лише графік <package_list; встановлення можливостей; змушує мене знати, <br/> 1. Навіщо це aptitude
потрібно xargs
? dpkg --set-selections
не. <br/> 2. Імовірно, aptitude
чи потрібно xargs
розміщувати одне або декілька sudo
s у вашому командному рядку відновлення? Або в іншому випадку отримати корінь для запуску цього рядка, припускаючи, що це необхідно.
Це гарна ідея, і ви можете також встановити один сервер з apt-proxy, якщо ви звикли до цього.
відповідь несправних серверів працювала для мене лише після виконання іншої команди відповідно до http://rayslinux.blogspot.de/2012/10/ubuntu-1210-dpkg-warning-package-not-in.html
sudo apt-get install dselect
sudo dselect access
sudo dselect update
До цього біг
sudo apt-get dselect-upgrade
тільки повернувся
[...]
dpkg: попередження: пакет не знаходиться в базі даних у рядку 302: xfonts-utils
dpkg: попередження: знайдені невідомі пакети; це може означати, що наявна база даних застаріла, і її потрібно оновити за допомогою методу інтерфейсу
pi @ FHEM-new: / tmp $ sudo apt - отримати dselect-upgrade
Читання списків пакетів читання ... Готово
дерево залежності залежності
Читання інформації про стан ... Виконано
0 оновлених, 0 нещодавно встановлених, 0 для видалення та 0 не оновлених.
Я намагався встановити ті самі пакети зі свого старого Raspberry Pi (під керуванням Raspbian GNU / Linux 7 (wheezy)) на своєму новому Raspberry (Raspbian GNU / Linux 8 (jessie)).
dpkg: warning: package not in status nor available database at line ...