Keywords: Gentoo, installation, 中文

希望你的前面安装一切都顺利,并且觉得很有意思。

  • 时区设置:

查看自己所属时区,并且 echo 到 /etc/timezone 文件下

 ls /usr/share/zoneinfo

echo "Europe/Berlin" > /etc/timezone

emerge --config sys-libs/timezone-data 
  • 语言设置:

这里需要完成语言设置,还是那句话,对于中文使用者,这里需要增加中文支持

 nano -w /etc/locale.gen 

在上面文件中,在你需要的语言前面,删除 #,然后增加以下几行

 zh_TW.UTF-8 UTF-8

zh_CN.UTF-8 UTF-8 

执行

 locale-gen 

然后设置系统默认语言,具体数字根据你自己需要改动,最后刷新下环境

 eselect locale list

eselect locale set 3

env-update

source /etc/profile

export PS1="(chroot) $PS1" 

内核编译:

现在要进入一个重要部分了,就是内核编译,在进行内核编译前,需要安装一个工具(因为对于初级玩家而言,手动编译内核太过于麻烦费神了,所以使用 genkernel 工具)

 emerge --ask sys-kernel/genkernel 

然后抓取内核源文件,之后你会在 /usr/src/linux 下看到 linux–gentoo

 emerge --ask sys-kernel/gentoo-sources

ls -l /usr/src/linux 

接着就是编译内核了,在这之前首先要告诉系统哪个分区是启动分区,好让启动内核编译好后直接安装到这个分区,打开下面的文件,并输入后面的内容,

 nano -w /etc/fstab

/dev/sda        /boot        ext2        defaults        0 2 

编译 Linux kernel

 genkernel --menuconfig all 

这个又会花去一个世纪(夸张了),你可以陪你小孩(女友,老婆,丈母娘,这个随你)玩一会。

但是有一个要提醒的是,如果你跟我一样,编译的是 x86 系统,记得在上面命令后跳出来的界面中,反选掉 编译 x64 library 之类的选项。不然编译会报错,无法进行。

其实如果你不着急,你可以逐项的看看,毕竟你以后可能要跟 Gentoo 打交道的(要不然你为什么在读这个博客呢?)。看看它都编译了那一些驱动(比如,无线网卡驱动有没有选啊,声卡驱动有没有选啊),不过不用担心,基本上系统检测到的模块都会进行内核编译的。

查看编译:

在编译完成后,看下在 /boot 目录下有没有 kernel 和 initramfs 两个文件

 ls /boot/kernel* /boot/initramfs* 

也可以看看到底编译了什么模块驱动

 find /lib/modules/<kernel version>/ -type f -iname '*.o' -or -iname '*.ko' 

系统配置:

现在,在内核编译完成后,我们该需要的文件都已经写进了分区 (/boot -> /dev/sda2, / -> /dev/sda4),然后把这些改动永久的写入 /etc/fstab

 nano -w /etc/fstab 

/dev/sda2      /boot          /ext2        defaults,noatime        0 2

/dev/sda3      none           swap         sw                      0 0

/dev/sda4      /              ext4         noatime                 0 1

/dev/cdrom     /mnt/cdrom     auto         noauto,user             0 0 

网络配置:

  • 修改主机名字(选择一个你喜欢的名字,如果是给实验室的 clusters 取名字,可以搞点有趣的,比如以中国朝代来命名),添加 hostname = “”
 nano -w /etc/conf.d/hostname 

有线连接配置:

如果你只想要有网线连接,则 follow 这部分;否则,请看无线连接配置部分

  • 首先安装两个软件(请一定记得要安装 DHCP 工具,不然你启动后发现完全没有网络)
emerge --ask net-misc/dhcp

rc-update add dhcpd default
 emerge --ask --noreplace net-misc/netifrc 
  • 修改配置文件
 nano -w /etc/conf.d/net 

添加以下内容,从而使电脑获得一个静态ip

 config_enp0s3="192.168.#.# netmask 255.255.255.0 brd 192.168.0.255"

routes_enp0s3="default via 192.168.0.1" 

或者直接由 DHCP 直接分配

 config_enp0s3="dhcp" 

下面几行的配置是为了使电脑启动时,自动加载网络配置

 cd /etc/init.d/

ln -s net.lo net.enp0s3

rc-update add net.enp0s3 default 

GRUB 安装:

  • 到这里位置,你还不能重新启动,因为没有安装 GRUB 启动器。完成以下步骤来完成安装
 emerge --ask --verbose sys-boot/grub:2

grub-intall /dev/sda

grub-mkconfig -o /boot/grub/grub.cfg 
  • 给 root 设置密码,并且添加一个用户
 passwd

useradd -m -G users,wheel,audio -s /bin/bash <name> 

其实在这个时候,你也可以安装一些你常用的软件,比如 ssh, cron, mlocate, syslog,

  • 安装 sudo,然后 uncomment the wheel group
 emerge --ask sudo 
 #%wheel ALL=(ALL) ALL 
  • 现在已经准备好重启了,先推出 chroot 环境,然后 unmount 挂载
 exit

cd ~

umount -l /mnt/gentoo/dev{/shm,/pts,}

umount -R /mnt/gentoo

reboot 

无线连接配置:

在这之前的内容,我都是 double check 的(我在自己电脑上装过一会,然后在 virtualbox 里又验证过一回)。但是关于无线网络配置部分,我无法在虚拟机里验证。因为虚拟机的缘故,我无法加载无线网卡适配器。所以如果有错误,请指出。

安装几个必要软件 wireless-tools, pciutils 和 firmware 先,因为很多的无线连接配置需要有 firmware 的支持,具体可以参考这个网址

 emerge --ask net-wireless/wireless-tools sys-apps/pciutils 
 emerge --ask sys-kernel/linux-firmware 
  • 首先通过
     ls /sys/class/net

    来查看目前有哪些网络连接可用。你应该可以看到 enp0s3 和 lo 两个 entries,说明目前无线网络暂时还不能用。

  • 然后你要明确,你是否有 wifi adapter 硬件在你电脑中,如果你有,应该可以在下面命令后看到 iwl### 和 Network controller 的条目
 find /lib/modules/<kernel version>/ -type f -iname '*.o' -or -iname '*.ko' | grep iwl
lspci --nkv
  • 然后记录下 wifi 适配器的 Kernel driver 和 Kernel modules,然后记得在 genkernel –menuconfig all 的时候安装需要的驱动模块(在我的例子中,这个模块叫 iwl3945);如果已经安装好的系统,则运行
 modprobe iwl3945 
  • 增加一个 wlp3s0 条目(不然通过 ifconfig 无法查看到 wifi 配置),然后添加到启动项中。关于名字,你需要保持一致,如果你都用 wlp3s0 那就都使用这个;如果你都使用 wlan0,则保持一致
 ln -s /etc/init.d/net.lo /etc/init.d/net.wlp3s0

rc-update add net.wlp3s0 default 
  • 安装 wpa_supplicant 工具(如果这时候系统里还没有安装)
 sudo emerge --ask net-wireless/wpa_supplicant
  • 在 配置文件 conf (/etc/wpa_supplicant/wpa_supplicant.conf)中输入以下内容,

# Allow users in the 'wheel' group to control wpa_supplicant

ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=wheel

# Make this file writable for wpa_gui / wpa_cli

update_config=1 

最后修改权限

 chmod 600 /etc/wpa_supplicant/wpa_supplicant.conf 
  • 同时修改 conf.d 文件的 /etc/conf.d/wpa_supplicant 来读取/etc/wpa_supplicant/wpa_supplicant.conf 文件,
 wpa_supplicant_args="-B -M -c/etc/wpa_supplicant/wpa_supplicant.conf" 
  • 然后将 wpa_supplicant 加入启动项目中
 sudo rc-update add wpa_supplicant default

/etc/init.d/wpa_supplicant start 
  • 并通过输入以下内容,告诉网络来使用 wpa_supplicant
 sudo vim /etc/conf.d/net 
 modules_wlp3s0="wpa_supplicant"

config_wlp3s0="dhcp" 
  • 最后一步,添加你的无线网络和密码
 sudo wpa_cli 

然后扫描网络,选择网络,设置密码。或者你也可以以下命令手动添加,

 wpa_passphrase <wifi name=""> <password> 

欢迎阅读 Gentoo 安装(3): 怎么给 Gentoo 安装一个desktop environment

Advertisements

2 thoughts on “Gentoo 安装(2)

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s