Solaris のシステム管理 (基本編)

ファイルをリモートテープデバイスにコピーする方法 (tardd)

  1. リモートテープドライブを使用するには、次の前提条件を満たしている必要があります。

    1. ローカルホスト名 (および、オプションでコピーを実行するユーザーのユーザー名) が、リモートシステムの /etc/hosts.equiv ファイルに記述されている必要がある。または、コピーを実行するユーザーが、リモートマシン上の自分のホームディレクトリをアクセス可能にし、かつ $HOME/.rhosts 内にローカルマシン名を記述しておく必要がある。

      詳細については、hosts.equiv(4) のマニュアルページを参照。

    2. リモートシステムのエントリがローカルシステムの /etc/inet/hosts ファイル内またはネームサービスの hosts ファイル内になければならない。

  2. リモートコマンドの実行に必要なアクセス権を保持していることを確認するには、次のように入力します。


    $ rsh remotehost echo test
    

    test と表示された場合、リモートコマンドの実行に必要なアクセス権を保持しています。Permission denied と表示された場合は、手順 1 の内容を確認してください。

  3. ファイルを置きたいディレクトリに移動します。

  4. テープをテープドライブに挿入します。

  5. ファイルをリモートテープドライブにコピーします。


    $ tar cvf - filenames | rsh remote-host dd of=/dev/rmt/n obs=block-size
    

    tar cf

    テープアーカイブを作成し、アーカイブに含まれるファイルをリスト表示し、テープデバイスを指定する。 

    - (ハイフン)

    可変部としてテープデバイスの代わりに指定する。 

    filenames

    コピーするファイルを指定する。 

    | rsh remote-host

    tar コマンドの出力をパイプを通してリモートシェルに渡す。

    dd of= /dev/rmt/n

    出力デバイスを指定する。 

    obs= block-size

    ブロック係数を指定する。 

  6. テープをドライブから取り出して、テープラベルにファイル名を記入します。

例 — ファイルをリモートテープドライブにコピーする (tardd)


# tar cvf - * | rsh mercury dd of=/dev/rmt/0 bs=126b
a answers/ 0 tape blocks
a answers/test129 1 tape blocks
a sc.directives/ 0 tape blocks
a sc.directives/sc.190089 1 tape blocks
a tests/ 0 tape blocks
a tests/test131 1 tape blocks
6+9 records in
0+1 records out