Ubuntu 20.04でOS遊びした結果、LinuxシングルボードコンピュータはRaspberry Piだけでおなかいっぱい、と言う話

 OSのインストール遊び。もう何十年もやっていて、ほとんど病気。動くか動かないかなーってところのOSをただインストールするだけの遊び。私のこだわりは日本語入力/表示はできるが、OSの表示は英語版のまま、ってところ。LINUXの場合は、デスクトップ環境で。英語版だと英語キーボードに似合っているし(かな入力が苦手)、ブラシーボ効果で動作も軽く感じる、何よりフォルダのパスに日本語が入らない。漢字Talk6.xの時代、Windows3.1の時代から引き継いでいる私なりの目標で、今もWindows10でそうして使っているものもある。古いアプリでは日本語が化ける奴もあるけど、そんなのはとっとと捨てています。どうにもならないのはブラザーのドライバ類とノートンアンチウィルスくらい。
 同好の方には今まで会ったことはないけれど、この分野?での、このところの旬はArm64のUbuntuですよね。前はAArch64って呼んでたけど、変わったのかな。
 実のところ、64bit ArmのLINUX、私はPinebookでだいたいOkだったんだけど、ちょっと前にUbuntu18.04 desktopのラズベリーパイ3用ベータをインストールしてみて、なかなか良い塩梅だったので20.04を待っていた。そして今月ついに出ました。サーバ版だけど。

 

 ラズベリーパイは3, 3+, 4を各一台ずつ(それ以前の機種もあるけど興味ない)持っていて。その時代の最速機はMathematicaのためにRaspbian専用機、準デスクトップ扱い。最も遅い機種は実験用。必定3+がOS遊び用の機種。なので以下の記事はメモリ1GBのPi3B+での話である。

 

 現時点で出ているUbuntu 64bit for ArmはServer版だけで、結論から言うと、うん、良くも悪くもServer版だな、ってところ。Ubuntuのサイトではデスクトップ環境にしたけりゃ
 apt install lubuntu-desktop
のほか2種くらいデスクトップ入るよ、と紹介されています。でもちと重いし、出たすぐの頃はアップデートでどこかしらに瑕疵が出てた。18.04 Desktopベータでも同類のエラーに遭遇して、とても安定して使えるデスクトップとは言えなかった。滑らかに動くのは18.04の方。
 でも20.04+Lubuntuデスクトップでも最近のアップデートで、その瑕疵は消えたみたい。一応64bit Lubuntuが使えるようになった。難点はメモリとディスクアクセスで激重なこと。

 

 4-5回試行錯誤したが、結局やったことを大雑把にまとめると;
#適宜再起動してapt update/dist-upgrade/upgrade/autocleanなんかを挟みつつ、
(1) 20.04 LTSサーバ版のインストール。プレインストールイメージなのでいつものように焼いただけ。因みに試したカードはSandiskのUltra SDXC UHS-Iほか数種だが、いずれも64GB。最終的にはそのSandiskになった。非Extreamの遅い奴だけど。最初の起動時にはWifi使えなかったのでネットワークは有線で。
(2) Swapファイルを4GB程度に。元々Swapは設定されていないみたい。最初これに気づかずデスクトップ入れたら途中で固まった(1時間くらいほったらかしにした後、強制再起動してみたら動いた。けど、気持ち悪いので最初から再トライ)。swapはfstabにも登録忘れずに。実メモリ1GBなので、4GBは多すぎだと思われるかも知れないけど、作業中に半分使うのは確認できたからケチケチしない。4GB以上は無駄ってのは聞いたことがあるけど、あれの実メモリは幾つの時だったっけ。あと、元がサーバ版なのでswapinessは40くらいにしたけど60のままで良いかも。
(3) デフォルトのユーザ名とかワークディレクトリを変える。usermodとかgroupmodで。あとhostnameなんかも好きなものに変える。面倒なら新規にユーザ作れば良いが、sudoer登録を忘れずに。追加するだけだとデスクトップ画面にはubuntuも出てくるので要らなけりゃ消しておく。まあ、これらはデスクトップ入れてからでもOK
(4) apt install lubuntu-desktop
 私はLubuntu好きなので。デスクトップマネージャはgdm3を選択、じゃなかったら画面が私の4Kモニタでは出なかった。かなり時間がかかる。安物のmicro SDだと辛いところ。
(5) 再起動してログイン。なんか、最初はGUIデスクトップで頻繁にアプリケーションバー?が落ち、再起動させるのだけど、再起動させて素早い操作で(笑)何とかターミナルを起動する。sshdはデスクトップインストール前にenableしておくべきだった。
(5) (もちろんapt updateして)takao-fontsとfcitx-mozcを入れる。openssh-serverは…入ってたかな?なければ入れて、使えるようにする。確かデフォルトでは接続拒否された。
(6) dpkg-reconfigureで時計とか、ロケールを入れる。ロケールはGUIだと一つしか選べないので、私は通常CUIで英語(米国)と日本を入れている。デフォルトロケールはもち英語。
(7) キーボードをmozcに変更。一応英語キーボードも入れているが消してもok。この途中に英語やら日本語のリソースを読むか、って聞いてくる。入れた方が多分安定する。けど、それを入れるとCJKフォントなども入ってSDカードが荒れるのが嫌なので、今回はパス。

 こんなところかな。LinuxはPythonの環境を入れたり、何かのライブラリとか、大きなアプリケーションをコンパイルすると、すぐ環境が荒れる。そのため、さっさと作り直せるシングルボードコンピュータは楽でよい。遅いけど。私の場合、Windowsだと仕事で使ったりVisualStudioでもの作ったりしているので、そう簡単に環境を破棄できない。

f:id:VistaPointer:20200429121517p:plain

一応貼っときます

 Ubuntu Arm64は、あくまでも現状、画面の解像度は2K/4Kには未対応のようで、私のモニタでは変な解像度1種しか選べない(フルHDに近い解像度だったけど、ちょっと小さめ)。この辺はRaspbianに一日の長がある。11インチで2K超えると、文字が読めないから、拡大対応できないと洒落にならない。
 でもま、これで64bit環境下でFirefoxが使えるようになった。これまた激重だけど。Anacondaは…現時点ではまだArm64対応が不完全なようでaptなんかじゃ無理っぽい。やり方は書いてあるんだけど、未実施。
 Mathematicaはインストールできないか。Wolframのサイトからスクリプト落として実行してみたが、インストール途中で引っかかった。インテルよろしく、32bit版じゃないと動かないライブラリとかあるのかも。インストールが通ったとしても、起動時にお金を請求されるだろうけど。

 おらんげぴとかばななぴなども持っていて、OS動向は得ているのだけど、いずれもArmbian頼みの感が強く、最近じゃ時間の無駄だなぁと思えてくる。少ない種類の機器に限定して完成度の高いシステムを作るRaspberryPiの方が結局優れていると思う。強いてあげればRock64はうまくやっている。IoT機器として捉えた場合、Win10かRaspberry PiにArduino環境でソフトが組める有象無象の末端デバイス(主にセンサーね)を組み合わせるのがベスト、と言うか既に定番かと。
 今後はその有象無象に取り掛かろう。