HDD/Partition yedekleme & geri yükleme
Jan 31, 2012 · 2 minute read · Commentslinux
Çeşitli nedenlerden dolayı (yedek, harddisk kopyalama vb) harddiskinizin tamamımı veya hardiskin bir bölümünü yedeklemek isteyebilirsiniz.
Linux da harddiskin tamamını veya istediğiniz herhangi bir partition(bölümü) yedeklemek için programlar bulabilirsiniz.Bunlardan biride kullanışını anlaşılır ve kolay bulduğum dd
programıdır ve bildiğim kadarıyla bütün linux dağıtımlarıyla birlikte otomatik olarak gelir.Yedekleme yaparken hangi bölümü nereye ne şekilde yedeklediğnize dikkat etmeniz gerekmektedir.
İki farklı yedekleme şekli vardır. Dosya olarak yedekleme ve direk yedekleme (bir nevi kopyalama olarak düşünebilrisiniz).
Basit kullanım şekli :
$ dd if=[hdd veya hdd bölümü] of=[yedek_dosyasi_veya_nereye_alinacagi]
Not: Ben aşağıdaki örneklerde /dev/sda
ve /dev/sdb
kullandım.Siz kendinize göre değiştirmeniz gerekiyor .
Eger harddiskinizin yolunu bilmiyorsanız lsblk
veya mount
komutu ile bakabilirsiniz. Bilgisayarınıza bağlı bütün hddleri görmek için fdisk -l
komutunu kullanabilirsiniz.
Benim fstab dosyamdan örnek verirsem
$ cat /etc/fstab
/dev/sda4 swap swap defaults 0 0
/dev/sda2 / ext4 defaults 1 1
/dev/sdb1 /mnt ext4 defaults 0 0
Üstte gördüğünüz 2. satır benim kök dizinimin bağlı olduğu partition(/dev/sda2).Burdan şunu anlıyoruzki benim harddiskim /dev/sda
oluyor. Daha detaylı bilgi için fdisk,mount ve fstab ın man sayfalarına bakabilirsiniz.
Bütün harddiski image dosyası olarak yedeklemek :
$ dd if=/dev/sda of=/mnt/yedekler/hdd_yedegi.img
Üstteki kullanımı anlatmak gerekirse if
parametresiyle belirttiğim /dev/sda
benim harddiskimin yolu.
Harddiskin sadece bir bölümünü image dosyası olarak yedeklemek :
$ dd if=/dev/sda2 of=/mnt/yedekler/sda_bolum_yedegi.img
Yukarıdaki örneklerde hep bir img dosyasına yedekleme yaptık yani yedekler bir dosya şeklinde duruyor.Şimdi ise bir harddiski başka bir harddiske veya bir harddisk bölümünü başka bir bölüme kopyalamayı göstermek istiyorum.
Bir harddiski başka bir harddiske kopyalamak :
$ dd if=/dev/sda of=/dev/sdb
Bir hdd bölümünü başka bir bölüme kopyalamak :
$ dd if=/dev/sda1 of=/dev/sdb1
.img ile direk yedeklerin farkı of
paramertesine .img verirseniz yedeği bir dosyaya almış olursunuz fakat .img uzantısı kullanmazsanız yedeği direk almış olursunuz yani if
ile belirtilen hdd veya bölümü of
ile belirtilen yere direk kopyalamış olursunuz.
img yedeğini açmak :
$ dd if=/mnt/hdd_yedegi.img of=/dev/sdb
veya
$ dd if=/mnt/partition_yedegi.img of=/dev/sdb2
Ayrıca dd
ile yedek alırken işlemin ne kadar süreceğini görmek için pv
komutundan yararlanabilirsiniz.
$ pv -tpreb /dev/sdb2 | dd of=/mnt/bolum_yedegi.img