Ubuntu LTS 12.04(precise)から14.04(trusty)へバージョンアップ

ubuntuLinux

さくらインターネットのVPSをUbuntu 12.04(precise)から14.04(Trusty)へバージョンアップしました。
LTS 12.04(precise)のサポート期限が2017年の4月までですが、ほかの利用しているもろもろのパッケージもバージョンがあがっていくので、なるべく早めに上げた方が良いと思います。LTS 14.04(trusty)は2019年4月までのサポートです。
バージョンアップ作業をおこなうにあたって、もしもの時のためにsshdを別ポートで立ち上げてくるなんて、気が利いているなぁを感心しました。
その一覧の作業です。

スポンサーリンク

現在稼働しているバージョンを確認

$ lsb_release -a

バージョンアップの実施

バージョンアップによって、様々なサービスが再起動されるのでサーバが提供しているサービスが止まっても良い時間に作業しましょう。作業自体はパッケージ数にもよりますが1時間程度で終了します。

$ sudo do-release-upgrade

上記のコマンドだけで、バージョンアップの作業は終わりますが、いくつかの質問に答えていく必要があります。

バージョンアップ作業

このサーバはVPSなのでsshで接続して作業をしています。ssh関連のパッケージがバージョンアップされた際に、再起動され何らかエラーによってsshdが起動できないことが想定されます。このような状況でになると復旧するのはとてもむずかしくなります。

This session appears to be running under ssh. It is not recommended
to perform a upgrade over ssh currently because in case of failure it
is harder to recover.
If you continue, an additional ssh daemon will be started at port
'1022'.

そこで、あらかじめ別ポート1sshdを立ち上げておいて、問題があったらそちらのsshdプロセスからログインして作業をできるようにしておいてくれます。もちろん、実施することを推奨します。

To make recovery in case of failure easier, an additional sshd will
be started on port '1022'. If anything goes wrong with the running
ssh you can still connect to the additional one.
If you run a firewall, you may need to temporarily open this port. As
this is potentially dangerous it's not done automatically. You can
open the port with e.g.:
'iptables -I INPUT -p tcp --dport 1022 -j ACCEPT'

この時点で1022番ポートでsshdが立ち上がっているのでログインできるはずです。

$ ssh user@domain.com -p 1022

のような感じでpオプションをつけてあげればサーバにログインできるはずです。FireWallやiptables2を利用している場合は上記の通り、1022ポートのINPUTを許可する設定を現在ログインしているシェルから実施しましょう。
この時点で一度1022番ポートからsshでアクセスできるか確認しておきましょう。私はログインしてターミナルを立ち上げたまま、アップグレードの作業を続けました。

パッケージのアップグレードを実施

Ubuntu 14.04になるためのメインとなる作業です。パッケージを実際にアップグレードしていきます。

Do you want to start the upgrade?
10 packages are going to be removed. 271 new packages are going to be
installed. 790 packages are going to be upgraded.
You have to download a total of 1,149 M. This download will take
about 6 minutes with your connection.
Installing the upgrade can take several hours. Once the download has
finished, the process cannot be canceled.

私の場合は1GB以上のファイルがダウンロードされました。回線が余裕のある時間帯が良いかもしれません。
パッケージのアップグレード作業は、ほとんど自動でおこなわれていきます。

パッケージアップグレードのポイント

実際にパッケージをアップグレードされていくと、いくつか質問に答えなければいけないパッケージがあります。
特に「パッケージに付属している設定ファイルを上書きするか?」という内容をきかれることが多いと思います。きかれるパッケージのほとんどが実際に利用しているソフトウェアだと思います。上書きしてしまうと自分が設定を書いた内容のファイルが上書きされてしますことになるので、基本的には上書きしたいようにすることをおすすめします。
アップグレード作業終了後にソフトウェアが正常に起動しない場合、この設定ファイルの設定内容がバージョンアップによってサポートされなくなったという場合がほとんどです。パッケージのバージョンアップが終了してからおちついて、ログを見ながら設定ファイルの見直しをおこなってください。

Ubuntu 14.04にバージョンアップ完了

すべてのパッケージのバージョンが上がってしまえば、OSのバージョンアップ作業は終了です。幸い、私はOSの再起動などはありませんでした。

lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 14.04.1 LTS
Release:        14.04
Codename:       trusty

  1. この場合は1022ポート 
  2. Ubuntuでよく利用されるufwの中身はiptablesです 
タイトルとURLをコピーしました