Fedora17

こちらのサイトを参考に、yumコマンドを使ってFedoraを15から17にアップグレードしました。

これまでのやり方とだいたい同じですね。


まずパッケージ情報をアップデートします。

# rpm -Uvh http://ftp.jaist.ac.jp/pub/Linux/Fedora/releases/17/Fedora/x86_64/os/Packages/f/fedora-release-17-1.noarch.rpm

次に、各パッケージをアップデートします。

# yum clean all
# yum -y update

そうすると、次のようなエラーが出ました。

エラー: パッケージ: ruby-rdoc-1.8.7.358-1.fc15.noarch (@updates/15)
             要求: ruby-irb = 1.8.7.358-1.fc15
            削除: ruby-irb-1.8.7.358-1.fc15.noarch (@updates/15)
                ruby-irb = 1.8.7.358-1.fc15
            次のものにより更新された: : ruby-irb-1.9.3.327-19.fc17.noarch (updates)
                ruby-irb = 1.9.3.327-19.fc17
            利用可能: ruby-irb-1.9.3.194-10.1.fc17.noarch (fedora)
                ruby-irb = 1.9.3.194-10.1.fc17
エラー: パッケージ: gnome-scan-0.6.2-7.fc15.i686 (@fedora/15)
             要求: libgegl-0.1.so.0
            削除: gegl-0.1.6-2.fc15.i686 (@fedora/15)
                libgegl-0.1.so.0
            次のものにより更新された: : gegl-0.2.0-1.fc17.i686 (fedora)
                見つかりません
エラー: パッケージ: gnome-launch-box-0.4-20.fc15.i686 (@fedora/15)
             要求: libedataserver-1.2.so.14
            削除: evolution-data-server-3.0.3.1-1.fc15.i686 (@updates/15)
                libedataserver-1.2.so.14
            次のものにより更新された: : evolution-data-server-3.4.4-4.fc17.i686 (updates)
                見つかりません
エラー: パッケージ: gnome-launch-box-0.4-20.fc15.i686 (@fedora/15)
             要求: libgnome-menu.so.2
            削除: gnome-menus-3.0.1-1.fc15.i686 (@fedora/15)
                libgnome-menu.so.2
            次のものにより更新された: : gnome-menus-3.4.2-1.fc17.i686 (updates)
                見つかりません
エラー: パッケージ: compiz-0.9.5.92.1-0.1.gite676f1b12eb8db3a76978eed5bfc7c2cf9a0b6ce.fc15.i686 (@updates/15)
             要求: libboost_serialization-mt.so.1.46.0
            削除: boost-serialization-1.46.0-3.fc15.i686 (@updates/15)
                libboost_serialization-mt.so.1.46.0
            次のものにより更新された: : boost-serialization-1.48.0-13.fc17.i686 (updates)
                見つかりません
エラー: パッケージ: gnome-launch-box-0.4-20.fc15.i686 (@fedora/15)
             要求: libebook-1.2.so.10
            削除: evolution-data-server-3.0.3.1-1.fc15.i686 (@updates/15)
                libebook-1.2.so.10
            次のものにより更新された: : evolution-data-server-3.4.4-4.fc17.i686 (updates)
                見つかりません
エラー: パッケージ: gnome-scan-libs-0.6.2-7.fc15.i686 (@fedora/15)
             要求: libgegl-0.1.so.0
            削除: gegl-0.1.6-2.fc15.i686 (@fedora/15)
                libgegl-0.1.so.0
            次のものにより更新された: : gegl-0.2.0-1.fc17.i686 (fedora)
                見つかりません
エラー: パッケージ: gnome-launch-box-0.4-20.fc15.i686 (@fedora/15)
             要求: libcamel-1.2.so.23
            削除: evolution-data-server-3.0.3.1-1.fc15.i686 (@updates/15)
                libcamel-1.2.so.23
            次のものにより更新された: : evolution-data-server-3.4.4-4.fc17.i686 (updates)
                見つかりません
エラー: パッケージ: ruby-pango-1.0.3-1.fc15.i686 (@updates/15)
             要求: rubygem-pango = 1.0.3-1.fc15
            削除: rubygem-pango-1.0.3-1.fc15.i686 (@updates/15)
                rubygem-pango = 1.0.3-1.fc15
            次のものにより更新された: : rubygem-pango-1.1.6-1.fc17.i686 (updates)
                rubygem-pango = 1.1.6-1.fc17
            利用可能: rubygem-pango-1.1.3-1.fc17.i686 (fedora)
                rubygem-pango = 1.1.3-1.fc17
エラー: パッケージ: libvte-java-0.12.3-4.fc15.i686 (@fedora/15)
             要求: libgcj.so.12
            削除: libgcj-4.6.3-2.fc15.i686 (@updates/15)
                libgcj.so.12
            次のものにより更新された: : libgcj-4.7.2-2.fc17.i686 (updates)
                見つかりません
エラー: パッケージ: libgconf-java-2.12.6-4.fc15.i686 (@fedora/15)
             要求: libgcj.so.12
            削除: libgcj-4.6.3-2.fc15.i686 (@updates/15)
                libgcj.so.12
            次のものにより更新された: : libgcj-4.7.2-2.fc17.i686 (updates)
                見つかりません
エラー: パッケージ: ruby-pango-1.0.3-1.fc15.i686 (@updates/15)
             要求: ruby(cairo)
            削除: ruby-cairo-1.10.2-1.fc15.i686 (@updates/15)
                ruby(cairo) = 1.10.2-1.fc15
            次のものにより不要にされた: : rubygem-cairo-1.12.3-1.fc17.i686 (updates)
                見つかりません
エラー: パッケージ: ruby-gtk2-1.0.3-2.fc15.i686 (@updates/15)
             要求: rubygem-gtk2 = 1.0.3-2.fc15
            削除: rubygem-gtk2-1.0.3-2.fc15.i686 (@updates/15)
                rubygem-gtk2 = 1.0.3-2.fc15
            次のものにより更新された: : rubygem-gtk2-1.1.6-1.fc17.i686 (updates)
                rubygem-gtk2 = 1.1.6-1.fc17
            利用可能: rubygem-gtk2-1.1.3-1.fc17.i686 (fedora)
                rubygem-gtk2 = 1.1.3-1.fc17
エラー: パッケージ: ruby-gettext-package-2.1.0-3.fc15.noarch (@fedora/15)
             要求: rubygem-gettext = 2.1.0-3.fc15
            削除: rubygem-gettext-2.1.0-3.fc15.noarch (@fedora/15)
                rubygem-gettext = 2.1.0-3.fc15
            次のものにより更新された: : rubygem-gettext-2.2.1-1.fc17.noarch (updates)
                rubygem-gettext = 2.2.1-1.fc17
            利用可能: rubygem-gettext-2.2.0-2.fc17.noarch (fedora)
                rubygem-gettext = 2.2.0-2.fc17
エラー: パッケージ: glib-java-0.4.2-5.fc15.i686 (@fedora/15)
             要求: libgcj.so.12
            削除: libgcj-4.6.3-2.fc15.i686 (@updates/15)
                libgcj.so.12
            次のものにより更新された: : libgcj-4.7.2-2.fc17.i686 (updates)
                見つかりません
エラー: パッケージ: libglade-java-2.12.8-15.fc15.i686 (@fedora/15)
             要求: libgcj.so.12
            削除: libgcj-4.6.3-2.fc15.i686 (@updates/15)
                libgcj.so.12
            次のものにより更新された: : libgcj-4.7.2-2.fc17.i686 (updates)
                見つかりません
エラー: パッケージ: compiz-plugins-main-0.9.5.92-1.fc15.i686 (@updates/15)
             要求: libboost_serialization-mt.so.1.46.0
            削除: boost-serialization-1.46.0-3.fc15.i686 (@updates/15)
                libboost_serialization-mt.so.1.46.0
            次のものにより更新された: : boost-serialization-1.48.0-13.fc17.i686 (updates)
                見つかりません
エラー: パッケージ: ruby-locale-2.0.5-2.fc15.1.noarch (@fedora/15)
             要求: rubygem-locale = 2.0.5-2.fc15.1
            削除: rubygem-locale-2.0.5-2.fc15.1.noarch (@fedora/15)
                rubygem-locale = 2.0.5-2.fc15.1
            次のものにより更新された: : rubygem-locale-2.0.5-4.fc17.noarch (fedora)
                rubygem-locale = 2.0.5-4.fc17
エラー: パッケージ: cairo-java-1.0.8-4.fc15.i686 (@fedora/15)
             要求: libgcj.so.12
            削除: libgcj-4.6.3-2.fc15.i686 (@updates/15)
                libgcj.so.12
            次のものにより更新された: : libgcj-4.7.2-2.fc17.i686 (updates)
                見つかりません
エラー: パッケージ: libgtk-java-2.10.2-5.fc15.i686 (@fedora/15)
             要求: libgcj.so.12
            削除: libgcj-4.6.3-2.fc15.i686 (@updates/15)
                libgcj.so.12
            次のものにより更新された: : libgcj-4.7.2-2.fc17.i686 (updates)
                見つかりません
エラー: パッケージ: libgnome-java-2.12.7-6.fc15.i686 (@fedora/15)
             要求: libgcj.so.12
            削除: libgcj-4.6.3-2.fc15.i686 (@updates/15)
                libgcj.so.12
            次のものにより更新された: : libgcj-4.7.2-2.fc17.i686 (updates)
                見つかりません
 問題を回避するために --skip-broken を用いることができません

エラーの出たパッケージを削除します。

# yum -y erase cairo-java compiz compiz-plugins-main glib-java gnome-launch-box gnome-scangnome-launch-box gnome-scan-libs libgconf-java libglade-java libgnome-java libgtk-java libvte-java ruby-gettext-package ruby-gtk2 ruby-locale ruby-pango ruby-rdoc

もう一度アップデートします。

# yum -y update

そしたら僕のところでもエラーが出ました。

エラー: RPM の更新のためのハンドルを更新する必要があります
rpmlib(X-CheckUnifiedSystemdir) is needed by setup-2.8.48-1.fc17.noarch
rpmlib(X-CheckUnifiedSystemdir) is needed by filesystem-3-2.fc17.i686
更新には RPM が必要です
これらを試行できます: rpm -Va --nofiles --nodigest
Your transaction was saved, rerun it with: yum load-transaction /tmp/yum_save_tx-2013-01-11-00-56FJieCz.yumtx

ここから先がうまくいかなかったので、こちらのサイトも参考にしています。

まず、次のコマンドでエラーが出てしまう。

# dracut -H --force --add convertfs
E: Dracut module "convertfs" cannot be found.

なので、dracutをアップデートしてみた。

# wget http://kojipkgs.fedoraproject.org//packages/dracut/013/22.fc16/noarch/dracut-013-22.fc16.noarch.rpm
# rpm -Uvh dracut-013-22.fc16.noarch.rpm

もう一度さっきのコマンドを実行。

# dracut -H --force --add convertfs
E: WARNING: Deprecated config file /etc/modprobe.conf, all config files belong into /etc/modprobe.d/.
E: WARNING: Deprecated config file /etc/modprobe.conf, all config files belong into /etc/modprobe.d/.
E: WARNING: Deprecated config file /etc/modprobe.conf, all config files belong into /etc/modprobe.d/.
E: WARNING: Deprecated config file /etc/modprobe.conf, all config files belong into /etc/modprobe.d/.
E: WARNING: Deprecated config file /etc/modprobe.conf, all config files belong into /etc/modprobe.d/.
E: WARNING: Deprecated config file /etc/modprobe.conf, all config files belong into /etc/modprobe.d/.
E: WARNING: Deprecated config file /etc/modprobe.conf, all config files belong into /etc/modprobe.d/.
E: WARNING: Deprecated config file /etc/modprobe.conf, all config files belong into /etc/modprobe.d/.
E: WARNING: Deprecated config file /etc/modprobe.conf, all config files belong into /etc/modprobe.d/.
E: WARNING: Deprecated config file /etc/modprobe.conf, all config files belong into /etc/modprobe.d/.
E: WARNING: Deprecated config file /etc/modprobe.conf, all config files belong into /etc/modprobe.d/.
E: WARNING: Deprecated config file /etc/modprobe.conf, all config files belong into /etc/modprobe.d/.
E: WARNING: Deprecated config file /etc/modprobe.conf, all config files belong into /etc/modprobe.d/.
E: WARNING: Deprecated config file /etc/modprobe.conf, all config files belong into /etc/modprobe.d/.
E: WARNING: Deprecated config file /etc/modprobe.conf, all config files belong into /etc/modprobe.d/.
E: WARNING: Deprecated config file /etc/modprobe.conf, all config files belong into /etc/modprobe.d/.
E: WARNING: Deprecated config file /etc/modprobe.conf, all config files belong into /etc/modprobe.d/.
E: WARNING: Deprecated config file /etc/modprobe.conf, all config files belong into /etc/modprobe.d/.
E: WARNING: Deprecated config file /etc/modprobe.conf, all config files belong into /etc/modprobe.d/.
E: WARNING: Deprecated config file /etc/modprobe.conf, all config files belong into /etc/modprobe.d/.
E: WARNING: Deprecated config file /etc/modprobe.conf, all config files belong into /etc/modprobe.d/.
E: WARNING: Deprecated config file /etc/modprobe.conf, all config files belong into /etc/modprobe.d/.
E: WARNING: Deprecated config file /etc/modprobe.conf, all config files belong into /etc/modprobe.d/.
E: WARNING: Deprecated config file /etc/modprobe.conf, all config files belong into /etc/modprobe.d/.
E: WARNING: Deprecated config file /etc/modprobe.conf, all config files belong into /etc/modprobe.d/.
E: WARNING: Deprecated config file /etc/modprobe.conf, all config files belong into /etc/modprobe.d/.
E: WARNING: Deprecated config file /etc/modprobe.conf, all config files belong into /etc/modprobe.d/.
E: WARNING: Deprecated config file /etc/modprobe.conf, all config files belong into /etc/modprobe.d/.
E: WARNING: Deprecated config file /etc/modprobe.conf, all config files belong into /etc/modprobe.d/.
E: WARNING: Deprecated config file /etc/modprobe.conf, all config files belong into /etc/modprobe.d/.

WARNINGはたくさんでたけど、ERRORは出なくなった。

続いて、grubを書き換える。

# vim /etc/grub.conf

もともとあるエントリからコピペで title から始まる新しいエントリを作って、次のように書き換えた。
赤字が修正した箇所。

kernel /vmlinuz-2.6.43.8-1.fc15.i686 ro root=LABEL=/1 hpet=disable rhgb quiet LANG=ja_JP.UTF-8 KEYTABLE=jp106 acpi_enforce_resources=lax

上をもとに、下を作成。

title Fedora (2.6.43.8-1.fc15.i686 update)
    root (hd0,0)
    kernel /vmlinuz-2.6.43.8-1.fc15.i686 rw root=LABEL=/1 hpet=disable LANG=ja_JP.UTF-8 KEYTABLE=jp106 acpi_enforce_resources=lax rd.info rd.convertfs enforcing=0
    initrd /initramfs-2.6.43.8-1.fc15.i686.img

今回修正した以外の部分の記述については、ハードウェア構成とかによっても異なってくるので、真似しない方がいいと思う。

ここまでできたら再起動。

# dmesg | grep dracut [~]
[ 1.408423] dracut: dracut-013-22.fc16
[ 1.898101] dracut: Starting plymouth daemon
[ 4.007531] dracut: Checking ext4: /dev/disk/by-label/\x2f1
[ 4.011478] dracut: issuing e2fsck -a /dev/disk/by-label/\x2f1
[ 4.091765] dracut: /1: clean, 321383/30244864 files, 6476166/120967441 blocks
[ 4.096405] dracut: Remounting /dev/disk/by-label/\x2f1 with -o rw
[ 4.301854] dracut: Mounted root filesystem /dev/sda3
[ 4.354267] dracut: Converting /var/run to symlink
[ 4.374912] dracut: Converting /var/lock to symlink
[ 4.425892] dracut: Make a copy of `/sysroot/usr/bin'.
[ 5.202164] dracut: Merge the copy with `/sysroot/bin'.
[ 5.522784] dracut: Clean up duplicates in `/sysroot/usr/bin'.
[ 5.557212] dracut: Make a copy of `/sysroot/usr/sbin'.
[ 5.676696] dracut: Merge the copy with `/sysroot/sbin'.
[ 5.720975] dracut: Clean up duplicates in `/sysroot/usr/sbin'.
[ 5.739939] dracut: Make a copy of `/sysroot/usr/lib'.
[ 23.185149] dracut: Merge the copy with `/sysroot/lib'.
[ 32.329942] dracut: Clean up duplicates in `/sysroot/usr/lib'.
[ 33.256691] dracut: Switch to new `/sysroot/usr/bin'.
[ 33.270118] dracut: Switch to new `/sysroot/usr/sbin'.
[ 33.283459] dracut: Switch to new `/sysroot/usr/lib'.
[ 33.297140] dracut: Create `/sysroot/bin' symlink.
[ 33.308907] dracut: Create `/sysroot/sbin' symlink.
[ 33.320636] dracut: Create `/sysroot/lib' symlink.
[ 33.332549] dracut: Clean up backup files.
[ 35.299942] dracut: Run ldconfig.
[ 50.475439] dracut: Done.
[ 50.605511] dracut: Switching root

特にエラーは出てないっぽい。

# ls -al /
dr-xr-xr-x. 26 root root 4096 1月 11 01:22 ./
dr-xr-xr-x. 26 root root 4096 1月 11 01:22 ../
lrwxrwxrwx 1 root root 7 1月 11 01:22 bin -> usr/bin/
lrwxrwxrwx 1 root root 7 1月 11 01:22 lib -> usr/lib/
lrwxrwxrwx 1 root root 8 1月 11 01:22 sbin -> usr/sbin/

/ から /usr への移動もできていた。

改めてアップデートを行う。

# yum -y update

以上で完了です。

コメントを残す