Chap-17. MX Linux を試用

 Debian 派生でなおかつ systemd-free な MX Linux を試してみます。バージョン 18.3 です。
Chap-13. や Chap-14. と同じように、以下の3つの視点で使いやすいかどうか見てみました。

ただし、このウェブサイトは PC-UNIX Room と言っているとおり、主にa. と b. の視点重視です。

Sec-1.インストール
Sec-2.日本語入力の設定
Sec-3.インストール後、最初に試すこと
Sec-4.IPアドレスとリゾルバーの設定
Sec-5./etc/rc.local は簡単に使えるか
Sec-6.カーネルのアップデートは簡単か?(パケットフィルタは普通に使えるか?)
Sec-7.デーモンのコントロール
Sec-8.GUI を落としてコンソールで簡単に利用できるか?
Sec-9.Dat ドライブは普通に使えるか?
Sec-10.シリアル回線使ってルータ管理できるか?
Sec-11.Apache、postfix、guile、lua は簡単にコンパイル・インストールできるか?
Sec-12.Windows 代替としての利用(ATW)
Sec-13.全体を通しての印象



Sec-1.インストール

 使うのは、メモリ8GB、SSD 120GBです。
インストール自体の詳しいことはあちこちのウェブサイトにあるので、書きません。気になった点だけ。
基本的に、パーティション分割は /、/home、swap の3つだけみたいです。しっかりインストーラをマスターすれば Debian や Devuan 同様に、/var、/tmp も作れると思いますが、普通にやると3つだけですね。
Gdisk が使いやすく表示されているので、適当に容量を決めてインストールしました。
先に進みます。




Sec-2.日本語入力の設定

 まず、apt が見ているサイトの修正です。antiX も一緒ですが、当初見ているサイトがどうやらおかしいようです。apt update すると変なエラーを出します。なので変更します。
当初は、deb https://mirrors.cat.net/mx-packages/mx/repo/ stretch main non-free ですが、これはダメなようです。
MX Linux の repos -- soreces.list -- MX 18 を見ると、
deb http://la.mxrepo.com/mx/repo/ stretch main non-free なんてことになってますので、これに直します。
すると、apt update しても変なメッセージを出さなくなりました。

 ここ最近にインストールした PC-UNIX 系OS で日本語入力のパッケージを入れないとダメなのは、始めてです。ちょい戸惑いました。
日本語表示は最初から普通に出来ています。でも、日本語入力はそのためのパッケージを入れないとダメ。
ネットの記載をみて試してみたのですが、結構失敗します。ネットでも「日本語入力設定はデリケートだ」とか「日本語入力設定に苦労する」とか書いてあります。
私がうまくいったのは、以下のサイトの記載でした。著者さん、ありがとうございます。

"LOOX M/G30にMX-18.3をインストールした" というサイト
https://plaza.rakuten.co.jp/sorriman/diary/201906260000/

内容は、そっくりそのままですが一応ここにも書いておきます。詳しくは上記サイトを見てください。

# apt update
# apt install fcitx-mozc im-config zenity fcitx-frontend-gtk2 fcitx-frontend-gtk3 fcitx-config-gtk2

# im-config
これで、日本語入力システムとして fcitx を選ぶ

後、念の為に
# apt install firefox-l10n-xpi-ja task-japanese task-japanese-desktop

以上、書いてあるとおりにやったら日本語入力ができるようになりました。

いろいろなサイトでは MXTools のインストーラを使ったやり方が書いてありますが、何故か私のところではうまくいきませんでした。
上記のやり方でなんとかなりました。



Sec-3.インストール後、最初に試すこと

 普通は、ユーザ登録とか、各種パッケージソフトのインストールとか、使いやすくすると思います。
でも、ここでは本チャプタ最初に書いた a. や b. の使い方が普通にできるか?普通のUNIXマシンらしく管理・設定ができるかを中心に試します。

以下、順に試していきます。




Sec-4.IPアドレスとリゾルバーの設定

 Devuanではそれぞれ別個に管理しますが、MXは両方一緒に管理しています。なので、一緒に書きます。
やることは、/etc/network/intefaces の編集です。このファイルに、IPアドレス関係のこと、default-gatewy、ネームサーバ、サーチリストを全部書きます。
以下の感じです。Devuanと似ていますが、ネームサーバやサーチリストまで書くところが、違いますね。Devuan だと、resolv.conf を直接エディターで編集しますが、MX は「勝手に編集しちゃいかん」と resolv.conf の冒頭に書いてあります。

## sample of /etc/network/interfaces (関係箇所のみ)
##
auto eth0
iface eth0 inet static
      address       192.168.0.1
      netmask       255.255.255.0
      gateway       192.168.0.254
      dns-nameserver  192.168.0.254
      dns-search    quinos.net
##
## 192.168.0.254 はヤマハルータでゲートウェイ、かつ、これにネームサーバやらせてます。

普通は、これで ifup と ifdown を使えば、所望のアドレスに変わるはずですが、MX はここがちょっとうまく作動しなかったです。で、リブートしましたら、調子よくいきました。
IPアドレスも変わったし、/etc/reslov.conf を見たら、ちゃんと所望のネームサーバ、サーチリストになりました。オケです。





Sec-5./etc/rc.local は簡単に使えるか

 使えるか?なんて無用の議論でした。最初から入っているし、書き足していくだけです。簡単そのもの。当たり前に動きます。






Sec-6.カーネルのアップデートは簡単か? (パケットフィルタは普通に使えるか?)

 上記の a. の使い方をやるなら、カーネルはなるべく(極力) kernel.org からソースを持ってきて自分でコンパイル・インストールするのがベストです。
それが、一番はやくバグフィックスやセキュリティフィックスに対応できます。ディストリから提供されるのを待っていると、大抵一ヶ月以上遅れます。ひどいと半年とか・・・・
一方、b. や c. で使うなら、あえてカーネルアップしなくても、そのまま使い続けて問題は無い様な気がします。
(ただし、ここ一年半くらい話題の spectre、meltdown については LAN 内部で使う PC でも対応しておいたほうが良いです)

 今回カーネルアップを試すのに、ディストリから提供されるアップもやってみたかったのですが、たまたま? 今(2019-09 上旬)は、その対象カーネルがなさそうでした。なので、自前でコンパイル・インストールだけ、試しました。
結論を書けば、Devuan より少し苦労しましたが、やり方がわかれば大変ではありません。
バージョンは、2019-09 上旬時点で 4.19.71 が最新ですので、それを使います。MX Linux 18.3 は基本的に 4.19 系列のカーネルです。
以下、コンパイル手順です。

まず、カーネルをインストールするのに必要なパッケージを入れます。何度か make を試みてエラーが出るたびにパッケージを入れました。なので、最終的にこれだけ入れたはずですが、ひょっとすると記載してる中に、一部無駄なパッケージが混ざっているかもしれません。細かいことは、気にしないでください(汗)。もちろん、make、gcc、g++ などは入っていると仮定しています。

# apt install libncurses-dev bison flex autoconf autoconf2.64 libssl-dev libelf-dev

で、.config ですが、make menuconfig やって出来た .config (標準的なやつ)を使いました。
make すると多分エラーが出ると思います。その時は以下の 2 行の修正を .config に加えます。

CONFIG_SYSTEM_TRUSTED_KEYS=""    (8254行目付近、""の中を空にする)
# CONFIG_MODULE_SIG         (854行目付近、コメントアウトする)

「上記2行の修正が必要」ということについて参考にしたサイトは以下のサイトです。当該サイトは5系列のカーネル対象ですが、参考になりました。著者さんありがとうございます。

https://gordiustears.net/memo-on-kernel-compilation-for-debian/

MXLinuxのサイトには、18.3 のカーネルだと、新たにカーネル・コンパイルする際に、一部の modules 作成でエラーが出ると書かれています。どうやらリリース版カーネルに若干問題がありそうです。

コンパイルは、この後は基本的に make やって make modules_install やって make install です。


 make のときに -j 4 とかオプションを加えると、並列処理の数を指定できるようです。スレッド数でしょうか。
LAN 内のマシンで実際に -j 4 でコンパイルしてみましたが、core i3 程度だとマルチスレッドの恩恵はそんなに無さそうです。普通にシングルスレッドでコンパイルして1時間半くらいかかっていたのが、1時間弱に短縮された程度でした。
参考サイトには、「core i7 でカーネルコンパイルは 10 分程度」なんて書かれていました。シングルスレッドで1時間半かけている私には、驚愕です!

こんな具合で、インストールパッケージを特定するのが面倒でしたが、カーネルコンパイルそのものはオケなようです。
パケットフィルタも問題なく、オケでした。






Sec-7.デーモンのコントロール

 基本的に Devuan と同じやり方です。Devuan、MXLinux、antiX は皆同じ SysV 系の init を使っています。その場合には insserv コマンドでデーモンコントロールができます。なので、やり方は基本的に devuan と全く同じです。簡単にできる、すなわちオケです。
なお、Devuan のチャプタでは GUI について調べてなくて書きませんでしたが、MX では(きっと Devuan も)GUI でコントロール出来ます。普通にやるならそっちの方が簡単ですね。






Sec-8.GUI を落としてコンソールで簡単に利用できるか?

 MX はありがたいことにデスクトップにマニュアルが貼り付けてあります。
早速これを見ました。すると、ちゃんと runlevel の説明があります。読んでみると、ごく普通の Linux 。
runlevel 5 が GUI で runlevel 3 が非 GUI モード。
なので、/etc/inittab の最初の方にある default runlevel (最初は 5 になっている)を 3 に変えてリブートします。
狙い通り、GUI なしのコンソールで立ち上がりました。でも(笑)見るとログインメッセージ付近に、変なエラーメッセージが出てます。
エラーメッセージは以下の具合

[fail] startpar: service(s) returned failure: plymouth ... failed!

要するに、display graphical boot をコントロールするための plymouthd デーモンへ信号を送るのに失敗している、とかってことらしい。
なので、問題はなさそう。なぜなら、非graphic mode なんですから。
更に、ここからログインすると、また(笑)変なエラーメッセージが出ます。以下の具合

systemd-logind[3000] Failed to start user service, ignoring: Unknown unit: user@hoge.service

ユーザのログインをつかさどる systemd-logind が何か文句を言った後、無視する(ignore)と言っています。
どうやら GUI 関連のようで、問題はなさそうです。(ignoring と言っているので)
なので、基本的に非 GUI (コンソール状態)で普通に利用できると思います。ま、エラーメッセージは出るけどオケです。(笑)


 一旦非 GUI モードで立ち上がると、問題なくサーバに仕立てられそうだし、こんなつまらないエラーを出すままリリースするのって、なんだかもったいない気がします。ちょっと残念・・・




Sec-9.DAT ドライブは普通に使えるか?

 問題なく使えます。今、私はUSB-DAT72 ドライブを使っています。(たまに)
ドライブを USB に接続して電源を入れると、/dev/st0 が自動的に出来ます。後は

$ tar tvf /dev/st0

などとやると、DAT72テープに収めたファイルが読めます。当然、書き込みも出来ます。オケです。

 今時テープドライブ使ってデータ保存するのはシーラカンスですが、結構便利なのでたまに使います。
コンピュータと離れたところ(と言っても1−2m離れた本箱とか・・)にテープメディアで保存するので、割合と手堅い保存方法です




Sec-10.シリアル回線使ってルータ管理できるか?

 出来ます。問題ないです。

 Ubuntu-16.04LTS ではシリアル回線がちょいとおかしくて、一旦  chown root.root /dev/ttyS0 などとしないと使えませんでした。バグがありました。また、使えるようになった後でも、USBに繋いだシリアル回線を経由するときは速度指定(-s 9600)をする必要がありました。

 Debian-10.1 や Devuan-2.0.0 では、chown やる必要もなく、速度指定する必要もなく、シリアル回線が使えます。

 MX Linux では chown はやる必要がありません。使えます。
ただし、USBに繋いだシリアル回線は

$ cu -l /dev/ttyUSB0  -s 9600

と速度指定する必要がありました。それで、別段問題はないですけどね。




Sec-11.Apache、postfix、guile、lua は簡単にコンパイル・インストールできるか?

 全部まとめて、書いておきます。
Apache、Postfix を自分でコンパイル・インストールしたいのは上記 a. の利用です。セキュリティやバグフィックス版を早くサーバに入れたいということです。
guile、lua は上記 b. の利用です。単に、最新のものを使いたいというだけの理由です。
結論はオケです。Debian、Ubuntu、Devuan、MXLinux、antiX 全部同じです。Chap-7. に書いたとおりでいけます。
なお、mail コマンドはありません。そこは devuan とは違います。LAN 内送受信したメールの読み書き(サーバソフトの動作確認時)に、mail コマンドをインストールする必要があります。


mail コマンドのインストール
前に、Ubuntu で apt install mail として、ひどいことになりました。mail コマンドだけでなく、いきなり postfix までインストールし始めました。
せっかく自分がコンパイル・インストールした postfix が(もっと古いバージョンの postfix に)上書きされちゃいました(汗)。
私の使い方だと mail のソースを持ってきてコンパイル・インストールするのが無難そうです。
探せばあるものです。GNU のサイトに mailutils-3.7.tar.gz って、ソースがありました。
コンパイル・インストールは極めて簡単でした。これを入れて、無事に LAN 内送受信のメールの読み書きができるようになりました。





Sec-12.Windows 代替としての利用(ATW)

 Devuan のときは書きませんでしたが、Windows 代替(ATW)として使いやすいかどうか、私の印象を少しだけ書いておきます。つまり、冒頭に書いた c. の使い方。

プリンター、スキャナ
 最初から、私の機器(Epson PX-048A)が認識されます。wifi 経由でプリンタもスキャナも使えます。
2016年夏に Ubuntu で試したときは、まだ機種が認識されなくて(出たハナの機器だった)、自前でエプソンサイトからドライバソフトをダウンロードしました。それを入れて、プリンタ、スキャナが動きました。
2019年版の MXLinux は最初から私の機器に対する必要なドライバ類を持っています。なので、先にプリンタを設定しておいたら、スキャナは設定すら不要で使えました。おそらく、特に新しい機器でない限り、設定に苦労することは無いと思います。
すごく良好です。

ブラウザ
 デフォルトで Firefox が入ってます。バージョンが随分と新しい。どうも、MX は Firefox と Libre-office については新しいバージョンにこだわりがあるみたいです。
試してみたら、この Firefox でアマゾンプライムの映画が見られました。(user agent switcher 使わなくても)
その一方で、Google-Chrome については、パッケージインストーラにその名前があるのですが、うまく入りませんでした。インストールエラーとなります。ま、Firefox でプライムが見られるので、Chrome は不要ってことにしておきます。

メーラ
 sylpheed と sylpheed-i18n が apt install で入ります。うまく動きます。快適なメーラだと思います。

オフィス
 Libre-Office がデフォルトで入っていて、全然問題なしです。バージョンはかなり新しいです。

画像ソフト
 Gimp がデフォルトで入っていて、問題なく動きます。十分良好です。

パッケージのアップデート
 GUI の updater が常時監視していて、アップデート対象があると「やるかい?」って聞いてきます。
インストール直後にやったら、数十個のアップデートがありました。景気良くいきます。
こういうのは、ATW 前提だとすごく良いと思います。
一方で、上記 a. や b. の利用だと、むしろアップデータは動いてないほうが良いと思います。自分独自に色々入れるし・・・。
幸い、アップデーターはデーモンなので、常時動かしたり、止めたり出来ます。C. の利用なら当然常時オンですね。

以上です。



 派生元である Debian は GNU/Linux を名乗るくらいなので、いわゆる「プロプライエタリ」とかってソフトに対しては、どっちかと言うと排他的です。Devuan も同じような感じです。
一方でこの MX Linux は(antiX も)プロプライエタリに対して割合と寛容な姿勢で、つまり、「使えるものは使えば良いだろ」って姿勢のようです。私自身は、そういう姿勢を好ましく思います。
 こんな感じで、ATWとしても十分に充実している・・・・と思います。
なお、私はそんなにたくさんのソフトウェアを使いこなす方ではありません。気になる方がいたら、各自お試しください。
ATW 利用について、Debian や Devuan も十分に充実してますが、この MXLinux も Ubuntu に近いくらい、充実していると思います。





Sec-13.全体を通しての印象

 このセクションは私の個人的な印象のみです。

個別に書きます
a. の利用について・・・・・良好です。ただし、ちょいと不満もあります。コンソールで、どうでも良いようなエラーを出すとか、カーネルコンパイルに必要なパッケージがデフォルトでは不足しているとか。

b. の利用について・・・良好です。

c. の利用について・・・・とても良いです。申し分無いと思います。
デスクトップはそれなりに格好良いし、パッケージもたくさんあるし、ものによっては随分と新しいパッケージだし、GUIの 設定等ツールもいっぱいあるし、アップデータも活発にやってるし。ATW の利用に力を入れて仕上げてます。


補足
 MX Linux 18.3 をリビングルームで使うノートパソコンに入れてみました。
都合があって、ノートパソコンのネームサーバを設定変更したくなりました。いままで、AとBのネームサーバを見ていたのを、Aだけ見るようにするとか、そんな感じの設定変更です。
こういう変更は、systemd 採用している Ubuntu 18.04 では難しいです。それで、MX Linux が ATW に好印象で、かつ色々な設定変更が容易だったので利用してみた次第です。調子良いです。