MINIX
Linuxの前身とも言われる「とてもコンパクトなPC-UNIXであるMINIX」に触れてみました。
また日本語化キットを使ってコンソールでの日本語表示もOKでした。
MINIXは元々大学でのOS学習教材として活用されていたそうです。
ソースが公開されているので現在では個人OSとして自由に改造している人も結構いるようです。
MINIXの基本コマンドはLinuxとほとんど同じなのでLinux感覚で使用できます。
Linuxのようなディストリビューションはないようですがインストールは簡単でしかもHD容量は100MBもあれば十分なのでPC-UNIXの基礎を学ぶには手ごろなOSと言えます。
(1)MINIXの入手
以下のサイトにいろんなMINIXが置いてあります(dosminixとかmacminixとかいうものもあります)。
http://www.minix.org/
(2)インストール
今回はMINIX 2.0.0を導入してみました。
古いBeOSの入っていた500MBのパーティションをMINIXパーティション化してそこにMINIXをインストールしてみました。
詳細なインストール手順書も上記サイトにあります。
また日本のサイトでもインストール手順を掲載しているページがいくつかあるようです。
インストール後にすぐ使えるゲームとしては五目並べがあります。
(2)まずはネットワーク接続のためのカーネル再構築
MINIXを標準インストールしただけではネットワーク機能は使えません。
そこで以下の手順でカーネル再構築を行うことで簡単にネットワーク機能が使えるようになります。
- /usr/include/minix/config.hの変更とコンパイル
「#define ENABLE_NETWORKING 0」を「#define ENABLE_NETWORKING 1」にしてTCP/IPが使えるようにします。
また「#define NR_PTYS 0」を「#define NR_PTYS 2」などにしてtelnetが使えるようにします(擬似端末数の指定)。
そして make hdboot でコンパイルします。
- マシンのIPアドレス等自分の環境に合わせて/etc/rc.netを作成します。
- /etc/hostsにIPアドレスとマシン名の対応を記述します。
あとはブート時に以下の指定をすれば次回からは特に何も指定せずにブートできます。
unset ramsize
DPETH0=xxx:y (xxx:ネットワークカードのI/Oポートアドレス,y:IRQ番号)
save
boot
ブート画面を眺めてみるとネットワークカードがちゃんと認識されていることが分かります。
(NE2000 at 340:4 という部分です)
ネットワーク機能を有効にするとftpサーバやtelnetサーバ等が自動起動されるようになります。
もちろんftpクライアント機能やtelnetクライアント機能も使えます。
(3)ftpクライアント
MINIXからMacOS上のftpサーバをアクセスしてみました。
getもputも問題なく使えました。
下の画面はMacOSのftpサーバに接続したときのものです。
(4)ftpサーバ
MacOS側からMINIXのftpサーバをアクセスしてみました。
これについてもファイルの読み・書き共にOKでした。
下の画面はMacOSのftpクライアントからMINIXのftpサーバに接続したときのものです。
またMINIX側の.profileというファイルをMacOS側にダウンロードしEUCコード対応のエディタでそのファイルを開くこともできました(下図参照)。
(5)telnetクライアント
これについては特に説明はないと思いますがNIFTY-Serve接続も一応OKです。
(6)telnetサーバ
ここではWindowsからMINIXにtelnetで入ってMINIXを操作した画面を紹介します。
LinuxからもMINIXにtelnetで入ってみました。
(7)簡易チャット
writeコマンドを使うとMINIXにログインしているユーザ同士で簡単なチャットをすることができます。
但し、これはMINIXに限らず一般のUNIX環境でも同じです。
下のスクリーンショットはMINIXにログインしているTom(Windows側)君とBob(MacOS側)君のチャット例です。
(8)Linux Oracleアクセス
telnetでLinuxにログインしてSQL*Plusを使ってLinux Oracleをアクセスしてみました。
(9)LinuxとのFD共用
MINIXとLinuxでFDを共通に使う方法(とりあえずの方法)を紹介します。
- MINIX側でのFD操作
format /dev/fd0 1200
mkfs /dev/fd0
mount /dev/fd0 /mnt/floppy
cp hogehoge /mnt/floppy
umount /dev/fd0
- Linux側でのFD操作
mount -t minix /dev/fd0h1200 /mnt/floppy
cp /mnt/floppy/hogehoge /temp
もちろんMINIX側でフォーマットしたFDにLinux側からファイルをコピーしてMINIX側で読むこともできます。
(10)日本語への対応
日本語化キットを使ってカーネルを再構築すると日本語も扱えるようになります。
日本語対応にするとブート時のフォントも変わってきます。
下の画像は日本語データファイルを表示させた時のものです。
(11)NIFTYアクセス
MINIXからNIFTYをアクセスしてみました。
日本語環境が揃えばNIFTY情報も活用できます。