備份 Server 資料到 NAS – Arch Linux Server 篇

NAS Server:192.168.1.5
Arch Linux Server:192.168.1.12

@ Arch Linux Server
1. 安裝 autofs 套件
# pacman -S autofs

2. 修改設定檔 /etc/autofs/auto.master
# vim /etc/autofs/auto.master
在最後一行加入
/mnt/nasnfs     /etc/autofs/auto.nfs

3. 新增 /etc/autofs/auto.nfs 設定檔
# vim /etc/autofs/auto.nfs
nds  -rw,soft,intr,rsize=8192,wsize=8192,nfsvers=4 192.168.1.5:/volume1/homes/t850008/Server/nds
[@more@]
4. 設定開機時啟動 autofs 服務
# systemctl enable autofs
Created symlink from /etc/systemd/system/multi-user.target.wants/autofs.service to /usr/lib/systemd/system/autofs.service.

5. 啟動 autofs 服務
# systemctl start autofs

6. 安裝 rpcbind nfs-utils 套件
# pacman -S rpcbind nfs-utils

7. 開機時啟動 rpcbind 服務
# systemctl enable rpcbind
Created symlink from /etc/systemd/system/sockets.target.wants/rpcbind.socket to /usr/lib/systemd/system/rpcbind.socket.

8. 啟動 rpcbind 服務
# systemctl start rpcbind

9. 開啟防火牆讓 Arch Linux Server 可以連線到 NAS 的 NFS Server,預設情況是有限制對外連線
# iptables -P OUTPUT DROP
# iptables -A OUTPUT -o eth0 -p tcp -d 192.168.1.5 -m multiport –dport 111,892,2049 –syn -m state –state NEW -j ACCEPT
# iptables -A OUTPUT -m state –state ESTABLISHED,RELATED -j ACCEPT

10. 切換到 /mnt/nasnfs/nds 目錄,如果可以正常切換到該目錄,代表上面的設定成功
# cd /mnt/nasnfs/nds

11. 將要備份的設定檔及資料寫入到 Script,並放入工作排程
例:
# cat /usr/local/bin/backuptonas
!/bin/bash
# 備份帳號密檔
cp /etc/passwd /mnt/nasnfs/nds/set/passwd_`date +%F`
cp /etc/shadow /mnt/nasnfs/nds/set/shadow_`date +%F`
cp /etc/group /mnt/nasnfs/nds/set/group_`date +%F`
cp /etc/gshadow /mnt/nasnfs/nds/set/gshadow_`date +%F`
# mirror 網頁資料
# /mnt/nasnfs/nds/html 目錄要先建好
/usr/bin/mirrordir /var/www/html /mnt/nasnfs/nds/html

12. 更改檔案屬性
# chmod +x /usr/local/bin/backuptonas

13. 加入工作排程,每天早上 3 時備份
# echo “0 3 * * * /usr/local/bin/backuptonas” >> /var/spool/cron/root