Cara Backup dan Restore Melalu Cli Didirectadmin

Cara Backup Melalui CLI di DirectAdmin

Jika kamu mengalami kondisi darurat seperti lisensi DirectAdmin yang sudah kadaluarsa atau server hampir tidak bisa diakses melalui antarmuka grafis (UI), jangan panik dulu. DirectAdmin menyediakan cara untuk melakukan backup langsung melalui Command Line Interface (CLI). Artikel ini akan membahas cara melakukan backup dan restore menggunakan CLI di DirectAdmin.

🔧 Kapan Menggunakan CLI?

  • Server tidak bisa diakses melalui panel DirectAdmin
  • Proses backup otomatis gagal, dan kamu ingin menjalankan backup manual
  • Kamu butuh backup cepat dari akun tertentu saja
  • Kamu sedang mengatur sistem backup harian berbasis script/cron

📦 Backup Semua Akun via CLI

Untuk melakukan backup semua akun di server DirectAdmin, gunakan perintah berikut:

/usr/local/directadmin/directadmin admin-backup --destination=/home/admin/admin_backups

Perintah ini akan membuat backup dan menyimpannya di folder /home/admin/admin_backups. Pastikan folder tersebut tersedia dan memiliki ruang penyimpanan yang cukup.

🎯 Backup Akun Tertentu Saja

Kalau kamu hanya ingin membackup akun tertentu (misalnya: user1 dan user2), gunakan perintah seperti berikut:

/usr/local/directadmin/directadmin admin-backup --destination=/home/admin/admin_backups --user=user1 --user=user2

🔄 Restore Akun dari Backup via CLI

Untuk merestore backup akun secara manual dari file .tar.gz, kamu bisa menambahkan task ke task.queue DirectAdmin dengan perintah seperti ini:

echo "action=restore&ip_choice=file&local_path=/home/admin/admin_backups&owner=admin&select0=user.admin.testuser.tar.gz&type=admin&value=multiple&when=now&where=local" >> /usr/local/directadmin/data/task.queue

Catatan:

  • Gantilah testuser dengan username yang ingin kamu restore.
  • Jika nama file mengandung titik (.), ubah titik menjadi %2E. Misalnya: user.admin.testuser.tar.gz menjadi user%2Eadmin%2Etestuser%2Etar%2Egz

Jika kamu ingin restore ke IP tertentu, ganti ip_choice=file dengan ip_choice=select&ip=1.2.3.4

🕒 Contoh Script Cron untuk Restore Otomatis

Jika kamu ingin mengotomatiskan proses restore (misalnya untuk server mirror atau sistem recovery), berikut adalah contoh script shell yang bisa kamu jalankan via cron sebagai root:

#!/bin/sh

# Siapa pemilik backup
OWNER=admin
LOCAL_PATH=/home/${OWNER}/admin_backups

# Gunakan IP spesifik untuk restore
IP_CHOICE=select
IP=1.2.3.4

echo -n "action=restore&local_path=${LOCAL_PATH}&owner=${OWNER}&when=now&where=local&type=admin";

if [ "${IP_CHOICE}" = "select" ]; then
       echo -n "&ip_choice=select&ip=${IP}";
else
       echo -n "&ip_choice=${IP_CHOICE}";
fi

cd ${LOCAL_PATH}
COUNT=0
for i in `/bin/ls *.gz`; do
{
       echo -n "&select${COUNT}=$i";
       COUNT=$(( $COUNT + 1 ))
};
done;

echo "";

if [ "${COUNT}" -eq 0 ]; then
       exit 1;
fi

exit 0;

Script ini akan mencetak perintah restore untuk semua file backup yang ditemukan di folder. Output-nya bisa diarahkan langsung ke task.queue dengan:

/root/restore_all.sh >> /usr/local/directadmin/data/task.queue

🚨 Tips Tambahan

  • Selalu uji script di server staging sebelum diterapkan di server produksi.
  • Pastikan hak akses dan kepemilikan folder /home/admin/admin_backups benar agar proses tidak gagal.
  • Gunakan screen atau tmux jika kamu menjalankan backup dari sesi SSH agar tidak terputus.

🔚 Penutup

Backup via CLI di DirectAdmin adalah solusi efektif saat UI tidak dapat digunakan atau ketika kamu ingin mengotomatisasi proses. Dengan memahami cara kerja perintah CLI ini, kamu bisa lebih sigap dalam menghadapi berbagai kondisi darurat server.

Semoga artikel ini bermanfaat. Jika kamu punya pertanyaan atau pengalaman menarik seputar backup DirectAdmin, silakan bagikan di kolom komentar!

Posting Komentar (0)
Lebih baru Lebih lama