====== 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]