首先先做NAS端的設定,以Synology為例
首先開啟NFS服務 |
在欲做備份的目錄此用「Backup」為例 點選到權限->NFS權限設定 |
NFS規則輸入要連到NAS的IP,此例為「192.168.1.6」 並將權限改為「可讀寫」 Root Squash 改為「調整為admin」 |
Ubuntu端NFS Client設定
部份版本未將nfs整合進去,需手動安裝
sudo apt-get install nfs-common portmap
安裝完成之後就可以連線到NAS了,語法如下
sudo mount -t nfs 192.168.1.102:/volume1/Backup/ /mnt/backup
其中192.168.1.102為NAS的IP
volume1/Backup為分享的目錄名稱 (注意大小寫)
如不確定的話可以用查看資訊
showmount 192.168.1.102 -e
Ubuntu端批次範例
新增一個backup.sh文件,並編輯它
sudo vim /home/backup.sh
貼上如下字串,紅色之外的部份不建議修改
#------------------------------------------------------------
#移除多餘的備份,預設為保留5份
find /mnt/backup/APPS/* -mtime +5 -exec rm -fr {} \; > /dev/null 2>&1
# 壓縮檔名稱可在此修改
eval `date "+day=%d; month=%m; year=%Y"`
INSTFIL="www_sql-backup-$year-$month-$day.tar.gz"
# 壓縮檔名稱可在此修改
eval `date "+day=%d; month=%m; year=%Y"`
INSTFIL1="home-backup-$year-$month-$day.tar.gz"
# Mount NAS
sudo mount -t nfs 192.168.1.102:/volume1/Backup/ /mnt/backup
# Dump the MySQL Database
sudo mysqldump -uroot -proot --all-databases > /var/www/mysql.sql
# 設定備份的目的與來源
tar -Pcpzf /mnt/backup/APPS/$INSTFIL /var/www/*
# Remove the SQL Dump
sudo rm -f /var/www/mysql.sql
#------------------------------------------------------------
Ubuntu端排程設定
sudo crontab -e
貼上
0 2 * * * sh /home/backup.sh
意思為每天02:00執行sh /home/backup.sh
沒有留言:
張貼留言