Chinaunix首页 | 论坛 | 博客
  • 博客访问: 179970
  • 博文数量: 32
  • 博客积分: 2510
  • 博客等级: 少校
  • 技术积分: 290
  • 用 户 组: 普通用户
  • 注册时间: 2004-10-16 12:00
文章分类

全部博文(32)

分类: LINUX

2018-02-25 19:00:39

转自:http://www.cnblogs.com/devilyouwei/p/6659058.html

gentoo安装笔记(下)

上一章,已经对操作系统安装做了充分准备,并且已经从livecd(u盘系统)切换进入了gentoo安装环境中。

不过现在才是真正的开始!打起精神!这可不是在装ubuntu!

配置Portage

安装Portage快照
一个用来告诉Portage哪些软件标题可用于安装、哪些配置文件可以由管理员选择等等的文件集合。

emerge-webrsync

在这个操作中,emerge-webrsync可能会报找不到/usr/portage/位置。这是预期内的并且不用担心——这个工具将会创建这个位置。

需要一点时间,可以泡杯热coffee,等一会~

可选:更新Portage数据库
Portage数据库可以更新到最新版本

假设需要最新更新的包(gentoo protage发布的1小时以内的新包裹)

emerge --sync

选择配置文件

eselect profile list

可用的配置选项

正常作为PC机使用的话,建议使用desktop一项的,所以我选择3

eselect profile set 3

初始化选择环境

emerge --ask --update --deep --newuse @world

此过程快慢根据上面选择的profile,一般名字越长(包越多)则时间越久

第一个default/linux/amd64/13.0是最快的,带有desktop的profile都比较慢,因为要下载桌面环境,如果把kde,gnome,systemed什么的一起加进来就更加可怕了!

这个过程非常之慢,我这儿显示173包下载或更新,足够把刚刚泡的咖啡喝掉在看会ruby编程了!

好吧,他编译了一下午多,我回来了!(毕竟平时写代码编译只是一个小程序,这是编译一个系统啊)

设定时区
选择的时区是Asia/Shanghai:

echo "Asia/Shanghai" > /etc/timezone

基于/etc/timezone条目更新/etc/localtime文件。

/etc/localtime文件用于让系统的C类库知道系统在什么时区

root #emerge --config sys-libs/timezone-data

设置地区
此项工作是本地化,设置语言、编码、日期格式等等

下一步是运行locale-gen。它将生成/etc/locale.gen文件中指定的所有地区。

nano -w /etc/locale.gen

由于没有了vi,只能使用nano,ctrl-O保存,ctrl-X退出,如下添加进去,使用中文和英语

en_US ISO-8859-1 en_US.UTF-8 UTF-8 zh_CN GBK zh_CN.UTF-8 UTF-8

验证所选择的地区当前可用,运行locale -a
验证所选地区

通过eselect locale set VALUE可以设定正确的地区:

eselect locale set 8

设置地区

现在重新加载环境:

env-update && source /etc/profile && export PS1="(chroot) $PS1"

选择一个合适的内核并使用emerge来安装它。

emerge --ask sys-kernel/gentoo-sources

此命令会自动检测当前环境依赖,找到合适的linux kernel,内核是linux系统发行版的核心

编译和安装kernel

编译gentoo的linux内核有两种方式:

  1. 手动配置并生成内核。
  2. 一个叫作genkernel的工具用来自动化生成并安装Linux内核。

第一个是纯手工编译,需要对硬件有一定了解,缺少了模块都可能会导致设备无法正常工作

所以我使用第二种genkernel方案,虽然这不是官方推荐,也不利于学习linux内核编译,但是,之前我手动编译无论如何都找不到wlan设备,导致笔记本的无线无法正常使用,这一次,我决定使用自动化编译

nano -w /etc/fstab

添加如下一行:

/dev/sda2   /boot   ext2    defaults 0 2

其他地方都不要动!

下载安装genkernel

emerge --ask sys-kernel/genkernel

编译并安装

genkernel all

注意:这将又是一个漫长等待的时间,而且没有任何屏幕输出的编译等过程,这一次我睡了一觉,明早继续

早上好,看看电脑,已经编译好了

结束后输入

ls /boot/kernel* /boot/initramfs*

显示如下

(chroot)livecd / # ls /boot/kernel* /boot/initramfs* /boot/initramfs-genkernel-x86_64-4.9.16-gentoo /boot/kernel-genkernel-x86_64-4.9.16-gentoo

表明这一觉,电脑已经自动完成了内核模块的编译和安装

安装固件

emerge --ask sys-kernel/linux-firmware

一些驱动需要先在系统上安装附加的固件才能工作。这经常用于网络接口,特别是无线网络接口。非常多的固件都打包在sys-kernel/linux-firmware里

配置系统

fstab
在Linux系统下,系统所用到的所有分区都必须在 /etc/fstab文件中指明。这个文件包含了这些分区的挂载点(在系统目录树中的位置)、挂载方法和特殊挂载选项(是否自动挂载,是否某个用户可以挂载它等)。

建议在这之前,先安装一个vim编辑器(如果你是vim党),这样会使得后面编辑配置文件更加快速,你不喜欢vim,可以继续使用nano编辑器或者安转emacs

安装vim:

emerge app-editors/vim

安装是通过源码编译的,需要稍作等待......

好了,有vim用了

vim /etc/fstab

如果和我一样,分区有/,/home,/boot分区,就按照以下配置即可
我的fstab配置

提示:

  1. 前三项都能肯定,从第四个开始,noatime性能最高,禁用了“文件操作记录时间戳”
  2. 后面除了/分区为0 1,其他都要用0 2即可

主机名、域名信息

vim /etc/conf.d/hostname

主机名

如果你需要一个域名,在/etc/conf.d/net中设定(文件需要创建)

我作为桌面用户,不需要,所以还要修改下面文件:

如果你选择不设定域名,你可以去掉登录界面上的这条信息:“This is hostname.(none)”。你只需要修改/etc/issue ,把字符串.\O从该文件里删掉即可。

启用PCMCIA
笔记本电脑有个pci扩展坞,如果想启用就安装此项,如果不需要,就跳过

PCMCIA用户首先应该安装sys-apps/pcmciautils软件包。

emerge --ask sys-apps/pcmciautils

root密码

passwd

输入新的密码

安装系统工具

系统日志工具
安装系统日志工具,选择初学者专用的sysklogd

emerge --ask app-admin/sysklogd rc-update add sysklogd default

cron守护进程

emerge --ask sys-process/cronie rc-update add cronie default

文件索引 locate
可以使用locate命令搜索文件

emerge --ask sys-apps/mlocate

远程访问 ssh
自动开启远程服务

rc-update add sshd default

安装网络工具

这些操作非常重要,这决定了你之后能不能连接到网络,如果不能连接互联网,就连emerge命令都没用,到时候会发现许多的命令没有,包括网络连接命令!而没有网络,emerge又不能把它们下载下来,不能emerge安装网络工具,又不好连上网,这就进入了一个恶性循环,虽然还有别的办法比如有线网络,路由器等等,还是先把这些工具都装上,方便我们进入系统后进一步配置和emerge更多的包!

安装dhcpd客户端

emerge --ask net-misc/dhcpcd

安装PPPoE客户端

emerge --ask net-dialup/ppp

安装无线网连接工具
对于笔记本电脑这些非常重要(否则在命令行中无法连接wifi)!!!官方没有特别说明

试着使用iwconfig,你会发现没有这条命令!说明这个程序没有安装,与此同时iw命令也没有!

emerge --ask net-wireless/wireless-tools emerge --ask net-wireless/iw

安装wpa支持,让gentoo可连接wpa路由器,就像之前我们livecd安装gentoo时

emerge --ask net-wireless/wpa_supplicant

配置引导

linux引导
linux常用的引导有三个:grub(1-2),LILO,efibootmgr

选择grub2即可,相对传统而且灵活
LILO之前在slackware linux上我使用过
efibootmgr是比较新的专门用于引导uefi系统,而grub2亦可做到

安装grub2

emerge --ask --verbose sys-boot/grub:2

将grub安装到sda设备上,就是我们的硬盘。如果是多块硬盘设备,安装到系统硬盘(主硬盘)

grub-install /dev/sda

要生成最终的GRUB2配置,运行grub-mkconfig命令:

grub-mkconfig -o /boot/grub/grub.cfg

开始使用gentoo linux
到达此处,gentoo的安装已经结束!

输入:

reboot

重新载入系统(以root身份登录)

连上wifi:按照上一章wpa_supplicant或者iw,iwconfig连接wifi的用法即可
连上之后会自动设置ip,如果没有,使用以下语句:

dhcpcd

dhcp就是动态获取ip地址

ping一下网络,如果已经进入互联网

开始emerge,就像ubuntu的apt-get!

现在开始使用gentoo linux吧!

阅读(1968) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~