文档章节

gentoo折腾小笔记

firebroo
 firebroo
发布于 2015/05/12 18:21
字数 1702
阅读 2196
收藏 5

在安装的时候各种Google,百度文章,但是发现效果不是很好,因为很多老文章,gentoo版本也一直在更新,很多东西都不一样了,对我们这种新手来说,100步里面只要有一步走错,就很难走出来了。最后我是参考这官网的wiki进行安装的。

但是wiki会提供很多条道路,为了尽可能的照顾不同人群的不同选择嘛,所以这个wiki需要认真的从头到尾的阅读一遍,选择自己认为能够最快到达的路径。

我是在虚拟机上安装的,加载live cd镜像之后,我们先得对我们得磁盘进行分区,分多少个区,我这里选择得是传统的MBR分区表,所以我把硬盘分成3个区,照着wiki来,用fdisk这个工具。

开始安装的时候我也不会用fdisk,但是Google一下就会了。具体步骤也可以参考wiki上,很详细。我这里给出一张我分区之后的截图。

这里的 Boot下面的*表示在这里打了个标记,表示这是boot分区。

分区好之后我们要进行格式化分区操作。参考wiki,我把sda1格式化为ext2,sda3格式化为ext4,sda2是交换分区。

给出我格式化之后的效果图。

这里我使用的是parted工具的p命令查看的。

格式化好之后,我们挂载分区,把我的/dev/sd3挂载到/mnt/gentoo

然后手动在gentoo目录下面创建一个/boot目录。把/dev/sda1挂载上去,也就是我们的boot分区,等下这里是要安装引导驱动程序的。

继续看wiki,看到一堆的描述,不用管,links这个工具其实是一个文本web浏览器,老外是有多geek,这种都能开发出来,效果不是很好,浏览中文网站会乱码,而且操作也蛋疼=。=

我们先cd /mnt/gentoo 目录,直接下载stage*。可以用sohu的镜像,我,我们wget 一份,wget http://mirrors.sohu.com/gentoo/releases/amd64/autobuilds/current-stage3-amd64/stage3-amd64-20150507.tar.bz2

下载好之后解压tar -xvjpf stage*

解压好之后我们需要对编译进行配置,gentoo所有的东西都是通过源码编译安装的,可想而知这个配置文件的重要性。

CFLAGS这个参数就是GCC编译源码的时候的一些配置,-O2表示最大优化,还能指定CPU类型,让GCC编译出在本机上执行最优的二进制代码。要想编译出完美的二进制代码,需要对GCC有一定的了解。

还有下面的需要配置一个资源配送点,可以通过mirrorselect进行选择,然而中国的用户,可以用我的配置。

镜像配置了sohu的,rsync配置了厦门大学的。

然后执行命令cp -L /etc/resolv.conf /mnt/gentoo/etc

把live cd中的DNS配置文件拷贝进去。

下面是进行一系列的挂载,照着wiki做就好了

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

root #mount --rbind /sys /mnt/gentoo/sys

root #mount --make-rslave /mnt/gentoo/sys

root #mount --rbind /dev /mnt/gentoo/dev

root #mount --make-rslave /mnt/gentoo/dev

挂载好之后,我们可以用我们自己安装的系统,使用chroot命令切换过去,然后更新一下环境变量。

root #chroot /mnt/gentoo /bin/bash

root #source /etc/profile

root #export PS1="(chroot) $PS1"

下面是安装portage,我们可以自己去官网下载,然后解压,也可以简单的使用命令

emerge-webrsync

再执行emerge --sync

同步本地的protage tree

然后执行

root #eselect news list

看看哪些需要更新的,然后执行下面命令更新。

root #eselect news read

下面选择桌面环境。

eselect profile set 3

可以根据自己的喜好进行设置,设置好之后,可以用eselect profile list命令查看,如果在你选择的后面有个*代表选择成功。

下面配置USE变量,用命令nano -w /etc/portage/make.conf。

在USE里面,想要安装gnome的话,就写gnome,不安装的话写-gnome,这个先不急,我们以后可以慢慢来加。

下面设置时区和语言,这个不重要,具体看wiki。

设置好了之后最后执行env-update && source /etc/profile


然后开始配置内核,照着wiki,我们有很多内核可以选择,官网推荐我们按照gentoo-sources,我们使用命令emerge --ask sys-kernel/gentoo-sources 获取源码,当然你可以选择更多的,比如最新的内核git-sources。

接下来我们需要编译这个内核,这里有两种选择,一种是手动配置内核,还有一种是自动配置并且编译内核。为了减少坎坷,我们就用第二种方式,执行如下命令进行获取源码,然后编译安装:

root #emerge genkernel

root #genkernel all

当然用genkernel有要求,你的boot分区需要是ext2或者ext3的,否则需要自己配置过

接下来配置系统,我们需要改写fstab这个文件,执行命令:

root #nano -w /etc/fstab

照着wiki上面配置就行了,我的是3个分区,看看我的配置图。

执行命令:

root #nano -w /etc/conf.d/hostname

可以把hostname改成自己想要的,这些配置按照wiki上面改就可以了。

下面配置网络比较关键,执行命令

root #nano -w /etc/conf.d/net

可以先用ifconfig命令查看自己的第一块网卡是啥,不一定是eth0,比如我的网卡名字是enp0s3。

我的配置如图

我选择的是dhcp自动分配ip,当然更加详细的可以看wiki,里面接受的很详细,可以满足各种网络坏境。

然后就是把网卡设置开机启动,执行命令,因为我的网卡名字是enp0s3,所以

root #cd /etc/init.d

root #ln -s net.lo net.enp0s3

root #rc-update add net.enp0s3 default

设置root登录密码,执行命令

passwd,然后输入两次密码就ok了。

安装系统工具我就不多说了,我自己也不熟悉,需要的可以按照wiki上面去安装。

这里我用的是dhcp,所以需要执行如下命令安装这个东西

root #emerge --ask net-misc/dhcpcd

最后一步,安装开启引导程序,可以选择grub2或则lilo,grub2更加简单一些。

依次执行如下命令就好了

root #emerge --ask sys-boot/grub

root #grub2-install /dev/sda

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

最后一步,执行的时候会自动将/boot目录下面的内核程序加入到引导选项卡中。

到这里,我们已经安装好了基本的gentoo系统,运行命令reboot。

© 著作权归作者所有

firebroo
粉丝 18
博文 28
码字总数 16581
作品 0
杭州
程序员
私信 提问
Sandbox fails building during world update

https://forums.gentoo.org/viewtopic-t-1026944-start-0.html 问题:在进行emerge -avDN @world 时出错。 分析:错误原因比较复杂。在于我比较折腾。此机器是Dell 710老机器,安装gentoo 使...

greister
2016/09/24
0
0
安装gentoo详细步骤

因公司使用的系统为gentoo,故安装gentoo并做个笔记,以下骤来自http://showerlee.blog.51cto.com/2047005/1314053。 所需的镜像文件和软件包地址: http://mirror.sohu.com/gentoo/releases...

hbssliulei
2014/05/06
0
0
就是爱作死,就是爱折腾----gentoo ppsspp 安装

Jerry 是个最爱玩的人!!!! 自从电脑上装了 gentoo 之后,就玩不了游戏了.以前也在 gentoo 上装过 Advancdmame 玩一下街机游戏,后来觉得街机实在无聊,重装 gentoo 之后就没再装.也想过装个双系...

Jerry_Baby
2014/05/11
0
1
linux 邮件服务:nullermailer postfix 和 sendmail

logwatch 是 linux 上的一个日志分析工具,能够利用 cron 每天执行日志分析工作,并将日志发送到指定用户的邮箱(具体配置方法请看我的另一篇博客 http://my.oschina.net/JerryBaby/blog/176...

Jerry_Baby
2013/11/17
0
3
我的 Linux 一万小时

这不是一篇鸡汤文,因为我并没有在使用 Linux 一万小时后成为 Linux 达人,甚至在很多方面,我连新手都算不上。我走的这些弯路能篇成一本很有参考价值的反面教材,下面,我来讲讲我用 Linux ...

oschina
2016/05/17
10.7K
50

没有更多内容

加载失败,请刷新页面

加载更多

Angular 英雄编辑器

应用程序现在有了基本的标题。 接下来你要创建一个新的组件来显示英雄信息并且把这个组件放到应用程序的外壳里去。 创建英雄组件 使用 Angular CLI 创建一个名为 heroes 的新组件。 ng gener...

honeymoose
今天
5
0
Kernel DMA

为什么会有DMA(直接内存访问)?我们知道通常情况下,内存数据跟外设之间的通信是通过cpu来传递的。cpu运行io指令将数据从内存拷贝到外设的io端口,或者从外设的io端口拷贝到内存。由于外设...

yepanl
今天
6
0
hive

一、hive的定义: Hive是一个SQL解析引擎,将SQL语句转译成MR Job,然后再在Hadoop平台上运行,达到快速开发的目的 Hive中的表是纯逻辑表,就只是表的定义,即表的元数据。本质就是Hadoop的目...

霉男纸
今天
5
0
二、Spring Cloud—Eureka(Greenwich.SR1)

注:本系列文章所用工具及版本如下:开发工具(IDEA 2018.3.5),Spring Boot(2.1.3.RELEASE),Spring Cloud(Greenwich.SR1),Maven(3.6.0),JDK(1.8) Eureka: Eureka是Netflix开发...

倪伟伟
昨天
17
0
eclipse常用插件

amaterasUML https://takezoe.github.io/amateras-update-site/ https://github.com/takezoe/amateras-modeler modelGoon https://www.cnblogs.com/aademeng/articles/6890266.html......

大头鬼_yc
昨天
9
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部