Linux 3.10.17-gentoo安装手记

最近电脑不错,服务器抢着用,配了台新机,装上Gentoo会好一些,好久都没装过了

上一次是去年了,日志也没记下,今天狠下一天,也先把系统搭建起来。

根据官方手册步骤,有些地方已经跟新了,安装过程自己修改,虚拟机应该是没办法装vm-tools的了


第一步

下载stage3的镜像,http://mirrors.xmu.edu.cn/gentoo/releases/x86/current-stage3/


第二步
创建虚拟机、linux2.6xx.64bit.加载stage3镜像运行




第三步
给root创建密码,开启ssh服务
直接键入:passwd 设置密码
开启ssh服务/etc/init.d/sshd start
配置完网络登录ssh


第四步
设置硬盘
fdisk /dev/sda


分区的时候boot分区没有从0开始,这个不影响启动,指定盘符就OK啦


分区第一个分区是boot
第二分区swap  内存两倍
第三分区其他。。。。。。






# mke2fs /dev/sda1
# mke2fs -j /dev/sda3
# mkreiserfs /dev/sda4


创建交换分区标志
# mkswap /dev/sda2


 激活交换分区
swapon /dev/sda2




第五步 挂载
挂载


 挂载分区
# mount /dev/sda3 /mnt/gentoo
# mkdir /mnt/gentoo/boot
# mount /dev/sda1 /mnt/gentoo/boot




第六步 文件目录
cd /mnt/gentoo
下载文件
# links http://www.gentoo.org/main/en/mirrors.xml


解压文件
解开stage
# tar xvjpf stage3-*.tar.bz2




,打开snapshots/目录。然后选择最新的Portage快照(portage-latest.tar.bz2)并按D来下载它。
浏览Gentoo镜像列表
# links http://www.gentoo.org/main/en/mirrors.xml


解开Portage快照
# tar xvjf /mnt/gentoo/portage-latest.tar.bz2 -C /mnt/gentoo/usr




第七步 修改make.config


# nano -w /mnt/gentoo/etc/make.conf


代码 4.2: 定义CFLAGS和CXXFLAGS变量
CFLAGS="-O2 -march=i686 -pipe"
# 两个变量使用相同的设置
CXXFLAGS="${CFLAGS}"    




使用mirrorselect更新GENTOO_MIRRORS变量
mirrorselect -i -r -o >> /mnt/gentoo/etc/make.conf




(*) rsync://rsync.cn.gentoo.org/genChina: Any available mirror - rsync.cn.gentoo.org  




第八步、拷贝DNS信息
(参数"-L"是必须的,用来确保我们拷贝的不是一个符号链接)
# cp -L /etc/resolv.conf /mnt/gentoo/etc/




第九步、 挂载/proc和/dev


# mount -t proc none /mnt/gentoo/proc
# mount -o bind /dev /mnt/gentoo/dev




第十步、chroot到新环境里


# chroot /mnt/gentoo /bin/bash
# env-update
>> Regenerating /etc/ld.so.cache...
# source /etc/profile
# export PS1="(chroot) $PS1"




成功进入新系统


新纪元




第一步、配置Portage
1)更新Portage树


# emerge --sync
(如果你在使用一个慢速终端比如一些帧缓冲或者是串口的控制台,你可以添加--quiet选项来加速这个过程:)


# emerge --sync --quiet


验证系统profile
 
# eselect profile list
Available profile symlink targets:
 [1]   default/linux/x86/13.0 *
 [2]   default/linux/x86/13.0/desktop
 [3]   default/linux/x86/13.0/server
(chroot) livecd / # eselect profile list
Available profile symlink targets:
  [1]   default/linux/x86/13.0 *
  [2]   default/linux/x86/13.0/selinux
  [3]   default/linux/x86/13.0/desktop
  [4]   default/linux/x86/13.0/desktop/gnome
  [5]   default/linux/x86/13.0/desktop/gnome/systemd
  [6]   default/linux/x86/13.0/desktop/kde
  [7]   default/linux/x86/13.0/desktop/kde/systemd
  [8]   default/linux/x86/13.0/developer
  [9]   hardened/linux/x86
  [10]  hardened/linux/x86/selinux
  [11]  hardened/linux/uclibc/x86
  
切换profile
eselect profile set 2




第二步、配置USE变量
1)查看可用的USE标记
# less /usr/portage/profiles/use.desc
2)打开/etc/make.conf
# nano -w /etc/make.conf
3) USE设置、添加
USE="-gtk -gnome qt3 qt4 kde dvd alsa cdr"
4)打开/etc/locale.gen
# nano -w /etc/locale.gen

5)指定你的locale
echo en_US ISO-8859-1 >> /etc/locale.gen
echo en_US.UTF-8 UTF-8 >> /etc/locale.gen
echo zh_CN GB18030 >> /etc/locale.gen
echo zh_CN.GB2312 GB2312 >> /etc/locale.gen
echo zh_CN.UTF-8 UTF-8 >> /etc/locale.gen


#locale-gen




配置内核
第一步、配置时区
# ls /usr/share/zoneinfo
(假设您要用GMT)
# cp /usr/share/zoneinfo/GMT /etc/localtime


第二步、安装源码
1)安装内核源码
# emerge gentoo-sources


==========================================================================================
这里开始分支、手动配置内核,自动配置内核
===========================================================================================
自动配置内核
1) 安装genkernel
emerge genkernel


2) 复制安装光盘的配置文件
# zcat /proc/config.gz > /usr/share/genkernel/arch/x86/kernel-config


3)运行genkernel
# genkernel all
===========================================================================================
* Kernel compiled successfully!

* Required Kernel Parameters:
*     root=/dev/$ROOT

*     Where $ROOT is the device node for your root partition as the
*     one specified in /etc/fstab

* If you require Genkernel's hardware detection features; you MUST
* tell your bootloader to use the provided INITRAMFS file.


* WARNING... WARNING... WARNING...
* Additional kernel cmdline arguments that *may* be required to boot properly...
* With support for several ext* filesystems available, it may be needed to
* add "rootfstype=ext3" or "rootfstype=ext4" to the list of boot parameters.


* Do NOT report kernel bugs as genkernel bugs unless your bug
* is about the default genkernel configuration...

* Make sure you have the latest ~arch genkernel before reporting bugs.
==========================================================================================




(chroot) livecd src # ls /boot/
System.map-genkernel-x86-3.10.17-gentoo  initramfs-genkernel-x86-3.10.17-gentoo  kernel-genkernel-x86-3.10.17-gentoo  lost+found






配置系统啦
第一步、文件系统信息
1)打开/etc/fstab
# nano -w /etc/fstab
2)/etc/fstab中/boot行的一个例子
/dev/sda1   /boot     ext2    defaults        1 2
3)/etc/fstab的一个完整例子
/dev/sda1   /boot        ext2    defaults,noatime     1 2
/dev/sda2   none         swap    sw                   0 0
/dev/sda3   /            ext3    noatime              0 1


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


第二步、设定主机名
设定主机名
# nano -w /etc/conf.d/hostname


(将HOSTNAME的变量值设定为主机名)
HOSTNAME="tux"


 打开/etc/conf.d/net准备编辑
# nano -w /etc/conf.d/net


默认的/etc/conf.d/net
# This blank configuration will automatically use DHCP for any net.*
# scripts in /etc/init.d.  To create a more complete configuration,
# please review /etc/conf.d/net.example and save your configuration
# in /etc/conf.d/net (this file :]!).




手动为eth0设置IP信息
config_eth0=( "192.168.0.2 netmask 255.255.255.0 brd 192.168.0.255" )
routes_eth0=( "default via 192.168.0.1" )


在启动时自动启用网络


为了在启动时自动激活网络接口,你必须添加这些到default运行级别。


添加net.eth0到默认的运行级别
# rc-update add net.eth0 default






 创建额外的启动脚本//一般用不着
# cd /etc/init.d
# ln -s net.lo net.eth1
# rc-update add net.eth1 default






记下网络信息


现在你需要告诉Linux有关你的网络的信息。这需要在/etc/hosts文件中定义,它将帮助你将那些无法被域名解析器解析的主机名解析成IP地址。你需要定义你自己的系统。如果你不想启用内部DNS系统的话,你也需要定义内部网络上的其它系统。


打开/etc/hosts
# nano -w /etc/hosts
代码 2.11: 填入网络信息
(这里定义的是现在的系统)
127.0.0.1     tux.homenetwork tux localhost


(定义你网络上的其它系统。如果你要用这种方式进行定义的话,它们必须有静
态IP。)
192.168.0.5   jenny.homenetwork jenny
192.168.0.6   benny.homenetwork benny


系统信息


Root密码


首先我们键入以设置root密码:


设置root密码
# passwd




系统信息


Gentoo使用/etc/rc.conf来做通用的、系统级的配置。打开/etc/rc.conf并好好读读这个文件中的注解:)


代码 3.2: 打开/etc/rc.conf
# nano -w /etc/rc.conf






安装一个系统日志工具
# emerge syslog-ng
# rc-update add syslog-ng default




文件索引


如果你想索引你的系统文件使得你能够使用locate工具很快定位它们,你需要安装sys-apps/slocate。


代码 3.1: 安装slocate
# emerge slocate








bootloader配置文件中加入一个video内核参数来激活Framebuffer
首先,您需要知道您使用的framebuffer设备。您应该使用uvesafb作为VESA驱动.


video语句用来控制framebuffer的显示参数。此语句中需指定欲使用的framebuffer驱动以及你想启用的控制语句。/usr/src/linux/Documentation/fb/uvesafb.txt文件里列出了所有变量。最常用的选项是:


控制选项 描述
ywrap 假设显卡支持显存回卷操作(也就是说显存里的数据填充到尽头的时候会接着从起始处继续)
mtrr:n 设置MTRR寄存器. n 可以是:
0 - 禁用
1 - 不使用cache
2 - write-back
3 - write-combining
4 - write-through
模式 设定分辨率,颜色深度和刷新率。 例如,1024x768-32@85对应的分辨率是1024x768,32位色深和85Hz的刷新率。
最后这个参数的内容可能类似这样
video=uvesafb:mtrr:3,ywrap,1024x768-32@85
将它记下来;很快您将用到它。


安装GRUB


要安装GRUB,首先让我们emerge它:


代码 2.1: 安装GRUB
# emerge grub


创建/boot/grub/grub.conf
# nano -w /boot/grub/grub.conf


 使用genkernel的用户的grub.conf
default 0
timeout 30
splashimage=(hd0,0)/boot/grub/splash.xpm.gz


title Gentoo Linux 3.3.8
root (hd0,0)
kernel /boot/kernel-genkernel-x86-3.3.8-gentoo root=/dev/ram0 init=/linuxrc ramdisk=8192 real_root=/dev/sda3 
initrd /boot/initramfs-genkernel-x86-3.3.8-gentoo


# 只有在双启动的情况下才需要以下内容
title Windows XP
rootnoverify (hd0,5)
makeactive
chainloader +1


如果您需要传递任何其他的参数给内核,简单地在内核命令后面加上它们就可以了。我们已经传递了一个参数(root=/dev/sda3或real_root=/dev/sda3),但您也可以加上其他的,例如我们前面讨论过的为framebuffer加上video参数。




=======================================================================================================
default 0
timeout 30
splashimage=(hd0,0)/boot/grub/splash.xpm.gz


title Gentoo Linux 3.3.8
root (hd0,0)
kernel /boot/kernel-genkernel-x86-3.10.17-gentoo root=/dev/ram0 init=/linuxrc ramdisk=8192 real_root=/dev/sda3
initrd /boot/initramfs-genkernel-x86-3.10.17-gentoo
video=uvesafb:mtrr:3,ywrap,1024x768-32@85


=======================================================================================================


创建/etc/mtab
# grep -v rootfs /proc/mounts > /etc/mtab
现在我们就可以用grub-install来安装GRUB了:


代码 2.6: 执行grub-install
# grub-install --no-floppy /dev/sda


grub2-install --no-floppy /dev/sda


尼玛,这来还没有结束就reboot了,彤彤!!!

exit

cd

umount xxxxxxx



居然换到了grub2,跟之前的不一样了
grub>set root=(hd0,msdos1)
grub>linux /kernel-xxxx.xxx root=/dev/sda3
grub>initrd /initramfs-xxx 
grub> boot




mount /boot
# grub2-install --grub-setup=/bin/true /dev/sda


# grub2-mkconfig -o /boot/grub/grub.cfg
Generating grub.cfg ...
Found linux image: /boot/kernel-3.2.12-gentoo
Found initrd image: /boot/initramfs-genkernel-x86_64-3.2.12-gentoo
done




最后补充一点网卡名字变了,不再是eth0,Fedora之前也是如此

 

 

 

 

新添加分区 /dev/sdb 

fdisk /dev/sdb

主分区、其他默认 

mkfs.ext4 /dev/sdb1

修改/etc/fstab

添加/dev/dm-0 /home/android defaults 0 0

主要是不知道为何那个东西是/dev/dm-0 而不是dev/sdb1

在fdisk -l中看到的

 

 

在/etc/make.conf中添加源

SYNC="rsync://mirrors.163.com/gentoo-portage"
GENTOO_MIRRORS="http://mirrors.163.com/gentoo
                ftp://mirror.lzu.edu.cn/gentoo"

 

 

你可能感兴趣的:(Gentoo)