「Linux」カテゴリーアーカイブ

rc.local の書式

kubuntu に起動時にメールを出すスクリプトをセットしたつもりだったけど、動作しない。無知をさらけ出すことになりますが、書式がしっかりしてなかったんですわ。

経緯

Kubuntu はモニターにつなげてはあるのですが、通常モニターはアクティブになっていません。入力を切り替えてやればモニターに映るんですが、ここ数ヶ月事実上のヘッドレスマシンになっています。

簡単なスクリプトなどの実験台になってくれているのですが、時々リスタートさせる必要があります。そこで、ちゃんと起動してくれたのか確かめるために、極簡単なスクリプトを書いてそれを /etc/rc.local に書き込んだつもりでした。

動かないスクリプト

ところがですね。動かないんですよ。何度リスタートしても動かない。スクリプトをコマンドプロンプトに打ち込んでやれば動く。何度テストしてもコマンドプロンプトに打ち込んでやれば動くんですね。メールがちゃんと届く。でも、 rc.local に書き込んだのは動かない。

ググってみると、 systemctl でステータスを確認できるらしい。それすら知らなかった。早速やってみました。エラーでてましたよ。 Failed to execute command: Exec format error これもググってみました。そのものズバリの答えはなかなか見つかりませんでしたが、しかしよくよく考えてみると、エラーを翻訳してみると「コマンドの実行に失敗しました。実行形式エラー」実行形式?

とってもシンプルな答え (無知だった )

「コマンドの実行に失敗しました。実行形式エラー」何度も読んでいたら、答えにたどり着きました。シバン (shebang) ですね。スクリプトを書くときに、1行目に必ず書く、アレです。スクリプトの本文をいきなり書いていたんです。無知ですね。恥ずかしいです。コマンドプロンプトに書き込んだときには、コマンドプロンプトが Mac の場合 zsh だったりしますが、いちいち明示しなくても zsh が解釈してくれます。しかし、 rc.local の場合、一体どのインタプリタを指定しているのかわかりませんよね。私シパンを書いていませんでした。恥ずかしい。

Kubuntu の場合、 bash を指定してやれば間違いないだろうと思ったら、ビンゴでした。ステータスを確認したらちゃんと動いてくれてるのを確認できましたし、メールも届きました。

まとめ

まとめもへったくれもありませんが、同じように設定した Raspberry Pi などでは問題なかったのに、なぜ Kubuntu でシパンを抜かしていたのか? 実は、 Raspberry Pi などでは rc.local ファイルはもともと存在していて、スクリプトが書き込まれていました。 Kubuntu は rc.local ファイルが存在しなかったんですね。そのため、シパンを抜かして書き込んで「これで OK 」と思っていたんです。

無知の言い訳にしかなりませんが、そういうことです。恥ずかしいけど、自分への戒めもこめてエントリーにしました。

Wacthdog の設定

Raspberry Pi zero がハングアップしていました。何が原因かはっきりしませんが、ハングアップは困るので、対策をとってみます。

Raspberry Pi OS には、 Wacthdog Timer というのがあらかじめ仕込んであるそうです。ただ、通常はこの機能が OFF になっています。 Wacthdog というのは、システムが一定間隔で生存確認を行い、生存確認が取れなかった場合にリスタートしてくれるというものです。 Wacthdog のシステム自体がダウンしてしまったら、当然リスタートもされないと思うのですが、システムのコア部分に組み込まれているので、よほどのことがない限り大丈夫でしょう。では設定していきます。

ブート・コンフィグに追記

$ sudo nano /boot/config.txt

ブート・パーティションにあるということからもわかる通り、システムのコア部分で起動するものですね。慎重に作業しましょう。次の1文を追記します

dtparam=watchdog=on

蛇足ながら、 ON を OFF にすることで Wacthdog 機能が OFF になります。もちろん、最初にこの1文は入っていませんでしたから、 Wacthdog は OFF ですね。

初期設定する

カーネルモジュールの初期設定を行います。これもテキストの修正だけです。作業そのものは簡単ですが、スペルミスは Wacthdog の動作に影響しますので、慎重に行いましょう。

$ sudo nano /etc/modprobe.d/bcm2835-wdt.conf

このファイルは最初、存在していませんでした。新規作成ですね。もしあったら以前に Wacthdog を設定しているかもしれませんね。

options bcm2835_wdt heartbeat=14 nowayout=0

heartbeat=14 が設定時間になります。14秒ですね。ここは自分の設定時間でいいと思います。次の nowatout=0 は、 heartbeat (心拍)が止まったのを感知してからリスタートするまでの時間ですが、特別な理由がない限り0で良いですね。

Systemd の設定

次に、 systemd の設定です。これで最後になります。

$ sudo nano /etc/systemd/system.conf

この中にはすでに設定部分がコメントアウトされた形で書き込まれていますので、検索して見つけましょう。おそらく先頭に # が入った形でコメントアウトされていると思うので、 # を削除した上で上で設定した heartbeat (心拍)時間と一致させます。

#RuntimeWatchdogSec=0
            ↓
RuntimeWatchdogSec=14

動作確認

以上の設定が終わったら、 Raspberry Pi をリスタートさせます。再起動したら、次の1文を打ち込みます。

$ dmesg | grep bcm2835-wdt

私のシステムでは、

[    2.816764] bcm2835-wdt bcm2835-wdt: Broadcom BCM2835 watchdog timer

という応答が帰ってきました。先頭部分の数字は変わります。何も応答が帰ってこない場合は、 Wacthdog が起動していないことが考えられます。スペルミスなどがないか、チェックしてください。実際にシステムをハングさせて見れば確実ですが、私怖くて出来ませんでした。 Wacthdog を信じることにします。

まとめ

私は、再起動が完了したらメールを飛ばすように設定しました。常にメールをチェックできるわけではないのですが、メールが来た時間から逆算してシステムがどうしてハングアップしてしまったのか推測できますね。

あえてここには書きませんが、システムをハングさせる方法はいくつかありますので、検索してください。 Raspberry Pi は現在、5台稼働していますので、それぞれに同様の設定をします。想定外のシステムストップがなくなると良いなぁ。

unattended-upgrades を動かす

表題の通りなんですが、私インストールすれば動くのかと思っていました。大きな間違いでしたね。道理で Update されてないわけだ。

内容に関しては、以下のブログを参照してください。何て不親切な私。

  1. 寝ている間に Raspberry Pi を全自動アップデート!~ unattended-upgrades を使おう - みかんのゆるふわ技術ブログ
  2. はなぴょんブログ [Ubuntu]メールサーバ構築 (Postfix)
  3. Raspberry Pi に Postfix を入れてコマンドラインから Gmail 経由でメールを送ろう - みかんのゆるふわ技術ブログ

メール送信まで出来ます。上記は Raspberry Pi で動かすための記事です。下2つはメール送信を行う時に参照しました。2だけで設定するとエラーが出てしまうので(もしかしたら私の環境だけかも)、3を参照しました。

さて、これを Raspberry Pi 5台+ FerenOS 1台に設定しました。設定ファイルは NAS に置いておいて参照するようにしたので、最初にやったヤツほど他のヤツには時間かかりませんでしたが、エラーが出る。 SYSLOG を見る。スペルミスや、設定のミスを見つけてやり直す。繰り返しましたね。 Linux のことを知るには良い素材でした。

最初に書くべきでしたが、 unattended-upgrades ってのは、 Linux の Update を自動で検知して、実行する。というプログラムです。 Update が終わるとメールを送ってくれます。便利ですね。 cron でも出来るんですが、メールを送るとなるとちょっと大変ですし、スマートじゃありません。設定さえ間違えなければ、簡単に目的が達成できますね。

この例では、 gmail を経由させてメールを送ります。メールの文面はカスタマイズできそうもないので、合計6台に同じメールをセットしてあってちょっと不便です。文面をカスタマイズ出来ないなら、メールアドレスの方を細工しようと思っています。 gmail はご存じの方も多いと思いますが、アドレス中にピリオドを入れてメールアドレスを分けたり、プラス記号を入れて違うアドレスのようにしたり出来ます。これを使って、どこから来たメールなのかを判断しようと言うことですね。

今日は、設定しただけでおしまいで、メール・エイリアスを使った処理は明日にしようと思ってます。うまくいくかな。

今日塡まったこと

小さなことですが、ちょっと塡まってしまいました。ことの顛末を書いてみたいと思います。

最初に、私の環境下で Toast Titanium19 が起動しないというトラブルがあるんですね。これ、解決してません。メーカーにログをおくったら、クリーンインストール(アプリ)を求められました。ところが、改善しません。何がおかしいのかさっぱりわからず、メーカーさんもだんまりです。 Toast Titanium は私のところではダメだという結論に達しまして、別のアプリを選択しました。

まぁ、そのアプリ「 Express Burn 」というんですが、機能的には満足してます。ただし Toast Titanium にあって、 Express Burn にない機能があるんですね。それが、データを複数のディスクに分割して書き込む機能です。 Express Burn はディスク容量以上のファイルは書き込めません。と素直にエラーが出ます。実は、結構大きなファイルを月ごとに Blu-ray でバックアップをしていました。10月ぐらいまでは Toast Titanium も立ち上がってくれていたので使ってたのですが、 macOS のバージョンアップがあって以降ダメになりました。なので、11月分から Blu-ray でのバックアップが出来ていません。

それならばと、次のように考えました。

  • 対象ファイルを tar でまとめる。 
  • split で Blu-ray のサイズに分割する
  • それぞれを Express Burn で Blu-ray に焼き付ける

手間はかかりますが、スクリプトを組めば時間がかかってもできあがるはずです。スクリプトを組む前に、手動でやってみます。で、ここで塡まりました。

split コマンドで、エラーが出ます。使ったのは次のようなコマンド。

$ split -b 20G -d <入力tarファイル> <出力ファイル>

これで、 illegal byte count というエラーが出ます。バイトカウント?  man コマンドで調べてみると。まず G の指定が出来ない!  K/M しか指定できないんですよ。今どき、 DVD の容量でも分割できないのか! とちょっといらつきながら、 M で指定してみます。

$ split -b 20000MB -d <入力tarファイル> <出力ファイル>

同じエラーが出ます。アレ? もう一度 man コマンドを見てみると、ズバリそれとは書いていませんが、 The maximum line length for matching patterns is 65536. という文言があります。そして、この split コマンド、 2005 年のクレジットがついているんです。待て待て、 2005 年だと DVD をバックアップ用に使うことはなかったかもしれない。 GB の分割なんて出来ないのか??

どうも出来ないっぽいですね。仕方ないので、 GNU ライブラリを探してみます。私の iMac には HOMEBREW がインストールされていますので、これを使って GNU split を探してみます。見つかるのは、 coreutils というユーティリティの集合体で、この中に GNU 版の split である gsplit がありました。

最初のコマンド入力も問題なく、分割できました。 macOS に含まれているコマンドで、 2005 年のクレジットが出てくるとは思っていませんでした。 GNU コマンドは最新のものになっていますので、 G 指定も問題なしです。出来れば、最初からこのレベルのコマンドを入れておいて欲しかったなぁ。

LIFEBOOK 購入

夜中にネットをうろうろしていると、昼間とは違う感覚になります。少なくとも私はなります。中古の富士通ノートブック(それもかなり古いヤツ)を安かったからという理由で購入してしまいました。別に取り立てて必要性はないのですが。。。

購入して、 Windows10 が入っていたのですが、そのまま使うのはなんか違う気がして別の OS を入れることにしました。一応、 Intel の i5 が搭載されているので、大抵の OS はインストールできます。まぁ Linux を入れることにしているのですが、最初に候補に挙がったのは、以前にも使ったことのある openSUSE Tumbleweed 。いやね、なんで普通に使うことが出来る通常リリース版ではなく、ローリングアップデート版を選んだかというと、単純に面白そうだったから。以前は macOS 上で Parallels を介して使っていました。なかなかいじりがいがある OS なので、 LIFEBOOK にもインストールしてみたのですが、なぜか起動しない。古い機種なんで UEFI は使えず、 BIOS 設定です。そして、 BIOS の設定はいいはずなのに、読みに行ってくれない。

実は、 2 週間以上悩みました。 CD ドライブからお試し環境を立ち上げて、そこからドライブを指定して立ち上げてやると起動します。しかし、リスタートしたりする必要がある場合はダメです。また CD からやり直しです。何がおかしいのかわからず、何度かクリーンインストールしてみたのですが、どうにもダメ。最終的にはギブアップしました。 openSUSE は断念です。

じゃ、次に候補に挙がったのは、 Linux mint の流れを汲む FerenOS というディストリビューション。全く知りませんでした。私は KDE が好きなので、 KDE を採用しているもので、面白そうなものを探していたのです。 FerenOS は以前は別の Cinnamon というデスクトップを採用していたそうですが、現在では KDE を使っているそうです。 Cinnamon も軽くていいんですけどね。

実はここでも手こずります。 openSUSE をインストールした SSD (システムが HDD というのはもう遅くていやなので、購入してすぐに手持ちの SSD に置換してあります)に上書きインストールしようとするのですが、いわゆるクリーンインストールのオプションが見当たりません。上書きインストールすると、 OS が立ち上がらないという同じ症状が出ます。このあたりで、鈍い私も起動プロセスがおかしいのだと言うことに気がつきます。クリーンインストールをソフト上で選択できないなら、ということで SSD を LIFEBOOK から外して、 macOS 上で FAT フォーマットしてやりました。これで以前の OS の痕跡はなくなったはずです。

まぁこれが bingo でした。今度はインストールも無事終わり、リスタートしてもきちんと立ち上がってくれます。たちがあってくれればコッチのもの。もともと mint の流れをくむと言うことは、 Ubuntu とも親戚関係ですので、 mint や Ubuntu の情報が役に立ちます。 SSH/VNC の設定をして、 macOS 上からもコントロール可能な状態にしました。少し離れたところに鎮座しています。

OS をいじってインストールするところまでで終わってしまっていまして、具体的に何に使うかは決まっていないというひじょーに微妙な立ち位置のマシンなのですが、これから使って行くつもりです。

TrueNAS CORE という選択肢

これまで、このブログでは FreeNAS というソフトのバージョンを追いかけてきました。ブログを更新しなくなってこの FreeNAS も様変わりしました。ちょっと経緯を書いてみます。

FreeNAS というのは、「 iXsystems, Inc. 」という会社が公開している NAS を作る為の OS です。正確には OS という言い方は違うのですけど、それは後ほど述べます。で、今年に入って、 FreeNAS はこれ以上バージョンアップしない。今後は TrueNAS に開発を一本化する。とアナウンスされました。 TrueNAS というのは、先に出た iXsystems が法人向けに FreeNAS を売っていくための OS です。

何でも、法人向けに営業に行くと、 FreeNAS の Free という言葉が法人には受けが悪かったのだそうです。 Free っていろんな意味がありますからね。わからないではないです。そこで、 FreeNAS は見限って、 TrueNAS という名前でやっていくとそういうことでした(かなりはしょったので、ちょっと細かいところは違うんですけどね)。

iXsystems さんは、これまで、 FreeNAS を無償で公開していました。私もそれを利用させてもらっていたんですが、 TrueNAS になって法人向けのソリューションになったことで、フリーなソリューションがなくなってしまうのかというと、ちゃんと残してくれました。それが、 TrueNAS CORE です。 TrueNAS CORE+ 専用ハード+サポートが TrueNAS と言うことになるのかしら。バージョンアップのタイミングが違うので、これも厳密には違うんですね。

さて、先ほど OS とは違うと書きました。インストールすると、 Web ブラウザ経由で細かい設定をします。この辺、最近の NAS と同じですね。 TrueNAS CORE の場合は、通常の PC にインストールして使います。ちょっと古くなった WindowsPC にハードディスク追加して、それを NAS 化出来るんですね。

実は、 FreeNAS も TrueNAS もベースになっているのは、 FreeBSD という UNIX/Linux です。そこに様々なソフトを付け加えて、 NAS 専用の高機能ソフトに仕上げてるんですね。 iXsystems は専用ハードも作っています。これが、かっこよくて欲しいのですが、日本には販路がありません。あっても売れないだろうな。マニアックすぎると思いますから。

そんなこんなで、 FreeNAS から TrueNAS CORE に変わりました。バージョンアップのタイミングですね。私もこれまで FreeNAS で運用していたシステムを TrueNAS に切り替えました。サクッと切り替えてしまったので、その手順なんかは忘れてしまいましたが、簡単でした。 FreeNAS もバージョンアップしなければ、使えます。使えますが、バージョンアップがありませんから、やっぱり TrueNAS CORE に切り替えた方がいいと思います。

NAS というと、もっと簡単なものがたくさん出ていますから、わざわざいろんな手順を踏まなければならない TrueNAS に切り替えましょうとは言えません。物好きな人は一緒に切り替えて楽しみましょう。

FreeNAS 上に FreeBSD の仮想環境作成−その 2( 挫折)

早速方針転換です。前回 FreeNAS 上に FreeBSD の仮想環境を作成しました。何をしたいのかを書いていませんでしたよね。そこから説明しようと思います。

当初の目的

私の FreeNAS の場合、 PentiumG4400 3.3GHz 2Core2 スレッドの CPU を使っています。 FreeNAS と言うぐらいですので、このマシンの本業はファイル共有になります。そして、今となってはやや非力な CPU ではありますが、余裕はたっぷりあるわけです。 FreeNAS の CPU 消費率はほぼ 5 %未満に落ち着いています。

根っからの貧乏性としてはもったいないわけですよ。 Pentium は 100 %にしたとしても発熱は小さいですよね。 5 %未満では CPU は遊んでいるだけです。それでも電力は食います。じゃぁということで、 FreeNAS に備わっている機能で遊んでみようと思い立ったわけです。何で遊ぶか。 BOINC を真っ先に思いつくのですよ。 ET を見つけようという SETI@home が有名ですが ( 残念ながら休眠に入りましたね ) 、 CPU の余剰を利用してグリッドコンピューティングしようというヤツです。これを動かせないか。これが当初の目的です。

挫折 ( コンパイルはできたものの動かない )

さて、 FreeBSD というのは私にとっては道のディストリビューションです。そもそもパッケージ管理ソフトがあるのかどうかも知りません。ググってみると、 port だとか pkg などという言葉は出てきますが、使い物になるかどうかはさっぱりわかっていませんでした。

そして、情報が少ない。 FreeBSD で BOINC を動かそうという情報が非常に少ないのです。その少ない情報も英語が圧倒的。最近使い始めた DeepL 翻訳を駆使して何とかコンパイルする方向が見えてきたのですね。これが「その 1 」前後のことです。

port というのが

Ports Collection は、 Makefile, 修正パッチ、 説明文などの一連のファイルのことです。 これらのファイルの各セットは、 個々のアプリケーションをコンパイルして FreeBSD にインストールするために用いられ、 port  と呼ばれています。 

4.5. Ports Collection の利用

ということも知りませんでした。しかし、この port に BOINC client があるんですね。私、それを見つけたところでできたと思いました。 port を実現するために、先に引用したウェブページの手続きを踏みます。曰く、

# portsnap fetch
# portsnap extract

これで、 /usr/ports/ 以下に膨大なコレクションが展開されます。その中から BOINC-Client を探して、 make && make install これで完成! と思っていました。

エラーとの格闘とバイナリとの格闘

まず、 Makefile は port の各ディレクトリにできていますので、 BOINC のディレクトリに行って make すればいいのですが、エラーが出て通りません。最初に出たのは Conflict が発生しているからダメよ。というエラー。これは思いっきり苦労しました。出たのが python のライブラリのようでして、 2 つのバージョンが混在しているというものでした。

Mac の Homebrew のようなパッケージマネージャーを想像していたのですが、 Conflict までは面倒みてくれないんですね。知識がないので、 Google さんに頼ります。頼りますが、これは! というのになかなか当たりません。見つけたのが、同じライブラリで同じエラーが出ている情報。実は、 BOINC とは全く関係ない、 NVIDIA のドライバをインストールできないという書込みでした。しかし、同じライブラリで同じエラー。もしかしたらと思いまして、 NVIDIA のドライバをインストールしてから、再度 BOINC の make を実行。なんと通りました。

Pentium の CPU ではコンパイルも時間がかかりまして、実に 15 時間近くかかりましたが、無事エラーを回避して make が完了。インストールも OK です。

しかし、ここからまた問題発生。 boinc-client が動きません。いろんなサイトを見て回ったのですが、何せ古い情報しかない。どこをどういじったのか、このブログに書こうと思ってメモりながら進めていたのですが、システムのあっちこっちをいじったため、訳がわからなくなりました。

最終的には、 root で起動しているにもかかわらず、 permission でエラーが出ていてもう訳がわからなくなりました。ということで、挫折です。断念しました。

現在テスト中

挫折したものの、得るものも多かったのですが、それで終わるのも面白くありません。この Jail という仮想環境。マウントポイントという機能があります。仮想環境と NAS の環境は厳密に分けられており、相互干渉はありません。しかしそれでは面白くないので、 NAS のフォルダを仮想環境のフォルダに割り当てて使うのが、マウントポイントです。 NAS のデータを壊さないように、リードオンリー属性で使うことが推奨されていますが、私はそのチェックボックスを外して使っています。

NAS にはいろんな動画ファイルを入れてあるのですが、この動画ファイルを再エンコードして容量を小さくできないかと思っているのですね。 h.264 でエンコードされているのがほとんどなのですが、これを h.265 に再エンコードすると最大 50 %も容量が小さくなります。

Pentium ですので、エンコード速度は遅いのですが、時間はたっぷりあります。現在テスト中です。またその 3 で書こうと思います。

FreeNAS 上に FreeBSD の仮想環境を作る−その 1

ずっとご無沙汰していたこのブログですが、更新をまた始めます。今回は表題にもあるように、 FreeNAS 上に Jail 機能を使って FreeBSD の仮想環境を作り、他のマシンから SSH を使ってログインしてやるまでを駆け足で書いてみますね。もしかしたら、追記するかもしれません。リクエストがあればどうぞ。残念ながら、私は初心者に毛が生えたようなレベルなので、参考になるかどうかはわかりません。

Jail 機能の紹介と FreeBSD の仮想環境作成

まず、 FreeNAS には Jail 機能というのがあります。 FreeNAS の機能と言うよりも、ベースとなっている FreeBSD に備わっている機能なのですが、

FreeBSD jail は OS レベル仮想化機構実装の一つである。 jail を使うと、管理者が FreeBSD ベースの計算機システムを jail と呼ばれる独立した小さなシステムに分割できるようになる。 FreeBSD jail は、レンタルサーバ業者が業者の提供するサービスと顧客のサービスとを分離するのによく使われる。 このように分離することで安全性を確保し、管理の手間を軽減できる。 サーバデーモンの設定レベルで分離するのと違い、 jail からは自分に割り当てられたファイルシステムおよびプロセス空間しか扱えないようになっている。 

https://ja.wikipedia.org/wiki/FreeBSD_jail

システムに備わっている VirtualBOX のようなものだと思っていただければいいのではないかと思います。 FreeNAS の場合、

Dashboard メニューの左に Jails というタブがありますので、そこで操作することになります。

Jails のアイコンは監獄のアイコンになっていますね。 Jail にログインすると、その他の部分にはアクセスできなくなるので、監獄に入っているようだと言うことですね。 Jails というのが監獄の意味ですから、そのまんまのネーミングと言うことになります。

タブをクリックすると通常はブランクのこのような画面が出てきます。ここではもうすでに一つ Jail を作ってあります。また、本来よりも IP アドレスなどが余分に出るようにしてあります (COLUMNS で設定できます ) 。

見てわかる通り、 ADD ボタンを押すと、 Jail を作ることができるようになります。

最初の画面では、 Jail の名前、 Type 、 Release を入力します。名前は自分の好きなようにわかる名前をつけましょう。タイプはデフォルトのままでいいでしょうね。問題は Release 。私は、過去の FreeNAS のバージョンは削除してしまうように管理していますので、最新バージョンの 11.3-RELEASE しか出てこないのですが、 11.2 や、 10.x を保存している方は、それらのバージョンも出てきますので、それを選択することもできるはずです。

NEXT を雄と画面変移しまして、ネットワークについてです。私は、固定アドレスではなく DHCP を有効にして可変アドレスにしていますが、固定にする必要がある場合は、ここで設定します。 DHCP を ON にすると、自動的に VNET も ON になります。私は深く考えずにそのまま NEXT しました。

次の画面は最終確認の画面ですね。間違いなければ SUBMIT ボタンを、間違いや設定変更がある場合は、 BACK ボタンをクリックしてください。

テストで作った「 alone 」と実際運用する「 clone 」という 2 つの Jails が表示されています。右端の>マークをクリックすると仮想マシンを起動したり、ストップしたりするメニューが現れますので、仮想マシンを起動できます。

SSH で仮想マシンに接続するために必要なこと

実はここから初心者らしく悩みます。というのも、この状態で SSH による接続をかけても Connection refused と言われて接続できません。実は Raspberry Pi などの接続でも何度もみているので、ポートが開いていないか、そもそも SSH サービスが開始されていないか、だと見当がつきます。ポートに関してはまだ全くいじっていませんので、デフォルトのままです。 22 番のポートが SSH のデフォルトですね。 SSH がスタートしていない。ありそうです。上の画面は仮想マシンのマネージメントをするための画面 ( >マークをクリックすると出てきます ) ですが、ここに SHELL というのがあります。ここで各種細かい設定をすることになります。 SSH に関してもここで設定します。

/etc/rc.conf を開いて、そこに sshd_enable=”YES” と打ち込んで、仮想マシンそのものをリスタートします。これで、 SSH は起動します。起動しますが、私はなお、ログインできません。こんどは端末の画面で、パスワードを求める画面が出てくるのですが、私、仮想マシンのパスワードを設定した覚えがありません。ユーザーとしては root ユーザーでのログインになるのですが …

あちこち検索してみたのですが、らちがあきません。知ってる人は知ってますが、 root ユーザーのパスワードはデフォルトでは設定されていないことと、 SSH での接続で、パスワードを使った接続はデフォルトでは許されていないんですね。勉強になりました。前にもこの処理したと思うのですが、忘れていました。

passwd コマンドで root のパスワードを設定します。

PasswordAuthentication=”yes”  PermitRootLogin=”yes” この 2 行を /etc/ssh/sshd_config に書き加えます ( 多分どちらもコメントアウトされて、” no ”になっていると思いますので、それを直します ) 。

ここまでのまとめ

まとめにもならないのですが、 root ユーザーのパスワードによるログインはセキュリティ上できれば回避しておきたいところですね。暗号鍵によるログインを推奨しますが、 SSH でログインできなければそれもなかなか設定できない。なので、パスワードを使ってログインすることにしました。

/etc/rc.conf 、 /etc/ssh/sshd_config この 2 つのファイルをいじりました。実はそれぞれ vim を使っての変更だったのですが、最近 nano を使うことが多く、 vim の使い方をすっかり忘れていました。慌てて本を引っ張り出したりして。

ログインして最初に行ったのは、エディタ nano のインストールだったりします。

その 1 があるので、その 2 以降もあるのですが、現在進行形ですので、次はいつになるかわかりません。できれば色々いじり倒したいことがあるので、その 2 以降に書きますね。長い記事の割に中身がありませんが、続きをお楽しみに。

FreeNAS 11.3 U2 リリース

前回、非推奨とした FreeNAS11.3 U1 でしたが、新しく出た 11.3 U2 は問題ありません。初心者におすすめするようなものではありませんが、初めて使う人にもお勧めできる物です。

前回、 Update 対象が間違っているということで非推奨としました。ちょっと厳しいかなとも思いましたが、 Update したら実はダウングレードだったというのはあまりにも痛いエラーなので、非推奨とさせてもらいました。しっかりそこは直っています。

数日使ってみましたが、気になるトラブルもなく、安定性抜群です。

このバージョンはおすすめできます。ぜひ使ってみてください。


金は天下のまわりものだ。いつもこちらをよけてまわるのが気にくわないが。

ツルゲーネフ

【非推奨】 FreeNAS11.3U1 リリース

おそらく、私が使っている PC/Mac の中で、もっとも稼働時間が長いのが FreeNAS です。 365 日 24 時間稼働をもうかれこれ 3 年程度続いています。安定しています。基本的にはおすすめしますが、新しいバージョン 11.3 U1 はちょっと癖があって、初めての人にはお勧めしません。 11.2 U8 が安定していたので、初めての人にはこちらをおすすめさせていただきます。

2 つの不具合

私の環境下で 2 つの不具合が出ています。それぞれ説明しますね。

Update のターゲットが間違っている

私が OS などをインストールして最初に行うのは、 Update の確認です。最新版をダウンロードしても、直後にバグフィックス版が出ていたりすることがあります。そういったものをチェックするんですね。

ところが、このバージョンでは Update を確認すると、この一つ前のバージョンである 11.2 U8 が Update 対象として表示され、事実実行すると 11.2 U8 がインストールされてしまいます。 Update ではなく、ダウングレードですね。何度やっても同じです。これは実行しなければダウングレードしませんので、そこだけ注意が必要です。

ログイン直後のダッシュボード表示が旧バージョンのものになってしまう

これも実害がなければ見過ごす程度のものなのですが、ちょっと癖があって残念なことになっています。 FreeNAS というのは、ブラウザでログインしてほとんどの操作を行います。ログイン直後に表示されるのが、ダッシュボードです。この記事の冒頭に表示した画面が、それです。

ところが、実際にログインしてみると、旧バージョンのものが表示されます。更に、向かって左にあるメニューをクリックしてもアクティブになりません。ブラウザのメニューバーにアドレスを打ち込むと表示されます。わかっていてもちょっとイライラしますね。

このブログを書いた後で確認したところ、上記の症状はなくなっていました。ブラウザの cache を誤認識した可能性があります。

肝心のファイル共有は安定

FreeNAS と言うぐらいですから、 NAS としての機能はどうでしょうか。こちらは安定しています。ファイル共有も速度的にも安定性が際立っていますね。 FreeNAS はシステムとデータを物理的に分けることが求められます。システムはシステムの HDD(SSD) 。データはデータの HDD(SSD) 。と言う具合ですね。システムとして USB メモリを使っている人も多いようです。

システムを入れ替えても、データ部分にはノータッチですので、 Update も比較的安心です。

厳密には、システム稼働後に ZFS の Update を推奨される。

実際に使ってみた感じですが、全く問題はありません。先に述べたインターフェースの不具合がなければ、いろんな場面でおすすめできるのですが、残念です。次の Update に期待しますし、わかった上で使う人には問題ないと思います。