この章では、Solaris OS でコマンド行からリムーバブルメディアを管理する方法について説明します。
リムーバブルメディアの管理に関連する手順については、「リムーバブルメディアの管理 (作業マップ)」を参照してください。リムーバブルメディアの概要については、第 1 章リムーバブルメディアの管理 (概要)を参照してください。
次の作業マップでは、リムーバブルメディアを管理するための作業について説明します。
作業 |
説明 |
参照先 |
---|---|---|
1. メディアをロードします。 |
フロッピーディスクをドライブに挿入して、volcheck コマンドを実行します。 | |
2. (省略可能) フロッピーディスクをフォーマットします。 |
フロッピーディスクをフォーマットします。 | |
3. (省略可能) UFS または PCFS ファイルシステムを追加します。 |
ファイル転送にメディアを使用する場合は、UFS または PCFS ファイルシステムを追加します。 | |
UFS または UDFS ファイルシステムを DVD-RAM デバイスに追加します。 | ||
4. (省略可能) メディアを検査します。 |
メディア上のファイルシステムの整合性を検査します。 | |
5. (省略可能) メディア上の不良ブロックを修復します。 |
必要に応じて、メディア上に不良ブロックがあれば修復します。 | |
6. (省略可能) 読み取り/書き込み保護とパスワードによる保護を適用します。 |
必要に応じて、読み取り/書き込み保護やパスワードによる保護をメディアに適用します。 |
書き換え可能なフロッピーディスクをフォーマットしたり保護したりするには、rmformat コマンドを使用します。このユーティリティーには、vold が実行中の場合を除き、スーパーユーザー特権は必要ありません。ファイルシステムは自動的にマウントされます。そのため、メディアに既存のファイルシステムが含まれている場合は、メディアをフォーマットする前にマウント解除する必要があります。
rmformat コマンドには、次の 3 つのフォーマットオプションがあります。
quick — このオプションはトラックを検証せずに、あるいは検証するトラックを制限してフロッピーディスクをフォーマットします。
long – このオプションは、フロッピーディスクを完全にフォーマットします。このオプションを使用してドライブによるメディア全体の検証を行うデバイスもあります。
force — このオプションは、ユーザーへの確認なしに、リムーバブルメディアを完全にフォーマットします。パスワードによる保護機能を備えたフロッピーディスクでは、このオプションはフォーマットを行う前にパスワードをクリアします。この機能はパスワードを忘れてしまったときに便利です。パスワードによる保護機能を備えていないフロッピーディスクでは、long オプションのフォーマットが行われます。
フロッピーディスクを使用するときは、次の制限事項に注意してください。
SPARC と x86 とでは UFS フォーマットが異なります。SPARC はリトルエンディアンによるビットコーディング、x86 はビッグエンディアンによるビットコーディングを採用しています。UFS 用にフォーマットされたメディアは、それらがフォーマットされたハードウェアプラットフォームに制限されます。つまり、SPARC システムで UFS 用にフォーマットされたフロッピーディスクは、x86 システム上の UFS には使用できません。同様に、x86 システムで UFS 用にフォーマットされたフロッピーディスクは SPARC システムでは使用できません。
SunOS ファイルシステム用の完全な形式は、基本的な「ビット」形式と、SunOS ファイルシステムをサポートするための構造からなります。DOS ファイルシステム用の完全な形式は、基本的な「ビット」形式と、MS-DOS または NEC-DOS のどちらかのファイルシステムをサポートする構造からなります。メディアを準備するために必要な手順は、ファイルシステムによって異なります。したがって、フロッピーディスクをフォーマットする前には、どの作業が必要かを決めてください。詳細は、「リムーバブルメディアの管理 (作業マップ)」を参照してください。
フロッピーディスクをフォーマットするときは、次のことに注意してください。
フロッピーディスク名については、表 3–1 を参照してください。
名前の付いていない (「ラベル」がない) フロッピーディスクには、unnamed_floppy というデフォルト名が割り当てられます。
名前の付いていない (「ラベル」がない) フロッピーディスクには、floppy というデフォルト名が割り当てられます。
Solaris システムは、次の種類のフロッピーディスクをフォーマットできます。
UFS
MS-DOS または NEC-DOS (PCFS) 用
UDFS
Solaris システム (SPARC または x86 のどちらか) では、次の密度でフロッピーディスクをフォーマットできます。
フロッピーディスクのサイズ |
フロッピーディスクの密度 |
容量 |
---|---|---|
3.5 インチ |
高密度 (HD) |
1.44M バイト |
3.5 インチ |
倍密度 (DD) |
720K バイト |
デフォルトで、フロッピーディスクドライブは、それに近い密度にフロッピーディスクをフォーマットします。つまり、デフォルトでは、1.44M バイトのドライブは、フロッピーディスクが実際に 1.44M バイトのフロッピーディスクかどうかに関係なく、特に指示しない限り、そのフロッピーディスクを 1.44M バイト用にフォーマットしようとします。言い換えれば、フロッピーディスクもドライブも、その容量以下にフォーマットすることは可能です。
リムーバブルメディアのハードウェア面での考慮事項については、「リムーバブルメディアのハードウェア面での考慮事項」を参照してください。
メディアを挿入します。
フォーマットされているかどうかがわからない場合は、メディアを挿入し、手順 3 の説明に従って、システムコンソールウィンドウの状態メッセージを確認してください。メディアをフォーマットする必要がある場合は、「フロッピーディスクをフォーマットする方法 (rmformat)」を参照してください。
(省略可能) USB でない古いフロッピーディスクデバイスを使用している場合は、ボリューム管理に通知します。
$ volcheck -v |
次の 2 つの状態メッセージのいずれかが表示されます。
ボリューム管理がメディアを検出し、表 3–1 に記述されたディレクトリにそのメディアをマウントしようとします。
メディアが正しくフォーマットされている場合は、コンソールにエラーメッセージが表示されません。
メディアがフォーマットされていない場合でも「media was found」メッセージは表示されます。ただし、次のようなエラーメッセージがシステムコンソールウィンドウに表示されます。
fd0: unformatted diskette or no diskette in the drive
fd0: read failed (40 1 0)
fd0: bad format
メディアをフォーマットしてからでないと、ボリューム管理はそれをマウントできません。詳細については、第 2 章リムーバブルメディアの管理 (手順)を参照してください。
ボリューム管理は、メディアを検出しませんでした。メディアが正しく挿入されていることを確認して、volcheck をもう一度実行してください。うまくいかない場合は、メディアを検査してください。損傷の可能性があります。メディアを手動でマウントしてみることもできます。
メディアの内容を表示して、メディアがマウントされていることを確認します。
たとえば、フロッピーディスクの場合は次のように入力します。
$ ls /floppy floppy0 myfiles |
floppy0 はフロッピーディスクの実際の名前へのシンボリックリンクです。この場合、myfiles が実際の名前です。名前がないが正しくフォーマットされている場合は、unnamed_floppy と呼ばれます。
/floppy ディレクトリの下に何も表示されない場合は、フロッピーディスクがマウントされていないか、正しくフォーマットされていないかのどちらかです。これを調べるには、mount コマンドを実行して、次のような /floppy で始まる行を探してください (通常は、リストの最後にあります)。
/floppy/name on /vol/dev/diskette0/ name
このような行が表示されない場合、フロッピーディスクはマウントされていません。システムコンソールウィンドウにエラーメッセージが表示されていないかどうか確認してください。
rmformat コマンドを使用すると、フロッピーディスクをフォーマットできます。デフォルトでは、このコマンドによってメディア上にパーティション 0 とパーティション 2 (メディア全体) という 2 つのパーティションが作成されます。
リムーバブルメディアサービスが動作していることを確認します。動作していれば、デバイス名のニックネームを使用できます。
$ svcs volfs STATE STIME FMRI online 10:39:12 svc:/system/filesystem/volfs:default |
リムーバブルメディアサービスを再起動する方法については、「リムーバブルメディアサービスを無効または有効にする方法」を参照してください。メディアのデバイス名の確認方法については、「リムーバブルメディア名の使用」を参照してください。
フロッピーディスクをフォーマットします。
$ rmformat -F [ quick | long | force ] device-name |
rmformat のフォーマットオプションについては、「フロッピーディスクをフォーマットする」を参照してください。
rmformat コマンドの出力によって不良ブロックが見つかった場合は、「リムーバブルメディア上の不良ブロックを修復する方法」を参照してください。
(省略可能) フロッピーディスクに 8 文字のラベルを付けます。
$ rmformat -b label device-name |
DOS ラベルの作成の詳細は、mkfs_pcfs(1M) のマニュアルページを参照してください。
次の例は、フロッピーディスクのフォーマット方法を示しています。
$ rmformat -F quick /dev/rdiskette Formatting will erase all the data on disk. Do you want to continue? (y/n) y ......................................................................... |
$ rmformat -F quick device-name |
(省略可能) 代替の Solaris パーティションテーブルを作成します。
$ rmformat -s slice-file device-name |
スライスファイルの例は次のようになります。
slices: 0 = 0, 30MB, "wm", "home" : 1 = 30MB, 51MB : 2 = 0, 94MB, "wm", "backup" : 6 = 81MB, 13MB |
スーパーユーザーになります。
適切なファイルシステムの種類を決定し、次のいずれかの作業を選択します。
UFS ファイルシステムを作成します。次に例を示します。
# newfs /vol/dev/aliases/floppy0 |
PCFS ファイルシステムを作成します。次に例を示します。
# mkfs -F pcfs /dev/rdsk/c0t4d0s2:c |
UDFS ファイルシステムを作成します。次に例を示します。
# mkfs -F udfs /dev/rdsk/c0t1d0s1 |
次の例は、フロッピーディスクをフォーマットし、そのフロッピーディスク上に UFS ファイルシステムを作成する方法を示しています。
$ rmformat -F quick /vol/dev/aliases/floppy0 Formatting will erase all the data on disk. Do you want to continue? (y/n) y $ su # /usr/sbin/newfs /vol/dev/aliases/floppy0 newfs: construct a new file system /dev/rdiskette: (y/n)? y /dev/rdiskette: 2880 sectors in 80 cylinders of 2 tracks, 18 sectors 1.4MB in 5 cyl groups (16 c/g, 0.28MB/g, 128 i/g) super-block backups (for fsck -F ufs -o b=#) at: 32, 640, 1184, 1792, 2336, # |
$ rmformat -F quick /dev/rdiskette Formatting will erase all the data on disk. Do you want to continue? (y/n)y $ su # /usr/sbin/newfs /dev/rdiskette newfs: construct a new file system /dev/rdiskette: (y/n)? y /dev/rdiskette: 2880 sectors in 80 cylinders of 2 tracks, 18 sectors 1.4MB in 5 cyl groups (16 c/g, 0.28MB/g, 128 i/g) super-block backups (for fsck -F ufs -o b=#) at: 32, 640, 1184, 1792, 2336, |
次の例は、代替 fdisk パーティションを作成して、PCFS ファイルシステムを作成する方法を示しています。これらの例では、vold は動作していません。
$ rmformat -F quick /dev/rdsk/c0t4d0s2:c Formatting will erase all the data on disk. Do you want to continue? (y/n) y $ su # fdisk /dev/rdsk/c0t4d0s2:c # mkfs -F pcfs /dev/rdsk/c0t4d0s2:c Construct a new FAT file system on /dev/rdsk/c0t4d0s2:c: (y/n)? y # |
次の例は、fdisk パーティションを作成せずに、PCFS ファイルシステムを作成する方法を示しています。
$ rmformat -F quick /dev/rdiskette Formatting will erase all the data on disk. Do you want to continue? (y/n) y $ su # mkfs -F pcfs -o nofdisk,size=2 /dev/rdiskette Construct a new FAT file system on /dev/rdiskette: (y/n)? y # |
現在のところ、vold は DVD-RAM デバイスをサポートしていません。このため、vold を無効にして DVD-RAM デバイスを使用すると、vold が無効で使用できないために、CD-R、CD-RW、DVD-R、DVD-RW、DVD+R、DVD+RW デバイスを使用できなくなります。
vold を停止します。
# svcadm disable volfs |
DVD-RAM デバイス上にファイルシステムを作成します。
UFS ファイルシステムを作成します。次に例を示します。
# newfs /dev/rdsk/c0t0d0s2 |
UDFS ファイルシステムを作成します。次に例を示します。
# mkfs -F udfs /dev/rdsk/c0t0d0s2 |
ファイルシステムをマウントします。
UFS ファイルシステムをマウントします。次に例を示します。
# mount -F ufs /dev/dsk/c0t0d0s2 /mnt |
UDFS ファイルシステムをマウントします。次に例を示します。
# mount -F udfs /dev/dsk/c0t0d0s2 /mnt |
ファイルシステムの読み取りや書き込みができることを確認します。
作業が完了したら、DVD-RAM を取り出します。
vold を再起動します。
# svcadm enable volfs |
スーパーユーザーになります。
ファイルシステムの種類を確認し、次のいずれかの作業を選択します。
UFS ファイルシステムを検査します。
# fsck -F ufs device-name |
UDFS ファイルシステムを検査します。
# fsck -F udfs device-name |
PCFS ファイルシステムを検査します。
# fsck -F pcfs device-name |
次の例は、メディア上の PCFS ファイルシステムの整合性を検査する方法を示しています。この例では、vold は動作していません。
# fsck -F pcfs /dev/rdsk/c0t4d0s2 ** /dev/rdsk/c0t4d0s2 ** Scanning file system meta-data ** Correcting any meta-data discrepancies 1457664 bytes. 0 bytes in bad sectors. 0 bytes in 0 directories. 0 bytes in 0 files. 1457664 bytes free. 512 bytes per allocation unit. 2847 total allocation units. 2847 available allocation units. # |
ドライブが不良ブロック管理をサポートしている場合にのみ、検証中に見つかった不良セクタを rmformat コマンドで検証、解析、および修復できます。ほとんどのフロッピーディスクおよび USB メモリースティックは不良ブロック管理をサポートしていません。
ドライブが不良ブロック管理をサポートしている場合、不良ブロックを修復するための最大の努力が行われます。それでも不良ブロックを修復できなかった場合、メディアの修復に失敗したことを示すメッセージが表示されます。
リムーバブルメディア上の不良ブロックを修復します。
$ rmformat -c block-numbers device-name |
block-numbers には、前の rmformat セッションで獲得したブロック番号を 10 進数、8 進数、または 16 進数形式で指定します。
リムーバブルメディアを検証します。
$ rmformat -V read device-name |
この機能をサポートしているリムーバブルメディアには、読み取り保護または書き込み保護を適用し、パスワードを設定できます。
書き込み保護を有効にするか無効にするかを決定し、次のいずれかの作業を選択します。
リムーバブルメディアの書き込み保護が有効または無効になっていることを確認します。
$ rmformat -p device-name |
パスワードによる保護機能をサポートしているリムーバブルメディアには、最大 32 文字のパスワードを適用できます。
パスワード機能をサポートしていないリムーバブルメディア上でパスワードを適用しようとすると、警告メッセージが表示されます。
読み取り保護または書き込み保護を有効または無効のどちらにするかを決定し、パスワードを設定します。次のいずれかの手順に従います。
読み取り保護または書き込み保護を有効にします。
$ rmformat -W enable device-name Please enter password (32 chars maximum): xxx Please reenter password: |
$ rmformat -R enable device-name Please enter password (32 chars maximum): xxx Please reenter password: |
読み取り保護または書き込み保護を無効にし、パスワードを削除します。
$ rmformat -W disable device-name Please enter password (32 chars maximum): xxx |
$ rmformat -R disable device-name Please enter password (32 chars maximum): xxx |
リムーバブルメディアの読み取り保護または書き込み保護が有効または無効になっていることを確認します。
$ rmformat -p device-name |
次の例は、フロッピーディスクに対して書き込み保護を有効にし、パスワードを設定する方法を示しています。
$ rmformat -W enable /vol/dev/aliases/floppy0 Please enter password (32 chars maximum): xxx Please reenter password: xxx |
次の例は、フロッピーディスクに対して読み取り保護を無効にし、パスワードを削除する方法を示しています。
$ rmformat -R disable /vol/dev/aliases/floppy0 Please enter password (32 chars maximum): xxx |