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

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 に期待しますし、わかった上で使う人には問題ないと思います。

FreeNAS 11.2-U8

Build Date: Feb 14, 2020 となっていますので、1週間ほど遅れましたが、 FreeNAS のバージョンアップが来ました。 Update 8 ですね。基本バグ・フィックスになります。

FreeNAS 11.2-U8-iXsystems 、 Inc.- エンタープライズストレージ&サーバー

このブログの更新はずいぶん久しぶりになりますね。できるだけ頻繁に更新していきたいと思っています。

Update 失敗 Peppermint10 再インストール、しかし …

安定して使えていた Mac mini(2009) にインストールした Peppermint10 ですが、通常の Update をしばらくサボっていて、たまっていた Update を一気にかけたのですが、何かがおかしかったんでしょうね。起動しなくなってしまいました。

起動しなくなったと言っても色々あるんですが、今回の場合はかなり深刻。スタートアップで初期 RAM ディスクを作ってそこにデータを転送するみたいなんですが、そこでアウトになってしまいます。何度やっても RAM ディスクイニシャライズのメッセージのまま次にいきません。

この OS は至って安定していて、通常のパソコンを置いてある部屋とは違う部屋で、 Web を見て調べ物をしたり、自動でバックアップを取ったりして使っていました。通常の使用でエラーなどが出たことはなく、今回が初です。

仕方がないので Peppermint10 を再インストールすることにして、最新の ISO ファイルをダウンロードしました。サクッと USB メモリに書き込んで、再起動。ここまでは順調でした。

ところが、 USB メモリからの起動がやたらと遅い。 Peppermint10 のロゴが表示され、プログレスバーが表示された状態で 10 分以上。以前、インストールしたときよりも明らかに遅い。加えて、インストール途中でエラーが発生してしまい、インストールまでたどり着く前でループしている模様。う〜ん、なんかハードウェア ( メモリあたり ) のエラーが発生している気がします。

もう一回挑戦してみて、ダメなら分解してハードウェアの問題かどうかの切り分けをしたいと思います。

拡張カードが原因

FreeNAS の起動不良は、増設した拡張カードが原因でした。ハードディスクかと思ったんですが、見込み違いでした。現在は起動しています。

拡張カードというのは、マザーボード上の SATA ポートが不足したため、追加した PCIe の SATACard です。前の記事で“数時間このまま”と書きましたが、結局 3 時間ぐらいほったらかしにしておいたところで、なんとなく自分の見込みは違うんじゃないかと思って、ちゃんと動いていたときの状態に戻してみました。

というのも、電源モジュールを交換するときに、起動ディスクを USB メモリから SSD に変えていたんですね。それを USB メモリに戻してみた … 起動する。じゃ、 SSD が不良なのか? ふと思いついて SSD を違う SATA ポートに挿して起動してみる … 起動する。アレ? もしかして拡張カードが原因? 拡張カードを外してみるとちゃんと起動するんですよ。

拡張カードを戻してやると、データディスクとしては使えるけど、システムとして使おうとすると前の記事みたいになると言うことがわかりました。

仕方ないので、ディスクの構成を変えてシステムをマザーボード上の SATA ポートにつなぐ方法で安定動作させられました。データとして使っていたので、システムとして使えないとは思わなかった。 1 つ勉強させていただきました。


おかしいわよ、金持ちの人がお金でなんでも手に入ると思っているのは。あたし、そんなもの少しも欲しくない。好きな人とならどんな汚い部屋だってかまいやしない。気が向かなかったら、豪邸に住めっていわれたってイヤだわ。お金なんて……、そう、お金の上でダンスしてみせるわ、つばをひっかけてみせるわ。 

E ・ゾラ

FreeNAS が起動不可

電源がおかしかった FreeNAS ですが、電源交換後、エラーのため起動不可の状態になってます。困った。

pmp0:ahcich6 time out ですか?エラーが延々と出て起動してくれません。ハードディスクがエラーを吐いているらしいのですが、かれこれ 1 時間この状態です。ただ、一生懸命起動しようとしているのはわかります。英語の掲示板でも数時間このままだという報告もあがっているので、今日一日かけて FreeNAS さんが復活しようとしているのを見守ろうと思います。

FreeNAS はうちのネットワークの中では、各 Mac/PC 間のファイルやりとり。そしてバックアップを受け持っています。ファイルのやりとりには別の方法もありますので何とかなるのですが、バックアップはディスク容量の関係もあってこの子じゃないとダメです。早く復活して欲しいですね。

ところでどのハードディスクがエラーになっているのかわからないのも困りますな。


親であるということは一つの重要な職業だ。しかし今だかつて、子供のために、この職業の適性検査が行われたことはない。

ジョージ・バーナード・ショウ

サーバー機の異常 ( 電源 )

我が家のサーバー機がおかしくなってしまいました ( 号泣

もともと古いパソコンのパーツを流用して作ったものなのですが、今日気がつくとケースファンが回っていません。サーバーは通常の PC に FreeNAS という OS を入れているのです。ケースファンは全部で 4 つつけているのですが、それら全てが停止。更にハードディスクに異常が起きたときにバックアップとして動作させる用の 1 台に電源が入っていません。

一度バラしてみたのですが、 ATX 電源がおかしいことがわかりました。フルプラグインの電源なのですが、 SATA などの差し込み口 4 つのうち、 2 つが電力を供給していません。ハードディスクは全部で 7 台セットアップしてあるのですが、おかしくなった電源差し込み口を使っていたのは 1 台だけ。更に、ケースファンもおかしくなった電源差し込み口を使っていました。

ATX 電源がおかしいことは明らかなので、交換が必要ですが、私の住む新発田で交換用の ATX 電源を置いているショップはありません。新潟市までいけばあるのですけどね。電源というパーツは場所をとることから交換用なんて用意していませんでした。盲点でしたね。何台も PC を組んでいる人なら一台ぐらい転がっているのかもしれませんが、残念ながら我が家にはありません。

明日は東京に野暮用で出かけるので、秋葉原まで足を伸ばして電源を購入してこようと思っています。帰りの新幹線の時間を 1 時間ほど延ばして、その時間で秋葉原まで行ってきます。たまたまですが、楽しみが 1 つ増えました。新潟市まで出かけて購入してもいいんですけどね。どうせ東京 ( 正確には新宿に用がある ) まで出かけるのでついでです。いやホントについでです。

3 連休最後の月曜日はサーバー機の全バラし。リビルドの予定に変更です。


学習を伴わない行動は致命的である。行動を伴わない学習は無益である。

メリー・ビアード

ファイルサーバー HDD 異常

自宅内でもっとも古参のハードディスクがちょっと異常をきたしたようです。ネットワークハードディスク NAS のハードディスクですね。まだ動きますが、さっさと対策をとります。

冒頭の写真は、 Amazon さんからの LINE 通知ですね。個人的に 2TB のハードディスクが一番使い勝手がいいと思っています。 NAS には、これを 4 台。 RAID5 を組んで使っています。加えて NAS として使うことを前提にして、回転数が低いものをわざと選択しています。通常のハードディスクの場合、 7,200rpm/5,400rpm のものが主流だと思います。今回も、 7,200rpm のものではなく 5,400rpm のものを選択しました。速度的にはシークタイムが速くなるので ( 表現は正しくないですが ) 、高速のものを選ぶべきかもしれませんね。しかし、高速のものはそれだけ発熱するように感じて低速のものを選ぶようにしているんです。

こんな記事もありました。「 HDD や SSD の発熱は避けられないものなのですが、 HDD は 50 度、 SSD は 70 度が一般的に動作時の限界温度とされており、それを超えると危険といわれています。」今年の夏は 40 度近い日が続き、ハードディスクにとっては過酷な環境だったと思います。

NAS は Pentium の G4400 を CPU にした PC に、 FreeNAS という NAS 専用の OS をインストールしたものを使っています。先日から、一台のハードディスクがイエロー表示になっています。要注意ということですね。今回は同じハードディスクを 2 台買って、交換用と次の交換のための予備としています。

RAID5 にしているのは、こういうトラブルが起きたときの対処がしやすいことにあります。 RAID5 はパリティーを持っていますので、一台の故障には対応できます。同時に 2 台故障したら泣かなければなりませんけど、今回のように一台だけなら対象の一台を交換してリビルドさせれば OK です。

ハードディスクには NAS 用という信頼度を上げたものが存在していますよね。私、あんまり信用していません。高信頼度のものでも故障するときはする。今回買った Seagate の BarraCuda シリーズは、 NAS 用ではなく一般用ですね。いろんな考え方があるかと思いますが、一般用でも十分だと判断してます。 Seagate というメーカーも故障率が高いとか言って敬遠する人がいます。私の環境ではかなり高い精度で安定しているんですよ。 HITACHI 製のハードディスクよりも印象いいです。

さて、明日早速届きますので、作業してしまおうと思います。


「オレんちのテレビは 60 インチ……あ、計算を間違えた。 21 インチ。競馬を見ると馬が大きく見えるように、でかいテレビが欲しいんだ」

高田純次