13.5 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命令》。
Linux
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。