さくらのVPSで使用しているUbuntuは12.04LTSで、基本的にはLTSをサポート期限ギリギリまで使いたいが、
ファイルシステムがbtrfsなんで、btrfsのバージョン上げたいんで、14.04LTSがきたら採用したい。
だが、契約期間の関係で新規導入になるとコスト増になるんで、稼働中の鯖を
do-release-upgrade
でアップグレードすることにし、
14.04LTSの前に13.10まで上げておくことにした。
作業前に、APTのリポジトリがjp.archive.ubuntu.comだと遅いんで、
/etc/apt/sources.listをftp.jaist.ac.jpに変更した。
標準では、
/etc/update-manager/release-upgrades
が、
Prompt=lts
となっていてLTS以外へのアップグレードができない。
#Prompt=lts
Prompt=normal
とすればLTS以外のバージョンへアップグレードできる。
sudo do-release-upgrade
でディストリビュージョンのバージョンアップが1段階行えるので、13.10になるまで繰り返すことになるが、
このコマンドはsshから行ってはいけないので、シリアルコンソールから行う。
sshの方が使いやすいので、でも接続しておいて、do-release-upgradeだけシリアルコンソールで行うと楽だと思う。
アップグレード中は設定ファイルの更新を聞かれるが、設定ファイルを更新されると面倒なので全て更新しない。
[default=N]
となっているのでそのままEnter
3月か4月にもう1台サーバー契約するが、その時も一旦12.04LTS入れてからアップグレードになると思うが、
その時は空の状態でアップグレードしようと思うんで設定ファイルも更新だな。
1段階アップグレード毎に再起動を行ったが、
12.04 → 12.10 のアップグレードでは、/etc/apache2/apache2.conf内のInclude httpd.confの箇所で、
/etc/apache2/httpd.confが存在しないと怒られて起動しなかったんで該当部分をコメントアウトした。
12.10 → 13.04 のアップグレードでは、apache自体は起動したがhttpsのドメインに接続できなくなった。
WebminのSSLのオプションで「SSLを有効にしますか?」が「デフォルト」になっていたが「はい」にしたら利用できた。
どこが変わったんだかわからんw
13.04 → 13.10 のアップグレードがかなりの鬼門。apacheのバージョンが2.2から2.4になって、元の設定ファイルが全然通用しない。
認証系の設定が変更になっているのは知っていたが、
LockFile付近で問題があって、いじったが全然無理ぽかったんで、元の設定ファイル群をバックアップして、
apt-get --purge remove
で設定ファイルごとapache削除、
apt-get install
で再インストールして起動可能にした。
13.10へのアップグレードの場合は設定ファイル上書きしてしまったほうが良さそう。
13.10へのアップグレードではapacheの認証系の設定が変更になっているので、
Order allow,deny
allow from all
となっている部分は、
Require all granted
とする必要がある。
IP単位で許可している場合は、
Require ip 127.0.0.1
の様な感じだが、
.htaccessで設定している箇所も変更する必要があり、古い設定でも機能しないだけでエラーにならないからたちが悪い。
特に、DocumentRootを全許可した上で.htaccessで特定箇所のみ制限している場合、エラーにはならないので見落としがあると危ない・・・
あと、AliasでDocumentRoot外の場所に転送している箇所でOptionsをvirtualhostレベルで設定している箇所があったが、
これはDirectory単位で設定しないとダメみたい。
403になってsuexec周りでトラブってるのかと思ったが、これもapcheの起動はエラーにならずに起動しちゃうから、
どこが悪いのかわからずえらいハマった・・・
13.04 → 13.10 のアップグレードは5時間くらいハマった・・・
12.04 → 13.10 までのアップグレードで、apache以外の設定ファイルは変更不要だったが、
apacheの設定ファイルは毎回、要変更だった。
apacheマジ糞だな。
あと、Muninのデザインが変わってて、ワイドディスプレイ前提なんだと思うが、SXGAのディスプレイではみ出す。
勘弁して欲しい・・・