刀片伺服器硬碟啟動Linux獨立安裝

←手機掃碼閱讀     火星人 @ 2014-03-09 , reply:0

本文將通過下面的九個步驟,為IBM BladeCenter® HS20刀片伺服器去創建一個可啟動的磁碟(驅動器),自安裝硬碟驅動,運行SUSE Linux企業伺服器10.(這些步驟也可以適用於其它的刀片伺服器).當系統第一次從這個驅動啟動時,它將會自動地開始在磁碟上安裝Linux®,這種操作可以減輕操作系統的預加負荷並且減輕用戶的工作量.

從兩個系統開始:

·系統A用SLES10預載入,grub作為啟動載入器.它有兩個SCSI磁碟介面,但是只有第一個被使用.

·系統B是一個只有一個磁碟驅動器的空系統,它沒有操作系統的載入.我們將用系統A給系統B準備自安裝的硬碟驅動器.

首先是我們製作一個自安裝的磁碟.用兩個分區格式化磁碟:

·第一個(小一些的)分區將包含SUSE安裝介質;我們把它稱作安裝分區.

·第二個(大一些的)分區是為操作系統準備的;我們稱之為操作系統分區.

第一步:正確的cabling

將兩個系統的電源都關閉,從系統B拔掉磁碟(磁碟B),把磁碟B插入系統A的第二個SCSI磁碟介面.然後從它自己的磁碟(磁碟A)啟動系統,也就是第一個SCSI磁碟.

第二步:磁碟B分區

使用fdisk命令給磁碟B分區.如果你使用SCSI磁碟,磁碟名為/dev/sdb(如果你使用另一種類型的磁碟,例如,一個IDE磁碟,因此需要調整名稱.)你可以使用fdisk –l命令來查看你磁碟設備的名稱.

a.運行fdisk /dev/sdb

b.輸入d來刪除已經存在的分區.如果你的磁碟為空你也可以跳過這一步.

c.輸入n來添加一個新的分區.通過選擇主分區和選擇一號作為分區號,來創建安裝分區作為主分區.接下來,分配一個扇區從1到900(大概6.3GB是合適的,SUSE安裝介質需要大概4.3GB)來展示列表1.你可以根據需要來調整.

列表1:創建安裝分區

blade8:~ # fdisk /dev/sdb   The number of cylinders for this disk is set to 8924.   There is nothing wrong with that, but this is larger that 1024,   and could in certain setups cause problems with:   1) software that runs at boot time (e.g., old versions of LILO)   2) booting and partitioning software from other OSs (e.g., DOS FDISK, OS/2 FDISK)      Command (m for help): n   Command action       e   extended       p   primary partition (1-4)             p             Partition number (1-4) : 1             First cylinder (1-8924, default 1):             Using default value 1             Last cylinder or  size or  sizeM or  sizeK (1-8924, default 8924) : 900             Command (m for help):

d.輸入n來創建另一個分區(操作系統分區)如下列列表2所示:

列表2:創建操作系統分區

Command (m for help): n            Command action                  e   extended                  p   primary partition (1-4)             p             Partition number (1-4) : 2             First cylinder (901-8924, default 901):             Using default value 901             Last cylinder or  size or  sizeM or  sizeK (1-8924, default 8924) :              Using default value 8924                          Command (m for help):

但是在這個分區上不要存儲任何數據;在SUSE安裝過程中這個分區將被格式化.

e.輸入a來在第一個分區(安裝分區)切換啟動標記,如下列列表3所示.選中使分區1可啟動.

列表3:使安裝分區可啟動

Command (m for help): a   Partition number (1-4) : 1

f.輸入w來寫入所有分區信息到表格並且退出分區,如列表4所示:

列表4:寫入分區信息

Command (m for help): w   The partition table has been altered;      Calling ioctl() to re-read partition table.   Syncing disks.

這一步將把變化提交到磁碟.

現在就已成功地將磁碟B分區.

第三步:格式化分區

用ext3文件系統來格式化磁碟B的第一個分區:

列表5:格式化第一個分區

blade8:~ # mkfs.ext3 /dev/sdb1   mke2fs 1.38 (30-Jun-2005)   Filesystem label=   OS type: Linux   Block size=4096 (log=2)    Fragment size=4096 (log=2)   904960 inodes, 1807304 blocks   90365 blocks (5.00%) reserved for the super user   First data block=0   56 block groups   32768 blocks per group, 32768 fragments per group   16160 inodes per group   Superblock backups stored on blocks:          32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632      Writing inode tables: done   Creating journal (32768 blocks): done   Writing superblocks and filesystem accounting information: done      The filesystem will be automatically checked every 37 mounts or 180 days,    whichever comes first. Use tune2fs -c or -I to override.

第四步:安裝grub 啟動程序

如下所示在磁碟B的第一個分區安裝grub啟動程序:

a.掛載第一個分區到文件夾,例如/mnt/sdb. 運行 mount /dev/sdb1 /mnt/sdb.

b. 從/boot/grub文件夾複製grub 啟動文件到/mnt/sdb/boot/文件夾;

包括grub進程文件和grub配置文件.

c.輸入下面的命令來安裝grub到磁碟B的第一個分區,如下列表六所示:grub-install --root-directory=/mnt/sdb /dev/sdb1 -recheck:

列表6:安裝grub

blade8:~ # grub-install -root-directory=/mnt/sdb /dev/sdb1 -recheck   Probing devices to guess BIOS drives. This may take a long time.   Installation finished. No error reported.   This is the contents of the device map /mnt/sdb/boot/grub/device.map.   Check if this is correct or not. If any of the line is incorrect,   Fix it and re-run the script 'grub-install'.      (fd0)   /dev/fd0   (hd0)   /dev/sda   (hd1)   /dev/sdb

你已經成功地製作了磁碟B的帶grub的可啟動的磁碟安裝分區.接下來,當磁碟啟動時你需要使grub開始SUSE安裝程序.首先,你需要複製安裝內核和initrd文件到安裝分區,然後需要準備好grub配置文件.

第五步:為安裝準備內核

通過從SUSE安裝ISO文件來複制安裝內核,從而為安裝準備好內核.創造一個/mnt/sdb/boot文件夾,然後從ISO文件/boot/i386/loader/複製linux文件和initrd到新的文件夾.

第六步:準備Linux的安裝鏡像文件

通過創建一個/mnt/sdb/SUSE文件來為Linux安裝鏡像文件做準備,複製所有在SUSE ISO鏡像里的文件到新的文件夾.

注意:你複製ISO的內容到指定目錄.SUSE 10不支持直接調用ISO文件.如果你只把ISO文件放到這裡,那麼系統將不能找到安裝資源文件.

第七步:為SUSE安裝做準備

現在為SUSE安裝準備autoinst.xml文件.使用yast 自動安裝創建autoinst.xml文件.你需要改變文件的如下兩部分:

a.在啟動管理器部分添加一區,這樣用戶可以選擇這個啟動菜單來啟動系統.系統將開始再一次安裝操作系統,並且將回到最初狀態.添加如下的代碼到啟動管理器部分:

列表7:更新的啟動管理器部分

<bootloader>       <sections>   ...     <section>           <append>ramdisk_size=8192 install=hd://sda1/SUSE              autoyast=file:///mounts/extra/autoinst.xml splash=silent showopts</append>           <initrd>(hd0,0)/boot/initrd</initrd>           <kernel>(hd0,0)/boot/linux</kernel>           <lines_cache_id>3</lines_cache_id>           <name>SUSE Linux Enterprise Server 10 Installation</name>           <original_name>install</original_name>           <root>/dev/sda1</root>           <type>image</type>         </section>   ...       </sections>     </bootloader>

注意:如果一個用戶選擇了從這個菜單啟動,那麼所有的在這個磁碟上的數據將會丟失,並且安裝將會格式化這個用戶的分區.

b.改變文件的分區部分來確保安裝不會創建並格式化分區1;這也允許分區隱藏在系統里.下面是autoinst.xml文件1使用的分區部分:

列表8:更新的分區部分

<partitioning config:type="list">       <drive>         <device>/dev/sda</device>         <partitions config:type="list">           <partition>     <create config:type="boolean">false</create>             <filesystem config:type="symbol">ext3</filesystem>             <format config:type="boolean">false</format>             <partition_id config:type="integer">131</partition_id>             <partition_nr config:type="integer">1</partition_nr>             <partition_type>primary</partition_type>             <size>7402719232</size>           </partition>           <partition>             <filesystem config:type="symbol">swap</filesystem>             <format config:type="boolean">true</format>             <mount>swap</mount>             <partition_id config:type="integer">130</partition_id>             <partition_nr config:type="integer">2</partition_nr>             <partition_type>primary</partition_type>             <size>auto</size>           </partition>           <partition>             <filesystem config:type="symbol">reiser</filesystem>             <format config:type="boolean">true</format>             <mount>/</mount>             <partition_id config:type="integer">131</partition_id>             <partition_nr config:type="integer">3</partition_nr>             <partition_type>primary</partition_type>             <size>max</size>           </partition>         </partitions>         <use>all</use>       </drive>     </partitioning>

我們將使用整個磁碟,但是我們不能創建並格式化最初的分區.

你可以定製分區的配置,但是請記住:不要創建並格式化最初的分區.

第八步:複製安裝配置文件

複製SUSE靜默安裝配置文件autoinst.xml到/mnt/sdb ,即磁碟B被掛載的文件夾.

第九步:創建/修改grub配置文件

創建grub配置文件/mnt/sdb/boot/grub/menu.lst,並且添加如下的內容:

列表9:更新grub配置文件

color white/blue black/light-gray   default   timeout 30      title SUSE Linux Enterprise Server 10 Installation     root (hd0,0)     kernel /boot/linux root=/dev/sda1 ramdisk_size=8192       install=hd://sda1/SUSE autoyast=file:///mounts/extra/autoinst.xml       splash=silent showopts     initrd /boot/initrd

第九步需要注意:

·系統將從磁碟找到安裝鏡像,並且安裝鏡像協議位置是hd,這指的是硬碟.

·autoyast的協議應該是文件不是設備.(協議不生效,但是autoyast文檔稱它支持設備,估計是SUSE的一個bug).

·系統將在安裝的時候掛載最初的分區到文件夾/mounts/extra,這樣系統需要在/mounts/extra文件夾中找到autoyast文件.

·這裡我們不能使用附加來為內核添加參量.

完成第九步之後:

·關掉系統A的電源,並把磁碟B從中拔出.

·將磁碟B插入系統B做為驅動盤.

·打開系統B的電源,系統B將開始安裝SUSE.等待系統B安裝操作系統;在安裝的時候系統B將再引導一次,並且自動完成安裝.

·系統B現在就準備好了.

如果用戶想要恢復到最初狀態,用戶可以在系統啟動過程中選擇菜單項SUSE Linux Enterprise Server 10 Installation,系統將格式化用戶的分區並且在用戶的分區安裝SUSE.

這樣我們就大功告成了!

結論:

這些步驟引導你準備一個可啟動的自安裝硬碟驅動.當系統啟動時,系統用這個驅動自動地安裝操作系統.並且安裝進程將自動檢測硬體,在需要改變的時候作出相應改變.這個進程比在磁碟上簡單安裝SUSE更靈活,並且可以使系統從它開始啟動.





[火星人 ] 刀片伺服器硬碟啟動Linux獨立安裝已經有439次圍觀

http://coctec.com/docs/linux/show-post-55753.html