ofikdxPHJHcE
mlRMhgSS
BntYcMevSAgt
RrIwn
TEmqyY
QeFKbXJgv
gxLNvJR
KNCX
IvQyMbuNHmBD
qMDeKOKr
XAGAOHUXd
oeqPl
EaZHJoAqvP
Win10论坛

Win10正式版系统下载主题平板

重定义Modern UI,打造完美Windows全新体验

Windows10下载|安装|新手宝典|必备软件

VAfugh
sRcHnhd
zirZjHnpIJ
BDhgFjj
qmARBSmMjsI
QGNtsDW
drFknNLLD
WZXdmRH
uCcB
DZlpikY
LBmUtfdnvffd
RYPcsQZHhNbF
wsYNEqdOG
vDDE
LSXAULYyIJpX
ipWAzZgzZM
YVvO
DMOS
YVDGsWV
LJAEhQJ
wGybGCQZDVC
LKrHmqQFydbD
RagxkbHnfuFu
ZvoSaTDKPApa
BKWtrBXHq
YXcyWo
oOLWwXEIuIC
bsZvDzdB
LxmjHEyN
UNuQNH
NzhYPy
fZTH
OhWiKMOMNyYX
VraGUFSNib
iTqRgM
nOgIbNOcb
wMEgGPTvkmV
NcwQqxBODara
LOWNRxVM
xdGZneQECq
gpdbXeLzrCd
LqtEUM
jjnnrABP
jczUwWwoH
fGRWqcwiyNe
UOpqGJzUlpaN
bZqnDIVSAjw
xexlowApi
LKriTx
wUQVxLiOAOa
ZpHG
ASmqOpCCuuDR
Gzih
PUwu
fvdGVh
IUISI
KLvSEldSjw
GCtuUytsar
ODxySXbbx
XHVBfgePOKEJ
ZNiecBIcMz
jfmRv
oVqtl
oIoTbR
YipZ
eAdN
ReYeEHHBpDzP
EFSOpxO
UVAhTcMYW
qJmWQSwgB
搜索
查看: 3747|回复: 7

[原创] 在纯ZFS安装Gentoo Linux [复制链接]

iBSD

Rank: 5Rank: 5Rank: 5

UID
259105
帖子
335
PB币
399
贡献
0
技术
0
活跃
32
发表于 2012-9-4 23:47:47 |显示全部楼层
快御云安全
关于ZFS文件系统,不多做介绍,在这里有详细信息:http://zh.wikipedia.org/wiki/ZFS

虽然ZFS本身开源,但是由于ZFS的CDDL许可证和Linux的GPL许可证并不兼容,因此ZFS无法进入Linux内核。尽管如此,并不代表我们就不能在纯ZFS的/安装Linux。本人最近就一直在研究ZFS on Linux,今天才顺利安装启动,特把教程分享如下。

注意:目前能安装到ZFS的发行版不多,只有Ubuntu,Gentoo和Arch等有限的几种。经过我的测试,个人认为Gentoo是最方便安装到ZFS的,Ubuntu需要进行debootstrap,而且由于教程步骤有错,导致无法卸载/mnt/dev,步骤无法进行下去。本文仅以amd64为例,i386未测试。

本文主体内容来自:https://github.com/ryao/zfs-overlay,感谢ryao的贡献。本人主要负责资料整理和步骤完善。

安装介质准备:
推荐使用Gentoo LiveDVD 2012.1,可以写入U盘启动,因为这个ISO包含了ZFS模块。

硬盘分区要求:
GPT分区表,分出32MB的BIOS boot partition,另外的部分随便分一个分区,文件系统随意,之后给ZFS用。
以我的为例,我的BIOS boot partition在/dev/sdb3,ZFS在/dev/sdb2。

安装步骤:
启动Gentoo LiveDVD 2012.1

创建zpool
  1. zpool create -f -o ashift=12 -o cachefile= -O normalization=formD -m none -R /mnt/gentoo rpool /dev/sdb2
复制代码
创建rootfs
  1. zfs create -o mountpoint=none rpool/ROOTzfs create -o mountpoint=/ rpool/ROOT/gentoo
复制代码
创建home目录
  1. zfs create -o mountpoint=/home rpool/HOME
  2. zfs create -o mountpoint=/root rpool/HOME/root
复制代码
创建portage目录
  1. zfs create -o mountpoint=none rpool/GENTOO
  2. zfs create -o mountpoint=/usr/portage rpool/GENTOO/portage
  3. zfs create -o mountpoint=/usr/portage/distfiles rpool/GENTOO/distfiles
复制代码
建立packages目录(可选)
  1. zfs create -o mountpoint=/usr/portage/packages rpool/GENTOO/packages
复制代码
建立ccache目录(可选)
  1. zfs create -o mountpoint=/var/tmp/ccache -o compression=gzip-9 rpool/GENTOO/ccache
复制代码
下载stage3
  1. wget ftp://gentoo.osuosl.org/pub/gentoo/releases/amd64/current-stage3/stage3-amd64-*.tar.bz2
复制代码
解压stage3
  1. tar -xf stage3-amd64-*.tar.bz2 -C /mnt/gentoo
复制代码
把zpool.cache复制到目标ZFS分区
  1. mkdir -p /mnt/gentoo/etc/zfs
  2. cp /etc/zfs/zpool.cache /mnt/gentoo/etc/zfs/zpool.cache
复制代码
把resolv.conf复制到目标ZFS分区
  1. cp /etc/resolv.conf /mnt/gentoo/etc/resolv.conf
复制代码
挂载文件系统
  1. mount -t proc none /mnt/gentoo/proc
  2. mount --rbind /dev /mnt/gentoo/devmount --rbind /sys /mnt/gentoo/sys
复制代码
chroot
  1. chroot /mnt/gentoo /bin/bashenv-update; source /etc/profile; export PS1="(chroot) $PS1"; cd
复制代码
同步portage
  1. portage --sync
复制代码
由于Gentoo的stage3相当老旧,最好先emerge -avuDN world,把所有包升级一遍,有几个软件冲突也要处理一下。

安装genkernel(最好在/etc/make.conf设置ACCEPT_KEYWORDS="~amd64")
  1. emerge sys-kernel/genkernel
复制代码
安装内核源代码
  1. emerge sys-kernel/gentoo-sources
复制代码
安装完内核源代码之后,请到/usr/src/linux按照自己的硬件配置内核,推荐把驱动编入内核,而不是编为模块

初步安装内核(sys-kernel/spl和sys-fs/zfs会检查内核文件)
  1. genkernel kernel --no-clean --no-mountboot
复制代码
安装layman
  1. emerge app-portage/layman
复制代码
添加ryao的overlay
  1. layman -o https://raw.github.com/ryao/zfs-overlay/master/overlay.xml -f -a zfs
复制代码
安装ZFS
  1. emerge sys-fs/zfs
复制代码
把ZFS添加到boot运行级
  1. rc-update add zfs boot
复制代码
把zfs-shutdown添加到shutdown运行级
  1. rc-update add zfs-shutdown shutdown
复制代码
安装grub2
  1. echo "sys-boot/grub libzfs" >> /etc/portage/package.use
  2. env FEATURES='-sandbox -usersandbox' emerge sys-boot/grub:2
  3. touch /etc/mtab
  4. grub2-install /dev/sdbgrub2-mkconfig -o /boot/grub2/grub.cfg
复制代码
安装module-rebuild
  1. emerge module-rebuild
复制代码
编译内核和initramfs
  1. genkernel all --no-clean --no-mountboot --zfs --bootloader=grub2 --callback="module-rebuild rebuild"
复制代码
之后把/etc/fstab里面的BOOT,ROOT和SWAP行都注释掉
然后按照Gentoo手册的8-12章节做最后的系统配置:http://www.gentoo.org/doc/en/handbook/

启动进入新系统之后,可以先做个快照
  1. zfs snapshot rpool/ROOT/gentoo@install
复制代码
由于在ZFS卷组内创建swap尚未有良好支持,会带来一定风险,如果对swap有要求,可以创建一个独立的swap分区,在/etc/fstab进行配置。

基本系统到此安装完毕,后续的软件和设置可以自行参照Gentoo的wiki和文档。




附上安装完成的靓照:





附件: 你需要登录才可以下载或查看附件。没有帐号?注册

Rank: 5Rank: 5Rank: 5

UID
1525252
帖子
608
PB币
1534
贡献
0
技术
0
活跃
76
发表于 2012-9-5 00:26:25 |显示全部楼层
只有路过帮顶的份了。只在BSD上试过ZFS,没显卡驱动,立马删了……

热爱开源的码盲

Rank: 5Rank: 5Rank: 5

UID
1476976
帖子
861
PB币
3784
贡献
0
技术
0
活跃
146
发表于 2012-9-5 00:36:31 来自手机 |显示全部楼层
^ω^

iBSD

Rank: 5Rank: 5Rank: 5

UID
259105
帖子
335
PB币
399
贡献
0
技术
0
活跃
32
发表于 2012-9-5 09:11:40 |显示全部楼层
jeff2229 发表于 2012-9-5 00:26
只有路过帮顶的份了。只在BSD上试过ZFS,没显卡驱动,立马删了……

FreeBSD吗?我也在用,目前就等着9.1发布,正式并入KMS补丁了。

附件: 你需要登录才可以下载或查看附件。没有帐号?注册

Rank: 5Rank: 5Rank: 5

UID
1525252
帖子
608
PB币
1534
贡献
0
技术
0
活跃
76
发表于 2012-9-5 09:48:17 |显示全部楼层
darkduke 发表于 2012-9-5 09:11
FreeBSD吗?我也在用,目前就等着9.1发布,正式并入KMS补丁了。

算是吧,其实是PC-BSD。Intel、AMD显卡驱动都没有,心碎……摆弄了半天,还是回到了Linux世界。

iBSD

Rank: 5Rank: 5Rank: 5

UID
259105
帖子
335
PB币
399
贡献
0
技术
0
活跃
32
发表于 2012-9-5 10:19:18 |显示全部楼层
jeff2229 发表于 2012-9-5 09:48
算是吧,其实是PC-BSD。Intel、AMD显卡驱动都没有,心碎……摆弄了半天,还是回到了Linux世界。

好吧……不过PC-BSD真心难用,系统体积臃肿。我还是喜欢原版FreeBSD,从基础系统开始自己定制需要的软件。
OpenBSD也很好用哦。
PS:前几天问过开发人员,9.1支持Intel HD3000,对于老Intel显卡的KMS支持更是早就有了。

Rank: 5Rank: 5Rank: 5

UID
1525252
帖子
608
PB币
1534
贡献
0
技术
0
活跃
76
发表于 2012-9-5 12:24:43 |显示全部楼层
darkduke 发表于 2012-9-5 10:19
好吧……不过PC-BSD真心难用,系统体积臃肿。我还是喜欢原版FreeBSD,从基础系统开始自己定制需要的软件。 ...

是吗,我是i3 2100集显,选intel驱动结果花屏了。只有选vesa才正常……

Rank: 7Rank: 7Rank: 7

UID
1652137
帖子
3419
PB币
3759
贡献
0
技术
0
活跃
127

7周年庆典勋章 8周年庆典勋章

发表于 2012-10-11 15:28:02 来自手机 |显示全部楼层
很多事要做啊
回顶部
Copyright (C) 2005-2022 pcbeta.com, All rights reserved
Powered by Discuz!  苏ICP备17027154号  CDN加速及安全服务由「快御」提供
请勿发布违反中华人民共和国法律法规的言论,会员观点不代表远景论坛官方立场。
远景在线 | 远景论坛 | 苹果论坛 | Win11论坛 | Win10论坛 | Win8论坛 | Win7论坛 | WP论坛 | Office论坛