dd

dd aracı, veriyi dönüştürmek ve kopyalamak için son derece kullanışlıdır. Bir dosyadan veya veri akışından giriş okur ve bunu bir dosyaya veya veri akışına yazar.

Aşağıdaki komutu düşünün:

$ dd if=/home/pete/backup.img of=/dev/sdb bs=1024

Bu komut, backup.img’nin içeriğini /dev/sdb’ye kopyalıyor. Veriyi 1024 byte’lık bloklar halinde, kopyalanacak veri kalmayana kadar kopyalayacaktır.

  • if=file - Input file, standart girdiden okumak yerine bir dosyadan okur

  • of=file - Output file, standart çıktıya yazmak yerine bir dosyaya yazar

  • bs=bytes - Block size, bir seferde bu kadar byte veri okur ve yazar. Boyutu belirtirken kilobyte için k, megabyte için m vb. ekler kullanabilirsiniz, dolayısıyla 1024 byte 1k’dır

  • count=number - Kopyalanacak blok sayısı

count seçeneğini kullanan bazı dd komutları göreceksiniz, genellikle dd ile 1 megabyte’lık bir dosyayı kopyalamak isterseniz, kopyalama bittiğinde o dosyanın 1 megabyte olarak görünmesini istersiniz. Diyelim ki aşağıdaki komutu çalıştırıyorsunuz:

$ dd if=/home/pete/backup.img of=/dev/sdb bs=1M count=2

backup.img dosyamız 10M, ancak bu komutta 1M’yi 2 kez kopyalamayı söylüyoruz, yani sadece 2M kopyalanıyor ve kopyalanan verimiz eksik kalıyor. Count birçok durumda işe yarayabilir, ancak sadece veri kopyalıyorsanız count’u ve hatta bs’yi bile büyük ölçüde atlayabilirsiniz. Veri transferlerinizi gerçekten optimize etmek istiyorsanız, o zaman bu seçenekleri kullanmaya başlamanız gerekecektir.

dd son derece güçlüdür, tüm disk sürücüleri de dahil olmak üzere her şeyin yedeğini almak, disk imajlarını geri yüklemek ve daha fazlası için kullanabilirsiniz. Dikkatli olun, ne yaptığınızdan emin değilseniz bu güçlü araç pahalıya mal olabilir.

Last updated