====== dd ======
* http://man7.org/linux/man-pages/man1/dd.1.html
Hibás merevlemez másolására a [[tudasbazis:linux:ddrescue|ddrescue]] alkalmasabb.
===== Nagy adat közvetlen írása =====
Ha forrás/cél egy //block device//, akkor érdemes kierőszakolni, hogy közvetlenül az eszközt írd/olvasd, hogy kevesebb közbülső rétegen menjen keresztül, ami nagy mennyiségű adatnál sokat gyorsít a folyamaton.
Ha a forrás és a cél is block device:
dd if=/dev/sdXXX of=/dev/sdYYY bs=4M iflag=direct oflag=direct status=progress
Ha szeretnénk a művelet végén egy implicit ''sync''-et is hívni (pl. Ubuntu telepítő USB-re írásakor), akkor használjuk az ''conv=fdatasync''-et is:
dd if=Downloads/ubuntu.iso of=/dev/sdXXX bs=4M iflag=fullblock oflag=direct conv=fdatasync status=progress
===== Állapot lékérdezése régebbi verziókkal =====
Régebbi ''dd''-knél még nem volt ''status'' paraméter, de ''USR1'' szignálra kiírta, hogy hol tart:
while true
do
kill -USR1 `ps -C dd -o pid=`
date
sleep 5
done
===== dd-zés tömörített fájlba =====
* Egy szálon
dd if=/dev/sdX bs=4M iflag=direct status=progress | gzip -9 > test.gz
* Több szálú ''gzip'' alternatívával (pl: 7 szálon)
dd if=/dev/sdX bs=4M iflag=direct status=progress | pigz -9 -p 7 > test.gz
===== dd-zés tömörített fájlból =====
* Több szálú ''gzip'' alternatívával (pl: 7 szálon)
unpigz -c test.gz | dd of=/dev/sdX bs=4M iflag=fullblock oflag=direct status=progress
* ''gzip'' helyett ''zip''-ből
unzip -p test.zip inner_file.img | dd of=/dev/sdX bs=4M iflag=fullblock oflag=direct status=progress
===== dd-zés hálózaton keresztül =====
==== Közvetlen kapcsolaton ====
- Fogadó (cél) oldalon:
nc -l 19000 | dd bs=16M of=/dev/sdb oflag=direct status=progress
- Küldő (forrás) oldalon:
dd if=/dev/sda bs=16M iflag=direct status=progress | nc 192.168.0.2 19000
==== Lassabb hálózati közegen ====
* https://www.ndchost.com/wiki/server-administration/netcat-over-ssh
- Fogadó (cél) oldalon:
nc -l 19000 | bzip2 -d | dd bs=16M of=/dev/sdb oflag=direct status=progress
- Küldő (forrás) oldalon:
dd if=/dev/sda bs=16M iflag=direct status=progress | bzip2 -c | nc 192.168.0.2 19000
===== MBR és egyéb meta adat törlése =====
local size=$(blockdev --getsz /dev/sda)
dd if=/dev/zero of=/dev/sda bs=512 count=200
dd if=/dev/zero of=/dev/sda bs=512 count=200 seek=$[$size - 200]