Centos7上安装ZFS
< 返回列表时间: 2020-01-17来源:OSCHINA
【围观】麒麟芯片遭打压成绝版,华为亿元投入又砸向了哪里?>>>
一、查看Centos7的版本 # cat /etc/centos-release CentOS Linux release 7.6.1810 (Core)
二、添加对应的ZFS安装包资源 # rpm -ivh http://download.zfsonlinux.org/epel/zfs-release.el7_6.noarch.rpm
三、安装ZFS
ZFS模块可以通过两种方式加载到内核,DKMS和kABI。
它们之间的区别是: 基于DKMS安装ZFS模块,然后由于某种原因更新了操作系统的内核,则必须再次重新编译ZFS内核模块, 否则它将无法工作。 基于kABI 安装 ZFS模块,如果更新操作系统的内核,则不需要重新编译。
在本文中,将基于kABI安装ZFS内核模块。
3.1 在CentOS 7上安装ZFS存储库时,默认情况下会启用基于DKMS的存储库。 因此,必须禁用基于DKMS的存储库并启用基于kABI的存储库。
要禁用基于DKMS的ZFS存储库并启用基于kABI的ZFS存储库,编辑ZFS的yum配置文件 # vim /etc/yum.repos.d/zfs.repo [zfs] name=ZFS on Linux for EL7 - dkms baseurl=http://download.zfsonlinux.org/epel/7.6/$basearch/ # enabled=1 enabled=0 # 关闭DKMS安装 metadata_expire=7d gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-zfsonlinux [zfs-kmod] name=ZFS on Linux for EL7 - kmod baseurl=http://download.zfsonlinux.org/epel/7.6/kmod/$basearch/ # enabled=0 enabled=1 # 启用kABI安装 metadata_expire=7d gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-zfsonlinux
3.2 安装zfs # yum install zfs
重启服务器
3.3 检查zfs模块
3.3.1 系统重启后,检查内核中是否加载了zfs # lsmod |grep zfs zfs 3564425 4 zunicode 331170 1 zfs zavl 15236 1 zfs icp 270148 1 zfs zcommon 73440 1 zfs znvpair 89131 2 zfs,zcommon spl 102412 4 icp,zfs,zcommon,znvpair
3.3.2 如果没有看到任何输出,则内核没有加载ZFS模块。 在这种情况下,请运行以下命令以手动加载ZFS内核模块。 # modprobe zfs
现在再次运行 lsmod | grep zfs,你应该看到内核中加载的zfs模块
3.3.3 添加系统重启自动加载zfs模块
在/etc/sysconfig/modules添加文件 # vim zfs #!/bin/sh /sbin/modinfo -F filename zfs > /dev/null 2>&1 if [ $? -eq 0 ]; then /sbin/modprobe zfs fi # chmod 755 zfs
注:
在zfs 0.8.2版本中zfs模块启动时没有加载
This seems to be missing from newer versions of ZFS, from a 0.7.12 system:
[root@photosCent ~ ] # cat /usr/lib/systemd/system/zfs-import-scan.service [Unit] Description=Import ZFS pools by device scanning DefaultDependencies=no Requires=systemd-udev-settle.service After=systemd-udev-settle.service After=cryptsetup.target Before=dracut-mount.service Before=zfs-import.target ConditionPathExists= ! /etc/zfs/zpool.cache [Service] Type=oneshot RemainAfterExit=yes ExecStartPre=-/sbin/modprobe zfs ExecStart=/sbin/zpool import -aN -o cachefile=none [Install] WantedBy=zfs-import.target
On a 0.8.2 system:
[root@wp-km system] # cat /usr/lib/systemd/system/zfs-import-scan.service [Unit] Description=Import ZFS pools by device scanning Documentation=man:zpool(8) DefaultDependencies=no Requires=systemd-udev-settle.service After=systemd-udev-settle.service After=cryptsetup.target Before=zfs-import.target ConditionPathExists= ! /etc/zfs/zpool.cache [Service] Type=oneshot RemainAfterExit=yes ExecStart=/sbin/zpool import -aN -o cachefile=none [Install] WantedBy=zfs-import.target
热门排行