Linux: Squeeze にアップグレードしてみた

Debian 6.0 Squeeze released」とあるとおり、新しいバージョンの Debian GNU/Linux がリリースされた。

と言うわけで、「Debian 5.0 (lenny) からのアップグレード」にしたがって、さくらの VPS で動作している lenny を squeeze にアップデートしてみた。

手順通り作業を行ったところ、何の問題もなくアップグレードが完了した。(ちゃんとシリアルコンソールからもアクセスできた)

とは言え、何も書かないのもアレなので、行った手順を以下に記す。

  1. まずはファイルをバックアップ。
  2. 該当サーバは、以前 Web サーバとして使用していた際の残骸があったので、不要なパッケージを削除。
  3. hold されているパッケージがないか確認。
  4. /etc/apt/sources.list を書き換え。
  5. 既存パッケージを削除されないようにして、パッケージをアップグレードする。
    # apt-get update; apt-get upgrade
  6. カーネルをインストールする。
    # apt-get install linux-image-2.6-amd64
  7. udev をインストールする。
    # apt-get install udev
  8. 念のため、update-grub を実行する。
    # update-grub
  9. 再起動する。
  10. パッケージをアップグレードする。
    # apt-get dist-upgrade
  11. 再起動する。
  12. 設定などを確認する。必要であれば、一時的に削除していたパッケージをインストールして設定する。
  13. 一旦 VPS をシャットダウンし、コントロールパネルから起動する。(おまじない)
  14. 完了

影響があった、もしくはありそうなところでは、以下だろうか。

  • IPv6 サポートがモジュールではなくカーネルとなった。(ので /etc/moduels に ipv6 を書く必要がない。)
  • システムのシェルが dash になった。(シェルスクリプトで #!/bin/sh とか書いているものがあったら、動かないものが出てくるのかも)
  • sudo -s で root 権限を取った際の挙動が lenny の時と違う。(具体的には root 権限昇格後のホームディレクトリが root になる。(今までは昇格前のユーザのディレクトリだったから、こちらの方が正しい挙動のような気もする))
  • サーバ上からのネットワークアクセスが遅い気がする。(名前解決に時間がかかっているようにも思うので、もしかすると IPv6 を無効にしたらなおるのかもしれない。(追記: 予想通り「# echo 1 > /proc/sys/net/ipv6/conf/eth0/disable_ipv6」して IPv6 を無効にした上で 6to4 のインタフェースを停止したら速くなった。「D: Software/Network - Debian GNU/Linux スレッドテンプレ」を参考とした。))

時間があったら、クリーンインストールからやってみたい。

追記 : アップグレードしていた Squeeze で起動中の VPS を Squeeze でクリーンインストールした。

一旦、サーバ内部を整理したかったので、Squeeze をクリーンインストールした。

ほとんど、「さくらのVPSを Debian GNU/Linux で使う」で公開されている方法と同じで OK だった。

  1. ファイルをバックアップ。

  2. grub をテキストモードで表示するようにする。

    /etc/default/grub

    GRUB_TERMINAL=console

  3. netboot 用インストーラを /boot/newinstall 以下にダウンロード

    # mkdir /boot/newinstall
    # cd /boot/newinstall
    # wget http://ftp.jaist.ac.jp/pub/Linux/Debian/dists/Debian6.0/main/installer-amd64/current/images/netboot/debian-installer/amd64/initrd.gz
    # wget http://ftp.jaist.ac.jp/pub/Linux/Debian/dists/Debian6.0/main/installer-amd64/current/images/netboot/debian-installer/amd64/linux

  4. /boot/grub/menu.lst を編集し以下のエントリを追加

    title Debian GNU/Linux Installer
    root (hd0,0)
    kernel /newinstall/linux ro root=LABEL=/ console=tty0 console=ttyS0,115200n8r
    initrd /newinstall/initrd.gz

  5. VPS をリブートして、リモートコンソールより GRUB が表示されている間に「Debian GNU/Linux Installer」を選択してインストールを開始する。

  6. インストール後

    sshd など必須パッケージをインストールする。

    バックアップしておいたファイルを戻してくる。
    ※ sshd のホストキーを戻してこないと、ssh 接続の際に中間者攻撃の警告が出る。ssh-keygen -R すればよいが、面倒なので、レストアしておいた方が良い。

    Ethernet インタフェースのパラメータを変更する。
    # apt-get install ethtool
    /etc/network/interfaces での eth0 の項目で以下を追加

    post-up /sbin/ethtool -K eth0 tso off

    ※「[001388]さくらのVPSで「Debian」を利用していますが、回線速度が遅くアクセスに時間がかかります。 | FAQ Search - さくらインターネット」参考
    ※ ethtool の場所が Lenny と Squeeze では変わっているので注意。