要创建 RPM 包,你需要安装 RPM 工具链。yum
提供了一个组来捆绑安装这些工具:
sudo dnf group install 'C Development Tools and Libraries' 'RPM Development Tools'
安装完这些之后,你必须从 ZFS Git 仓库中安装构建 ZFS 所需的所有包。这些包属于三个组:
鸿蒙官方战略合作共建——HarmonyOS技术社区
Autotools,用于从平台配置中生成构建文件。
用于构建 ZFS 内核和用户态工具的库。
构建 RPM 包的库。
sudo dnf install libtool autoconf automake gettext createrepo \ libuuid-devel libblkid-devel openssl-devel libtirpc-devel \ lz4-devel libzstd-devel zlib-devel \ kernel-devel elfutils-libelf-devel \ libaio-devel libattr-devel libudev-devel \ python3-devel libffi-devel
现在你已经准备好创建你自己的包了。
OpenZFS 提供了优秀的基础设施。要构建它:
鸿蒙官方战略合作共建——HarmonyOS技术社区
用 git
克隆仓库,并切换到你希望使用的分支/标签。
运行 Autotools 生成一个 makefile。
运行 make rpm
,如果一切正常,RPM 文件将被放置在 build
文件夹中。
$ git clone --branch=zfs-2.0.0-rc3 <https://github.com/openzfs/zfs.git> zfs$ cd zfs$ ./autogen.sh$ ./configure$ make rpm
在 yum
中,仓库是一个服务器或本地路径,包括元数据和 RPM 文件。用户设置一个 INI 配置文件,yum
命令会自动解析元数据并下载相应的软件包。
Fedora 提供了 createrepo
工具来设置 yum
仓库。首先,创建仓库,并将 ZFS 文件夹中的所有 RPM 文件复制到仓库中。然后运行 createrepo --update
将所有的包加入到元数据中。
$ sudo mkdir -p /var/lib/zfs.repo$ sudo createrepo /var/lib/zfs.repo$ sudo cp *.rpm /var/lib/zfs.repo/$ sudo createrepo --update /var/lib/zfs.repo
在 /etc/yum.repos.d
中创建一个新的配置文件来包含仓库路径:
$ echo \"[zfs-local]\\nname=ZFS Local\\nbaseurl=file:///var/lib/zfs.repo\\nenabled=1\\ngpgcheck=0" |\sudo tee /etc/yum.repos.d/zfs-local.repo $ sudo dnf --repo=zfs-local list available --refresh
终于完成了!你已经有了一个可以使用的 yum
仓库和 ZFS 包。现在你只需要安装它们。
$ sudo dnf install zfs$ sudo /sbin/modprobe zfs
运行 sudo zfs version
来查看你的用户态和内核工具的版本。恭喜!你拥有了 Fedora 中的 ZFS。
Copyright © 2013-2021 8a.hk All Rights Reserved. 八艾云 版权所有 中山市八艾云计算有限公司 粤ICP备14095776号