NetBSD
2012年11月18日
2009年11月13日
カーネルコンパイルの最適化を変えてみる
更なる上のオプションとか、最小コード化とか。
まず、O3 から。
O3オプション
O2 を上回る最適化をしてくれそうな O3。しかし、 warn が error になるものがあるようで、adb_direct.c でエラー終了。
エラーになる箇所を修正すればいけるのかなあ、追究はしません。
Osオプション
このオプションはO2からコード増大系最適化を外し、最小コードサイズの生成をするらしい。メモリの少ないマシンでは使えるオプションのような気がする。
コンパイルすると、バイナリが 300Kバイト近くもコンパクトになっている!
起動した結果…
動くかと思ったけどダメだった。
O(O1)オプション
普通の最適化っぽいオプション(普通って…コンパイルすると、何気にコードサイズが小さい。普通に起動できた。
O0オプション
最適化無し。GENERICカーネルより、とても・・・大きいですw
コンソール表示が、気持ちもたつくような。
何れも、ブートさせて telnet, ftp を動作させただけなので、何かの拍子にパニくるかもしれません。
2009年11月12日
NetBSD/mac68kでカーネルのクロスコンパイル
明らかにそういうパソコンの方が68kMacより高速です。
なので、そういうパソコンでコンパイルした方が物凄い時間の節約になります。
ということで、クロスコンパイル環境を作ります。
NetBSD/i386 を入れるパソコンを用意するのが面倒なので、VMware で環境を作ります。
用意したホストは WindowsXP, Core2 Quad Q6600。VMwareはメモリ2GB以上ないとキツいです。
NetBSD/i386 はインストーラの通りに設定を進めれば、容易にインストール出来ます(Mac比)
Chapter 31. Crosscompiling NetBSD with build.sh を参考に作業を進めます。
クロスコンパイルに必要なコマンド群を作ります。
$ cd /usr/src実行すると、途中でアボートすると思います。メッセージを見ると /usr/obj が無いと出ています。
$ ./build.sh -m mac68k tools
30.1. Building the crosscompiler でも触れられていますが、なるべく簡単に済ませたいので
ここはディレクトリを作って済ませます。
# mkdir /usr/obj
# chown <自分のuser名>:<自分のgroup名> /usr/obj
再度、build.sh を実行します。
$ ./build.sh -m mac68k tools10分くらいかかったかも。
実行が完了すると /usr/src//usr/src/tooldir.NetBSD-5.0-i386 以下に出来ています。
あとはセルフコンパイルとほとんど同じですが、コマンドがクロス用のものになります。
$ cd /usr/src/sys/arch/mac68k/conf
$ cp GENERIC WOZNIAK
$ vi WOZNIAK
$ /usr/src/tooldir.NetBSD-5.0-i386/bin/nbconfig WOZNIAK
カーネルのコンパイル。
$ cd ../compile/WOZNIAK問題なければ、5分ほどで終わります。
$ /usr/src/tooldir.NetBSD-5.0-i386/bin/nbmake-mac68k depend
$ /usr/src/tooldir.NetBSD-5.0-i386/bin/nbmake-mac68k
セルフだと6時間程度かかるコンパイルが5分で終わりますので、マジオススメ!!
2009年11月11日
NetBSD/mac68kでカーネルのセルフコンパイル
GENERICカーネルには汎用に作られているため、自分用にチューンアップします。
しかし、68kMacでのセルフコンパイルは激しくオヌヌメできない…
カーネルソースの展開なんかは余裕でできると思われるので省略。
カーネルのコンフィグレーションをします。
$ cd /usr/src/sys/arch/mac68k/conf
$ cp GENERIC WOZNIAK ←別にホスト名に合わせなくていい
$ vi WOZNIAK ←適当に編集する
$ config WOZNIAK
カーネルのコンパイルをする。
$ cd ../compile/WOZNIAK
$ make depend ←けっこう時間がかかる
$ make ←かなり時間がかかる
なにも問題がなければ、6時間ほどで終われます。
以下は使用したコンフィグレーションです。
# $NetBSD: GENERIC,v 1.191 2008/08/10 15:31:21 tls Exp $ # # GENERIC machine description file # # This machine description file is used to generate the default NetBSD # kernel. The generic kernel does not include all options, subsystems # and device drivers, but should be useful for most applications. # # The machine description file can be customised for your specific # machine to reduce the kernel size and improve its performance. # # For further information on compiling NetBSD kernels, see the config(8) # man page. # # For further information on hardware support for this architecture, see # the intro(4) man page. For further information about kernel options # for this architecture, see the options(4) man page. For an explanation # of each device driver in this file see the section 4 man page for the # device. include "arch/mac68k/conf/std.mac68k" makeoptions COPTS="-O2 -pipe -m68040" options INCLUDE_CONFIG_FILE # embed config file in kernel binary #ident "GENERIC-$Revision: 1.191 $" maxusers 16 # estimated number of users # CPU support. At least one is REQUIRED. options M68040 #options M68030 #options M68020 # Note: must have 68851 PMMU # CPU-related options. options FPSP #options FPU_EMULATE # Standard system options #options INSECURE # disable kernel security levels options RTC_OFFSET=540 # hardware clock is this many mins. west of GMT options NTP # NTP phase/frequency locked loop #options KTRACE # system call tracing via ktrace(1) options SYSVMSG # System V-like message queues options SYSVSEM # System V-like semaphores options SYSVSHM # System V-like memory sharing options P1003_1B_SEMAPHORE # p1003.1b semaphore support options LKM # loadable kernel modules options USERCONF # userconf(4) support #options PIPE_SOCKETPAIR # smaller, but slower pipe(2) options SYSCTL_INCLUDE_DESCR # Include sysctl descriptions in kernel # Enable experimental buffer queue strategy for better responsiveness under # high disk I/O load. Use it with caution - it's not proven to be stable yet. #options BUFQ_READPRIO #options BUFQ_PRIOCSCAN # Diagnostic/debugging support options #options DIAGNOSTIC # cheap kernel consistency checks #options DEBUG # expensive debugging checks/support #options LOCKDEBUG # kernel lock debugging options KMEMSTATS # kernel memory statistics (vmstat -m) #options DDB # in-kernel debugger #options DDB_HISTORY_SIZE=100 # enable history editing in DDB #options KGDB # remote debugger #options KGDB_DEV=0xc01 # kgdb device number (dev_t) #options KGDB_DEVRATE=38400 # baud rate #makeoptions DEBUG="-g" # compile full symbol table # Compatibility options #options COMPAT_NOMID # compatibility with 386BSD, BSDI, NetBSD 0.8, #options COMPAT_09 # NetBSD 0.9, #options COMPAT_10 # NetBSD 1.0, #options COMPAT_11 # NetBSD 1.1, #options COMPAT_12 # NetBSD 1.2, #options COMPAT_13 # NetBSD 1.3, #options COMPAT_14 # NetBSD 1.4, #options COMPAT_15 # NetBSD 1.5, #options COMPAT_16 # NetBSD 1.6, #options COMPAT_20 # NetBSD 2.0, #options COMPAT_30 # NetBSD 3.0, options COMPAT_40 # NetBSD 4.0 compatibility. options COMPAT_43 # and 4.3BSD #options TCP_COMPAT_42 # 4.2BSD TCP/IP bug compat. Not recommended. # The following is needed to run pre-NetBSD 1.6 binaries under ELF. options COMPAT_AOUT_M68K # compatibility with NetBSD/m68k a.out options EXEC_AOUT # support for exec'ing a.out #options COMPAT_LINUX # compatibility with Linux/m68k binaries #options COMPAT_M68K4K # compatibility with NetBSD/m68k4k binaries #options COMPAT_SUNOS # compatibility with SunOS 4.x binaries #options COMPAT_SVR4 # compatibility with SVR4 binaries options COMPAT_BSDPTY # /dev/[pt]ty?? ptys. # File systems file-system FFS # UFS #file-system EXT2FS # second extended file system (linux) #file-system LFS # log-structured file system file-system MFS # memory file system file-system NFS # Network File System client file-system CD9660 # ISO 9660 + Rock Ridge file system #file-system MSDOSFS # MS-DOS file system #file-system FDESC # /dev/fd file-system KERNFS # /kern #file-system NULLFS # loopback file system #file-system OVERLAY # overlay file system #file-system PORTAL # portal filesystem (still experimental) file-system PROCFS # /proc #file-system UMAPFS # NULLFS + uid and gid remapping #file-system UNION # union file system #file-system CODA # Venus/Coda distributed file system file-system PTYFS # /dev/pts/N support file-system TMPFS # Efficient memory file-system #file-system UDF # experimental - OSTA UDF CD/DVD file-system #file-system HFS # experimental - Apple HFS+ (read-only) # File system options #options QUOTA # UFS quotas #options FFS_EI # FFS Endian Independant support options SOFTDEP # FFS soft updates support. #options WAPBL # File system journaling support - Experimental #options UFS_DIRHASH # UFS Large Directory Hashing - Experimental options NFSSERVER # Network File System server #options FFS_NO_SNAPSHOT # No FFS snapshot support #options EXT2FS_SYSTEM_FLAGS # makes ext2fs file flags (append and # immutable) behave as system flags. # Networking options options GATEWAY # packet forwarding options INET # IP + ICMP + TCP + UDP options INET6 # IPV6 #options IPSEC # IP security #options IPSEC_ESP # IP security (encryption part; define w/IPSEC) #options IPSEC_NAT_T # IPsec NAT traversal (NAT-T) #options IPSEC_DEBUG # debug for IP security #options MROUTING # IP multicast routing #options PIM # Protocol Independent Multicast #options ISO,TPIP # OSI #options EON # OSI tunneling over IP #options NETATALK # AppleTalk networking protocols options PPP_BSDCOMP # BSD-Compress compression support for PPP options PPP_DEFLATE # Deflate compression support for PPP options PPP_FILTER # Active filter support for PPP (requires bpf) options PFIL_HOOKS # pfil(9) packet filter hooks options IPFILTER_LOG # ipmon(8) log support options IPFILTER_LOOKUP # ippool(8) support #options IPFILTER_DEFAULT_BLOCK # block all packets by default #options TCP_DEBUG # Record last TCP_NDEBUG packets with SO_DEBUG #options ALTQ # Manipulate network interfaces' output queues #options ALTQ_BLUE # Stochastic Fair Blue #options ALTQ_CBQ # Class-Based Queueing #options ALTQ_CDNR # Diffserv Traffic Conditioner #options ALTQ_FIFOQ # First-In First-Out Queue #options ALTQ_FLOWVALVE # RED/flow-valve (red-penalty-box) #options ALTQ_HFSC # Hierarchical Fair Service Curve #options ALTQ_LOCALQ # Local queueing discipline #options ALTQ_PRIQ # Priority Queueing #options ALTQ_RED # Random Early Detection #options ALTQ_RIO # RED with IN/OUT #options ALTQ_WFQ # Weighted Fair Queueing # These options enable verbose messages for several subsystems. # Warning, these may compile large string tables into the kernel! options SCSIVERBOSE # human readable SCSI error messages # wscons options #options WSEMUL_SUN # sun terminal emulation options WSEMUL_VT100 # VT100 / VT220 emulation options WSDISPLAY_COMPAT_ITEFONT # use ite font (6x10) # rcons options; note that 1-bit and 8-bit displays are supported by default. options RCONS_2BPP # Support for 2-bit display #options RCONS_4BPP # Support for 4-bit display #options RCONS_16BPP # Support for 16-bit display # Mac-specific options #options ALTXBUTTONS # Map Opt-{1,2,3} to mouse buttons #options DISABLE_EXT_CACHE # If really paranoid, disable IIci ext. cache options GRF_COMPAT # Include grf compatibility code #options MRG_ADB # Use ROM-based ADB driver #options ZS_CONSOLE_ABORT options NFS_BOOT_DHCP # Kernel root file system and dump configuration. config netbsd root on ? type ? # # Device configuration # mainbus0 at root # Basic Bus Support # On-board I/O bus support obio0 at mainbus? # NuBus support nubus0 at mainbus? # Console Devices # Apple Desktop Bus interface adb0 at obio? aed* at adb? # ADB event device akbd* at adb? # ADB keyboard ams* at adb? # ADB mouse # Basic frame buffer support intvid0 at obio? # Internal video hardware #macvid* at nubus? # NuBus video card # Device-independent frame buffer interface macfb* at intvid? #macfb* at macvid? # Workstation Console devices wsdisplay* at macfb? console ? wskbd* at akbd? console ? wsmouse* at ams? # Centronics printer port # CSI Hurdler Centronics Parallel Interface #cpi* at nubus? # Serial Devices # On-board serial interface zsc0 at obio? zstty* at zsc? channel ? # SCSI Controllers and Devices # SCSI controllers # XXX - use only one of ncrscsi or sbc #ncrscsi0 at obio? addr 0 # SCSI NCR 5380 #sbc0 at obio? addr 0 flags 0x1 # MI SCSI NCR 5380 esp0 at obio? addr 0 # SCSI NCR 53C9x #esp1 at obio? addr 1 # SCSI NCR 53C9x # SCSI bus support scsibus* at scsi? # SCSI devices sd* at scsibus? target ? lun ? # SCSI disk drives #st* at scsibus? target ? lun ? # SCSI tape drives cd* at scsibus? target ? lun ? # SCSI CD-ROM drives #ch* at scsibus? target ? lun ? # SCSI autochangers #se* at scsibus? target ? lun ? # SCSI ethernet #ss* at scsibus? target ? lun ? # SCSI scanners #uk* at scsibus? target ? lun ? # SCSI unknown # IDE controller and devices #wdc* at obio? flags 0x1000 #atabus* at ata? #wd* at atabus? drive ? # Miscellaneous mass storage devices # IWM floppy disk controller #iwm0 at obio? # Sony driver (800K GCR) #fd* at iwm? drive ? # Network Interfaces # On-board Ethernet controllers #sn* at obio? # SONIC-based (DP83932, DP83916) #mc* at obio? # MACE-based # NuBus Ethernet controllers ae* at nubus? # DP8390-based #sn* at nubus? # SONIC-based (DP83932, DP83916) #sm* at nubus? # SMC 91cxx-based #netdock* at nubus? # Asante NetDock, Newer Ether MicroDock #nsphy* at mii? phy ? #ukphy* at mii? phy ? # Audio Devices # On-board audio hardware asc0 at obio? # ASC/EASC audio # Pseudo-Devices # disk/mass storage pseudo-devices #pseudo-device ccd 4 # concatenated/striped disk devices #pseudo-device cgd 4 # cryptographic disk devices #pseudo-device raid 8 # RAIDframe disk driver #options RAID_AUTOCONFIG # auto-configuration of RAID components # Options to enable various other RAIDframe RAID types. # options RF_INCLUDE_EVENODD=1 # options RF_INCLUDE_RAID5_RS=1 # options RF_INCLUDE_PARITYLOGGING=1 # options RF_INCLUDE_CHAINDECLUSTER=1 # options RF_INCLUDE_INTERDECLUSTER=1 # options RF_INCLUDE_PARITY_DECLUSTERING=1 # options RF_INCLUDE_PARITY_DECLUSTERING_DS=1 pseudo-device fss 4 # file system snapshot device pseudo-device md 1 # memory disk device (ramdisk) #pseudo-device vcoda 1 # Venus/Coda distributed file system pseudo-device vnd # disk-like interface to files #options VND_COMPRESSION # compressed vnd(4) # network pseudo-devices pseudo-device bpfilter # Berkeley packet filter #pseudo-device carp # Common Address Redundancy Protocol pseudo-device ipfilter # IP filter (firewall) and NAT pseudo-device loop # network loopback pseudo-device ppp # Point-to-Point Protocol #pseudo-device pppoe # PPP over Ethernet (RFC 2516) pseudo-device sl # Serial Line IP #pseudo-device strip # Starmode Radio IP (Metricom) pseudo-device tun # network tunneling over tty pseudo-device tap # virtual Ethernet #pseudo-device gre # generic L3 over IP tunnel pseudo-device gif # IPv[46] over IPv[46] tunnel (RFC1933) #pseudo-device faith # IPv[46] tcp relay translation i/f pseudo-device stf # 6to4 IPv6 over IPv4 encapsulation pseudo-device vlan # IEEE 802.1q encapsulation pseudo-device bridge # simple inter-network bridging #options BRIDGE_IPF # bridge uses IP/IPv6 pfil hooks too pseudo-device agr # IEEE 802.3ad link aggregation # # accept filters pseudo-device accf_data # "dataready" accept filter pseudo-device accf_http # "httpready" accept filter # miscellaneous pseudo-devices pseudo-device grf 2 # grf emulation for wscons pseudo-device ite 1 # ite emulation for wscons pseudo-device pty # pseudo-terminals pseudo-device clockctl # user control of clock subsystem # random number generator pseudo-device pseudo-device rnd # /dev/random and in-kernel generator #options RND_COM # use "com" randomness as well (BROKEN) pseudo-device ksyms # /dev/ksyms #pseudo-device pf # PF packet filter #pseudo-device pflog # PF log if # Veriexec # # a pseudo device needed for veriexec #pseudo-device veriexec 1 # # Uncomment the fingerprint methods below that are desired. Note that # removing fingerprint methods will have almost no impact on the kernel # code size. # #options VERIFIED_EXEC_FP_RMD160 #options VERIFIED_EXEC_FP_SHA256 #options VERIFIED_EXEC_FP_SHA384 #options VERIFIED_EXEC_FP_SHA512 #options VERIFIED_EXEC_FP_SHA1 #options VERIFIED_EXEC_FP_MD5
makeoptions の O2 が時間のかかる要因だと思われます…
2009年11月10日
NetBSD/mac68kの設定
といってもファイルシステムくらいか。
とりあえず、telnet が使えるようにする。
『いまどき telnetwwwww m9(^Д^)プギャー』などと、侮ってはいけない。
68k Macintosh の遅さを侮ってはいけない。それでも 68040 だからマシな方ですが…
使えるようになっているバカっぽいパスワード認証だと接続のたびに眠ってしまうくらいの時間がかかるので。
鍵作って送っとけば解決する事ですが…
ネットワーク設定前に機種依存のファイルシステムの /etc/fstab を作ります。
いろいろ付いてるオプションとか kernfs 等についての説明は不要だと思うので省略。/dev/sd0a / ffs rw,softdep 1 1
/dev/sd0b none swap sw 0 0
kernfs /kern kernfs ro
procfs /proc procfs ro
/dev/cd0a /mnt cd9660 ro,noauto
sd0b がスワップになるのは、UNIXer に気を利かしてそうしているのかもしれないのだが、3分割以外に
したことが無いので、ホントにそうなのかわからない。単純に2つめのパーティションだからってワケでも
なさそうだし。3つめのパーティションが a だし。ま、 b パーティションがスワップでいいな、安心するw
ネットワーク関連の設定。
ゲートウェイとネームサーバは 192.168.1.1 とする。
Macに割り当てるIPアドレスは 192.168.1.21 で、名前は wozniak とする。
まず、ネームサーバの設定。
# echo nameserver 192.168.1.1 > /etc/resolv.conf
次に、自分のIPアドレスの設定。インターフェイス名を ifconfig -a して確認すると ae0 になっているので、
# echo inet 192.168.1.21 netmask 255.255.255.0 > /etc/ifconfig.ae0/etc/ifconfig.ae0 の ae0 の部分は、AAUI 機では sn0 とか mc0 になります。
telnet と ftp が使えるように /etc/inetd.conf を編集。
# vi /etc/inetd.conf ここでは、コメントを外したり、不要なオプションを消したりします
ftp stream tcp nowait root /usr/libexec/ftpd ftpd -ll
telnet stream tcp nowait root /usr/libexec/telnetd telnetd
名前とゲートウェイの設定と、マルチユーザでブートするように /etc/rc.conf を編集。
# vi /etc/rc.conf
rc_configured=YES ← NO から YES に書き換え
hostname=wozniak
defaultroute=192.168.1.1
タイムゾーンの設定。
# ln -fs /usr/share/zoneinfo/Japan /etc/localtime68kMacは時刻が狂い易い仕様なので、起動時に ntpdate、後は ntpd か cron で時刻修正するのが無難です。
最後に useradd でユーザを作って、再起動。
2009年11月08日
NetBSD/mac68kのインストール
すくなくとも、ETC.TGZ くらいは正常にに転送できていること。
さすがに KERN_GENERIC.TGZ は転送できてると思う。
カーネルは転送できていなくてもMacOS上にコピーしたものから起動できます。
それと、BASE.TGZ の /bin と /sbin だけでも転送されているのを確認すること。
といっても、インストール中の画面を見続けているのは結構面倒。しかし簡単な方法がある。
NetBSDを起動して確認すればいい(ぉぃ
…と、その前に用意したほうが良いものがある。
BASE.TGZ の圧縮をはずして tar 形式にしたファイルを CD-R(W) に書き込んで用意する。
ついでに他の転送していない圧縮ファイル(拡張子TGZ)も tar 形式にして書き込んでおくと良い。
なぜなら 68k で展開するよりも、いまどきのCPUで展開しておいた方が遙かに高速だからね。
BSD_MAC68K_BOOTER.BINを起動し、Booting を選択すると次の窓が出る。
ここでは、SingleUser にチェック。チェックしなくてもいいけど、念のために。
そうしたら Boot Now する。
こんな画面。
マウスは使えません。
日本語じゃありません。
一番下の
Enter pathname of shell or RETURN for /bin/sh:では、リターンキーを押します。
Terminal type is vt220.と出れば、ログインに成功しています。
We recommend creating a non-root account and using su(1) for root access.
#
ログインできたら /bin と /sbin の中身が揃っている事を確認します。
それぞれのディレクトリに何があればいいかは BASE.TGZ を展開して確認してください。
もしも、ファイルが無い場合にはアーカイブを展開したファイルをMac側のインストーラの MiniShell を使い
cpio コマンドでせっせと転送すればいいのですが、そこまで楽しい状況になった事が無いので割愛します。
シングルユーザで起動すると / だけマウントされた状態でリードオンリーになっています。
インストールの続きをするので、書き込み可能にするため次のコマンドを実行します。
# mount -w /dev/sd0a /実行すると、なにか出ますがここでは無視します。
mount コマンドを実行して、マウント状態が変わっている事を確認します。
# mount上記の様に出ていれば書き込み可能な状態です。
/dev/sd0a on / type ffs (local)
次に、BASE.TAR を書き込んだCD-R(W)のメディアをマウントします。
# mount -rt cd9660 /dev/cd0a /mntで、mount コマンドで見ると次のようになっているはずです。
/dev/cd0a on /mnt type cd9660 (read-only, local)と。これでCD-R(W)をアクセスできるようになりましたので、インストールを再開します。
ルートディレクトリにいるのを確認したら BASE.TAR を展開します。
# tar --unlink -xvpf /mnt/BASE.TAR非圧縮ファイルでもMacのいろいろが遅いため時間がかかります。
同様に MAN.TGZ とか他のも入れとくといいかな。
インストール作業は以上です。
2009年11月05日
NetBSD/mac68kのインストール
LC475の内蔵ドライブのパーティションを操作するため、外付けにしたドライブから起動する必要がある。
あの忌わしい25ピンSCSIコネクタに、外付けハードディスクなりMOドライブなんかで起動させる。
ちょっと、ここから先、ブログの構造上画像がはみ出るけど、気にするな。
パーティションは最低3つ必要で、/usrや/varを分けるのが面倒なので3つにする。内訳は次の通り。
1.MacOS用の領域を100MBくらい
2.NetBSDでswapの領域を実装メモリの2倍
3.NetBSDで/の領域は残り全部
フォーマットが終わったら、MacOSの領域にMacOSのシステムをコピーする。
ついでにNetBSDのインストールと起動に必要なファイルもCDからコピーしておく。
こんな感じ。
CDにはインストーラが2つあるのだけど、
それぞれがどう違うのか分からない。
仮にここを見て試そうなんて思った人は
質問しないで、自分で試してください。
次に、内蔵ドライブのNetBSD用のパーティションを操作します。
その前にswapと/に使用するパーティションをデスクトップからゴミ箱にいれてunmountします。
Mkfsを起動して、swapパーティションを選択し【CHANGE】をクリック。
【NetBSD swap】を選択し、【Do It!】をクリック。
同様に/のパーティションでは【NetBSD Root & User】を選択します。
ただし、swapと異なるのは、ここで【Do It!】の後に【FORMAT】を実行する必要があります。
容量に比例して時間がかかるので、終わるのを(かなり)待ちます。
Mkfsの処理が終わったら、インストーラを起動し、インストール先のIDを聞かれますので、間違えずに選択し
【File】→【Install】で次の画面になります。
CDの中の BASE.TGZ, ETC.TGZ, KERN_GENERIC.TGZ を【Add】し、【Done】をクリック。
選択したアーカイブを自動で順次展開してNetBSDのパーティションにコピーする処理が始まります。
コピーが終わるまで待ちます…とか言いたいところですが、コピーは終わりません。
ご覧の通り、途中で死亡します。
まあ別にこの方法でインストールできなくても一向に構いませんので…
なんて考えがNetBSDの敷居を高くしているのかなあ、とくにGUI主体のMacの場合。
NetBSD1.0未満時代の試行錯誤環境から比べると、とんでもなく楽々インストールになってはいますが
いまだに正常に動かんインストーラって…
つづく…