fedora10→11→12にupgradeしたメモ
完全なチラ裏ですが。
自宅で作ってるWEBサイトのために、何を思ったかQ4Mを使ってみたくなり(触ってみたかっただけともいう)、さらにはInnoDBのプラグインも試してみたくなったのでMySQLを5.1にしてみた。
yumでupdateできなかったのでrpm入れたりしてたんだけど、先にmysql消したら依存関係の都合上postfixが一緒に消えちゃいまして。
postfixもrpmとかで入らないかなーとも思ったんですが、この際どうせならってことで自宅のfedora10を一気に12までupgradeしちゃおうってのが発端です。
以下upgrade記録です。
fedora 10 → 11 へ upgade
fedora11からrpmlibが更新されたのでまずrpmを更新しておく
% sudo yum update rpm
キャッシュクリア
% sudo yum clean all
リリースパッケージを取得して更新
% mkdir -p var/pkgs/fedora/11 % cd var/pkgs/fedora/11 % wget "ftp://download.fedora.redhat.com/pub/fedora/linux/releases/11/Fedora/i386/os/Packages/fedora-release-*.noarch.rpm" % ls fedora-release-11-1.noarch.rpm fedora-release-notes-11.0.0-2.fc11.noarch.rpm % sudo rpm -Uvh fedora-release-*.noarch.rpm
リポジトリ更新
% sudo vim /etc/yum.repos.d/fedora.repo % sudo vim /etc/yum.repos.d/fedora-updates.repo mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=fedora-$releasever&arch=$basearch
% sudo yum update rpm\* yum\* ... エラー: 依存性の欠落: python(abi) = 2.5 はパッケージ sos-1.8-18.fc10.noarch (installed) が必要としています エラー: 依存性の欠落: libpython2.5.so.1.0 はパッケージ libxml2-python-2.7.6-1.fc10.i386 (installed) が必要としています エラー: 依存性の欠落: libcrypto.so.7 はパッケージ ntp-4.2.4p7-1.fc10.i386 (installed) が必要としています エラー: 依存性の欠落: python(abi) = 2.5 はパッケージ yum-3.2.24-2.fc10.noarch (installed) が必要としています エラー: 依存性の欠落: libcrypto.so.7 はパッケージ 1:qt-4.5.3-9.fc10.i386 (installed) が必要としています エラー: 依存性の欠落: python(abi) = 2.5 はパッケージ subversion-1.6.5-1.fc10.1.i386 (installed) が必要としています エラー: 依存性の欠落: librpm-4.6.so はパッケージ systemtap-1.0-2.fc10.i386 (installed) が必要としています エラー: 依存性の欠落: libcrypto.so.7 はパッケージ 1:qt-x11-4.5.3-9.fc10.i386 (installed) が必要としています エラー: 依存性の欠落: libssl.so.7 はパッケージ 1:qt-x11-4.5.3-9.fc10.i386 (installed) が必要としています エラー: 依存性の欠落: libssl.so.7 はパッケージ 1:qt-4.5.3-9.fc10.i386 (installed) が必要としています エラー: 依存性の欠落: python(abi) = 2.5 はパッケージ audit-libs-python-1.7.13-1.fc10.i386 (installed) が必要としています エラー: 依存性の欠落: python(abi) = 2.5 はパッケージ libxml2-python-2.7.6-1.fc10.i386 (installed) が必要としています 問題を回避するために --skip-broken を用いることができません 実行を試せません: package-cleanup --problems package-cleanup --dupes rpm -Va --nofiles --nodigest
エラーがいっぱいでたので、今は必要なさそうなパッケージを削除しちゃいます。必要になったときに後で入れ直せばよいかと。
ntpはhttp://fedoraproject.org/wiki/YumUpgradeFaqにあるように、Fedora11のパッケージより新しいことがあるようなので削除しておきます。
% sudo yum remove -y ntp
そのほかのパッケージを削除…しようとすると、依存性で大量に削除されそうになるので、大丈夫そうなパッケージだけ先に削除。
% sudo yum remove -y sos qt{,-x11} subversion systemtap libxml2-python
yumが依存性を持っているので、いったん削除する。(少し古くなる)
% sudo yum info yum ... バージョン : 3.2.24 リリース : 2.fc10 ... % sudo yum remove -y yum % mkdir yum % cd yum % wget "ftp://download.fedora.redhat.com/pub/fedora/linux/releases/10/Fedora/i386/os/Packages/yum*.rpm" % ls yum-3.2.20-3.fc10.noarch.rpm yum-metadata-parser-1.1.2-10.fc10.i386.rpm yum-utils-1.1.18-2.fc10.noarch.rpm % sudo rpm -Uvh --force yum*.rpm % sudo yum info yum ... Available Packages Name : yum Arch : noarch Version : 3.2.22 Release : 4.fc11 ...
fedora10のそれよりも若干古いのね。
audit-libs-pythonの依存性があるので、古いもので置き換える
% sudo yum info audit-libs-python Installed Packages Name : audit-libs-python Arch : i386 Version : 1.7.13 Release : 1.fc10 ... Available Packages Name : audit-libs-python Arch : i586 Version : 1.7.12 Release : 4.fc11
これも若干古いらしいのと、archが変更されていた。
% cd .. % mkdir audit % cd audit % wget "ftp://download.fedora.redhat.com/pub/fedora/linux/releases/10/Fedora/i386/os/Packages/audit*.rpm" % ls audit-1.7.8-6.fc10.i386.rpm audit-libs-1.7.8-6.fc10.i386.rpm audit-libs-python-1.7.8-6.fc10.i386.rpm % sudo rpm -Uvh --oldpackage audit*.rpm
改めて挑戦
% sudo yum update -y rpm\* yum\*
86パッケージが投入された。確認してみる。
% sudo yum info yum Installed Packages Name : yum Arch : noarch Version : 3.2.22 Release : 4.fc11
% sudo yum info audit-libs-python Installed Packages Name : audit-libs-python Arch : i586 Version : 1.7.12 Release : 4.fc11
ちゃんと入っていますね。
やっとupgradeに挑戦
% sudo yum clean all % sudo yum install -y yum-fastestmirror % sudo yum -y upgrade
問題なく入ったのでrebootする。
% sudo reboot
とりあえずここまででfedora11になりました。
消してしまったパッケージを再度インストール。
% sudo yum install libxml2 libxml2-{devel,python} foomatic
fedora 11 → 12 へ upgade
ここからfedora12へupgradeする。
fedora11からrpmlibが更新されたのでまずrpmを更新しておく
% sudo yum update rpm
キャッシュクリア
% sudo yum clean all
リリースパッケージを取得して更新
% mkdir -p var/pkgs/fedora/12 % cd var/pkgs/fedora/12 % wget "ftp://download.fedora.redhat.com/pub/fedora/linux/releases/12/Fedora/i386/os/Packages/fedora-release-*.noarch.rpm" % ls fedora-release-12-1.noarch.rpm fedora-release-notes-12.0.0-4.fc12.noarch.rpm % sudo rpm -Uvh fedora-release-*.noarch.rpm エラー: 依存性の欠如: rpmlib(PayloadIsXz) <= 5.2-1 は fedora-release-12-1.noarch に必要とされています rpmlib(PayloadIsXz) <= 5.2-1 は fedora-release-notes-12.0.0-4.fc12.noarch に必要とされています
rpmlibでエラーが出ます。
% sudo yum info rpm ... Installed Packages Name : rpm Arch : i586 Version : 4.7.0 Release : 1.fc11 ...
http://fedoraproject.org/wiki/YumUpgradeFaqに
All Fedora 12 RPM packages use XZ/LZMA compression, which is only supported by the rpm-4.7.1-1 update (or later) for Fedora 11. Before upgrading from Fedora 11, run yum update rpm.
とあるのでrpmをupdateする。
% sudo yum update rpm-4.7.1-1
駄目だった。入ってないのね。
http://d.hatena.ne.jp/karronoli/20091125#1259163176
http://koji.fedoraproject.org/koji/buildinfo?buildID=115602
% cd ~/var/pkgs/fedora/12 % mkdir rpm % cd rpm % wget http://kojipkgs.fedoraproject.org/packages/rpm/4.7.1/1.fc11/i586/rpm-4.7.1-1.fc11.i586.rpm % wget http://kojipkgs.fedoraproject.org/packages/rpm/4.7.1/1.fc11/i586/rpm-build-4.7.1-1.fc11.i586.rpm % wget http://kojipkgs.fedoraproject.org/packages/rpm/4.7.1/1.fc11/i586/rpm-devel-4.7.1-1.fc11.i586.rpm % wget http://kojipkgs.fedoraproject.org/packages/rpm/4.7.1/1.fc11/i586/rpm-libs-4.7.1-1.fc11.i586.rpm % wget http://kojipkgs.fedoraproject.org/packages/rpm/4.7.1/1.fc11/i586/rpm-python-4.7.1-1.fc11.i586.rpm % ls rpm-4.7.1-1.fc11.i586.rpm rpm-build-4.7.1-1.fc11.i586.rpm rpm-devel-4.7.1-1.fc11.i586.rpm rpm-libs-4.7.1-1.fc11.i586.rpm rpm-python-4.7.1-1.fc11.i586.rpm % sudo rpm -Uvh rpm-*.rpm % sudo yum info rpm ... Installed Packages Name : rpm Arch : i586 Version : 4.7.1 Release : 1.fc11
再挑戦
% cd ~/var/pkgs/fedora/12 % sudo rpm -Uvh fedora-release-*.noarch.rpm
無事に更新。
% sudo yum update rpm\* yum\*
特に何もなし。
upgradeに挑戦
% sudo yum clean all % sudo yum install -y yum-fastestmirror % sudo yum -y upgrade
問題なく入ったのでrebootする。
% sudo reboot
fedora11にくらべてfedora12へのupgradeはあっけないほどすんなり入った。(rpmだけ入れたけども)何がまずかったって、yumの自動更新が走っていて上のバージョンよりも新しいバージョンが入っちゃってると非常に面倒だってことがわかったので、自動更新はOFFにしなきゃなと強く思った。
自宅サーバーだからと思って面倒臭がったらだめなのね…
ちなみに上記はVMwareで試してみた結果なのでまだ自宅サーバには試していない。
参考:
http://fedoraproject.org/wiki/YumUpgradeFaq
http://blog.77jp.net/%E3%81%9D%E3%81%AE%E4%BB%96%E3%80%80linux/fedora-8-%E2%86%92-fedora-9%E3%80%80%E3%82%A2%E3%83%83%E3%83%97%E3%82%B0%E3%83%AC%E3%83%BC%E3%83%89.html
http://www.multiburst.net/ElectricBrain/2007/10/yumfc6fc7
教訓
自動更新はやめましょう。