れんとう

まいにち なにか ひとつ

またDNS設定!

またDNS

うちのメインDNSとして使っていたIntelNUCですが、内臓のFANが壊れたみたいで時々唸る。ので、そろそろ替え時かな?とね。

何にしようかなと思いながら片付けしてたら、出てきたRaspberryPi 3B+。SDカードも刺さってるし、これ、何入ってる?と起動してみたら…

 

…OpenBSD7.0が入ってる?

 

いついれたの?俺。

 

なら、NUCと交換だ!とばかりにおっぱじめました。

 

キャッシュDNS構成にしておいてよかった

うちにはVMもPMもごろごろしてて、DNSのIPが変わると設定変更がとてもめんどくさいから、キャッシュDNSを使う構成にしてる。VMもPMもDNSはキャッシュDNSのIPを登録してる。

こんな感じ。

dawon2015.hatenablog.jp

ということで、手順としては

 

①NEW DNSを単独で動くようにして、digで試す。

②SlaveDNSをNEW DNSと通信できるようにして、digで試す。

③キャッシュDNSフォワーダーをNEW DNSに切り替え

④OLD DNSの電源をそっと落とす

 

ということで、機器切り替えに伴う停止なく、無事に終わりましたとさ。

SlaveDNSの挙動?

SlaveDNS in BINDなんだけど、rdc-transferコマンド打たないとMasterDNSからゾーン情報持ってこなかった…

SlaveDNS in NSDnsd-control transferコマンド打ってからnsd-control writeコマンド打たないと、slave zone ファイルを書き込みしなかった。

 

そういう仕様なの?

 

とりあえず、うまくうごいてるから良しとしよう(笑

近代化改装!Core i7 2600K

PCがあまる

うちには、2011年9月に構築したCore i7 2600Kなデスクトップが1台ありましてね。

WIndows7VineLinux(in VMware Serer) → ESXi

と変遷しながら仮想化サーバーとして大活躍していたわけですよ。

ところが、2020年にもなると、ちょっと重たいな?と感じ始めたので、思い切ってね。

Core i7 10700Kで新たなESXiを構築しちゃったわけです。

なので、2600Kはお役御免になったのだけど、ね…

 

MOTTAINAI

10年近く前のCPUとはいえど、4コア8スレ。Vt-dもついてる!

メモリは16GB載ってるし、マインボードもASUSのZ68。

電源ユニットも贅沢に600Wを載せてるし、これは雷で壊れて2017年に換装したばかり。

そう!6世代前のテクノロジーで構築されているとはいえ、骨格がしっかりしてるので、まだまだ使えそうな雰囲気なんですよね。

なにか使い道ないかな?試しにWin11でも?と思ったら…TPM2.0なんて対応してないので、あきらめて…Linux入れてみたら、これが結構使い物になるんですよ。

ということで、お得意の、近代化改装が始まっちゃうわけなんですよ。

2020年から2年立ってるって?

ああ、その間は、ESXiの予備機としてモスボールしてた!

 

Quadro 2000を搭載

サーバーからホビーユースに用途変更するにあたって、まず考えてのがグラボ。

サーバーのときはグラボは適当でよかったので内蔵GPUを使ってたけど、今度は動画編集も試したいし、いっそOpenGLもやてみたい!

ということで、選択したのが、Quadro 2000。

選んだ理由?

「メインボードがPCI Express 2.0までで、それに対応してるグラボをジャンク屋で探してたらちょうど売ってたから」

そんな適当な理由でいいの?しかも、ジャンクで買ったから1,000円だよ?

無事動いてるし、ベンチとかとってないけど、動画再生してもいい感じなんで、きっといいんだと思うよ?

ってことで、まずは、グラフィック性能をあげました!

Bluetoohは…はまった!

デスクトップとして使うから、常用するキーボードとマウスは必須。

ちょうど、今使ってるBluetoothのキーボードとマウスが3チャンネル対応で、1チャンネル余ってるから、それを使おう!ということで、Amazonで1,000円で売ってたUSBドングルを購入して刺した!

が!これだ大変なハマりポイントでした。

結論としてなんだが…

 

EFIでブート

 →USBの動作不安定?system status bluetoothで見ると、時々、止まったり暴走してる。もちろん、マウスもキーボードもぷちぷち切れるし、有線つなぎながらの設定作業になるし、もう、キレそう

 

BIOSでブート

 →起動時、おちつくまではちょっと不安定だけど、つながってしまえばあとは安定

 

ということで、BIOSブートにすることで決着した。

 

しかし…この結論に達するまでに、OS(ubuntu)のバージョン変えながら、OSのインストールを10回以上やってみたのは、内緒。

 

Bluetoothが落ち着けばあとは順調。

ジャンク屋で1,000円で買ってきた、DUAL SHOCK3も普通に使えるし、ワイヤレスイヤホンモジュールも接続できる。

ということで、今どきPC風にBluetoothも使えるようになったんだな!

 

Intel Rapid Storage Technology(IRST)で大ハマリ!

Z68チップセットなんで、ソフトRAID機能がついてるんだけど、ESXiでは対応しないので使ってなかった。最近のLinuxだとカーネルモジュールで対応してるらしいので…

「RAID0(ストライプ)したらストレージ爆速でうはうは!」

とやってみたのも、実はドハマり。

2.5インチのHDDが2個余ってたんでこれで試したんだけど…もう遅いのなんのって!

OSのインストールには1時間位かかるし…インストール後の起動にも15分くらいかかるし…息してる?ってくらい遅くて、お前ほんとにRAIDか!と激おこレベル。

腹立ったんで単品でやって見ても、遅い。

なんで?

ということで、決着したんだけど、5400rpmのHDDを使ったことが原因みたい。

別の7200rpmのHDDを単品で使ってみたら、ごく普通に使えるようになった。

IRSTが悪いのか、HDDの基本性能なのか、原因は切り分けできてないけど、とりあえず、単品で動いたからよしとする。

いずれ、SSDでIRSTはもう一回チャレンジしたいね。

 

大復活!Core i7 2600K

ということで、すったもんだの末に動き出した、Core i7 2600K。

OSはUbuntu 20.04.4LTS。

VMware Playerも動いてるし、RDPも使えるし、メインで使ってるMacとそんなに変わらずに使えるかな?

Office系アプリもOffice365入ってるから、Web版使えばいいし、もうこれ、メインマインでいいや!

と、システムモニタ見ながら、8発エンジンの動作にニヤニヤしているのです。

f:id:dawon2015:20220413005354p:plain

そして…これから

ということで、新品買ったわけでもないのに、PCが1台転がり出てきてすごく得した気分!

普段使ってるPCがCore i3とかCore i5な上にメモリはせいぜい8GBだから、6世代前とはいえCore i7な上にメモリ16GBだとこんなに快適になるのか!

これから、プライベートは脱Windows目指して頑張ろうかと、思うのです。

 

謹賀新年2022、そして、ntpd.conf(OpenNTPd)を和訳したよ

謹賀新年2022

あけましておめでとうございます。

今年もよろしくお願いいたします。

思えば、2017年に、「毎日何かやって投稿しよう!」と思って始めたこのブログですが、仕事が忙しくていつの間にかほったらかしになってました。

年も改まったことですし、再始動しようかな?と思う次第でございます。

時は金なり

相変わらず、物理or仮想を問わず、Linux環境がゴロゴロしてる我が家なわけですが…昨年、ドメインコントローラーと連携するストレージサーバーの設定をせっせとやっておりました。DCはSamba、ストレージはFreeNASなんですけどね。

設定にはとにかくハマりまくったのですが、そのうちの一つの要因が、「時計合わせ」各サーバーの時計がでたらめだったもんで、うまく同期してくれなくて、倒れそうなくらいハマりまくったというね。NICTの公開NTPであるntp.nict.jpに時刻同期してなんとかしたということがありました。

ネット回線が太い昨今とはいえ、各々のマシンが外部にトラフィックを出すというのも如何ながものかな?と思うので、ローカルにntpdを構築することに。

せっかくなので、LinuxではなくてOpenBSDでやってみようかなと思い立ちましたとさ。

同姓同名の別人?

相変わらず、ハマりの神様からは好かれてるのかな?

LinuxでもやったことあるからOpenBSDでも余裕でしょ?と適当にntpd.confをいじりまくったら、全くうまくいかないというね。

manページをじっくり読んで悟る。

「ntpd.conf、LinuxのntpとOpenNTPdで全く違くね?」

ということで、勉強し直しだぁ!とばかりに和訳して設定して、うまく行きましたとさ。

せっかく和訳したから、載せとくね?

ということで、拙い和訳ですが、せっかくなので、載せときますね。

なお、内容というか和訳の精度については、一切保証できません、ごめんなさい。

参考までに、ということで。

では、今年もゆるゆるとやっていきますので、よろしくです!

----------------------------------------------------------

名称
    ntpd.conf   Network Time Protocol デーモン設定ファイル

解説
    このマニュアルページでは、ntpd(8)設定ファイルのフォーマットを解説する。
    ntpd.confは下記のフォーマットになる。
    空行と'#'で始まる行は無視されるされる。
    キーワードは設定ファイル中で複数回指定されるかもしれない。基本的な設定オプションは下記の通り。
    
    listen on address[rtable table-id]
        ntpd(8)が動作するローカルIPアドレスまたはホスト名を指定する。複数回指定した場合は、それぞれのアドレスで動作する。もし、アドレスとして'*'を指定すると、ntpd(8)は明確なルーティングテーブルを用いた全てのローカルアドレスで動作する。ntpd(8)は標準ではどのアドレスでも動作しない。rtableオプションは動作するルーティングテーブルを指定する。標準では、ntpd(8)は現在用いられているルーティングテーブルを用いて動作する。
        (例)
            listen on *
            または
            listen on 127.0.0.1
            listen on ::1
            listen on 127.0.0.1 rtable 4

    query from sourceaddr
        ntpd(8)が外部問い合わせに使うべきローカルIPアドレスを指定し、その後にserversを指定する。そのIPアドレスはそのPC上で使用できる複数のIPアドレスを指定することができる。
        (例)
            query from 192.0.2.1
            query from 2001:db8::1

    sensor device[corrrection microseconds][refid ID-string][stratum stratum-value][trusted][weight weight-value]
        ntpd(8)が使用すべき時間センサーデバイスを指定する。sensorは複数回指定できる。ntpd(8)は実在するそれぞれのセンサーを使用できる。実在しないセンサーは無視される。もし、デバイス名称として'*'が指定された場合は、ntpd(8)が認識した全ての時間センサーデバイスを使用する。
        (例)
            sensor *
            sensor nmea0
        
        correction
        センサーとのズレを補正するためのマイクロ秒を指定する。最大値は127秒。
        (例)DCF77が実時間と70msずれて受け取る場合
            sensor udcf0 correction 70000
        
        refid
        ID-stringはセンサーのタイプを4文字以上のアスキー文字列で指定する。RFC2030はいくつかの一般的な参照識別子を提案しているが、新しい識別子はふさわしいものとして考案できる。もし、ID-stringが指定されない場合は、ntpd(8)は一般的な参照IDを用いる。
        (例)
            sensor nmea0 refid GPS

        stratum
        stratumのデフォルトは1であるが、変更する場合に指定する。

        trusted
        学習された時刻が、セキュア、信頼できる、そして中間者攻撃をされやすくないことを示し、constraintsを有効にしてもスキップされる。これは、constraintsが使用できない環境でブート時間を合わせる時に有効である。

        weight
        関連した重要なタイムソース(serversまたはsensor)を越えてコントロールを許可する。値は1〜10までを指定する。指定しない場合は、デフォルトは1になる。例えば、weightに5を指定したサーバーは、1で設定したサーバーであっても、5回時間のズレを調整する。

    server address [trusted] [weight weight-value]
        同期するNTPサーバーのIPアドレスまたはホスト名を指定する。もし、複数回指定した場合は、ntpd(8)は全ての指定したサーバーと同期を試行する。もし、複数のIPv4またはIPv6アドレスのホスト名を名前解決する場合は、最初のアドレスを使用する。もし、応答がない場合は、ntpd(8)は次のIPアドレスにリトライし、稼働しているIPアドレスが見つかるまでリトライを続ける。
        (例)
            server 10.0.0.2 wieight 5
            server ntp.example.org weight 1
        冗長的に提供するために、複数のサーバーを設定することが良い方法である。一般的に、ネットワーク遅延の低いサーバを使用すると最も正確に時刻を得られる。

    servers address [trusted] [weight weight-value]
        serverの場合と同様に、同期するNTPサーバーのIPアドレスまたはホスト名を指定する。もし、複数回指定した場合は、ntpd(8)は全ての指定したサーバーと同期を試行する。複数のIPアドレスの名前解決ができれば、ntpd(8)は全ての指定したサーバーと同期を試行する。もし、複数のIPv4またはIPv6アドレスのホスト名を名前解決する場合は、最初のアドレスを使用する。
        (例)
            servers pool.ntp.org
            servers pool.ntp.org weight 5

制限事項
    ntpd(8)は、TLSで暗号化された信頼されたHTTPSサーバーに'日付'を問い合わせするように設定することができる。この時刻情報は精度が高いものとしては使用できないが制限を証明されたものとして動作し、それによって、認証されていないNTP中間者攻撃の影響を減らす。制限範囲外のNTPサーバーから受け取ったNTPパケットは破棄され、そのようなサーバーは免役としてマークされる。

    constraint from ule[ip]
        constraintを提供するHTTPSサーバーのURL、IPアドレス、ホスト名を指定する。もし、URLを複数指定した場合は、稼働しているURLが見つかるまで試行する。URLと期待された証明書の名前は指定されたURLとして常に取得される。もし、constraint fromを何度も用いる場合は、ntpd(8)は指定された全てのサーバーの中間値を算出する。
        (例)
            servers ntp.example.org
            constraint from www.example.com
            constraint from "httos://9.9.9.9" "2620:fe::9"
    
    constraints from url
        constraintの場合と同様に、constraintを提供するHTTPSサーバーのURL、IPアドレス、ホスト名を指定する。複数のIPアドレスの名前解決する場合は、ntpd(8)はそれら全ての中央値を算出する。
        (例)
            servers pool.ntp.org
            constraints from "https://www.google.com"

ファイル
    /etc/ntpd.conf
        デフォルトのntpd(8)設定ファイル
    /etc/example/ntpd.conf
        設定ファイルのサンプル

参照
    ntpctl(8)、ntpd(8)、sysctl(8)

履歴
    初出 OpenBSD 3.6

 

在宅勤務艦橋(誤字ではない)

新型コロナウイルスの感染拡大で、在宅勤務に入った。
在宅勤務とかお家でお仕事というのはずっと憧れのワードではあった。
それがこんな形で実現するとは皮肉なものである。

憧れがあったから?というのもあるが、自宅の環境はそれなりに整えてきたので、もはや、艦橋である。
在宅勤務に入り、職場とは違う環境で苦労しているというお話も聞くが…うん、実は、会社にいるよりもお家の方がとても快適だったりする。
そんな、自慢の「在宅勤務艦橋」を整えているものについて、ちょっと自慢してみようと思う。

なお、今回紹介する各種アイテムについては、宣伝目的ではありません。
あくまでも個人的な感想で、今回の執筆にあたってお金をいただいているわけではありませんので、ご了承ください。

 

ディスプレイの大きさはそのまま快適度に

うちで使っている24.1インチ液晶ディスプレイはこちら。

www.asus.com

 

今時、24インチ?ということなかれ。
これを購入したのは2012年末のこと。
Mac mini(late 2012)の購入に合わせてだったと思う、
当時(今も?)主流だったフルHDの1920x1080ではなく、ちょっと大きめの1920x1200だったんだ。
はい、高かったです。フルHDなら2万円くらいで買えるけど、これ、7万年くらいした覚えがある。

まず、解像度が大きめなのが嬉しい。ウィンドウ多数開きの俺には使い勝手がいいのです。
次に、インターフェースも多いんですよ!
USB3.0対応の4ポートハブ機能がついていて、PC本体が遠くに置いてあっても、手元でUSB機器を扱える。
これ、かなり便利です。Mac miniのUSB端子が背面についているから、なおさらのこと。
入力端子も、DP、HDMI、DVI-D、D-Sub15と全部ついてます。なので、どんなPCにも接続できる!
これも、PC複数持ちの人にはとても便利だと思う。
Mac miniはDPでつないで、別のノートPCからはHDMIでつないで、ESXiサーバーからはD-Sub15でつなぐ、という使い方で、入力切替ボタンでさくさくっと変更できる。昔のように、ディスプレイ切替機が不要なので、とても重宝してます。

 

デスクは広く、L字型

うちで使っている机は、こちら!

 

www.low-ya.com

 

学生の頃、「会議室の机」を愛用していた。
ほら、会議室によくある、足のたためる、長机。
あれをL字に並べてね。それはそれはとても便利でした。
長方形の机を使っていると、どうしても、サイドテーブルが欲しくなる。
ならば、サイドテーブルも含めてL字型!という結論です。
LOWYAのこの机、足も天板も作りがしっかりしていて、多少、打鍵が激しくても揺れることもなければ、地震が来てもビクともしない。重いのと組み立てが大変ではあるけれど、作業性を考えると広くて大きな机はおすすめです。

 

空間を立体的に使おう

作業性のより空間を使うコツは、立体的であること。
ってことで使ってるのが、こちら!キングジムのディスプレイボード。

 

www.kingjim.co.jp

 

耐荷重が高くないので、重いものは載せられないけどレド、空間が立体的になるってほんと便利。
うちでは、ここに、時計、小型スピーカー、スマホを置いて使ってます。
スマホ置くのは特に便利!手前のとこに溝があって、そこにいい感じで、スマホが置ける。
溝にはまるので、スマホスタンドがなくても立てられます。
タブレットも小型なら十分置ける。
これはとってもおすすめです。

 

空間を立体的に使おう!その2

やっぱり空間は立体的に使いたい!
ってことで使ってるのが、こちら!キングジムのデスクボード。

 

www.kingjim.co.jp

 

モニタの置くと、意外と場所を取る。デスクがとっても狭くなってしまう。
こんな時に使えるのが、このデスクボード!
とっても便利。
うちでは、メインマシンはMac mini、なので、デスクボードの下に本体を入れてます。
サブマシンのWindowsノートもクラムシェルで使ってることが多いので、やっぱりデスクボードの下に。
机の上を出来るだけ広く、スペースを開けておく事。これが快適な作業空間を作るコツなのです。

という事で、ざっくりと紹介してみました。

正直、職場のデスクより自宅の方が快適な環境です。
ここに座って、陣頭指揮を取っていると、気分はまさに「艦橋に座る司令官」。
もう、会社には戻れない(笑

新型コロナの騒動がいつまで続くのかわかりませんが、快適な在宅環境の構築するためのご参考になれば、幸いです。

 

 

秋葉原回顧録 第2回 ぷらっとホーム 〜UNIXの理想郷は本当にあったんだ!〜

ビルまるごとUNIX専門店、そんなところがあったなんて信じられますか?
本当にあったんです。その名も、ぷらっとホーム。

ミツワビル、今は、@ほぉ〜むカフェになってる、あのビルです。
「ぷらっとホームが@ほぉ〜むになった!」というのは有名なネタセリフですね。

デジカメデータを漁っていたら、在りし日のぷらっとホームの姿があったので、貼っておきますね。
2002年12月に撮影したもののようです。

 

f:id:dawon2015:20191202011445j:plain

かつては、店主の本多さんの似顔絵看板だったのも懐かしい。

ほんと、すごいお店だったんですよ。
BeBoxも展示してたし。

BeOSのパッケージも販売してた!パッケージではないけど、以前、DLしてインストールしたBeOSの写真も貼っておきますね。

これ…VMじゃなくて、実機で動かしてた頃の、貴重なスクショなんだぜ!

f:id:dawon2015:20191202011948j:plain



レゴマインドストームなんかもいち早く輸入販売初めててたし。
あの頃は、ネット回線も細かったし、CD-RWも一般的じゃなかったんですね。
なので、PC-UNIXのインストールディスクが売ってるのは嬉しかったし、日本ではまだメジャージャないもの、NetBSDとかOpenBSDとか珍しいものがゴロゴロしてた。OpenBSDがまだ2.9だった頃にCDセットを買ったのもこのお店。
PCパーツにしても、PC-UNIXで完動するブツが揃っていて、大変お世話になりました。
ISAバスのNE2000互換NICとかSoundBlaster16とか、色々、ね。

陳腐な言葉かもしれないけど…未来を見せてくれて、ドキドキとワクワクをくれるお店だったんだ…。
UNIXの理想郷は本当にあったんだ!

そんなUNIXの理想郷も、2005年、店舗を閉鎖して、通販サイトと法人事業に特化した時は…とても悲しかったことをよく覚えている。

時代の流れだったんですかね?
2005年といえば、秋葉原ダイビルの開業、電車男ブーム、ヨドバシAkibaの開店。そして2006年には秋葉原UDXの開業。
ちょうど、秋葉原が変貌する時期に姿を消しました。
でも、それはよかったのかもしれない。
2000年にアプライアンスマイクロサーバーとして登場したOpenBlocksは、OpenBlocksIoTと進化したラインナップも加えて、今も存在している。
数々の店舗が、閉鎖から通販特化へと移行しつつも姿を消したという事実を思うと、今もそのDNAが脈々と受け継がれて企業として続いていることは、嬉しい限りだな、と思う。

キャッシュDNSの夢を見た

またDNSをいじってる…

かつて、「DNSは全ての基本」と教わった。
三つ子の魂百まで。DNSの設定ができてこそ一人前だと思っている。
基本的なことしかできないけどね(笑)

で、だ。
また、BeagleBone Blackでセカンダリを立ち上げたので、嬉々として、各クライアントにDNSIPアドレスを書き込んで喜んでいたのだよ。
そして、ふと、気がつく…これ…DNSのアドレスが変更になったら、すごくめんどくさくないか?とね。

ならばcacheのアドレスを書けばいいじゃない?

ということで、cacheDNSのアドレスを書き込んでおけば、MasterDNSのアドレスが変更になったら、cacheDNSでの設定を変えるだけで済むよね?ということで、cacheの設定を見直すことにした。

今のDNSの構成はこんな感じ。

 

MainRouter

├──RouterA

  ├──DNS(Master)

      ├──DNS(Slave1)

      ├──DNS(Slave2)

      └──DNS(cache)

  └──DNS(MasterCopy)

└──RouterB

    └──DNS(Master)

 


このツリーが示すように、cacheはマスターの下にぶら下がっていて、全ての問い合わせをMasterDNSに投げている。
MasterDNSがローカルかグローバルかを判断して、自分自身(ローカル)かMainRouter(グローバル)に問い合わせして、cacheDNSに答えを返している。
でもね、これ、よく考えてみると、MasterDNSがこけたら、全てアウト。SlaveDNSを2つも構築している意味がないじゃんね。

なので、こうした。

・ローカルゾーンの名前解決は、MasterDNS、SlaveDNS1、SlaveDNS2のいずれかに問い合わせする。
・それ以外のゾーンはグローバルとみなして、MainRouterに問い合わせする。

という方針で、設定を考えてみた。

unboundの設定を変える

cachheDNSはunboundで構築してるわけだが…これ楽だね?
BINDはキャッシュと権威が同居してるけど、unboundはキャッシュ機能がメインなので、設定がすっきりとかける。
はじめ、間違って、stub-zoneに設定を書いたけど、forward-zoneにちゃんと書いてうまくいったよ。

設定ファイルはこんな感じ。

 

# chache server

 

server:

    interface: 172.18.10.9 DNSサービスを稼働するNICIPアドレス

    do-ip6: no

 

    access-control: 0.0.0.0/0 refuse ← 全拒否

    access-control: 172.18.0.0/16 allow ← からの、ローカルIPからは許可

 

    hide-identity: yes

    hide-version: yes

 

local-zone: "18.172.in-addr.arpa." transparent ← 名前解決したいプライベートIPのゾーンを指定

 

remote-control:

        control-enable: yes

        control-use-cert: no

 

forward-zone:

name: "dedara.jp." ← 名前解決したいローカルドメインを指定

forward-addr: 172.18.0.1 ← MasterDNSにフォワード

forward-addr: 172.18.10.8 ← SlaveDNS1にフォワード

forward-addr: 172.18.101.103 ← SlaveDNS2にフォワード

 

forward-zone:

name: "18.172.in-addr.arpa." ← プライベートIPのゾーンを指定

forward-addr: 172.18.0.1 ← MasterDNSにフォワード

forward-addr: 172.18.10.8 ← SlaveDNS1にフォワード

forward-addr: 172.18.101.103 ← SlaveDNS2にフォワード

 

forward-zone:

        name: "." ← 上記以外の全てのゾーン

        forward-addr: 192.168.0.1 ← プロバイダ接続しているルーターフォワード

 


うん、言われて見ればそうだよね。
こうなるよね。

MasterやSlaveをstopとstartを繰り返して、片肺で動かしつつ、digしながらローカルとグローバルを正引き、逆引き、ちゃんとできるか試してO.K.でした。

こうしてcacheは完成!

実稼働環境では、DNSって1度構築すると設定をやり直すことって少ないよね。
停止したらえらいことになるからね。
若い頃にしくじって実環境で止めちゃってシヌかと思ったこと何回かあるよ。
だからこそ自宅のテスト環境で色々試して遊びたい!
単純なDNSの案件しかやったことないけど、こういうちょっと変わったのの設定もやれるようになりたいな。
と、初心に返って思うのですよ。

BeagleBone BlackにOpenBSD6.5をインストールしてみた

BBBとの出会い

あれは2013年の暮れのこと。
秋葉原をふらふらとしていたら、ふと目に止まったビーグル犬のパッケージ。
それが、BeagleBoneBlack(以下、BBB)だった。

 

f:id:dawon2015:20191117111634j:plain

 

Arduinoが2005年、BeagleBoardが2008年、RaspberryPiは2012年。
この頃は、シングルボードコンピュータの流行時期ではあったと思う。

 

f:id:dawon2015:20191117111718j:plain

 

2BeagleBoardをDigi-Keyに発注したのだが、品切れでなかなか手に入らず、「入荷したからいついつまでに入金してくれたら出荷するよ?」ってメールが届いてたんだが、諸事情で入金できずに手に入れられなかったのが2012年のこと。

そんなこともあったので、BBBを目にした瞬間、「多分、BeagleBoradの新しい版なのだろうな、手に入るうちに買っておくか」ととりあえず購入した。
そして、その後、放置プレイになってしまった、BBBだったのであった。

ちなみに、BBBの公式サイトはこちら。

beagleboard.orgBBBに何を入れる?BBBに何を入れる?

BBBに何を入れる?

性能的にはRaspberryPi初代とほぼ同じかな?と感覚的に思うのが、このBBB。
オンボードflashストレージにはAngstromがプレインストールされていてる。
SDカードを使えば、他のLinuxディストリビューションAndroidも動かすことができる。
GPIOも付いているが、今回はマイクロサーバーとして使うつもりなので、それはまあどうでもいいか。
ということでいろいろと調べていて、わかったこと。
OpenBSDBeagleBoardに付いては公式対応しているとのこと。RaspberryPiは公式対応していない。
いろんなLinuxはRaspberryPiで試せばいいことだし、ここは、OpenBSDをインストールすることにする。
で、いろいろと調べてみたら、こちらのようなサイトがありました。

 

unosodoku638kam.hatenablog.com

 

インストーラーはminirootなので、ネットワークインストール必須
HDMI出力でインストール画面をディスプレイに出力できないので、シリアル接続
・シリアル変換アダプターは5Vと3.3Vの変換アダプタが必要

OpenBSD自体、興味はあったものの、インストールなんてほとんどやったこと無いし、シリアル接続にしろネットワークインストールにしろやったこと無い。なんかめんどくさいなぁ(当時の俺)だったので、必要な部品は買い集めたものの、長い放置に入ってしまうのである。

再始動 2019

OpenBSDルーターを作った。
macOSからYAMAHAルーターにシリアル接続して操作するのにも慣れた。
BBBを放置してる間、RaspberryPiをいくつも立ち上げてマイクロサーバーの扱いにも慣れた。
いろいろと高まった今なら、できる!とふと思い立って、BBBにOpenBSDをインストールすることにした。

SDカードにminiroot書き込みして、シリアルコンソール繋いで、ネットワークインストールする。
うん、それだけだ。よし、やるぞ!

シリアルコンソールの接続

FTDI USBシリアル変換アダプターを使って、PCとBBBをUSB接続する。
変換アダプタはスイッチサイエンスさんのこちらを使用。

www.switch-science.com

ドライバは下記からダウンロードしてインストールできる

www.ftdichip.com

BBBへの接続はこんな感じ。

f:id:dawon2015:20191117112507j:plain

ちなみに、向きは注意!逆向きに接続してしまうと何も表示されなくて、何で?とハマるので気をつけて。うん…実はそれでハマったんだ。
(*ノω・*)テヘw

今回の母艦はmacOSを使用した。
macOSで認識してるか、ターミナルで確認。

 

$ ls -l /dev/tty.* ← 接続前

crw-rw-rw-  1 root  wheel   18,   0 11 10 03:23 /dev/tty.Bluetooth-Incoming-Port

$ ls -l /dev/tty.* ← 接続後

crw-rw-rw-  1 root  wheel   18,   0 11 10 03:23 /dev/tty.Bluetooth-Incoming-Port

crw-rw-rw-  1 root  wheel   18,   2 11 11 00:09 /dev/tty.usbserial-A901OE8R ← 認識できてる

$ screen /dev/tty.usbserial-A901OE8R 115200 ← スクリーンコマンドで接続

 

 

よしよし、認識してる。

screenコマンドで接続後は、

ctrl+aでコマンド選択モードになる。
ctrl+a y なら screenを終了。
ctrl+a h なら ハードコピー。
ctrl+aの後に:の入力でコマンドモードになるので、
:hardcopy -h ログファイル名
でバッファ内の作業ログも保存できる。

SDカードへの書き込み

OpenBSDのminirootをダウンロードしてきて、SDカードに書き込む。
いつものjaistさんのお世話になることにした。

ftp.jaist.ac.jp

 

armv7のam335xを使用することにする。

f:id:dawon2015:20191117113025j:plain

macOSで書き込みするときは、

diskutil list でデバイスの確認
diskutil eraseDisk でフォーマット
diskutil unmountDisk でアンマウント
dd で書き込み
diskutil unmountDisk でアンマウントしてから抜き取り

の手順になる。

 

$ diskutil list ← デバイスリストを表示

/dev/disk0 (internal, physical):

   #:                       TYPE NAME                    SIZE       IDENTIFIER

   0:      GUID_partition_scheme                        *1.1 TB     disk0

   1:                        EFI EFI                     209.7 MB   disk0s1

   2:                 Apple_APFS Container disk1         1.1 TB     disk0s2

 

/dev/disk1 (synthesized):

   #:                       TYPE NAME                    SIZE       IDENTIFIER

   0:      APFS Container Scheme -                      +1.1 TB     disk1

                                 Physical Store disk0s2

   1:                APFS Volume Machintosh SSD          382.0 GB   disk1s1

   2:                APFS Volume Preboot                 46.5 MB    disk1s2

   3:                APFS Volume Recovery                507.4 MB   disk1s3

   4:                APFS Volume VM                      3.2 GB     disk1s4

 

/dev/disk2 (disk image):

   #:                       TYPE NAME                    SIZE       IDENTIFIER

   0:      GUID_partition_scheme                        +524.3 GB   disk2

   1:                        EFI EFI                     209.7 MB   disk2s1

   2:                  Apple_HFS Time Machine バッ...    523.9 GB   disk2s2

 

/dev/disk3 (internal, physical): ← SDカードは/dev/disk3であることを確認。

   #:                       TYPE NAME                    SIZE       IDENTIFIER

   0:     FDisk_partition_scheme                        *8.0 GB     disk3

   1:             Windows_FAT_32 boot                    43.5 MB    disk3s1

   2:                      Linux                         8.0 GB     disk3s2

 

$ sudo diskutil eraseDisk MS-DOS NONAME /dev/disk3 ← まずは、フォーマット

Started erase on disk3

Unmounting disk

Creating the partition map

Waiting for partitions to activate

Formatting disk3s2 as MS-DOS (FAT) with name NONAME

512 bytes per physical sector

/dev/rdisk3s2: 15268160 sectors in 238565 FAT32 clusters (32768 bytes/cluster)

bps=512 spc=64 res=32 nft=2 mid=0xf8 spt=32 hds=255 hid=411648 drv=0x80 bsec=15271936 bspf=1864 rdcl=2 infs=1 bkbs=6

Mounting disk

Finished erase on disk3

$ sudo diskutil unmountDisk /dev/disk3 ← アンマウントする

Unmount of all volumes on disk3 was successful

$ sudo dd if=miniroot-am335x-65.fs of=/dev/disk3 ← minirootのインストーラーを書き込み

36864+0 records in

36864+0 records out

18874368 bytes transferred in 18.447924 secs (1023116 bytes/sec)

$ 

$ diskutil list ← 書き込み結果の確認

/dev/disk0 (internal, physical):

   #:                       TYPE NAME                    SIZE       IDENTIFIER

   0:      GUID_partition_scheme                        *1.1 TB     disk0

   1:                        EFI EFI                     209.7 MB   disk0s1

   2:                 Apple_APFS Container disk1         1.1 TB     disk0s2

 

/dev/disk1 (synthesized):

   #:                       TYPE NAME                    SIZE       IDENTIFIER

   0:      APFS Container Scheme -                      +1.1 TB     disk1

                                 Physical Store disk0s2

   1:                APFS Volume Machintosh SSD          382.0 GB   disk1s1

   2:                APFS Volume Preboot                 46.5 MB    disk1s2

   3:                APFS Volume Recovery                507.4 MB   disk1s3

   4:                APFS Volume VM                      3.2 GB     disk1s4

 

/dev/disk2 (disk image):

   #:                       TYPE NAME                    SIZE       IDENTIFIER

   0:      GUID_partition_scheme                        +524.3 GB   disk2

   1:                        EFI EFI                     209.7 MB   disk2s1

   2:                  Apple_HFS Time Machine バッ...    523.9 GB   disk2s2

 

/dev/disk3 (internal, physical):

   #:                       TYPE NAME                    SIZE       IDENTIFIER

   0:     FDisk_partition_scheme                        *8.0 GB     disk3

   1:             Windows_FAT_32 BOOT                    2.1 MB     disk3s1

   2:                    OpenBSD                         15.7 MB    disk3s4

 

$ sudo diskutil unmountDisk /dev/disk3

Unmount of all volumes on disk3 was successful

 

これで、書き込みは完了!

BBBへの起動とインストール

BBBには起動スイッチは無い。
USBケーブルかACアダプタを接続し、通電すると起動する。
5V2Aの電源が必要になる。今回はUSBタップを接続してみた。
ACアダプタなら、外径5.5mm、内径2.1mm、センター側プラス、5V2Aの規格品を使用する。ちなみに、手元にある、AD-P50P200がちょうどよかった。

SDカードをさしていざ起動!なのだが、そのまま起動すると、内臓flashstorageのOSがロードされてしまう。SDカードスロット側にあるスイッチを長押ししながら起動すると、SDカード内のOSがロードされる。

ちなみに、今回使ったBBBのケースは、長押しスイッチ用の穴が空いていて、治具も付いていたので、便利だった。

f:id:dawon2015:20191117113436j:plain

起動するとscreenにログが流れてくる。

 

** Unrecognized filesystem type **

switch to partitions #0, OK

mmc0 is current device

Scanning mmc 0:1...

34886 bytes read in 4 ms (8.3 MiB/s)

Found EFI removable media binary efi/boot/bootarm.efi

Scanning disks on usb...

Disk usb0 not ready

Disk usb1 not ready

Disk usb2 not ready

Disk usb3 not ready

Scanning disks on mmc...

MMC Device 2 not found

MMC Device 3 not found

Found 4 disks

87292 bytes read in 8 ms (10.4 MiB/s)

## Starting EFI application at 82000000 ...

>> OpenBSD/armv7 BOOTARM 1.3

boot>

cannot open sd0a:/etc/random.seed: No such file or directory

booting sd0a:/bsd: 2808332+461476+8058240+448068 [188996+120+208352+183702]=0x0

 

OpenBSD/armv7 booting ...

arg0 0xc0ec9c5c arg1 0xe05 arg2 0x87ef4000

Allocating page tables

IRQ stack: p0x80ef8000 v0xc0ef8000

ABT stack: p0x80ef9000 v0xc0ef9000

UND stack: p0x80efa000 v0xc0efa000

SVC stack: p0x80efb000 v0xc0efb000

Creating L1 page table at 0x80ecc000

Mapping kernel

Constructing L2 page tables

undefined page type 0x2 pa 0x80000000 va 0x80000000 pages 0x2000 attr 0x8

type 0x7 pa 0x82000000 va 0x80000000 pages 0x5ef4 attr 0x8

type 0x6 pa 0x87ef4000 va 0x87ef4000 pages 0x18 attr 0x8000000000000008

type 0x7 pa 0x87f0c000 va 0x80000000 pages 0x1438b attr 0x8

type 0x2 pa 0x9c297000 va 0x9c297000 pages 0xb74 attr 0x8

type 0x4 pa 0x9ce0b000 va 0x9ce0b000 pages 0x1 attr 0x8

type 0x2 pa 0x9ce0c000 va 0x9ce0c000 pages 0x100 attr 0x8

type 0x1 pa 0x9cf0c000 va 0x9cf0c000 pages 0x16 attr 0x8

type 0x6 pa 0x9cf22000 va 0x9cf22000 pages 0x1 attr 0x8000000000000008

type 0x0 pa 0x9cf23000 va 0x9cf1e000 pages 0x5 attr 0x8

type 0x6 pa 0x9cf28000 va 0x9cf28000 pages 0x1 attr 0x8000000000000008

type 0x0 pa 0x9cf29000 va 0x9cf29000 pages 0x2 attr 0x8

type 0x2 pa 0x9cf2b000 va 0x9cf2b000 pages 0x302c attr 0x8

type 0x5 pa 0x9ff57000 va 0x9ff57000 pages 0x2 attr 0x8000000000000008

type 0x2 pa 0x9ff59000 va 0x9cf2b000 pages 0xa7 attr 0x8

pmap board type: 3589

Copyright (c) 1982, 1986, 1989, 1991, 1993

        The Regents of the University of California.  All rights reserved.

Copyright (c) 1995-2019 OpenBSD. All rights reserved.  https://www.OpenBSD.org

 

OpenBSD 6.5 (RAMDISK) #146: Mon Apr 15 07:16:38 MDT 2019

    deraadt@armv7.openbsd.org:/usr/src/sys/arch/armv7/compile/RAMDISK

real mem  = 472379392 (450MB)

avail mem = 447512576 (426MB)

mainbus0 at root: TI AM335x BeagleBone Black

cpu0 at mainbus0: ARM Cortex-A8 r3p2 (ARMv7)

cpu0: DC enabled IC enabled WB disabled EABT branch prediction enabled

cpu0: 32KB(64b/l,4way) I-cache, 32KB(64b/l,4way) wr-back D-cache

omap0 at mainbus0

prcm0 at omap0 rev 0.2

dmtimer0 at omap0 rev 3.1

dmtimer1 at omap0 rev 3.1

simplebus0 at mainbus0: "ocp"

simplebus1 at simplebus0: "l4_wkup"

"wkup_m3" at simplebus1 not configured

simplebus2 at simplebus1: "prcm"

"l4_per_cm" at simplebus2 not configured

"l4_wkup_cm" at simplebus2 not configured

"mpu_cm" at simplebus2 not configured

"l4_rtc_cm" at simplebus2 not configured

"gfx_l3_cm" at simplebus2 not configured

"l4_cefuse_cm" at simplebus2 not configured

simplebus3 at simplebus1: "scm"

syscon0 at simplebus3: "scm_conf"

pinctrl0 at simplebus3

simplebus4 at simplebus3: "scm_conf"

"wkup_m3_ipc" at simplebus3 not configured

"dma-router" at simplebus3 not configured

intc0 at simplebus0 rev 5.0

"edma" at simplebus0 not configured

"tptc" at simplebus0 not configured

"tptc" at simplebus0 not configured

"tptc" at simplebus0 not configured

omgpio0 at simplebus0: rev 0.1

gpio0 at omgpio0: 32 pins

omgpio1 at simplebus0: rev 0.1

gpio1 at omgpio1: 32 pins

omgpio2 at simplebus0: rev 0.1

gpio2 at omgpio2: 32 pins

omgpio3 at simplebus0: rev 0.1

gpio3 at omgpio3: 32 pins

com0 at simplebus0: ti16750, 64 byte fifo

com0: console

tiiic0 at simplebus0 rev 0.11

iic0 at tiiic0

"ti,tps65217" at iic0 addr 0x24 not configured

"atmel,24c256" at iic0 addr 0x50 not configured

"nxp,tda998x" at iic0 addr 0x70 not configured

tiiic1 at simplebus0 rev 0.11

iic1 at tiiic1

"atmel,24c256" at iic1 addr 0x54 not configured

"atmel,24c256" at iic1 addr 0x55 not configured

"atmel,24c256" at iic1 addr 0x56 not configured

"atmel,24c256" at iic1 addr 0x57 not configured

ommmc0 at simplebus0

sdmmc0 at ommmc0: 4-bit, sd high-speed, mmc high-speed

ommmc1 at simplebus0

sdmmc1 at ommmc1: 1-bit

"spinlock" at simplebus0 not configured

omdog0 at simplebus0 rev 0.1

"mailbox" at simplebus0 not configured

"timer" at simplebus0 not configured

"timer" at simplebus0 not configured

"timer" at simplebus0 not configured

"timer" at simplebus0 not configured

"timer" at simplebus0 not configured

"timer" at simplebus0 not configured

"timer" at simplebus0 not configured

"rtc" at simplebus0 not configured

"usb" at simplebus0 not configured

cpsw0 at simplebus0: version 1.12 (0), address 90:59:af:5a:af:30

ukphy0 at cpsw0 phy 0: Generic IEEE 802.3u media interface, rev. 1: OUI 0x0001f0

, model 0x000f

"ocmcram" at simplebus0 not configured

"lcdc" at simplebus0 not configured

"emif" at simplebus0 not configured

"sham" at simplebus0 not configured

"aes" at simplebus0 not configured

"mcasp" at simplebus0 not configured

"rng" at simplebus0 not configured

scsibus0 at sdmmc0: 2 targets, initiator 0

sd0 at scsibus0 targ 1 lun 0: <SD/MMC, NCard, 0010> SCSI2 0/direct removable

sd0: 7663MB, 512 bytes/sector, 15693824 sectors

scsibus1 at sdmmc1: 2 targets, initiator 0

sd1 at scsibus1 targ 1 lun 0: <SD/MMC, MMC02G, 0000> SCSI2 0/direct removable

sd1: 1832MB, 512 bytes/sector, 3751936 sectors

softraid0 at root

scsibus2 at softraid0: 256 targets

bootfile: sd0a:/bsd

boot device: sd0

root on rd0a swap on rd0b dump on rd0b

WARNING: CHECK AND RESET THE DATE!

erase ^?, werase ^W, kill ^U, intr ^C, status ^T

 

Welcome to the OpenBSD/armv7 6.5 installation program.

(I)nstall, (U)pgrade, (A)utoinstall or (S)hell?

今時のLinuxのようにGUIラクラクではなく、どこか懐かしいインストーラーでインストールを始める。
OpenBSDのインストールは普通のインストールとほぼ同じ。

・ネットワークとユーザーの設定
・インストール先のディスクパーティションの設定
・インストール元とパッケージの設定

で進んでいく。それぞれの設定項目をあらかじめまとめておくと作業が楽かもね。
今回は、細かいカスタマイズはあまり考えていないので、デフォルトで提示されている項目で進んでいく。
[kagikakko]がデフォルト提示項目なので、そのままEnterを押せばO.K.だ。

ネットワークとユーザーの設定

DHCPはあるが、今回は、固定IPを使用した。
ユーザーは、いつも管理用に使っているvmriderで作ってみた。

 

Welcome to the OpenBSD/armv7 6.5 installation program.

(I)nstall, (U)pgrade, (A)utoinstall or (S)hell? i ← iキーでインストール開始

At any prompt except password prompts you can escape to a shell by

typing '!'. Default answers are shown in []'s and are selected by

pressing RETURN.  You can exit this program at any time by pressing

Control-C, but this can leave your system in an inconsistent state.

 

Terminal type? [vt220] ← ターミナルタイプはvt200で問題なし。

System hostname? (short form, e.g. 'foo') werwolf ← ホスト名を入力

 

Available network interfaces are: cpsw0 vlan0.

Which network interface do you wish to configure? (or 'done') [cpsw0] NICインターフェイスを選択

IPv4 address for cpsw0? (or 'dhcp' or 'none') [dhcp] 172.18.10.8 IPアドレスを指定、DHCPでも可

Netmask for cpsw0? [255.255.255.0] 255.255.0.0 サブネットマスクを指定

IPv6 address for cpsw0? (or 'autoconf' or 'none') [none] IPv6は今回は設定しない

Available network interfaces are: cpsw0 vlan0.

Which network interface do you wish to configure? (or 'done') [done] ← とりあえずエンター

Default IPv4 route? (IPv4 address or none) 172.18.0.1 IPv4デフォルトゲートウェイを指定 

add net default: gateway 172.18.0.1

DNS domain name? (e.g. 'example.com') [my.domain] dedara.jp ← 今後使用するドメイン名を指定

DNS nameservers? (IP address list or 'none') [none] 172.18.0.1 DNSサーバーを指定

 

Password for root account? (will not echo) ← rootのパスワードを設定(非表示)

Password for root account? (again) ← 再入力(非表示)

Start sshd(8) by default? [yes] ← sshd自動起動をするか設定

Setup a user? (enter a lower-case loginname, or 'no') [no] vmrider ← 管理用のアカウントを作るか選択する。今回はあえて作った。

Full name for user vmrider? [vmrider] vmrider ← 管理用アカウントのフルネームを入力

Password for user vmrider? (will not echo) ← 管理用アカウントのパスワードを設定(非表示)

Password for user vmrider? (again) ← 再入力(非表示)

WARNING: root is targeted by password guessing attacks, pubkeys are safer.

Allow root ssh login? (yes, no, prohibit-password) [no] ← rootでsshログインできるかの選択。もちろん、no

 

インストール先のディスクパーティションの設定

インストール先は、SDカードしか無いので、選択の余地はない。
パーティションレイアウトも今回は初期値をそのまま利用した。

 

Available disks are: sd0 sd1.

Which disk is the root disk? ('?' for details) [sd0] ← インストール先のディスクを選択

Disk: sd0       geometry: 976/255/63 [15693824 Sectors]

Offset: 0       Signature: 0xAA55

            Starting         Ending         LBA Info:

 #: id      C   H   S -      C   H   S [       start:        size ]

-------------------------------------------------------------------------------

*0: 0C      0  32  33 -      0  97  33 [        2048:        4096 ] FAT32L

 1: 00      0   0   0 -      0   0   0 [           0:           0 ] unused

 2: 00      0   0   0 -      0   0   0 [           0:           0 ] unused

 3: A6      0  97  34 -      2  75   9 [        6144:       30720 ] OpenBSD

Use (W)hole disk or (E)dit the MBR? [whole] ← ディスク全体を使用するか、MBR編集するかを選択する。ディスク全体を選択

Creating a msdos partition and an OpenBSD partition for rest of sd0...done.

/dev/rsd0i: 32668 sectors in 8167 FAT16 clusters (2048 bytes/cluster)

bps=512 spc=4 res=1 nft=2 rde=512 sec=32768 mid=0xf8 spf=32 spt=63 hds=255 hid=2

048

The auto-allocated layout for sd0 is:

#                size           offset  fstype [fsize bsize   cpg]

  a:          1060.5M            34816  4.2BSD   2048 16384     1 # /

  b:           256.0M          2206688    swap

  c:          7663.0M                0  unused

  d:          3072.0M          2730976  4.2BSD   2048 16384     1 # /usr

  e:          2048.0M          9022432  4.2BSD   2048 16384     1 # /home

  i:            16.0M             2048   MSDOS

Use (A)uto layout, (E)dit auto layout, or create (C)ustom layout? [a] パーティションレイアウトを編集するか選択、ここでは、初期提案のレイアウトを選択

/dev/rsd0a: 1060.5MB in 2171872 sectors of 512 bytes

6 cylinder groups of 202.47MB, 12958 blocks, 25984 inodes each

/dev/rsd0e: 2048.0MB in 4194304 sectors of 512 bytes

11 cylinder groups of 202.47MB, 12958 blocks, 25984 inodes each

/dev/rsd0d: 3072.0MB in 6291456 sectors of 512 bytes

16 cylinder groups of 202.47MB, 12958 blocks, 25984 inodes each

Available disks are: sd1.

Which disk do you wish to initialize? (or 'done') [done] ← ディスクのイニシャライズ

/dev/sd0a (160519e4f4bd7fc7.a) on /mnt type ffs (rw, asynchronous, local)

/dev/sd0e (160519e4f4bd7fc7.e) on /mnt/home type ffs (rw, asynchronous, local, n

odev, nosuid)

/dev/sd0d (160519e4f4bd7fc7.d) on /mnt/usr type ffs (rw, asynchronous, local, no

dev)

 

インストール元とパッケージの設定

ネットワークインストール元には、いつものjaistさんを利用させてもらった、httpのプロキシなしを選択。
パッケージはデフォルトを選択。
ネットワーク経由のインストールなので、時間はかかるがコーヒーでも飲んで、待つべし。
最後に、タイムゾーンを合わせたら、再起動!

 

Let's install the sets!

Location of sets? (disk http nfs or 'done') [http] ← インストール元を選択

HTTP proxy URL? (e.g. 'http://proxy:8080', or 'none') [none] ← プロキシを使用するか選択

(Unable to get list from ftp.openbsd.org, but that is OK)

HTTP Server? (hostname or 'done') ftp.jaist.ac.jp ← インストール元はjaistさん

Server directory? [pub/OpenBSD/6.5/armv7] ← パッケージのツリーを選択

 

Select sets by entering a set name, a file name pattern or 'all'. De-select

sets by prepending a '-', e.g.: '-game*'. Selected sets are labelled '[X]'.

    [X] bsd           [X] comp65.tgz    [X] xbase65.tgz   [X] xserv65.tgz

    [X] bsd.rd        [X] man65.tgz     [X] xshare65.tgz

    [X] base65.tgz    [X] game65.tgz    [X] xfont65.tgz

Set name(s)? (or 'abort' or 'done') [done] ← インストールパッケージの選択、デフォルトのまま

Get/Verify SHA256.sig   100% |**************************|  1869       00:00

Signature Verified

Get/Verify bsd          100% |**************************|  6235 KB    00:02

Get/Verify bsd.rd       100% |**************************| 11637 KB    00:12

Get/Verify base65.tgz   100% |**************************|   114 MB    01:41

Get/Verify comp65.tgz   100% |**************************| 66595 KB    00:59

Get/Verify man65.tgz    100% |**************************|  7386 KB    00:08

Get/Verify game65.tgz   100% |**************************|  2696 KB    00:01

Get/Verify xbase65.tgz  100% |**************************| 17141 KB    00:18

Get/Verify xshare65.tgz 100% |**************************|  4449 KB    00:05

Get/Verify xfont65.tgz  100% |**************************| 39352 KB    00:30

Get/Verify xserv65.tgz  100% |**************************|  7191 KB    00:03

Installing bsd          100% |**************************|  6235 KB    00:02

Installing bsd.rd       100% |**************************| 11637 KB    00:04

Installing base65.tgz   100% |**************************|   114 MB    02:07

Extracting etc.tgz      100% |**************************|   260 KB    00:00

Installing comp65.tgz   100% |**************************| 66595 KB    01:36

Installing man65.tgz    100% |**************************|  7386 KB    00:22

Installing game65.tgz   100% |**************************|  2696 KB    00:02

Installing xbase65.tgz  100% |**************************| 17141 KB    00:23

Extracting xetc.tgz     100% |**************************|  6949       00:00

Installing xshare65.tgz 100% |**************************|  4449 KB    00:22

Installing xfont65.tgz  100% |**************************| 39352 KB    00:48

Installing xserv65.tgz  100% |**************************|  7191 KB    00:06

Location of sets? (disk http nfs or 'done') [done] ← パッケージのインストール元を選択

 

What timezone are you in? ('?' for list) [Canada/Mountain] Asia/Tokyo  タイムゾーンを日本に

Saving configuration files... done.

Making all device nodes... done.

Relinking to create unique kernel... done.

 

CONGRATULATIONS! Your OpenBSD install has been successfully completed!

 

When you login to your new system the first time, please read your mail

using the 'mail' command.

 

Exit to (S)hell, (H)alt or (R)eboot? [reboot]   ← 再起動を選択

 

BBB、起動

再起動後の起動ログがこちら。ログインプロンプトの表示はインストール成功の証。
途中、カーネルの読み込みで止まったように時間がかかる。
何度か再起動したが、そういうものらしいし、特に異常なログも吐いてないので、問題なさそうだ。

 

SVC stack: p0x809cf000 v0xc09cf000

Creating L1 page table at 0x809a0000

Mapping kernel

Constructing L2 page tables

undefined page type 0x2 pa 0x80000000 va 0x80000000 pages 0x2000 attr 0x8

type 0x7 pa 0x82000000 va 0x80000000 pages 0x5ef4 attr 0x8

type 0x6 pa 0x87ef4000 va 0x87ef4000 pages 0x18 attr 0x8000000000000008

type 0x7 pa 0x87f0c000 va 0x80000000 pages 0x148a4 attr 0x8

type 0x2 pa 0x9c7b0000 va 0x9c7b0000 pages 0x65b attr 0x8

type 0x4 pa 0x9ce0b000 va 0x9ce0b000 pages 0x1 attr 0x8

type 0x2 pa 0x9ce0c000 va 0x9ce0c000 pages 0x100 attr 0x8

type 0x1 pa 0x9cf0c000 va 0x9cf0c000 pages 0x16 attr 0x8

type 0x6 pa 0x9cf22000 va 0x9cf22000 pages 0x1 attr 0x8000000000000008

type 0x0 pa 0x9cf23000 va 0x9cf1e000 pages 0x5 attr 0x8

type 0x6 pa 0x9cf28000 va 0x9cf28000 pages 0x1 attr 0x8000000000000008

type 0x0 pa 0x9cf29000 va 0x9cf29000 pages 0x2 attr 0x8

type 0x2 pa 0x9cf2b000 va 0x9cf2b000 pages 0x302c attr 0x8

type 0x5 pa 0x9ff57000 va 0x9ff57000 pages 0x2 attr 0x8000000000000008

type 0x2 pa 0x9ff59000 va 0x9cf2b000 pages 0xa7 attr 0x8

pmap [ using 891724 bytes of bsd ELF symbol table ]

board type: 3589

Copyright (c) 1982, 1986, 1989, 1991, 1993

        The Regents of the University of California.  All rights reserved.

Copyright (c) 1995-2019 OpenBSD. All rights reserved.  https://www.OpenBSD.org

 

OpenBSD 6.5 (GENERIC) #158: Mon Apr 15 06:26:37 MDT 2019

    deraadt@armv7.openbsd.org:/usr/src/sys/arch/armv7/compile/GENERIC

real mem  = 477724672 (455MB)

avail mem = 458072064 (436MB)

mainbus0 at root: TI AM335x BeagleBone Black

cpu0 at mainbus0: ARM Cortex-A8 r3p2 (ARMv7)

cpu0: DC enabled IC enabled WB disabled EABT branch prediction enabled

cpu0: 32KB(64b/l,4way) I-cache, 32KB(64b/l,4way) wr-back D-cache

omap0 at mainbus0

prcm0 at omap0 rev 0.2

dmtimer0 at omap0 rev 3.1

dmtimer1 at omap0 rev 3.1

simplebus0 at mainbus0: "ocp"

simplebus1 at simplebus0: "l4_wkup"

"wkup_m3" at simplebus1 not configured

simplebus2 at simplebus1: "prcm"

"l4_per_cm" at simplebus2 not configured

"l4_wkup_cm" at simplebus2 not configured

"mpu_cm" at simplebus2 not configured

"l4_rtc_cm" at simplebus2 not configured

"gfx_l3_cm" at simplebus2 not configured

"l4_cefuse_cm" at simplebus2 not configured

simplebus3 at simplebus1: "scm"

syscon0 at simplebus3: "scm_conf"

pinctrl0 at simplebus3

simplebus4 at simplebus3: "scm_conf"

"wkup_m3_ipc" at simplebus3 not configured

"dma-router" at simplebus3 not configured

intc0 at simplebus0 rev 5.0

"edma" at simplebus0 not configured

"tptc" at simplebus0 not configured

"tptc" at simplebus0 not configured

"tptc" at simplebus0 not configured

omgpio0 at simplebus0: rev 0.1

gpio0 at omgpio0: 32 pins

omgpio1 at simplebus0: rev 0.1

gpio1 at omgpio1: 32 pins

omgpio2 at simplebus0: rev 0.1

gpio2 at omgpio2: 32 pins

omgpio3 at simplebus0: rev 0.1

gpio3 at omgpio3: 32 pins

com0 at simplebus0: ti16750, 64 byte fifo

com0: console

tiiic0 at simplebus0 rev 0.11

iic0 at tiiic0

"ti,tps65217" at iic0 addr 0x24 not configured

"atmel,24c256" at iic0 addr 0x50 not configured

nxphdmi0 at iic0 addr 0x70: rev 0x0301

nxphdmi0: no display detected

tiiic1 at simplebus0 rev 0.11

iic1 at tiiic1

"atmel,24c256" at iic1 addr 0x54 not configured

"atmel,24c256" at iic1 addr 0x55 not configured

"atmel,24c256" at iic1 addr 0x56 not configured

"atmel,24c256" at iic1 addr 0x57 not configured

ommmc0 at simplebus0

sdmmc0 at ommmc0: 4-bit, sd high-speed, mmc high-speed

ommmc1 at simplebus0

sdmmc1 at ommmc1: 1-bit

"spinlock" at simplebus0 not configured

omdog0 at simplebus0 rev 0.1

"mailbox" at simplebus0 not configured

"timer" at simplebus0 not configured

"timer" at simplebus0 not configured

"timer" at simplebus0 not configured

"timer" at simplebus0 not configured

"timer" at simplebus0 not configured

"timer" at simplebus0 not configured

"timer" at simplebus0 not configured

"rtc" at simplebus0 not configured

"usb" at simplebus0 not configured

cpsw0 at simplebus0: version 1.12 (0), address 90:59:af:5a:af:30

ukphy0 at cpsw0 phy 0: Generic IEEE 802.3u media interface, rev. 1: OUI 0x0001f0

, model 0x000f

"ocmcram" at simplebus0 not configured

amdisplay0 at simplebus0

amdisplay0: no display attached.

"emif" at simplebus0 not configured

"sham" at simplebus0 not configured

"aes" at simplebus0 not configured

"mcasp" at simplebus0 not configured

"rng" at simplebus0 not configured

scsibus0 at sdmmc0: 2 targets, initiator 0

sd0 at scsibus0 targ 1 lun 0: <SD/MMC, NCard, 0010> SCSI2 0/direct removable

sd0: 7663MB, 512 bytes/sector, 15693824 sectors

scsibus1 at sdmmc1: 2 targets, initiator 0

sd1 at scsibus1 targ 1 lun 0: <SD/MMC, MMC02G, 0000> SCSI2 0/direct removable

sd1: 1832MB, 512 bytes/sector, 3751936 sectors

vscsi0 at root

scsibus2 at vscsi0: 256 targets

softraid0 at root

scsibus3 at softraid0: 256 targets

bootfile: sd0a:/bsd

boot device: sd0

root on sd0a (160519e4f4bd7fc7.a) swap on sd0b dump on sd0b

WARNING: CHECK AND RESET THE DATE!

Automatic boot in progress: starting file system checks.

/dev/sd0a (160519e4f4bd7fc7.a): file system is clean; not checking

/dev/sd0e (160519e4f4bd7fc7.e): file system is clean; not checking

/dev/sd0d (160519e4f4bd7fc7.d): file system is clean; not checking

pf enabled

starting network

reordering libraries: done.

openssl: generating isakmpd/iked RSA keys... done.

ssh-keygen: generating new host keys: RSA DSA ECDSA ED25519

starting early daemons: syslogd pflogd ntpd.

starting RPC daemons:.

savecore: no core dump

checking quotas: done.

clearing /tmp

kern.securelevel: 0 -> 1

creating runtime link editor directory cache.

preserving editor files.

starting network daemons: sshd smtpd sndiod.

running rc.firsttime

Path to firmware: http://firmware.openbsd.org/firmware/6.5/

No devices found which need firmware files to be downloaded.

starting local daemons: cron.

Mon Apr 15 22:16:45 JST 2019

 

OpenBSD/armv7 (beowulf.dedara.jp) (console)

 

login:

 

別端末からsshもできるし、うまくいった!やった!
6年近い放置プレイ永い眠りから目覚めたぞ!BBB!

BeagleBone Black 今後は?

ということで、インストールは無事完了。
こんなに簡単ならもっと早くやればよかった…何でこんなに長く放置したんだろう?と不思議だが、またそれは別の話。

ちなみに、実はインストールは2回やっている。
最初、「最新版がいいよね!」とOpenBSDの6.6を入れてみたら、新しすぎてパッケージがなく、追加のソフトを何もインストールできなくて泣きそうだった。
6.6のパッケージを強引にインストールできそうだったが、あとあと面倒になるのは嫌で入れ直しをした。

さてさて、今後のBegleBoneBlackk。
我が家で常時稼働する2台目のOpenBSDになるので、1台目のバックアップシステムとして動かしてみようと思う。

セカンダリDNS
・各端末の定時リモートオンオフ

がとりあえずの目標かな。