zoukankan      html  css  js  c++  java
  • 开始使用gentoo linux——gentoo安装笔记(下)

    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吧!

  • 相关阅读:
    从B树、B+树、B*树谈到R 树
    1.红黑树和自平衡二叉(查找)树区别 2.红黑树与B树的区别
    红黑树 Java实现
    自平衡二叉(查找树/搜索树/排序树) binary search tree
    从零开始: 二叉查找
    深入理解JAVA虚拟机JVM
    java中的变量各占得字节数
    java中new两个对象,在堆中开辟几个对象空间
    Spring面试,IoC和AOP的理解, @Transactional原理及使用
    EasyUI Tabs + Yii2.0实现iframe方式打开页面(解决共用静态文件引入加载的问题)
  • 原文地址:https://www.cnblogs.com/devilyouwei/p/6659058.html
Copyright © 2011-2022 走看看