您的位置:首页 > 大数据 > 人工智能

在装有raid卡的服务器上安装Ubuntu

2011-12-28 22:13 127 查看
1、开机时进入Raid Bios,选择创建Raid,这个大家随意,按需自选。

2、然后放入ubuntu系统盘,步骤与一般安装无异,直到识别硬盘时会发现无法识别硬盘

3、用跟你需要装的系统相同内核的系统,重新编译下rockraid的驱动程序,源码可以去官网下载,貌似最新的是v1.3

4、编译过程如下

首先解压该文件

然后依次修改以下文件(“-”为去掉该行,“+”为加上该行)

修改 inc/linux/Makefile.def

-KERNEL_VER := 2.$(shell expr `grep LINUX_VERSION_CODE $(KERNELDIR)/include/linux/version.h | cut -d\ -f3` / 256 % 256)

+KERNEL_VER := $(shell uname -r | cut -f1-2 -d.)

+ifneq ($(KERNEL_VER), 3.0)

ifneq ($(KERNEL_VER), 2.6)

ifneq ($(KERNEL_VER), 2.4)

-$(error Only kernel 2.4/2.6 is supported but you use $(KERNEL_VER))

+$(error Only kernel 2.4/2.6/3.0 is supported but you use $(KERNEL_VER))

endif

endif

+endif

-ifeq ($(KERNEL_VER), 2.6)

+ifeq ($(KERNEL_VER), $(filter $(KERNEL_VER),3.0 2.6))

修改osm_linux.h

-#ifndef AUTOCONF_INCLUDED

-#include <linux/config.h>

-#endif

修改os_linux.c

-blkdev_get(bdev, FMODE_READ)

+blkdev_get(bdev, FMODE_READ, NULL)

修改osm_linux.c

-static int hpt_queuecommand (Scsi_Cmnd * SCpnt, void (*done) (Scsi_Cmnd *))

+static int hpt_queuecommand_lck (Scsi_Cmnd * SCpnt, void (*done) (Scsi_Cmnd *))

同样,在osm_linux.c中,在static int hpt_reset (Scsi_Cmnd *SCpnt)之前,添加以下

+#ifdef DEF_SCSI_QCMD

+DEF_SCSI_QCMD(hpt_queuecommand)

+#else

+#define hpt_queuecommand hpt_queuecommand_lck

+#endif

static int hpt_reset (Scsi_Cmnd *SCpnt)

{

修改install.sh

case ${KERNEL_VER} in

2.4 )

OBJ=o

MODVER=`modinfo -f%{kernel_version} ${PWD}/${TARGETNAME}.${OBJ}`

;;

2.6 )

OBJ=ko

MODVER=`modinfo -F vermagic ${PWD}/${TARGETNAME}.${OBJ} | cut -d' ' -f1`

;;

+ 3.0 )

+ OBJ=ko

+ MODVER=`modinfo -F vermagic ${PWD}/${TARGETNAME}.${OBJ} | cut -d' ' -f1`

+ ;;

esac

文件修改完成

接下来就可以编译驱动

进入products,执行make命令,执行完毕后会有条警告命令,不用理会,将制作出来的驱动放入u盘,链接到要安装系统服务器上,放进安装光盘,执行安装,直到扫描硬盘那步,你会发现系统只识别了u盘,没有硬盘,不要慌,选择返回,然后选择shell命令行模式,命令如下

首先查看你的u盘,挂载它(例如u盘的盘符为/dev/sda1)

mount /dev/sda1 /mnt

找到你放进去的驱动,执行以下命令

insmod 驱动名称

如果没有任何提示,说明成功导入驱动

输入exit推出命令行

重新选择扫描硬盘

这次发现硬盘出现了,按照步骤安装完系统(网上有其他方法说这步需要不重启,而是选择将驱动导入到initrd.img中,不过我怎么试都没成功,以下是我做的方法,仅供参考),直接重启电脑,进入安装模式后选择修复模式,按照以上步骤让系统识别硬盘,返回后,选择修复模式,选择“/”分区启动命令行,如果你的/boot或其他盘符没有在/分区上,那么请挂载他们。拷贝/boot/initrd.img-版本号,到你的u盘,放到其他电脑上,解压他(步骤参考此处),将驱动拷贝进/lib/你的版本号/kernel/driver/scsi/中,再次压缩(步骤参考以上),将此文件替换服务器中的文件,重启服务器,ok,完成。

注:驱动有两个不同的版本,最后压缩进initrd的应该是server版本,请找对应的机器进行编译。

欢迎大家指出错误!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  职场 Ubuntu 休闲