|
|
[原创,参考英文wikipedia上" Installing with Fake-RAID"一文]
[2009年1月]
=前言=
以下“SATA RAID”是指由主板芯片组支持,并在BIOS中配置的,由两块或更多SATA硬盘组成的磁盘阵列.
这篇安装指南的目的在于说明如何硬盘安装archlinux到SATA RAID硬盘上.安装完后windows系统和archlinux可以共存.多重启动使用的是grub4dos.
注意安装完毕后,在linux中SATA RAID分区的设备目录是/dev/mapper/****,而不是/dev/sd*.
=历史=
在linux 2.4 内核中ATARAID内核架构提供了对SATA RAID的支持.在Linux 2.6内核中device-mapper提供了对SATA RAID的支持.Device-mapper在保持SATA RAID的I/O仍然在
内核级别运行同时,将它的设置交给了用户级别程序.这可以从在使用2.6内核时,SATA RAID的检测由用户级别的程序(dmraid)来执行可以看出.
Heinz Maulshagen编写了dmraid工具来检测RAID阵列并创见RAID阵列分区的映射.它支持的控制器基本上是廉价的主板板载SATA 软RAID控制器(软控制器指RAID的传输运算还
是由CPU来执行),例如HPT 37x, Intel, VIA, LSI,和板载硬SATA RAID控制器,如Nvidia NForce,Silicon Image Medley等.
=成功的例子=
在Nforce3芯片组,使用ArchLinxu 2008.12 ISO测试成功[[user:jetair|jetair]]
=备份=
在执行下面步骤备份硬盘中所有重要的资料,本指南并不提供任何担保,你自己将对按照此指南进行操作造成的所有结果负责.如果使用RAID 0 阵列,只要2块硬盘中有一块硬盘
损坏,所有的数据将会丢失.如果保存的数据很重要,建议使用RAID 1阵列或RAID0+1阵列.
=安装步骤=
==概括==
*前期准备
*准备安装文件
*安装grub4dos
*重启
*安装dmraid
*对SATA RAID分区
*格式化和挂载分区
*安装系统
*重启到windows
*完成安装
==前期准备==
*在SATA RAID上安装好windows系统
*为ArchLinux准备分区,不需要格式化
*打印所有你需要的资料
*准备一个U盘(或移动硬盘)
*下载最新的ArchLinux ISO(截止2009年1月,最新版是2008.12,注意本文不适用于2008.06)
*下载grub4dos
*备份所有重要资料,避免它们!可能!在安装时丢失.
==准备安装文件==
*这里假定windows安装到了硬盘的第一个分区
*将下载的ArchLinux ISO拷贝到C盘根目录下,并改名为archlinux.iso
*用压缩工具将iso中core-i686目录解压到U盘根目录(带目录结构)
==安装grub4dos==
*下载grub4dos
*解压缩grub4dos安装包中的vmlinuz,initrd.img,grldr和grldr.mbr到安装盘根目录
*修改c:\boot.ini文件如下(这里假定windows安装在SATA RAID的第一个分区,并且SATA RAID盘是系统第一块硬盘.如果不是,请适当修改)
- [boot loader]
- timeout=3
- default=C:\grldr
- [operating systems]
- multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /noexecute=optin /fastdetect
- C:\grldr="grub4dos"
复制代码
*建立c:\menu.lst如下
- title Install Arch Linux
- root (hd0,0)
- kernel /vmlinuz ro
- initrd /initrd.img
复制代码
==重启==
*重启计算机,通过grub4dos进入arch安装界面
==安装dmraid==
*在启动时主要看启动信息,记下U盘的设备名称(比如/dev/sdc1)
*将U盘上的安装文件链接到安装文件存储目录.先按ALT+F2进入第二控制台.
- # mkdir /win
- # mount -t vfat /dev/sdc1 /win
- # ln -s /win/core-i686 /src
复制代码
*安装dmraid程序,加载device-mapper模块,搜索SATA RAID硬盘分区
- # modprobe dm_mod sata_sil
- # pacman -U /src/core-i686/pkg/dmraid*
- # dmraid -ay
复制代码
*至此SATA RAID分区应该可以被识别.下面来查看分区设备名
*显示(这是一个例子,你的可能有所不同)
- /dev/mapper/control <-- 由dmraid建立,表明dmraid已经发现了raid阵列
- /dve/mapper/nvidia_ddccbcbfp <-- raid硬盘阵列设备名
- /dve/mapper/nvidia_ddccbcbfp1 <-- raid硬盘阵列中第一个分区设备名
- /dve/mapper/nvidia_ddccbcbfp2 <-- raid硬盘阵列中第二个分区设备名
- /dve/mapper/nvidia_ddccbcbfp3 <-- raid硬盘阵列中第三个分区设备名
复制代码
*用笔记下将要安装的ArchLinux的启动分区的设备名,以备一会修改menu.lst使用.
==对SATA RAID分区==
*按ALT+F1进入原来的ArchLinux安装程序,进入分区步骤分区
*选 Prepare Hard Drive
*选Partition Hard Drives
*选"OTHERS"
*用ALT+F2中# ls -la /dev/mapper/*的结果作参考,手动输进设备名并回车
*后续操作同普通分区操作相同
==格式化和挂载分区==
*同普通步骤相同,/dev/mapper/****代表SATA RAID分区
==安装系统==
*设置source,先选第一项"1 ****",再选第二项"SRC *****"
*正常安装系统
*Configure,选"yes"使用hwdetect来检测硬件,其余选no.
*加入你的芯片组模块(如果没有默认加载)和"dm_mod" 到/etc/mkinitcpio.conf的MODULES行(如果你是用RAID 1,你还需要加载"dm_mirror"
*加入"dmraid"到mkinitcpio.conf的HOOKS行,位置在filesystems项前面,sata项后面
==重启到windows==
*修改c:\menu.lst如下
- title Arch Linux
- root (hd0,2)
- kernel /boot/vmlinuz26 root=/dev/mapper/nvidia_ddaebcbfp3
- initrd /boot/kernel26.img
- title Install Arch Linux
- root (hd0,0)
- kernel /vmlinuz ro
- initrd /initrd.img
复制代码
*注意
**root (hd0,2) <--(hd0,2)需要改成Linux的启动分区,比如如果在硬盘第二个启动Linux,则改为(hd0,1).具体请看grub文档.
**kernel /boot/vmlinuz26 root=/dev/mapper/nvidia_ddaebcbfp3 <--如果有/boot单独分区,则改为kernel /vmlinuz26 root=/dev/mapper/nvidia_ddaebcbfp3
**其中"/dev/mapper/nvidia_ddaebcbfp3"需要改为刚才用笔记下的设备名.
**initrd /boot/kernel26.img <--如果有/boot单独分区,则改为kernel /kernel26.img
==完成安装==
*重启系统,正常进入ArchLinux |
|