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文件系统

(3)创建swap分区

(4)激活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根分区文件系统上的内容,可以看到刚上传完成的两个文件。

七、解压stage3和portage两个文件

(1)stage3-amd64-20120621.tar.bz2文件是Gentoo的目录结构,所以要解压到/dev/sda2这个规划的根分区文件系统上,即/mnt/gentoo,这里的根目录不是livecd上的根目录,而是/mnt/gentoo/,即挂载的是/dev/sda2这个分区。

(2)portage-20120723.tar.bz2是系统软件维护树。解压到规划的系统根目录/usr目录下(即挂载在livecd /mnt/gentoo下的/dev/sda2分区的文件系统,usr/目录即建立在这个文件系统上。),这个目录在livecd上的目录是/mnt/gentoo/usr。这个/usr目录不是livecd中的/usr下,切记。

八、用chroot命令切换系统到/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系统的安装。如下图:

转载于:https://blog.51cto.com/seanbook/951218

Gentoo源码安装相关推荐

  1. (二)企业部分之lnmp环境的搭建:mysql源码安装

    Web服务器架构 Web服务器架构一般主要由系统环境.Web服务器.数据库和语言组成. 可以有以下组成方式: 系统:linux unix windox mac freebsd aix Web服务器:a ...

  2. Linux源码安装mysql 5.6.12(cmake编译)

    转载链接:http://www.2cto.com/database/201307/229260.html Linux源码安装mysql 5.6.12(cmake编译) 1.安装make编译器(默认系统 ...

  3. autoware源码安装与运行ROSBAG示例(二)

    autoware入门教程-源码安装autoware1.12.0 说明:介绍如何安装autoware1.12.0 步骤: 安装系统依赖: $ sudo apt-get update $ sudo apt ...

  4. 源码安装tensorflow

    因为官网上的源码安装教程基本也是使用的Python2,所以我这里使用Python3来安装 操作系统:xubuntu17.04 64位 下载bazel,下载页面为https://github.com/b ...

  5. 在CentOS 6.6 64bit上基于源码安装全功能的vim 7.4实录

    CentOS 6.6 64bit上默认的vim版本是7.2 minimal,通过下面的命令查看 yum list installed | grep vim 我打算将其卸载并重新安装官网最新版vim 7 ...

  6. saltstack源码安装nrpe

    最近弄saltstack弄上瘾了,今天又弄了saltstack源码安装nrpe,安装nrpe之前需要安装nagios-plugins,首先是top.sls文件: [root@cacti salt]# ...

  7. glib 2.0 arm linux,glib源码安装使用方法

    glib库是GTK+和GNOME工程的基础底层核心程序库,是一个综合用途的实用的轻量级的C程序库,它提供C语言的常用的数据结构的定义.相关的处理函数,有趣而实用的宏,可移植的封装和一些运行时机能,如事 ...

  8. Centos 7环境下源码安装PostgreSQL数据库

    马上就要去实习了,工作内容是搞数据仓库方面的,用的是postgresql关系型数据库,于是自己先来了解下这种数据的用法,之后说说这个数据库和MySQL的关系和区别. 1.Postgresql简介 看了 ...

  9. 在 Linux 和 Windows 下源码安装 Perl

    Perl 是一种功能丰富的计算机程序语言,运行在超过 100 种计算机平台上,适用广泛,从大型机到便携设备,从快速原型创建到大规模可扩展开发.在生物信息分析领域,Perl 主要是做数据预处理.文本处理 ...

最新文章

  1. PHP基本连接数据库
  2. 探索推荐引擎内部的秘密,第 2 部分: 深入推荐引擎相关算法 - 协同过滤
  3. 利用 51 定时器生成 PWM
  4. Struts2漏洞和Struts Scan工具实战
  5. 关于机器学习,你应该至少学习这8个落地案例|干货集锦
  6. java consumer 使用_java.util.function.Consumer的用法
  7. WEBSHELL权限提升 菜菜
  8. ElasticSearch 未授权访问记录(端口:9200)
  9. 人名和成绩一起排序_excel中怎么让人名和他的成绩一起排序
  10. ORA-00091错误的解决方式
  11. paip.c++ qt __gxx_personality_sj0 __gxx_personality_v0问题的解决
  12. perl语言入门学习
  13. 万字长文带你回顾Java集合框架
  14. python matrix用法_详解使用python绘制混淆矩阵(confusion_matrix)
  15. Android Binder 机制详解
  16. xp计算机图标,xp我的计算机图标不见了
  17. 研究生阶段如何学习、做研究(超棒)
  18. 隧道联系测量高程传递水准数据处理流程及说明
  19. 物联网平台在AIoT领域8大场景应用
  20. 深圳小汽车车牌竞拍价格预测

热门文章

  1. python:实现简单的web开发demo
  2. 【图像处理】MATLAB:退化函数及多种复原方法
  3. 【百家稷学】从传统方法到深度学习,人脸算法和应用的演变(河南平顶山学院技术分享)...
  4. 有三AI小程序上线,把你的代码show给世界
  5. 全球与中国压延铜箔市场发展调研及投资前景战略建议报告2022-2028年版
  6. acm java_ACM Java Native SDK 概述
  7. 李航-统计学习方法-笔记-1:概论
  8. [搬运工系列]-JMeter(二十四)搭建持续集成接口测试平台(Jenkins+Ant+Jmeter)
  9. 20145324 20145325 《信息安全系统设计基础》实验三
  10. 对不起!今天我们的活动在朋友圈刷屏了……(多图预警)