---- インストール 以下のインストール用 .deb および .rpm パッケージを用意されています。 ホストおよびターゲット計算機でそれぞれのアーキテクチャにあったパッケージ をインストールして下さい。 ソースファイル tar ball dodes_2.0.20020218.tar.gz .deb パッケージ dodes_2.0.20020218_i386.deb x86 用バイナリ dodes_2.0.20020218_sh3.deb SH-3(littel endian) 用バイナリ dodes_2.0.20020218_sh3eb.deb SH-3(big endian) 用バイナリ dodes_2.0.20020218_sh4.deb SH-4(littel endian) 用バイナリ dodes_2.0.20020218_sh4eb.deb SH-4(big endian) 用バイナリ .rpm パッケージ dodes2-2.0.20020218-1.i386.rpm x86 用バイナリ dodes2-2.0.20020218-1.sh3.rpm SH-3(littel endian) 用バイナリ dodes2-2.0.20020218-1.sh3eb.rpm SH-3(big endian) 用バイナリ dodes2-2.0.20020218-1.sh4.rpm SH-4(littel endian) 用バイナリ dodes2-2.0.20020218-1.sh4eb.rpm SH-4(big endian) 用バイナリ dodes2-2.0.20020218-1.src.rpm RPM 形式ソースパッケージ ---- ソースからのビルド .deb や .rpm のパッケージを使わずにソースからのビルドを行う場合にはソース を展開し、ソースのトップディレクトリに移動し、autogen.sh スクリプトを実行 します。 その後は configure 後 make するという一般的な方法でビルドを行います。 ターゲット計算機用のバイナリをクロス作成する場合は configure の --host や --build オプションを使います。 例えばターゲット計算機のアーキテクチャ が sh3 でホスト計算機のそれが i686 である場合は CC=sh3-linux-gcc .configure --host=sh3-linux --build=i686-pc-linux-gnu --prefix=/usr --infodir=/usr/share/info --mandir=/usr/share/man --sysconfdir=/etc のような指定を行います。 ---- DODES ネットワーク環境の準備 標準的な構成では、例えばホスト、ターゲット両計算機で /home/dodes および /home/dodes/アーキテクチャ名 の二つのディレクトリを作成し、ターゲット計算機 のファイルシステムの設定ファイル(/etc/fstab)にホストとターゲットで同じディ レクトリが見える様にします。 例えばターゲットのアーキテクチャ名が sh4-linux でターゲットがホストの ディレクトリ /home/dodes/nfsroot/se191 をルートファイルシステムとして マウントしているとしたとき、 /home/dodes /home/dodes/sh4-linux /home/dodes/nfsroot/se191/home/dodes /home/dodes/nfsroot/se191/home/dodes/sh4-linux の 4 ディレクトリをホスト側で作成し、 /home/dodes/nfsroot/se191/etc/fstab に 192.168.111.254:/home/dodes/sh4-linux /home/dodes/sh4-linux nfs defaults 01 192.168.111.254:/home/dodes/dodeser /home/dodes/dodeser nfs defaults 01 などの NFS 用の記述を追加します。 ここで 192.168.111.254 はホスト計算機の IP アドレスです。 ホスト側で /home/dodes/アーキテクチャ名に、このアーキテクチャ用のホスト上 でのターゲットシステム用のライブラリ、インクルードファイルをおきます。 通常 の GNU/Linux システムでのクロスツールやライブラリ、インクルードファイルは /usr/アーキテクチャ名 (または /usr/local/アーキテクチャ名) ディレクトリ内 の bin, lib, include ディレクトリに置かれているので、上の例では cd /home/dodes/sh4-linux (cd /usr/sh4-linux; tar -cf - include lib)| tar -xvf - とした後 ln -s /usr/bin /home/dodes/sh4-linux/bin という操作を行い、ターゲット上ではそのアーキテクチャ用のネイティブのバイナリ ツールが /home/dodes/アーキテクチャ名/bin ディレクトリ内に見えるようにします。 さらにターゲット上で /usr/アーキテクチャ名 を /home/dodes/アーキテクチャ名 へのシンボリックリンクにします。 例えば ln -s /home/dodes/sh4-linux /home/dodes/nfsroot/se191/usr/sh4-linux これはホスト上のクロス用のツールやファイルと同名のネイティブツールやファイル がターゲット上で見つかるようにするためのリンクです。 DODES 利用者はホスト計算機の /home/dodes ディレクトリ以下ににそのホーム ディレクトリを持つようにします。 またホスト、ターゲット計算機に利用者のアカウントを作成する際にはその User ID と Group ID を一致させる必要があります。 例えばユーザ dodeser のホームディレクトリを /home/dodes/dodeser とするとき、 このホスト上でホームディレクトリ以下で作られたファイルはターゲットでも同じ パス名のファイルになります。 このファイルがターゲットのアーキテクチャ用の 実行バイナリであれば DODES の遠隔実行機能によってターゲットで実行されます。 それによってファイル生成が行なわれる場合でもその生成場所が /home/dodes 以下 である限り、ホスト、ターゲットの両側からアクセスが可能となるわけです。 ---- デーモンの起動 ホスト計算機では dodes-statd デーモンをオプション -server で起動します。 各ターゲット計算機で dodes-statd デーモンをオプション -node で起動、さらに dodes-execd デーモンを起動します。 各デーモンにはいくつかのオプションがありますのが詳細は man ファイルを参照 して下さい。 また TCP ラッパーを使用してのアクセス制御は以下の 3 つのデーモン名を 用いて行うことができます。 デーモン名 アクセス制御対象 --------------+---------------------- dodes-stat DODES status protocol dodes-query DODES query protocol dodes-exec 遠隔実行 ---- 実行 ホスト計算機で dodes コマンドを実行すると DODES 環境のシェルに移行します。 DODES 環境からの脱出はそのシェルからの脱出によって行います。 ---- 成果報告書 平成 13 年度未踏ソフトウェア創造事業での最終報告書の PDF ファイル (mitou13-report.pdf)には DODES の構成などの内容も含まれています。 この最終報告書の著作権は IPA (情報処理振興事業協会)に帰属して います。