ddを使用してISOイメージをUSBにコピーする方法


17

SliTaz 3.0リリースノートの最後の段落では、liveCDについて次のように述べています。

ISOイメージは「ハイブリッド」システムを使用するようになりました。フォーマットせずに(ddを使用して)USBスティックにコピーすることもできます。

誰もこれを行う方法を知っていますか?


3
親愛なる神様はddに気をつけてください!それは、理由のためにディスク駆逐艦と呼ばれています。
ロブ

@Robをリストしdosdontsください。起動可能にするためにドライブを無駄にしたくない。
今村桂

回答:


25

dd if=/path/to/your/isofile of=/your/usb/disk これを試して。


~/パスに含める必要がありますか?

2
@ weis26:できるの~は、現在のユーザーのホームディレクトリパスに置き換えるだけです。いずれかの場合には、それを使用するifか、ofパスが必ずあなたのホームディレクトリにある...
マット・ジョイナー

2
@ weis26相対パスを使用するか絶対パスを使用するかによって異なります。ところで、使用ddすると、USBデバイスは読み取り専用になり、デバイスを「通常の」USBデバイスにするには、デバイスを再パーティションします。
11

10
bs=8Mまたは、これはかなり高速になります...また、mountどのディスクがマウントされているかを確認するために使用することに言及する必要があります/media/83...
-Kimvais

@starrify- dd「USBデバイスを読み取り専用にします」と言っても意味がわかりません。ddデバイスの機能を変更するのではなく、入力から出力にデータを押し込むだけです。
フロレンツクレー

9

進行状況を表示したり、ETAを取得したい場合は、パイプビュー(pv)をミックスに追加できます。例:

dd if=<path to input file> | pv -s <size e.g. 1377M> | dd of=<path to target device>

これにより、次のような出力が得られます。

850MiB 0:05:18 [6.44MiB / s] [===================>] 61%ETA 0:03:16


あなたは持っている場合はpvその後、pv /path/to/input/file > /path/to/target/device既に十分である
Dzamoノートン

1
ddのオプションの1つは、定期的な転送統計を取得するための 'status = progress'です。
user65913

0

注:これは、ほぼすべての* nixシステムで機能する汎用の汎用アプローチです。他の推奨事項に問題がある場合は、これを試してみてください。dd(ディスクデストロイヤー)を実行したいですか?ブロックデバイスを接続する前に、cat / proc / partitions; 次に、デバイスを接続し、再度cat / proc / partitionsを実行します。違いは、ターゲットデバイスを示します。違いがない場合は、それを認識するための正しいドライバーがないか、ハードウェア障害があります。

私のラップトップでは、私の前と後にそれぞれ次のようになります。

jcholsap@T430s:~$ cat /proc/partitions 

major minor  #blocks  name
8        0  117220824 sda
8        1  117219328 sda1
11       0    1048575 sr0
253      0  109109248 dm-0
253      1    8077312 dm-1

jcholsap@T430s:~$ cat /proc/partitions 

major minor  #blocks  name
8        0  117220824 sda
8        1  117219328 sda1
11       0    1048575 sr0
253      0  109109248 dm-0
253      1    8077312 dm-1
8       16   30670848 sdb

ブロックデバイスを確認するには、3番目の列(キロバイト単位のサイズ)を使用します。緊張している場合は、dmesgを使用してデバイスをさらに検証できます。ここに私のラップトップ上にあります:

jcholsap@T430s:~$ dmesg | tail -30
[   10.197383] thinkpad_acpi: EC reports that Thermal Table has changed
[   34.599234] random: crng init done
[   35.133277] rfkill: input handler disabled
[ 9737.190954] usb 4-2: new SuperSpeed USB device number 2 using xhci_hcd
[ 9737.211756] usb 4-2: New USB device found, idVendor=0781, idProduct=5580
[ 9737.211762] usb 4-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 9737.211765] usb 4-2: Product: Extreme
[ 9737.211768] usb 4-2: Manufacturer: SanDisk
[ 9737.211770] usb 4-2: SerialNumber: AA010507161254310422
[ 9737.244492] usb-storage 4-2:1.0: USB Mass Storage device detected
[ 9737.245540] scsi host6: usb-storage 4-2:1.0
[ 9737.245746] usbcore: registered new interface driver usb-storage
[ 9737.247465] usbcore: registered new interface driver uas
[ 9738.259485] scsi 6:0:0:0: Direct-Access     SanDisk  Extreme          0001 PQ: 0 ANSI: 6
[ 9738.260340] sd 6:0:0:0: Attached scsi generic sg2 type 0
[ 9738.260698] sd 6:0:0:0: [sdb] 61341696 512-byte logical blocks: (31.4 GB/29.3 GiB)
[ 9738.260919] sd 6:0:0:0: [sdb] Write Protect is off
[ 9738.260925] sd 6:0:0:0: [sdb] Mode Sense: 53 00 00 08
[ 9738.261142] sd 6:0:0:0: [sdb] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA
[ 9738.267727] sd 6:0:0:0: [sdb] Attached SCSI removable disk
[ 9738.496445] UDF-fs: warning (device sdb): udf_load_vrs: No anchor found
[ 9738.496450] UDF-fs: Scanning with blocksize 512 failed
[ 9738.505586] UDF-fs: warning (device sdb): udf_load_vrs: No anchor found
[ 9738.505589] UDF-fs: Scanning with blocksize 1024 failed
[ 9738.519311] UDF-fs: warning (device sdb): udf_load_vrs: No anchor found
[ 9738.519324] UDF-fs: Scanning with blocksize 512 failed
[ 9738.528153] UDF-fs: warning (device sdb): udf_load_vrs: No anchor found
[ 9738.528157] UDF-fs: Scanning with blocksize 1024 failed
[ 9738.533493] UDF-fs: INFO Mounting volume 'UDF Volume', timestamp 2011/04/12 09:38 (1000)
[10100.854101] perf: interrupt took too long (2519 > 2500), lowering kernel.perf_event_max_sample_rate to 79250

私のサムドライブのすべての詳細があります。ああ、今は適切なデバイスを持っていると確信しています!

しかし、接続されたデバイスは自動マウントされている場合があります。ddにとって、それは問題です。確実にするために、umountでアンマウントしましょう(スペルの違いに注意してください)。エラーメッセージで成功したことがわかりますので、コマンドを2回実行します。

jcholsap@T430s:~$ sudo umount /dev/sdb
jcholsap@T430s:~$
jcholsap@T430s:~$ sudo umount /dev/sdb
umount: /dev/sdb: not mounted.

さて、Linuxのすべてがファイルとして扱われるため、ddはターゲットブロックデバイス、私の場合は/ dev / sdb、出力ファイルを呼び出します。したがって、ここで私の親指ドライブに使用するddコマンドで使用するオプションと引数のペアは、of = / dev / sdbです。あなたはこれを正しくしたい、そうでなければddはあなたのためのディスク駆逐艦を意味するかもしれません。ここに私のラップトップ上にあります:

jcholsap@T430s:~$ sudo dd of=/dev/sdb if=/home/jcholsap/centos7.iso bs=4M

実行中のddコマンドからの出力はありません。終了するまでカーソルが点滅するだけで、長時間かかる場合があります。プロセスを中断すると、部分的なイメージコピーが作成されます。おそらく、望んでいないものです。

参照http ://www.gnu.org/software/coreutils/ddの完全なドキュメント、 またはinfo '(coreutils)dd invocation'からローカルで入手可能

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.