自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

企業(yè)級系統(tǒng)備份 BackupPC的配置與使用手冊

運維 系統(tǒng)運維
這份指南將會協(xié)助你運用 CentOS testing 軟件庫內(nèi)的 RPM 來設(shè)置 BackupPC。它不會詳細地解釋 BackupPC 所支持的一切設(shè)置。它亦會假設(shè)你會設(shè)置 BackupPC 通過 rsync 來進行備份。

這份指南將會協(xié)助你運用 CentOS testing 軟件庫內(nèi)的 RPM 來設(shè)置 BackupPC。它不會詳細地解釋 BackupPC 所支持的一切設(shè)置。它亦會假設(shè)你會設(shè)置 BackupPC 通過 rsync 來進行備份。BackupPC 可支持 archive、tar、smb 及 rsyncd 的備份,但這份指南只會專注采用 rsync 的 Linux 主機。BackupPC 擁有論充足的文檔關(guān)于設(shè)置方面的選項,這些指引亦收藏在它的網(wǎng)頁界面中。另外,BackupPC 應(yīng)該駐于一臺專用的服務(wù)器上,因為 Apache 必須以系統(tǒng)上 BackupPC 用戶的身份來執(zhí)行,而這樣會影響網(wǎng)頁服務(wù)器的正常運作。

系統(tǒng):CentOS 5.x

參考文件
[ http://backuppc.sourceforge.net/ ]

設(shè)置軟件庫

首先要做的事情就是將 CentOS testing 軟件庫連同 yum-priorities 插件一并安裝。

 # cd /etc/yum.repos.d
# wget http://dev.centos.org/centos/5/CentOS-Testing.repo
# yum install yum-priorities

請依從 wiki 內(nèi)有關(guān)設(shè)置 [http://wiki.centos.org/zh/PackageManagement/Yum/Priorities?highlight=(yum)|(priorities)|yum-priorities] 的指引。如果你安裝了 RPMFroge 的軟件庫,你必須確定所有 CentOS Base 項目的優(yōu)先次序是 1,RPMForge 項目的優(yōu)先次序是 2,而 CentOS testing 軟件庫的優(yōu)先次序是 3。如果你并未安裝 RPMForge 軟件庫,所有 Perl 組件將會下載自 testing 軟件庫,否則,它們將會來自 RPMForge。要設(shè)置 RPM 軟件庫,請依從 wiki 內(nèi)有關(guān) [軟件庫]的指引。

安裝 BackupPC

接下來,請安裝 BackupPC 的 RPM、Apache、及 mod_perl。Perl 所依賴的一切將會自動被收集起來。

# yum --enablerepo=c5-testing install backuppc httpd mod_perl

設(shè)置 Apache

如上述所提及,假若要一切正常地與 CGI 及 mod_perl 運作,Apache 的執(zhí)行身份必須是安裝 RPM 時在系統(tǒng)上所創(chuàng)建的 BackupPC 用戶。請你現(xiàn)在就把合適的值設(shè)于 httpd.conf 內(nèi)。

# vim /etc/httpd/conf/httpd.conf
## 更改 User apache 為 User backuppc
User backuppc
Servername backuppc.domain.com:80

存儲并離開文件,然后更改被創(chuàng)建于 conf.d 目錄下的 backuppc.conf 文件。

# vim /etc/httpd/conf.d/backuppc.conf
## 將 Allow from 127.0.0.1 改為 all
Allow from all

存儲并離開這個文件,然后創(chuàng)建你將會用來訪問網(wǎng)頁界面的用戶及密碼。

# htpasswd -c /var/lib/backuppc/passwd/htpasswd your_user
New password: your_password
Re-type new password: your_password
Adding password for user your_user

最后,引導(dǎo) Apache 并設(shè)置它于開機時引導(dǎo)。然后瀏覽你的機器并確定 Apache 可以派出測試頁面。

# service httpd start
# chkconfig httpd on

請瀏覽 http://你的服務(wù)器 并確定 Apache 能正常運作。

BackupPC 服務(wù)器設(shè)置

初次設(shè)置時,你必須在命令行上編輯數(shù)個參數(shù),額外的你可以通過命令行或網(wǎng)頁界面來完成。請打開 BackupPC 的主要配置文件,然后設(shè)置下列參數(shù)。TopDir 這個路徑就是放置實際備份的地地。它的缺省值是 /var/lib/backuppc。我利用一個加密的分區(qū)來作備份,因此我的路徑是 /srv/backuppc。請按你的需要修改它。

 # vim /etc/BackupPC/config.pl
## BackupPC 缺省的傳輸方法。
$Conf{XferMethod} = 'rsync';
## 備份數(shù)據(jù)存放位置的路徑。
$Conf{TopDir}      = '/var/lib/backuppc';
## init.d 內(nèi)用來引導(dǎo)服務(wù)器的路徑。
$Conf{ServerInitdPath} = '/etc/init.d/backuppc';
$Conf{ServerInitdStartCmd} = '$sshPath -q -x -l root $serverHost$serverInitdPath start';
## 你以 htpasswd 創(chuàng)建獲授權(quán)的用戶。
$Conf{CgiAdminUsers}     = 'your_user';

設(shè)置 BackupPC Sudo

backuppc 這位用戶須要擁有 sudo 權(quán)限來執(zhí)行 gtar 及 tar 的指令。否則,BackupPC 便不能正確地運作。Sudo 應(yīng)該已被安裝在你的系統(tǒng)上,因此你可以通過 visudo 這個指令來作出所需的修改。

# visudo
## 注釋掉 Defaults requiretty
## 加入以下兩行。
Defaults !lecture
backuppc ALL=NOPASSWD:/bin/gtar,/bin/tar

存儲并離開這個文件,然后重新引導(dǎo) Apache,引導(dǎo) BackupPC 并設(shè)置它在開機時引導(dǎo)。

# service httpd restart
# service backuppc start
# chkconfig backuppc on

請打開你的瀏覽器并進到位于 http://你的服務(wù)器/backuppc 的 BackupPC 網(wǎng)頁界面。你須要以先前創(chuàng)建的用戶及密碼來登錄,然后你便會看見一版關(guān)于 BackupPC 服務(wù)器一般信息的頁面。要不然,請重復(fù)你的步驟并確定 Apache 及 BackupPC 的設(shè)置皆正確。

BackupPC SSH 金鑰

由于我們會專注以 rsync 進行備份,你也許會想為 backuppc 進程創(chuàng)建無須密碼的金鑰,讓它能遠程連接到需要備份的主機上。請以 root 的身份在 /var/lib/backuppc 內(nèi)置立隱藏的 SSH 目錄,繼而修改權(quán)限。

# cd /var/lib/backuppc
# mkdir .ssh
# chown backuppc.backuppc .ssh
# chmod 700 .ssh

接著,請改為 backuppc 這個用戶。你須要指定一個指令殼,因為 backuppc 這位用戶缺省是沒有指令殼的。然后請利用 ssh-keygen 創(chuàng)建沒有密碼的 SSH 金鑰。

# su -s /bin/bash backuppc
bash-3.2$ ssh-keygen -t dsa
Generating public/private dsa key pair.
Enter file in which to save the key (/var/lib/backuppc/.ssh/id_dsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /var/lib/backuppc/.ssh/id_dsa.
Your public key has been saved in /var/lib/backuppc/.ssh/id_dsa.pub.
The key fingerprint is:
xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx backuppc@host.domain.name

#p#

復(fù)制服務(wù)器金鑰到客戶端

你必須將你服務(wù)器上創(chuàng)建的金鑰復(fù)制到每一臺要被備份的客戶端里。就此,請繼續(xù)上一步,在服務(wù)器上以 backuppc 這個用戶的身份執(zhí)行 ssh-copy-id 這個指令。
bash-3.2$ ssh-copy-id -i .ssh/id_dsa.pub root@host_to_backup

它應(yīng)該會將金鑰復(fù)制到主機里,并通過 SSH 把你登錄該臺機器。

設(shè)置客戶端

BackupPC 的基礎(chǔ)

在你開始使用網(wǎng)頁界面前,讓我們?yōu)閼?yīng)用于各主機的設(shè)置及選項提供一些基本的解釋。我所閱讀的其它指南在這方面都令我不知所措。你剛才所編輯的主要配置文件,位于 /etc/BackupPC/config.pl,藏有 BackupPC 的所有缺省值。這個配置文件可以在命令行上編輯,也可以通過為每個選項提供文檔的圖像界面來修改。你登錄網(wǎng)面界面時,在左邊可看見 Edit Config 這個頁簽。當你點擊它時,你其實在編輯 /etc/BackupPC/config.pl 這個文件。直至你閱讀文檔為止,請不要改動任何缺省的選項,否則你可能很快便會發(fā)現(xiàn)一個失效的備份系統(tǒng)。

雖然主要配置文件提供所有缺省值,你亦可以為個別主機更改這些設(shè)置。當你在網(wǎng)頁界面上加入一臺主機后,你為該主機所加入的任何設(shè)置值將會取代缺省值。這樣做亦會創(chuàng)建一個獨立的文件,/etc/BackupPC/pc/主機名稱.pl。這個文件藏有所有曾經(jīng)被修改,或與 /etc/BackupPC/config.pl 內(nèi)有差別的設(shè)置值。譬如說,這些文件的內(nèi)容會是你為某主機設(shè)置在備份時要包括或排除的目錄。

除非你將會在所有主機上備份相同的目錄,否則你在創(chuàng)建了一臺主機后便應(yīng)利用此功能來設(shè)置目錄。這一步可以通過 Xfer 頁簽上的 RsyncShareName 來完成。緊隨這個設(shè)置之下是 BackupFilesExclude 選項,讓你將 /var/cache 等目錄排除于備份之外。

在 BakcupSettings 這個主頁簽里,你會找到 DumpPreUserCmd。它容許你指定任何腳本在在進行目錄的 rsync 前被執(zhí)行。舉個例說,假如你需要令數(shù)據(jù)庫轉(zhuǎn)儲然后再備份,你可以在這個腳本里指定。SourceForge 上已然備有 AutoMySQLBackup,所以它在下一部份會有所描述。

DumPostUserCmd 容許你在備份后執(zhí)行一個指令,而 DumpPreShareCmd 及 DumpPostShareCmd 容許你在分享一個備份之前及之后執(zhí)行腳本。注:很多人似乎被這些設(shè)置里的參數(shù)所混淆。你不能將這些字段視作命令行或指令殼。指令殼語法在這里不會生效,因此你如果需要執(zhí)行多個指令或腳本,請將它們放進客戶端的一個腳本里,讓它們一個接一個地被執(zhí)行。

最后,你可以在 Schedule 這個頁簽設(shè)置如何進行完整及漸進式的備份。你可以在 Edit Config 將它設(shè)置為缺省級別,又或者為個別主機進行設(shè)置。缺省值是保留一套完整備份及六套漸進式的備份。這樣你便會擁有一個星期的備份。FullPeriod 的值是 6.97,意思即是每 7 日便進行一次完整備份。IncrPeriod 的值是 0.97,意思即是每日都進行漸進式備份。IncrKeepCnt 的值是 6,也就是說 6 日漸進式備份后,就有一日是完整備份。你也可設(shè)置 BlackoutPeriods,即是你不想進行備份的日子。這里的每個設(shè)置在文檔內(nèi)都有所解釋,因此這詳閱。

在網(wǎng)頁界面加入客戶端

接下來,請通過網(wǎng)頁界面加進客戶端及它的一切設(shè)置。請點擊 Edit Hosts 頁簽,繼而按 Add 按鈕。填入你想備份的主機名稱,然后在 User 部份之下,以 backuppc 作為用戶。這必須是 backuppc,因為備份是已這位用戶來引導(dǎo)的。其它設(shè)置都不行。完成后,請按頂部的 save 按鈕。當你點擊位于左面的 Host Summary 連結(jié)時,你應(yīng)該能看見你的新主機。要開始改動主機的設(shè)置,請點擊機名,然后一個新的本地將會在頂部打開。請點擊在主機名稱之下、最左上方的 Edit Config。

由此點起,你所做的一切修改將會取代缺省的設(shè)置值,并會被存儲到 /etc/BackupPC/pc/主機名稱.pl 這個文件內(nèi)。請點擊 Xfer 這個按鈕,然后開始在 RsyncShareName 下加入目錄。在它以下的 Include/Exclude 本地內(nèi),你可以將任何要排除的東西加進 BackupFilesExclude。完成后,請確定會已點擊在最頂部的 save。加入一臺主機大致上便是這樣。如果你選擇一臺主機,你可以手動式地開始及終止備份來檢查操作是否正常。

根據(jù)缺省值,BackupPC 會日以繼夜地、每小時醒來檢查是否有主機被排序作備份。要更改這個特性,請進到 Server configuration 頁簽下的 EditConfig 部份。請更改 WakeupScahedule 來迎合你的需要。

將數(shù)據(jù)庫備份

要在所備份的主機內(nèi)包含數(shù)據(jù)庫的轉(zhuǎn)儲,你有兩個選擇。第一,你可以寫一個在主機進行備份前執(zhí)行的腳本。第二,你可以利用 SourceForge 上的 AutoMySQLBackup 腳本計劃來轉(zhuǎn)儲你的 MySQL 數(shù)據(jù)庫。通過在腳本上作出簡單的修改,你可以輕易地令它支持 PostgreSQL 數(shù)據(jù)庫。開始時,請從 [http://sourceforge.net/projects/automysqlbackup|SourceForge] 下載腳本。請將這個腳本復(fù)制到要備份的主機,將它于在 /usr/local/bin 等位置。我一般會將該腳本換名來反映它所轉(zhuǎn)儲的主機名稱。

這一步并非必須,它只是較有邏輯而己。然而,你必須確定這個腳本是可執(zhí)行的。

# scp automysqlbackup.sh.2.5 host_name:/usr/local/bin
# ssh host_name
# mv automysqlbackup.sh.2.5 mysql_hostname_dump
# chmod +x mysql_hostname_dump

這個腳本內(nèi)已包含所有選項的詳盡注釋。請你務(wù)必從頭閱讀一次,好讓你知道它在做什么。AutoMySQLBackup 連接到并轉(zhuǎn)儲所有你指定的數(shù)據(jù)庫到 /backups、發(fā)電郵給你(若設(shè)置了的話)、并且采用循環(huán)的方式來確定你擁有一組數(shù)據(jù)庫轉(zhuǎn)儲。

請確定你已填入 USERNAME、PASSWORD、及 DBNAMES。如果你想設(shè)置電郵,請遵照腳本內(nèi)的方法來進行設(shè)置。設(shè)置的過程非常簡單,因此當你把選項修改好,請在要被備份的主機上手動式執(zhí)行腳本一次。

這樣你可以檢查 /backups 這個目錄有否被創(chuàng)建,與及轉(zhuǎn)儲有否發(fā)生。

# cd /usr/local/bin
# ./mysql_hostname_dump

……大量輸出……或錯誤……請據(jù)此作出修正。

# cd /backups
# ll

你應(yīng)該會看見一個分開每日、每周、及每月的目錄結(jié)構(gòu),而每個數(shù)據(jù)庫的名稱又會以獨立目錄的型式出現(xiàn)在它們之內(nèi)。你可以遍歷這些目錄來找出對應(yīng)你的數(shù)據(jù)庫的 .sql.gz 文件。

為 BackupPC 主機加入 DumpPreUserCmd

既然轉(zhuǎn)儲用的腳本已經(jīng)實際地在主機上設(shè)置好,我們便可以在 BackupPC 的網(wǎng)頁界面設(shè)置 DumpPreUserCmd 要通過 SSH 連接到被備份的主機并執(zhí)行 AutoMySQLBackup。請在網(wǎng)頁界面選擇一臺主機,然后選擇位于左上方的 EditConfig 頁簽。選擇 BackupSettings 頁簽并進到 User Commands 以下部份。第一行便是 DumpPreUserCmd。

請在這部份加入下面數(shù)行。

$sshPath -q -x -l root $host /usr/local/bin/mysql_hostname_dump

選擇頂部的 save,然后進到主機的 Xfer 頁簽。請確定你在 RsyncShareName 內(nèi)加入 /backups 這個目錄,否則你的轉(zhuǎn)儲永遠不會從主機復(fù)制出來。這應(yīng)便完成了,現(xiàn)在你的主機的 MySQL 數(shù)據(jù)庫將會在 BackupPC 對目錄進行 rsync 前被轉(zhuǎn)儲。如上述所說,你可以簡易地編輯 AutoMySQLBackup 并改為一個 AutoPostgreSQLBackup 腳本。你只須將所有 MySQL 的語法改為 PostgreSQL 的指令及選項。

BackupPC 的其它功能

之前已經(jīng)提及,BackupPC 亦可以將 SMB 的共享資源備份、利用 tar 來進行備份、及將備份保存在其它媒體上。

BackupPC 的相關(guān)文檔對每個功能都有所解釋。
$Conf{XferMethod} = 'rsync';
The valid values are:
      - 'smb':     通過 smbclient 及 SMB 通訊協(xié)議進行備份及撤消。
                   WinXX 的最簡單選擇。
      - 'rsync':   通過 rsync(通過 rsh 或 ssh)進行備份及撤消。
                   linux/unix 的最佳選擇。亦是 WinXX 的好選擇。
      - 'rsyncd':  通過客戶端上的 rsync 守護程序進行備份及撤消。
                   執(zhí)行著 rsyncd 的 linux/unix 客戶端的最佳選擇。亦是 WinXX
                   的好選擇。
      - 'tar':     通過 tar 或在 ssh、rsh 或 nfs 里執(zhí)行的 tar 進行備份及撤消。
                   linux/unix 的一個好選擇。
      - 'archive': 主機是臺特殊的存檔主機。備份不會進行。存檔主機是用來將其它
                   主機的備份保存到磁帶、CDR 或 DVD 等永久性媒體里。

【編輯推薦】

  1. Linux備份入門:3種克隆方法詳解
  2. 四大Linux備份工具比較與操作實例
  3. 詳解Linux備份應(yīng)用tar命令
  4. 學(xué)習(xí)手冊:Linux備份ghost
  5. 你會選擇怎樣的Linux備份工具?
責(zé)任編輯:張浩 來源: 互聯(lián)網(wǎng)
相關(guān)推薦

2010-05-19 10:57:34

Subversion配

2010-06-07 12:38:37

Cacti使用手冊

2011-03-15 15:00:56

組策略

2009-12-02 18:03:00

PHP cURL

2009-10-26 11:11:33

linux Emacs

2010-06-13 17:07:10

Cacti使用手冊

2010-08-31 08:59:06

marginHTML

2011-08-09 13:22:31

iPhoneSqlite數(shù)據(jù)庫

2010-05-31 15:57:36

Cacti使用手冊

2010-05-26 14:01:47

SVN安裝使用手冊

2010-05-21 12:37:49

SVN使用教程

2010-05-26 12:35:11

2010-05-31 17:38:55

Cacti使用手冊

2010-05-26 12:59:48

SVN簡易使用手冊

2013-10-31 14:55:22

2010-05-26 13:17:55

SVN簡易使用手冊

2010-05-20 19:12:37

2010-05-27 13:35:43

SVN簡易使用手冊

2010-05-26 13:51:40

SVN安裝使用手冊

2011-09-05 16:57:40

MTK開發(fā)工具
點贊
收藏

51CTO技術(shù)棧公眾號