Fedora 13 → Fedora 14 へ preupgrade-cli でアップグレード (前より簡単になってた)

fedora 2010-11-06

皆さん、Fedora 14 が出ましたね。
ということで、自分の作業環境もアップグレードしてみることにしました。

Fedora 10 -> Fedora 12 にあげた手順についても前に書いたことがあったので、今回もそれに沿ってやってみます。

preupgradeは導入済み前提、早速試してみます。

preupgrade-cli 実行

sudo LANG=C preupgrade-cli "Fedora 14 (Laughlin)"
Loaded plugins: blacklist, whiteout
No plugin match for: rpm-warm-cache
No plugin match for: remove-with-leaves
No plugin match for: auto-update-debuginfo
No plugin match for: refresh-packagekit
No plugin match for: presto
preupgrade-main (mirrorlist)
  url: http://mirrors.fedoraproject.org/mirrorlist?repo=fedora-14&arch=$basearch
  now: http://mirrors.fedoraproject.org/mirrorlist?repo=fedora-14&arch=i386
preupgrade (mirrorlist)
  url: http://mirrors.fedoraproject.org/mirrorlist?path=pub/fedora/linux/releases/14/Fedora/$basearch/os
  now: http://mirrors.fedoraproject.org/mirrorlist?path=pub/fedora/linux/releases/14/Fedora/i386/os
preupgrade-fedora (mirrorlist)
  url: https://mirrors.fedoraproject.org/metalink?repo=fedora-14&arch=i386
  now: https://mirrors.fedoraproject.org/metalink?repo=fedora-14&arch=i386
preupgrade-updates (mirrorlist)
  url: https://mirrors.fedoraproject.org/metalink?repo=updates-released-f14&arch=i386
  now: https://mirrors.fedoraproject.org/metalink?repo=updates-released-f14&arch=i386
Fetched treeinfo from http://ftp.jaist.ac.jp/pub/Linux/Fedora/releases/14/Fedora/i386/os//.treeinfo
treeinfo timestamp: Fri Oct 22 03:14:10 2010
MEMORY                                                                                                                                                                                     | 1.2 kB     00:00
/boot/upgrade/vmlinuz checksum OK
/boot/upgrade/initrd.img checksum OK
Error: Not enough space in /boot/upgrade to download install.img.

The main installer image could not be saved to your hard drive. The installer can download this file once it starts, but this requires a wired network connection during installation.

If you do not have a wired network connection available, you should quit now.

実際はコンソールどんどん流れていきます。
以前はパーティションを分けてて且つ /boot がアップグレードに必要な容量を満たしてない場合(多分100〜200MBくらい?)メッセージも出ず、リブート時にエラーになって終わってたのですが、今回はその旨メッセージが表示されるようになっているようです。
/boot に容量が無い場合、”preupgradeは再起動時にダウンロードしなおすけど、ネットワークつないで無い時は無理なんでquitしておけ" と言っています。

処理はそのまま進みます。

--> Running transaction check
---> Package MAKEDEV.i686 0:3.24-6.fc14 set to be updated
---> Package ORBit2.i686 0:2.14.19-1.fc14 set to be updated
---> Package OpenEXR-libs.i686 0:1.7.0-1.fc14 set to be updated
---> Package acl.i686 0:2.2.49-8.fc14 set to be updated
---> Package alex.i686 0:2.3.3-1.fc14 set to be updated
---> Package atk.i686 0:1.30.0-5.fc14 set to be updated
---> Package attr.i686 0:2.4.44-5.fc14 set to be updated
---> Package audit-libs.i686 0:2.0.4-4.fc14 set to be updated
---> Package audit-libs-python.i686 0:2.0.4-4.fc14 set to be updated
---> Package authconfig.i686 0:6.1.11-1.fc14 set to be updated
--> Processing Dependency: libavahi-client.so.3 for package: 1:cups-libs-1.4.4-10.fc14.i686
--> Processing Dependency: libavahi-common.so.3 for package: 1:cups-libs-1.4.4-10.fc14.i686
--> Processing Dependency: libavahi-common.so.3 for package: avahi-0.6.27-2.fc14.i686
---> Package avahi.i686 0:0.6.27-2.fc14 set to be updated
--> Processing Dependency: systemd-units for package: avahi-0.6.27-2.fc14.i686
---> Package bash.i686 0:4.1.7-3.fc14 set to be updated
---> Package bind-libs.i686 32:9.7.2-2.P2.fc14 set to be updated


... (snip)

---> Package cronie.i686 0:1.4.5-2.fc14 set to be installed
--> Processing Dependency: dailyjobs for package: cronie-1.4.5-2.fc14.i686
--> Running transaction check
---> Package cronie-anacron.i686 0:1.4.5-2.fc14 set to be installed
--> Finished Dependency Resolution
Packages we need to download
MAKEDEV.i686                             3.24-6.fc14            preupgrade-fedora
ORBit2.i686                              2.14.19-1.fc14         preupgrade-fedora
OpenEXR-libs.i686                        1.7.0-1.fc14           preupgrade-fedora
acl.i686                                 2.2.49-8.fc14          preupgrade-fedora
alex.i686                                2.3.3-1.fc14           preupgrade-fedora
atk.i686                                 1.30.0-5.fc14          preupgrade-fedora
attr.i686                                2.4.44-5.fc14          preupgrade-fedora
audit-libs.i686                          2.0.4-4.fc14           preupgrade-fedora
audit-libs-python.i686                   2.0.4-4.fc14           preupgrade-fedora
authconfig.i686                          6.1.11-1.fc14          preupgrade-updates
avahi.i686                               0.6.27-2.fc14          preupgrade-fedora
avahi-libs.i686                          0.6.27-2.fc14          preupgrade-fedora
bash.i686                                4.1.7-3.fc14           preupgrade-fedora

... (snip)


upstart.i686                             0.6.5-10.fc14          preupgrade-updates
upstart-sysvinit.i686                    0.6.5-10.fc14          preupgrade-updates
usermode.i686                            1.106.1-1.fc14         preupgrade-fedora
util-linux-ng.i686                       2.18-4.4.fc14          preupgrade-updates
vim-common.i686                          2:7.2.446-2.fc14       preupgrade-fedora
vim-enhanced.i686                        2:7.2.446-2.fc14       preupgrade-fedora
vim-minimal.i686                         2:7.2.446-2.fc14       preupgrade-fedora
xml-common.noarch                        0.6.3-33.fc14          preupgrade-fedora
xz.i686                                  4.999.9-0.2.beta.20100401git.fc14
                                                                preupgrade-fedora
xz-libs.i686                             4.999.9-0.2.beta.20100401git.fc14
                                                                preupgrade-fedora
xz-lzma-compat.i686                      4.999.9-0.2.beta.20100401git.fc14
                                                                preupgrade-fedora
yum.noarch                               3.2.28-5.fc14          preupgrade-fedora
yum-metadata-parser.i686                 1.1.4-2.fc14           preupgrade-fedora
zip.i686                                 3.0-2.fc14             preupgrade-fedora
zlib.i686                                1.2.5-2.fc14           preupgrade-fedora
zsh.i686                                 4.3.10-5.fc14          preupgrade-fedora
Total download size: 0.0bytes
Download packages?
Is this ok [y/N]: y
Generating metadata for preupgrade repo
325/325 - binutils-2.20.51.0.7-5.fc14.i686.rpm
Saving Primary metadata
Saving file lists metadata
Saving other metadata
Generating sqlite DBs
Sqlite DBs complete
Preparing system to boot into installer
DEBUG /sbin/grubby --title="Upgrade to Fedora 14 (Laughlin)" --remove-kernel="/boot/upgrade/vmlinuz" --add-kernel="/boot/upgrade/vmlinuz" --initrd="/boot/upgrade/initrd.img" --args="preupgrade repo=hd::/var/cac
he/yum/preupgrade  ks=hd:UUID=e1de3e8f-91f6-456a-8b14-fae7ee076c0c:/upgrade/ks.cfg stage2=http://ftp.jaist.ac.jp/pub/Linux/Fedora/releases/14/Fedora/i386/os/images/install.img";
Probing devices to guess BIOS drives. This may take a long time.
All finished. The upgrade will begin when you reboot.

ダウンロードサイズが 0.0bytes なのに注目。再起動したら残りが始まりますよと書いてあります。

再起動

普通だったら言われるまま再起動でOK。VMとか10年前のハードで動かしてる場合は若干注意で、メモリが512MB以上じゃないと再起動後のタイミングで失敗します (256MBでNGでした) 。クリーンインストール時もメモリは512MB以上は必要そうです。これって最近のCentOSでも一緒ですね。

再起動後はNICのIPだけ固定を振るかかDHCPか聞かれますが、そのあとは自動的に残りのアップグレード処理を続けてくれます。

まとめ

以前は /boot/ 以下にダミーのファイルが必要でしたが、Fedora 14 はそこもちゃんと見てくれるように賢くなってくれていました。

RHELにpreupgradeって採用されないのかなーーー。超便利になってきてる。
CentOSでも使えたら、Debianの次くらいにアップグレード楽チンになりそうなもんですけどね。
Debianはメジャーバージョンアップグレード ( apt-get dist-upgrade ) 時もリブートも必要無いって、改めてよくできてるなあ。

Tags

Shinya Tsunematsu

a Software Engineer loves tech, curry, music, fitness.

Great! You've successfully subscribed.
Great! Next, complete checkout for full access.
Welcome back! You've successfully signed in.
Success! Your account is fully activated, you now have access to all content.