首頁 > linux教程 > Linux數據備份與恢復 閱讀:0更新時間:2020-03-28 01:07:48

Linux tar命令備份數據

作為 linux 系統管理員,最經常使用的備份工具就是 tar 和 cpio 命令。前面在介紹備份介質時,已經使用了 tar 命令,此命令其實是一個文件打包命令,經常在備份文件的場合中使用。

使用 cpio 命令進行數據備份,請閱讀《Linux提取RPM包文件(cpio命令)》。

有關 tar 命令的基本用法,請閱讀《Linux tar壓縮命令》一節,這里不再過多贅述。下面通過 tar 命令做的一個 Web 服務器的備份腳本,詳細了解 tar 命令作為備份工具時的具體用法。

以下是一個有關 Web 服務器的備份腳本:

#!/bin/sh
BAKDATE='date +%y%m%d'
DATA3='date -d "3 days ago" +%y%m%d'
osdata=/disk1
userdata=/disk2
echo "backup OS data starting"
tar -zcvf /$osdata/etc.data/etc_$BAKDATE.tar.gz /etc
tar -zcvf /$osdata/boot.data/boot_$BAKDATE.tar.gz /boot
tar -zcvf /$osdata/home.data/home_$BAKDATE.tar.gz /home
tar -zcvf /$osdata/root.data/root_$BAKDATE.tar.gz /root
tar -zcvf /$userdata/usr_data/usrlocal_$BAKDATE.tar.gz /usr/local
tar -zcvf /$userdata/var_www/www_$BAKDATE.tar.gz /var/www
cp -r /$osdata/* /$userdata
cp -r /$userdata/* /$osdata
echo "Backup OS data complete!"

echo "delete OS data 3 days ago"
rm -rf /$osdata/etc.data/etc_$DATA3.tar.gz
rm -rf /$osdata/boot.data/boot_$DATA3.tar.gz
rm -rf /$osdata/home.data/home_$DATA3.tar.gz
rm -rf /$osdata/root.data/root_$DATA3.tar.gz
rm -rf /$osdata/usr_data/usrlocal_$DATA3.tar.gz
rm -rf /$osdata/var_www/www_$DATA3.tar.gz

rm -rf /$userdata/etc.data/etc_$DATA3.tar.gz
rm -rf /$userdata/boot.data/boot_$DATA3.tar.gz
rm -rf /$userdata/home.data/home_$DATA3.tar.gz
rm -rf /$userdata/root.data/root_$DATA3.tar.gz
rm -rf /$userdata/usr_data/usrlocal_$DATA3.tar.gz
rm -rf /$userdata/var_www/www_$DATA3.tar.gz
echo "delete cws ok!"

上面這段腳本完成的工作是,將系統和用戶的備份數據分別保存在兩個不同的本地磁盤 disk1 和 disk2 中,并且保留最近 3 天的數據,3 天前的數據自動刪除。主要備份的數據有 /etc 目錄、/boot 目錄、/home 目錄、/root 目錄、/usr/local 目錄和 /var/www 目錄。當然這里只是舉個例子,凡是存放數據的重要目錄,都需要進行備份。

將此腳本放到系統守護進程(類似于 Windows 下的計劃任務)crontab 下,設定備份時間,即可實現定時數據備份。有關 crontab 的詳細介紹,請閱讀《Linux crontab命令》。

beylze編程學院,一個分享編程知識和seo優化知識的網站。跟著beylze一起學習,每天都有進步。

通俗易懂,深入淺出,一篇文章只講一個知識點。

文章不深奧,不需要鉆研,在公交、在地鐵、在廁所都可以閱讀,隨時隨地漲姿勢。

文章不涉及代碼,不燒腦細胞,人人都可以學習。

當你決定關注beylze(公眾號:beylze),你已然超越了90%的其他從業者!

相關文章

優秀教程

国产亚洲欧美日韩