Xupeng's blog

Jan 4, 2009 - 3 minute read - Comments

使用 VPS 和 Gentoo 打造安全高效的个人网络基地 – 安装 Gentoo

首先需要使用 Linode 的管理后台部署一个 64 位系统,利用它来安装 Gentoo,我选择了使用 CentOS,部署 CentOS 时我只使用了我一小部分的磁盘空间(2G),以便留下足够的空间给 Gentoo 使用。

部署完 CentOS 后,可以从 Linode 的管理后台看到多了一个叫 My Centos 5.2 64bit Profile 的 Configuration Profile,这个 Profile 的第一个磁盘是部署 CentOS 时创建的磁盘,可以创建另外一个磁盘用来安装 Gentoo,创建完之后编辑 My CentOS 5.2 64bit Profile,把新创建的磁盘挂载到 /dev/xvdc

此时就有了一个可以启动的 64 位 CentOS,它有三个磁盘,第一个磁盘 /dev/xvda 是 CentOS,第二个磁盘 /dev/xvdb 作为交换分区,第三个磁盘 /dev/xvdc 将被用来安装 Gentoo。

首先要让 Gentoo 能够在 Linode 启动, Linode VPS 基于 Xen,在 Xen 中构建一个 Linux 系统跟在物理机上安装一个系统有些许不同,但总的来说更容易。启动 Centos,从管理后台看到状态改变 为 running 之后就可以通过 SSH 连接,登陆之后可以看到 /dev/xvdc 的存在。

  1. 下载Gentoo stage3 amd64版本:
    cd
    wget http://gentoo.chem.wisc.edu/gentoo/releases/amd64/ \
         current/stages/stage3-amd64-008.0.tar.bz2
  2. 挂载/dev/xvdc,解压stage3,并且chroot到Gentoo环境中:
    mkdir /root/gentoo
    mount /dev/xvdc /root/gentoo
    tar xf ../stage3-amd64-2008.0.tar.bz2 -C /root/gentoo
    cp /etc/resolv.conf /root/gentoo/etc
    mount -t proc proc /root/gentoo/proc
    mount -o bind /dev /root/gentoo/dev
    chroot /root/gentoo /bin/bash
  3. 更改系统时区设置:
    cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
  4. 编辑/etc/conf.d/clock,设置:
    CLOCK="local"
    TIMEZONE="Asia/Shanghai"
  5. 更新portage tree:
    emerge --sync
  6. 升级portage:
    emerge -av portage
要让 Gentoo 能够在 [Linode](http://www.linode.com/?r=cd5198f9daf6a668424aea5534f74baf343f4759) 的 Xen 环境下正常启动并工作起来,有一些工作要做:
  1. 编辑/etc/fstab。
    /dev/xdva / ext3 defaults,noatime 0 1
  2. 安装dhcpcd。我们使用DHCP来动态获取IP/主机名/DNS等信息而不是手动设定:
    emerge -av dhcpcd
    echo 'config_eth0=( "dhcp" )' >> /etc/conf.d/net
  3. 使sshd自动启动。
    rc-update add sshd default
  4. 更改root密码。
    passwd

到此为止,Gentoo 系统就是 boot ready 的了,与物理机安装 Gentoo 不同,在 Xen 中安装 Gentoo 不需要编译内核, Linode 已经提供了多个可供 Xen 使用的内核,有稳定的 2.6.16/2.6.18,也有最新的 2.6.28。在它可以启动之前,需要在 Linode 的管理后台创建一个新的 Profile,在 Profile 的 配置中,可以选择要使用的 kernel,我比较喜欢尝鲜,所以我选择的是2.6.28,除了内核之外需要把安装了 Gentoo 的那个磁盘挂载到 /dev /xvda,之前在配置 /etc/fstab 时也配置了 /dev/xvda 为根。

Ok,保存新的 Profile,停掉 CentOS,启动为 Gentoo 新创建的 Profile,等待两分钟,幸运的话,第一次就可以成功的登陆新打 造的 64 位 Gentoo,如果有些不幸,那也没有关系,可以使用 Linode 的 Lish 登陆查看 console 以便进行 debug,这就具体问题具体分析 了。成功启动后,得到一个最基本的 Gentoo 系统,还有一些基本的系统升级、基础配置工作需要做,接下来:配置 Gentoo