web-dev-qa-db-ja.com

Ubuntuを以前のバージョンにロールバックする方法は?

Ubuntuの新しいバージョンをインストールしたばかりで、以前のバージョンにロールバックしたい。

どうやってやるの?それも可能ですか?

129
OHLÁLÁ

リリースのダウングレードはある程度可能です。十分な戦いがあれば、それを行うことができます(技術的な詳細については、他の回答を参照してください)。

ただし、結果はアップグレード前と同じではありません。アップグレード中に、新しいパッケージを喜ばせるために特定の一方向の変更が行われ、それらをダウングレードしてもこれらの編集は元に戻されません。ダウングレードが完全に機能することを保証することは不可能であり、安定する場合はもちろんです。

要するに、最も簡単なオプションは常に再インストールです。これを面倒な作業と考えないでください。パッケージを削減して、より良い設定を行う良い機会と考えてください。

将来物事をテストしたい場合、問題があるかもしれないと恐れている場合は、必ず次のことを確認してください。

  • 最初にLiveCDをテストします。すぐにハードウェアの問題が発生する場合は、これが通知されます。
  • 何かをする前にバックアップしてください。みんなとその母親がすでにあなたにこれをするように言っていることは知っていますが、あなたが問題を抱えていると思うならそれは本当に重要です。マシンなしで20分以上できない場合は、 Clonezilla などのフルディスククローン作成ツールを検討してください。これにより、ディスクの以前のバージョンを復元できます。同様の結果を提供できるツールは他にもあります。
  • データを分離してください。 /home/をインストールと同じパーティション内に置くことは、物事を絶えずアップグレード/ダウングレードしている場合の頭痛の種です。別のディスクまたは少なくとも別のパーティションにプッシュオフして、再インストールが必要になったときに実際にマウントをセットアップするだけで済みます。
  • Ubuntu QAチームによって修正された 重大なバグ のダウングレードがありました。古いCDをそのまま使用して「アップグレード」することを勧める人もいるので、必ず読んでください。しかし、これは悪い考えです。
65
Oli

「ミンサーのハンドルを反対方向に回転させてミンチを肉に戻すことはできません」と大まかに翻訳できる私の言葉があります:)

enter image description here

アップグレード手順は一方向です。新しいバージョンのソフトウェアをインストールする際、パッケージのポストインストールスクリプトによって構成ファイルと設定が変更され、新しいソフトウェアに必要な新しい形式が使用されます。基本的に、逆の手順はありません-新しい構成ファイルを古いソフトウェアと互換性を持たせるためです。

84
Sergey

パッケージングツール(apt)のレベルではpossibleです。しかし、結果のシステムは再インストールと同等ではない可能性があり、途中でエラーが発生する可能性があります。これは、多くのパッケージにはアップグレード(たとえば、構成ファイルの変更の処理)の特定のサポートが含まれていますが、ダウングレードは含まれていないためです。

通常、aptはパッケージの最新バージョンをインストールすることを好みます。ただし、ピン留めによってこれを変更できます。古いリリースのパッケージはインストール済みのパッケージよりも優先度が高いことを宣言できるため、aptitude dist-upgradeを実行するとダウングレードされます。

/etc/apt/sources.listを変更して古いリリースのみを含め(ファイルを編集するか、お気に入りのGUIを使用します)、aptitude updateを実行します。次に/etc/apt/preferencesapt_preferences manページ に記載)を編集し、次の行を追加します(lucidにダウングレードするには):

Package: *
Pin: release v=10.04
Pin-Priority: 1001

次にaptitude dist-upgradeを実行します。すべてのパッケージには1000を超える優先度があるため、10.04に存在し、システムにインストールされているすべてのパッケージはダウングレードされます。 10.04に含まれていないパッケージを手動で削除する必要があります。それらは、aptitudeの「廃止およびローカルで作成されたパッケージ」の下にリストされます。

36
Gilles

彼らは、「決して言ってはいけない」、「不可能はない」と言います-どちらも本当ですが、あなたの場合はそうではありません。データをバックアップして再インストールするか、それを突き出すことをお勧めします。週が経つにつれて、システムはますます安定するはずです。

既存のインストールの上に再インストールすることもできます(ファイルが保持されます)。

経験則として、実稼働システムでの開発バージョンへのアップグレードは避けてください(特にテスター/開発者でない場合)。

9
RolandiXor

手動で行うことができます。

まず、システムにインストールしたもののリストを生成します。これを行うには、ターミナルで次のように入力します。

Sudo dpkg --get-selections | grep '[[:space:]]install$' | \awk '{print $1}' > package_list

/ homeおよび/ etcフォルダーをバックアップメディアにコピーします。

Ubuntu 10.04を再インストールします。バックアップを復元します(正しい許可を設定することを忘れないでください)。次に、以下を実行して、以前に使用したすべてのプログラムを再インストールします。

cat package_list | xargs Sudo apt-get install

互換性のない設定については、/ etcおよび/ homeフォルダーのクリーニングが必要になる場合があることに注意してください。

7
user1362567

これが、メインインストールを開発リリースにアップグレードすることになっていない理由です。開発リリースをテストする場合は、別のパーティションでテストする必要があります。これにより、問題が発生した場合に安定したリリースに再起動できます。

この時点で、11.04に戻りたい場合は、再インストールして、手動パーティション設定を選択する必要があります。パーティションを構成する際にフォーマットボックスをオンにしないでください。ユーザーファイルはそのまま残ります。

5
psusi

簡単な方法は、以前のバージョンのCD/DVDまたはUSBスティックから起動し、既存のインストールを上書きしてUbuntuを再インストールすることです。

最初にバックアップを忘れないでください:homeディレクトリは、個人データがある他の場所にあります。

5
swift

ロールバックは特定のパッケージに対して単独で正常に機能する場合がありますが、ディストリビューション全体の大規模なロールバックが、恐ろしく壊れたシステム(または表面上、うまくいきますが、それがますます壊れていることに気付くと、奇妙なものが浮上し続けます)。

APTは可能な限りロールバックを回避するように設計されており、Ubuntu(およびDebianも)ディストリビューションを構成するパッケージは、設計目標としてスムーズなロールバックを使用して設計されていません。

信頼できるシステム全体のバックアップがない限り、本当に必要なのは、ホームディレクトリ全体をバックアップし(場合によっては別のパーティションにも)、選択したバージョンのCDイメージから再インストールして、開始することです。ホームフォルダーからデータを復元します。新しいバージョンに慣れているものが古いバージョンでうまく動作しない場合に備えて、ホームディレクトリのdotfilesを選択的に復元する必要があるかもしれません。

実行する前に、インストールしたパッケージを熟読し、依存しているパッケージを書き留めて、再インストールできるようにすることができます。インストール済みパッケージのリストをバックアップおよび復元するツールがありますが、必要なパッケージや含まれているパッケージが変更されている可能性があるため、バージョン間を移動する場合は通常これをお勧めしません。

5
thomasrutter

簡単に言えば:いいえ、ありません。申し訳ありません...(テストリリースにアップグレードすることの危険性があります!)

3
8128