Berikut adalah shell script yang disesuaikan dengan informasi yang diberikan untuk menyalin file dan folder dari VPS dengan contoh IP 192.168.1.1 ke VPS lain dengan IP 192.168.1.2 menggunakan rsync dan ssh.

Shell Script:

#!/bin/bash

# VPS Source and Destination Information
SOURCE_IP="192.168.1.1"
SOURCE_PATH="/home/backup"
DESTINATION_IP="192.168.1.2"
DESTINATION_PATH="/home/backup"

# SSH Information
SSH_USER="vpsinfomugi"
SSH_PASSWORD="vpsinfomugi.2024**"
SSH_PORT=22

# Rsync Options
RSYNC_OPTIONS="-avz --progress"

# Perform Rsync from Source to Destination using SSH with password
sshpass -p $SSH_PASSWORD rsync $RSYNC_OPTIONS -e "ssh -p $SSH_PORT -o StrictHostKeyChecking=no" $SSH_USER@$SOURCE_IP:$SOURCE_PATH $SSH_USER@$DESTINATION_IP:$DESTINATION_PATH

# Check if Rsync was successful
if [ $? -eq 0 ]; then
  echo "Backup from $SOURCE_IP to $DESTINATION_IP was successful."
else
  echo "Backup from $SOURCE_IP to $DESTINATION_IP failed."
fi

Langkah Penggunaan:

Install sshpass:
  • Pada Ubuntu/Debian:
sudo apt-get install sshpass

  • Pada CentOS/RHEL:
sudo yum install sshpass

Simpan script di file, misalnya backup.sh.
Ubah izin file agar dapat dieksekusi:
chmod +x backup.sh

Jalankan script:
./backup.sh

Penjelasan Tambahan:

  • sshpass -p $SSH_PASSWORD: Menyediakan password secara otomatis untuk perintah rsync yang menggunakan ssh.
  • -e "ssh -p $SSH_PORT -o StrictHostKeyChecking=no": Menentukan port SSH dan menonaktifkan pemeriksaan kunci host.
Pastikan untuk mengamankan file script ini karena mengandung kata sandi dalam teks biasa. Disarankan untuk menggunakan metode otentikasi yang lebih aman, seperti kunci SSH, jika memungkinkan.