「cat debian.iso> / dev / sdX」を実行するとどうなりますか?


10

ライブUSBを作成していて、正確に理解していません。ファイル(またはファイルシステム)を(ファイルシステムではなく)デバイスノードに直接コピーするとどうなりますか?

回答:


16

シェルがデバイスを開きます/dev/sdX。最終的catにはのコンテンツであるコマンドのすべての出力は、debian.isoそのデバイスに直接書き込まれます。

最終結果は、debian.iso基礎となるディスクの先頭にバイトごとに書き込まれます/dev/sdX

実際には、デバイスノードは、ストレージメディアの低レベルのコンテンツが単一のファイルとして動作するように見せかけます。この「ファイル」に書き込んでいるため、ストレージメディアに書き込んでいます。この哲学は「すべてがファイルである」と呼ばれ、Unixシステムの特徴の1つと見なされています。


9
このコマンドとは異なりdd if=debian.iso of=/dev/sdXますか?

2
@htor、それほど重要ではありませんがdd、ブロックサイズをより詳細に制御できます。デフォルトは実装に依存します(例:1または512バイト)。を使用ddすると、4096バイトなど、ブロックデバイスのより適切なサイズを選択できます。
mrb

ありがとう、ジム。つまり、このコマンドを実行することで、フラッシュ上のパーティションテーブルとFATパーティションでMBRを上書きし、2048バイトのセクターとブートローダーをどこかに含むISO-9660ファイルシステムで埋めます。El Toritoの起動可能なCD仕様では、そのCDイメージのアクションのいくつかのモード(フロッピーエミュレーション、ハードドライブエミュレーション、エミュレーションなし)が許可されているため、どのように機能するのかわかりません。ブロックサイズは、ファイルシステムによって判断された場合、それは(私が代わりにそれを使用する場合)DD伝えるために理にかなって何を、あなたにも説明できるが、それは使用すべきブロックのどのようなサイズ、(すなわち、それらは、ISO 2048バイトでなければなりません)
ボリスBurkov

2
@Bobテープドライブを除いて、渡すブロックサイズはddパフォーマンスに影響しますが、読み書きされるデータには影響しません。ddブロックサイズとCDブロックサイズまたはファイルシステムのブロックサイズの間には関係がありません。数メガバイトは通常、最高のパフォーマンスを提供しますが、catよりも速い場合がありddます。
Gilles「SO-邪悪なことをやめよう」

2
ブートセクターはどうですか?/ dev / sdXは、その後CD / DVDイメージと同じように通常どおりブートしますか?
数学
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.