Estoy usando el siguiente comando para crear una tarjeta SD de arranque
sudo dd bs=4m if=en_windows_10_enterprise_version_1511_x64_dvd_7224901.iso of=/dev/disk2
¿Hay alguna manera de seguir el progreso?
Estoy usando el siguiente comando para crear una tarjeta SD de arranque
sudo dd bs=4m if=en_windows_10_enterprise_version_1511_x64_dvd_7224901.iso of=/dev/disk2
¿Hay alguna manera de seguir el progreso?
Respuestas:
La misma información, mostrada cada segundo en la respuesta de klanomath, puede mostrarse usando su comando. Solo necesita ingresar un controlTcarácter desde el teclado mientras dd
se ejecuta el comando.
Al presionar el controlTcarácter, está enviando la misma SIGINFO
señal al dd
comando que pkill -INFO -x dd
envía el comando .
A partir de coreutils 8.24, dd agregó opciones de estado. Instale coreutils con Homebrew para actualizar dd.
brew install coreutils
# All commands have been installed with the prefix 'g'
sudo gdd if=XXXX.iso of=/dev/diskX bs=1 status=progress
> example:
> 139648967 bytes (140 MB, 133 MiB) copied, 304 s, 459 kB/s
dd
en sí mismo no proporciona una barra de progreso. Sin embargo, puede estimar el progreso del proceso de copia dd agregando un comando pkill -INFO .
Ejemplo:
dd if=/dev/zero of=/dev/null bs=64m count=1000 & while pkill -INFO -x dd; do sleep 1; done
Resultado:
[1] 37691
0+0 records in
0+0 records out
0 bytes transferred in 0.028923 secs (0 bytes/sec)
275+0 records in
275+0 records out
18454937600 bytes transferred in 1.029698 secs (17922667819 bytes/sec)
553+0 records in
553+0 records out
37111201792 bytes transferred in 2.048291 secs (18118129881 bytes/sec)
829+0 records in
829+0 records out
55633248256 bytes transferred in 3.068911 secs (18128009214 bytes/sec)
1000+0 records in
1000+0 records out
67108864000 bytes transferred in 3.720346 secs (18038339571 bytes/sec)
[1]+ Done dd if=/dev/zero of=/dev/null bs=64m count=1000
Lo que se traduce en 18.1 GB / s.
En primer lugar, instale Homebrew Package Manager . Luego tienes que instalar pv
y dialog
con este comando:
brew install pv dialog
Luego puede ejecutar este comando para obtener una barra de progreso con el comando:
dd if=disk.img bs=1m | pv disk.img | dd of=/dev/diskX bs=1m
pero asegúrese de reemplazar disk.img
con la ruta a la imagen y diskX
con el identificador de disco de su tarjeta SD. Si quieres algo más gráfico, puedes probar esto:
(dd if=disk.img bs=1m | pv -n disk.img | dd of=/dev/diskX bs=1m conv=notrunc,noerror) 2>&1 | dialog --gauge "Writing image to SD card..." 10 70 0
Fuente: /ubuntu//a/516724/765767
Puede presionar Control+ tmientras dd
se ejecuta el comando o para una buena barra de progreso puede instalar pv
(visor de tuberías) a través de Homebrew:
brew install pv
y luego ejecutar:
sudo dd if=disk-image.img | pv | sudo dd of=/dev/disk2
o (conociendo el tamaño de la imagen, 16 GB en este ejemplo):
dd if=disk-image.img | pv -s 16G | dd of=/dev/disk2
Ejemplo de salida 2:
(datos transferidos, tiempo transcurrido, velocidad, barra de progreso y tiempo estimado):
1.61GiB 0:12:19 [2.82MiB/s] [===> ] 10% ETA 1:50:25
¡Eso es fácil! Para macOS High Sierra y versiones inferiores, solo ejecute un ciclo while y se ejecutará hasta que termine. Solo asegúrese de hacer el siguiente código en otra ventana:
El código a continuación funcionará de fábrica cuando esté en un arranque de firmware o dentro del sistema operativo completo
while kill -0 $PID; do $(caffeinate -t 10) $(kill - INFO $PID) echo “still copying file” “$(date)”; done
^ Para mantener la máquina despierta (cafeína) sin el uso de "homebrew" o herramientas no disponibles en Mac OS X estándar, ya que homebrew requiere Internet y un sistema operativo real para instalarlo.
NOTA: lo anterior necesita que sustituya el PID con su ID de proceso y mostrará constantemente el progreso
$(...)
? Sé lo que hacen en general, solo me pregunto por qué los estás usando aquí.