Gentoo源码安装

一、前期准备

(1)下载以下三个文件

二、配置安装环境

(1)用光盘引导到LiveCD环境

(2)配置当前LiveCD环境的网络

安装Gentoo时,服务器引导的LiveCD环境必须能够连接外网。因为在安装过程中需要在线下载内核和其它相关软件。而我们又想用ssh远程进行安装操作,所以服务器引导的当前LiveCD环境还要开启sshd服务,使服务器可以用Linux下的ssh或Windows下的PuTTY远程连接。所以这里的网络设置主要实现两个目的:一是使当前服务器引导的LiveCD环境能够连接外网,二是开启sshd服务,使服务器可以用ssh远程连接。

服务器的网络规划:

服务器有三个网卡:eth0、eth1、eth2。这里只使用eth0和eth2两块网卡。

eth0 IP地址:192。168.10.200,用于远程连接。

eth2 IP地址:用dhcpcd命令自动获取IP,通过NAT联接外网。

设置IP地址:

检查服务器是否可以连接外网,这里ping一下百度的网站。

可以ping通百度,连接外网OK。

开启sshd服务并设置root密码:

livecd ~# /etc/init.d/sshd start

livecd ~# password root

注意:

这里的root是当前LiveCD环境的root用户。之所以设置密码,是因为sshd服务默认远程连接登录的用户必须设置密码。这里root用户密码设置为:123456

(3)从另一台主机通过LiveCD环境下开启的sshd服务远程连接到该服务器

在Linux下可以用ssh命令远程连接到开启了sshd服务的服务器,Windows下可以用PuTTY工具。我这里使用PuTTY。

点击下方的“open”按钮,根据提示输入用户名:root,密码:123456;第一次登录,会提示保存密钥,点击“是”即可。

三、建立分区

500GB硬盘分区规划:

/dev/sda1     /boot         200M

/dev/sda2     /             20GB

/dev/sda3     swap          20GB

/dev/sda5     /home         20GB

/dev/sda6     /usr/local 20GB

/dev/sda7     /var          20GB

/dev/sda8     100GB  预留空间100GB

/dev/sda9     100GB  预留空间100GB

/dev/sda10 200GB  乘余所有空间

(1)通过fdisk创建分区:

分区完成后,输入w写入分区。

注意:

在创建时,由于 /dev/sda3是作交换分区的,所以要修改 /dev/sda3 的分区类型为82,/dev/sda1作为boot分区,所以要标记为可启动分区。

(2)重新读取sda分区表

(3)创建ext4文件系统

(4)创建swap分区

(5)激活swap分区

四、创建相关挂载目录并挂载文件系统

根据分区规划,建立相关挂载目录,并挂载文件系统。

/dev/sda1     /boot         200M

/dev/sda2     /             20GB

/dev/sda3     swap          20GB

/dev/sda5     /home         20GB

/dev/sda6     /usr/local 20GB

/dev/sda7     /var          20GB

注意:

在Linux中,所有的目录都挂载在根目录“/”下。所以先挂载原先规划好作为根分区的文件系统到根“/”目录这个挂载点下,再在这个根分区文件系统上建立其它相关挂载点。

五、设定系统时间和日期

修改为当前时间和日期:2012年7月24日22时17分。

六、上传相关文件

上传下面两个文件到 /mnt/gentoo目录下,即/dev/sda2这个规划为根分区的文件系统上。

这是事先下载好的,你也可以用links或wget命令在terminal中在线下载这两个文件。

打开Windwos下FTP客户端工具FileZilla Client,选择“文件”à“站点管理器”,如下图设置好sftp;

点击连接,并上传本地的两个文件到服务器上的根分区文件系统上。

上传完成后,查看/dev/sda2根分区文件系统上的内容,可以看到刚上传完成的两个文件。

九、设置时区

设置时区信息:根据具体情况使用/usr/share/zoneinfo中的正确条目。我们这里使用上海。

设置好时区后,时间会根据你所设的时区重新计算,我们所设置的上海在东八区,所以会在原来时间的基础上再加上八小时。这里我们需要重新校正当前时间。

十、设置主机名为gentoo

十一、内核配置

(1)下载内核及其它相关依赖包并解压配置

注意:

gentoo-sources:为一般用途,只打了一般的安全补丁。

hardened-sources:服务器用途, 安全性和稳定性有所提高。

(2)根据具体情况配置内核相关功能模块

接着会出现以下画面,根据情况选择定制内核模块。

(3)定制EXT4文件系统

之前的硬盘分区在规划时,采用EXT4文件系统。这里以定制EXT4文件系统为例。其它根据个人具体情况而定。

按上下方向键,向下移动,找到“File systems”菜单。

选择进入“File systems”菜单后,找到EXT4文件系统并选择编译到内核中。

按“Tab”键切换到“Exit”按钮并回车,此动作进行两次。会出现以下画面询问你是否希望保存新的配置,这里选择“Yes”。

(4)编译内核

我的服务器是4核的,所以在make的时候加上参数-j4,可以加快编译的速度。

(5)安装内核

在编译完成后,会生成bzImage这个二进制内核文件。根据编译完成时的最后一行,可以知道这个文件保存的位置。

十二、修改fstab文件

修改内容如下:

十三、配置网络

设置IP地址:192.168.10.240,默认网关为:192.168.10.1

将网卡eth0设为开机启动。

如果在/etc/init.d/下不存在net.eth0,则需要用ln命令先建立这个文件。

将sshd服务也设为开机启动。

十四、设置新安装Gentoo系统用户root密码

十五、编辑设置一些配置文件

livecd conf.d # nano -w /etc/conf.d/clock

TIMEZONE="Asia/Shanghai"

livecd conf.d # nano -w /etc/rc.conf

livecd conf.d # nano -w /etc/conf.d/rc

livecd conf.d # nano -w /etc/conf.d/keymaps

十六、安装系统工具

livecd conf.d # emerge syslog-ng

livecd conf.d # emerge logrotate

livecd conf.d # emerge vixie-cron

livecd conf.d # emerge dhcpcd

livecd conf.d # emerge vim

livecd conf.d # rc-update add syslog-ng default

livecd conf.d # rc-update add vixie-cron default

十七、安装引导程序Grub

(1)在线下载grub并编译安装

livecd conf.d # emerge grub

(2)配置grub.conf文件

(3)安装Grub到sda

livecd conf.d # grub

十八、重启系统

退出chroot环境,卸载所有文件系统并重启。

livecd / # reboot

最后取出光盘。到此完成Gentoo 64bit系统的安装。如下图:

Gentoo源码安装图解的更多相关文章

  1. CentOS 7下源码安装MySQL 5.7

    网上说linux安装mysql服务分两种安装方法: ①源码安装,优点是安装包比较小,只有几十M左右,缺点是安装依赖的库多,安装编译时间长,安装步骤复杂容易出错: ②使用官方编译好的二进制文件安装,优点 ...

  2. LNMP架构下的nginx、mysql、php的源码安装

    一.LNMP的介绍 LNMP就是Linux+Nginx+Mysql+Php这种网站服务架构.Linux是一类Unix计算机操作系统的统称,是目前最流行的免费操作系统,常见版本有:centos.ubun ...

  3. mono-3.4.0 源码安装时出现的问题 [do-install] Error 2 [install-pcl-targets] Error 1 解决方法

    Mono 3.4修复了很多bug,继续加强稳定性和性能(其实Mono 3.2.8 已经很稳定,性能也很好了),但是从http://download.mono-project.com/sources/m ...

  4. 搭建LNAMP环境(七)- PHP7源码安装Memcached和Memcache拓展

    上一篇:搭建LNAMP环境(六)- PHP7源码安装MongoDB和MongoDB拓展 一.安装Memcached 1.yum安装libevent事件触发管理器 yum -y install libe ...

  5. 搭建LNAMP环境(二)- 源码安装Nginx1.10

    上一篇:搭建LNAMP环境(一)- 源码安装MySQL5.6 1.yum安装编译nginx需要的包 yum -y install pcre pcre-devel zlib zlib-devel ope ...

  6. 搭建LNAMP环境(一)- 源码安装MySQL5.6

    1.yum安装编译mysql需要的包 yum -y install gcc-c++ make cmake bison-devel ncurses-devel perl 2.为mysql创建一个新的用户 ...

  7. Greenplum 源码安装教程 —— 以 CentOS 平台为例

    Greenplum 源码安装教程 作者:Arthur_Qin 禾众 Greenplum 主体以及orca ( 新一代优化器 ) 的代码以可以从 Github 上下载.如果不打算查看代码,想下载编译好的 ...

  8. salt源码安装软件和yum安装软件

    上面简单列出了源码安装的sls文件书写思路. 涉及到一些固定的思路:如, 1,拷贝 解压安装时候需要依赖tar.gz存在 如果已安装则无需再次安装. 2,启动脚本 加入chk时候需要文件存在,如果已添 ...

  9. 搭建LNAMP环境(六)- PHP7源码安装MongoDB和MongoDB拓展

    上一篇:搭建LNAMP环境(五)- PHP7源码安装Redis和Redis拓展 一.安装MongoDB 1.创建mongodb用户组和用户 groupadd mongodb useradd -r -g ...

随机推荐

  1. 可变参数列表---以dbg()为例

    在UART驱动的drivers/serial/samsung.h中遇到如下定义: #ifdef CONFIG_SERIAL_SAMSUNG_DEBUG extern void printascii(c ...

  2. 《WPF程序设计指南》读书笔记——第7章 Canvas

    1.Canvas面板 using System; using System.Windows; using System.Windows.Controls; using System.Windows.M ...

  3. Java中Map的用法详解

    Map简介 将键映射到值的对象.一个映射不能包含重复的键:每个键最多只能映射到一个值.此接口取代 Dictionary 类,后者完全是一个抽象类,而不是一个接口. Map 接口提供三种collecti ...

  4. 安装Ubuntu时,遇到自定义交换空间swap大小设置问题

    【整理】Ubuntu自定义分区设置 在安装Ubuntu时,如果使用的是一个新硬盘那么安装向导会建议你使用整个硬盘,如果硬盘上已经有数据了,向导会建议使用剩余的空间。不管怎样,是由向导自动划分的分区。 ...

  5. JSP页面时间动态显示 (转载)

    <script type="text/javascript">       function startTime(){        var today=new Dat ...

  6. codeblocks常用快捷键

    CodeBlocks常用操作快捷键编辑部分:Ctrl + A:全选Ctrl + C:复制Ctrl + X: 剪切Ctrl + V:粘贴Ctrl + Z:撤销Ctrl + S:保存Ctrl + Y / ...

  7. The 11th Zhejiang Provincial Collegiate Programming Contest->Problem A:A - Pokemon Master

    http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3776 题意:比较两组数据的总和大小. #include <iostr ...

  8. spoj 39

    DP  完全背包问题 的   d[i] = min(d[i], d[i-w]+p)   d[i]表示当总重量为i时可装的最小价值 #include <cstdio> #include &l ...

  9. uva 10827

    与108类似 多加了两层循环 水过 #include <iostream> #include <cstring> #include <cstdio> #includ ...

  10. 关于Spark中RDD的设计的一些分析

    RDD, Resilient Distributed Dataset,弹性分布式数据集, 是Spark的核心概念. 对于RDD的原理性的知识,可以参阅Resilient Distributed Dat ...