ब्लॉग पर वापस जाएं
जनवरी 13, 2026गाइड

लिनक्स सर्वर पर स्वचालित बैकअप कैसे कॉन्फ़िगर करें

फ़ाइलों और डेटाबेस के लिए क्रॉन जॉब्स (cron jobs) का उपयोग करके स्वचालित बैकअप स्क्रिप्ट सेट करने पर चरण-दर-चरण गाइड।

लिनक्स सर्वर पर स्वचालित बैकअप कैसे कॉन्फ़िगर करें

आपके डेटा की सुरक्षा के लिए नियमित बैकअप आवश्यक है। यह गाइड आपको अपने Hiddence सर्वर पर शेल स्क्रिप्ट और क्रॉन जॉब्स का उपयोग करके अपनी फ़ाइलों और डेटाबेस के लिए स्वचालित बैकअप सेट करने का तरीका दिखाती है।

बैकअप स्क्रिप्ट बनाना

अपनी फ़ाइलों के लिए बैकअप स्क्रिप्ट बनाएं:

bash
sudo nano /usr/local/bin/backup.sh
#!/bin/bash
BACKUP_DIR="/backups"
SOURCE_DIR="/var/www"
DATE=$(date +%Y%m%d_%H%M%S)
mkdir -p $BACKUP_DIR
tar -czf $BACKUP_DIR/backup_$DATE.tar.gz $SOURCE_DIR
find $BACKUP_DIR -name "backup_*.tar.gz" -mtime +7 -delete
sudo chmod +x /usr/local/bin/backup.sh

क्रॉन जॉब (Cron Job) सेट करना

क्रॉन का उपयोग करके स्वचालित बैकअप शेड्यूल करें:

bash
sudo crontab -e
# प्रतिदिन रात 2 बजे बैकअप चलाने के लिए यह लाइन जोड़ें
0 2 * * * /usr/local/bin/backup.sh >> /var/log/backup.log 2>&1

डेटाबेस बैकअप स्क्रिप्ट

MySQL डेटाबेस बैकअप के लिए स्क्रिप्ट बनाएं:

bash
sudo nano /usr/local/bin/db_backup.sh
#!/bin/bash
BACKUP_DIR="/backups/db"
DB_NAME="your_database"
DB_USER="root"
DB_PASS="your_password"
DATE=$(date +%Y%m%d_%H%M%S)
mkdir -p $BACKUP_DIR
mysqldump -u $DB_USER -p$DB_PASS $DB_NAME > $BACKUP_DIR/db_backup_$DATE.sql
gzip $BACKUP_DIR/db_backup_$DATE.sql
find $BACKUP_DIR -name "db_backup_*.sql.gz" -mtime +7 -delete
sudo chmod +x /usr/local/bin/db_backup.sh

रिमोट बैकअप स्टोरेज

rsync या SCP का उपयोग करके बैकअप को रिमोट सर्वर पर कॉपी करें:

bash
#!/bin/bash
BACKUP_DIR="/backups"
REMOTE_HOST="backup-server.com"
REMOTE_USER="backup"
REMOTE_DIR="/backups"
rsync -avz -e ssh $BACKUP_DIR/ $REMOTE_USER@$REMOTE_HOST:$REMOTE_DIR/

बैकअप प्रतिधारण नीति (Retention Policy)

विशिष्ट अवधि के लिए बैकअप रखने के लिए प्रतिधारण कॉन्फ़िगर करें:

bash
# 7 दिनों के लिए दैनिक बैकअप रखें
find /backups -name "backup_*.tar.gz" -mtime +7 -delete

# 4 सप्ताह के लिए साप्ताहिक बैकअप रखें
find /backups/weekly -name "backup_*.tar.gz" -mtime +28 -delete

# 12 महीनों के लिए मासिक बैकअप रखें
find /backups/monthly -name "backup_*.tar.gz" -mtime +365 -delete

बैकअप के सर्वोत्तम अभ्यास

  • नियमित रूप से बैकअप बहाली (restoration) का परीक्षण करें
  • बैकअप को कई स्थानों पर संग्रहीत करें
  • संवेदनशील बैकअप डेटा को एन्क्रिप्ट करें
  • त्रुटियों के लिए बैकअप लॉग की निगरानी करें
  • अपनी बैकअप प्रक्रियाओं का दस्तावेजीकरण करें
  • बैकअप विफलताओं के लिए अलर्ट सेट करें