欢迎访问www.showerlee.com, 您的支持就是我前进的动力.

LINUX家族神器-Gentoo安装部署

showerlee 2013-10-24 13:12 LINUX 阅读 (8,973) 抢沙发

这几天看到群里一直在研究gentoo这个LINUX操作系统,整体安装貌似是纯手工编译,刚好忙里偷闲尝鲜了这款系统,网上整理了大部分资料,花了半天时间搞定,虽然过程很繁琐,但总结如下优点:

1.纯手工文本配置系统参数,内核,以及GRUB引导,能够实现个人定制,而且装完会对LINUX的安装有一个更加深刻的了解

2.自带的emerge安装工具绝对是个神器,它很类似其他LINUX家族系统的apt-get与yum等自动化安装工具,是一个从网上自动寻找源码及其依赖源码实现全自动编译安装的工具,免去了新手编译安装过程中出现的各种关联问题所带来的烦恼

3.系统根下所有目录文件以及系统软件网上都有打包下载,定制起来更加方便.

最后写下了如下文档,供有需要的朋友参考


安装环境:

vmware vmware-9.0

操作系统 gentoo-20131010_x64

image001

.前期准备

(1)下载gentoo所需的引导镜像和系统文件压缩包

install-amd64-minimal-20131010.iso

portage-latest.tar.bz2

stage3-amd64-20131010.tar.bz2

下载地址:

http://mirror.sohu.com/gentoo/releases/amd64/current-iso/install-amd64-minimal-20131010.iso

http://mirror.sohu.com/gentoo/releases/snapshots/current/portage-latest.tar.bz2

http://mirror.sohu.com/gentoo/releases/amd64/current-iso/stage3-amd64-20131010.tar.bz2

(2)配置虚拟机引导系统镜像()

.安装系统

1.进入系统引导界面

输入gentoo dopcmcia

如图:

image002

2.进入光盘引导的临时系统

注:这个临时系统环境简单来说可以理解为一个WINDOWS下的PE临时系统安装环境,在这个系统下面可以对我们安装的系统进行诸如简单的网络配置连接,系统分区,内核驱动编译,系统引导制作等等,只不过我们平时使用的其他系统在开始安装的时候已经以一个非常友好的图形交互界面引导我们配置,基本上不可能安装失败,gentoo只提供了一个shell文本界面,需要使用者对系统安装有一个完整的思路和LINUX系统配置能力,新手初次使用可能会有一定的困难.

image003

3.配置root账户

# passwd root

4.开启ssh服务

# /etc/init.d/sshd start

5.查看系统网络接口并配置临时网络

:由于在虚拟机安装的gentoo,网络接口名与常用接口eth0命名不同,这里请注意

image004

IP:

# ifconfig enp2s1 192.168.7.51/24

Gateway:

# route add default gw 192.168.7.1

DNS:

# echo “nameserver 192.168.7.1” >>/etc/resolv.conf

image005

能够ping,则说明系统能够访问外网

5.利用secureCRT登陆系统shell


image006 image007

选择否:

image008

image009

登陆成功

image010

6.系统分区

20GB虚拟机硬盘分区规划:

/dev/sda1 /boot 200M

/dev/sda2 swap 1024M

/dev/sda3 / 剩余所有

(1)利用fdisk分区

# fdisk -l

Disk /dev/sda: 21.5 GB, 21474836480 bytes,41943040 sectors

Units = sectors of 1 * 512 = 512 bytes

Sector size (logical/physical): 512 bytes /512 bytes

I/O size (minimum/optimal): 512 bytes / 512bytes

# fdisk /dev/sda

sda1分区: n,p,1,回车,+200M

sda2分区: n,p,2,回车,+1024M

sda3分区: n,p,3,回车,回车

设置sda2分区为swap分区格式: t,2,82

最后保存写入分区并退出: w

(2)重新读取sda分区表:

# partx -a /dev/sda

(3)格式化为ext4文件系统

# mkfs.ext4 /dev/sda1

# mkfs.ext4 /dev/sda3

(4)格式化swap分区并激活

# mkswap /dev/sda2

# swapon /dev/sda2

# swapon -s

6.创建系统临时挂载点

# mount /dev/sda3 /mnt/gentoo

# mkdir /mnt/gentoo/boot

# mount /dev/sda1 /mnt/gentoo/boot

7.设置系统时间(重要)

# date 102314162013

8.下载系统编译包portage-latest.tar.bz2stage3-amd64-20131010.tar.bz2/mnt/gentoo目录下:

# cd /mnt/gentoo

# wget http://mirror.sohu.com/gentoo/releases/snapshots/current/portage-latest.tar.bz2

#wget

http://mirror.sohu.com/gentoo/releases/amd64/current-iso/stage3-amd64-20131010.tar.bz2

# ls

boot lost+found portage-latest.tar.bz2 stage3-amd64-20131010.tar.bz2

9.解压stage3portage两个文件

# tar -jxvf stage3-amd64-20131010.tar.bz2

: stage3-amd64-20131010.tar.bz2解压的文件是Gentoo的目录结构,所以要解压到临时的系统目录下,/mnt/gentoo,方便后面进行chroot

# tar jxvf portage-latest.tar.bz2 -C /mnt/gentoo/usr

: portage-latest.tar.bz2解压的文件为系统软件目录结构,需要解压到/mnt/gentoo/usr目录下

10.切换系统到/dev/sda3根分区上并更新系统环境变量

# mount -t proc none /mnt/gentoo/proc

# mount -o bind /dev /mnt/gentoo/dev

# chroot /mnt/gentoo /bin/bash

# env-update

>> Regenerating /etc/ld.so.cache...

# source /etc/profile

# export PS1="(chroot) $PS1"

11.设置时区

# cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

12.设置主机名

# sed -i -e's/hostname.*/hostname="gentoo.example.com"/' /etc/conf.d/hostname

# echo "127.0.0.1 gentoo.example.com localhost" > /etc/hosts

13.设置DNS

# echo "nameserver 192.168.7.1" >> /etc/resolv.conf

14.内核配置

(1).安装内核源码

# emerge gentoo-sources

(2).安装自动编译内核工具genkernel

# emerge genkernel

(3).复制安装光盘的配置文件到genkernel搜索配置文件的默认位置

# zcat /proc/config.gz > /usr/share/genkernel/arch/x86/kernel-config

注:如果启动分区没有使用ext2或者ext3文件系统,则必须使用genkernel --menuconfig all来手动配置您的内核,把所使用的文件系统编译进内核。(不能编译为模块!)。EVMS2和LVM2也需要加上--evms2和--lvm2参数。

(4)运行genkernel

# cd /usr/src

# mv linux linux.bak

# ln -s linux-3.10.7-gentoo-r1 linux

注:以上三条命令如果未执行,直接genkernel all会报错

ERROR: Kernel Makefile (/usr/src/linux/Makefile) missing.....

原因可能是最新版本gentoo在/usr/src/linux下未找到Makefile文件,导致内核无法编译,需要重定向另一个目录,这里还是google老外的一篇文档中找到答案.

64位的gentoo安装好后,貌似会自动做一个以上的重定向处理,32位会有几率出现问题,需手动处理

# genkernel all

注: genkernel编译出的内核支持几乎所有硬件,编译需要一段很长的时间一旦genkernel运行完成,一个包括全部模块和initrd的内核将被建立。在后面配置引导程序时我们将会用到这个内核和initrd。请记下内核和initrd的名字,因为您将在配置引导程序的时候用到他们。initrd将会在启动真正的系统前自动识别硬件(如同安装光盘一样)。

(5)查看内核和initrd的名字

# ls /boot/kernel* /boot/initramfs*

-------------------------------

/boot/initramfs-genkernel-x86-3.10.7-gentoo-r1

/boot/kernel-genkernel-x86-3.10.7-gentoo-r1

-------------------------------


15.安装vim编辑器

# emerge vim

16.修改fstab文件

# vim /etc/fstab

添加如下内容:

----------------------------------------------------------

/dev/sda1 /boot ext4 defaults 1 2

/dev/sda2 swap swap defaults 0 0

/dev/sda3 / ext4 defaults 1 1

-----------------------------------------------------------

17.配置网络

注:因为是在vmware虚拟机测试,物理网口名为enp2s1,非一般常用的eth0,这里请注意

# vi /etc/conf.d/net

添加如下内容:

--------------------------

config_enp2s1="192.168.100.93/24"

routes_enp2s1="default via 192.168.100.1"

--------------------------

# ln -s /etc/init.d/net.lo /etc/init.d/net.enp2s1

开机加载enp2s1网口

# rc-update add net.enp2s1 default

配置DNS:

# echo "nameserver 192.168.100.1" >> /etc/resolv.conf

18.配置sshd服务器开机启动

# rc-update add sshd default

19.设置新安装Gentoo系统用户root密码

# passwd root

New password:

BAD PASSWORD: it does not contain enoughDIFFERENT characters

BAD PASSWORD: is a palindrome

Retype new password:

passwd: password updated successfully

20.配置时区

# vi /etc/conf.d/clock

-------------------------------

TIMEZONE="Asia/Shanghai"

-------------------------------

21.安装常用系统工具

系统日志管理

# emerge syslog-ng

日志格式化工具

# emerge logrotate

定时计划服务

# emerge vixie-cron

DHCP

# emerge dhcpcd

快速索引

# emerge slocate

启动服务

# rc-update add syslog-ng default

# rc-update add vixie-cron default

设置crontab默认编辑器

# echo "export EDITOR='/usr/bin/vim'" >> /etc/profile

22. 配置GRUB引导程序

(1)安装grub

# emerge grub

:这里实际编译安装的是grub2,与LINUX其他发行版本常用的grub配置略有出入

(2)配置grub

# grub2-install --no-floppy /dev/sda

# grub2-mkconfig -o /boot/grub/grub.cfg

# reboot

如图:



 image011image012image013

23.收尾工作:

移除stage3 tarball

# rm /stage3-*.tar.bz2*

移除Portage快照文件

# rm /portage-latest.tar.bz2*

-----------大功告成-------------

正文部分到此结束
版权声明:除非注明,本文由(showerlee)原创,转载请保留文章出处!
本文链接:http://www.showerlee.com/archives/941

继续浏览:Gentoo

还没有评论,快来抢沙发!

发表评论

icon_wink.gif icon_neutral.gif icon_mad.gif icon_twisted.gif icon_smile.gif icon_eek.gif icon_sad.gif icon_rolleyes.gif icon_razz.gif icon_redface.gif icon_surprised.gif icon_mrgreen.gif icon_lol.gif icon_idea.gif icon_biggrin.gif icon_evil.gif icon_cry.gif icon_cool.gif icon_arrow.gif icon_confused.gif icon_question.gif icon_exclaim.gif