Ubuntu 16.04 LTSにアップグレードする方法

前書き

Ubuntuオペレーティングシステムの次の長期サポートリリースであるバージョン16.04(Xenial Xerus)は、2016年4月21日にリリースされる予定です。

この記事の執筆時点ではまだリリースされていませんが、15.10システムを16.04の開発バージョンにアップグレードすることは既に可能です。 これは、公式リリース日より前にアップグレードプロセスと16.04自体の機能の両方をテストするのに役立つ場合があります。

このガイドでは、Ubuntu 15.10を実行しているDigitalOcean Dropletsを含む(ただしこれに限定されない)システムのプロセスについて説明します。

前提条件

このガイドでは、管理タスクの `+ sudo +`権限を持つ非rootユーザーで構成されたUbuntu 15.10を実行しているシステムがあることを前提としています。

潜在的な落とし穴

多くのシステムは問題なくインプレースでアップグレードできますが、ディストリビューションを最初からインストールし、途中で慎重にテストしてサービスを構成し、アプリケーションまたはユーザーデータを個別に移行することで、メジャーな新しいリリースに移行する方が安全で予測しやすいことがよくありますステップ。

ステージング環境でのアップグレードに対して、展開されたすべてのソフトウェアとサービスを最初にテストすることなく、運用システムをアップグレードしないでください。 ライブラリ、言語、およびシステムサービスが大幅に変更されている可能性があることに注意してください。 Ubuntu 16.04では、以前のLTSリリース以降の重要な変更には、Upstartの代わりにsystemd initシステムへの移行、Python 3サポートの強調、PHP 5の代わりにPHP 7が含まれます。

アップグレードする前に、https://wiki.ubuntu.com/XenialXerus/ReleaseNotes [Xenial Xerusリリースノート]を読むことを検討してください。

ステップ1 –システムのバックアップ

システムでメジャーアップグレードを試みる前に、アップグレードが失敗した場合にデータが失われないことを確認する必要があります。 これを達成する最良の方法は、ファイルシステム全体のバックアップを作成することです。 それに失敗したら、ユーザーのホームディレクトリ、カスタム構成ファイル、およびリレーショナルデータベースなどのサービスによって保存されたデータのコピーがあることを確認してください。

DigitalOcean Dropletでの最も簡単なアプローチは、システムの電源を切ってスナップショットを取ることです(電源を切ると、ファイルシステムの整合性が確保されます)。 詳細については、https://www.digitalocean.com/community/tutorials/how-to-use-digitalocean-snapshots-to-automatically-backup-your-droplets [DigitalOceanスナップショットを使用してドロップレットを自動的にバックアップする方法]を参照してください。スナップショットプロセス。 更新が成功したことを確認したら、スナップショットを削除して、課金されないようにすることができます。

ほとんどのUbuntuシステムで動作するバックアップ方法については、https://www.digitalocean.com/community/tutorials/how-to-choose-an-effective-backup-strategy-for-your-vps [選択方法VPSの効果的なバックアップ戦略]。

ステップ2 –現在インストールされているパッケージをアップグレードする

リリースアップグレードを開始する前に、_現在のリリース_のすべてのパッケージの最新バージョンをインストールするのが最も安全です。 パッケージリストを更新することから始めます。

sudo apt-get update

次に、インストールされたパッケージを最新の利用可能なバージョンにアップグレードします。

sudo apt-get upgrade

アップグレードのリストが表示され、続行するように求められます。 はいの場合は* y と答え、 Enter *を押します。

このプロセスには時間がかかる場合があります。 終了したら、 `+ dist-upgrade`コマンドを使用します。これは、依存関係の変更、必要に応じて新しいパッケージの追加または削除を含むアップグレードを実行します。 これは、 `+ apt-get upgrade +`によって抑制された可能性のある一連のアップグレードを処理します。

sudo apt-get dist-upgrade

繰り返しますが、続行するように求められたら* y *と応答し、アップグレードが完了するのを待ちます。

Ubuntu 15.10の最新のインストールができたので、 `+ do-release-upgrade +`を使用して16.04リリースにアップグレードできます。

ステップ3 – Ubuntuのdo-release-upgradeツールを使用してアップグレードを実行する

最初に、 `+ update-manager-core +`パッケージがインストールされていることを確認してください:

sudo apt-get install update-manager-core

従来、Debianリリースは、パッケージリポジトリを指定するAptの `+ / etc / apt / sources.list `を変更し、アップグレードを実行するために ` apt-get dist-upgrade `を使用することでアップグレードできました。 Ubuntuは依然としてDebianから派生したディストリビューションであるため、このプロセスは引き続き機能します。 ただし、代わりに、Ubuntuプロジェクトが提供するツールである「 do-release-upgrade 」を使用します。このツールは、新しいリリースのチェック、「 sources.list +」の更新、およびその他のさまざまなタスクを処理します。 これは、リモート接続を介して実行する必要があるサーバーアップグレードの公式に推奨されるアップグレードパスです。

オプションなしで `+ do-release-upgrade`を実行することから始めます:

sudo do-release-upgrade

Ubuntu 16.04がまだリリースされていない場合は、次が表示されます。

出力例

Checking for a new Ubuntu release
No new release found

公式リリースの前に16.04にアップグレードするには、_development_リリースを使用するために `+ -d +`オプションを指定します。

sudo do-release-upgrade -d

DigitalOcean Dropletの場合のように、SSHを介してシステムに接続している場合、続行するかどうかを尋ねられます。

ドロップレットでは、SSH経由でアップグレードしても安全です。 `+ do-upgrade-release +`はこれを通知していませんが、DigitalOceanコントロールパネルから利用可能なコンソールを使用して、SSHを実行せずにDropletに接続できます。

他のプロバイダーがホストする仮想マシンまたは管理対象サーバーの場合、特にシステムのコンソールにリモート接続する別の手段がない場合、SSH接続が失われるリスクがあることに注意してください。 管理下にある他のシステムについては、マシンに直接物理的にアクセスできる場合にのみ、主要なオペレーティングシステムのアップグレードを実行するのが最も安全であることを忘れないでください。

プロンプトで、* y と入力し、 Enter *を押して続行します。

Reading cache

Checking package manager

Continue running under SSH?

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'.
Do you want to continue?

Continue [yN]

次に、 + do-release-upgrade`がポート1022で + ssh`の新しいインスタンスを開始していることが通知されます。

Starting additional 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'

To continue please press [ENTER]
  • Enter *を押します。 次に、ミラーエントリが見つからなかったという警告が表示される場合があります。 DigitalOceanシステムでは、16.04のローカルミラーが実際に利用可能であるため、この警告を無視してアップグレードを続行しても安全です。 * y *を入力:

Updating repository information

No valid mirror found

While scanning your repository information no mirror entry for the
upgrade was found. This can happen if you run an internal mirror or
if the mirror information is out of date.

Do you want to rewrite your 'sources.list' file anyway? If you choose
'Yes' here it will update all 'trusty' to 'xenial' entries.
If you select 'No' the upgrade will cancel.

Continue [yN]

新しいパッケージリストがダウンロードされ、変更が計算されると、アップグレードを開始するかどうかを尋ねられます。 繰り返しますが、続行するには* y *を入力します。

Do you want to start the upgrade?


6 installed packages are no longer supported by Canonical. You can
still get support from the community.

9 packages are going to be removed. 104 new packages are going to be
installed. 399 packages are going to be upgraded.

You have to download a total of 232 M. This download will take about
46 seconds with your connection.

Installing the upgrade can take several hours. Once the download has
finished, the process cannot be canceled.

Continue [yN]  Details [d]

新しいパッケージが取得され、解凍されてインストールされます。 システムが高速接続されている場合でも、これには時間がかかります。

インストール中に、さまざまな質問に対する対話型ダイアログが表示される場合があります。 たとえば、必要なときにサービスを自動的に再起動するかどうかを尋ねられる場合があります。

image:http://assets.digitalocean.com/articles/how-to-upgrade-to-ubuntu-1604/0.png [サービス再起動ダイアログ]

この場合、「はい」と答えても安全です。 その他の場合、インストールしているパッケージのデフォルトバージョンで変更した構成ファイルを置き換えるかどうかを尋ねられる場合があります。 多くの場合、これは判断の呼び出しであり、このチュートリアルの範囲外の特定のソフトウェアに関する知識が必要になる可能性があります。

新しいパッケージのインストールが完了すると、古いパッケージを削除する準備ができているかどうかを尋ねられます。 カスタム構成のないストックシステムでは、ここに* y を入力しても安全です。 大幅に変更したシステムでは、後で再インストールする必要があるものが含まれている場合は、 d *を入力して、削除するパッケージのリストを調べることができます。

Remove obsolete packages?


53 packages are going to be removed.

Continue [yN]  Details [d]

最後に、すべてがうまくいったと仮定すると、アップグレードが完了し、再起動が必要であることが通知されます。 * y *を入力して続行します。

System upgrade is complete.

Restart required

To finish the upgrade, a restart is required.
If you select 'y' the system will be restarted.

Continue [yN]

SSHセッションでは、おそらく次のようなものが表示されます。

=== Command detached from window (Thu Apr  7 13:13:33 2016) ===
=== Command terminated normally (Thu Apr  7 13:13:43 2016) ===

SSHセッションはサーバー側で終了するため、ここでキーを押してローカルプロンプトを終了する必要がある場合があります。 システムが再起動するまでしばらく待ってから、再接続します。 ログインすると、Xenial Xerusを使用していることを確認するメッセージが表示されます。

Welcome to Ubuntu Xenial Xerus (development branch) (GNU/Linux 4.4.0-17-generic x86_64)

結論

これで、Ubuntu 16.04が正常にインストールされました。 ここから、おそらくサービスとデプロイされたアプリケーションに必要な構成変更を調査する必要があります。 今後数週間で、Ubuntu 16.04に固有のDigitalOceanガイドをさまざまなトピックについて投稿し始める予定です。

Related