Gentoo 系统安装(1)
近几天在 Louisa 的指导下安装Gentoo系统。这其实是很复杂的学问。我怕我会忘记很多东西,所以打算整理一下,放到这个博客里。
机子上原本是Win10,抹去了系统后,硬件如下:
1 | 电脑型号: 神舟 CN15S 笔记本电脑 |
另外还有一台Mac,用它来做安装期间查资料等的工作。
首先是制作Gentoo启动盘
制作启动盘
这个地方做了很多次,因为中间试图换装Arch Linux。
所以除了最开始在Win10上制作启动盘之外,还在Mac上面制作过。
当然首先你要有个U盘。
Windows上制作。
下载Gentoo
amd64 和 x86 对应64位机和32位机。
如果没有经验的话,建议选择live DVD。
使用UItraISO制作启动盘
下载一个UItraISO,打开。
选择盘符,选择下载好的iso文件。
写磁盘。
在Mac上制作
下载Gentoo
与
在Win上制作
一样使用磁盘工具抹掉U盘
磁盘工具.app
在应用程序/实用工具
文件夹下。打开后选择你的U盘,点图标“抹掉”,格式为Mac OS 扩展 (日志式)
,抹掉unmount U盘
找出U盘文件:
1
diskutil list
可以认出你的U盘文件的标识符, 类似
/dev/disk2
1
diskutil unmountDisk /dev/disk2
写入U盘文件
将第一步下载好的iso文件写到U盘里
1
sudo dd if=~/Downloads/livedvd-amd64-multilib-20160704.img.dmg of=/dev/rdisk2 bs=1m
注意这里的of 文件是rdisk2 而不是disk。
此前查到的有一步是需要制作img文件,但是发现没有这样的一步也是可以的.
这里可能需要一点时间,没有输出。等待着就好了。
拔出U盘
在上一步结束后,可能弹出窗口提示无法读取U盘,只要选择推出即可。
否则直接:
1
diskutil eject /dev/disk2
讲道理的话,直接拔也可以
UEFI启动
进到电脑BIOS选单,把safe boot关掉,然后选择从U盘启动。
各个型号的电脑BIOS的方式不一样,因此此处从略。
我的神舟电脑是F2或F7
在启动之后,就能见到一个有图形界面的Gentoo了。随便选择一个图形界面,然后Login登陆进去,就可以体验到Gentoo的样子了。但是这实际还是在启动盘的系统上,所以我们其实还是需要在终端下继续进行我们接下来的操作。
在终端里的时候直接输入sudo su
登陆到root用户。因为我们经常需要更高的权限来做安装系统的相关工作。
使用SSH连接(Optional)
这是因为我需要粘贴 路姐 给我的代码,所以我需要一个SSH来连到Gentoo上。
首先是让Gentoo连上网络。因为我的电脑好像这方面比较奇怪,所以既尝试了有限连接又尝试了无线的连接。
这里可以参阅Gentoo的文档
讲道理的话,有图形界面的方式可以连接网络,但是不知道为什么我的电脑没有成功。所以还是以终端的方式进行好了。
有线连接 PPPOE
学校有线是pppoe
ip addr确认你的有线网卡:一般是以en或者eth0开头的。
直接使用pppoe-setup
指令即可。按照提示一步一步来即可,除了中途选网卡的时候和pppoe的账号密码,其他均是默认即可。
结束之后pppoe-start连接pppoe。
无线方式连接 WPA2
寝室无线的加密方式是WPA2个人版。
我的liveDVD版本的U盘系统里自带NetworkManager。所以在终端里输入nmtui然后选择你的Wifi登陆即可。
在配置网络结束之后ip addr
看看有否分配到ip地址
配置SSH服务器
配置root用户的密码(在root用户下)。
1 | passwd |
启动ssh服务
1 | /etc/init.d/sshd start |
此时按理来说就可以在其他机子上进行访问了,但是无法用root账户进行访问。但是现在只有root账户,所以需要在
/etc/ssh/ssh_config
中将
1 PermitRootLogin no后面改为yes。
之后重启服务:
1 /etc/init.d/sshd restart
此时可以在本机尝试进行登录。
如果出现在本机登录无法成功的情况,则在/etc/hosts.allow
中加上这么一行:
1 | sshd: <你的另一台电脑的ip>:ALLOW |
挂载文件系统
输入lsblk
命令以查看磁盘
1 | livecd ~ # lsblk |
由此可以知道sda是电脑的硬盘,而sdb是U盘。
接下来打算512MB的boot、10GB的swap空间、然后留50GB空间给root,剩下全部是home的内容。
1 | parted -a optimal /dev/sda |
parted
是一个拆分磁盘空间的命令行。
接下来:
1 | mklabel gpt |
依次做了这些:
- 制造一个新的
gpt
类型的磁盘标签,用于EFI启动 - 设置默认单元为
mib
- 将一个1到513的空间分离出来,作为主空间
- 然后将它命名为boot
- 将余下的所有空间分离出来,作为根目录
- 然后设置从主分区启动
- 退出parted
在退出前输入print
命令,以检查实际的情况。如果一切正常,你的输出应该类似这样:
1 | (parted) print |
设置第一个分区为FAT32文件系统
1 | mkfs.fat -F32 /dev/sda1 |
接下来继续划分rootfs的空间
1 | pvcreate /dev/sda2 |
依次做了这些:
- 创造一个物理卷sda2
- 然后利用这个物理卷创建物理卷组[^1]vg1
- 分一个10G的逻辑卷让他名为swap
- 分一个50G的逻辑卷让它名为root
- 将余下的部分分一个逻辑卷,命名为home
- 列出/dev/mapper
如果一切正常,你的输出应该类似这样:
1 | livecd ~ # ls /dev/mapper |
现在我们已经有了相应的盘区了,接下来要将她们挂载到我们的U盘的文件系统中以使用并操作它们。
1 | mkswap -L "swap" /dev/mapper/vg1-swap |
这些语句做的是:
- 制作swap空间的vg1-swap和ext4格式
vg1-root vg1-home
- 将它们挂载到文件系统/mnt目录下的相应位置。(之后将以/mnt作为新系统的根目录。
到这个地步文件系统是基本完成了。
下一步将是开始准备编译内核的相应部分,首先需要下载编译的工具,因而也需要网络;所以如果跳过了SSH这一步的朋友,还是需要看看如何配置网络。
收尾的说明
这往后的内容将在后面跟着。总之第一天弄的时候我是在这里结束的。
其实到此为止可以直接进行关机操作了。但是为了确保你的改动写入磁盘,你最好执行sync
指令。
然后如果你足够体贴,想去确保安全,可以手动unmount你的文件系统。
1 | umount /mnt/gentoo/home |
然后再进行关机。