
Linux Fedoraのインストールメディアとして使用したUSBフラッシュドライブがあります。
スティックにはまだ「Fedora Live USB」インストールファイルがあります。以前のノートブックに接続したとき、KDE Dolphinに「Fedora-Live-KDE-x86_64-22-3」というディスクが表示されました。それはできません。
だから私はその上にあるすべてのパーティションを破壊しfdisk
、新しいパーティションを作成し、そのパーティションにext4ファイルシステムを設定しました。
フラッシュドライブを挿入しました。鉱山はKDEイルカで「Fedora-Live-KDE-x86_64-22-3」と表示されます。
アンデッドフラッシュドライブ時間!
名前はどこから来たのですか? USBフラッシュドライブから出てくるようには感じませんが、以下の事実(3)は実際にUSBフラッシュドライブから出てくることを示しています。
名前はどこから来て、どのように変更しますか?
以下は、名前の由来に関する調査の結果、ディスクに残っているISO-9660データからのものと結論づけました。しかし、Linuxのこの動作は正常ですか?
▶e2label /dev/sdd1
表示なし:ファイルシステムにタグがありません。
▶blkid /dev/sdd1
パフォーマンス
/dev/sdd1: UUID="10aab422-4212-45c8-9f99-35e5eb719154" TYPE="ext4" PARTUUID="5c4a815c-01"
▶他のコンピュータでフラッシュドライブを使用すると、表示名が「Fedora-Live-KDE-x86_64-22-3」になります。
▶「タグ」(何でも)はファイルシステムを確認してダンプできます/dev
。
ls -l /dev/disk/by-label/
これはシンボリックリンクを示しています
Fedora-Live-KDE-x86_64-22-3 -> ../../sdb
シンボリックリンクはパーティションではなくデバイスを指していることに注意してください。したがって、これはファイルシステムラベルではなく、「ディスクラベル」のようなものです。
▶オリジナルの「ファイルシステムラベル」は空e2label
です。設定して何が起こるか見てみましょう。
# e2label /dev/sdb1 "Scooby Doo"
# ls -l /dev/disk/by-label/
lrwxrwxrwx. 1 root root 9 Feb 4 23:43 Fedora-Live-KDE-x86_64-22-3 -> ../../sdb
lrwxrwxrwx. 1 root root 10 Feb 4 23:43 Scooby\x20Doo -> ../../sdb1
これで、ディスクとファイルシステム/パーティションにラベルがあります。ただし、削除/再挿入後、Dolphin(またはLinux)はファイルシステムの「Scooby Doo」名を決定します。だからなぜダメ!その後、次のようにラベルを消去できます。e2label /dev/sdb1 ""
名前は部分的にのみ表示されます: "Fedora-Live-KDE-"(なぜ部分的なのですか?
▶また試してみて、どのようなparted
結果が出てくるのか確認してください。とても混乱しているようです。 512バイトのブロックを持つ8GiBスティックは、実際には2048バイトのブロックを持つ32GiBスティックだと思い、Appleパーティションを検出すると同時にfdisk
8GiB Linuxパーティションを見つけるのに十分満足しています。好奇心が多く、好奇心が多い。
(parted) print
Warning: The driver descriptor says the physical block size is 2048
bytes, but Linux says it is 512 bytes.
Ignore/Cancel? i
Model: Generic USB Flash Disk (scsi)
Disk /dev/sdb: 32.2GB
Sector size (logical/physical): 2048B/512B
Partition Table: mac
Disk Flags:
Number Start End Size File system Name Flags
1 2048B 10.2kB 8192B Apple
2 88.1kB 5278kB 5190kB EFI
3 5319kB 26.1MB 20.8MB EFI
スティックで以下を見つけたので、完全に混乱しない可能性があります。
▶その他の奇妙な点:再フォーマットされたUSBスティックは書き込めないようですが、root以外のユーザーは閲覧できます。しかし、rootとして書くことは可能です。しかし、これは単なる余談です。
▶ディスクダンプを実行すると、okteta
ディスク名文字列がブロック64(ブロックサイズは512バイト)の0x8000の直後に配置されることがわかります。
これは明らかにLiveCD構造から来ています。
もっと詳しく見ると、名前は0x9000の後に再び表示されます。おそらくUTF-16形式である可能性が高く、バージョンサフィックスは削除されました。それはおそらくフィールドのサイズが一定であるためです。
▶刺してみて何が起こるのか見守る時間だ。 0x8000 表示で文字列を変更します。
また、0x9000の表示で文字列を修正しました。
その後、チャンクをスティックに書き換えて(を使用して取得したファイルを変更したためdd
)、同期、同期、およびポップします。
その後、スティックを再挿入します。この場合、Linuxは0x9000で文字列を変更します。
[root@elf ~]# ls -l /dev/disk/by-label/
total 0
lrwxrwxrwx. 1 root root 10 Feb 9 22:09 DellUtility -> ../../sda1
lrwxrwxrwx. 1 root root 10 Feb 9 23:20 MOTHRA-Dead-KDE- -> ../../sdb1
lrwxrwxrwx. 1 root root 10 Feb 9 22:09 OS -> ../../sda2
lrwxrwxrwx. 1 root root 10 Feb 9 22:09 RECOVERY -> ../../sda4
イルカが示すもの/dev/disk/by-label
:
だから私たちは文字列がどこから来たのかを知っています。変更できるのは、CD-ROM構造から来ており、標準のパーティションスキームをUSBディスクに入れたので便利ではないようです。 Linuxがこれら2つの構造を混在させるのはなぜですか?
答え1
これがボリュームラベルです。-L
mkfs.vfatなどにあるフラグだと思います。mkfs.ext4
-n
を使用して新しいタグを渡して変更するe2label
か、を使用して完全に終了できますdd
。
答え2
最終的な回答は次のとおりです。
- 名前はCD-ROMデータの残りの部分から取られました(振り返ってみると非常に明白です)。
- まったく使用してはいけませんし、存在してはいけませんので変更できません。結局、USBフラッシュドライブをCD-ROMではなくディスクとして使いたいからです。これらの2つは異なるフォーマットを持っています。通常、0x8000または0x9000には使用できる文字列はありません。
- スティックを挿入するときにこの名前が使用された理由は不明です。ブロックデバイスフォーマットの識別を担当するLinux部分のソースコードを見てください。
講義:
USBフラッシュドライブにハードディスクパーティションスキームを設定する前に、それを消してリセットしてください。それ以外の場合、結果は「未定義」になり、フラッシュドライブを読み取るシステムで使用される経験的な方法によって異なります。ご覧のとおりparted
、Macファイルシステムを検出します。
ポリスチレン
USBフラッシュドライブを128K単位で「ゼロゼロ」にする方法(128Kは1つ以上のフラッシュセルサイズなので、すべてのフラッシュセルは一度だけ書き込まれます):
dd if=/dev/zero of=/dev/sdXXX bs=128K
「USBフラッシュドライブゼロ化」は実際に予期しない合併症でいっぱいです。count=1024
書き込みブロックを低く保つために追加する必要があるかもしれません。