ファイルとして保存せずに、ディスクイメージをダウンロードしてパーティションに書き込むことはできますか?

4
2022.01.05

最初にファイルとして保存せずに、ディスクイメージファイルをパーティションに直接書き込むことができるかどうか疑問に思いました。 dd if="http://diskimages.com/i_am_a_disk_image.img" of="/dev/sdb1" bs=2Mような何か。

私はそれらをコンパイルする方法を知っているので、CまたはPythonでの回答も受け入れます。

回答
12
2022.01.05

これは実際には些細なことです。デバイスにファイルのように書き込むことができます。コンテンツを直接ダウンロードして、ファイルに書き込むか、「stdout」に書き込むためのコマンドがあります。

ユーザーrootとして、次のことができます。

 curl https://www.example.com/some/file.img > /dev/sdb

/dev/sdbはハードドライブです。

これは一般的には推奨されませんが、問題なく機能し、ディスク容量があまりない非常に小さなデバイスで役立ちます。

ちなみに、パーティション/dev/sdb1ではなくディスク/dev/sdbにディスクイメージを書き込むのがより一般的です。

10
2022.01.05

wget -Oオプションを使用して、ディスクに直接印刷できます。

 wget -O /dev/sdb http://diskimages.com/i_am_a_disk_image.img

実際にddを使用する必要はありません。

7
2022.01.05

はい、実際にできます。次のようなものを使用します。

 curl 'http://diskimages.com/i_am_a_disk_image.img' | dd conv=sync,noerror bs=2M of=/dev/sdX