2020年11月20日金曜日

中華製ビデオキャプチャーボードでChromebookの画面をキャプチャする

衝撃的な値段の例のビデオキャプチャボードが有名なようですが、そんなこととはつゆ知らず、よんどころない事情があってAmazonで安価なものを探していたところ、電源もドライバーのインストールも必要なく、さまざまなOSに対応していると謳ったビデオキャプチャボードを見つけて即買い。例のビデオキャプチャボードの2倍くらいのお値段でしたが、USBコネクタ部分がケーブルになっているので負荷が軽減できると考え、「良い買い物をした」と自分で納得させながら使ってみることにしました。

「よんどころない事情」というのは、「Chromebookの画面をキャプチャして教材を作る」ということ。GIGAスクール構想の関係で1人1台のChromebookが導入されるのは良いのですが、現場の環境に合わせて、あるいは授業や教材に合わせて簡易なマニュアルやワークシートなどの教材を作ってあげなければなりません。ところが、セキュリティで固められたChromebookは、スクリーンショットを外部ストレージに保存することができません。クラウドを使っているので、その中に教材類を入れておくという使い方を想定しているのかもしれませんが、今回導入されたChromebookとクラウド上でファイル共有が許されている授業用PCは、授業を行う全員の教職員分はありません。(学級数にも満たない)その上、教職員もChromebookの使い方を研修しなければならない状態のため、教職員向けの研修教材(あまり児童には知られたくないことも含まれる)も作らなければならず、これをクラウドに置いておくことは管理上の問題が生じるので避けたいところです。

そこで、校務用のPC(教職員にほぼ1人1台分導入されている)でも教材づくりができるように、Chromebookの画面をキャプチャするビデオキャプチャボードを使ってみることにしたわけです。これまでは、画面をデジカメで写真にとってごまかしていた(!)のですが、写真だと光の具合できれいに見えないし、レンズの関係で水平・垂直がきれいに出ないので加工がしにくいという欠点があります。今回使ったビデオキャプチャボード(VENKIMというメーカー(セラー)の商品)は、HDMIからの信号をUSBカメラのように変換するもので、Webカメラ(UVC)に対応しているソフトで観ることができます。VENKIMは中国の企業のようですが、商品自体に商品名や型番等の記載はなく、似たような形状のものがたくさんあることからどれも似たようなものなのではないかと推察。カメラの名前として「HD31(video)」と出てきますが、後でわかったことですがこの名前は同じような機能を持つ他のメーカー(セラー)のものでも同じなので、形状だけでなく中身も似たようなものなのだと思われます。Amazonの商品ページに書かれていた仕様は以下の通りです。

  • PS4XboxNintendo Switchなどのゲーム機(HDMI出力のある各種機器)から、ビデオ/音声をPCに表示したり、録画/ライブ配信(ライブ)したりすることができる。
  • USB 2.0
  • HD 1080p/30fps
  • 最大入力解像度:3840x2160@30Hz
  • 最大出力/録画解像度:1920x1080@30Hz、1280x720@60Hz 1600x1200@60Hz
  • WindowsMacAndroid OSで使用可能
  • VLCメディアプレーヤーOBSスタジオXSplitなどのライブビデオ録画アプリケーション対応
  • プラグアンドプレイ対応

今回は、Webcamoidで使ってみることにして、試しにこれを使ってRaspberry PiのHDMI出力をMacBook ProにインストールしたWebcamoidで見てみましたが、特に問題なくRPiの画面をキャプチャすることができました。これはなかなか便利です。

早速これをChromebookで試してみようと思ったのですが、HDMI出力がなかったので、USB 3ポートかUSB-CポートからHDMI出力に変換するケーブルが必要だということがわかりました。またまたAmazonで探してQGeeMというというメーカーのUSB-CからHDMIを出力する変換ケーブルを購入しました。ようやくこれでChromebookの画面をキャプチャして画像ファイルとして保存することができるようになりました。多少の遅延はありますが、ライブ配信をするような使い方をするわけではないので、十分実用的だと思います。今後は、これらに類似したものを公費で購入して、先生方にも使っていただこうと思っています。

2020年10月25日日曜日

自作PC(B365M-HDVとi3-9100)のケース(Core 1100)を交換する→GeForce GT 1030を使えるようにする

新しい自作PCを使えるようにする続きです。自宅にあった古いLindowsのPCケースに入れて一応完成させた自作PCでしたが、電源スイッチ周りがヘタっていて反応がイマイチな状態になっていることに気づきました。否、そもそもこのPCケースを使わなくなった理由が、何となくスイッチの動きが鈍くて使うのをやめていたということをすっかり忘れていたのでした。この際だから、もうしっかり作り込んでしまおうと考えて、PCケースを新調することにしました。

購入したのは、Fractal DesignCore 1100というPCケースで、AmazonB365M-HDV(Micro ATX)マザーボードのサイズに合うものでできるだけ安いものを選んで購入しました。(よく調べたら、スウェーデンの会社なんですね)黒の筐体に白いケースFANとPCI-eスロットのカバーも白。センスの問題だと思うけれど、これはこれでアリかもと思いました。地味にありがたいのは、ネジ類とケーブルを束ねるロックタイが付属していること。(私の場合は、両方とも自宅にあるからなくても大丈夫なんだけどね)

ちょっと手間だけれど、今まで使っていたPCケースからパーツ類を外します。そのまま新しいPCケースに入れて使うものと、捨てるものと、別の機会に使うものとに分けます。古いPCケースの電源スイッチは、中のスイッチ本体は特に問題なし。PCケース側のスイッチパネルのバネ部分がダメになっていて、キシキシと音がするし動きが鈍い。経年劣化ということで捨てることにしました。気を取り直して、PCの組立を始めます。PCケースを新しくするので、ついでに他のパーツも追加購入してみました。今回追加で購入したパーツは以下の通りです。

  • 80+ BRONZE電源…FSPOwltech 500W ATX電源(RA-500B
  • 2.5inch HDD…Seagate Barracuda 1TB(ST1000LM048)
  • DVD-RWドライブ(9.5mm)…TSST(東芝サムスン)TS-U633J←生産中止?詳細不明
  • ビデオカード(PCI-e)…MSINVIDIA GeForce GT 1030 2GB OC(VD6348
  • 無線LANカード(PCI-e)…Ziyituod AC 1200Mbps WiFi Card with Bluetooth 4.2(WIE7265

Amazonで安く売っているのを狙って購入していますので、特にこだわりはありません。とは言え、動かないのは困るので、レビューやその他のサイトでチェックをして、評判の悪いものは避けています。

ということで、古いPCケースから全てのパーツを取り除いて、新しく組み直します。あまり作り込んではいなかったものの、電源を交換するので全てのケーブルを外すところからはじめてかなり時間がかかりましたが、マザーボードの移動から各種パーツの移動・配線を済ませ、動作確認をするところまで組み上げました。

いざ電源を入れて動作確認をしようとしたところ、マザーボードの起動画面が表示された後、画面がブラック・アウトしたまま何も表示しなくなりました。ビデオカード(GeForce GT 1030)の挿し方が悪かったのかもしれないと考えて、もう一度挿し直しましたが改善されませんでした。仕方がないのでビデオカードを外してIntel内蔵グラフィック(マザーボードのHDMI出力)を使って起動させると、問題なくLinux Mint 20が表示されます。(ビデオカードを抜かないとマザーボードのHDMI出力からも何も映りませんでした)そこで、「ソフトウエアの管理(ソフトウエアマネージャ)」で「NVIDIA」と「NVIDIA driver」を検索し、「Nvidia-settings」「Nvidia-prime」「Nvidia-driver-450」「Nvidia-utils-450」を入れてみました。(「Nvidia-driver-450-Server」もインストールしようかと思いましたが、「Nvidia-driver-450」とバージョンが若干違うことと競合する感じもあるのでやめておきました)
#現時点での最新版が「450」シリーズなのですが、この選択が正しいかどうかは保証の限りではありませんので、お試しいただく場合は自己責任でお願いします。

ここで改めてビデオカードを挿して起動すると、問題なく画面が表示されました。ドライバマネージャを開いて見てみると、使用できるドライバの一覧も表示されるようになっていました。これでGeForce GT 1030からの画面表示の問題は解決しました。

内蔵した無線LAN+Bluetoothカード(Intel Dual Band Wireless-AC 7265搭載)も問題なく動いていて、無線LANへの接続やBluetoothのペアリングも問題ありません。残すところは、メインのSATA SSD以外に載せている256GBのM.2 SSDと1TBの2.5inch HDDをどのように活用するかということが課題です。他にも動作確認できていないところがあるので、時間を見つけて確認していきたいと思います。

2020年9月21日月曜日

カブトムシの世話(2020初秋)〜今年は少数精鋭で

我が家のカブトムシコンテナですが、8月下旬には成虫がほとんど死滅してしまって慌ただしい餌やりシーズンが終了していました。今年は、子供たちに観てもらえるように学校にも貸し出したり、土化したマットを花の栽培に使ったりと需要があってよかったのですが、気になっていたのは”メスが多かった”ということ。羽化した個体が出てきた頃から気になっていたのですが、メスばかりが出てきてオスは数頭しか目にしませんでした。そんな中、子供たちに観せるのにメスばかりではどうかと思って対にして持っていきましたが、オスを探すのに苦労するくらいでした。オス・メスのバランスが悪いと卵が少なくなる気がして、とても気になっていました。

9月に入り、卵から孵化して1齢虫から2齢虫あたりになってから世話をしようと考えてしばらく放置しておりましたが、4連休の雨の心配がなさそうな日を選んで作業をしました。

まずは、マットの様子を確認します。腐葉土が土化してしまっているところが多く、餌が少ない状態だったためか、3頭ほど表面近くまで出てきてしまっていました。成虫飼育の後だったので朽木を無造作に表面に置いていたため、これを食べに来た可能性もあります。土の塊を砕きながら確認していくと、いつもよりフンが少なめな状態でした。出てきたのは、1〜2齢虫程度の幼虫が35頭程度。今までと比べて半分くらいということになります。やはり卵の数が少なかったようです。しかし、これで飼育がしやすくなりました。

今回は、これまでの反省を生かしてできるだけマットを多く入れ替えることにしました。今まで、あまりにも無計画に(生き物が相手なので仕方がないところはあったのですが…)マットの様子を見ながらくぬぎマットと腐葉土を購入して使っていましたが、今回はあらかじめ使う量を決めておきます。35頭ならコンテナ飼育で十分なはずなので、基準となる量を測っておきたいと思ったからです。

1回のマット交換で、くぬぎマット10L×2袋=20L、腐葉土45L×1袋で、初秋と冬前、春の3回のマット交換を予定して、くぬぎマット60L、腐葉土135Lを用意することにしました。今回の交換で1回分を使いましたが、くぬぎマットは春までの分を確保してあります。(安価に入手できるホームセンターなどでは、カブトムシのシーズンが終わると店頭からなくなるので)腐葉土は、比較的容易に入手できるため、時間を見つけて不足分を買ってこようと思っています。

2020年9月1日火曜日

新しい自作PC(B365M-HDVとi3-9100)のケースFAN交換とAUDIOの設定

先日、サブPCとして組み上げたASRock Micro ATX B365M-HDVIntel Core i3-9100で作った新しい自作PCですが、メインで使っている自作PCのメンテナンスが終了したので不具合の調整をはじめることにしました。

気になっていたファンからの音は、前面につけた吸気ファン(4cm2連)の問題であることが判明し、別のものへと交換することにしました。(ケースのデザインの関係で、これ以上の大きさのファンを付けることができません)自宅に在庫していたのは、ペリフェラル電源から給電するものとマザーボードのケースFANコネクタから給電するものの2種類でした。はじめにつけていたものは、ペリフェラル電源から給電するもので、FANコントロールが使えないので常時全開で回ります。これがうるさい原因と考えて、ケースFANコネクタから給電するものに取り替えました。それでもうるさかった(よく聞くとカラカラと異音がする)ので、マザーボードのBIOS設定の中からFANの回転数制御の設定ツールを探して設定してみました。すると、音が静かになったかと思ったら、給電が止まってしまってマザーボード上でも「N/A」となってしまいました。これでは使い物にならないので、この2種類を処分して新しいものを購入することにしました。

買ったのは2連のものではなく、普通の4cm3ピンの静音ファン(長尾製作所取り扱いのX-FanXinruilian社製)40mm(RDL4010S))を2つ。これをFANコネクタから分岐するケーブルを使ってつけることにしました。結論から言うと、問題なく動いてくれました。動作音も静かで、低速静音ファンを謳っているだけのことはあります。むしろ、KEIANの520W電源(KT-520RS)のファンやCPUファンの方がうるさいくらい。
(電源は、静かなものに買い替えてもいいかも…)

次に、マイク&ヘッドホンジャックの動作確認をします。マザーボードのAUDIO端子にケースのコネクタケーブルを挿しているところまでは間違いないのですが、うまく動作していないようなのです。マザーボードの問題か、Audio端子が壊れているのか、Linux Mint側の問題なのか、よくわからないのでいろいろと試してみることにしました。

まず、Mintのメニューから「設定」→「サウンドの設定」を開いて内蔵オーディオの設定がどうなっているか確認しました。すると「無効オフ」となっていました。これは、Linux Mintが内蔵オーディオを認識しているものの使えない状態であるということ。ドライバーが必要なのか、それとも、そもそもLinuxでは使えないのか…。B365チップセットを載せているマザーボードを買ってしまったのがいけなかったのか…といろいろ考えながらさらに調べていきました。

Mintメニューから「システム管理」→「システムレポート」を見ると、Audio:欄に「Intel 200 Series PCH HD Audio」とあり、driver:には「snd_hda_intel」が使われているという記述があります。でも、音が出ません。そこで、他のもので音が出るかどうか確認してみることにしました。USBからAudioに変換する「3D SOUND(こんな感じの)」を使うと音が出る(「サウンドの設定」の「ハードウエア」に項目として追加表示される)ことが確認できました。Bluetoothドングル(4.0対応の中華製品)を使ってダイソーの500円Bluetoothスピーカー「SR9910(こんな感じの)」につないでも音が出る(こちらも同様に項目が追加表示される)ことがわかりました。(両方とも「スピーカーのテスト」ボタンをクリックしてテスト音が出ることを確認しました)

もしかすると、ドライバの問題かもしれないと思って「ドライバマネージャ」を開いてみましたが追加ドライバはありません。続いて、ALSAドライバ群が上手く動いていないことを疑って、「ソフトウエアマネージャ」から「Alsa-base」を探して削除→再起動→インストール→再起動をやってみましたが、特に変化はありませんでした。

こうなったら、マザーボードのチップセットの問題かもしれないと思って、もしかすると設定をいじれるのではないかと考えました。PCを再起動してマザーボードのBIOS設定を起動し、「詳細モード」を選択して「アドバンスド」→「チップセット設定」と進んでそれらしい設定項目を探しました。すると、内蔵オーディオ関係の設定項目がありました。「内臓HDオーディオ」という項目の下に「フロントI/Oパネル」を設定する項目があり、これを「HD」から「AC 97」に変更しました。設定を保存して起動すると、「サウンドの設定」→「ハードウエア」から内蔵オーディオが使えるようになりました。これで、ヘッドホンや外部スピーカーから音が出せるようになりました。

続いて、マイクの検証をします。先にサウンドの設定で「入力」タブから入力の音量を適切な値に設定しておきます。(入力レベルを見るとマイクが音を拾っていることがわかります)次に「コネクター」を「フロントマイクロフォン」に設定しておいて、予めインストールしておいたAudacityを起動しました。あとは録音ボタンを押して録音し、再生したときにスピーカーから音が出れば成功です。これも難なくクリアできました。これでようやく使える環境が整いました。

別の問題があって、完全な移行は難しい状態ですが、時間を見つけて調整していきたいと思っています。

2020年8月12日水曜日

Linux MintでLAN専用Webサーバ(Apache2・php・MySQL)の実験環境を構築する

 過去に似たようなことに取り組んでいたのですが、思うところあって再度の挑戦をすることにしました。一瞬、ファイルサーバとして使っているCeleron J1800マシーンに実験環境をと思ったのですが、非力な上に不具合が生じた場合ファイルサーバとして使えなくなるリスクを考え、取りあえず先日メンテナンスをしたメインで使っている自作PCLinux Mintで実験的な環境を作ってみることにしました。

以前は、apt-get(今は「apt」のみ)コマンドを使って必要なものをインストールしましたが、今回は(ダメ元で)「ソフトウエアマネージャ」を使ってみました。インストールしたのは、以下の通りです。(順番も大事なので上から順に入れました)

  1. Apache2(2.4.x)
  2. php(php 7.2.x)
  3. mysql(MySQL 5.7.x)※ServerとClient

ここまで入れて再起動してから、「phpMyAdmin」も同じく「ソフトウエアマネージャ」で入れました。インストールの最中に、Webサーバは何を使っているか(Apache2)、dbconfig-commonで設定するか(チェックして「next」ボタン)、ユーザーはどうするか(MySQLの設定はしていないのでroot)というようなことを聞かれますが、Apache2とphp、MySQLが動作していて設定が正しくないとインストールに失敗をします。(再起動したのは、この3つを動かすため)

次に動作確認をします。「端末(ターミナルエミュレータ)」を開いて次のようにコマンドを打ち込むと、それぞれレスポンスが返ってきます。

$ apache2 -v
$ php -v
$ sudo mysql -V
※mysqlだけは、sudo(管理者権限)でないとうまく動きません。(そういう設定にしてあるからですが)mysqlのオプションの「-V」は、大文字です。

#ついでに「perl -v」でPerlの動作確認もしましたが、Perl 5が問題なく動いていました。

次に、ブラウザでの確認をします。はじめに、「http://localhost/」でWebサーバが動いているか確認します。何らかのデフォルトページ「It works!」が表示されたらWebサーバとして動いています。Linux Mintでは、「Apache2 Ubuntu Default Page」というページが表示され、その中に各種ファイルの置き場所まで丁寧に書かれていました。これに従って、次の動作確認をします。先程のページから、Webサーバのデフォルトのページがどこにあるか(今回は、「/var/www/html/」でした)を確認して、その中にphpinfo.phpという名前(任意でわかりやすければ「phpinfo」のところは何でも良い)のファイルをつくり、以下のように記述します。

<?php
phpinfo();
?>

これを、Webサーバのデフォルトのページがあったフォルダに入れておきます。管理者権限が必要なので、sudoで作業をすると良いと思います。このままでは動作しないので、今度は「パッケージマネージャ」から「libapache2-mod-php7.2」というモジュールを探してインストールします。このモジュールは、先程の「ソフトウエアマネージャ」では出てきません。面倒でなければ「端末(ターミナルエミュレータ)」から以下のコマンドでもインストールすることができます。
(今回の作業は、The modern stone age.さんの【Ubuntu 18.04 LTS Server】Apache2とPHP7.2を動かすを参考にしました)

$ sudo apt install libapache2-mod-php7.2

ここまでできたら、Webブラウザで「http://localhost/phpinfo.php」を開いてphpの設定を確認します。phpが動いていることを示すインフォメーションページが表示されたら、Apache2とphp7.2がつながっていることを表しています。最後は、MySQLとの連携ができているかを確認します。先程インストールしておいた「phpMyAdmin」を起動します。Webブラウザで「http://localhost/phpmyadmin/」を開いても良いし、Mintメニューから「プログラミング」→「phpMyAdmin」とたどっても開くことができます。「phpMyAdminへようこそ」のページが表示されたら成功です。
(同【Ubuntu 18.04/16.04 LTS Server】phpMyAdminをインストールを参考にしました)

これで、それぞれのシステムを動かして連携させるところまで確認できました。この後は、実際の運用を考慮した細かな設定をして、より使いやすい環境にしていきたいと思います。余談ですが、この作業の過程でXAMPPという道具(ソフト)を見つけました。LinuxでもmacOSでも動くようなので、こちらもちょっと試してみようかと思っています。

2020年8月9日日曜日

メインで使っていた自作PCのメンテナンスとアップグレード(Celeron G540→Core i3-3240)

前回の続きです。新しいPCを自作して、メインで使ってた自作PCと交代したので、メンテナンスをはじめました。

まずは異音がしていたファンを特定します。どうやら、ケース前面についていた12cmの吸気ファンがヘタっていて、ときどき異音がすることがわかりました。これを自宅に在庫していたScytheの12cmファンに換装することにしました。それにしても、ケース内はホコリだらけ。SSDへの換装のときも掃除をしたのですが、ホコリが溜まりやすくなっているようです。そこで、これも自宅に在庫があった8cmファン(X-FANブランド)を排気の向きで背面に付けました。マザーボード(GIGABYTEGA-B75M-D3H)のFANコネクタは1つしかないので、2本に分岐するケーブルを使いました。

それ以外の構成はそのままにしようと思ったのですが、2.5inch750GBのHDD(WDの青)の装着がケース底面(何故かそんなところに装着用のビス穴がある)なのが気に入らず、余っている5.25inchベイ用のマウントキット(2.5inch*2、3.5inch*1)を購入して装着しました。電源は、玄人志向500W 80+ BRONZEが載っていたので、これはそのまま使うことにしました。

後は、CPUファンを外してグリスを塗り直してもとに戻し、動作確認をしたらメイン自作PCとして使おうと思ったのですが、Amazonさんから悪魔の囁き(大げさ)が聞こえてきました。この自作PCには、IntelCeleron G540(2コア2スレッド2.5GHz Sandy Bridge)というCPUを載せているのですが、次世代のCore i3-3240(2コア4スレッド3.4GHz Ivy Bridge)が3,000円を下回るお値段で手に入るというではありませんか。 しかも、Celeron G540の方がお値段が高い。どうしてこんなことになっているんだろうか、何かの間違いか罠なのか、俺は試されているのか騙されているのか…。「ポチッ」

ということで、Celeron G540からCore i3-3240へ換装し、動作確認をします。Celeron G540は、グリスがすっかり乾いて固くなっていました。CPUファンは両方ともそっくりでしたが、電流(A)が違ったのでi3-3240付属のものを使いました。一応電池を抜いて設定をクリアしてからもう一度電池を入れて電源を入れました。この自作PCのSSDにはLinux Mint 19.3が入っていますが、全く問題なく動いてくれました。CPUファン、ケースファン(2つ)、電源ファンのいずれも静音で、全く音がしないと言っても過言ではないくらい静かになりました。(激安CPUの中には、偽装品もあるらしいので購入する際は信頼できるところからの方が良いようです)

システムモニタで確認すると、CPUは無事にCore i3-3240と認識されていて、CPU数は4つ(2コア4スレッド)と認識されていました。メモリは、2GB2本と4GB2本の4本が挿さっていて、合計12GB(一部グラフィックと共有)ですが特に問題を感じていません。気持ちの問題かもしれませんが、速くなった印象です。やりたいことが増えてきているので、いろいろテストする際にも活用していきたいと思います。

ついでに、自室に何本も取り回しているLANケーブルでラッチが壊れているものが数本あったので、修理することにしました。久しぶりにカテゴリー5のケーブルを修理しましたが、細かい作業は見にくくて苦労しました。後で調べたら、ラッチだけ復活させるものが出回っている(例えばこんなの)んですね。orz

2020年8月6日木曜日

久しぶりにPCを自作(Core i3-9100とB365マザーで)してLinux Mint 20で動かしてみた

思えば、このところ自分でパーツを集めてPCを作るという作業をしていないことに気づきました。今メインで使っている自作PC(Linux Mint 19.3で動作中)は、2012年末に作ったもので、その後パーツを追加したりケースを新しくしたりSSDに換装したりして、現在でも快適に動いています。このPCを作った翌年に購入したMacBook Proは、既に次の代への移行を済ませましたし、少し時期をずらして買い替えているiMacも2017年モデル(ブログの記事がないのは、未だに微妙な不具合が解決しておらず、ほぼサーバ用途としてしか使っていないことが原因です。弄り倒している時間もない。orz)なので、メイン自作PCがかなり古いことを気にしていました。

とは言え、この自作PCは不安定でもなければ不満もない(ときどき起動時にファンあたりから異音がするけど…)ため、しばらくはこのまま使っていくつもりではあります。しかし、突然の故障に備えて新しいPCを組んでおくことにしました。

今回選んだパーツは以下の通り。

電源は、以前に自作したパソコンで使っていた(KEIANKT-520RSという520W電源)もので、比較的新しいものだったため、そのままを使うことにしました。マザーボードの電源は24ピンで、CPU電源が8ピン。すべてこの電源ユニットで対応できました。ゲームをやることもないので、グラボは載せません。これを、自宅にあったケースに詰め込みました。(マウスコンピュータLindowsマシーンで使われていたもの)

5.25inchベイにDVDドライブを載せようかと思いましたが、自宅在庫がSlim ODD対応のDVD-RWドライブしかなかった(IDE接続の古いやつは見つけたけど)ので、これを5.25inchベイに載せるマウントキットを購入しました。聖仁商事で取り扱われているICY DOCKというブランド(CREMAX社)のMB343SPOというものです。これに、Slim ODD対応のDVD-RWドライブと250GBのHDDを装着し、5.25inchベイに取り付けました。起動用のSSDは、在庫していたものから探し出して3.5inchに変換するマウントアダプタに取り付けて、3.5inchベイに取り付けました。FAN系は、CPUファンと背面ケースファン(古いやつがヘタっていたので交換した)1つ着けました。4cmの小型2連ファンも前面に着けてありました。

もう1つの5.25inchベイには、USB 3.0&各種カードリーダー(KKmoonというメーカーのもの)を装着しました。これで、フロントでUSB 3.0が使えるようになりました。

この構成で電源を入れてBIOSの設定をしました。ASRockのマザボは超久しぶりにいじりましたが、マウスで快適に操作できて使いやすくなっていました。日本語化にも対応していて使いやすい。(浦島太郎的発言?)OSは、Linux Mint 20(64bit)にしました。動作は快適だし申し分ありません。ときどき、高周波のノイズ(コイル鳴き?)が聞こえたり、マイクジャックとヘッドホンジャックの調子が悪かったりするので調整が必要なのですが、メイン自作PCのメンテナンスの間だけ仮メイン自作PCとして活用しようと考えています。

2020年7月24日金曜日

カブトムシの世話(2020夏)〜小ぶりなカブトムシが成虫に

5月の世話から2ヶ月半くらいになりましたが、6月の末頃からカブトムシがゴソゴソいい始め、羽化してきたことがわかっていました。例年に習ってカブトムシゼリーを投入。

昨年は、毎日10〜12個程度消費されていましたが、今年は、7月に入ってもなかなか梅雨が明けず、気温がそれほど高くなっていない(湿度が高いから不快なのだけれど…)ためか、それとも個体が小さいものが多いためか、そもそも蛹化不全や羽化不全で羽化数が多くなかったのか…いずれにしてもゼリーの減り方は例年の6割くらいで、毎日与えているゼリーは7個くらい。それでも余ることもあって、餌の調整が難しいのが悩みどころです。

写真には撮りませんでしたが、蛹化不全の個体が2体と羽化不全の個体が1体ほど、腐葉土マットの上に出ていたので処分しました。羽化したものは、学校の教材としてつがいで提供したり、この後に産卵された卵から幼虫の観察をしてもらったりすることも考えています。気をつけなければならないのは、新型コロナ対策。集まって見ないように注意しなければなりませんので、持っていく方法にも工夫が必要だと思っています。
(どのようにするかは、まだ決めかねています)

今年は、夏休みが短くなってしまって、子供たちの楽しみがだいぶ減ってしまっているので、こんなことでもお手伝いできたらと思っているところです。

2020年7月2日木曜日

Orange Pi OneをRaspberry Pi Imagerで作ったArmbian起動SDカードで動かす

Orange Pi(H3 Cortex-A7 Quad-core 1.2GHz)は、Raspberry Piのようなシングルボードコンピュータを作っているメーカーですが、RPiに比べて様々なバリエーションのシングルボードコンピュータを開発・販売している上に、価格も安く提供されていてちょっと使ってみたいと思っていました。2017年のはじめに、Amazonで取り扱っているのを見つけてケースと電源ケーブルがセットになっているOrange Pi Oneを衝動買い。とは言え、RPiに比べて知名度が低くて必要な情報を見つけるのが難しく、自分がMacユーザーということもあってうまく動かせず難儀をしました。(しばらく放置モード)そんな中、コロナ禍の関係で自宅ですごす時間が多くなり、家の中でやれることは限られているのでいろいろと片付けをしました。すると、購入したまま放置していた、Orange Pi Oneと同ZeroNano Pi NEO2が出てきました。とりあえず手始めに、Orange Pi Oneを動かしてみることにしました。

そもそもの問題は、MacではOSイメージ(imgファイル)をSDカードに入れて起動可能なSDカードを作ることが難しいということ。挫折した時期のOS(Armbianを使いました)は、安定性も悪かったようですが、それ以前に一般的にはRufusというツールを使って起動可能なSDカードを作るらしいのですが、このツールはWindowsにしか対応しておらず、macOSでは動きません。以前にもやったことがある「ddコマンド」を使ってやる方法が思い浮かぶのですが、それでもうまく動かなかったのでチャレンジする気持ちが薄れてしまっていたのでした。

そんな私に「天の声」が聞こえました(嘘)。もしかして、「Raspberry Pi Imager」でOrange Pi Oneの起動SDカードを作ることができるのではないかと。思いついたらやってみるしかありません。ArmbianのダウンロードサイトからOrange Pi One用のArmbian OSイメージファイル(今回は、Busterを選択)をダウンロード(Direct Download)して使うことにしました。圧縮された形でダウンロードされるので、「The Unarchiver」あたりで解凍しておきます。

Raspberry Pi Imagerを起動して、Operating Systemの「CHOOSE OS」をクリックして「Use custom」を選択します。すると、imgファイルなどが選べる窓が開くので、Orange Pi One用のArmbianのimgファイルを選択します。次に、SDカード(16GBのSDカードをSDFormatterでフォーマット済み)を挿してSD Cardの「CHOOSE SD CARD」をクリックして挿したSDカードを選択します。後は、「WRITE」をクリックしてしばらく待つだけです。これをOrange Pi Oneに挿して電源を入れると、無事に起動してくれました。

ワクワク感が抑えられず、何ができるか探ってみることにしました。はじめにroot(初期パスワードは「1234」)でログインすると、すぐにパスワードの変更を求められるので、初期パスワードを入力して、任意の新しいパスワードを入力(2回)します。すると、ユーザーの設定に進むので、自分のユーザー名とパスワードを設定します。(他にも聞かれるけれども[]の付いた項目は入力しないでReturn(Enter)で飛ばすことができるようです)ここまでできたら、自分のユーザー名とパスワードでログインできるかチェックしてみます。無事にログインできたら「reboot」コマンドで再起動して、各種設定をするためにrootでログインし直します。この過程で、不具合があった場合には、SDカードの作り直しが必要な場合もあります。

この後は、お決まりの「apt update」と「apt upgrade」で最新の状態にします。

今回の作業は、「Orange Pi One に Armbian を入れました」、「“Banana Pi”にArmbianを載せました」を参考にしましたが、ここからGUI環境を実現するための試行錯誤が始まりました。残念ながら、まだ良い方法が見つかっていません。書かれているとおりにやっても、最終的に再起動すると何も映らなくなります。動いている形跡があるので、何らかの方法でアクセスすることができれば解決の糸口が見つかるかもしれません。

2020年6月28日日曜日

Raspberry Pi 4Bを使ってみる

コロナ禍の影響もあってか、品薄状態かなと感じていたRaspberry Pi 4Bでしたが、緊急事態宣言が解除された頃には少々値段が安くなっていたので思わず衝動買してしまいました。メモリー4GBモデル単体と、別売りの電源、ヒートシンク、ケース(ファン付き)のセットを一緒に購入。合わせて8千円程度の出費で入手できました。

はじめに、ヒートシンクを取り付けて、ケース(アクリル板が層になっているタイプ)の中に組み込むように組み立てていきました。説明書はなかったのでAmazonの商品ページにあった組み立て手順らしき画像を見ながら作業をしました。最後の1枚には、ファンを取り付けてGPIOの4番(5V)と6番(GND)に電源をつないでケース自体のビス止めをしました。

続いて、起動SDカードを準備します。今までは、NOOBSを使って起動SDカードを作っていましたが、今回は、Raspberry Pi Imagerを使って起動SDカードを作ることにしました。Macで作業をしているため、ダウンロードサイトからRaspberry Pi ImagerのMac版をダウンロードして使いました。ダウンロード後、ディスクイメージファイル(Imager.dmg)を開いて、Raspberry Pi Imagerをアプリケーションフォルダにドラッグ&ドロップします。使い方は簡単で、はじめにSDカード(SDFormatterでフォーマット済み)を挿入してRaspberry Pi Imagerをダブルクリックで起動します。Operating Systemの「CHOOSE OS」をクリックして「Raspberry Pi OS(32-bit)」を選び、SD Cardの「CHOOSE SD CARD」をクリックして挿入しておいたSDカードを選択します。最後に、「WRITE」をクリックして待ちます。(少々時間はかかります)出来上がった起動SDカードをRaspberry Pi 4Bに挿して起動します。ここまで、とても順調にできました。

RPi 4Bを起動すると、いつもの通り各種設定の後にアップデート作業を行います。これも時間はかかりますが、最新の状態にしておくことが重要です。一通りの作業が終わってインストールされているものを確認すると、FullバージョンのNOOBSを使ったときより、かなり限定されたものしか入っていないことがわかりました。ソフトウエアのインストールは、Raspberryメニューの「設定」から「Add / Remove Software」か「Recommended Software」を選んで行います。はじめに、「Recommended Software」から定番のものをインストールして、足りないものは「Add / Remove Software」で探してインストールすることにしました。

〈Recommended Softwareで入れたもの〉

〈Add / Remove Softwareで入れたもの〉

はじめの設定の中でロケールを「Japan」としたためか、Fcitx-Mozcは自動的に入っていました。日本語表示や入力に問題はありません。アプリケーションソフトの動作や日本語化もかなり良いと思います。CUPSを入れたので、共有プリンタでの印刷も問題なくできました。

Scratchは、オンライン版(Chromiumを使用)を含めて3バージョンとも快適に動きました。オフライン版の2と3は、日本語入力も問題なし。普通のPCにLinuxを入れて普段遣いをしている感覚では、全く問題はありません。

タスクマネージャで確認すると、CPUやメモリの使用率もかなり低く、タスクバー(LXPanel)にCPU温度を表示させて測ると、待機状態で40度を超えない程度。少し動かしても50度を超えない程度くらいまでしか上がりませんでした。快適と言っていい感じです。

2020年6月21日日曜日

Raspberry Pi 2BとScratch 3でデジタルサイネージ(シャットダウンスイッチをつける)

前回の続きです。まず、Raspberry Piは、defaultでマウス操作などをしない状態で10分程度でモニタがブランク画面になる(スクリーンを守るための仕様)ようになっています。デジタルサイネージとして使うのですから、当然マウスもキーボードも使いません。(と言うより抜いてしまいます)その場しのぎの方法としては、ターミナルを開いて以下のコマンドを走らせることでブランク画面になることを回避することができます。

$ sudo xset s off
$ sudo xset -dpms
$ sudo xset s noblank

より本格的な方法としては、XScreenSaverを使うと良いようです。まずはインストール作業から。

$ sudo apt install xscreensaver

インストールが終わったら、Raspberryメニューから「設定」をたどっていくと「スクリーンセーバー」の項目が現れます。これをクリックして、「表示モード」タグ内の「モード:」から「セーバーを無効にする」を選びます。これで再起動すればモニタがブランクになることはなくなります。ここまでは、まだ序の口。

続いて本題のシャットダウンスイッチを設定します。ここからはGPIOの出番です。今回は、pythonでプログラムを書いて、自作PCのテストで使われる電源/リセットのスイッチを挿してシャットダウンスイッチとして動作させます。GPIOの状態は、ターミナルから「gpio readall」コマンドで確認することができます。GPIOの番号は「BCM」の欄を見るようです。
#詳しくは、クラゲのIoTクイックレシピの「RaspberryPiでLチカ」を参考にしました。

以降は、「ラズパイでシャットダウンボタンを付ける(ついでに起動ボタン)」を参考に、GPIOの設定をしてプログラムを動かします。GPIOの23番を選んで設定をしていきます。すぐ隣にGND(0V)があるからです。スイッチのON/OFFを検知させるためには、23番をinからupに設定を変更する必要があります。試しに以下のコマンドで動作確認をしてみました。

$ gpio -g mode 23 up

これで、23番(16)と隣のGND(14)をスイッチでつなぐと、ONで0、OFFで1が出てくるようになります。(「gpio -g read 23」で確かめられます)これで、ハードウエアの動作確認は終了です。

続いてpythonでプログラムを書きます。とはいえ、先達が作ってくれているものがありますので、ありがたく拝借いたします。下準備として、/home/pi/の下に、pyhomeというフォルダを作って、その中にshutdownd.pyというテキストファイルを作ります。中身は、以下のとおりです。

#!/usr/bin/python
# coding:utf-8
import time
import RPi.GPIO as GPIO
import os
pinnumber=23
GPIO.setmode(GPIO.BCM)
#GPIO23pinを入力モードにして、pull up設定にします
GPIO.setup(pinnumber,GPIO.IN,pull_up_down=GPIO.PUD_UP)
while True:
GPIO.wait_for_edge(pinnumber, GPIO.FALLING)
sw_counter = 0
while True:
sw_status = GPIO.input(pinnumber)
if sw_status == 0:
sw_counter = sw_counter + 1
if sw_counter >= 50:
print("長押し検知!")
os.system("sudo shutdown -h now")
break
else:
print("短押し検知")
break
time.sleep(0.01)
print(sw_counter)

#「shutdown -h now」が煩わしいので「halt」を使おうと思ってやってみましたが、うまくいきませんでした。

pyファイルの中身が出来上がったら保存して、以下のコマンドで権限を設定します。

$ sudo chmod 755 shutdownd.py

次に、/usr/lib/systemd/system/の下に、shutdownbuttond.serviceというサービスファイルを作ります。今回は、スクリーンエディタのnanoを利用することにします。
#nanoの使い方は、ゆたりんブログの「[ソフト] nano(テキストエディタ)の基本的な使い方」を参考にしました。

$ sudo nano /usr/lib/systemd/system/shutdownbuttond.service

中身は、以下のように書きます。

[Unit]
Description=Shutdown Daemon
[Service]
ExecStart =/home/pi/pyhome/shutdownd.py
Restart=always
Type=simple
[Install]
WantedBy=multi-user.target

これを保存して、次のコマンドを使ってバックグラウンドで動かします。

$ sudo systemctl enable shutdownbuttond.service
$ sudo systemctl daemon-reload

これでシャットダウンスイッチが使えるようになるはずですが、「systemctl status shutdownbuttond.service」コマンドで確かめたところ、どうもうまく動いていない感じだったので、「reboot」コマンドで再起動してみました。すると、無事に動作するようになりました。これで、Scratch 3が動いている状態からでもスイッチひとつでシャットダウンまでできるようになりました。残りの課題は、Scratch 3を自動起動させることです。

2020年6月18日木曜日

Raspberry Pi 2BとScratch 3でデジタルサイネージに挑戦

今の職場にも屋上に太陽光発電システムが導入されていて、その発電状況をモニタリングするための液晶モニタが校内に設置されています。これを使って学校の様々な活動を紹介するスライドショーのようなことができないかということになりました。

この液晶モニタにはDVDプレーヤーがつながっていて、写真をCD-Rに焼いて再生すると液晶モニタに表示されるというシステムになっています。これを使うのが一番手っ取り早いのは間違いないのですが、全く面白くない。今の職場の環境ではデータの持ち出しが厳しく制限されているため、CD-Rに焼くまでの手順が尋常じゃないほど面倒くさいのです。しかも、ミスを修正したり部分的に更新したりすることが容易ではなく、その度に新しいCD-Rに焼く作業をしなければなりません。これでは、効率が悪い上にエコでもない。

幸いなことに、DVDプレーヤーはアナログ3ピン(赤、白、黄)で接続されていて、液晶モニタのHDMI入力が2つもあまっていました。しかも、HDMIケーブルが挿さったまま何にもつながっていません。さらに、液晶モニタの近くには電源も引かれているからまさにおあつらえ向きです。早速、Raspberry PiScratchでデジタルサイネージを作ってみることにしました。

まずは、表示するものを作ります。Scratch 1.4を使ってご当地キャラクターの動きに合わせて背景の写真が切り替わるという簡単なプログラムを作りました。しかし、出来上がったものを作業をしていたPC画面で確認すると、写真の解像度がイマイチで、かなり画像が荒くなってしまうことが判明しました。これでは、大型の液晶モニタには耐えられないだろうと判断。Scratch 3を使う計画に切り替えました。
Raspberry Pi BlogScratch 3 Desktop for Raspbian on Raspberry Piを参考にさせていただきましたが、結論から言うと、最新のRaspbian(Raspberry Pi OS)を使えばScratch 3も一緒にインストールされていることがわかりました。

(1) Raspbian Buster以降のOSを使うことと、(2) 1GB以上のメモリを載せていることが最低条件らしいので、自宅にある各世代のRPiの中からRPi 2Bをチョイスしました。そして、使い慣れたNOOBSをダウンロードして、解凍したファイル&フォルダを在庫していた16GBのSDカードにコピーして起動SDカードを作りました。SDカードは、事前にSDFormatterで初期化しておくことをお勧めします。
#RPi 2Bは、3B以降のようなWireless LANやBluetoothは搭載されておらず、消費電力も抑えられるので割り切った使い方をするのにはちょうどよいと思っています。

NOOBSを入れたSDカードをRPi 2Bに挿して起動すると、Raspbianのデスクトップが表示されて無事に起動することができました。ちなみに、現在推奨されている方法は、Raspberry Pi Imagerを使う方法のようです。最近購入したRPi 4Bのセットアップをするときには、こちらを使おうと思います。

セットアップとアップデート作業(少々時間がかかる)が終わったら、インストールされていたScratch 3 Desktopを使ってデジタルサイネージプログラムの動作確認です。(ついでに、日本語入力環境「fcitx-mozc」もインストール済みでした)実際に動かしてみると、液晶モニタがワイドサイズだったためか、表示画面が小さくて見にくいことがわかりました。せめてタスクバーを隠してその分だけ画面を広くしようと考えて、タスクバー上で右クリックをして、出てきたプルダウンメニューから「パネルの設定」を選んでタスクバーを隠す設定にしました。(「高度な設定」タグの中に「自動的に隠す」という項目があるので、「使わないときはパネルを最小化する」にチェックを入れたら完了です)

なかなかの仕上がりになりました。今後の課題としては、電源を入れるだけでScratch 3まで起動することと、シャットダウンボタンを設置することです。時間を見つけてやってみます。

【追記】シャットダウンスイッチの設定をしました。(2020.6.21)
Raspberry Pi 2BとScratch 3でデジタルサイネージ(シャットダウンスイッチをつける)

2020年5月31日日曜日

CloudReadyでChromiumOSをインストール(サブノートPCをChromebook化)する

4年ほど前にAcerサブノートPCをChromebook化するのにかなり苦労をしたのですが、ここへ来てChromebookへの注目度が高まってきたので、久しぶりにメンテナンスをしてみようかと思い立ちました。そもそも、ChromeOS自体は公開(無償配布)されておらず、Chromebookを使いたいならChromebookを購入するのが一番の近道です。自分でChromebook(のようなもの)を作ろうと思ったら、無償で配布されているChromiumOSをインストールして使うしかありません。これがなかなか厄介で、簡単に使えるとは言い難いものです。そこで、今回はCloudReadyを使ってみることにしました。

必要なのは、CloudReadyの32bit版です。Chromebook化しようとしているサブノートPCが32bitにしか対応していない(CPUは、Intel Atom N280を搭載)からです。残念なことにCloudReadyのWebサイトでは、32bit版のサポートは終了していて配布も行われていません。いろいろと探し回った結果GetMyOSというサイトにCloudReadyの32bit版が残っているのを見つけました。早速これ(.zipファイル)をダウンロードして、サブノートPCへインストールすることにしました。

インストール方法は、Easy Innovation Zoneの「CloudReady Home のインストールと設定」を参考にしました。使ったのは、Google ChromeブラウザとGoogle Chrome上で動く「Chromebookリカバリユーティリティ」です。両方ともGoogle検索ですぐに見つけることができました。(先にGoogle Chromeをダウンロード&インストールしておいてから、Google ChromeでChromebookリカバリユーティリティを検索して「chromeに追加」ボタンでインストールします)ダウンロードしておいたCloudReadyの.zipファイルをリカバリユーティリティで読み込みます。「歯車(ギア)」マークをクリックするとメニューが表示され、「ローカルイメージを使用」を選択することでダウンロードした.zipファイルを読み込むことができるようになります。(.zipファイルは解凍する必要はありません)このあと、8GB以上のUSBメモリを挿してインストールUSBメモリを作ります。少々時間はかかりますが、待つだけですので以前のような苦労はありませんでした。

出来上がったUSBメモリをサブノートPCに挿して起動します。難なく起動して設定画面が表示されました。どうやら、USBメモリからの起動で使い続けることもできるようでしたが、設定完了後の画面からHDDへのインストールを選択して作業続行。32bit版のサポートが終了していることを警告しているらしきものが出てきたのですが、完全に無視をして作業を続けました。長くなりそうなのでしばらく放置していると、いつの間にかインストールが終了していました。起動してGoogleのアカウントでログインすると、無事にChromiumOSが起動しました。デスクトップに表示された「ChromiumOS 76.3.33」というのが今回使った32bit版のバージョンなのだと思います。

古いPCを再生させることにどれだけの需要があるかはわかりませんが、Chromebookを試してみたいけど、既にPCがあって製品のChromebookを買うほどではないという状況の人たちには、USBメモリから起動するというのは需要がある気がします。(学校現場では、この行為が制限されている場合が多々ありますが…)私のように古いPCを不良在庫レベルで持っているような者にとっては、32bit版のサポート終了が痛く思われます。これからも、細々とではありますがChrome(Chromium)OSで何ができるか試してみたいと思っています。

2020年5月10日日曜日

カブトムシの世話(2020春)〜蛹化前のギリギリのタイミングで

新型コロナウイルス感染症拡大防止のための緊急事態宣言が延長され、まだまだ予断を許さない状況もあり、Stay Homeということで、GWを含めた休日はできるだけ外に出ないようにしておりました。そんな中、ふと「カブトムシの世話をする時期はいつ頃だったかな?」と気になり、このブログを見直して、概ねGWの時期には夏前の世話をしていることを確認しました。(あれもこれも変更に次ぐ変更で、自分の中の季節感が狂ってしまっています)冬眠から目覚めた時期は、カブトムシたちが蛹化に向けた準備に入るため、最後にしっかり餌(クヌギと腐葉土)を与えて蛹化を待つことになります。
#冬眠前にしっかり太らせておくと良いようです。

前回の世話から約半年、この間にも、追加で腐葉土を入れたり加水したりと軽い世話をしていましたが、本格的にひっくり返して状態を確認しながらマットの交換を行いました。2017年から飼育マットをクヌギマット&腐葉土にしたのですが、この3年間でノウハウがだいぶたまってきました。腐葉土は、カブトムシの栄養源としては効率が悪く、かさばるけれども消費も多いということや、カブトムシ自体もこぶりなものになりやすいということがわかりました。それを補うためにクヌギマットを併用したり、朽木を年に7〜8本くらい入れて補ったりしています。そのためか、全体の1/3程度の個体は、かなり大きく育っています。

腐葉土自体の分解が進み、クヌギよりも早く黒土化してしまうということもわかりました。カブトムシのフンは、黒土そのものなのですが、細かく粉砕する前は、粒ガムよりちょっと小さいくらいの大きさ・形をしています。(クヌギばかりで飼育するとクヌギの匂いがしますが、腐葉土を混ぜているので土の匂いです)これを花の肥料として使っているのですが、腐葉土飼育になってからは、フンの粒だけでなく腐葉土が黒土化したものも出てしまうので、入れ替え作業が大変です。今回は、コンテナの半分ほどのフンと黒土を取り除き、クヌギマットと腐葉土を加水して敷いたところに使えそうなマットとカブトムシの幼虫を戻しました。加水したクヌギマットと腐葉土は、蛹室づくりのことも考えて予め少しつき固めておきました。カブトムシの幼虫は、69頭いました。(死骸が見つかったのは、1頭だけでした)

これで何とか蛹化前の世話を済ませることができました。あとは、夏に向けて約1ヶ月半ほど成虫になるのを待つだけです。新しい職場では、今の所カブトムシも花の肥料も必要な感じがしませんが、何かできることはないかと思っているところです。

2020年5月4日月曜日

macOSとLinux Mint 19.3でSambaの設定(ファイアウォールを含む)をしてmacOSや別のLinux機から共有フォルダを使えるようにするまでの試行錯誤

macOSがCatalinaになって、ファイル共有の動きがイマイチな感じになっていました。AFP(Apple Filing Protocol)で共有フォルダを開くと、macOSジャーナリングでフォーマットした外付けHDDの中身が見えなくなってしまったのです。これにはかなりパニック状態になりました。なぜなのかわからず、長いこと試行錯誤しました。

ドライブのフォーマットの問題かと思い、exFATでフォーマットしてやってみました。これで、中身は見えるようになりましたが、ファイルを開くことはできても保存がうまく行かないなどのアクシデントがありました。仕方がないのでSMB(Server Message Block)で開き直してみると、exFATでは、アプリケーションが開いたファイルの位置を見失う状態になりました。ならばということで、macOSジャーナリングでフォーマットしたドライブをSMBで開いてみました。すると、中身も見えるし問題なく使えるようになりました。いつの間にか、macOSのファイル共有は、SMBが基本になっていたのですね。
#どうやら、FAT系フォーマットのドライブの扱いが、何か変わったのかなという感じです。

ならばと思い、先日設定をしたHTPCIntelCeleron J1800を載せたGIGABYTEGA-J1800N-D2H)のSamba(SMB)設定を強化すべく、設定をいじることにしました。Sambaは既にインストールしてあるので、HTPCのホームディレクトリが共有できるようになっています。「/etc/samba/smb.conf」には、以下のように書き込んであります。

[homes]
comment = Home Directories
browseable = no
read only = no
valid users = %S

ここまでの設定で使えることは使えるのですが、最低限のセキュリティとして、ファイアウォールは必須と考えてLinux Mint 19.3のファイアウォールの設定をONにしました。すると、HTPCにアクセスすることができなくなりました。macOSとは違って、ファイル共有とファイアウォールの設定は、自動的に関連付けられてはいないのです。そのため、ファイアウォールの設定をいじらなければななりません。先程、ファイアウォールをONにした設定ツールからルールを追加します。

Linux Mintの「ファイアウォール設定ツール」を開いて「ルール」タグの窓の下方にある「+」ボタンを押して、以下の設定を追加します。

ポリシー:Allow
方向:In
カテゴリー:すべて
サブカテゴリー:Service
Application:Samba

ここまで設定したら「追加」ボタンを押します。すると、自動的にルールが書き込まれるので、これで設定が完了(「閉じる」ボタンを押して良い)します。ここまでやった後、iMacMacBook Proからアクセスしてみましたが、問題なくHTPCにアクセスすることができるようになり、ホームディレクトリが使えるようになりました。

ついでに、別のLinux機(うちの場合は、多くはMintで動いているけれども、様々なLinux機でも同様です)からアクセスできるようにしてみました。次のようにクライアントの設定をします。

$ sudo apt install cifs-utils

cifs-utils」は、Windowsのネットワークに入るためのもので、必ずしもSamba専用というわけではありません。Windowsでファイルサーバを運用しているところで、Linuxからアクセスする場合にも、「cifs-utils」を使います。使い方は難しくありませんが、ちょっとしたコツが必要です。(Linuxユーザなら特に問題はないでしょう)

はじめに共有するフォルダをマウントする場所(マウントポイント)を用意します。

$ sudo mkdir -p /mnt/〈任意の名前〉

このコマンドで、/mntフォルダの中に、任意の名前のフォルダをつくるというイメージです。マウント後は、このフォルダの中に共有先のファイルやフォルダが見えるようになります。続いてマウントコマンドで共有先をマウントします。

$ sudo mount -t cifs -o username=〈username〉,password=〈password〉 //〈serverのPC名〉/〈共有フォルダ名〉 /mnt/〈任意の名前〉

〈username〉と〈password〉は、Sambaを動かしているサーバ側で設定したものを入力します。〈serverのPC名〉と〈共有フォルダ名〉も、サーバ側で設定したものです。これで、/mnt/〈任意の名前〉に共有先のフォルダがつながってファイルやフォルダの共有ができるようになります。
#「Narrow Escape」のLinuxMint 19: SMBクライアントのcifs-utilsをインストールするを参考にしました。

これらの一連の操作をシェルスクリプトとして保存しておいて、起動と同時に自動で走らせるという方法もありますが、セキュリティ上どうなのかという心配があります。(やる場合は、自己責任で)

2020年4月29日水曜日

調子の悪いMacBook Pro(Mid 2012)からMacBook Pro(2019 Two Thunderbolt 3 ports)へ移行作業をする

新しいMacBook Airの方が話題になっていますが、そんなこととはおかまいなしで、ちょっと前にMacBook Proを買ってしまった私は、仕事の合間を縫ってセットアップをすることにしました。今までは、壊れてから買い替えるパターンが多かったMacBook系のマシーンでしたが、今回は、調子は悪いものの動かないという状態ではないので「移行アシスタント」で使用環境をそのまま移行してみることにしました。
#だいぶ以前にiMacで経験済みですが…。

まずは、新しいMacBook Proのセットアップを進めます。言語の設定やネットワークの設定などを終えたところで、「移行アシスタント」を使うかどうかという選択肢が出てきます。ここまでやったら、今度は古いMacBook Proの電源を入れて、同じく「移行アシスタント」を起動します。ここでは、「別のMacへ」を選択します。古いMacBook Proは安定していないことが買い替えの理由でしたが、この作業中に2回ほどフリーズしました。最初は、「移行アシスタント」が起動せず、黒い画面のまま固まりました。2度目は、全ての移行が終わって再起動しようとしたところでフリーズ。既に新しいMacBook Proへの移行が完了していて、動作確認ができていたため事なきを得ましたが、きちんと移行ができているのか心配になる状態でした。(ヒヤヒヤしました)

その後は、古いMacBook Proも見違えるほど普通に動くようになってしまいました。アプリケーションソフトがきれいに整理整頓されていたり、新しいmacOSで動かなくなっているものが消えてなくなっていたりといった状態が確認できました。いろいろ動作の邪魔をしていたものが綺麗サッパリなくなって身軽になったのかもしれません。「移行アシスタント」には、移行に邪魔なものを整理したり正常に戻したりする機能があるのかもしれませんが、正確なところはわかりませんでした。
#移行のために古い方も使っていると、やはり次第に調子が悪く、動作が不安定になっていきました。両方使えるかもとも思いましたが、やめた方が良さそうです。

ちょっと意外だったのは、Movies、Music,Picturesの3つのフォルダの中身が引き継がれなかったこと。データ量が多かったので、USB接続の外付けSSDドライブを使ってデータを移動させました。(ついでにいらないものを捨てて、すっきりしました)もしかすると、iCloudで共有しておけばこんな手間をかけなくてもよいのかもしれません。

最後に、メーラーとして愛用しているThunderbirdの移行を行いました。これがちょっと面倒くさい。まず、Finder(macOSのデスクトップ)の「移動」メニューをoptionキーを押しながらクリックすると、プルダウンメニューの中に「ライブラリ」というメニューが現れます。これを選択して開くと、その中に「Thunderbird」という名前のフォルダがありますので、「Thunderbird」→「Profiles」とたどって、「.default」という文字列が含まれるフォルダをコピーして、新しい環境の同じ場所へ移動します。今回は、「.default」が付いているフォルダを、USBメモリに保存して新しいMacBook Proに移動しました。
#この方法は、MacからWindows等別のOS間でも使えるようです。

ここで1つ問題が発生。この新旧MacBook Proの移行作業を数日かけて行っていたため、無意識的に古いMacBook ProのThunderbirdをアップデートしていて、新しいMacBook ProのThunderbirdとバージョンが合っていない状態になっていました。この状態だと、データのバージョンが違うので引き継げない旨のメッセージが出て、設定やメールの内容などが引き継げません。そのため、Thunderbirdのバージョンを揃えておく必要があったのでした。新しいMacBook ProのThunderbirdをアップデートして、無事に作業を終えました。

これでようやく実用的な状態にはなりました。新しいMacBook Proの使い心地ですが、薄さの犠牲となった打鍵感と使い所がイマイチなTouch Barの問題はありますが、その他の操作については古いMacBook Proのときのようなつまずき感やフリーズがないので快適です。速度も申し分ない。USB-C機器を揃えていないので、今まで通りに使用するにはちょっと工夫は必要ですが、Appleストアで使える18,000円クーポンがもらえたので、USB-AやHDMIに変換する(ついでにSDカードも読み込める)コネクタや純正のDVDドライブを購入して使っています。新macOS Catalinaへの対応が遅いソフトウエアが多くて(というより、Macのソフトウエアの需要が少なすぎるor対応が難しい?)完全に今までと同じことができるとは言えないのですが、Linuxで動くPCを使うなど様々なアプローチでより快適な作業環境を実現したいと思っています。

2020年3月15日日曜日

Linux版Scratch 1.4で作ったプログラムがScratch 3.0でコードが見えない現象(謎の文字化けが起こる)を検証する

前回までに、常用しているLinux MintWine上で、Windows版Scratch 1.4を動かして、Scratch 3.0でスクリプト(コード) が見えなくなる原因を突き止めました。Linux版Scratch 1.4では直接日本語入力ができず、テキストエディタなどの別のところで日本語文字列を作り、それをコピペして日本語を入力するという手順を踏まなければなりません。この過程で変換不可能な文字列(これが何かはわかりませんでしたが)が紛れ込み、これをScratch 3.0で開くとコードが見えなくなることがわかりました。Scratch 2.0は、この不具合を解消する処理をしているらしく、Scratch 1.4で作ったものを2.0で読み込んで保存もしくはアップロードすると、3.0でも問題なくコードが見えるようになるのでした。

検証した環境と結果は以下のとおりです。(改行コードのせいもあると考えて、改行を含むものと含まないものとを並べてみました)(1)アルファベットのみ、(2)日本語(改行なし)、(3)日本語(改行あり)の順です。

今回は、Raspbianだけ不具合がありませんでした。MintとPuppyでは、改行ありだと明らかに見た目がおかしいので、気づくのではないかと思います。とは言え、改行なしでも文字化けが含まれてしまうのですが。

今後のScratch 1.4での開発は、Wine上のScratch 1.4か、RaspbianのScratch 1.4で行うようにするか、日本語を使わないようにするかという選択になりました。

Linux MintのWineでWindows版Scratch 1.4を動かす

Macの新しいOS(macOS Catalina 10.15.x)でScratch 1.4が動かないため、Linux MintPuppy Linuxなどの力を借りて、Scratch 1.4での開発をしている続きです。先日、Linux MintのScratch 1.4で作ったプログラムが、Scratch 3.0上で「コードが見えない」という不具合を発見しましたが、全てダメということではなく、どうやら日本語の扱いに問題があるということがわかってきました。

毎度のことながら、@abee2さんに助けていただき、Windows版のScratch 1.4で開いてみると「化けた文字」が含まれていると教えていただきました。自宅にあるパソコンは、デスクトップ・ラップトップ合わせて数十台にもなりますが、残念(意図的)ながら(我が子の学習用以外で)Windowsで動くものはありません。そこで、MintのWine上でWindows版Scratch 1.4を動かしてみてはと勧められたので、やってみることにしました。幸いなことに、別の需要があってWineはインストール済みでした。(「ソフトウエアの管理」からインストールしました)
#他にも、PlayOnLinuxもインストール済みですが、今回はあまり関係がありません。

Windows版Scratch 1.4のインストーラーをダウンロードして、Linux Mintでダブルクリックすると、難なくインストール作業が始まり、無事に完了しました。後は起動するだけ。ちょっとドキドキしましたが、無事にWindows版Scratch 1.4が起動しました。しかし、日本語が表示されず全て豆腐(□)になっています。これでは不具合を確認することすらできません。そこで、過去にWineの設定をしたときのことを思い出しました。Wine 4.0以降は、割と日本語表示が簡単になったという噂を目にしましたので、過去の経験を頼りにやってみましたが、うまくいきません。「Wine設定」自体がすべて日本語表示になっているし、デフォルトでインストールされている「メモ帳」もメニューの日本語表記や入力が日本語でできるというのに、Scratchだけは頑なに日本語を受け付けてくれないのです。

もう打つ手はないのかと絶望感に苛まれつつも、これはScratch 1.4自体のフォントの設定が問題なのではないかと考えました。過去の記憶を頼りに、フォントの設定を変えることができたような気がしてきたのです。localeの.poファイルにフォントの設定を書き込めることを教えていただき、過去にそんな設定をやったことを思い出しました。ja.poとja_HIRA.poの以下の部分を書き換えました。

  • 〈変更前〉
    # Font to use on a Windows system
    msgid "Win-Font"
    msgstr "Tahoma"
  • 〈変更後〉
    # Font to use on a Windows system
    msgid "Win-Font"
    msgstr "Takaoゴシック”

日本語フォントに何を使っているかによって設定が変わると思いますが、私の環境(Linux Mint)では「Takaoゴシック」が入っているためこのようにしました。これで、問題のあった.sbファイルを開くと、日本語文字列の後に豆腐(□)が見えるようになりました。デフォルトで日本語表記になっているもの(スプライトの名前など)には、特に問題がないため、Linux版Scratch 1.4で日本語入力ができないことと関係がありそうだと当たりをつけました。次は、なぜこのようなものが混じってしまうのか検証して行きたいと思います。

【追記】Windows版Scratch 1.4で日本語に豆腐(□)が交じる現象が起きる環境を特定しました。(2020.3.15)

2020年2月23日日曜日

Scratch 1.4で作ったプログラムをScratch 3.0で読み込んだときの不具合を回避する

Macの新しいOS(macOS Catalina 10.15.x)でScratch 1.4が動かないため、Linux MintPuppy Linuxの力を借りて、Scratch 1.4での開発を続けているところです。先日、Linux Mintで作ったプログラムをScratch 1.4の機能を使って共有(アップロード)したところ、Scratch 3.0上で「コードが見えない」という不具合に遭遇しました。そこで、どんなときに不具合が発生するのかを検証し、解決を試みることにしました。

まず、この不具合が発見されたプログラムについて、LinuxのScratch 1.4からアップロードしてLinuxのFirefoxとMacのFirefox、WindowsのEdgeでScratch 3.0(オンライン)を開いてプログラムを見た場合も、同じく3つの環境でScratch 3.0(オンライン)を開いてプログラムのファイルを直接読み込んだ場合も、いずれもコードが表示されませんでした。Scratch 3.0(オフライン)についても、Linux Mint、Mac、Windowsで試してみましたが、やはり状況は変わりませんでした。

そこで、Scratch 1.4とScratch 3.0(オフライン)で、スクリプトやコードの違いを検証することにしました。問題のないものと問題が起きているものを見比べてみましたが、細かな点で差はあるものの、コードが見えない不具合を抱えているプログラムと問題がないプログラムとの大きな差を感じませんでした。

いろいろ考えながら検証しているうちに、Linux Mintからプログラムをアップロードしようとすると、Scratch 1.4が落ちるという現象が起きるようになりました。さらに困ったことになりました。仕方がないので、同じプログラムをRaspberry PiRaspbian)からアップロードを試みましたが、Scratch 1.4は落ちないものの、エラーを吐いてアップロードが途中で止まってしまいました。Puppy Linux改でもやってみましたが、結果は同じでした。エラーメッセージは、Raspbianで「Failed: INVALID_REQUEST…」、Puppy Linux改で「Failed: address not found」となっているので、どうやらこの作業の間に、Scratch 1.4からアップロードする先が何らかの理由で閉鎖された(一時的なものかもしれません)のではないかと推察しました。

これ以上、問題を検証することが難しくなりました。

仕方がないので、MacのScratch 2.0(オフライン)で開くとどうなるか試してみました。すると、不具合のあったプログラムのスクリプト(コード)が問題なく表示されました。さらに、このScratch 2.0(オフライン)からアップロードすると、Scratch 3.0(オンライン)でもコードが見えるようになりました。同じくScratch 2.0(オフライン)でプログラムを保存すれば、Scratch 3.0(オフライン)で開いてもコードが見えます。とてもややこしい状態ではありますが、Scratch 1.4で作ったプログラムで不具合があっても、2.0で読み込んでアップロードすれば、3.0でもコードが表示されることがわかりました。

こうなると、今後、Scratch 1.4を使い続けることが困難になってきていることが実感できました。とは言え、3.0への完全移行が得策と言えるかどうか、頭を悩ませています。

【追記】Scratch 2.0(オンライン)の頃に1.4からアップロードしていたものは、現在の3.0(オンライン)でもコードが見えるけれど、現在のScratch 3.0で直接1.4の.sbファイルを開いてもコードが見えなくなるものがある、ということがわかってきました。1.4から2.0になる過程で、コードの仕様に関する何らかの変更があり、2.0は、その変換を行っているものと推察しました。また、3.0も公開から今日に至るまで、仕様変更されている可能性があるのかなとも思いました。(2020.3.8)

【追記】この現象は、Linux版Scratch 1.4での日本語の扱いの問題であることがわかりました。Linux MintでWineを動かして確認しました。(2020.3.15)

【追記】Windows版Scratch 1.4で日本語に豆腐(□)が交じる現象が起きる環境を特定しました。(2020.3.15)

2020年2月2日日曜日

今更だけどLinux系OSでScratch 1.4の音(mp3)を再生する機能を検証する

Macの新しいOS(macOS Catalina 10.15.x)で32bitソフトであるScratch 1.4が動かなくなり、Scratchでの教材開発を1.4で続けていくためにはLinuxに頼らざるを得ない状況になっています。(自宅でWindowsは使いません)1.4を使い続けているのは、学校の特殊な事情により、1.4の出番がまだまだあるからです。そんな折、Scratch 1.4で音を再生しようと考えて、ネットにあったフリーの音源(mp3)を読み込ませようと思ったところ、「Unrecognized audio file format」というエラーが出て読み込むことができませんでした。どういうことかわからなかったのでネットで訪ねたところ、いつもお世話になっている@abee2さんより、いくつかヒントをいただきました。mp3のサンプリングbitの問題がありそうだというところに絞って検証をはじめました。

まずは、Scratch 1.4に入っている音で検証してみようと考え、いくつかのファイルを読み込んでみましたが、読み込めないものがあることが判明。これは詳しい検証が必要だと考えて、自宅にあるLinux系OSで動いているいくつかのマシーンで検証することにしました。

  1. Linux Mint 19.3 Tricia(MATE 64bit)
    • フリーのmp3ファイル … ×
    • ScratchのAnimalフォルダ内の「Cat」「Sealion」 … ×
    • その他のAnimalフォルダ内のファイル … ○
    ※/usr/share/scratch/Media/Animal/を見ると、「Cat」と「Sealion」だけmp3ファイルになっていて、残りはwavファイルになっている。ファイルを直接開くと、Linux上で再生される。
  2. Linux Mint 19.3 Tricia(Xfce 32bit)
    • フリーのmp3ファイル … ×
    • ScratchのAnimalフォルダ内の「Cat」「Sealion」 … ×
    • その他のAnimalフォルダ内のファイル … ○
    ※MATE 64bitと全く同じ状況。
  3. Raspbian 9.8(「$ cat /etc/debian_version」にて確認)
    • フリーのmp3ファイル … ×
    • ScratchのAnimalフォルダ内のすべてのファイル … ○
    ※/usr/share/scratch/Media/Animal/の音声ファイルは前2つと同様だが、mp3でもwavでも関係なく読み込むことができた。
  4. Puppy Linux 5.1.1 Wary日本語版にScratchなどを入れたものを使用)
    • フリーのmp3ファイル … ○
    • ScratchのAnimalフォルダ内のすべてのファイル … ○
    ※ダメ元でやってみたのにできてしまって自分がびっくり

フリーのmp3ファイルは、サンプリングbitが32bitらしいことがわかりました。だからLinux MintでもRaspbianでも使えないのは納得できたのですが、なぜPuppy Linuxで使えてしまったのかは謎です。Puppy Linuxでフリーのmp3ファイルを読み込んでプログラムを完成させて、そのプログラムをLinux Mintに持ち込んでも問題なく音が出るようになりました。こんな奇跡的なことがあって良いのだろうか。1つ問題が解決したので良いのですが、普段遣いのLinux Mintで使えないのは困るので、Audacityを使うことにしました。(サンプリングbitを変更するため)否、先述のPuppy Linuxは、私がいろいろいじってCD-Rに焼いたものがあるので、CDブートで使うという手もあります。…う~む、悩ましい。

3年生でのプログラミングの授業~Hour of Code™を利用して

事情により、3年生を相手にコンピュータを使った授業をしてほしいと頼まれたので、調べ学習か何かなのかと思ったのですが、最近プログラミングに挑戦しているからその続きをやってほしいとのこと。そう言えば、Scratchで授業やるのはかなりハードルが高いようで、「他に良い方法はないか。」と相談されていたのでした。その際、ブロックプログラミングに慣れる意味でHour of Code™をすすめたところ、PC支援員さんの支援のもと1時間だけやったようでした。

聞けば、統制型の授業(みんなで同じものに同時に取り組む)だったとか。それなりに楽しかったようだけれども、子供たちはなかなか思い通りに先に進まなかったと聞きました。ならばということで、Hour of Code™のアクティビティの画面を見せて反応を見ることにしました。「覚えてる」「やってみたい」と声が上がったので、学習活動の手順を以下のように示しました。

  1. やりたいものを1つ選ぶ
  2. 同じものを選んだ3人以上でグループを作る
    ※協力してやるから、話し合いながらできる人数を考える
  3. 作業をすることを考えて、PCや場所を選ぶ
    ※グループで使えるパソコンはMAXで人数分
  4. ここまで決まったらやってみよう

何となく選び終えた子たちが声を掛け合うかなと思ったのだけれど、「グループを作る」ということがわからない様子だったので一度中断。狭いスペースに全員集めて、グループ作りについてレクチャーをしました。同じものをやりたいと思っている子が誰なのか、声を掛け合いながら探してグループを作っていく。単純なことなのだけれども、パソコン室ではやったことがないので、慣れていないからできないんですね。グループにしたのは、相談し合いながら自然な学び合いを誘発したかったから。やりたいものが絞り込めていない子たちも、グループになりながら決めることができます。

やり方がわかったら、お互いに声を掛け合ってだいたい3~5人のグループになりました。それでも、同じ課題の子たちが3人以上にならないグループが現れました。よく聞くと、他のどのグループとも違うものを選んでいます。はじめからやりたいものが決まっていて、ずっと声を上げていた子たちでした。ならば、私やPC支援員さんがフォローするから2人でも良いことにしました。

ここまで、プログラミングのレクチャーは全くなし。前時の統制型の授業で「丁寧に指導」されているだろうから、むしろやりたい気持ちが高まっているはず。案の定、はじめのうちこそ操作のことで質問があったものの、「日本語表示にするには」と「ダウンロードはできない」という2つのこと以外は、ほとんど何も教えないですすめることができました。

教室からパソコン室へ移動してからはじめたため、作業時間は正味35分くらいでした。最後まで終わって、修了証のようなものが表示された子が数人あらわれたところで、ほぼ時間通り。はじめから、「残念なことに時間が決まっているから」と話していたので大きな混乱はなかったものの、やはり「もっとやりたい」との声が上がりました。振り返りも、はじめに提示した4項目の中で、どのあたりに問題があったか考えさせるだけ。こちらの狙いは、ブロックプログラミングのやり方や考え方に慣れさせることであって、覚え込ませることではありません。

ここまでできたら、Scratchにもつなぐことができます。「えんぴつに三角形を描かせる」でも「好きな図形を描かせる」でも良い。最低限の用意は必要だけれども、ちょっと難しい課題を乗り越えるための下準備は、これで十分。もしかすると、「遊んでいるようにしか見えない」と思われるかもしれませんが、私には、彼らが脳みそに汗をかきながら、たくさん考えて、学んで、表現したことがよくわかりました。図形を描く課題を選んだ子が、空中に線を描いていたので、「そろそろ紙と鉛筆が欲しくなってる?」と聞いたら、すごい笑顔でうなずいていました。
#もちろん、紙と鉛筆をわたしましたよ。

2020年1月12日日曜日

Linux Mint 19.3でファイルサーバを構築する

ファイルサーバとしてしか使わなくなっていた古いPC(以前は、自作Webサイトの動作テストや様々なLinux系OSの動作確認環境として使っていた)を処分して、以前に紹介したHTPC(Celeron J1800)でLinux Mint 19.3を動かして、ファイルサーバにしてしまうことを計画しました。

このHTPCには、CFカードをSATA接続のSSDとして使うための変換ボードを載せています。今回は、こちら側にOSを入れて、前回までに使っていた120GBよりも大きな480GBのSSD(Kingmax KM480GSMV32)を入れて、ファイルサーバにすることにしました。しかし、16GBのCFカードでは容量が小さすぎるし、割高なCFカードを買うのはちょっともったいない。そこで、安価なSDカードをCFカードTYPE Ⅰに変換するアダプタ(FUJITEKのSDXC-CF1/T5というものらしいが既に生産中止か?)を使ってSDカードをCFカードに仕立てて、Linux Mint 19.3 64bit Xfceをインストールすることにしました。

このSDカードをSATA接続SSDに変換するボードとファイル保存用のSSDをHTPCに組み込んでハードウエアは完成。使用したSDカードは、32GBのものにしました。16GBでもLinux Mintのインストールは可能でしたが、アップデート作業中に容量が足りなくなるという問題に遭遇しました。Linux Mint 19.3のインストールとアップデートをしてから、必要なソフトウエアのインストール作業を行いました。
#SD-CFカードへのLinux Mint 19.3のインストールは、ちょっとコツが必要みたいで、予めSDカードをFATでフォーマットしておくとスムーズにインストール作業ができました。(本来なら、余計なソフトを削除する作業をするべきなのかもしれませんが、変に削除して不具合が発生しても面倒なので、デフォルトでインストールされるものはそのままにしてあります)

続いて、ファイルサーバシステムとしてsambaをインストールします。
LinuxMint 19 [Japanese]というWebサイト下の「LinuxMint 19: SMBサーバのsambaをインストールする」を参考にしました。

$ sudo apt install -y samba

これは、結構簡単できました。次に、pdbeditでユーザーの設定をします。

$ sudo pdbedit -a <ユーザーネーム>

このとき、パスワードを2回訊かれるので、2回とも同じパスワードを入力します。ユーザーネームに使えるのは、そのLinux Mintに登録されているユーザーでなければならないので、もし登録されていないユーザーにファイルサーバ(samba)を使わせたい場合は、次のコマンドでユーザーを追加しておく必要があります。

$ sudo useradd -m <登録したいユーザーネーム>

次に、共有ディレクトリーの設定をします。今回は、先程のサイトを参考にしながら、ユーザーのホームディレクトリと内臓SSDを共有することにしました。(「/etc/samba/smb.conf」に必要な設定を書き込む。)主に内臓SSDを共有フォルダとして使用し、各パソコンからアクセスしてファイルを保存することにします。

さて、これで無事に自宅LAN内のMac & Linuxのファイル共有環境が整いました。別のLinuxマシーンからもアクセスすることができることも確認できましたし、ついでに、無線LANで接続されているプリンター(CANON TS6130を使用中)も使えることがわかりました。快適な環境ができて大満足です。

【追記】32GBのSDカードでは、少々手狭であることがわかってきたので、128GBのSDカードに変更しました。なかなかうまく行かなかったのですが、GA-J1800-D2Hマニュアルを見て、CMOSクリアをしてみたら起動USBメモリから無事に起動してくれて、exFATでフォーマットしたSDカード(CFカードに偽装してさらにSSDに偽装している)にインストールすることができました。(2020.2.23)