14

古い AMD64 から 32 ビットの新しい Intel デュアルコアに移行することを検討しています。インストールは問題ありませんが、インストール済みのアプリをすべて移行できますか? 同様のプラットフォームとファイル システムへの移行を除いて、これまで Google で何も見つけることができませんでした。ファイルシステムは変更しませんが、プラットフォームは異なります。Gentoo の "World" ファイルの行に何かありますか?

4

7 に答える 7

34

パッケージのリストを簡単に保存できます。「man dpkg」を参照して、--set-selections および --get-selections を検索してください。

ただし、その基本は、パッケージのリストを保存することです。

dpkg --get-selections > package_list

そのリストを別のシステムに復元するには:

cat package_list | sudo dpkg --set-selections && sudo apt-get dselect-upgrade

アーキテクチャ間で移動すると、利用できないパッケージがいくつかあることを意味します。それらは無視されます。たとえば、ia32-libs32 ビット システムにはインストールできません。x86-64 から x86 に移行する場合、その選択は無視されます。

于 2008-10-09T15:19:51.680 に答える
4

おかしい、ここで私はハウツーリポジトリとしてSOを使用していました(質問を書いてから自分の答えを選択します)が、自分の答えを書くのにかかった時間に、私は3回パンチに打ち負かされました!

とにかく、これが私の記録の見方です:

dpkgの--get-selectionsおよび--set-selectionsオプションを使用して、現在インストールされているパッケージをキャプチャして選択します。

まず、現在のパッケージリストを古いシステムにエクスポートします。

sudo dpkg --get-selections > mypackages.txt

次に、このリストを新しいシステムにインストールするパッケージとして選択します。

sudo dpkg --set-selections < mypackages.txt

(追加のクレジットについては、ダウンロードを最小限に抑えるためにaptキャッシュディレクトリをコピーしてください。/var/cache/apt)

最後に、選択したパッケージをダウンロードしてインストールするようにaptに指示します。

sudo apt-get dselect-upgrade
于 2008-10-09T16:19:55.023 に答える
2

(私のように)システムを台無しにする前にこれを行わなかった場合は、live-cdまたは別のインストールで起動し、chrootを使用してこの情報を取得できます。

sudo chroot /path/to/old/system /bin/bash

次にdpkg --get-selectionsダンスを行い、結果のファイルを使用して新しいシステムをセットアップできます。

于 2010-11-03T22:40:17.273 に答える
2

apt-get を使用してインストールしたものすべてについて、インストールしたものの記録を作成したい場合は、次を実行します。

dpkg -l|awk '/^ii\s*(.*)\s*/ {print $2}'|packages.txt

これにより、インストールしたすべてのパッケージを含むテキスト ファイルが作成されます。次に、インストールを行った後、次のスクリプトを作成して実行します。

#!/bin/sh
for p in $(cat packages.txt); do apt-get install $p; done

注:
1) 64 ビットから 32 ビットに移行しているため、一部のパッケージは互換性がない可能性があります。上記のスクリプトを実行する前に、「64」のpackages.txtをgrepし、必要に応じて代替手段を見つけます。
2) ソースからインストールしたものはすべて、メモを取り、ソースから再度インストールする必要があります。

幸運を!

于 2008-10-09T15:16:20.783 に答える
2

これが答えかどうかはわかりませんが、aptitude-create-state-bundle コマンドの存在を発見しました。はい、それは 1 つのコマンドです。マニュアルページをチェックしてください。

于 2010-03-15T22:34:30.387 に答える
2

これは、同様の問題を解決するために私が一般的に行っていることです(新しいラップトップに数回移行しました)。

この質問に対する他の回答には2つの追加があります。これによりupdate-alternativesdebconf設定も移動され、転送されていないことに気付くまでに常に長い時間がかかります。

古いシステムでのバックアップ:

sudo apt-get install dselect debconf-utils
mkdir system-selections
update-alternatives --get-selections > system-selections/alternatives-selections
dpkg --get-selections '*' > system-selections/dpkg-selections
sudo debconf-get-selections > system-selections/debconf-selections

config ディレクトリを新しいシステム (" scp -r oldsystem:system-selections ~") にコピーします。

sudo apt-get install dselect debconf-utils
sudo dselect update
sudo dpkg --set-selections  < system-selections/dpkg-selections
sudo debconf-set-selections < system-selections/debconf-selections
sudo apt-get -u dselect-upgrade
sudo update-alternatives --set-selections < system-selections/alternatives-selections

また、同じ方法を使用して、ホーム ディレクトリとsystem-selections(前述の) リモート ストレージを定期的にバックアップすることもできます。したがって、ラップトップが壊れたり盗まれたりした場合でも、同様のシステムを構築するのは非常に迅速です。

于 2014-08-30T13:10:35.363 に答える
1

これについて私が考える最善の方法は、現在のシステムにインストールされているパッケージのリストをバックアップし、そのリストを使用して新しいシステムにインストールするパッケージを設定することです。パッケージの選択をバックアップおよび復元する方法に関する一般的な手順:

ツールのインストール

sudo apt-get install dselect

バックアップ パッケージ リスト

dpkg --get-selections | grep -v deinstall > ubuntu-files

パッケージ選択の復元

sudo apt-get update
sudo apt-get dist-upgrade
dpkg --set-selections < ubuntu-files
sudo dselect

これにより、dselect セッションが開きます。「I」と入力し、dselect が ubuntu-files ドキュメントにリストされているパッケージをインストールできるようにします。終了したら、「Q」と入力して ENTER キーを押し、dselect を終了します。

于 2008-10-09T15:17:56.100 に答える