分享
 
 
 

ALPHALinux亲密接触

王朝system·作者佚名  2008-05-19
窄屏简体版  字體: |||超大  

机房里面有几台“相约九八”那一年购买的 Alpha 老服务器,跑了几年 Alpha NT4.0 ,分别为办公局域网提供服务。几个机器一直有事无事“罢工”,经常要去控制面板重起服务甚至重起机器,不堪其烦。最可恶的是比尔盖茨竟然宣布不再支持这种架构了,升级打补丁都找不到人管了。 Alpha NT 平台下其实什么都不能运行,一般基于 Intel 平台编译的软件不能正常运行,连“ Winzip ”都没有;更有甚者,想增加一块 3Com 网卡,奈何没有 Alpha 平台的驱动,总不能一直买 Dec 片子的卡吧,于是决定换操作系统。 COMPAQ 的 TRU-64 给了一个天文数字的报价,想来想去还是Linux吧,经过多方检索索,发现 Alpha Redhat 6.2 算是一个比较经典的版本,参考资料也比较多,于是决定用之。 拼死拼活下载了 Alpha Redhat 6.2 的 ISO 文件,刻成光盘。仔细阅读 readme 文件,同时搜刮redhat 和 compaq 的网站下载秘籍,为了方便阅读,打印之。

先折腾 AS800 的机器,这样的机器我们有三台,两个 AS800 ,还有一个是 DS3300 ,据介绍 DS3300 是 AS800 的“白壳”版本,除了机壳是白色的而 AS800 是兰灰色,其他都一样。后来又折腾了一个 AS1200 的机器,大同小异,这里一并介绍。

Alpha 的 BIOS 分为 SRM 模式和 AlphaBios 两种状态, SRM 是命令行的,类似 Unix 的界面, AlphaBios 是图形界面,主要用于启动 Windows NT 。 Linux 在两种状态都可以启动, SRM 模式用 aboot , AlphaBios 下用 milo.exe ,由于 Milo 需要针对具体机型预先编译好的内核,正好我这种机器找不到,于是就决定用 SRM 状态了。按下面板上的 HALT 按钮,启动机器,系统就自动进入 SRM 模式而不启动 Alphabios 。 SRM 模式的提示符是“ ”。

据秘籍介绍,Alpha下的Linux是有SRM调用aboot来启动的,比PC机上的lilo要古怪许多,而且九八年的老版本的SRM是不支持调用 Aboot 的,于是第一个难关就是升级 SRM 的 Firmware , AS800 的最新 Firmware 是 5.8 的, AS1200 的最新版本是 6.0 的,在 compaq 网站能下载,一并下载。 AS800 的原 Firmware 不支持软盘升级,只好祭起bootp+tftp 的法宝,将我的笔记本(预装有 Linux )启动到 Linux 系统,配置 dhcpd.conf 主要在 subnet 区域中加上:

allow bootp;

allow booting;

filename "/tftproot/as5.exe";

然后在根目录建立一个叫 tftproot 的子目录,将 AS800 的刷新文件拷贝到此目录并且改名教 as5.exe ,在将 /etc/inetd.conf 中 tftp 这一行前面的 # 去掉,启动 dhcpd 和重起 inetd 。将笔记本网卡和 AS800 用交叉线连接起来,启动启动 AS800 将自动进入刷新程序。 AS1200 支持软盘更新,在 SRM 命令行下输入 lfu ,系统提示选择升级程序来源,选择软盘 DVA0 ,然后就进入升级界面,用 update 命令就可以完成升级。需要注意的是我的 AS1200 的 Firmware 版本是 5.1 的,系统不支持从 5.1 直接升级到 6.0 ,要先升级到 5.3 ,好在升级到 5.3 只需要一张软盘,然后再用两张软盘升级到 6.0 , COMPAQ 的说明文件上讲 6.0 是三张软盘,其实第三张用不着。和 Intel 机器刷新 BIOS 一样,升级的过程中不能关机或重起,一定要等到升级结束。

然后是准备硬盘,在 AS800 下有 exer 命令,可以对硬盘进行低级格式化, AS1200 中没有(或者叫别的什么名字而我没有找到),所以这一步干脆省略。然后是把硬盘写保护打开,先 show dev 查看一下硬盘和光盘的设备编号,比如我的 AS1200 机器上光盘是 DKA400 ,硬盘有三个 DKB0 、 DKB100 和 DKB200 ,用 chmod +w dkb* 打开写保护。由于这些机器原来装有 NT 所以要让 SRM 下次启动不再进入 AlphaBios ,用 set auto_action halt 就可以确保下一次启动还在 SRM 下面。

终于可以开始安装 Linux 了,将光盘放入光驱,使用命令:

boot dka400 -file kernels/generic.gz -flags "root=/dev/scd0"

系统启动以后基本安装界面与基本与PC版本相同,需要留意的是对启动硬盘进行分区的时候一定要为 aboot 留下相应的空间,而且 SRM 不支持启动普通格式的 Partition Table ,所以用来启动的那块硬盘上应该是用 BSD 风格的 Disk Label 分区格式。所以在选择安装模式的时候一定要选择“ Custom ”,然后在对硬盘进行分区之前点下“Use Fdisk”的按钮,由fdisk程序进行分区(不知道为什么其DiskDruid和自动分区为什么分的不对)。对启动盘(比如 dkb0 在 Linux 下叫 sda )进行分区的时候需要注意:在 Fdisk 下使用 b 命令先进入 BSD 格式分区,用 d 删除现有的所有分区,然后用 n 建立至少 3 个分区,注意磁道 0-15 要空出来给 aboot 使用,也就是说第一个分区从 16 道开始,建立一个约 50M 的 ext2 格式分区编号为“ a ”,然后建立一个 256M 的 swap 分区“ b ”,最后剩下的作一个主分区“ c ”。将 50M 的分区挂在 /boot 目录,大分区作为“ / ”,剩下其他的硬盘就可以按照普通的方式全部进行分区了。注意在 Diskdruid 中显示 sda 应该是没有占满 100% 。如下是我的系统启动盘的分区表:

# /sbin/fdisk /dev/sda

Device contains neither a valid DOS partition table, nor Sun or SGI disklabel

Building a new DOS disklabel. Changes will remain in memory only,

until you decide to write them. After that, of course, the previous

content won't be recoverable.

Command (m for help): b

Warning: starting partitions at cylinder 1 will be bad for the health of your

partition table -- start at cylinder 2 instead!

BSD disklabel command (m for help): p

3 partitions:

# size offset fstype [fsize bsize cpg]

a: 80325 240975 ext2 # (Cyl. 16 - 20)

b: 530145 321300 swap # (Cyl. 21 - 53)

c: 7518420 851445 ext2 # (Cyl. 54 - 521)

这一步一定要留意,我就是开始没有注意这样的分区方式总是安装以后无法启动,造成一次次的白装。

安装完毕以后系统会回到 SRM 状态,使用

boot dkb0 -fl 0

就可以启动系统了,然后在 Linux 中用 setup 设置好 X-window 环境和关闭一些不用的启动选项,比如我要自行编译新的 Apache ,所以系统原配的 httpd 就关了,还有一个叫 Kuduz 的是检测新硬件的,服务器不用经常改硬件,所以也关闭了。

系统原配内核是 2.2.14 的,建议升级,当然要是升级到 2.4 的话同时需要更新很多系统库,所以还是升级到 2.2 的较新版本为好,经过测试 2.2.20 不能在 Alpha 平台编译,好像是 PCI 驱动那一块出了什么问题,所以我用的是 2.2.19 。和 Intel 版核心不同,编译 Alpha 版本的核心用这样的命令:

#make mrproper

#make menuconfig

#make dep

#make boot

#make modules

#make modules_install

在 make menuconfig 的时候可以根据现有 /proc/cpuinfo 中的系统类型来选择合适的 CPU 类型,这样可以减少核心的冗余从而提高系统运行效率,比如我的 AS800 的 CPU 类型是 Noritake , AS1200 的类型是 Rawhide 。将需要的硬件驱动都编译进去, SCSI 卡和网卡可以参看 /var/log/dmesg 文件,比如我的 AS1200 的 SCSI 卡是需要 NCR53c8xx 和 Qlogic ISP 的驱动,而 Alpha 的 Server 一般都是用的 DEC 的芯片网卡,所以使用 Tulip 的网卡驱动。还要注意的就是在分区格式选项中要加上 BSD 风格分区的支持,否则新核心启动时会 Kernel Panic 。

编译完毕以后到 arch/alpha/boot 目录下会看见新的核心 vmlinux.gz ,将其拷贝到 /boot 目录,同时改为一个比较简单的名字,比如 mykernel 。再把核心源程序目录下的 System.map 拷贝到 /boot 目录。然后编辑 /etc/aboot.conf 增加一句:

1:1 /mykernel root=/dev/sda3

用 #halt 命令关闭 Linux ,重新回到 SRM 模式,作如下设置:

set os_type UNIX

set boot_osflages 1

set auto_action boot

boot

这样就可以启动新版本的核心了。

以后如果要安装什么新软件,要是二进制文件则需要寻找专门为 Alpha 编译的,其实最简单的是直接找源码在此平台重新编译就可以了,我在一个 AS800 上运行了 Bind9 作为 DNS 服务器,一个运行 DHCP2 作为动态地址分配服务器,还有一个用 ipchains 作 IP 伪装防火墙,还有一个 AS1200 运行 Apache 1.3.24+PHP4.2.0+Mysql3.23.48 作为 Webserber 。 Alpha 系统相当稳定高效。 As1200 是新装的,其他 AS800 到现在已经连续运行半年非常稳定。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有