【Ubuntu18.04】新機能 LivePatchについて
Ubuntu 18.04 Bionic Beaverの新機能でLivePatchというものがあります。
Welcome画面で表示されるので何?と思った方もいらっしゃるのではないでしょうか。
後でも設定できるので何かわからない方は取り敢えず設定しなくても大丈夫です。
LivePatchとは?
PCを再起動しないでセキュリティに関するパッチを適用できる機能です。Ubuntu16.04から実装された機能で今回の18.04では利用開始までの手順が簡単になりました。
概要は以下のドキュメントが分かりやすいです。
The Canonical Livepatch Service(英語 PDF)
LivePatchが必要な方
・24時間365日絶対停止できないPCを持っている方、これから持とうとする方。
最大のメリットは無停止でセキュリティパッチを適用できることです。
・PCの作業中にUpdateで作業を止められたくない方。
意識せずにOSのセキュリティを最新に保つことができます。
LivePatchを利用する条件
- UbuntuOneのアカウントが必要(登録は無料)
- Cannonicalから提供されているカーネルやパッケージを利用していること。
- 個人ユーザは1アカウントにつき3台までは無償。4台以上は有償です。(https://buy.ubuntu.com/)
- 64bitのアーキテクチャのみ(aka,x86_64,amd64)
②が重要で、カスタマイズしたカーネルや独自にビルドしたパッケージを入れている場合、上手くパッチが適用できません。私のように独自のカーネルを利用したり、Vimを独自にビルドしている場合は影響があります。(上書きされちゃうとか、そのパッケージは更新されないとか。)
まだパッチは降ってきてないので動作検証ができておらずなんとも言えません。
UbuntuOneとは?
Canonicalが提供するUbuntuに関するサービスを使うためのSSO(シングルサインオン)サービスです。
登録は
・メールアドレス
・パスワード
があれば登録できます。
Ubuntu Oneの登録方法
日本語が良い方は他のPCでブラウザを開き先に登録しましょう。インストール直後のUbuntuだと英語でFirefoxが開く場合があります。
①ホームページを開く
登録だけなので他のPCで開いても大丈夫です。
https://login.ubuntu.com/
②新規ユーザを選択
私は新しいUbuntu Oneユーザです。(I am a new Ubuntu One user)を選択し必要事項を記入します。
Please type your email: メールアドレスを記入
Please tell us your full name and choose a username and password:
・名前を入力(本名でなくてもOK)
・ユーザID
・パスワード(8文字以上)
・パスワードの確認
入力し終わったら「アカウントを作成する(Create Account)」をクリックします。
③メールの確認
登録したメールアドレスに「Ubuntu one: Finish your registration」というメールが届くので
Please take a moment to confrm your email address with us by link below.の後のリンクをクリックしましょう。
④登録完了
これで、UbuntuOneへの登録は完了です。
Ubuntu側での設定
UbuntuOneへの登録が終わったら、Ubuntu上で設定します。
★Welcome画面の「Livepatchをセットアップ」を押すと手順③からスタートします。
①「ソフトウェアとアップデート」を開きます。
開いたら「アップデート」のタブをクリックします。
②「サインイン」をクリック
「サインイン」をクリックします。
③「サインイン」をクリック
④メールアドレスとパスワードの入力
UbuntuOneで登録したメールアドレスとパスワードを入力して「接続」をクリックします。
⑤設定の完了
下の画像のように「Use Canonical Livepatch to increase sevurity between restarts」にチェックが入れば設定完了です。
【補足】コマンドラインでの設定方法
UbuntuServerなどをインストールしていてCUIの環境しかないなど、コマンドラインのみで操作を行う場合は以下のように操作します。
①HPからトークンを発行する。
(1)https://ubuntu.com/livepatchを開きます。
「Ubuntu user」をチェックして、「Get your Livepatch token」をクリックします。
(2)Ubuntu Oneへログイン
メールアドレスとパスワードを入力して「ログイン」をクリック
(3)トークン(key)が発行されます。
コマンドも表示されるので、SSH接続後、コピペしてもいいでしょう。
(4)コマンドを実行
以下のコマンドを実行(XXXXXXXXXXXXXXXXXXXXXXは表示されたトークンを入力してください。)
sudo snap install canonical-livepatch
sudo canonical-livepatch enable XXXXXXXXXXXXXXXXXXXXXX
(5)確認
以下のコマンドで確認します。
canonical-livepatch status
以下のようなメッセージが表示されます。
runnning: true
となっていればOKです。
client-version: 8.0.1
architecture: x86_64
cpu-model: Intel(R) Core(TM)2 Duo CPU T7100 @ 1.80GHz
last-check: 2018-05-01T14:40:14.044679662+09:00
boot-time: 2018-05-01T12:52:13+09:00
uptime: 1h48m9s
status:
- kernel: 4.15.0-20.21-generic
running: true
livepatch:
checkState: checked
patchState: nothing-to-apply
version: ""
fixes: ""
設定がうまくいっていない場合は下記のようなメッセージになります。
Machine is not enabled. Please run 'sudo canonical-livepatch enable' with the
token obtained from https://ubuntu.com/livepatch.
LivePatch機能はLTSのみのようです。
2019/5/6追記
Ubuntu19.04で試してみたところ、下記のエラーメッセージが出て有効化できませんでした。LivePatch機能はLTS(LongTeamSupport)のみの機能のようです。
error executing enable: Livepatchd error: The platform Ubuntu 19.04 is not supported. exiting.
おわりに
これでLivePatchの設定が完了しました。LivePatchで適用されるのはセキュリティパッチだけなので、通常のアップデートが必要な場合もあります。その点は注意しましょう。