Ubuntuのシステムアップデート
まずはパッケージを最新にアップデートする。
/etc/apt/sources.listにUbuntu公式のリポジトリが登録されており、そのリポジトリを基にパッケージ一覧を最新化する。
username@ubuntu:~$ sudo apt update
パッケージ一覧を最新化したら、アップデートする。
username@ubuntu:~$ sudo apt upgrade -y
カーネルが更新されても、OSを再起動するまでは古いカーネルのまま動く旨通知が出ます。
apt upgrade
でアップデート後、アップデートされたライブラリやバイナリを反映させるために再起動が必要な場合、そのサービスに*マークが付いて教えてくれます
これはUbuntuだとneedrestartというパッケージで実現していて、RHEL6,7,8でいうyum-utilsに含まれているneeds-restartingです。
デフォルトで*マークが付いているものはそのままで、OKを選択してサービスを再起動します。
前述した通り、新しいカーネルで動かすためにはOS再起動が必要のため、OSを再起動します。
username@ubuntu:~$ sudo reboot
Raspberry PiのEEPROM
Raspberry Pi 4のBootloaderはEEPROMに書き込まれています。
Bootloaderは、不定期に機能向上やバグフィックスなどが行われており、Raspberry Pi専用のコマンドを用いてバージョンアップが可能です。
Raspberry Pi OSは文字通りRaspberry Pi 専用OSなので、管理するためのコマンド類が入っていますが、Ubuntu Server 22.04 LTSにも同様に管理できるパッケージrpi-eepromがデフォルトで入ってくれています。
このパッケージに入っているコマンドを使えば、Bootloaderのバージョン確認や更新が可能です。
Bootloaderのバージョン確認
username@ubuntu:~$ cat /etc/default/rpi-eeprom-update
FIRMWARE_RELEASE_STATUS="default"
BOOTFS=/boot/firmware
username@ubuntu:~$
username@ubuntu:~$ sudo rpi-eeprom-update
[sudo] password for username:
BOOTLOADER: up to date
CURRENT: Tue Apr 26 10:24:28 UTC 2022 (1650968668)
LATEST: Tue Jan 25 14:30:41 UTC 2022 (1643121041)
RELEASE: default (/lib/firmware/raspberrypi/bootloader/default)
Use raspi-config to change the release.
VL805_FW: Using bootloader EEPROM
VL805: up to date
CURRENT: 000138a1
LATEST: 000138a1
username@ubuntu:~$
この例だと、CURRENTの方が新しくなってしまっていますが、それはUbuntuのインストール前にRasberry Pi OSで最新版の2022年04月26日版に更新してしまっているためです。
Ubuntu Server 22.04 LTSに入っているrpi-eepromパッケージは2022年05月21日時点では、Rasberry Pi OSのものより古いようで、2022年01月25日版が最新として表示されていました。
適用するバージョンとして、3種類(default、latest、beta)の指定が可能です。
/etc/default/rpi-eeprom-update
のFIRMWARE_RELEASE_STATUSがdefaultが/lib/firmware/raspberrypi/bootloader/critical
フォルダへのシンボリックリンク、latestだと/lib/firmware/raspberrypi/bootloader/stable
フォルダへのシンボリックリンクとなっています。
FIRMWARE_RELEASE_STATUS | ディレトリ | 用途 |
---|---|---|
default | /lib/firmware/raspberrypi/bootloader/critical | 最新の製品リリース、重要なセキュリティまたはハードウェアの互換性のバグ修正が含まれる。 |
latest | /lib/firmware/raspberrypi/bootloader/stable | ベータテストを受けた新機能が含まれる。製品リリースの候補。 |
beta | /lib/firmware/raspberrypi/bootloader/beta | その名の通り、ベータテストのバージョン。 |
/lib/firmware/raspberrypi/bootloader
配下はrpi-eepromパッケージに依存します。
Ubuntu 22.04 LTSに入っているrpi-eepromパッケージをみてみたところ13.12-1ubuntu1
のように、公式Raspberry Pi OSのものとは少し異なるため、https://github.com/raspberrypi/rpi-eeprom/tree/master/firmware にある最新版のBootloaderに常にアップデートできるわけではないようです。
/etc/default/rpi-eeprom-update
は好みに応じて、defaultから変更して下さい。
私はlatestにしています。
/lib/firmware/raspberrypi/bootloader/release-notes.md
や、https://github.com/raspberrypi/rpi-eeprom/tree/master/firmwareをみれば、各バージョンの修正内容が分かるので参考になります。
Bootloaderの更新
/etc/default/rpi-eeprom-update
のFIRMWARE_RELEASE_STATUSをdefaultからlatestに変更しアップデートしています。rpi-eeprom-update -aでキューに入れてOSを再起動する事で適用されます。
username@ubuntu:~$ sudo rpi-eeprom-update
[sudo] password for username:
*** UPDATE AVAILABLE ***
BOOTLOADER: update available
CURRENT: 2021年 4月 29日 木曜日 16:11:25 UTC (1619712685)
LATEST: 2022年 1月 25日 火曜日 14:30:41 UTC (1643121041)
RELEASE: default (/lib/firmware/raspberrypi/bootloader/default)
Use raspi-config to change the release.
VL805_FW: Using bootloader EEPROM
VL805: up to date
CURRENT: 000138a1
LATEST: 000138a1
username@ubuntu:~$
username@ubuntu:~$ cat /etc/default/rpi-eeprom-update
FIRMWARE_RELEASE_STATUS="default"
BOOTFS=/boot/firmware
username@ubuntu:~$
username@ubuntu:~$ sudo vi /etc/default/rpi-eeprom-update
~~~
FIRMWARE_RELEASE_STATUS="default"
↓
FIRMWARE_RELEASE_STATUS="latest"
~~~
username@ubuntu:~$ cat /etc/default/rpi-eeprom-update
FIRMWARE_RELEASE_STATUS="latest"
BOOTFS=/boot/firmware
username@ubuntu:~$
username@ubuntu:~$ sudo rpi-eeprom-update -a
*** INSTALLING EEPROM UPDATES ***
BOOTLOADER: update available
CURRENT: 2021年 4月 29日 木曜日 16:11:25 UTC (1619712685)
LATEST: 2022年 4月 26日 火曜日 10:24:28 UTC (1650968668)
RELEASE: latest (/lib/firmware/raspberrypi/bootloader/latest)
Use raspi-config to change the release.
VL805_FW: Using bootloader EEPROM
VL805: up to date
CURRENT: 000138a1
LATEST: 000138a1
CURRENT: 2021年 4月 29日 木曜日 16:11:25 UTC (1619712685)
UPDATE: 2022年 4月 26日 火曜日 10:24:28 UTC (1650968668)
BOOTFS: /boot
EEPROM updates pending. Please reboot to apply the update.
To cancel a pending update run "sudo rpi-eeprom-update -r".
username@ubuntu:~$ sudo reboot
username@ubuntu:~$
username@ubuntu:~$ sudo rpi-eeprom-update
[sudo] password for username:
BOOTLOADER: up to date
CURRENT: 2022年 4月 26日 火曜日 10:24:28 UTC (1650968668)
LATEST: 2022年 4月 26日 火曜日 10:24:28 UTC (1650968668)
RELEASE: latest (/lib/firmware/raspberrypi/bootloader/latest)
Use raspi-config to change the release.
VL805_FW: Using bootloader EEPROM
VL805: up to date
CURRENT: 000138a1
LATEST: 000138a1
username@ubuntu:~$
時刻同期設定
時刻同期先として、日本国内でStratum2でNTPサービスを提供しているインターネットマルチフィード(MFEED) を指定します。
https://www.mfeed.ad.jp/ntp/usage.html
username@ubuntu:~$ sudo vi /etc/systemd/timesyncd.conf
~~~
#NTP=
↓
NTP=ntp.jst.mfeed.ad.jp
~~~
username@ubuntu:~$ sudo systemctl restart systemd-timesyncd.service
username@ubuntu:~$ sudo systemctl status systemd-timesyncd.service
● systemd-timesyncd.service - Network Time Synchronization
Loaded: loaded (/lib/systemd/system/systemd-timesyncd.service; enabled; ve>
Active: active (running) since Sat 2022-05-21 16:25:47 JST; 4s ago
Docs: man:systemd-timesyncd.service(8)
Main PID: 5854 (systemd-timesyn)
Status: "Initial synchronization to time server 210.173.160.27:123 (ntp.js>
Tasks: 2 (limit: 9238)
Memory: 1.2M
CPU: 170ms
CGroup: /system.slice/systemd-timesyncd.service
mq5854 /lib/systemd/systemd-timesyncd
May 21 16:25:47 ubuntu systemd[1]: Starting Network Time Synchronization...
May 21 16:25:47 ubuntu systemd[1]: Started Network Time Synchronization.
May 21 16:25:47 ubuntu systemd-timesyncd[5854]: Initial synchronization to time>
username@ubuntu:~$
0 件のコメント:
コメントを投稿