Yukiharu YABUKI の tDiary
このtDiaryを検索します。
2013-06-25 [長年日記]
_ [Debian] aptのupgradeについて
人から尋ねられたので、メモっておきます。lennyの時代に
etch で必要なパッケージの一部と lenny で必要なパッケージの一部が衝突するため、直接 aptitude dist-upgrade を実行すると、多くの場合、システムに残しておきたいパッケージが多数削除される結果となります。そのため、まずはこれらの競合状態を打開するための最小アップグレードを行い、その上で完全な dist-upgrade を行う、という 2 段階のアップグレード過程を踏むことをお勧めします。
まず、次のコマンドを実行してください。
# aptitude safe-upgrade
このコマンドには、アップグレードしても他のパッケージをインストール・削除する必要がないパッケージだけをアップグレードする、という効果があります。
次のステップは、どのようなパッケージ群がシステムにインストールされているかによって変化します。このリリースノートでは、どのような方法をとるべきかに関する一般的なアドバイスをします。しかし、確信がもてない場合は、それぞれの方法でアップグレードを先に進める前に、どのパッケージを削除するよう提案されているのかきちんと調べることをお勧めします。
どの場合でも削除されるだろうと予想されるパッケージには、base-config、hotplug、xlibs、netkit-inetd、python2.3、xfree86-common、xserver-common があります。lenny で時代遅れとなるパッケージについてさらに詳しく知りたい場合は、項4.10. 「時代遅れ (Obsolete) のパッケージ」を参照してください。
[システムの最小アップグレードより引用]
という内容が、記述されていました。aptitude safe-upgrade
が、依存関係を満たすupgradeだけを行うために指示された内容ですが、aptitudeの「作法」かといわれると、Major Release Upgrade時に、そこまで常に行う必要はないのではないかと思うのですが。いかがでしょうか。実際、wheezyのリリースノートを確認しましたが、特に上記のような指示はありませんでした。
システムのアップグレードを行うのであれば、dpkg の get-selection などを利用して既存のパッケージの記録を取っておきますし、プロプラエタリソフトウェアを利用しているのなら、システムのフルバックアップを取っておくのでしょうね。失敗してもチャレンジできるように。
Debian Projectがサポートしている DFSG 100% の debパッケージだけなら、最悪でも過去の deb パッケージは再取得できるのですが、プロプラエタリソフトウェアはそうもいきませんから。