⑴ linux自動遠程備份一個文件夾所有文件至一台伺服器上的配置命令步驟
1.備份Linux系統window系統在運行狀態下,我們是無法將文件拷貝出來的,那麼在Linux下呢?她的文件結構式一種樹型結構。而且在系統運行的時候我們可以進行打包所有系統文件。特別要說的在Linux的root賬戶具備系統上的任何操作,這也是為什麼要創建一個比較低級別的用戶許可權來防止系統誤操作導致系統崩潰的暈因了。下面看備份命令。#切換到rootsudosu#進入系統根目錄cd/#執行打包命令tarcvpzflinuxbackup.tgz--exclude=/proc--exclude=/lost+found--exclude=/linuxbackup.tgz--exclude=/mnt--exclude=/sys/命令解釋:tar:linux常用的打包程序cvpzf:式tar的參數,c-創建新文檔v-處理過程中輸出相關信息p-表示保持相同的許可權z-調用gzip來壓縮歸檔文件,與-x聯用時調用gzip完成解壓縮f-對普通文件操作linuxbackup.tgz:要打包成的文件名--exclude=/proc:排除/proc目錄,不打包這個目錄,後面也同理,記得排除自身打包的文件名/:表示打包linux根目錄所有文件,當然了排除的文件不包含在內整個過程理解起來意思就是,創建一個新的文件名linuxbackup.tgz壓縮文件,它保存式從排除了指定目錄後的文件,並且保存原有的許可權設置,這里必須記下你排除的目錄,恢復的時候需要手動創建。具體哪些目錄要排除在外,這個根覺不同的環境和工作需要進行選擇就是了。執行後等待一定時間就可以了,將這個linuxbackup.tgz拷貝到其他地方即可,備份完成了。重點指出:在打包過程中不要進行任何的操作,否則會修改某些文件,在備份完後tar會提示錯誤。恢復也是一樣。2.恢復Linux系統按照上面的方式備份完系統就可以使用該方法恢復你的備份文件了。如果你的系統崩潰了無法進入系統那麼你可以藉助引導CD或者其他引導系統進入,如果你可以進入系統,首先拷貝該備份文件到/目錄下,然後執行下面命令進行恢復系統:#提升到rootsudosu#進入根目錄cd/#解壓恢復系統tarxvpfzlinuxbackup.tgz-C/等執行完後,別急著重啟系統,要記得創建你在備份時候排除的目錄,手動創建,例如上面我們排除,我們需創建mkdirprocmdkirlost+foundmkdirmntmkdirsys這個時候你就可以重啟系統了。恢復完成了。
⑵ linux自動備份網站和資料庫,到另外伺服器上,為當前用戶創建定時任務
linux自動備份網站和資料庫,到另外伺服器上,為當前用戶創建定時任務兩台伺服器111,和117伺服器,每天完成111伺服器上網站和資料庫自動備份到117伺服器上1:我的111伺服器上是當前用戶:sxA:
查看當前用戶的計劃任務:crontab
-l是查看當前用戶的任務用
vi
crontab
-e
是為sxw用戶創建一個計劃任務第一行:每天3點運行/home/sxw/rsync201.sh
shell腳本,第二行:和第三行是每天下午7點運行tar包,gaokaotong和phpcms文件第三行:每天7點22分運行/homesxw/back_up.sh
shell腳本,注意:這里是當前用戶sxw,所以要shell腳本路徑要有用戶sxw許可權,在這里/home/sxw/back_up
shell腳本,是當前用戶sxw用戶的家目錄。B:
111伺服器上/home/sxw/back_up.sh腳本code:-bash-3.2$
vim
/home/sxw/back_up.sh#!/bin/shecho
開始備份資料庫mysqlmp
-u
jeecms
-pjeecms1234
gktcms
>
gktcms.sqlmysqlmp
-u
jeecms
-pjeecms1234
phpcms
>
phpcms.sqlecho
備份資料庫完成,復制到117伺服器端scp
-P
10022
gktcms.sql
[email protected]:/home/zkscp
-P
10022
phpcms.sql
[email protected]:/home/zkscp
-r
-P
10022
/opt/www/www2/phpcms.tar.gz
[email protected]:/home/zk/scp
-r
-P
10022
/opt/www/www2/gaokaotong.tar.gz
[email protected]:/home/zk/echo
發送完成C:
還要在111上做ssh信任,這個可參照ssh資料。很簡單,只需要建立兩個密鑰。2:
117伺服器上/homezk/自動就會多出兩個tar包文件,phpcms.tar.gz
和gaokaotong.tar.gz這里每天自動保存兩個文件,phpcms.tar.gz
和
gaokaotong.tar.gz文件
這里做了一個shell腳本,保存前兩天的文件,跟上述111伺服器上的建立計劃任務一樣:A:
查看117的計劃任務:
crontabl
-lB:
在查看/home/zk/back.sh
的shell編寫code:[zk@DB2~]$
vi
/home/zk/back.sh#!/bin/shTARFILE=/home/zk/phpcms.tar.gzif
[
-f
$TARFILE
];then
mv
/home/zk/phpcms.tar.gz
/home/zk/phpcms_$(date
+%Y%m%d).tar.gz
#remove
date
file
DATE_B=$(date
-d2
day
ago
+%Y%m%d)
FILENAME=/home/zk/phpcms_$DATE_B.tar.gz
if
[
-f
$FILENAME
];then
rm
-rf
/home/zk/phpcms_$DATE_B.tar.gz
else
echo
沒有可刪除文件
fielse
echo
沒有源文件fi~
結束。
⑶ linux執行定時備份數據腳本
對tomcat目錄,每隔4個小時進行一次備份,以當前時間進行命名
1.創建備份目錄:
mkdir:創建目錄
rmdir:刪除目錄
5.重啟crontab:
service crond restart
!!!!(*^__^*) 嘻嘻……!!!!到這里就完了!
⑷ linux下備份文件
一、使用tar命令進行備份:
tar命令本來的作用是能夠把很多文件放到一個小文件中進行歸檔,但是同時又能夠對文件進行壓縮。所以,一般情況下都採用tar進行文件整理和壓縮。
/* 把/root整個目錄進行壓縮備份 */
# tar cvzf /tmp/root_backup_1215.tar.gz /root
那麼就能夠把 /tmp/root_backup_1215.tar.gz進行存儲,比如保存到磁帶機上等。
說明: 壓縮的tar檔案通常的擴展名是 tar.gz、tgz、或者tar.bz2。前兩個擴展名一般是使用gzip命令進行壓縮的tar檔案,後一個擴展名是
基於bzip2的壓縮,因為壓縮演算法的原因,後一個壓縮更強。
同時,也很容易把已經打包壓縮的文件進行恢復:
/* 從備份文件中進行還原 */
# tar tkvzf root_backup_1215.tar.gz
二、使用cpio備份存檔:
cpio ( in/out) 命令可以建立存檔,跟tar不同之處在於,能夠處理標準的輸入輸出。顧名思義,就是復制,輸入,輸出的意思。
如果要備份root的文件,使用下列命令:
# find /root | cpio -o > /tmp/root_backup_1215.cpio
cpio能夠使用通配符將一組文件設置成標准輸入。比如,下面見所有的.tif文件建立檔案:
# find *.tif | cpio -o > /tmp/back.cpio
記住,find命令很靈活,下列命令把系統中所有的.tif文件進行歸檔:
# find / -name '*.tif' | cpio -o > /tmp/back_tif.cpio
同時,也很容易從cpio檔案中恢復文件。下列命令恢復back_tif.cpio中的文件:
# cpio -i < back_tif.cpio
和tar命令一樣,cpio命令恢復從目錄保存的文件時,取決於是相對路經還是絕對路經。
cpio命令還有一個優點是可以直接將文件發送給外部源。
例如,下列命令恢復/root主目錄中的文件,並把文件發送到SCSI磁帶機:
# find /root | cpio -o -> /dev/st0
# cpio -i < /dev/st0
⑸ linux自動備份計劃,我想備份var/www/html/的整個目錄,每天2點備份一次,自動刪除前兩天的備份文件。
參見網路文庫這個鏈接:http://wenku..com/view/7300e20b844769eae009edde.html
有一點要注意:Fedora下重啟crond,可以在root許可權下使用命令 service crond restart。
⑹ linux 一鍵部署phpstudy雲伺服器怎麼自動備份數據
以小鳥雲為例:
1.啟動"開始→設置→控制面板→添加/刪除程序版",之後出現"添加/刪除程序"對話框;權
2.單擊"添加/刪除 Windows 組件→組件",出現"windows組件向導→下一步"出現" Windows 組件"對話框從列表中選擇"網路服務";
3.單擊"詳細內容",從列表中選取"Windows Internet 命名訪問(WINS)" 如圖:上圖 單擊"確定"4.單擊"下一步",輸入到 Windows2000 Server 的安裝源文件的路徑,單擊"確定"開始安裝 WINS 服務;
5.步驟5 單擊"完成",當回到"添加/刪除程序"對話框後,單擊"關閉"按鈕;
6. 安裝完畢後在管理工具中多了一個 "WINS" 控制台;
7. 如果不知道伺服器有關問題,請咨詢小鳥雲!
⑺ 如何在Linux伺服器中實現數據實時同步及備份
科技時代,任何行業都離不開數據的分析以及統籌,如果掌握了最關鍵的數據及技術,那成功就指日可待,所以數據對於一個企業來說,就是最無形的財富,而一個企業的數據基本都有伺服器保存及管理著,如何保證數據安全,實現數據同步及備份?誠愷科技小編就同大家一起來看看在Linux伺服器中利用rsync配合inotify實現數據實時同步及備份的方法。
rsync:可以鏡像保存整個目錄樹和文件系統。可以很容易做到保持原來文件的許可權、時間、軟硬鏈接等等。第一次同步時 rsync 會復制全部內容,但在下一次只傳輸修改過的文件。
方案:起初用rsync進行數據備份是利用計劃任務,定時執行一下命令實現rsync的同步,但最近開發這邊修改比較頻繁,看來需要實時同步備份來完善備份機制!所以需要利用inotify觸發器來改善!達到一旦指定的位置有了新的變動就將其同步!
環境:
CentOS 6.4 64位
rsync-3.0.9
inotify-tools-3.14
說明:
10.10.1.6 (rsync+inotify)----------網站程序(/data0/htdocs/)
10.10.1.9 (rsync)------------------網站程序備份(/data0/htdocs/)
目的:
實現10.10.1.6的/data0/htdocs/目錄下發生任何變動都將實時同步到10.10.1.9的/data0/htdocs/上(另,這兩台都跑有keepalived+nginx,來實現出現故障自動切換的容災,詳細配置會在後面補上)
一、web伺服器10.10.1.6 (rsync+inotify)
1、准備軟體包
2、安裝Rsync
1)、1234 tar-zxvf rsync-3.0.9.tar.gz
2)、cdrsync-3.0.9
3)、./configure--prefix=/usr/local/rsync
4)、make;makeinstall
建立密碼認證文件
[root@ftp ~]# echo "111111">/etc/rsyncd/rsyncd.secrets建立密碼認證文件
*其中111111可以自己設置密碼,rsyncd.secrets名字也可以自己設置;
許可權:要將/etc/rsyncd/rsyncd.secrets設置為root擁有, 且許可權為600。
# chmod 600 /etc/rsyncd/rsyncd.secrets
3、安裝inotify
1)、1234 tar-zxvf inotify-tools-3.14.tar.gz
2)、cdinotify-tools-3.14
3)、./configure--prefix=/usr/local/inotify
4)、make;makeinstall
4、創建rsync復制腳本
此項功能主要是將ftp端的目錄/data0/htdocs/里的內容,如果修改了(無論是添加、修改、刪除文件)能夠通過inotify監控到,並通過rsync實時的同步給10.10.1.9的/data0/htdocs里,下面是通過shell腳本實現的。
[root@web ~]# vim /root/shell/rsync.sh
[root@web ~]# chmod u+x /root/shell/rsync.sh
[root@web ~]# setsid /root/shell/rsync.sh &
#後台運行腳本,關閉shell終端繼續後台運行
rsync.sh腳本加入開機啟動項
# echo "/root/shell/rsync.sh" >> /etc/rc.local
防火牆開啟rsync埠:873
添加:
iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 873 -jACCEPT
重啟:
# /etc/init.d/iptables restart
二、備份伺服器10.10.1.9(rsync)
1、准備工作
創建備份目錄:
# mkdir /data0/htdocs
2、安裝rsync(備份主機只安裝rsync)
1)、1234 tar-zxvf rsync-3.0.9.tar.gz
2)、cdrsync-3.0.9
3)、./configure--prefix=/usr/local/rsync
4)、make;makeinstall
3、建立用戶與密碼認證文件
[root@backup ~]# echo "root:111111" > /etc/ rsyncd/rsyncd.secrets
[root@backup ~]# less /etc/rsyncd/rsyncd.secrets
root:111111
注意:
請記住,在10.10.1.6端建立的密碼文件,只有密碼,沒有用戶名;而在10.10.1.9里建立的密碼文件,用戶名與密碼都有。
許可權:要將/etc/rsyncd/rsyncd.secrets設置為root擁有, 且許可權為600。
#chmod 600 /etc/rsyncd/rsyncd.secrets
4、建立rsync配置文件
[root@backup ~]# vim /etc/rsyncd/rsyncd.conf
啟動rsync服務
# /usr/local/rsync/bin/rsync --daemon --config=/etc/rsyncd.conf
# ps -ef |grep rsync
Rsync服務加入開機啟動項
# echo "/usr/local/rsync/bin/rsync --daemon --config=/etc/rsyncd.conf" >> /etc/rc.local
防火牆開啟rsync埠:873
添加:
iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 873 -jACCEPT
重啟:
# /etc/init.d/iptables restart
完成,其實這個時候數據已經同步了!
測試一下:
由於/data0/htdocs/下涉及到一些公司信息,所以就以/data0/htdocs/tmp/為例
主機名可以區別是兩台機器,裡面的內容完全一直,連文件的屬性都一樣
再對裡面修改一下試試,創建一個文件,然後刪除user目錄試試
⑻ 如何在linux下實現mysql資料庫每天自動備份
方法/步驟
1. 在根目錄下新建定時備份存儲文件夾mkdir /mysql_backup
2.新建備份的腳本vim /root/mysql_backup.sh
3.在mysql_backup.sh中輸入內容:
backupdir=/mysqlbackup time=` date +%Y%m%d%H`mysqlmp -uroot -proot abc | gzip > $backupdir/abc$time.sql.gzfind $backupdir -name 「abc*.sql.gz" -type f -mtime +5 -exec rm {} \; > /dev/null 2>&1
——————————————————————————————
說明:
backupdir = 備份文件存儲文件夾time = 獲取當前時間 年月日時(2014111417)2014年11月14日17點mysqlmp 備份資料庫指令 abc要備份的資料庫find $backupdir -name 「abc*.sql.gz" -type f -mtime +5 -exec rm {} \; > /dev/null 2>&1 刪除5天前的備份文件
3 :wq 文件保存成功後
先按一下鍵盤上的 " esc " 然後輸入 」 :wq 「
執行一下腳本,看根目錄下的mysql_backup文件夾是否有.sql.gz後綴名的文件
./mysql_backup.sh
寫入每天的定時任務 修改 /etc/crontabvi /etc/crontab
按鍵盤上的"i",開始輸入
02 4 * * * root /root/mysql_backup.sh
表示每天4點2分執行備份任務
先按一下鍵盤上的 " esc " 然後輸入 」 :wq 「 表示保存
重新啟動crond
service crond restart 或 /etc/rc.d/init.d/crond restart
⑼ linux mysql怎麼遠程自動備份資料庫備份
Linux下可以利用crontab系統每天定時備份MySQL資料庫,以下是詳細步驟:
1、創建保存備份文件的路徑/mysqldata
#mkdir /mysqldata
2、創建/usr/sbin/bakmysql文件
#vi /usr/sbin/bakmysql
輸入
rq=` date +%Y%m%d `
tar zcvf /mysqldata/mysql$rq.tar.gz /var/lib/mysql
或者寫成
rq=` date +%Y%m%d `
mysqlmp –all-databases -u root -p980405 > /mysqldata/mysql$rq.tar.gz
/var/lib/mysql是你資料庫文件的目錄,部分用戶是/usr/local/mysql/data,每個人可能不同
/mysqldata/表示保存備份文件的目錄,這個每個人也可以根據自己的要求來做。