| 4、因为MOSIX有另外的分支openmosix,因为版权问题不同(后面将会介绍),openmosix更开放一些,而且openmosix的安装 |
| 相对简单,笔者推荐没有经验的初学者使用,下面是openmosix的安装和基于openmosix的客户端配置。注意:MOSIX和openmosix |
| 虽然都是MOSIX原理下的软件,但是互相是不能通讯的,因此一个集群系统里要统一使用一种平台。openmosix是使用rpm为 |
| 安装包的,事实上只是把编译好的内核直接挂接到系统里,并没有经过你自己的编译,对于初学者而言要方便许多。以下操作 |
| 是在刚安装完RedHat Linux 7.2的系统上完成的,除openmosix的软件包外,不需要其他任何的软件包,缺省目录在/usr/src/下。 |
| 可根据情况安装SMP版本,openmosix-kernel-2.4.18-openmosix2.i386.rpm版本适合于所有X86体系的处理器,openmosix-kernel |
| -2.4.18-openmosix2.i686.rpm版本适合本例,openmosix-kernel-2.4.18-openmosix2.src.rpm是包含kernel-2.4.18 |
| 和openmosix内核补丁的源代码。当安装完成后启动时就可以看到openmosix的启动项。 |
| cd /usr/src/ |
| rpm -Uvh openmosix-kernel-2.4.18-openmosix2.i686.rpm |
| rpm -Uvh openmosix-kernel-2.4.18-openmosix2.src.rpm |
| rpm -Uvh openmosix-tools-0.2.2-1.i386.rpm |
|
|
5、下面是利LTSP配置客户端系统,首先需要安装必要的软件包。并将文件安装放到到适当的路径下。 |
| rpm -Uvh dhcp-3.0.1rc9-1.i386.rpm |
| rpm -Uvh dhcpcd-1.3.22pl1-7.i386.rpm |
| rpm -Uvh mknbi-1.2-6.noarch.rpm |
| rpm -Uvh ltsp_core-3.0-11.i386.rpm |
| rpm -Uvh ltsp_kernel-3.0-3.i386.rpm |
| rpm -Uvh ltsp_floppyd-3.0.0-2.i386.rpm |
| tar xvfz ltsp_initrd_kit-3.0.1-i386.tgz |
| mv ltsp_initrd_kit /usr/src/ |
|
|
| 6、因为使用的是openmosix,你需要单独展开的linux-2.4.18.tar.gz文件和openmosix的补丁文件,需要将openmosix的补丁 |
| 加入,你在安装openmosix-kernel-2.4.18-openmosix2.src.rpm时,源文件会存在于/usr/src/redhat/SOURCES/目录下,同时 |
| 还有内核补丁文件。 |
| cd /usr/src/redhat/SOURCES/ |
| tar xvfz linux-2.4.18.tar.gz |
| mv /usr/src/redhat/SOURCES/linux /usr/src/linux-2.4.18-om2 |
|
|
| 7、将内核补丁文件展开并加入内核源文件,并作编译前准备,将旧的内核编译中间结果清理干净: |
| cp /usr/src/redhat/SOURCE/openMosix-2.4.18-2.gz
/usr/src/linux-2.4.18-om2/ |
| gunzip /usr/src/linux-2.4.18-om2/openMosix-2.4.18-2.gz |
| cd /usr/src/linux-2.4.18-om2 |
| patch -Np1 < openMosix-2.4.18-2 |
| make mrproper |
|
|
| 8、修改Makefile文件的EXTRAVERSION部分,加入-om2标记: |
| vi Makefile |
| |
| EXTRAVERSION = -om2 |
|
|
| 9、将LTSP的内核编译配置文件备份并放到内核编译目录下: |
| cp /opt/ltsp/kernel-configs/config.2.4.9-ltsp-5
/usr/src/config.backup/ |
| cp /opt/ltsp/kernel-configs/config.2.4.9-ltsp-5
/usr/src/linux-2.4.18-om2/.config |
|
|
| 10、启动内核编译配置菜单,注意选择openmosix选项中的进程迁移(process migration
support),直接文件系统访问 |
| ( Direct File-System Access),openmosix文件系统(OpenMosix File-System),注意不要选择内核调试(Kernel
Debugger)。 |
| 其他的配置根据具体需要,没有SCSI硬盘可以去掉SCSI选项,不需要声卡,也可以去掉。 |
|
| 11、编译内核一般分为编译库(make dep),编译启动映象(make bzImage),编译模块(make
modules) 和安装模块 |
| (make modules_install)。系统可以连续完成几步操作: |
| make dep && make bzImage &&
make modules && make modules_install |
|
|
| 12、如果系统没有提示错误并中止,将会显示新的内核映象的大小,模块编译完成并安装等信息。编译完成的内核将作为客户端 |
| 的内核系统,因此需要将模块复制到LTSP的目录下: |
| cp -R /lib/modules/2.4.18-om2 /opt/ltsp/i386/lib/modules/ |
|
|
| 13、完成后将创建符合无盘启动的系统,使用LTSP的初始化工具就可以完成,进入/usr/src/ltsp_initrd_kit目录,修改 |
| buildk文件的最后部分,用#注释掉原有prepare_kernel部分,并添加适合本例的命令。 |
| cd /usr/src/ltsp_initrd_kit/ |
| vi buildk |
| |
# prepare_kernel /usr/src/linux-2.4.9-ltsp
2.4.9-ltsp-5 |
| # prepare_kernel /usr/src/linux-2.4.9-ltsp-lpp
2.4.9-ltsp-lpp-5 lpp |
| prepare_kernel /usr/src/linux-2.4.18-om2
2.4.18-om2 |
|
|
| 14、修改完后运行buildk将会在/tftpboot/lts/下创建新的内核启动文件。 |
|
| 15、建议创建内核启动文件连接,这样不必频繁修改配置文件的内容,下次只要改变文件名就可以更换内核了。 |
| cd /tftpboot/ltsp/ |
| ln -s vmlinuz-2.4.18-om2 vmlinuz-openmosix |
|
|
| 16、修改/etc/dhcpd.conf文件,使动态地址分配支持新的启动内核。修改内核启动文件的名称和路径,如果该文件不存在, |
| 可以参考后面的配置文件。 |
| cd /etc/ |
| vi dhcpd.conf |
| |
| filename "/lts/vmlinuz-openmosix"; |
|
|
17、随后你可以添加自动分配主机名,这样每台客户机启动时自动生成主机名,注意主机名要和你的hosts文件对应。本例中自动 |
| 生成的主机名将是node001到node253,数字部分是根据IP地址补齐三位数得到的。 |
| vi dhcpd.conf |
| |
| filename "/lts/vmlinuz-openmosix"; |
| option host-name = concat("node"
, binary-to-ascii( 10, 8, "", substring(reverse(
1, leased-address), 0, 1))); |
|
|
| 18、检查重要的服务进程是否启动,并使新配置文件生效。 |
| chkconfig tftp on |
| chkconfig dhcpd on |
| service dhcpd restart |
| service xinetd restart |
|
|
| 19、创建mosix.map文件,并保持服务器和客户端的一致。 |
| cd /etc/ |
| vi mosix.map |
| |
| 1 192.168.0.254 1 |
| 2 192.168.0.1 253 |
| |
| cp /etc/mosix.map /opt/ltsp/i386/etc/ |
|
|
| 20、复制openmosix的工具到客户端的目录中。 |
| cp /sbin/setpe /opt/ltsp/i386/sbin/ |
| cp /bin/mosrun /opt/ltsp/i386/bin/ |
| cp /bin/mosmon /opt/ltsp/i386/bin/ |
| cp /bin/mosctl /opt/ltsp/i386/bin/ |
| cp /bin/migrate /opt/ltsp/i386/bin/ |
|
|
| 21、因为/opt/ltsp/i386目录最后是客户端的根文件系统,需要的工具都可以复制到相应的目录中。因为 |
| /opt/ltsp/i386/etc/hosts文件是连接,因此需要先删除后复制新文件。 |
| cp /bin/touch /opt/ltsp/i386/bin |
| rm -f /opt/ltsp/i386/etc/hosts |
| cp /etc/hosts /opt/ltsp/i386/etc/ |
| cp /etc/rc.d/init.d/openmosix /opt/ltsp/i386/etc/rc.openmosix |
|
|
 |