Apa yang perlu dilakukan jika tidak dapat memulihkan file anda
Michael Terry

Creative Commons Attribution-Share Alike 4.0 Unported License

Andika Triwidada
andika@gmail.com 2021.

# Jika Semuanya Kacau

Déjà Dup dapat saja gagal. Mungkin itu macet atau memberi Anda kesalahan saat mencoba memulihkan. Ketika Anda benar-benar membutuhkan data kembali, hal terakhir yang ingin Anda hadapi adalah kutu. Pertimbangkan untuk mengajukan suatu permintaan bantuan tetapi sementara itu, berikut adalah beberapa pendekatan untuk mengatasi Déjà Dup yang berperilaku buruk dan mendapatkan data Anda kembali.

Pembahasan berikut bersifat teknis. Jika anda tidak paham, jangan malu untuk mita bantuan.

Buka Terminal dengan menekan kombinasi tombol Ctrl Alt T.

Buat direktori baru untuk penempatan file yang dipulihkan. Panduan ini akan menggunakn /tmp/restore:

    mkdir -p /tmp/restore

# Memulihkan dengan Duplicity

Dengan asumsi bahwa Déjà Dup tidak berfungsi, anda perlu menjalankan program duplicity langsung dari terminal, yaitu aplikasi yang digunakan Déjà Dup dibelakang layar untuk membackup dan memulihkan file anda.

Jika ingin mengetahui lebih banyak tentang duplicity daripada yang terlihat disini, ketik man duplicity pada terminal.

Hal pertama yang perlu dicoba adalah melakukan pemulihan data sederhana. Dengan asumsi bahwa file anda di mount pada drive ekternal /media/backup dan ingin mengenkripsi hasil backup, ketik perintah berikut:

    duplicity --gio file:///media/backup /tmp/restore

Jika anda tidak mengenkripsi backup, tambahkan --no-encryption pada perintahnya.

## Lokasi Lain Backup

Jika anda membackup ke server lain atau komputasi awan, perintah duplicity berbeda dari contoh di atas. Lihat contoh selanjutnya untuk pemilihan lokasi backup.

Ingat untuk menambahkan --no-encryption terhadap contoh perintah, jika backup anda tidak terenkripsi.

Jika duplicity tampak mengalami kesulitan terhubung ke server anda, coba unduh file duplicity sendiri ke direktori lokal dan ikuti contoh di atas.

### FTP

Catat alamat server, port, nama pengguna, serta kata sandi anda, kemudian gantikan SERVER, PORT, USERNAME, dan PASSWORD pada contoh di bawah dengan nilai tersebut.

Anda mungkin telah menentukan direktori untuk penempatan file backup. Gantikan isian DIREKTORI dengan nama lengkap direktori tersebut pada contoh di bawah.

Jika anda tidak dapat masuk dengan nama pengguna, gunakan anonymous sebagai USERNAME anda pada isian di bawah.

    gvfs-mount ftp://USERNAME@SERVER:PORT/DIREKTORI
    duplicity --gio ftp://USERNAME@SERVER:PORT/DIREKTORI /tmp/restore

### SSH

Catat alamat server, port, nama pengguna, serta kata sandi anda, kemudian gantikan SERVER, PORT, USERNAME, dan PASSWORD pada contoh di bawah dengan nilai tersebut.

Anda mungkin telah menentukan direktori untuk penempatan file backup. Gantikan isian DIREKTORI dengan nama lengkap direktori tersebut pada contoh di bawah.

    gvfs-mount ssh://USERNAME@SERVER:PORT/DIREKTORI
    duplicity --gio ssh://USERNAME@SERVER:PORT/DIREKTORI /tmp/restore

### WebDAV

Catat alamat server, port, nama pengguna, serta kata sandi anda, kemudian gantikan SERVER, PORT, USERNAME, dan PASSWORD pada contoh di bawah dengan nilai tersebut.

Anda mungkin telah menentukan direktori untuk penempatan file backup. Gantikan isian DIREKTORI dengan nama lengkap direktori tersebut pada contoh di bawah.

Jika anda memilih untuk menggunakan koneksi aman HTTPS saat melakukan backup, gunakan davs:// bukan dav:// pada contoh di bawah.

    gvfs-mount dav://USERNAME@SERVER:PORT/DIREKTORI
    duplicity --gio dav://USERNAME@SERVER:PORT/DIREKTORI /tmp/restore

### Share Windows

Catat alamat server, nama pengguna, serta kata sandi anda, kemudian gantikan SERVER, USERNAME, dan PASSWORD pada contoh di bawah dengan nilai tersebut.

Anda mungkin telah menentukan direktori untuk penempatan file backup. Gantikan isian DIREKTORI dengan nama lengkap direktori tersebut pada contoh di bawah.

Jika anda menentukan nama domain bagi server Windows anda, tambahkan namanya pada awal USERNAME dengan titik-koma sebagai pemisahnya. Contoh: domain;username.

    gvfs-mount smb://USERNAME@SERVER/DIREKTORI
    duplicity --gio smb://USERNAME@SERVER/DIREKTORI /tmp/restore

# Memulihkan secara Manual

Jika duplicity tidak berfungsi sesuai keinginan, sulit untuk mengatasi masalah tersebut. Format file backup itu kompleks dan tidak mudah untuk dimanipulasi. Tapi jika anda nekat, lakukan saja.

Jika anda memanfaatkan server remote atau komputasi awan untuk menyimpan backup, pertama-tama unduh file duplicity dan simpan pada suatu direktori di komputer anda. Kemudian masuk ke direktori tersebut melalui terminal.

Duplicity menyimpan data anda dalam berbagai bingkah kecil yang disebut volume. Sebagian merupakan backup periodik 'penuh' atau backup baru, sedangkan lainnya berupa 'inc' atau backup inkremental. Awali dengan backup penuh dari volume 1, anda perlu memulihkannya per volume.

Jika anda menerapkan enkripsi pada backup, dekripsikan volume tersebut terlebih dahulu dengan perintah gpg. Misalkan anda memiliki duplicity-full.20110127T131352Z.vol1.difftar.gpg:

    gpg --output duplicity-full.20110127T131352Z.vol1.difftar --decrypt duplicity-full.20110127T131352Z.vol1.difftar.gpg

Atau lakukan sekaligus (pastikan ada cukup tempat yang tersedia!):

    gpg --multifile --decrypt duplicity-full.20110127T131352Z.*.difftar.gpg

Sekarang Anda memiliki volume .difftar atau volume .difftar.gz (tergantung pada apakah Anda harus mendekripsinya atau tidak). Gunakan tar pada mana pun yang Anda punya untuk mengekstrak berkas patch individual:

    tar xf duplicity-full.20110127T131352Z.vol1.difftar

Atau lagi, untuk melakukan semua sekaligus:

    for t in duplicity-full.20110127T131352Z.*.difftar; do tar xf $t; done

Sekarang berkas patch akan berada di folder multivolume_snapshot dan snapshot. Setiap berkas yang membentang beberapa volume akan berada di multivolume_snapshot. Katakanlah Anda mencadangkan /home/jane/essay.txt:

    cd multivolume_snapshot/home/jane/essay.txt
    cat * > essay.txt

Untuk memulihkan data dari cadangan inkremental, gunakan rdiff untuk menjahit berkas bersama-sama. Lihat man rdiff untuk penggunaan.