KingJim XMC10 への Ubuntu 18.04.2 の導入についての tweet の纏め
はじめに
King Jim XMC10 は、 King Jim 社製による Windows10 搭載の小型PCです。本稿は、 XMC10 に、 Debian 系の Linux ディストリビューションである Ubuntu 18.04.2 を導入した際に気付いた点及び留意点について纏めたものです。
XMC10 への Ubuntu 18.04.2 の導入にあたっては、 以下のブログ記事及び Github のリポジトリ等を参考にしました。
- @mongonta 氏による XMC10 関連の一連のブログ投稿記事
- @amuramatsu 氏による XMC10 についての Github リポジトリ
- @kapper1224 氏によるブログ投稿記事 "ATOMスライドキーボード #Portabook XMC10 Wubi+Ubuntu17.10 インストール その1 "
@mongonta 氏と @amuramatsu 氏及び @kapper1224 氏の各氏には、心より感謝致します。
現在うだうだ中。現在、奈良市内某所にて休憩中。疲労感は蓄積中。 さて、この度、キングジム社製の Windows 端末である XMC10 に Ubuntu 18.04.2 を導入する作業を行っていたが、漸く動作に関する目処が立ったので、ここに導入作業について振り返りを行う事とする。 kapper1224.sblo.jp/s/article/1812…
2019-12-12 14:49:40Wubi を用いた Ubuntu 18.04.2 の導入
Wubi を用いて Ubuntu 18.04.2 を導入する場合、 Wubi 経由で Ubuntu 18.04.2 の .iso イメージファイルを取得すると、 Ubuntu 18.04.2 の導入に失敗します。
この場合は、 Wubi とは別個に公式の Ubuntu のダウンロードページから Ubuntu 18.04.2 の .iso イメージファイルの取得を行い、 Wubi を実行します。
なお、 Wubi を実行して Ubuntu 18.04.2 を導入する際には、以下の点に留意する必要があります。
- Wubi の実行に際しては、予め Ubuntu 18.04.2 のインストール先のドライブとは別の増設ドライブ等に適当なディレクトリを作成して、そのディレクトリに Wubi と Ubuntu 18.04.2 の .iso イメージファイルを格納する必要があります。
- Wubi と Ubuntu 18.04.2 の .iso イメージファイルを格納するディレクトリに複数の .iso イメージファイルを格納すると、 Wubi からは1個の .iso イメージファイル以外認識されないことに留意する必要があります。
なお、 XMC10 に Ubuntu 18.04.2 を導入する際には、内蔵ドライブの空き容量の関係で、Ubuntu 18.04.2 に割り当てる事が出来る root partition 領域の容量は最大 9 GB 程度となる事に留意する必要があります。
現在うだうだ中。現在、奈良市内某所にて休憩中。 まず、 XMC10 に Ubuntu 18.04.2 を導入する際は @kapper1224 氏による以下の記事を参考にして Wubi に基づいて Ubuntu を導入する。 この時、 Ubuntu の為に使用出来る領域の容量は事実上 9GB 程度となる事に留意する事。 kapper1224.sblo.jp/s/article/1812…
2019-12-12 14:49:41無線 LAN 子機 USB ドングルの勧め
Ubuntu 18.04.2 を導入した XMC10 では、現状では内蔵無線 LAN デバイスによる通信が低速な状態です。
そこで、後述する Linux カーネルの更新を行うまでは、無線 LAN 子機 USB ドングルの使用を強く御勧めします。
現在うだうだ中。現在、奈良市内某所にて休憩中。 なお、 Ubuntu 18.04 のインストール時に使用する Linux カーネルは XMC10 に内蔵の Wifi 通信デバイスを適切に認識するが、通信速度が著しく低速であるので、予め USB ドングル型の Wifi 子機の使用を強く御勧めする。 amazon.co.jp/dp/B071HBZHWM/…
2019-12-12 14:49:49BIOS の設定
XMC10 の再起動後は、 XMC10 のキーボードの "F2" キー若しくは "ESC” キーを押した状態のまま XMC10 を起動します。
すると、 BIOS の設定画面が表示されるので、以下の項目について必ず設定を行います。
"Security"
のタブを選択し、"Secure Boot Support"
の項目を必ず"Disable"
に設定します。この項目が"Enable"
に設定されていると XMC10 から Ubuntu 18.04.2 の起動に失敗することに留意して下さい。- そして、
"Boot"
のタブを選択し、"Boot Option Priorities"
の項目を以下のように設定します。- 最初に、
"Boot Option #1"
の項目を"Ubuntu"
に設定します。即ち、 XMC10 において、 Ubuntu 18.04.2 のブートを最も高い優先度とします。 - 次に、
"Boot Option #2"
の項目を"Windows Boot Manager"
に設定します。
- 最初に、
以上の設定が完了すると、 "Save & Exit"
タブを選択し、次に "Save Configure & Exit"
を選択して設定を保存して BIOS の設定画面を終了します。
現在うだうだ中。現在、奈良市内某所にて休憩中。 Wubi による Ubuntu の一連の導入が完了した後、 XMC10 を再起動を行う。 この時、 @kapper1224 氏の記事で指摘の通り、起動直後に ESC キーを押し下げて UEFI の設定画面を表示させ、 Secure boot 等の設定を適切に行う事。 kapper1224.sblo.jp/s/article/1812…
2019-12-12 14:49:42現在うだうだ中。現在、奈良市内某所にて休憩中。 UEFI の設定後は、 Ubuntu のインストールのプロセスが開始されるが、その途中で Wifi 通信を有効にする事を要求するメッセージが表示されるので、その時に右上の▼印より、 Wifi の設定を適切に行う。 その後、インストールのプロセスを続行する。 pic.twitter.com/Amh11efYoT
2019-12-12 14:49:48Linux Kernel の更新
前述までの作業に基いて XMC10 に導入した Ubuntu 18.04.2 において、現状において以下の様な問題が発生しています。
- XMC10 のキーボードの一部のキーの押し下げについて、キー入力が全く反応しない問題が発生する。
- XMC10 上の Ubuntu のコンソール端末の入出力において、全てのキー入力時に ESC 文字 (0x1b) が挿入される問題が発生する。
以上の問題を回避する為には、 Linux カーネルのソースコードに修正を加え、 Linux カーネルの再構築を行った後、 Linux カーネルの更新を行う事が必要です。
ここで、 Linux カーネルの再構築を行うに当たっては、 @mongonta555 氏による Linux カーネルの再構築に関するブログの記事を参考にしました。
なお、Linux カーネルの再構築の為の端末に、必要なパッケージを導入する際には、 @mongonta555 氏のブログ記事にて示されたパッケージの他に、以下の様にパッケージ lz4
を導入する必要があります。
$ sudo apt-get -y install build-essential libncurses-dev fakeroot kernel-package linux-source libssl-dev
$ sudo apt-get install -y bison flex
$ sudo apt-get install -y lz4
また、今回再構築した Linux カーネルについては、 安定版の 5.3 系のソースコードをベースとし、以下の差分ファイルを適用しました。
- Linux カーネルの Debian 用の .deb パッケージ化において必要な差分ファイル
- @mongonta555 氏による差分ファイル
- @amuramatsu 氏による差分ファイル
- https://github.com/amuramatsu/debian-kernel-mod/blob/portabook-ubuntu-kernel-4.15/patches/i915_clock_override.patch
- https://github.com/amuramatsu/debian-kernel-mod/blob/portabook-ubuntu-kernel-4.15/patches/portabook-i2c-bug-workaround.patch
- https://github.com/amuramatsu/debian-kernel-mod/blob/portabook-ubuntu-kernel-4.15/patches/portabook-keyboard.patch
- https://github.com/amuramatsu/debian-kernel-mod/blob/portabook-ubuntu-kernel-4.15/patches/portabook-sound-rt5670.patch
- 当方による差分ファイル
そして、以上の通りに Linux カーネルのソースコードに差分ファイルを適用した後、コマンド make-kpkg
を用いて Debian 派生ディストリビューション対応の Linux カーネルの .deb パッケージを生成したものを当方の Github のリポジトリのパッケージの配布ページに置きました。
ここで、当方が再構築した Linux カーネルの .deb パッケージを用いて Linux カーネルの更新を行うには、通常の .deb パッケージと同様にして、以下の通りに linux-image-x.y.z-xmc10-001+YYYYMMDD_amd64.deb
及び linux-headers-x.y.z-xmc10-001+YYYYMMDD_amd64.deb
等の導入を行います。 (ここに、 x.y.z は Linux カーネルのバージョン番号であり、 YYYYMMDD は .deb パッケージのリビジョン番号)
...
$ sudo -s
# dpkg -i ./linux-image-x.y.z-xmc10-001+_YYYYMMDD_amd64.deb
# dpkg -i ./linux-headers-x.y.z-xmc10-001+_YYYYMMDD_amd64.deb
# dpkg -i ./linux-source-x.y.z-xmc10-001+_YYYYMMDD_all.deb
...
なお、 XMC10 において、コンソール端末のキー入力時に ESC 文字 (0x1b) が入力される問題を修正するには、設定ファイル /etc/default/grub
内の環境変数 GRUB_CMDLINE_LINUX
を以下の通りに修正し、 update-grub
コマンドを実行します。
#GRUB_CMDLINE_LINUX="rootflags=sync"
#↓ GRUB_CMDLINE_LINUX に ignore_altlock=yes を追記する。
GRUB_CMDLINE_LINUX="rootflags=sync ignore_altlock=yes"
ここで、設定ファイル /etc/default/grub で修正する環境変数は、 GRUB_CMDLINE_LINUX_DEFAULT ではなく、環境変数 GRUB_CMDLINE_LINUX であることに留意する必要があります。
ALSA による音声出力等を有効化する
XMC10 上の Ubuntu 18.04.2 環境において、 Linux カーネルを更新した後に、 ALSA に基づいた音声出力等を有効化するには、以下のコマンドを実行します。
$ git clone https://github.com/amuramatsu/portabook_ucm.git
$ sudo -s
# cd portabook_ucm
# cp -rf ./cht-bsw-rt5672 /usr/share/alsa/ucm
#
現在うだうだ中。現在、奈良市内某所にて休憩中。 インストールのプロセスが完了すると、再起動が行われ、 UEFI の設定が適切に行われていれば、 Gnome ベースのデスクトップ環境が起動する。 しかし、 Ubuntu を導入した初期の状態では、一部のキーボードが反応しない等の問題が発生する。 pic.twitter.com/WfCpa29YNW
2019-12-12 14:49:54現在うだうだ中。現在、奈良市内某所にて休憩中。 そこで、初期状態における問題を修正する為に、 Linux カーネルのソースコードの修正とビルドを行った。 なお、上記の Linux カーネルの修正及びビルドの過程に関しては、 @mongonta555 氏の以下の記事が参考になった。 mongonta.com/howto-build-cu…
2019-12-12 14:49:55現在うだうだ中。現在、奈良市内某所にて休憩中。 また、前述した、 XMC10 向けの Linux カーネルのソースコードの修正に当たっては、 @amuramatsu 氏の以下の Github のリポジトリ内の差分ファイルも参考になった。 また、 ALSA 関連の設定に関しても併せて参考になった。 github.com/amuramatsu/por…
2019-12-12 14:49:55現在うだうだ中。現在、奈良市内某所にて休憩中。 以上の通りに Linux カーネルのソースコードに修正を加え、これをビルドして生成した Linux カーネルのイメージ及びヘッダファイル群等の .deb 形式のパッケージについて、以下の通りに Github リポジトリに置いた。 github.com/z80oolong/linu…
2019-12-12 14:49:56microSDXC の増設
XMC10 上に導入した Ubuntu 18.04.2 において使用出来る root partition の領域は、現状では最大でも 8GB 程度しかありません。
その為、 XMC10 の SD カードスロットに増設用の SDXC メモリ若しくは microSDXC メモリを取り付ける事を強く御勧めします。
しかし、 SDXC メモリを XMC10 の SD スロットに取り付けようとすると、 SDXC メモリが SD スロットより外にはみ出してしまう問題が発生します。
そこで、通常の microSD → SD カード変換アダプタより縦の寸法の短い Apple Macbook Air Pro 対応の SD カードアダプターに microSDXC カードを取り付け、 XMC10 の SD スロットに取り付ける事により、上記の問題を回避する事が出来ました。
現在うだうだ中。現在、奈良市内某所にて休憩中。 ここで、 Ubuntu において使用出来る内蔵のストレージ領域は、現状では 8GB 程度しかない為、 SD カードスロットに増設用のメモリを取り付ける事とする。 しかし、 SD メモリをスロットに取り付けると、メモリがスロットより飛び出す問題が発生する。 pic.twitter.com/edXqT5k5OS
2019-12-12 14:49:59現在うだうだ中。現在、奈良市内某所にて休憩中。 そこで、増設用のメモリとして SD メモリに代えて microSD メモリを用意し、以下の様な Apple Macbook Air 用の小型の microSD 変換アダプタを用いると、 SD カードスロットに増設メモリを完全に収める事が出来た。 amazon.co.jp/Smartist-MacBo…
2019-12-12 14:49:59