Ubuntu、既存のマシンのような新しいマシンをセットアップする方法


27

必要なアプリが1台のマシンにセットアップされているので、新しいUbuntuボックスに同じものをインストールしたいと思います。

インストールされているすべてのアプリを一覧表示するスクリプトがあります。これにより、ボックス間で差分を取り、不足しているアイテムを追加できますか?

事前に感謝、クリス

回答:


18

pjzで言及されたdpkgのトリックと同様に、etckeeperチュートリアル)もご覧になるとよいでしょうチュートリアル)-/ etc / *をバージョン管理下に置き、行った変更を見つけやすくし、他の変更を簡単に複製できるアプリサーバー。

また、pjzのメソッドによって生成されるリストよりも短いリストには、次を使用できます。

$ deborphan -a --no-show-section > /tmp/mypackagelist

これにより、依存関係として必要な他のすべてのパッケージをインストールするパッケージのリストが表示されます。リストを実際に調べたい場合に便利です。(dpkg --get-selectionsは、長いリストを作成します)。さらに、リストは十分に短いため、改行を追加したり、「#」でエントリをコメントアウトしたりできます。その後、追加のパッケージをインストールするときにできること

$ grep -v '#' /tmp/mypackagelist | xargs apt-get install -y

このようにして、一部のマシンにのみインストールしたいパッケージがある場合、それらをパッケージリストから完全に削除する必要はありません。


etckeeperは本当に面白そうです(+1)。
jkp

17
dpkg --get-selections >/tmp/mypackagelist

トリックを行う必要があります。次に、新しいマシンの/etc/apt/sources.listに古いマシンと同じエントリセットがあることを確認した後、mypackagelistを新しいマシンにコピーして、次の操作を行います。

cat mypackagelist | xargs apt-get -y install 

そしてあなたは行ってもいいはずです。

dpkg --get-selections行も/ etc / dirに随時入れる良い情報であることに注意してください。システム上にあるパッケージ。


はい、ジェフ、構成ファイルの変更はどうですか?dpkg-reconfigureオプションはどうですか?どのようにホスト名について...ユーザー、共有、マウント...についての私の応答を参照してくださいdd怒鳴るを
elcuco

2

Ubuntuフォーラムには良い答えがあります

  1. 古いマシンの場合:$ dpkg --get-selections> installed-software
    • これにより、インストール済みアプリのリストが取得されます
  2. 新しいマシン:$ dpkg --set-selections
    • これにより、新しいマシンに現在インストールされていないパッケージをインストールするように新しいマシンが設定されます。
    • 新しいマシンに古いマシンにインストールされていないパッケージがあるかどうかを確認するのは興味深いかもしれません。そのため、新しいマシンでdpkg --get-selections>コマンドを見つけ、diffを使用して両方の出力ファイルを比較できます。
  3. 最後に、新しいマシン上で:$ dselectとパッケージがインストールされます。

フォーラムディスカッションからの追加リンク:

  1. gpgキーを忘れないでください(同じスレッドから)
  2. 必要なパッケージをすべてインストールし、不要なパッケージをすべてアンインストールする方法

2

より良いdpkgコマンドは[元のマシン]かもしれません

dpkg --get-selections | grep -v deinstall > packages_list

その後、[新しいマシンをインストールするとき; packages_listを転送した後]

sudo dpkg --set-selections < packages_list
sudo apt-get -u dselect-upgrade

1

CLIのファンではない場合(実際にそうすべきではありますが)、Synapticパッケージマネージャーを使用してインストール済みパッケージのイメージを保存し、そのファイルを(再びSynapticを使用して)新しいマシンをロードできます。ファイル/マークの保存オプションの下に、「フル状態を保存」というチェックボックスがあります。


私は、これはメソッドのコーリーが見つかったと思う
jbdavid

1

なぜマシンをクローンしているだけではないのですddか?


1
この。マシンのクローンを作成して名前を変更するだけで、それが群を抜いて最速の方法です。
pjc50 09


1

FSArchiverを使用してマシンを複製することは完全に受け入れられます。それ以外の場合、コマンドの便利なペアがあります。前半はバックアップcronに追加することもできます。

debconf-get-selections
debconf-set-selections

aptitude-create-state-bundle
aptitude-run-state-bundle --unpack

dpkg --get-selections
dpkg --clear-selections; dpkg --set-selections

複製する必要がある場所は/ etcおよび/ varです。上記のコマンドは、/ varのいくつかのファイルを直接操作し、/ etcのいくつかのconffileをdebconfを介して間接的に操作します。これらのサブツリーを複製してaptitudeを実行するだけで、同じ効果が得られます。


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