Kasus yang saya alami kali ini adalah dalam usaha merestore backup sebuah VPS ke VPS baru ternyata gagal karena kapasitas Harddisk/SSDnya tidak cukup untuk menyimpan hasil ekstrak arsip tar.gz-nya. Ukuran file backupnya sendiri sekitar 400MBan dan jelas dikompres.

Wajar sih, karena setelah saya cek totalnya cuma 5GB dan tersisa kosong cuma 800MB-an. Cukup kritis juga.

Filesystem      Size  Used Avail Use% Mounted on
/dev/vda1       4.4G  3.4G  802M  82% /
udev             10M     0   10M   0% /dev
tmpfs            99M   13M   87M  13% /run
tmpfs           248M     0  248M   0% /dev/shm
tmpfs           5.0M     0  5.0M   0% /run/lock
tmpfs           248M     0  248M   0% /sys/fs/cgroup

Kalau terpakai 400MB berarti sisanya ya sama ukurannya dan jelas setelah diekstrak akan penuh. Masalah seperti ini jarang terjadi kecuali punya VPS dengan kapasitas storage yang kecil seperti yang saya gunakan.

Bagaimana solusinya? Jelas mengupload satu – satu bisa lama sekali walaupun ini berhasil. Tapi akhirnya saya ketemu juga caranya dan kita butuh akses SSH dari VPS baru dan nanti dipakai pada VPS lama:

cat arsip_backup.tar.gz | ssh 192.168.1.57 tar zxfz -

Jadi yang kita lakukan adalah streaming file tar.gz ke VPS baru dan otomatis diekstrak juga. Jadi tidak perlu mendownload semuanya secara utuh karena prosesnya dilakukan secara bersamaan, on the fly istilah kerennya. 😀

Dan.. terinspirasi dari solusi diatas mungkin juga bisa dilakukan pada VPS tujuan memanfaatkan curl, belum saya coba tapi. Teorinya sama.

curl http://nama_domain.com/arsip_backup.tar.gz | tar zxfz

Jadi file backupnya diletakkan pada direktori root website anda pada VPS asal, dan pada VPS tujuan akan ditarik dan otomatis diekstrak juga.

*Saya ga jago bikin judul rasanya. 😥