SPARC中如何安装Linux系统(2)(转)
接下来,是格式化分区
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下测试可用,其他系列未经过测试。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/14102/viewspace-116290/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/14102/viewspace-116290/
SPARC中如何安装Linux系统(2)(转)相关推荐
- SPARC中如何安装Linux系统(1)(转)
SPARC中如何安装Linux系统(1)(转) 部门机器升级,淘汰下来一批比较古老的机器,其中有一些ultra系列的sparc机型,64M内存,2.1G硬盘,solaris 9已经表示不支持64m内存 ...
- linux系统qt中make安装,Linux系统下Qt的基本安装和配置
Qt Creator支持中文,启动速度比Eclipse.Netbeans更快,界面也更美观,跟输入法Fcitx协作良好(光标跟随). 你既可以把Qt Creator当代码编辑器作为vim辅助,好处在于 ...
- 请人安装linux系统,我想安装linux操作系统,请指导一下
安装ubuntu7.04,适合初学linux系统的朋友使用,一款具有人性化的系统.而且在网上关于ubuntu安装以及安装的后的设置都很容易找到. 不知道楼主下载的是哪个版本的linux系统.你可以搜索 ...
- 解决 Vmware 虚拟机安装linux系统无法联网的的问题
记录我自己的学习中遇到的问题 其中在学习的时候,教的网络适配器选择的桥连接的方式--------怎么都连不上网,试的各种办法都不行. 最根本的还是在Vmware中,安装linux系统之前设置的网络适配 ...
- ARM开发板如何安装Linux系统
转自:http://www.eepw.com.cn/article/201611/322612_2.htm 注意:本小节假定您已经连接好开发板的和PC机之间的串口和USB口,并把开发板设置为NORFl ...
- vm虚拟机下linux安装python_VM中安装linux系统,安装VS Code,搭建Python环境
VM中安装linux系统 在linux系统中安装VSCode(Visual Studio Code) 1.从官网下载安装包 2.在下载目录打开终端安装 sudo dpkg -i code_1.32.3 ...
- 如何在VMware中安装Linux系统(带界面)~新手向
如何在VMware中安装Linux系统(带界面)~新手向 1.打开VMware虚拟机 2.创建新的虚拟机 3.加载ISO 4.命名虚拟机 5.指定磁盘容量 6.自定义硬件 7.启动虚拟机 1.打开VM ...
- linux系统可以装win10吗,如何在Win10专业版中安装Linux系统?
如何在Win10专业版中安装Linux系统?在Windows10 第3个稳定版发布以后,支持内嵌的Linux系统,正如大家所知道的,大多数 Linux 上的命令行二进制程序现在可以原生地运行在 Win ...
- 低配置系统安装 linux,在低配置机中安装Linux系统
试验机配置: 联想 同禧300 6C/533 CPU:Intel(r) Celeron(tm) Processor GenuineIntel 533M 希捷硬盘:20G 现代内存:128M BIOS版 ...
最新文章
- 2015浙江财经大学ACM有奖周赛(一) 题解报告
- 据lovecherry的一步一步学Remoting序列文章学习.net Remoting日记(2)
- HBase在CentOS上分布集群安装
- webpack构建Vue项目引入jQ时发生“'$' is defined but never used”的处理
- 语句 查询每个人每个科目的最高分_转行数据分析师专栏(SQL篇)-05多表查询...
- pipline 简单是使用
- LeetCode(21)——合并两个有序链表(JavaScript)
- 教你怎样做项目开发总结报告[转]
- 华为手机玩王者荣耀的时候微信消息通知不弹窗提示,打王者的时候微信不弹窗提示消息,(P30)【解决办法】
- springboot引入validation
- 《运动改造大脑》总结
- 武汉市科技企业孵化器认定条件
- win 7共享计算机改名,不用再去找软件 批量改名Win7一键搞定
- 红外遥控风扇改手机APP远程控制杂记
- 【云原生之Docker实战】使用Docker部署Snipe-It固定资产管理平台
- AT指令发送短信流程及接听、拨打电话
- docker-compose编排,gitlab安装和授权,git使用和jenkins安装和使用
- 关于美国雷斯法案修正案
- (附源码)ssm基于web技术的医务志愿者管理系统 毕业设计 100910
- 极域电子教室增强特性介绍,它到底好用在哪呢?
热门文章
- hexo博客插入音乐播放器
- 738.单调递增的数字,714. 买卖股票的最佳时机含手续费,968.监控二叉树
- Can提出问题、请求和请求许可 _51
- java抓包asp_菜刀ASP 下载文件抓包
- 网络上如何区分不同计算机,什么是耦合度?按耦合度的不同,如何区分计算机网络和其他计算机系统?...
- 目标检测YOLO实战应用案例100讲-基于改进的YOLOv4柑橘目标检测算法
- 华为杯2022研究生数学建模赛题+解压码
- 爱喝「肥宅快乐水」的班长
- 小波相干wtc matlab,小波分析与小波相干代码
- main与WinMain的区别