Partedを使用して外部ハードドライブ(sdc)をntfsにフォーマットし、1つのプライマリパーティション(sdc1)を作成しました。デバイスをフォーマットする前に SystemRescueCd は、ブート可能なUSBとして使用するために、コマンドdd
を使用して外付けハードドライブにインストールされました。ただし、lsblk -f
でデバイスを一覧表示すると、フォーマットされたデバイス(sdc)の古いFSTYPE(iso9660)とLABEL(sysrcd-5.2.2)が引き続き表示されます。
NAME FSTYPE LABEL UUID MOUNTPOINT
sda
├─sda1 ntfs System Reserved
├─sda2 ntfs
├─sda3 ntfs
├─sda4
sdc iso9660 sysrcd-5.2.2
└─sdc1 ntfs sysrcd-5.2.2 /run/media/user/sysrcd-5.2.2
lsblk -f
の出力に示されているように、パーティションsdc1
のFSTYPEのみが正しく、sdc1
パーティションLABEL、sdc
ブロックデバイスFSTYPEおよびLABELが間違っています。 nautilus GUIアプリも古いデバイスラベル(sysrcd-5.2.2)を表示しています。
新しいパーティションテーブルを作成した後、parted
は、デバイスをntfsにフォーマットする前にシステムを再起動するよう提案しましたが、代わりにsdcをアンマウントすることにしました再起動の。
元の投稿のlsblk -f
の出力から、インストールされているSystemRescueCdの署名が外部ハードドライブにまだ存在しているのではないかと疑っていました。そのため、_sdc
およびsdc
のすべてのパーティションに関する情報を出力するコマンドwipefs /dev/sdc
およびwipefs /dev/sdc1
を実行しました。
[root@Fedora user]# wipefs /dev/sdc
DEVICE OFFSET TYPE UUID LABEL
sdc 0x8001 iso9660 sysrcd-5.2.2
sdc 0x1fe dos
[root@Fedora user]# wipefs /dev/sdc1
DEVICE OFFSET TYPE UUID LABEL
sdc1 0x3 ntfs
sdc1 0x1fe dos
上記の出力では、SystemRescueCdによって作成されたiso9660
パーティションテーブルがまだ存在していることが確認されました。 lsblk
は、dos(マスターブートレコード)パーティションテーブルではなく、iso9660
パーティションテーブルのTYPE
およびLABEL
を使用していました。 lsblk
を取得して正しいパーティションテーブルを表示するには、iso9660
パーティションテーブルを削除する必要がありました。 dd
を使用して、ブロック(ディスク)デバイスからパーティションテーブルの署名を一掃することもできますが、dd
は他のパーティションテーブルを一掃することもできます。
特定のパーティションテーブルシグネチャのみをワイプの対象とするため、wipefs
とは異なり、dd
を使用すると、パーティションテーブルを再作成する必要がないため、wipefs
が推奨されました。コマンドwipefs
の-a
オプションは、デバイスで使用可能なすべての署名を消去しますが、コマンドwipefs
の-t
オプションを-a
オプションと一緒に使用すると、署名の消去が特定のタイプのパーティションテーブル。以下では、iso9660
パーティションテーブルをワイプします。ブロックデバイスのパーティションテーブルシグネチャを消去する場合は、-f
(--force
)オプションが必要です。
[root@Fedora user]# wipefs -a -t iso9660 -f /dev/sdc
/dev/sdc: 5 bytes were erased at offset 0x00008001 (iso9660): 43 44 30 30 31
iso9660
パーティションテーブルを消去した後、パーティションテーブルを再度チェックして、パーティションテーブルiso9660
が消去されたことを確認します。
[root@Fedora user]# wipefs /dev/sdc
DEVICE OFFSET TYPE UUID LABEL
sdc 0x1fe dos
[root@Fedora user]# wipefs /dev/sdc1
DEVICE OFFSET TYPE UUID LABEL
sdc1 0x3 ntfs 34435675G36Y4776
sdc1 0x1fe dos
しかし、問題のあるiso9660
パーティションテーブルが消去されたため、以前に使用されていたiso9660
パーティションテーブルのラベルが存在しないため、lsblk
はパーティションのUUID
をマウントポイントディレクトリ名として使用しています。
NAME FSTYPE LABEL UUID MOUNTPOINT
sda
├─sda1 ntfs System Reserved
├─sda2 ntfs
├─sda3 ntfs
├─sda4
sdc
└─sdc1 ntfs 34435675G36Y4776 /run/media/user/34435675G36Y4776
ラベルのあるすべてのパーティションをリストする/dev/disk/by-label
ディレクトリで、どのボリューム(つまりパーティション)にラベルがあるかを確認できます。
[root@Fedora user]# ls -l /dev/disk/by-label
total 0
lrwxrwxrwx. 1 root root 10 Apr 30 19:47 'System\x20Reserved' -> ../../sda1
パーティション上のntfs
ファイルシステムsda1
は、ラベルが付いている唯一のパーティションです。
マウントポイントのディレクトリ名をより人間が読めるようにするために、パーティションsdc1
上のntfs
ファイルシステムのラベルを何もない(空の文字列)から「新しいラベル」に変更します。ファイルシステムのラベルを変更するコマンドは、ファイルシステムによって異なります 12 。 ntfs
ファイルシステムの場合、ラベルを変更するには、コマンドntfslabel
を使用します。
ntfslabel /dev/sdc1 "new-label"
ntfs
ファイルシステムのラベルを変更した後、lsblk
は、"new-label"
をマウントポイントのディレクトリの名前として使用します。
NAME FSTYPE LABEL UUID MOUNTPOINT
sda
├─sda1 ntfs System Reserved
├─sda2 ntfs
├─sda3 ntfs
├─sda4
sdc
└─sdc1 ntfs new-label /run/media/user/new-label
注意:また、デバイスsdc
には、他のすべてのブロックデバイス(sdaなど)のように、ファイルシステムタイプとラベルがなくなりました。ファイルシステムはデバイスではなくパーティション上にあり、列ヘッダーLABEL
はデバイスラベルではなくファイルシステムラベルであるため、パーティションのみファイルシステムタイプにする必要があります。
lsblk
はおそらく最初に最初のセクターを検査して、デバイスに含まれるファイルシステムタイプを確認します。何も見つからない場合のみ、ファイルシステムスーパーブロックの「通常の」場所に移動します。
Iso9660は最初のセクターのデータから認識できるため、lsblk
はそれ以上調べず、そこからボリュームラベルも抽出します。
パーティションテーブルを作成するだけで、最初のセクターのほとんどがそのまま残ります。そのため、これが表示されます。
たとえば、最初のセクターを最初にワイプする必要があります。 dd if=/dev/zero of=/dev/sdc count=1
その後、パーティションテーブルを再作成します。同じパラメーターを使用して再作成しても、以前に作成したNTFSファイルシステムはそのまま残ります。
パーティションテーブルを(ルートとして)再度読み取ってみましたか?
partprobe /dev/sdc