JavaScript is required to for searching.
ナビゲーションリンクをスキップ
印刷ビューの終了
Solaris のシステム管理 (デバイスとファイルシステム)     Oracle Solaris 10 8/11 Information Library (日本語)
search filter icon
search icon

ドキュメントの情報

はじめに

1.  リムーバブルメディアの管理 (概要)

2.  リムーバブルメディアの管理 (手順)

3.  リムーバブルメディアへのアクセス (手順)

4.  CD および DVD への書き込み (手順)

5.  デバイスの管理 (概要と手順)

6.  デバイスの動的構成 (手順)

7.  USB デバイスの使用 (概要)

8.  USB デバイスの使用 (手順)

9.  InfiniBand デバイスの使用 (概要/手順)

10.  ディスクの管理 (概要)

11.  ディスクの管理 (手順)

12.  SPARC: ディスクの設定 (手順)

13.  x86: ディスクの設定 (手順)

14.  Oracle Solaris iSCSI ターゲットおよびイニシエータの構成 (手順)

15.  format ユーティリティー (参照情報)

16.  ファイルシステムの管理 (概要)

17.  ファイルシステムの作成およびマウント (手順)

18.  CacheFS ファイルシステムの使用 (手順)

19.  追加スワップ空間の構成 (手順)

20.  UFS ファイルシステムの整合性検査 (手順)

21.  UFS ファイルシステム (参照情報)

22.  UFS ファイルシステムのバックアップと復元 (概要)

23.  UFS ファイルとファイルシステムのバックアップ (手順)

24.  UFS スナップショットの使用 (手順)

25.  UFS ファイルとファイルシステムの復元 (手順)

26.  UFS バックアップおよび復元コマンド (参照情報)

27.  ファイルとファイルシステムのコピー (手順)

ファイルシステムをコピーするためのコマンド

ファイルシステムをディスク間でコピーする

ファイルシステムのリテラルコピーを作成する

ディスクをコピーする方法 (dd)

cpio を使用してファイルシステム間でディレクトリをコピーする

ファイルシステム間でディレクトリをコピーする方法 (cpio)

ファイルとファイルシステムをテープにコピーする

tar を使用してファイルをテープにコピーする

ファイルをテープにコピーする方法 (tar)

テープ上のファイルのリストを表示する方法 (tar)

テープからファイルを取り出す方法 (tar)

pax コマンドを使用してファイルをテープにコピーする

ファイルをテープにコピーする方法 (pax)

cpio コマンドを使用してファイルをテープにコピーする

ディレクトリ内のすべてのファイルをテープにコピーする方法 (cpio)

テープ上のファイルのリストを表示する方法 (cpio)

テープからすべてのファイルを取り出す方法 (cpio)

テープから特定のファイルを取り出す方法 (cpio)

ファイルをリモートテープデバイスにコピーする

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

ファイルをリモートテープデバイスから抽出する方法

ファイルとファイルシステムをフロッピーディスクにコピーする

ファイルをフロッピーディスクにコピーする際の注意事項

ファイルを 1 枚のフォーマット済みフロッピーディスクにコピーする方法 (tar)

フロッピーディスク上のファイルのリストを表示する方法 (tar)

ファイルをフロッピーディスクから取り出す方法 (tar)

複数のフロッピーディスクへファイルをアーカイブする

28.  テープドライブの管理 (手順)

索引

ファイルシステムをディスク間でコピーする

ファイルシステムをディスク間でコピーするには、次の 2 つのコマンドを使用します。

volcopy の詳細は、volcopy(1M) のマニュアルページを参照してください。

次の節では、dd コマンドを使用してファイルシステムをディスク間でコピーする方法について説明します。

ファイルシステムのリテラルコピーを作成する

dd コマンドでは、完全な UFS ファイルシステムのリテラル (ブロックレベル) コピーを別のファイルシステムやテープに作成します。デフォルトでは、dd コマンドはその標準入力を標準出力にコピーします。


注 - 可変長テープドライブで dd コマンドを使用するときは、必ず適切なブロックサイズを指定してください。


標準入力、標準出力、またはその両方の代わりに、デバイス名を指定できます。次の例では、フロッピーディスクの内容が /tmp ディレクトリ内のファイルにコピーされます。

$ dd < /floppy/floppy0 > /tmp/output.file
2400+0 records in
2400+0 records out

dd コマンドは、読み取りブロック数と書き込みブロック数をレポートします。+ の次の数値は、部分的にコピーされたブロックの数です。デフォルトのブロックサイズは 512 バイトです。

dd コマンドの構文は、ほかのほとんどのコマンドとは異なっています。オプションは keyword=value のペアで指定します。この場合、keyword は設定するオプションで、value はそのオプションの引数です。たとえば、標準入力と標準出力を次の構文に置き換えることができます。

$ dd if=input-file of=output-file

リダイレクト記号の代わりに keyword=value の形式で指定するには、次のように入力します。

$ dd if=/floppy/floppy0 of=/tmp/output.file

ディスクをコピーする方法 (dd)

ディスクをコピーする際には次の点に注意してください。

それでもなお、dd コマンドによるディスクコピーを検討する場合は、次の点に注意してください。

  1. スーパーユーザーになるか、同等の役割を引き受けます。
  2. (省略可能) システムがリブート時に必要に応じてコピー先ディスクを認識するように、/reconfigure ファイルを作成します。
    # touch /reconfigure
  3. システムをシャットダウンします。
    # init 0
  4. コピー先ディスクをシステムに接続します。
  5. システムをブートします。
    ok boot -s
  6. ソースディスクをコピー先ディスクへコピーします。
    # dd if=/dev/rdsk/device-name of=/dev/rdsk/device-name bs=block-size
    if=/dev/rdsk/device-name

    マスターディスクデバイスのオーバーラップスライスを指定します。通常はスライス 2 です。

    of=/dev/rdsk/device-name

    コピー先ディスクデバイスのオーバーラップスライスを指定します。通常はスライス 2 です。

    bs=blocksize

    ブロックサイズ (128K バイト、256K バイトなど) を指定できます。ブロックサイズの値を大きくすると、ディスクのコピーに要する時間を短縮できます。

    詳細は、dd(1M) のマニュアルページを参照してください。

  7. 新しいファイルシステムを検査します。
    # fsck /dev/rdsk/device-name
  8. コピー先ディスクのルート (/) ファイルシステムをマウントします。
    # mount /dev/dsk/device-name /mnt
  9. /etc/vfstab ファイルのあるディレクトリに移動します。
    # cd /mnt/etc
  10. テキストエディタを使用して、コピー先ディスクの /etc/vfstab ファイルを編集して、正しいデバイス名を参照するようにします。

    たとえば、c0t3d0 のインスタンスをすべて c0t1d0 に変更します。

  11. コピー先ディスクのルート (/) ディレクトリに移動します。
    # cd /
  12. コピー先ディスクのルート (/) ファイルシステムをマウント解除します。
    # umount /mnt
  13. システムをシャットダウンします。
    # init 0
  14. コピー先ディスクからシングルユーザーモードでブートします。
    # boot diskn -s

    注 - installboot コマンドをコピー先ディスクで実行する必要はありません。これは、ブートブロックがオーバーラップスライスの一部としてコピーされるためです。


  15. コピー先ディスクの構成を解除します。
    # sys-unconfig

    構成を解除すると、システムが停止します。

  16. 再びコピー先ディスクからブートし、ホスト名や時間帯などのシステム情報を与えます。
    # boot diskn
  17. システムがブートしたら、スーパーユーザーとしてログインしてシステム情報を確認します。
    hostname console login:

例 27-1 VTOC ラベル付きディスクをコピーする (dd)

次の例では、VTOC ラベル付きのマスターディスク /dev/rdsk/c0t0d0s2 をコピー先ディスク /dev/rdsk/c0t2d0s2 にコピーする方法を示します。

# touch /reconfigure
# init 0
ok boot
# dd if=/dev/rdsk/c0t0d0s2 of=/dev/rdsk/c0t2d0s2 bs=128k
# fsck /dev/rdsk/c0t2d0s2
# mount /dev/dsk/c0t2d0s2 /mnt 
# cd /mnt/etc
# vi vfstab
(Modify entries for the new disk)
# cd /
# umount /mnt
# init 0
# boot disk2 -s
# sys-unconfig
# boot disk2

例 27-2 EFI ラベル付きディスクをコピーする (dd)

以前の Solaris リリースでは、ディスク全体がスライス 2 (s2) で表されていました。EFI ラベル付きディスクの場合、複製後のディスクに一意の UUID を割り当てる必要があるため、1T バイトを超えるサイズのディスクを複製 (コピー) する場合、若干異なる方法を使用する必要があります。複製済みディスク用の新しいラベルは、必ず作成してください。作成しないと、その他のソフトウェア製品によって UUID の重複が検出された時点で、EFI ラベル付きディスクのデータが破壊されることがあります。

次に例を示します。

  1. EFI ラベル付きディスクを複製します。次に例を示します。

    # dd if=/dev/rdsk/c0t0d0 of=/dev/rdsk/c0t2d0 bs=128k
  2. 複製対象のディスクの prtvtoc 出力を fmthard コマンドにパイプして、複製済みディスク用の新しいラベルを作成します。次に例を示します。

    # prtvtoc /dev/rdsk/c0t0d0 | fmthard -s - /dev/rdsk/c0t2d0

EFI ディスクラベルの詳細は、「EFI ディスクラベル」を参照してください。