分享
 
 
 

SPARC中如何安装Linux系统(2)

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

接下来,是格式化分区

mke2fs /dev/sda1

//将第一分区(boot分区)格式化为ext2格式,这也是linux默认的格式

mke2fs -j /dev/sda4

//将第四分区(root分区)格式化为ext3格式,记住,由于sparc的特殊性,我们的sda3是whole disk,因此不要习惯性地想着只有3个分区,因此把sda3给格式化掉了。

创建交换分区

mkswap /dev/sda2

现在就可以把交换分区挂上使用了

swapon /dev/sda2

烦琐的设置基本完成了,接下来请打起精神来,迎接正式开始安装工作

首先是mount上我们新系统中的/分区和/boot分区

mount –t ext3 /dev/sda4 /mnt/gentoo

在它上面创建一个boot目录,以方便挂上第一分区(/boot分区)

mkdir /mnt/gentoo/boot

接着把新系统的boot分区挂上

mount /dev/sda1 /mnt/gentoo

挂上后,就开始安装stage包了

从2005.0版本的gentoo开始,stage包从原来的3种减为了2种,只有stage1和stage3了,关于2者的区别,stage1是一个最小化工具包,安装它后,可以最大程度上的自定义系统设置,而且在编译的时候可以最大程度地针对自己的机器进行优化,缺点则是耗时相当漫长,一般大致需要1周左右的时间才能设置妥当,而stage3则是预先编译好了一些软件包可供使用,当然为了通用性,在编译参数等方面就相对比较保守,优化程度不够。在此,我选择的是stage3,因为硬盘实在太小,而且没必要在ultra1这样的老机器上折腾太多。值得一提的是,在安装前,记得使用date命令校准时间。

cd /mnt/gentoo #记得这个目录么?就是未来新系统的根目录

tar –vxjpf /mnt/cdrom/stages/stage3-sparc64-2005.0.tar.bz2

这里会把相当多的程序/设置文件cp到相应位置,时间会消耗地比较久,因此远程安装的你可以找点事情先忙乎着。

恩,copy完了stage3的内容后,接着就是要cp portage包了,portage是gentoo的程序包管理机制,类似redhat的rpm,freebsd的ports方式,它的便利,等一下您就能体会到了。

tar –vxjf /mnt/cdrom/snapshots/portage-20050303.tar.bz2 –C /mnt/gentoo/usr

这里也挺久的,所以前面推荐各位远程安装,就可以找点事来先忙着,在完成此步骤后,天缘用df命令查看了一下,/mnt/gentoo空间用去 49%

然后是把源文件全部cp过去,因为gentoo的即时编译机制,所以在编译其他软件软件包的时候,可能会用到这些代码的

mkdir /mnt/gentoo/usr/portage/distfiles

cp /mnt/cdrom/distfiles/* /mnt/gentoo/usr/portage/distfiles/

这一步也相当漫长的,当完成时,df的结果是/mnt/gentoo用去了65%

上面的几步是不是让您快睡着了? Ok,久违的动手时间到了

现在先把新系统中/etc/make.conf的参数改了,简单来说,这个文件设置了gcc编译的时候的参数,以及选用网络安装的时候使用的sync地址和软件包下载地址。

nano –w /mnt/gentoo/etc/make.conf

在最后添加以下几行

MAKEOPTS="j2"

GENTOO_MIRRORS="http://gentoo.gg3.net/ http://mirror.gentoo.gr.jp/"

SYNC="rsync://rsync.asia.gentoo.org/gentoo-portage"

注意,熟悉gcc参数的朋友可能会打算修改CFLAGS,CHOST ,CXXFLAGS的值,但官方文档只建议使用stage1的用户设置,我们使用的是stage3,所以还是保持吧。

下面,准备进入新操作系统咯

mount –t proc none /mnt/gentoo/proc

proc文件系统是内核信息的镜象,可以通过它即时查看到很多内核程序的设置和使用情形,并且还可以即时修改,怎么样?就这一点就够爱死unix系统了,比windows的注册表每次都要重新启动/注销生效方便多了吧。。。

cp –L /etc/resolv.conf /mnt/gentoo/etc/resolv.conf

将我们刚才设置好的dns解析文件cp过去

chroot /mnt/gentoo /bin/bash

env-update

source /etc/profile

以上三句是设置 /mnt/gentoo目录为根目录,并更新系统设置

接着设置时区,由于天缘使用本地时间,因此

ln –sf /usr/share/zoneinfo/Asia/Chongqing /etc/localtime

把本地时间设置为重庆时间,顺便把rc.conf里的时间设置也修改掉

nano –w /etc/rc.conf

修改

CLOCK="UTC"

CLOCK="local"

接下来,就是配置内核了,关于配置内核的文章到处有,这里我简单提一下关键和不同的地方吧

首先是下载内核代码

emerge sparc-sources

之后就会自动下载并且安装代码到/usr/src下,我写此文的时候,内核版本是2.4.29,并做好一个/usr/src/linux的连接

接着就是编译内核了

cd /usr/src/linux

make menuconfig

恩,大体上与在x86上编译没什么区别,只把需要特别留意需要开启的地方写出来吧

Code maturity level options --->

[*] Prompt for development and/or incomplete code/drivers

//开启扩展代码的支持,否则有的选项根本看不到呢File systems --->

[*] Virtual memory file system support (former shm fs)

<*> Ext3 journalling file system support

<*> Second extended fs support

[*] /proc file system support

[*] /dev file system support (EXPERIMENTAL)

[ ]

Automatically mount at boot

//注意,依照官方的文档,是需要选自动mount的,但是这里我在选择了/dev后,重新启动的时候报告了错误,即使我emerge devfsd后依然如此,因此我只有把 [ ]

Automatically mount at boot去掉,这样的话开机会提示一个警告信息,但是使用上无碍,还请其他朋友指点此困惑。

Console drivers --->

Frame-buffer support --->

[*] SBUS and UPA framebuffers

[*] Creator/Creator3D support

[*] CGsix (GX,TurboGX) support

//上面是对SBUS/UPA的支持,记得选上Misc Linux/SPARC drivers --->

[*]

/dev/openprom device support

上面是对OBP的支持SCSI support --->

SCSI low-level drivers --->

<*> Sparc ESP Scsi Driver

<*> PTI Qlogic, ISP Driver

<*> SYM53C8XX Version 2 SCSI support//scsi卡支持,上面的几种各自针对特定的型号,为了config文件的通用性,我是都选上了的Network device support --->

Ethernet (10 or 100MBit) --->

<*> Sun LANCE support

<*> Sun Happy Meal 10/100baseT support

<*> DECchip Tulip (dc21x4x) PCI support

Ethernet (1000Mbit) --->

<*> Broadcom Tigon3 support

//各种型号的网卡支持的,也是为了通用性,我都选了,其实ultra1上根本没1000m卡的,天缘这里的sun fire上才有吧。

注意,最好只把重要的编译进核心,而把其他的相关部分编译成模块就行了,确保内核文件别超过2.5M为好,天缘在文章最后会给出我使用的.config文件,各位如果想偷懒保存下来后,直接使用就行了。

恩,保存后退出,接着就是内核编译了。。。

make dep && make clean vmlinux image modules modules_install

之后。。。可以忙乎自己的事情去了,天缘是晚上编译,第2天早晨去看的结果,具体完成时间也办法告诉大家,估计在30分钟到2个小时吧。

好,假设您跟我一样够好运气,顺利编译完成了(此时/空间用了大致78%左右,呵呵)

接着就是把核心文件cp到/boot分区去

cp arch/sparc64/boot/image /boot/kernel-2.4.9

cp System.map /boot

配置文件也一起cp一份丢过去吧

cp .config /boot/config-2.4.29 /boot

到这里,内核编译就完成了,接着就是最后的配置系统设置了

首先是设置/etc/fstab 文件,linux系统后,是根据这个文件来加载分区的

我的设置如下(注释已去掉):

ultra1 root # cat /etc/fstab

/dev/sda1

/boot

ext2

defaults,noatime

1 2

#加载/boot分区,使用ext2格式,并且不记录对文件的访问时间(减少写入次数)

/dev/sda4

/

ext3

noatime

0 1

#加载/分区,ext3格式,不记录对文件的访问时间/dev/sda2

none

swap

sw

0 0

#交换分区

/dev/cdroms/cdrom0

/mnt/cdrom

iso9660

noauto,user

0 0

#cdrom加载,非自动加载

#/dev/fd0

/mnt/floppy

auto

noauto

0 0

#软驱,由于我编译内核的时候去掉了对软驱的支持,所以就把这行屏蔽了none

/proc

proc

defaults

0 0

#proc分区加载,它的作用前面提到了none

/dev/shm

tmpfs

defaults

0 0

#用内存+硬盘虚拟出一块区域来存放文件,tmpfs格式

none

/proc/openprom

openpromfs

defaults

0 0

#这行是sparc系统必须添加的#此处我没有添加usb的支持,因为我内核里禁止了usb的相关模块

以上行中,都是defaults,而不是default,天缘自己错过几次了,提醒各位留心哦。

接下来设置主机名

echo ultra1 > /etc/hostname

接着设置本域的名字

echo xx.edu.cn > /etc/dnsdomainname

如果用nis的,还要设置nis domain

echo nis.xxx > /etc/nisdomainname

把domainname添加到开机启动里

rc-update add domainname default

rc-update 一般常用的有 add ,del, -s 几个选项,可以对/etc/init.d/下存在的脚本选择是否加入到启动阶段(boot或者default里,boot部分比default阶段早)

然后是设置网络

注意提醒一点,以stage3方式安装的时候,已经安装了ifconfig命令,而如果是stage1,则需要下载emerge net-tools ,否则启动的时候会因为没有ifconfig命令而无法使用网络哦

nano –w /etc/conf.d/net

该文件的说明非常清晰,天缘使用的是固定ip方式,所以配置如下

iface_eth0="我的ip地址 broadcast 广播地址 netmask 掩码"

gateway="eth0/网关ip"

接着同样用rc-update命令让开机时候就执行启动网卡的脚本

rc-update add net.eth0 default

然后通过修改/etc/hosts改主机名

nano –w /etc/hosts

127.0.0.1 localhost ultra1

修改安全设置,允许root直接登陆

nano –w /etc/securetty

echo ‘tts/0’ >> /etc/securetty

最后的收尾工作就是把系统日志记录工具和crond服务,档案索引服务工具装上了

安装日志工具

emerge syslog-ng

rc-update add syslog-ng default

安装cron服务

emerge vixie-cron

rc-update add vixie-cron default

安装档案索引服务

emerge slocate

最后一步,就是安装引导的开机程序,silo了,它的全名是Sparc Imporved boot Loader,和lilo或者grub的作用很象

emerge silo

然后设置选项,我是按照grub的习惯,将配置文件放到了/boot区

nano –w /boot/silo.conf

# Example of how can be silo.conf set up

partition = 1 #这里是/boot分区的分区号

root = /dev/sda4 #这里是/分区的位置

timeout = 10 #等待时间,注意以0.1秒为单位的呢

#password = __#密码,这里没要

#restricted

image = /boot/kernel-2.4.29 #引导文件的位置

label = linux #标题名

接着让配置生效

/sbin/silo –C /boot/silo.conf

最后退出chroot环境,准备重新启动

exit

cd /

sync

umount /mnt/gentoo/boot /mnt/gentoo/proc /mnt/gentoo

reboot

激动人心的时刻终于来到了,如果您一路无误,那么就可以成功地启动服务器了,如果有误,那么请根据提示,然后用光盘启动后,进入chroot环境再进行修改。

后记:根据对linux对sparc系统支持地查看,发现对fire等高端系列,对t3存储,以及对lvc的支持都已经有不错的效果了,各位网管朋友如果某些时候需要针对linux下的一些服务,可以尝试着在中端服务器上调试看看。

最后附上我编译内核使用的.config文件,只在ultra1下测试可用,其他系列未经过测试。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
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- 王朝網路 版權所有