同じdebianパッケージを別のシステムにインストールする


13

システムにインストールされているDebianパッケージのリストをエクスポートし、それらの同じパッケージを新しいシステムにインストールする方法を教えてください。

回答:


17

バックアップするには:

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、既存のマシンのような新しいマシンをセットアップする方法

サーバーインベントリの一部としてdpgklistをSVNにチェックインする毎日のcronジョブで上記を実行しています。これにより、サーバー全体にインストールされたパッケージの合理的で正確なインベントリを保持でき、サーバーに特定のパッケージが欠落しているかどうかを簡単に並べて簡単に確認できます。


1
入力行ごとにこのエラーメッセージが表示されます dpkg: warning: package not in status nor available database at line ...
。– danorton

ubuntuのバージョンが少ないため、この方法は機能しません
QkiZ

10

aptitudeまた、このユースケースを満たし、他の方法では得られない「自動インストール」パッケージに関する情報を保持します。参照マシンで次を実行します。

aptitude search -F '%p' '~i!~M' > package_list 

package_list他のマシンにコピーして実行

xargs aptitude --schedule-only install < package_list; aptitude install; 

ちょっとしたメモ。aptitudeリファレンスマニュアルによると、「パッケージ」フィールドはデフォルトで「拡張可能」であるため、aptitude search -F '%p' '~i!~M' > package_list正常に機能するはずです。
クロノ

パッケージのバックアップについて:用のプラグインを参照してくださいdeborphan@ bogdan.org.ua/2013/10/18/...
TomRoche

[insert your own linebreaks, since http://serverfault.com/editing-help#linebreaks lies] パッケージの復元について:これはルートとして実行する必要がありますか?その場合は、<br/> xargs復元コマンドライン= xargs aptitude --schedule-only install <package_list; aptitudeインストール; <br/> 1.なぜaptitude必要なのxargsですか?dpkg --set-selectionsありません。<br/> 2. aptitude 必要なのは、復元コマンドラインでxargs1つ以上sudoのs を置く場所ですか?または、必要であれば、その行を実行するためのルートを取得します。
トムロッシュ

0

これは良い考えであり、これを習慣にする場合は、apt-proxyを使用して1つのサーバーをセットアップすることもできます。


aptのいくつかのプロキシで遊んだ後、私はapt-cacher-ngを決定することになりました。apt-cacher-ngはセットアップが非常に簡単で、いくつかのアカウントからは、元のapt-proxyよりも堅牢であるようです。しかし、それぞれの人にはお気に入りがあります。 unix-ag.uni-kl.de/~bloch/acng
faultyserver

私の投票はおよそのものであり、それはある種の狂気ではない唯一のものです。
ワンブル

興味深い...私は実際に代替案を試したことはありません。

0

faultyserversの回答は、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:警告:不明なパッケージが見つかりました。これは、利用可能なデータベースが古くなって、ニーズがフロントエンドメソッドを介して更新することが意味するかもしれません
FHEM、新しい@パイ:/ tmpに$須藤はapt-getをdselectのアップグレード
読書のパッケージ一覧...完了
建物の依存関係ツリーは、
状態情報を読み取っています... Doneを
アップグレード0,0を新たに削除するには、0をインストールし、0はアップグレードされません。

古いRaspberry Pi(Raspbian GNU / Linux 7(wheezy)を実行)から新しいRaspberry(Raspbian GNU / Linux 8(jessie))に同じパッケージをインストールしようとしていました。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.