萬盛學電腦網

 萬盛學電腦網 >> Linux教程 >> Linux下如何備份網頁文件

Linux下如何備份網頁文件

  在進行Linux系統操作的時候,有時需要備份Linux系統上的網頁文件,而備份網頁文件一般都使用Git軟件來備份,今天小編就給大家介紹下一款基於Git的軟件—BUP,一起來了解下如何使用BUP備份網頁文件。

 Linux下如何備份網頁文件

  BUP 並不單純是Git, 而是一款基於Git 的軟件。 一般情況下, 我使用 rsync 來備份我的文件, 而且迄今為止一直工作的很好。 唯一的不足就是無法把文件恢復到某個特定的時間點。 因此, 我開始尋找替代品, 結果發現了 BUP, 一款基於 git 的軟件, 它將數據存儲在一個倉庫中, 並且有將數據恢復到特定時間點的選項。

  要使用 BUP, 你先要初始化一個空的倉庫, 然後備份所有文件。 當 BUP 完成一次備份是, 它會創建一個還原點, 你可以過後還原到這裡。 它還會創建所有文件的索引, 包括文件的屬性和驗校和。 當要進行下一個備份時, BUP 會對比文件的屬性和驗校和, 只保存發生變化的數據。 這樣可以節省很多空間。

  安裝 BUP (在 Centos 6 & 7 上測試通過)

  首先確保你已經安裝了 RPMFORGE 和 EPEL 倉庫

  [techarena51@vps ~]$ sudo yum groupinstall “Development Tools”[techarena51@vps ~]$ sudo yum install python python-devel[techarena51@vps ~]$ sudo yum install fuse-python pyxattr pylibacl[techarena51@vps ~]$ sudo yum install perl-Time-HiRes[techarena51@vps ~]$ git clone git://github.com/bup/bup[techarena51@vps ~]$ cd bup[techarena51@vps ~]$ make[techarena51@vps ~]$ make test[techarena51@vps ~]$ sudo make install

  在 CentOS 7 上, 當你運行 “make test” 時可能會出錯, 但你可以繼續運行 “make install”。

  第一步時初始化一個空的倉庫, 就像 git 一樣。

  [techarena51@vps ~]$ bup init

  默認情況下, bup 會把倉庫存儲在 “~/.bup” 中, 但你可以通過設置環境變量 “export BUP_DIR=/mnt/user/bup” 來改變設置。

  然後, 創建所有文件的索引。 這個索引, 就像之前講過的那樣, 存儲了一系列文件和它們的屬性及 git 目標 id (sha1 哈希表)。 (屬性包括了軟鏈接, 權限和不可改變字節)

  bup index /path/to/filebup save -n nameofbackup /path/to/file#Example[techarena51@vps ~]$ bup index /var/www/htmlIndexing: 7973, done (4398 paths/s).bup: merging indexes (7980/7980), done.[techarena51@vps ~]$ bup save -n techarena51 /var/www/htmlReading index: 28, done.Saving: 100.00% (4/4k, 28/28 files), done.bloom: adding 1 file (7 objects).Receiving index from server: 1268/1268, done.bloom: adding 1 file (7 objects)。

  “BUP save” 會把所有內容分塊, 然後把它們作為對象儲存。 “-n” 選項指定備份名。

  你可以查看備份列表和已備份文件。

  [techarena51@vps ~]$ bup lslocal-etc techarena51 test#Check for a list of backups available for my site[techarena51@vps ~]$ bup ls techarena512014-09-24-064416 2014-09-24-071814 latest#Check for the files available in these backups[techarena51@vps ~]$ bup ls techarena51/2014-09-24-064416/var/www/htmlapc.php techarena51.com wp-config-sample.php wp-load.php

  在同一個服務器上備份文件從來不是一個好的選擇。 BUP 允許你遠程備份網頁文件, 但你必須保證你的 SSH 密鑰和 BUP 都已經安裝在遠程服務器上。

  bup index path/to/dirbup save-r remote-vps.com -n backupname path/to/dir

  例子: 備份 “/var/www/html” 文件夾

  [techarena51@vps ~]$bup index /var/www/html[techarena51@vps ~]$ bup save -r [email protected]: -n techarena51 /var/www/htmlReading index: 28, done.Saving: 100.00% (4/4k, 28/28 files), done.bloom: adding 1 file (7 objects).Receiving index from server: 1268/1268, done.bloom: adding 1 file (7 objects)。

  恢復備份

  登入遠程服務器並輸入下面的命令

  [techarena51@vps ~]$bup restore -C 。/backup techarena51/latest#Restore an older version of the entire working dir elsewhere[techarena51@vps ~]$bup restore -C /tmp/bup-out /testrepo/2013-09-29-195827#Restore one individual file from an old backup[techarena51@vps ~]$bup restore -C /tmp/bup-out /testrepo/2013-09-29-201328/root/testbup/binfile1.bin

  唯一的缺點是你不能把文件恢復到另一個服務器, 你必須通過 SCP 或者 rsync 手動復制文件。

  通過集成的 web 服務器查看備份。

  bup web#specific portbup web :8181

  你可以使用 shell 腳本來運行 bup, 並建立一個每日運行的定時任務。

  #!/bin/bashbup index /var/www/html bup save -r [email protected]: -n techarena51 /var/www/html

  上面就是使用BUP軟件備份Linux系統上的網頁文件的過程介紹了,該軟件還存在一些不足的地方,不過已經能夠滿足基本需求了,不妨試試看吧。

copyright © 萬盛學電腦網 all rights reserved