« 上一篇 | 下一篇»

備份Server的資料2

29 七月, 2010 03:56 •  (2) 迴響  •  引用(0)  •  3584 hit.  • 分類: 資訊組工作 , 學校網路 , 備份   

學校有台nas,學校server上的資料,都是備份到它身上,3年前寫過這篇文章「備份Server的資料」,野人獻曝,再把它寫完整一點。

一、建立目錄

  1. 在server上「 / 」下建立個名為 backup_plog 的目錄
    mkdir /backup_plog
  2. 在nas上建立個目錄,例如也名為 backup_plog ,當然要把這目錄的使用者帳號密碼記起來,等一下會用到。

以上目錄名稱依個人喜好,我是以主機名來區分,例如另一台名為 video 的 server ,我的目錄名稱就是 backup_video,我這樣的區分,以便在nas上不同資料夾,放不同主機的備份資料。


二、將nas上的資料夾掛進 server 裡

  1. 我在 /root 下建立個 mountnas.sh 的檔案 ,記得要給這檔案 +x 的權限,最簡單的的方式就 chmod 700 /root/mountnas.sh

    mountnas.sh 這檔案的內容

    mount -t cifs //nas_ip/backup_plog /backup_plog -o username=nas帳號,password=密碼,codepage=cp950


  2. 當你去執行 ./root/mountnas.sh 後,在 nas 上的 backup_plog 這目錄已掛進server 了,你可以在server 下指令 df ,應該就可以看到結果了
  3. 2010-07-29-030713[1].png

三、讓 mountnas.sh 一開機就啟動


你可以在 /etc/rc.d/rc.local 這檔案裡,加上一行 /root/mountnas.sh 就可以了

  1. 2010-07-29-031145[1].png

四、寫個 backup.sh 的檔案,備份資料

我寫個 /root/backup.sh 的檔案,用來備份資料庫及各目錄的資料,內容如下

  1. 2010-07-29-031926[1].png

    資料庫用 mysqldump 的方式,sql 檔案前再加上日期的參數,每天備份,這樣就會保留30天內的資料庫檔案了!如下圖
    2010-07-29-032708[1].png

    至於 cp -ru ,則是將各個目錄內的資料用複製的方式備份到 nas 上,cp 加上 -u 的參數,則是會只在 <來源> 檔案比目的地檔案新,或目的地檔案不存在時才進行複製

    當然這有個小問題,若是 server 上某個檔案已被刪除了, nas 上的檔案還是會一直被保留著。所以也可以不要用 cp 複製的方式,用 tar 或 zip 的方式將整個目錄包起來,這看個人習慣了!以前我遇過老師原本只是要刪除某個gallery2電子相簿的目錄,卻不小心將自己相簿從根目錄刪除,十幾個相簿的照片就不見了,過了幾天才告訴我,所幸還有舊資料,所以很快就可以幫他復原了。


五、將 ./root/backup.sh 寫進 crontab 裡

例如在 /etc/crontab 裡加上一行
55 1 * * * root /root/backup.sh

這樣每天的 1點55分,就會自動去執行備份資料到nas上了。

 

以上就是我的server備份方式,當然啦!用 rsync 也是不錯的方式,可以參考 OLS3 的這一篇文章「備份的方法 3 : 使用 rsync (全自動網路備份法)」來實作。

 

創用 CC 授權條款
 
 
Related Posts Plugin for WordPress, Blogger...

2 Comments on "備份Server的資料2"

 

  1. 如何同步備份?

       作者 raid1       [管理]

    網管人員最怕遇到「雷擊」
    即使設了rsync異地備份,仍不免會損失一些資料
    不知阿欣老師對「raid1」在linux系統的實作有研究嗎?
    還是有什麼其他更好的方法,可以做到「同步」備份?

    我學校的 Server 大都內建有 RAID卡,不過我都是設定 RAID5。

    我的認知,RAID 是機器內對硬碟的保護。不管是做哪一種RAID,一旦任一顆硬碟故障,還是要換顆硬碟進去,沒換硬碟進去,那機器還是停擺的呀!

    我現在的備份方式也是用 rsync 備份到 nas 去,若是擔心備份不完整,乾脆把rsync 執行的頻率加快。

    上次我聽過的例子,某機器硬碟沒問題,卻是磁碟陣列卡壞了,所以也得等換了那張卡才能再上線。

    晚了一點回覆,是因為近日在玩個新服務 owncloud,他就像是 Google 雲端硬碟或Dropbox 一樣的服務。

    他也有 client 端的軟體,支援各種系統。應該是可以達到同步備份的功能。

    目前我的server 是安裝在 CentOS,client 端我只在 Windows7 測試過(沒問題,可以同步)。因為學校那些需要備份的主機都是 CentOS ,而且都是文字介面,沒安裝圖形介面,所以就沒辦法測試使用Linux Clients 的同步軟體了!

  2.  

  3. 一些改進

       作者 Johnny       [管理]

    開機自動掛載的方式是用於一開機就能抓到連線的電腦

    另一種也可以使用automount
    就是/etc/auto.master和/etc/auto.misc的設定檔

    再搭配板大的方式(For寫法&變數擬定)

    壓縮換成7-zip

    http://tonysanv.blogspot.com/2010/01/7-ziplinux.html 

    7z a -mx=[壓縮比] -t[類型] -v[分割大小] [檔名] [欲壓縮檔案]
    範例 (flag與option間無空格)
    將 verybigfile.ext 用zip格式壓縮成 archive.zip、每200M分割、用最高壓縮比(9最高,1最低)
    7z a -mx=9 -tzip -v200m archive.zip verybigfile.ext

    這樣就非常完美了

    Johnny:

    感謝您提供的方法,因為備份檔放在學校nas裡,空間足夠,就沒試過用7-zip了

  4.  

發表迴響
 authimage

Google+ 迴響

*********