ボリュームがマウントされていないときに、ディスクのようなデバイスが使用するブロックサイズを確認するにはどうすればよいですか?


2

これは、ばかばかしいほど簡単なようで、私がアイデア持って使用して見つける方法を知っているが、しかし...

Mac OS 10.4では、を使用して2つのデバイス間で生のコピーを作成します。どのように私はに渡すための最良のブロックサイズであるかを伝えることができるとは?dd if=inputdev of=outputdev ibs=?? obs=??ibsobs

関連情報 -SO、ddのibs / obs / bsの目的に関する質問があり、Jonathan Lefflerによる非常に良い回答がありました。

追記:大変そうですね、怖いです。drawin-driversリストのメッセージから:

問題は、IORegistryのサイズおよび優先ブロックサイズ情報がオープンセッションCD-Rディスクに対して信頼できないことです。また、最も広範なデバイスとの互換性を提供するために、デバイスに一連のSCSIコマンドを発行する必要があります。ディスク上の実際に最後に書き込まれたブロックがどこにあり、メディアの実際のブロックサイズが何であるかを判断するため。

したがって、IOレジストリの優先ブロックサイズの内容は、たとえアクセスできる場合でも、間違っている可能性があります...

しかし、この情報を取得する信頼性の高い方法は依然として価値があります。

回答:


1

これらのデバイスのドライバーがロードされる場合、ブロックサイズはIORegistryに記録する必要があります。上記のレジストリで必要なエントリを見つける方法は、問題のデバイスについて詳しく知らなくても誰でも推測できるものではありません。どちらの方法でも512を使用することができます。

ロードするドライバーの信頼性が十分でない場合は、基本的に独自のドライバーを作成する必要があります。私が知っているコマンドラインから生のATAまたはSCSIコマンドをデバイスに送信する方法はありませんが、誰かが私が知らないことを知っているかもしれません。


CD-ROMには通常、2048バイトのブロックがあります。はい、512バイトブロック使用できます、理想的ではなく、タイミングエラーを引き起こす可能性があります。
チャールズスチュワート

どうやらIORegistry の優先ブロックサイズの内容が間違っている可能性があります...質問のPSを参照してください。
チャールズスチュワート

2
デバイスに関する限り、CDブロックは2352バイトです。
ハサーンチョップ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.