Gentoo安装笔记

前言


我想在自己的Macbook上搞套开发环境,但比如Mysql之类的软件不想安装在Macbook的系统里,于是就想虚拟一个系统作为服务器。Gentoo官方的文档已经非常详细,信息量巨大,如果你肯专研,那么可以从中学习到很多Linux和Gentoo的知识,单单只说安装,整个过程并没有那么复杂,如果你的网速还可以,安装Gentoo大约不到2小时,我也是反复安装才成功的。

准备


  1. 在Oracle VirtualBox网站下载虚拟机:VirtualBox
  2. 如果你宿主系统是Windows,你最好有个SSH Client,比如SecureCRT或者Putty。
  3. 在Gentoo网站下载(版本可能会更新,事先下载好):
    • install-x86-minimal-20120131.iso
    • stage3-i686-20120131.tar.bz2
    • portage-20120130.tar.bz2

虚拟电脑设置


  1. 假设你已经为Gentoo新建好了虚拟电脑,进入虚拟电脑的设置窗口;
  2. “storage”选项卡,增加一个IDE控制器,选择你下载的Minimal ISO;
  3. “网络”选项卡,保持Adapter1的设置不动保证你的虚拟电脑可以共享你的机器网络,增加一个Adapter2,连接方式选择“Bridged Adapter”,保证虚拟电脑和你的机器在一个网段里,这样你可以SSH到虚拟电脑。

配置安装环境


设置网络

# 按照之前的步骤,我们其实设置了两个网卡——eth0, eth1,查看一下,如果配置不正确,命令可能告诉你网卡不存在。
ifconfig eth0 && ifconfig eth1

# 现在让网卡工作起来:
dhcpcd eth0 && dhcpcd eth1

这个时候应该能ping通www.163.com了, 并且从命令的输出可以看到虚拟电脑的IP(192.168.xxx.yyy),SSH Client通过这个IP访问虚拟电脑。
现在给root设置一个密码,

passwd

# 现在可以通过SSH Client来访问虚拟机了。以下的操作都可以在ssh client里完成,你可以最小化虚拟机了。然后执行分区
fdisk /dev/sda

接下来是和fdisk进行交互了,请参考Gentoo官方手册,这里只列出基本步骤。
1. 创建一个用来挂载 /boot 的启动分区;
2. 创建一个用来swap分区;
3. 创建一个挂载 / 的系统分区
4. 创建文件系统

# sda3为ext3,挂载/mnt/gentoo
mkfs.ext3 /dev/sda3
mount /dev/sda3 /mnt/gentoo
# sda1为ext2,用于挂载boot
mkfs.ext2 /dev/sda1
mkdir /mnt/gentoo/boot
mount /dev/sda1 /mnt/gentoo/boot
# 创建交换区
mkswap /dev/sda2 && swapon /dev/sda2

安装包

cd /mnt/gentoo

# stage3 tarball是一个含有最小Gentoo环境的压缩包,我用迅雷先下载好了,通过scp或者sftp上传到虚拟电脑即可,上传好了解压。
tar xvjf stage3-i686-20120131.tar.bz2

# portage 是gentoo的软件包管理工具,最主要的命令emerge。先前已经下载好了,上传到虚拟电脑解压出来。
tar xvjf portage-20120130.tar.bz2

安装源

这有点像Ubuntu装好之后要先设置软件源,这里也差不多,mirrorselect是个类似窗口一样的交互界面,选择大陆的镜像,我选择的是网易的。

mirrorselect -i -o >> /mnt/gentoo/etc/make.cnf

# 再挑一个SYNC服务器,用来更新Portage。
mirrorselect -i -o -r >> /mnt/gentoo/ect/make.cnf

# 拷贝resolv.cnf
cp -L /ect/resolv.conf /mnt/gentoo/etc/

挂载proc和dev

mount -t proc none /mnt/gentoo/proc
mount --rbind /dev /mnt/gentoo/dev

安装Gentoo


进入安装环境

搞定一切,可以进入新环境了。

chroot /mnt/gentoo /bin/bash
env-update
source /etc/profile
export PS1=”(chroot) $PS1# 现在可以使用emerge命令了,先更新一下。
emerge --sync

完了之后可以先安装几个软件玩一玩,也方便下面的安装。
没有vim,先搜索一下Vim,找到有这个软件安装之,顺便把less也安装一下,后面要用到。

emerge --search vim
emerge vim && emerge less

选择profile,你可以理解为选择安装Gentoo的用途,虚拟机做服务器,所以选的是server,先看一下提供那些预设的profile,记住你选择的编号。

eselect profile list
eselect profile set 5

下载内核

现在可以来整内核了,很简单就是用emerge安装gentoo-sources:

emerge gentoo-sources
# 这个过程比较长⋯⋯不过总算结束了。这步结束之后,最后一行会显示内核的版本号,你可以把它记下来。
cd /usr/src/linux

配置硬件

make menuconfig

接下来这个会让你一头雾水,靠,我怎么可能能把自己的机器搞得这么清楚?好吧,如果你是个硬件专家,这玩意儿肯定难不倒你,而我在虚拟机里,我该怎么选?所以我直接退出了。

编译和安装内核

make && make modules_install

这也是个漫长的过程⋯⋯完成之后,拷贝内核镜像到/boot<>内的是之前你看到的版本号,你可以不这么命名,这里命名实际上是随意的,最好规范点吧,以后升级内核的时候也容易辨认,不过不管你改成了什么,记住它,到后面配置启动时有用。

cp arch/i386/boot/bzImage /boot/kernel-<x.xx.xx>-gentoo-r1

配置分区

编辑/etc/fstab文件

/dev/sda1     /boot  ext2    noauto,noatime         1          2
/dev/sda2     none   swap   sw       0          0
/dev/sda3     /          ext3    noatime          0          1
none   /dev/pts        devpts            defaults          0          0

修改hostname

编辑/etc/conf.d/hostname文件,这个 hostname不能是localhost,否则mysql启动不了。

配置网络

编辑/etc/conf.d/net文件,因为虚拟电脑有两个网卡,都通过dhcp连接网络。

config_eth0=”dhcp”
config_eth1=“dhcp”

然后设置网络自动启动

cd /etc/init.d
ln -s net.lo net.eth0 && ln -s net.lo net.eth1
rc-update add net.eth0 default && rc-update add net.eth1 default
# 改下root密码
passwd

必要的软件

# 日志工具
emerge syslog-ng
rc-update add syslog-ng default
# 定时任务工具
emerge vixie-cron
rc-update add vixie-cron default
#文件索引
emerge mlocate
# ssh服务自动启动
rc-update add sshd default
# dhcpcd服务
emerge dhcpcd

配置bootloader

完成了这个,你就可以进入Gentoo了。先安装grub

emerge grub

编辑grub配置文件/boot/grub/grub.conf,如下(和版本有关的自己替换一下):

title Gentoo Linux 3.1.15-r1
root (hd0,0)
kernel /boot/kernel-3.1.15-gentoo-r1 root=/dev/sda3

以上/boot/kernel-

grub --no-floppy
grub>root (hd0, 0)
grub>setup (hd0)
grub>quit

现在,执行关机

shutdown -h now

结束


重新设置一下虚拟电脑,把之前设置的ISO启动盘去掉,然后启动虚拟电脑,祝你好运!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值