にほんブログ村 IT技術ブログへ
にほんブログ村

Linux ブログランキングへ

2019年04月23日

世界の全ての機器を制覇するOS NetBSD 〜4980円 NetBSD/hpcarm 6.1 Advanced W-ZERO3/ES ておくれLive Image 動作テスト その40 #NetBSD

AdESNetBSD2.jpg


今回もつついさんのNetBSD/hpcarm 6.1 W-ZERO3 ておくれLive Image
をAdvanced W-Zero3/ESに入れて起動してみました。
こちらもちゃんと動きます。
実際やってみると非常に簡単にNetBSDが起動できたので
驚きました。感動です。
2019年にこの環境を用意するのは難しそうに見えますが、
実際は難しくなかったので是非試してみましょう。



●NetBSD/hpcarm 6.1 W-ZERO3 ておくれLive Image
つついさんが作られているNetBSDのLiveイメージです。
W-Zero3バージョンです。凄いですね。

今回もておくれLive Imageを使わさせていただきました。
本当にありがとうございます。

http://www.ceres.dti.ne.jp/tsutsui/netbsd/liveimage/wzero3.html

流石に今は2019年。
入手するの大変じゃない?と思いましたが難しくありません。
まだ入手出来ます。

・Advanced W-Zero3/ES本体 Amazonで中古
https://www.amazon.co.jp/WILLCOM-Advanced-W-ZERO3-%E3%83%96%E3%83%A9%E3%82%A6%E3%83%8B%E3%83%BC%E3%83%96%E3%83%A9%E3%83%83%E3%82%AF-WS011SH1/dp/B000VADIT4/ref=sr_1_2?__mk_ja_JP=%E3%82%AB%E3%82%BF%E3%82%AB%E3%83%8A&keywords=W-zero3&qid=1555969567&s=electronics&sr=1-2
・MicroSD 2〜8GB
・ACアダプタもしくはPSP用 USB充電ケーブル
・ておくれLiveイメージ本体
・SDHCドライバ(4GB以上の場合)
 https://forum.xda-developers.com/showthread.php?t=388364

くらいでしょうか?
AdESは中古で4980円前後かなぁ。
古い周辺機種は入手が面倒そうですが、ネットで買えます。

AdESNetBSD1.jpg

●W-Zero3のセットアップ
つついさんのHPよりておくれLIVEイメージをダウンロード。
こちらから。詳細は書いてある通り。

http://www.ceres.dti.ne.jp/tsutsui/netbsd/liveimage/wzero3.html

今回はMicroSD 8GBをUSBカードリーダーから焼きました。
いつもどおり、マウントポイントを確認

findmnt

でUSBカードリーダーの場合は/dev/sdbです。
まずアンマウント。
ファイルは展開しなくても焼けるそうですが、展開してしまいました。

umount /run/media/(kapper)/(215B-BB26)
sudo dd if=liveimage-wzero3-SD-20130621.img of=/dev/sdb bs=64k status=progress

で取り出し。
次はW-Zero3側。
起動、初期設定。
OSが起動したらまずSDHCドライバを入れます。
ここからこれを。

SDHC_DRIVERS_FOR_C550_AND_N560_BY_GreateVK_AND_FreePK.cab
https://forum.xda-developers.com/showthread.php?t=388364

でW-Zero3本体にコピーするんですが、PCからコピー出来る2GBカードが無い(涙
仕方がなくW-Zero3本体からブラウザで直接ダウンロードします。
この機種はちゃんとWifiルータを認識して繋がりました。
ネットを繋げる。設定方法が分かりませんw

Wifi On/OffアプリがありますのでONにするとルーターを認識。
あとはネットワーク設定でアクセスポイントを探してOK
すると自動でWifiに繋ぎに行きます。
SDHCドライバはXDAのリンク先にありますので、ダウンロードして実行。
再起動するとMicroSDの8GBまで読めるようになりました。

でNetBSDを起動します。
先程焼いたMicroSDを挿して
W-Zero3本体に挿して認識させます。
でエクスプローラーを開くとMicroSDが読めるので、
その中にある hpcboot のアプリを設定変更せず実行。
すると再起動してNetBSDがブートします。凄い。

NetBSDがブートしたらログイン
ユーザーネーム:mikutter
パスワード:Teokure-
でログイン。
startxするとXが起動するはず。
細かい内容はつついさんのHPをご参考願います。

http://www.ceres.dti.ne.jp/tsutsui/netbsd/liveimage/wzero3.html


●まとめ
実機でNetBSDが起動しました。
アドエスの場合はMicroSDスロットなのでそのまま
市販のMicroSDカードが使えます。SDHCドライバいります。
自分でNetBSD環境をインストールするのは難しそうだったので、
ておくれLiveイメージを使用させて頂きました。
ありがとうございました。
展示などに使いますかも。

ただ、バイナリパッケージはつついさんに追加して頂けましたので使えます。
しかしここからpkgsrcを使うのは結構難易度が高そうです。
あくまでLiveイメージという事で・・・
古い環境ですけどもちゃんと動作します。
是非遊んでみましょう。

posted by kapper at 06:51 | Comment(0) | NetBSD

2019年04月18日

世界の全ての機器を制覇するOS NetBSD 〜3980円 NetBSD/hpcarm 6.1 W-ZERO3 ておくれLive Image 動作テスト その39 #NetBSD

W-zero3NetBSD.jpg

今回もつついさんのNetBSD/hpcarm 6.1 W-ZERO3 ておくれLive Image
をマイW-Zero3に入れて起動してみました。
いやー、一度やってみたかったんですよ。
実際やってみると非常に簡単にNetBSDが起動できたので
驚きました。感動です。
2019年にこの環境を用意するのは難しそうに見えますが、
実際は難しくなかったので是非試してみましょう。



●NetBSD/hpcarm 6.1 W-ZERO3 ておくれLive Image
つついさんが作られているNetBSDのLiveイメージです。
W-Zero3バージョンです。凄いですね。

初めてのW-Zero3のNetBSDでセットアップする自信が無かったので
ておくれLive Imageを使わさせていただきました。
本当にありがとうございます。

http://www.ceres.dti.ne.jp/tsutsui/netbsd/liveimage/wzero3.html

流石に今は2019年。
入手するの大変じゃない?と思いましたが難しくありません。
まだ入手出来ます。

・W-Zero3本体 Amazonで中古
 https://www.amazon.co.jp/s?k=W-ZERO3&i=electronics&__mk_ja_JP=%E3%82%AB%E3%82%BF%E3%82%AB%E3%83%8A&ref=nb_sb_noss
・MINISDもしくはMicroSD 2〜8GB
・MINISDカードアダプタ(MicroSDの場合)楽天から購入
 https://item.rakuten.co.jp/esupply/adr-micromk/ 
・ACアダプタもしくはPSP用 USB充電ケーブル
・ておくれLiveイメージ本体
・SDHCドライバ(4GB以上の場合)
 https://forum.xda-developers.com/showthread.php?t=388364

くらいでしょうか?
古い周辺機種は入手が面倒そうですが、ネットで買えます。





W-zero3NetBSD1.jpg

●W-Zero3のセットアップ
つついさんのHPよりておくれLIVEイメージをダウンロード。
こちらから。詳細は書いてある通り。

http://www.ceres.dti.ne.jp/tsutsui/netbsd/liveimage/wzero3.html

今回はMicroSD 8GBをUSBカードリーダーから焼きました。
いつもどおり、マウントポイントを確認

findmnt

でUSBカードリーダーは/dev/sdbです。
まずアンマウント。
ファイルは展開しなくても焼けるそうですが、展開してしまいました。

umount /run/media/(kapper)/(215B-BB26)
sudo dd if=liveimage-wzero3-SD-20130621.img of=/dev/sdb bs=64k status=progress

で取り出し。
次はW-Zero3側。
起動、初期設定。
OSが起動したらまずSDHCドライバを入れます。
ここからこれを。

SDHC_DRIVERS_FOR_C550_AND_N560_BY_GreateVK_AND_FreePK.cab
https://forum.xda-developers.com/showthread.php?t=388364

でW-Zero3本体にコピーするんですが、PCからコピー出来る2GBカードが無い(涙
仕方がなくW-Zero3本体からブラウザで直接ダウンロードします。
で、無線LANからルーターに繋がらないw
WEPかセキュリティ無し設定しかルーターを認識しません。古いからね。
最近のルーターだと繋がりませんので注意。
今回はスマホ回線のデザリングでセキュリティ無し設定でつなぎます。
それが一番簡単。
でネットを繋げる。設定方法が分かりませんw
こちらを参考に設定。

https://iinemuu.com/82.html

ユーティリティで内臓ワイヤレスLANを停止を外すと動きます。
あとはネットワーク設定でデザリングのアクセスポイントを探してOK
すると自動でWifiに繋ぎに行きます。
SDHCドライバはXDAのリンク先にありますので、ダウンロードして実行。
再起動するとMicroSDの8GBまで読めるようになりました。

でNetBSDを起動します。
先程焼いたMicroSDにMINISDカードアダプタに挿して
W-Zero3本体に挿して認識させます。
でエクスプローラーを開くとMINISDが読めるので、
その中にある hpcboot のアプリを設定変更せず実行。
すると再起動してNetBSDがブートします。凄い。

NetBSDがブートしたらログイン
ユーザーネーム:mikutter
パスワード:Teokure-
でログイン。
startxするとXが起動するはず。
細かい内容はつついさんのHPをご参考願います。

http://www.ceres.dti.ne.jp/tsutsui/netbsd/liveimage/wzero3.html


●まとめ
実機でNetBSDが起動しました。
自分でNetBSD環境をインストールするのは難しそうだったので、
ておくれLiveイメージを使用させて頂きました。
ありがとうございました。
展示などに使いますかも。

ただ、バイナリパッケージが無いので
ここからpkgsrcを使うのは結構難易度が高そうです。
あくまでLiveイメージという事で・・・
古い環境ですけどもちゃんと動作します。
是非遊んでみましょう。

posted by kapper at 05:34 | Comment(0) | NetBSD

2019年03月22日

世界の全ての機器を制覇するOS NetBSD Dreamcastイメージ作成 sysutils/dc-tools+emulator/gxemul 動作テスト その38 #NetBSD

2019-03-22-195543_1600x900_scrot.png

数年前にNetBSD/Dreamcastをつついさんに教えてもらいましたが、
ブログに残すのを忘れていてメモが残っていませんでした。
今回テストしなおしたのでブログに書いておきます。
テストするには母艦はNetBSD i386かamd64とエミュレータとしてgxemulが必要。
ブータブルCDを焼くには更にcdrecordが必要です。

●NetBSD/Dreamcast概要
NetBSDは移植性が高いOSでDreamcastでも動作しています。
しかし、DreamcastブートCDの仕様が特殊なのでNetBSDのFTPサーバにある
ISOファイルを焼いても起動しません。ご注意を。
詳細は英語ドキュメントですが、下記の公式HPに書いてあります。
日本語ドキュメントは情報が古くて使えません。
是非ご一読を。

NetBSD/dreamcast: How to use NetBSD/dreamcast
https://www.netbsd.org/ports/dreamcast/howto.html

Dreamcastの仕様として、
・4秒の無音ファイルを作り、オーディオトラックが必要
・IP.BIN
・IP.txt
・NetBSDのKernel
・NetBSDのイメージ本体
を1枚のディスクにちゃんと焼かないと起動できない仕組みになっているそうです。
読んだだけですけど、間違っていたらごめんなさい。
後はブロードバンドアダプタでアクセス出来る様にdhcpcdとSwapファイルも焼き込みます。
で起動させる訳ですね。
結構難しいですが、公式HPに情報がちゃんと書いてあります。

じゃあどうやってDreamcastのイメージファイルを作るのかと言いますと
pkgsrcにdc-toolsという自動作成アプリがあります。
多分、母艦がNetBSDからじゃないと動作しません。
ここでニワカユーザー、ハッカーの殆どが脱落する訳ですw
NetBSDの専門知識が必要です。そりゃ難しいですわね。僕も同じです。
あと、エミュレータとしてgxemulが自動で連動できる様になっています。
そちらも使います。pkgsrcからインストール可能です。

じゃあまずdc-toolsから
普通にpkgsrcからビルドしてインストール

cd pkgsrc/sysutils/dc-tools/
make && make install

次はエミュレータのgxemulも同じ様にビルド

cd pkgsrc/emulator/gxemul
make && make install

無事インストール出来ましたらホームフォルダに戻って
NetBSDをdc-toolsからダウンロード。
まずdc-burn-netbsdアプリの使い方を解説します。
端末からコマンドで指定します。

dc-burn-netbsd -k GENERIC -e

これでKernelをダウンロードして自動的にエミュレータで
NetBSDが起動します。

オプションは重要で解説ドキュメントが他にないので
しっかり目を通しておきます。

Usage: dc-burn-netbsd [opts]
-C : Clean work directory before starting
-b : Burn generated image to CD using cdrecord
-c opts : Set cdrecord opts (driveropts=burnfree gracetime=3)
-d dist : Take kernel/ & sets/ under dist dir - will not try to download
-e : Boot resultant image under an emulator (requires gxemul)
-h : This help
-i : Use existing ISO image. Assumed to be already bootable
-k type : Set kernel type (GENERIC) eg: GENERIC or GENERIC_MD
-l : Setup live cd - implies '-s base -K GENERIC' unless otherwise set
-s type : Include NetBSD release, type is base, std, x or list of sets
-t tmpd : Set temporary work directory to tmpd
-v vers : Set NetBSD version (7.0.1) use '?' for list

-kがNetBSDのKernel、-eがエミュレータ起動
これだけじゃ、起動するだけでなにも出来ません。
アプリがないんです。
オプションの-sが重要でこれがイメージ設定です。
*BSDを使っている人はご存知ですね?多分。
-eオプションでxにしておきます。
NetBSDのバージョンをするには-vオプション。


一例で端末からコマンド起動

dc-burn-netbsd -k GENERIC -s x -v 8.0 -e

でエミュレータ起動すると色々と質問されます。
root device:はgdrom0a、
terimnalタイプは[vt100」にしておきます。
後は全部エンターキーでそのまま指定なし。
するとやっとNetBSDが起動できます。
Xはメモリが無いのでしょうか?起動しません。

●CD-RにNetBSD/Dreamcastを焼く?
やっていませんが、ヘルプファイルには-bオプションをつけると
自動でCD-Rに焼いてくれるそうです。
まずCD-ROMドライブを認識させないと駄目らしいですけど。

dc-burn-netbsd -k GENERIC -b

類似情報はこちら

http://m-arai.s41.xrea.com/hos/DC/step2.html

●インストールログ

bash-4.4# dc-burn-netbsd -k GENERIC -s x -e
Sets set to: base.tgz etc.tgz comp.tgz man.tgz misc.tgz modules.tgz tests.tgz text.tgz xbase.tgz xcomp.tgz xetc.tgz xfont.tgz xserver.tgz

>> Download kernel if needed
download/7.0.1/kernel/netbsd-GENERIC.bin.gz: already present

>> Download sets if needed
download/7.0.1/sets/base.tgz: already present
download/7.0.1/sets/etc.tgz: already present
download/7.0.1/sets/comp.tgz: already present
download/7.0.1/sets/man.tgz: already present
download/7.0.1/sets/misc.tgz: already present
download/7.0.1/sets/modules.tgz: already present
download/7.0.1/sets/tests.tgz: already present
download/7.0.1/sets/text.tgz: already present
download/7.0.1/sets/xbase.tgz: already present
download/7.0.1/sets/xcomp.tgz: already present
download/7.0.1/sets/xetc.tgz: already present
download/7.0.1/sets/xfont.tgz: already present
download/7.0.1/sets/xserver.tgz: already present

>> Generate the ip.txt file and use to create IP.BIN bootloader
Setting CRC to B6D8 (was 0000)
Contents of data already match requirements

>> Create filesystem with boot loader
mkisofs: Warning: -C specified without -M: old session data will not be merged.
290410+0 records in
290410+0 records out
594759680 bytes transferred in 9.295 secs (63987055 bytes/sec)

Bootable image generated as dc-burn-netbsd-files/data.raw

>> Run emulator (gxemul -XEdreamcast -d co23965696:data.raw)
GXemul 0.6.0.1 Copyright (C) 2003-2014 Anders Gavare
Read the source code and/or documentation for other Copyright messages.

Simple setup...
net:
simulated network: 10.0.0.0/8 (max outgoing: TCP=100, UDP=100)
simulated gateway+nameserver: 10.0.0.254 (60:50:40:30:20:10)
simulated nameserver uses real nameserver 192.168.100.1
machine:
memory: 2 MB
cpu0: SH7750
machine: Dreamcast (200.00 MHz)
diskimage: data.raw
IDE CD-ROM id 0, read-only, 567 MB (1161704 sectors)
loading Dreamcast IP.BIN from IDE id 0 to 0x8c008000
Dreamcast boot filename: NETBSD.BIN (to be loaded to 0x8c010000)
ISO9660 boot:
"CDROM":NETBSD.BIN
extracted 2296996 bytes into /tmp/gxemul.8CWMs0W3eSZw
loading /tmp/gxemul.8CWMs0W3eSZw
removing /tmp/gxemul.8CWMs0W3eSZw
cpu0: starting at 0x8c000140

NOTE: This is a LEGACY emulation mode.
-------------------------------------------------------------------------------

●-vオプション

bash-4.4# dc-burn-netbsd -v ?
Official release versions:
- 1.6
- 1.6.1
- 1.6.2
- 2.0
- 2.0.2
- 2.0.3
- 2.1
- 3.0
- 3.0.1
- 3.0.2
- 3.0.3
- 3.1
- 3.1.1
- 4.0
- 4.0.1
- 5.0
- 5.0.1
- 5.0.2
- 5.1
- 5.1.1
- 5.1.2
- 5.1.3
- 5.1.4
- 5.1.5
- 5.2
- 5.2.1
- 5.2.2
- 5.2.3
- 6.0
- 6.0.1
- 6.0.2
- 6.0.3
- 6.0.4
- 6.0.5
- 6.0.6
- 6.1
- 6.1.1
- 6.1.2
- 6.1.3
- 6.1.4
- 6.1.5
- 7.0
- 7.0.1
- 7.0.2
- 7.1
- 7.1.1
- 7.1.2
- 7.2
- 8.0

Daily built versions:
- daily-HEAD-201903190900Z
- daily-HEAD-201903192200Z
- daily-HEAD-201903201230Z
- daily-HEAD-201903201940Z
- daily-HEAD-201903210830Z
- daily-HEAD-201903211740Z
- daily-netbsd-7-201903131220Z
- daily-netbsd-7-201903190450Z
- daily-netbsd-7-0-201903112330Z
- daily-netbsd-7-0-201903171100Z
- daily-netbsd-7-1-201903141540Z
- daily-netbsd-7-1-201903200820Z
- daily-netbsd-8-201903160740Z
- daily-netbsd-8-201903170510Z
- daily-netbsd-8-201903191600Z
- daily-netbsd-8-201903210240Z
- daily-netbsd-8-201903220040Z

Daily built branches (will take latest version):
- daily-HEAD
- daily-HEAD-lint
- daily-HEAD-llvm
- daily-netbsd-7
- daily-netbsd-7-0
- daily-netbsd-7-1
- daily-netbsd-8
posted by kapper at 20:17 | Comment(0) | NetBSD

世界の全ての機器を制覇するOS NetBSD コンソール版スクリーンキャプチャ graphics/scrot その37 #NetBSD


NetBSDで簡単にスクリーンキャプチャできるアプリないかな?
という事でscrotを入れてみました。
pkgsrcにもあるので簡単です。
コマンドラインですが、手軽なので是非使ってみましょう。

●scrot
ターミナルからキャプできるスクリーンキャプチャです。
pkgsrcにあってサポートされています。
是非使ってみましょう。
使い方はこちらです。

Scrot の使い方メモ
http://d.hatena.ne.jp/ino46/20100919/1284904800

インストールはpkgsrcからビルド。

cd pkgsrc/graphics/scrot
make
make install

これだけです。
使い方は端末から

scrot -d 5

みたいな感じで5秒遅延させても使えます。
キーボード登録させておくと便利です。
是非使ってみましょう。

posted by kapper at 13:51 | Comment(0) | NetBSD

世界の全ての機器を制覇するOS NetBSD コンソール版テトリスクローン vitetris ビルド その36 #NetBSD

2019-03-22-130610_1600x900_scrot.png

今日はNetBSDでVitetrisをビルドしてみました。
星の数ほどあるかもしれないTetrisクローンゲームのコンソール版。
Linux関係にはパッケージがありますが
何故かNetBSDにはありませんでしたのでビルドします。
Cライブラリしか必要ないのでどんな環境でも動きそう。
低スペック環境でどうぞ。

●Vitetrisとは
端末のテトリスクローンです。
Xがなくても動く高機能テトリスです。
Windows、Linux、DOS、NetBSDに対応しています。
ビルドしてみましょう。

https://www.victornils.net/tetris/

まずは公式Githubからソースコードをダウンロードして解凍。

https://github.com/vicgeralds/vitetris

でビルドするだけです。

./configure
make
make install

これだけです。
所が実行しようとするとエラーが出ます。

./tetris
./tetris: Shared object "libX11.so.7" not found

ありゃま。
libX11.so.7が認識していないっぽいです。
じゃあテスト。

cp /usr/X11R7/lib/libX11.so.7 /usr/lib/

で実行すると動きましたw
何故リンクが見えていないのでしょうか?
よく分かりませんがまあ動いたのでよしとします。

export LD_LIBRARY_PATH=/usr/local/lib:/usr/pkg/lib:/usr/X11R7/lib

っと、パスを/usr/X11R7/libにも加えておきます。
.xinitrcなどに貼っておきましょう。
そんなので良いんか?(ぉぃ

●まとめ
こんなパスのエラーなんて出ないはずですが、
とりあえずNetBSDでも動きました。
そんなので良いんか?(ぉぃ
NetBSD対応と公式HPにありますが、修正した方が良くないですか?
pkgsrcにもありませんし・・・
非常に軽量な割に高機能なので遊べます。
旧型機種におすすめ。

posted by kapper at 13:32 | Comment(0) | NetBSD

2019年02月23日

世界の全ての機器を制覇するOS NetBSD MplayerとMPV MediaPlayerでMP3、MP4を鳴らす その35 #NetBSD


NetBSDでを音楽を鳴らす際に、
色々なプログラムはありますが、とりあえずMplayerと
MPV Media Playerwを使ってみましょう。
覚えることがたくさんあって面倒ですが、
適当でもとりあえず再生可能です。

●Mplayer
Mplayerは一番有名でオーソドックスな方法です。
NetBSDのOSSにも対応しています。
そのまま鳴ります。
インストールはpkgsecからビルド

cd /usr/pkgsrc/multimedia/mplayer
make && make install

再生する場合は

mplayer -ao oss (ファイル名).mp3
mplayer -ao oss (ファイル名).mp4

みたいな感じで簡単に再生できます。
実はossをつけなくてもそのまま再生できます。
動画は解像度も調整しましょう。

mplayer -ao oss (ファイル名).mp4 -vf dsize=640:-2

みたいに640サイズに変更できます。
オプションは多数ありますのでチェック。

キー 説明
p 一時停止/再生の切り替え。
Space 一時停止/再生の切り替え。
Backspace メニューに戻る (dvdnav を使っている場合)。
← 10秒戻す。
→ 10秒進める。
↓ 1分戻す。
↑ 1分進める。
< プレイリストを戻す。
> プレイリストを進める。
m 音声をミュートにする。
0 ボリュームを上げる。
9 ボリュームを下げる。
f フルスクリーンモードの切り替え。
o OSD を切り替え。
v 字幕の表示を切り替え。
I ファイル名を表示。
1, 2 コントラストを調整。
3, 4 明るさを調整。
j 利用可能な字幕を順に切り替える。
# 利用可能なオーディオトラックを順に切り替える。


●MPV MediaPlayer
GUIの再生ソフトです。よく使われます。
アプリをランチャーから起動して
ファイラーなどから貼り付けるだけです。
解像度は自分でも調整できます。
OSS対応しているので設定なしで動作します。


●まとめ
とりあえず再生したい場合に。
OSSはNetBSDの初期設定で鳴ります。
サウンド関係で意識しないでも使えるので
よし使おう。
そして再生しよう。
posted by kapper at 22:43 | Comment(0) | NetBSD

世界の全ての機器を制覇するOS NetBSD USBメモリをマウントする方法 その34 #NetBSD


今回はNetBSDでUSBメモリをマウントする方法を
ブログに残します。
簡単な内容なのですけど、直ぐ忘れます。
Linux特有のFindmntとかコマンド無いので覚えられません。
もちろんNetBSDは標準ではホットプラグ非対応です。
まあやってみましょう。

●USBメモリマウント
基本的に1個目は/dev/sd0にマウントされるはずです。
まあこちらが詳しいのでご一読を。
ありがとうございました。

https://qiita.com/furandon_pig/items/d5f918e4490c7579aafe

まずdmesgで確認します。

[ 1450.322085] sd0 at scsibus0 target 0 lun 0: disk removable
[ 1450.322085] sd0: fabricating a geometry
[ 1450.322085] sd0: 14782 MB, 14782 cyl, 64 head, 32 sec, 512 bytes/sect x 30274560 sectors
[ 1450.322085] sd0: fabricating a geometry

最後の方にちゃんとsd0にあります。
で、次はdisklabelで確認します。

bash-4.4# disklabel -i sd0
Enter '?' for help
partition>

と出てくるので P

partition>P
5 partitions:
# size offset fstype [fsize bsize cpg/sgs]
d: 30274560 0 unused 0 0 # (Cyl. 0 - 14782*)
e: 30272512 2048 MSDOS # (Cyl. 1 - 14782*)

e:がMSDOSパーティションである事が分かります。
なんとなくでOK
Qで終了して、分かったらマウントしてみます。

mount /dev/sd0e /mnt

これで/mntにUSBメモリがマウントされたはずです。
終わったらumountしておきましょう。

umount /mnt


HDDは/dev/wd0で
簡単なんですがよく忘れます。
メモしておきましょう。
posted by kapper at 21:04 | Comment(0) | NetBSD

2019年01月26日

世界の全ての機器を制覇するOS NetBSD GUIで画面解像度変更 arandr その33 #NetBSD

arandr.jpg

OSC大阪2019の関西*BSDセミナーでえびじゅんさんに
xrandrの解像度を自由にGUIで変更できる
arandrを教えて頂いたのでpkgsrcでビルドしてみました。
簡単ながら高機能で非常にありがたいです。
タブレットとかで重宝しますかも。

●arandr
xrandrのGUIツールです。
色々設定を調査しなくてもGUIで選択できるので
非常に便利です。
画面回転とかも。
Gnomeとかに内蔵されているツールよりはるかに便利です。
是非使ってみましょう。

インストールは

cd pkgsrc/x11/arandr/
make && make install

これだけです。
GUIツールだけなんでビルドも直ぐ終わります。
使い方も端末で

arandr

をコマンドで起動するだけです。
後はOutputで選択してチェックボタンで変更します。
とっても便利なんで是非使ってみましょう。

posted by kapper at 11:08 | Comment(0) | NetBSD

世界の全ての機器を制覇するOS NetBSD プロジェクタに映す場合 xrandrを使う その32 #NetBSD



今OSC大阪2019にいますが、関西*BSDセミナーで
えびじゅんさんにNetBSDでプロジェクタのつなぎ方を
教えていただきました。xrandrです。
忘れない様にメモしておきます。

●NetBSDでプロジェクタ
xrandrを使います。
解像度とモニタをxrandrで指定する形になります。
端末から

xrandr --auto

でとりあえずオートスキャンで画面が出ます。
実際に解像度を指定してxrandrすれば画面がちゃんと映るはずです。
簡単なんですが、ブログに残しておきます。

posted by kapper at 10:36 | Comment(0) | NetBSD

2019年01月19日

世界の全ての機器を制覇するOS NetBSD pkginでリポジトリにパッケージが無いと出た場合は要注意 その31 #NetBSD


NetBSDのpkginを使うとバイナリファイルを
直接インストール出来ますが、
本家のレポジトリを直結して使うと混んでいて遅いです。
なのでミラーを使うわけですが、最新版になると
バイナリファイルが完全にミラーに無いこともあるので、
pkginでインストールする歳にはエラーが出ます。
もちろん、Yを押せば強行インストールになっていまいますが、
当然libファイルが無いのでインストーラーが落ちます。
ご注意を。

●pkginとレポジトリ
pkginのレポジトリファイルは、

/usr/pkg/etc/pkgin/repositories.conf

にファイルがあって、そこにURLを書き込むんですが、
本家のリンクのままにしておくとダウンロードが遅いです。
なので日本のリンクなどを貼っていきます。

http://www.netbsd.org/mirrors/

ところが、最新のバージョンのパッケージになると、
一部パッケージが無い場合がありました。
ftp2.jp.netbsd.orgとか。
そうするとエラーが出ます。
その時にはストップしてミラーを変えましょう。
強行してうっかりYを押すとライブラリエラーが出て困ります。
ミラーのリンク先を直接ブラウザで開いてみてみましょう。
一部のファイルが無いかもしれません。

仕方がないので、複数のミラーを登録しておきます。
そうすれば、どこかからダウンロード出来ます。
もちろん遠くを貼るとダウンロードはかなり遅くなりますが・・・
確実です。
pingで接続速度をチェックすると良いかもしれませんが。
注意喚起という事で。
posted by kapper at 21:24 | Comment(0) | NetBSD

2019年01月15日

世界の全ての機器を制覇するOS NetBSD 旧機種対応 Netwalker実験所デスクトップ高速化テクニック その30 #NetBSD



今日はNetBSDのネタ。
CF-U1やCF-T7などの古い機種で使っていますが、
DOSBoxなどを遊ぶと非常に重たくて処理落ちします。
なんでだろう?
旧機種優先になりますが、昔Netwalker実験所でやっていた
高速化テクニックがだいたいほとんどNetBSDでも
使えるので、遊んでみました。

●NetBSDデスクトップ高速化テクニック
簡単なデスクトップ環境のチューニングです。
昔Netwalker実験所でかなりカスタマイズしました。
旧機種ならちょっとした設定で体感速度が上がります。
最近の機種だと、それほど実感できないかもしれませんが・・・
ネタはこちらから、

http://kapper1224.sakura.ne.jp/PALM20.html

狙いどころとして、

・対象機種世代:(主に2012年以前:Windows7世代)
 Atom、2コア以下のCeleron、Core2Quad以下
 Cortex-A53以下のARM、特に2コア以下の機種
・OS:通常のNetBSD環境ならなんでも

NetBSD関係のプロセス負荷自体はどの環境でも同じです。
ただし、CPU性能でCPU負荷率は変わります。
同じ1つのプログラムでも遅いマシンの方が影響が大きいだけ。
で、1つのアイテムの改善量は美々たるものですが、
古いマシンだと大きく体感できるでしょう、かも。
 
●デスクトップのカスタマイズ
1個づつ設定しましょう。

1.WMを変更(JWMかIceWM)
統合デスクトップ環境は常駐物が多いので、
軽いJWMかIceWMを使います。UI的に。
LXDEやXFC4と比べ消費メモリがぐっと減ります。
terminalもxtermなどメモリ少ないものにしましょう。

2.tmpをtmpfsに移す。(ディスクキャッシュ)
ディスクキャッシュをtmpfsのメモリに移すと体感速度がかなり違います。
いろいろとメモリに置くと今度はメモリ不足になるのでご注意

nano /etc/fstab

fstabに3行下記を追加します。
tmpfsに色々登録して詰めすぎるとメモリが無くなるので注意。
メモリが少ない機種の場合は1行目だけにしておきましょう。

tmpfs /tmp tmpfs defaults,noatime,mode=1777 0 0
tmpfs /var/tmp tmpfs defaults,noatime,mode=1777 0 0
tmpfs /var/log tmpfs defaults,noatime,mode=1777 0 0

・noatimeのオプションの設定
ファイルアクセス時間を記録しないようにする。

nano /etc/fstab

fstabに下記のnoatime,commit=30を2行追加します。
 
・仮想メモリの設定、ライトバックキャッシュの設定
仮想メモリの設定にはsysctl.confに追記します。


3.カラーマップを16bitに変更
GPUがあっても描写には実はかなりCPUパワーを食います。
見た目分からない程度に16bitカラーへ減色する事でだいぶ軽くなります。

nano /etc/X11/xorg.conf

と新規ファイルを作成して、下記の内容を追記します。

Section "Screen"
Identifier "Default Screen"
Monitor "Configured Monitor"
Device "Configured Video Device"
DefaultDepth 16
EndSection

保存したら再起動して終わりです。

4.フォントキャッシュの設定
/.profileか~/.xsession、~/.xinitrcのどれかに書き込みましょう。

nano .xinitrc

テキストエディタが開きましたら下記一行を一番下にでも追記しましょう。

xset fc 9216 6144 70

下記のコマンドでフォントキャッシュを更新します。

fc-cache -f

フォントキャッシュが更新されましたら一応再起動しましょう。

5.Pulseaudioの高速化
NetBSDではPulseaudioが重要ですが重いです。
設定ファイルを変更してみます。

nano /etc/pulse/daemon.conf

ファイルを開きましたら下記の行を追加して保存します。

resample-method = trivial
high-priority = no
nice-level = -20
realtime-scheduling = no
default-sample-channels = 2 

保存しましたらPulseAudioのデーモンを再起動します。

pulseaudio --kill
pulseaudio --start

多分若干CPU負荷が下がったはずです。

6.ブラウザNetsurf
NetSurfはちとUIが不便ですが、
最近は改良されて結構マシになりました。
メイン以外の用途で使ってみましょう。

pkgin install netsurf

ついでにJavascriptもONに。
twitterとか見る時には必要です。
なおMastodonは見れません。
Html5も動きません。艦これも動きません。
しかし軽くてメモリ消費量は極めて少ないです。
使い分けて。


●まとめ
他にもネタはあったはずですが、まだNetBSD実機で試してみません。
メモリが重要なので使いすぎない、キャッシュにまわしてできるだけ節約。
特にFirefoxのメモリ使用量が敵かな・・・
体感速度が出るのは旧機種限定です。
新型ならCPUパワーだけでなんとかなりますもん。
おかげさまでCF-U1でDOSBox-Xが処理落ちしなくなりました。

NetBSDも徹底的にカスタマイズ出来ますんで
デスクトップ環境ももっと快適になります。
これがすべての機種に対応可能な設定だと・・・
古い機種を使うのも楽しいですよね?
posted by kapper at 20:39 | Comment(0) | NetBSD

2019年01月13日

世界の全ての機器を制覇するOS NetBSD 軽量WM LXDE インストール その29 #NetBSD

LXDE.jpg

XFCE4便利だけど、旧機種では重いので
LXDEを入れてみました。
インストールは簡単です。

●LXDEとNetBSD
もちろんパッケージあるので入れるだけです。
統合デスクトップ環境では軽い方に入ります。
こちらを参考しました。ありがとうございます。

https://www.webzoit.net/hp/it/internet/homepage/env/cs/client/pc/reuse/dynabook_satellite_t30_160c5w/install_lxde_and_mate.html

LXDEはちょっとだけ軽くなります。
デスクトップとしては必要な機能が十分あります。
まあ、DOSBox-X使うにはもう少し軽いほうがよいかな。

●LXDEインストール
パッケージを入れます。

pkgin install lxde lxmenu-data

で.xinitrcを書き換えます。

nano .xinitrc

コピペして保存。

lxsession

であとはログアウトして再びstartx
無事起動できたかと。
いろいろ改造してみましょう。

●まとめ
XFCE4の設定があればそのまま使えます。
楽ちんです。
LXDEのカスタマイズは情報が沢山あるので
是非改造してみてください。
posted by kapper at 20:44 | Comment(0) | NetBSD

世界の全ての機器を制覇するOS NetBSD8.0 pulseaudio-tools サウンド初期設定 その28 #NetBSD



今回はNetBSDのサウンド関係でPulseaudioをネタにします。
LinuxだとAlsaで簡単に音がなるんですけど、
AlsaはLinuxKernelとも繋げられるツールで
NetBSDだとOSSドライバをよく使われます。
サウンドサーバとしてPulseaudioで鳴らしてみました。

●PulseaudioとNetBSD
サウンド関係でNetBSDは本当に知らなくて数年来放置でした。
情報が公式しかなくて、そもそも分かんない。
調べていませんでしたw
DOSBox-Xで旧作東方を鳴らしたくてw
でググって見ると先人の貴重な記録が、

https://wiki.netbsd.org/tutorials/using_pulseaudio/
https://ch.nicovideo.jp/tsutsui/blomaga/ar1166538
https://www.webzoit.net/hp/it/internet/homepage/env/cs/virtual_machine/virtualbox/guest_os/unix_bsd/netbsd/
https://ch.nicovideo.jp/tsutsui/blomaga/ar1170391

奥が深いです。
難しいのね・・・
とりあえずOSSとPulseaudioを使えば音が鳴るって分かりました。
感謝です。


●Pulseaudio-tools
まずPulseaudioを入れます。

pkgin install pulseaudio-tools

沢山のパッケージがごっそり入ります。
でdbusを設定。

cp /usr/pkg/share/examples/rc.d/dbus /etc/rc.d
echo dbus=YES >> /etc/rc.conf

これで再起動すれば一応音がなります。
なんか変ですね・・・
重たいし、音が変。
設定の調整が必要です。
ておくれLiveイメージのHPとGithubに公開されている

~/.config/pulse/default.pa
~/.config/pulse/daemon.conf
~/.config/pulse/client.conf

ここらへんを頂いて、.config/pulse/以下にコピーします
音は鳴る様に鳴りました。
しかし重たいな・・・

●まとめ
一応音がなりました。
まあ設定がいろいろあるようですが、別途追記します。
まず参考サイトに書いてある様なのでそちらをご確認願います。

まあLinuxだとalsaで、ぽんと音が鳴りますが
NetBSDだと専門家じゃないと分からないレベルなんでしょうか・・・
情報源も少ないし。
悩ましいですね。
Pulseaudioも旧機種には重いので
最低マルチコアのCPUがほしいです。
まあとりあえず鳴らしてみましょう。
posted by kapper at 19:24 | Comment(0) | NetBSD

2019年01月12日

世界の全ての機器を制覇するOS NetBSD8.0 pkgsrc-WIP + DOSBox-X インストール その27 #NetBSD

dosbox-x.jpeg

今日はNetBSDでpkgsrc-WIPに登録してあります
DOSBox-Xをインストールしてみました。
パッケージはありますので、
make && make installするだけです。
是非PC-98エミュレーションしてみましょう。

●pkgsrc-WIPとDOSBox-X
公式のパッケージにはまだありませんがWIPにはあります。
もちろんi386でもビルドできます。
pkgsrc-WIPをダウンロードして入れてみましょう。
過去のブログに記載してあります。


世界の全ての機器を制覇するOS NetBSD 進行中アプリ登録 pkgsrc-WIP その11
http://kapper1224.sblo.jp/article/176137280.html

pkgsrc-WIPを展開したら、

cd pkgsrc-wip
cd dosbox-x
make && make install

ちゃんとインストールされればOK。
関連パッケージが多いですが多分大丈夫。

●DOSBox-XでPC-98エミュレーション
普通にDOSBox-Xを起動させるとPC/ATモードになるので、
実はPC-98モードで起動するにはオプション設定の変更がいりますが、
バグがあって--startguiオプションが使えません。
下記1か2どちらかの方法で設定します。

1. 起動フォルダにdosbox.confを作って、

[dosbox]
machine = pc98

とコピペして保存。そのファイルのあるフォルダから

dosbox-x

と起動する必要があります。

2. dosbox-xをPC/ATモードで起動してから
アプリ左上の「Main」→「Configuration GUI」でメニューを起動して、
「Dosbox」からmachineにpc98を入力して終了します。
小文字でpc98であってPC-98とか大文字ハイフォンNGです。
その後、DOSBox-Xを再起動するとPC-98モードになります。

●PC-98ゲームの遊び方
PC-98でもPC/ATでも基本同じです。
まずゲームファイル、フォルダをホームフォルダの
適当な所に保存します。
でDOSBox-X上からホームフォルダをマウントします。

mount c /home/(ユーザー名)
c:
cd (ゲームフォルダ名)
(実行ファイル).EXE

みたいにHDDのフォルダを直接読めます。
実行ファイルは各自のファイル名で。

●旧作東方体験版を遊んでみる
ダウンロードはこちらから

http://www.kt.rim.or.jp/~aotaka/am/get.htm

ダウンロードしたらLHAで解凍して
漢字のファイル名がエンコードで文字化けしているので
タイトル下3文字をコピペしてリネーム。
あとはDOSBox-X上でGAME.BATを実行するだけ。
処理落ちすると音が割れますかも。

●まとめ
NetBSDでも簡単に動きました。
パッケージ感謝です。
BIOSやFontやOSなしでPC-98エミュレーション出来るのはありがたいです。
ゲームもVector行けば沢山あります。
是非遊んでみましょう。
posted by kapper at 04:48 | Comment(0) | NetBSD

2018年10月22日

世界の全ての機器を制覇するOS NetBSD8.0 UEFI 5000円 OS無しWindowsタブレット PC-TW708/BASインストール その26 #NetBSD

TW708BSD.jpg

次は5000円OS無しWindowsタブレットのPC-TW708/BASに
同じ様にNetBSD8.0をインストールしてみました。
UEFI32bitです。
こちらはT100TAMと異なりUEFIエントリーをefibootmgrで
書き込まなくてもブート出来ました。
当たりですね。
ひょっとしたらWindowsタブレットでも個体差が激しくて、
当たりハズレが大きいので一筋縄ではいかないかもしれません。


●NetBSD8.0インストール
内容は前回のT100TAMとほぼ同じですが、
こちらはUEFIエントリの書き込み不要です。
i915関係でブラックスクリーンになるのも同じです。
動いたり動かなかったりは、Windowsタブレット内で
使われているチップやファームウェアの違いだろうから、
まあ現時点ではデータの無い未知の領域ですかも。
基本的なインストール方法は前回のブログをご参照。
割愛します。

世界の全ての機器を制覇するOS NetBSD8.0 UEFI Windowsタブレット T100TAインストール その18 #NetBSD

●インストール
やり方は前回と同じです。
まずはNetBSD公式HPから8.0のUEFIイメージをダウンロード。
ddコマンドかRawrite32でUSBメモリに焼き込みます。
Ubuntuとかの場合、

findmnt
sudo dd if=NetBSD-8.0-amd64-uefi-install.img of=/dev/sdb status=progress

みたいな感じですかね。findmntでマウントポイントを確認
焼いたらUSBメモリをHUBかなにか使いつつ本体と接続して起動
まずはをESCかF2を押してUEFI(BIOS)を起動させて
セキュアブートをOFFにします。
その後一番右端のタブに移動してUSBメモリをOverrideから起動。

NetBSDのブートしたらそのまま起動。
ただしT100TA、TW708を含むBay-Trail機種では
GPUが切り替わるタイミングでBlackscreenになるので
画面が表示出来なくなります。
i915のGPUをOFFにします。
4)を選択しコマンドラインから

userconf disable i915drmkms
boot

と入力して起動すると画面が表示されるはずです。
タイポ注意。
/boot.cfgに追記しておくと楽です。

ブートローダーが起動しましたら英語を選択し
Xを押してターミナルに落ちます。
ここからは公式HPどおりにEFIパーティションを作成し、
bootx64.efiとbootia32.eifファイルを/EFI/boot/にコピーします。

https://wiki.netbsd.org/Installation_on_UEFI_systems/


まず既存のディスクからNetBSDのパーティションを作る必要があります。

sysctl hw.disknames

調べると、
ld0:SSDディスク
wd0:HDDディスク
sd0:USBディスク
と出てくるはずです。
コレを消して作り直します。

dk0とdk1、dk2はディスク内パーティションです。

dkctl ld0 listwedges

とするとld0、SSD内部のパーティションを表示します。
消さないようにご注意を。
パーティションサイズの変更などは多分出来ないので、
UbuntuなどからGpartedで編集してからインストール作業しましょう。
自己責任で。
覚悟が決まったらパーティションを削除します。
勿論元には戻せません。

gpt destroy ld0

新しくパーティションを作成し直します。
ここでディスク名とパーティション名に注意

gpt create ld0
gpt add -a 2m -l "EFI system" -t efi -s 128m ld0
gpt add -a 2m -l NetBSD -t ffs -s 52g ld0
gpt add -a 2m -l swap -t swap ld0

作成されるパーティションの容量は各自好きな容量を設定しましょう。
基本では58gになっていますが、52gくらいは大丈夫かと。
作成したパーティションを確認。

gpt show ld0
パーティションが表示されます。
1:dk0
2:dk1
3:dk2
です。紛らわしいですw
ついでにrdk0もdk0と同じです・・・
他のパーティションを残してあるとこの数値が変わります。
ご注意を。

EFIファイルシステム設定(FAT32)

newfs_msdos /dev/rdk0

HDDをマウント(起動ディスクとルートフォルダはUSB)

mount -t msdos /dev/dk0 /mnt
mkdir -p /mnt/EFI/boot

ブートローダー bootx64.efiとbootia32.efiをコピー

cp /usr/mdec/*.efi /mnt/EFI/boot

アンマウント

umount /mnt

Swap作成

newfs -O 2 dk2

インストール画面に戻る

exit


ここまでで一連のEFIパーティション作成です。
後は通常インストールに戻ってNetBBSDパーティションに
ファイルをインストールしましょう。
で再起動したらUSBメモリを外して起動。
NetBSDのブートローダーが立ち上がるはずです。
この機種は当たりですね。
で、また

5)
userconf disable i915drmkms
boot

でGPUをOFFにしてから起動しましょう。

●少し分かってきた事
色々な機種でテストしはじめて分かってきたこと

・GPUでi915をOFFににしないとブラックスクリーン
 T100TAM、Star-Q、TW708
・起動中にフリーズ
 Star-Q
・UEFIエントリに何故か自動で書き込みされない
 T100TAM

などなど。
それぞれの機種でチップとファームウェアが違います。
沢山の機器を試して傾向を見るしかわかりかねる状況ではあります。
まだ3機種目ですからね・・・

あと縦画面なんですけど、横画面に回転できないかな・・・

●まとめ
この機種はやはり当たりです。
まとめとして、
UEFI32bitでも64bitでも問題なくNetBSD8.0が起動する事が分かりました。
一部の機種では起動時に止まったり、UEFIに書き込み出来ない現象が出ています。
i915をdisableしないとブラックスクリーンで画面が表示されません。
などなど。
組み合わせを解析するには、数をこなすのが正義でしょうかね・・・
Linuxの時と同じく、とっても面倒です。
本当に時間がかかりすぎる作業、いやんw
まあ格安WindowsタブレットがNetBSD8.0でも問題なく起動出来たのは幸い。
どんどんハックしませんか?一緒にやりましょうよ。
posted by kapper at 13:02 | Comment(0) | NetBSD

2018年09月23日

世界の全ての機器を制覇するOS NetBSD8.0 UEFI Windowsタブレット T100TAインストール その25 #NetBSD


NetBSD8.0.jpg


今回はWindowsタブレットのT100TAをモデルに
リリースされているNetBSD8.0をUEFIで動かしてみました。
UEFI関係はまだ手動インストールなので、
作業は必要ですがUEFI32bit、64bit両対応なので
だいたい殆どの機種で動くはずです。
勉強を兼ねて是非試してみましょう。



●NetBSD8.0とUEFI
UEFIの動作には複数の条件が必要です。
ここで対象となる機種はWindows8以降のPCです。
CoreiシリーズはLegacyBIOSでも動作しますが、
AtomなどWindowsタブレットはUEFI動作が必須です。
NetBSDは公式でUEFI32bitとUEFI64bitに両方対応しています。
UEFIのROM領域に書き込みが必要になります。
詳しくはこちらの資料をご一読を。



必要条件として

・ストレージにEFIパーティション(FAT32)が必要
・EFIパーティションに/EFI/bootフォルダを作成し、
 ディスクブートローダーのbootx64.efiかbootia32.efiが必要
・ディスクブートローダーのbootx64.efiかbootia32.efiから
 設定ファイルのデータが必要。標準では/boot.cfgがあります。
・efibootmgrなどでUEFIのNVRAMフラッシュROM領域に
 ディスクブートローダーとディスク名のPathを書き込む必要
・例外としてUSBメモリなど外部ストレージはNVRAMに書き込み不要
 外部ディスク単体を識別する仕組み

が必要です。
UEFI関係のインストールは手作業が必要です。
標準イメージが対応しているのは、ブートと既存パーティションへの書き込みです。
手作業で簡単に出来ますので問題ないかと。
課題はストレージのWindowsなどを消さないよう自己責任注意w


●インストールUEFIイメージの書き込みと起動
まずはNetBSD公式HPから8.0のUEFIイメージをダウンロード。
ddコマンドかRawrite32でUSBメモリに焼き込みます。

焼いたらUSBメモリをHUBかなにか使いつつ本体と接続して起動
まずはT100TAをESCかF2を押してUEFI(BIOS)を起動させて
セキュアブートをOFFにします。
その後一番右端のタブに移動してUSBメモリをOverrideから起動。

NetBSDのブートしたらそのまま起動。
ただしT100TAを含むBay-Trail機種では
GPUが切り替わるタイミングでBlackscreenになるので
画面が表示出来なくなります。
i915のGPUをOFFにします。
4)を選択しコマンドラインから

userconf disable i915drmkms
boot

と入力して起動すると画面が表示されるはずです。
タイポ注意。
boot.cfgに追記しておくと楽です。


ブートローダーが起動しましたら英語を選択し
Xを押してターミナルに落ちます。
ここからは公式HPどおりにEFIパーティションを作成し、
bootx64.efiとbootia32.eifファイルを/EFI/boot/にコピーします。

https://wiki.netbsd.org/Installation_on_UEFI_systems/


まず既存のディスクからNetBSDのパーティションを作る必要があります。

sysctl hw.disknames

調べると、
ld0:SSDディスク
wd0:HDDディスク
sd0:USBディスク
と出てくるはずです。
コレを消して作り直します。

dk0とdk1、dk2はディスク内パーティションです。

dkctl ld0 listwedges

とするとld0、SSD内部のパーティションを表示します。
消さないようにご注意を。
パーティションサイズの変更などは多分出来ないので、
UbuntuなどからGpartedで編集してからインストール作業しましょう。
自己責任で。
覚悟が決まったらパーティションを削除します。
勿論元には戻せません。

gpt destroy ld0

新しくパーティションを作成し直します。
ここでディスク名とパーティション名に注意

gpt create ld0
gpt add -a 2m -l "EFI system" -t efi -s 128m ld0
gpt add -a 2m -l NetBSD -t ffs -s 21g ld0
gpt add -a 2m -l swap -t swap ld0

作成されるパーティションの容量は各自好きな容量を設定しましょう。
基本では21gになっていますが、28gくらいは大丈夫かと。
作成したパーティションを確認。

gpt show ld0
パーティションが表示されます。
1:dk0
2:dk1
3:dk2
です。紛らわしいですw
ついでにrdk0もdk0と同じです・・・
他のパーティションを残してあるとこの数値が変わります。
ご注意を。

EFIファイルシステム設定(FAT32)

newfs_msdos /dev/rdk0

HDDをマウント(起動ディスクとルートフォルダはUSB)

mount -t msdos /dev/dk0 /mnt
mkdir -p /mnt/EFI/boot

ブートローダー bootx64.efiとbootia32.efiをコピー

cp /usr/mdec/*.efi /mnt/EFI/boot

アンマウント

umount /mnt

Swap作成

newfs -O 2 dk2

インストール画面に戻る

exit


ここまでで一連のEFIパーティション作成です。
後は通常インストールに戻ってNetBBSDパーティションに
ファイルをインストールしましょう。
ただご注意なのが、UEFIエントリのNVRAMにまだ書き込んでいません。
当然、SSDからブートしませんのでご注意を。
外部USBメモリに書き込んだ場合はOKですけど。


●UEFIのNVRAMに焼き込み。efibootmgr
作成したパーティションの情報をUEFIエントリに書き込む場合、
efibootmgrが必要ですが、まだNetBSDにポートされていません。
UbuntuなどのLiveイメージに入っていますので
そちらを起動して使用します。
Ubuntuの場合はレスキューディスクの機能もあって
ほぼ、efibootmgrが入っています。
今回はlubuntu17.10のISOイメージを
rufusで焼いて使用しました。
UEFI32bitタブレットの場合は更にbootia32.efiを
/EFI/boot/にコピーする必要があります。
勿論、UbuntuにもBlackscreenバグありますのでご注意。
grubのオプションで「E」を押して編集画面になったら、
quietの前にnomodesetかi915.modeset=0を追記してGPUをOFFにしましょう。

まずUbuntuのイメージをISOに焼いたら
USBから起動します。
Blackscreenになる場合は、
grubオプションを開いてquietの前にnomodesetを追加して
F10で起動させます。
まあ端末さえ起動できれば問題ないです。
端末から

findmnt

パーティション名を調べましょう。
Gpartedを使っても良いです。

sudo su
efibootmgr -c -d /dev/mmcblk2p1 -p 1 -L “NetBSD 8.0” -l “\EFI\boot\bootx64.efi”

\マークはLive起動が英語モードでは表示されないので
バックスラッシュに置き換えましょう。
efibootmgrはこんな感じ

・efibootmgrの概略説明 
 -c 書き込み
 -d /dev/mmcblk2p1 ←Ubuntuから見たSSD
 -p 1 ←パーティション名数(dk0の事)1つ目のパーティション
 -L “NetBSD 8.0” ←BIOS表示名
 -l “\EFI\boot\Bootx64.efi” 
  ←NetBSDブートローダーUEFI64bit版
  UEFI32bit版はbootia32.efiを指定
  カタログOSがWindows10(32bitか64bit)の表示で識別します。

-p 1に注意。1つ目のEFIパーティションの事です。
-Lは好きな名前で。
まあ間違えたら消して書き直せば良いんです。
そんなに大きな問題はありませんはい。
僕は-p 1が分からなくて5回位書き直しましたw
これが正しく焼かれるとUEFIの画面でエントリが表示されます。

NetBSD8.0 efibootmgr.jpg

●再起動
これらが無事終了すると
UEFIエントリ画面にNetBSDが表示されます。
選択するとそのままブートして起動します。
もしBlackscreenになる時はまたオプションを追加しましょう。

●まとめ
UEFI32bit、64bitのWindowsタブレットで
NetBSD8.0が無事起動しました。
他のUEFIマシンも同じはずです。
まあバグが出るかもしれませんが報告して、と。
是非使ってみましょう。

posted by kapper at 20:56 | Comment(0) | NetBSD

2018年05月28日

「NetBSD速報あんてな」を移転しました。

NetBSDの最新情報を集めようとNetBSD速報あんてなを
作っていますが、アンテナサイトの都合上で
何回もURLが壊れてしまっています。
結局消されにくいマイアンテナに置いてありました。
しかし今回マイアンテナが5/31にサービス終了する事で、
止むを得ずアンテナを移転しました。
新しいURLはこちらです。
ブログやHPのリンクも切り替えました。
大変ご迷惑をおかけしておりますが、
どうぞ宜しくお願い致します。

http://antennach.com/NetBSD/
posted by kapper at 22:41 | Comment(0) | NetBSD

2018年03月10日

世界の全ての機器を制覇するOS NetBSD Nexus9 Bochsエミュレーション ておくれLiveイメージ その24 #NetBSD

Teokure.jpeg

今回はておくれNexusの起動法ですw
NetBSD6.1.5のておくれLiveイメージを用いて
AndroidのNexus9上でエミュレーション動作してみました。
CPU速度を除けば快適です(ぉぃ
目的はiPhoneやAndroidなどで動かすためです。
エミュレーション側がタッチスクリーンマウスエミュや
NE2000、VGAその他を対応してくれるので
ドライバ関係はノータッチで楽です。
実はQemuベースのLINBOエミュもあるんですが、
イメージファイルの2GB制限があって起動出来ていません。
まあこちらは通常インストールで対応しましょう。

●NetBSD6.1.5とBochsエミュレーション
NetBSDはi386で各種エミュレータが使えます。
Kernelのバグが無く起動できるのが6.1.5までです。
ここはNetBSDのバグフィックスに期待。
実機で動かすのが面倒なモバイル機器の場合、
エミュレータを使うのが楽です。主に展示用。

しかしPCを除くとまともに動くのが、
QemuとBochsの2択しかありません。
特にiPhoneの場合はBochs一択です。
ぐぬぬ。
試してみました。

●Bochs
Bochsの動作条件は下記です。

・Bochs本体
・NetBSD i386 6.1.5以前(何故か7.0以降NG)
・ておくれLiveイメージQemu用
 ⇒QemuとBochsはイメージ互換です。
・VGA設定はPCIVGA(VBE)
・LINBO(Qemu)はイメージファイルが2GB以下
・入力時はキーボード

この条件が重なればいかなる機器でも動作します。
まあ容量の制限には注意です。
Mikutterを動かしましょ。
もちろんWindowsやFreeBSD、Linux他も動きます。

●ておくれLiveイメージ
最新版は7.1.1なのでBochs上では起動しません。
なので、6.1.5版をダウンロードしましょう。
PCでダウンロードすると展開する時、楽かも


http://teokurebsd.org/netbsd/liveimage/20150705-6.1.5/liveimage-i386-emu-20150705-6.1.5.img.gz


作者のつついさんに感謝して使います。
PC上で展開してimgファイルにします。
3.6GB前後でしょうか?容量注意。
で、USBメモリか何かでAndroidのDownloadへコピー。
ひょっとしたら外部メモリ上でも動くと思いますが、
Nexusなので試してません。
ひとまずここまで。

次はAndroidでBochsをインストール。
こちらのを。


https://play.google.com/store/apps/details?id=net.sourceforge.bochs&hl=ja


インストールしたらそのまま起動。
設定します。

Storage
・ata0-master(disk)
 にNetBSDのイメージファイル

Hardware
・メモリは適当
・VGA Cardにpcivga
・Ethernet Cardにne2K
・Soundにsb16

あとは触らない。
CPU設定とかClockは基本でrealtimeで良いでしょう。
で右上のStart
でSDLと共にBochsとNetBSDが起動します。
あとはログイン画面まで放置。

ログイン画面で
ユーザー:mikutter
パスワード:Teokure-

●課題?
まずソフトウェアキーボードが表示されないので、
常時表示アプリを入れるかハードウェアキーボードを繋ぎましょう。
ログインして入力するためです。

CPU速度はRealtimeなので母材のAndroidに比例しますが、
Pentium2の200〜400MHz相当かなぁ。
あんまり速くはありませんが、もたつく程度では無いです。
浮動少数演算を使わないのでQemuよりかは速いはず。
Nexus9は2014年製なので、最新のCPUならもっと速いでしょう。
バックグラウンドのアプリは落としておきましょう。
流石にFirefoxは起動するのはキツイかもw

●まとめ
仕組みさえ分かっていればNetBSDは簡単です。
あとは時間と根性w
でもFirefoxは速度的に無理だな、と思った。やっぱり?
遅え、と思った方は高速CPUを持つAndroidで試しましょう(ぉぃ
AndroidでもiPhoneでも何でも。
AndroidでQemuを使いたい人は自分でOSイメージを作成しましょう。
是非色々なOSを試してみましょう。
posted by kapper at 18:29 | Comment(0) | NetBSD

2018年02月25日

世界の全ての機器を制覇するOS NetBSD Bochs 起動バグ調査 その23 #NetBSD

Screenshot from 2018-02-25 07-18-04.png

今回はx86エミュレータのBochs上でのNetBSDを検証します。
Bochsなんて使わないよ、という人が沢山いるかもしれませんが
これはこれで一応重要です。
Linuxは動いて、Windowsも動いて、FreeBSDも動いて
NetBSDだけ起動しない状態なんですよね

●BochsとNetBSD
Bochsは昔からあるx86エミュレータです。
x86のOSの安定性と移植性を優先していて、
動作速度は遅いですがありとあらゆるOS環境で使えます。
一番有名なのがiPhoneでしょうか?
iPhoneでWindowsXPや7が動いた、というのはほぼBochsです。
Androidでもよく使われます。
ARMの場合、Qemuと違ってBochsは浮動小数点演算を使わないので
RISCコアなARMではBochsはQemuより速いです。
実は過去にご報告がありまして、それを読んでチェックしています。









NetBSDの本家HPではi386はBochsで動くと書いてありますが、
実際は動きません。
どこのバージョンから起動しなくなったのか検証してみました。

●Bochsの使い方とNetBSDのインストール方法
Bochsは基本的に選択的UIで数字コマンドを入力して設定します。
端末から使うコマンドは3つです。

bximage:HDDイメージファイルを作成する。Qemuと共通
bochs:エミュ本体。
.bochrc:bochsの設定ファイル。別ファイル名でも可能。
*.img、*.iso:起動に使うイメージファイル

NetBSDのISOファイルは本家HPからダウンロード。
bximageコマンドでHDDイメージを作成。数GB以上で。
端末からbochsコマンドで起動するとCUIでメニューが出ます。
選択的に数字を入力することで、設定できます。
最初のメニューで(3)を選ぶとオブションが選択して、
保存するとファイルに自動的に設定が残ります。

・CPU設定
(5)⇒(5)CPU⇒IPS:15000000
・メモリ設定
(7)⇒(1)⇒(1)⇒512,512
・ディスクイメージ設定
(12)⇒(4)⇒YES、DISK、
 空イメージファイル名(〜.img)選択、後はそのままエンター
(12)⇒(5)⇒YES、CDROM、ISOファイル名(〜.ISO)、エンター
・ブート設定
(12)⇒(15)⇒(2)⇒cdrom
(12)⇒(15)⇒(3)⇒disk
・設定の保存
(4)⇒.bochrc
・起動
(6)

●Bochs動作テスト
ISOファイル起動時にフリーズします。
i386の公式ISOファイルを使っています。
・NetBSD6.0:OK
・NetBSD6.0.6:OK
・NetBSD6.1.4:OK
・NetBSD6.1.5:OK
・NetBSD7.0:NG
・NetBSD7.1:NG
・NetBSD7.1.1:NG
・NetBSD8.0Beta:NG

NetBSD7.0以降に混入したバグと推定。
ちなみにNetBSD6.1.5 Amd64でも同じ現象。
という事は・・・?

iPhoneなどでNetBSDを使いたい人は
NetBSD6.1.5のi386を推奨します。

Screenshot from 2018-02-25 07-54-56.png

●ておくれLiveイメージの動作検証
NetBSD6.1.5のておくれLiveイメージをBochsでテストします。
まずはここからダウンロードします。


http://teokurebsd.org/netbsd/liveimage/20150705-6.1.5/liveimage-i386-emu-20150705-6.1.5.img.gz


後は展開してimgファイルにした後に、
HDDディスクイメージとして起動します。
ちょっと長いですが、ファイル名を正確に入力します。

・ディスクイメージ設定
(12)⇒(4)⇒YES、DISK、
 イメージファイル名(〜.img)選択、後はそのままエンター

でブートをHDDにするかCDROMを外して起動します。
恐らく立ち上がるはずです。


●動作環境と動作速度
CF-NX2のBochs2.6.5です。
NetBSDは6.1.5のISOからインストールして起動まで確認。
IPSは15000000位
IPSというのは1秒あたりの命令数でCPUクロックに該当します。
推定Pentium200MHz相当でしょうか?
CPUベンチマークを測定しないとよく分かりません。

IPSでのCPU速度とフレーム数は反比例します。
IPSを上げればエミュ速度はあがりますがフレーム数が下がります。
もうちょっとIPSを上げてCPUクロックを上げて
負荷を上げた方が良いかもしれません。
速すぎてフレームが飛んでしまいます。

●まとめ
iPhoneでx86とNetBSDをエミュるにはBochsがどうしても必要です。
とりあえずNetBSD6.1.5ならBochsで起動できる事がわかりました。
とりあえずエミュレータで実験する際にはこれを使います。
まあ、ね。
数あるOSの中でNetBSDだけ起動しないんですよ。
それが気になって仕方がなかっただけです。
僕みたいな極端なOS環境をテストする人には特に。
バグが直るかは直接的な原因が分からなければ不透明なので、
今後の課題でしょうか?
posted by kapper at 08:08 | Comment(0) | NetBSD

2017年12月02日

世界の全ての機器を制覇するOS NetBSD Virtualbox インストールテスト その22 #NetBSD


今日はVirtualboxにNetBSD7.1をインストールして
動作テストしようという内容です。
VirtualBoxでNetBSDは十分テストされており
使用上に問題はありません。

●NetBSDとPCエミュレータ
PCエミュレータは色々ありますが、たいてい動作します。
動作報告がないのはDOSBoxとBochs(最近の)でしょうか?
もし動いたら動作報告願います。
QemuとかVirtualboxとかは大丈夫です。
サブマシン代わりとしてぜひ使ってみましょう。
参考はこちらです。感謝です。

NetBSD-7.0をインストールしてみる

●NetBSDのインストール
VirtualBoxの使い方は特に難しくはありません。
NATを使えばネットワークも使えます。

1.VirtualboxでHDDイメージ作成
2.NetBSD本家よりi386かx86-64のISOをダウンロード
  ておくれLiveイメージを使っても良いです。
3.VirtualboxでISOをマウント、ネットをNATにして起動、インストール
4.NetBSDをHDDイメージから再起動してpkgsrc,pkginなどインストール
5.Xorg環境をインストール(必要なら)
6.普通に使う

こんな感じですかね?
メモリ空間に支障がなければNetBSD i386の32bit版を使いましょう。
NetBSDに慣れている人なら毎回同じ作業ですが、
慣れていない人には読みながら実施してみましょう。
まずVirtualboxを起動してNetBSDのHDDイメージを作ります。
歯車マークの「新規」を押してイメージを作ります。

・名前:NetBSD(好きな名前)
・タイプ;NetBSD
・バージョン:NetBSD(32bit)か(64bit)

メモリサイズの設定ではXrogを使うにしても512MB以上あれば。
好きな容量を指定します。
次にHDDイメージのサイズを指定します。
pkgsrcを使うならビルドソースに20〜30GBは欲しいですが、
バイナリパッケージを使うなら数GBあれば十分かと。
用途に応じて選びます。
今回はVHDファイルで可変サイズにします。好きなように。
作ったら、元の画面に戻るはずなので、
ストレージの項目に

IDEセカンダリマスター[光学ドライブ]
にNetBSD-7.1-i386.isoを指定して、
IDEプライマリマスターには先程のHDDのイメージ
ネットワークはNATのまま

を確認したら起動します。
NetBSDのISOイメージが起動したら1を押してインストール開始
マウスを外のPCへ切り替えたい場合は右CTLキー
まあ後はいつも通り。

a:Install Messages English
b:Keyboard n:Japanese
a:Install NetBSD to HDD
b: Yes
a:wd0
a:This is the correct geometry
b:use the entire disk
a:Yes
a:Set size of NetBSD partitions
a: 18964
x:(設定した後に)Accept partiton sizes.
x: Partition sizes ok
b:Yes
a:Use BIOS console
x:Exit
a:Full installation
a:CD-ROM〜
x:Finished configuring
d:Reboot the computer

インストールが終了したら一旦画面を閉じて電源を切って
IDEセカンダリマスターにあるISOファイルを外します。
HDDから起動するためです。
で起動するとNetBSDが起動するはず。1で良いです。
とりあえずRootでログインしましょう。
ログインしたらネットにつなぎます。
IPアドレスが入手されていないのでDHCPDを設定します。

vi /etc/rc.conf

下記2行を追記。

dhclient=YES
dhclient_flags="wm0"

保存します。
その後にDhcpdをスタートします。

/etc/rc.d/dhcpcd onestart

これでひとまずネットに繋がるはずです。
pingでチェック

ping -c 3 www.google.co.jp

アドレスは何でも良いです。
接続してパケットが帰ってこればOK
次はpkgsrcをダウンロード

ftp ftp://ftp2.jp.netbsd.org/pub/pkgsrc/pkgsrc-2017Q3/pkgsrc-2017Q3.tar.gz

ダウンロード出来ましたでしょうか?
tar zxvf pkgsrc.tar.gz

展開出来たらpkgsrcの実行です。

 cd pkgsrc

wwwとか色々なカテゴリのディレクトリが見えるはずです。
後はmakeすれば自動的にコンパイルしてくれるはず。

 cd pkgtool/direct
 make
 make install

バイナリパッケージから入れる場合は、pkg_addを使います。別途追記しました。
後は自動的にダウンロードして展開してくれます。
自分のユーザーだけで使いたければbootstrapを使うのも手です。
これはユーザーを気にせず各自の環境単位でインストールしてくれます。
主にLinuxなどNetBSD以外の環境で使います。


●まとめ
ネットに繋がってpkgsrcがダウンロード出来ればひとまずOK
あとはパッケージを入れていくだけです。
慣れるまでは大変ですが、
一度覚えれば後は同じはず。
後は電源ブチは辞めましょう。
PCはエミュレーションでも動いているままです。
posted by kapper at 15:48 | Comment(0) | NetBSD
にほんブログ村 IT技術ブログへ
にほんブログ村

Linux ブログランキングへ