• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
    • 軟件測試技術
    • 軟件測試博客
    • 軟件測試視頻
    • 開源軟件測試技術
    • 軟件測試論壇
    • 軟件測試沙龍
    • 軟件測試資料下載
    • 軟件測試雜志
    • 軟件測試人才招聘
      暫時沒有公告

    字號: | 推薦給好友 上一篇 | 下一篇

    FREEBSD下VINUM做軟RAID過程

    發布: 2007-7-13 21:17 | 作者: 佚名    | 來源: 轉載     | 查看: 58次 | 進入軟件測試論壇討論

    領測軟件測試網

    今天新裝一個FREEBSD服務器,結果機器上面沒有陣列卡,兩個72G SCSI硬盤做RAID1,找遍所有的論壇,新聞組也沒有一篇好一點關于VINUM的文檔,特別是中文的資料,簡直是少之又少,從下午3點裝到現在,趁著硬盤正在同步,將自己的一點安裝心得寫出來

    參考文檔:http://devel.reinikainen.net/docs/how-to/Vinum/
    一:安裝環境
    SERVER: HP COMPAQ DL140
    SCSI卡:普通SCSI卡
    硬盤:HP U320 72G HARD DISK
    操作系統:FreeBSD 5.2.1

    二:安裝過程
    1:系統安裝
    安裝系統的過程和普通安裝一樣,需要注意的是安裝的過程中不需要將第二個硬盤進行分區工作,后面直接導入DISKLABEL的方法會比較簡單。尤其需要注意的是,在對主硬盤進行分區的時候建議最好先建立SWAP,然后建立根文件系統,最后才建立其他(我的安裝中為了圖方便,只建立了ROOT和SWAP),因為這樣的話SWAP的地址偏移量就從0開始,方便后面對OFFSET的計算。
    系統安裝完畢后,啟動選擇畫面選擇4進入單用戶模式,輸入命令:
    代碼:
    mount -u /
    VINUM必須在啟動時刻在內核中有效,所以編輯/boot/loader.conf文件,加入下面的語句
    代碼:
    vinum_load="YES"
    vinum.autostart="YES"

    第二句話的含義是VINUM在啟動時候自動從內核中收集需要的磁盤信息。
    2:設置第一個硬盤
    現在我們需要在第一個硬盤上增加一個新的文件系統,文件系統的類型為VINUM,輸入命令:
    代碼:
    bsdlabel /dev/da0s1
    你將看到下面的信息:
    代碼:
    8 partitions:
    #             size               offset         fstype       [fsize  bsize  bps/cpg]
      a:    140158360     2097152      4.2BSD       2048   16384 28552
      b:       2097152                  0         swap     
      c:     142255512                0        unused      0            0         0
    現在我們需要增加一個新的文件系統,需要從硬盤的16扇區開始覆蓋整個硬盤,也就是說將把整個硬盤當作鏡像MIRROR RAID1中的一個盤,首先將原始的信息保存為一個文件,輸入命令:
    代碼:
    bsdlabel /dev/da0s1 > /home/root/da0s1
    然后將原始信息備份:
    代碼:
    cp /home/root/da0s1 /home/root/da0s1.bak
    然后編輯文件/home/root/da0s1,形成如下的:
    代碼:
    8 partitions:
    #             size               offset         fstype       [fsize  bsize  bps/cpg]
      a:    140158360     2097152      4.2BSD       2048   16384 28552
      b:       2096871                  281       swap     
      c:     142255512                0        unused      0            0         0
      e:     142255496              16      vinum
    和上面相比較,總共有三個地方發生了變化,第一是SWAP的offset,第二是swap的大小,第三是增加了一個新的文件系統,類型為vinum。
    先說第一處變化是將原來扇區為0的SWAP變為了開始扇區281,第二是為了保持根文件系統的不變化,所以將SWAP的大小減少281個扇區(這個很重要,不然就會發生兩個分區重疊的現象),第三個增加了新的開始扇區為16,大小為整個硬盤大小減去16個扇區的大小,實際上這個大小就是UNUSED類型的大小減去16。
    然后將這個配置文件導入現在的系統,輸入命令:
    代碼:
    bsdlabel -R /dev/da0s1 /home/root/da0s1

    如果沒有提示,則說明成功的編輯了disklabel,如果提示分區重疊等提示,則說明OFFSET和SIZE計算錯誤,重新輸入
    代碼:
    bsdlabel /dev/da0s1
    則可以看見新的變化
    【注意】:原來的英文文檔中是使用bsdlabel -e /dev/da0s1這樣的方式來進行編輯的,強烈建議不要這樣,因為這樣的方式作出的更改,如果出現錯誤,例如分區重疊等錯誤沒有任何的提示,同時文件系統也不會有任何的變化3:開始VINUM
    到現在為止我們已經成功的修改了文件系統信息,下面將配置VINUM的第一個硬盤,輸入命令
    代碼:
    vinum
    將進入VINUM的命令行模式,退出輸入CTRL+D
    編輯文件/etc/vinum.conf(這個文件名稱隨便取,沒有關系的),內容如下:
    代碼:
    drive m1 device /dev/da0s1e
       volume root
          plex org concat
            sd len 140158360s driveoffset 2097136s drive m1
       volume swap
          plex org concat
             sd len 2096871s driveoffset 265s drive m1
    在這個文件中,其中第一行是聲明有一個盤,名稱為m1,在設備/dev/da0s1e上,其中da0s1e就是我們剛才編輯的新增加的partition e
    ,這里最值得注意的是driveoffset的值,因為len即size是不變的,但是driveoffset一定是原來的offset值減去16s,S即sector,因為這個偏移值是在/dev/da0s1e基礎上的偏移扇區值,da0s1e已經是從第16扇區開始的,所以driveoffset一定是原來的offset值減去16s。
    輸入命令VINUM進入VINUM命令行模式,輸入LIST命令可以看到現在還沒有建立任何DRIVE,PLEX以及SUBDISK。
    輸入命令:
    代碼:
    create -f /etc/vinum.conf
    可以看到成功的建立了DRIVE,PLEX以及SUBDISK和VOLUME,退出VINUM命令行模式,現在已經成功的建立了兩個設備,分別為/dev/vinum/root以及/dev/vinum/swap,現在來測試root的大小以及開始位置是否正確,輸入命令:
    代碼:
    fsck -n -t ufs /dev/vinum/root
    如果成功的話可以看到進行5個步驟的磁盤檢查,如果錯誤的話將收到下面的提示信息:
    代碼:
    # fsck -n -t ufs /dev/vinum/root
    ** /dev/vinum/root (NO WRITE)
    Cannot find file system superblock
    /dev/vinum/root: CANNOT FIGURE OUT FILE SYSTEM PARTITION
    這樣的錯誤表示在vinum.conf文件中VOLUME的LEN或者DRIVEOFFSET計算錯誤,在 vinum命令行下輸入resetconfig命令可以清除原來的配置,重新使用create命令導入修改后的配置文件,再次進行fsck檢查,重復上面的步驟直到root文件系統正確為止。
    4:修改fstab文件
    修改/etc/fstab文件,將原來的/掛接點由/dev/da0s1a改為/dev/vinum/root,同時將原來的交換分區由/dev/da0s1b改為/dev/vinum/swap,現在可以重新啟動系統來查看只有一個主盤的RAID1系統:-)
    5:設置第二個硬盤
    第二個硬盤的設置大同小異,完全可以使用命令
    代碼:
    bsdlabel -R /dev/da1s1 /home/root/da0s1
    來對第二個硬盤進行分區。
    在原來的/etc/vinum.conf文件后面增加一段,內容如下:
    代碼:
    drive m2 device /dev/da1s1e
       volume root
          plex org concat
            sd len 140158360s driveoffset 2097136s drive m2
       volume swap
          plex org concat
             sd len 2096871s driveoffset 265s drive m2
    最后進入VINUM的命令行模式,首先resetconfig清除原來的配置,然后使用
    create -f /etc/vinum.conf命令來導入配置,成功之后我們可以使用list命令查看現在已經有了2 drivers,2 volumes,4 plexes,4 subdisks
    其中subdisk有兩個的狀態為empy,plex有兩個的狀態為faulty,這是正常的,因為現在只有m1上面有數據,m2上面沒有數據,兩個plex有差異,所以其狀態為faulty。輸入命令:
    代碼:
    start root.p1.s0
    可以將root.p0.s0的數據copy到root.p1.s0上面,至此RAID1系統完畢

    寫得好累,寫這個的主要目的是將我安裝過程中容易出錯的一些地方羅列出來,方便大家以后配置VINUM少走彎路,要詳細了解VINUM的原理才能舉一反三的配置RAID 0+1 RAID 5等等,這里建議一定要將man vinum以及vinum官方網站的文檔全部啃一遍...

    文章來源于領測軟件測試網 http://www.kjueaiud.com/


    關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
    版權所有(C) 2003-2010 TestAge(領測軟件測試網)|領測國際科技(北京)有限公司|軟件測試工程師培訓網 All Rights Reserved
    北京市海淀區中關村南大街9號北京理工科技大廈1402室 京ICP備10010545號-5
    技術支持和業務聯系:info@testage.com.cn 電話:010-51297073

    軟件測試 | 領測國際ISTQBISTQB官網TMMiTMMi認證國際軟件測試工程師認證領測軟件測試網

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>