ちょうどServersMan@VPSのセットアップが一段落したころに、Debianの新バージョンsqueezeがリリースされたので、ServersMan@VPSのDebianをlenny(5.0)からsqueeze(6.0)いバージョンアップすることにしました。
参考資料
とりあえず、オフィシャルの文章は確認しときましょう。
準備
リリースノートのドキュメントにしたがって、サポートされていないパッケージの削除などを行います。
sudo apt-get purge splashy sudo dpkg --audit sudo dpkg --get-selections "*" > ~/curr-pkgs.txt
curr-pkgs.txtの内容をチェックしてholdとなっているパッケージがないことを確認。
aptの設定を変更
/etc/apt/source.listを変更します。現在の設定はすべて#でコメントアウトして、下記の行を追加します。
deb http://ftp.jp.debian.org/debian squeeze main contrib non-free deb http://ftp.jp.debian.org/debian squeeze-updates main contrib non-free deb http://security.debian.org/ squeeze/updates main contrib non-free
更新
いよいよ更新。下の2つのコマンドで最小限の更新を実行。
ちなみにダウンロードはかなり早いです。さすがDTI(freebit)のネットワークに直結しているだけあります。
sudo apt-get update sudo apt-get upgrade
更新しているといくつか問い合わせが出てくることがあります。
正しいかわかりませんが、私の例を書いておきます。
- wide-dhcpv6-client
- 「venet0:0 venet0:1」と入力
- libpam0g
- そのままで了解
- ajaxterm
- そのままリターン。
- ajaxtermが有効になるので後で削除をする。
最小限の更新が完了したら、まとめてシステム全体を更新
sudo apt-get dist-upgrade
またいろいろ問い合わせが出ます。私の回答は下記のとおりです。
- dash
- そのままでリターン
- LDAPサーバ
- そのまま了解。あとで削除するかも。
- libnss-ldap
- そのまま了解。あとで削除するかも。
- libc6
- そのままでリターン。sshをリスタートするけど問題ありません。
- /etc/cron.daily/apt
- Y入力を押してメンテナのバージョンをインストール
- sysv-rc
- vzquotaでエラーが指摘されるが、仕方ないのでそのままリターン
- /etc/apache2/envvars
- そのままリターン
- /etc/apache2/sites-available/default
- そのままリターン
- /etc/apache2/ports.conf
- そのままリターン
- /etc/apache2/apache2.conf
- そのままリターン
ここまで完了したら、ダウンロードしたパッケージを削除しておきます。
sudo apt-get clean
調整
いくつか/etc内の設定ファイルが無効な状態になっているので、調整します。
Apache
更新したパッケージについてきた設定ファイルが/etc/apache2の下に、envvars.dpkg-dist, apache2.conf.dpkg-dist, ports.conf.dpkg-distという名前でコピーされています。
それぞれenvvars, apache2.conf, ports.confと比較してします。
設定内容が変わらなければ*.dpkg-distを上書きしてしまってよいとおもいます。
ajaxterm
squeezeに更新した弾みで復活しています。また無効にします。
sudo rm /etc/default/ajaxterm.dpkg-dist sudo /etc/init.d/ajaxterm stop sudo update-rc.d -f ajaxterm remove
cron
設定ファイルの名前を変えておきます。
cd /etc/cron.daily sudo mv man-db.dpkg-dist man-db sudo mv standard.dpkg-dist standard cd /etc/cron.weekly sudo mv man-db.dpkg-dist man-db
リブート
リブートコマンドを実行して、システムを再起動させます。
sudo reboot
当然SSHが切断されるので、2,3分まって再接続します。
不要なパッケージの削除
まずはaptコマンドで自動削除します。
sudo apt-get autoremove
次に、lenny用のパッケージを見つけます。
dpkg -l | grep lenny
これで表示されたパッケージのうち、先頭が”rc”で始まるものはごみなので、削除してしまってOKです。
sudo apt-get purge libbind9-50 libdns55 libisc52
先頭が”ii”で始まっているものもたぶん削除してしまってOKです。
sudo apt-get purge libdns58 libisc50 libltdl3 liblwres50 libmysqlclient15off
不要パッケージを発見するコマンドdeborphanをインストールして、deborphanを使って不要なパッケージを削除します。ちなみに2回ほど何度か実行したほうがよいです。
sudo aptitude install deborphan sudo apt-get purge `deborphan ` sudo apt-get --purge autoremove sudo apt-get purge `deborphan `
まとめ
これにてServersMan@VPSのDebianをsqueezeに更新する作業は完了!
最新のパッケージが使えるので便利です。
次回はApacheの設定を行います。
コメント