设为首页 - 加入收藏 ASP站长网(Aspzz.Cn)- 科技、建站、经验、云计算、5G、大数据,站长网!
热搜: 数据 手机 公司
当前位置: 首页 > 服务器 > 搭建环境 > Windows > 正文

如何构建一台网络引导服务器(二)(2)

发布时间:2019-01-05 06:02 所属栏目:117 来源:Gregory Bartholomew
导读:重新配置 PAM 去使用 pam_mount : # dnf install -y patch # cp -r /fc28/usr/share/authselect/default/sssd /fc28/etc/authselect/custom # echo 'initgroups: files' /fc28/etc/authselect/custom/sssd/nsswitc

重新配置 PAM 去使用 pam_mount

  1. # dnf install -y patch
  2. # cp -r /fc28/usr/share/authselect/default/sssd /fc28/etc/authselect/custom
  3. # echo 'initgroups: files' >> /fc28/etc/authselect/custom/sssd/nsswitch.conf
  4. # patch /fc28/etc/authselect/custom/sssd/system-auth << END
  5. @@ -12 +12,2 @@
  6. -auth sufficient pam_sss.so forward_pass
  7. +auth requisite pam_mount.so {include if "with-pammount"}
  8. +auth sufficient pam_sss.so {if "with-pammount":use_first_pass|forward_pass}
  9. @@ -35,2 +36,3 @@
  10. session required pam_unix.so
  11. +session optional pam_mount.so {include if "with-pammount"}
  12. session optional pam_sss.so
  13. END
  14. # patch /fc28/etc/authselect/custom/sssd/password-auth << END
  15. @@ -9 +9,2 @@
  16. -auth sufficient pam_sss.so forward_pass
  17. +auth requisite pam_mount.so {include if "with-pammount"}
  18. +auth sufficient pam_sss.so {if "with-pammount":use_first_pass|forward_pass}
  19. @@ -32,2 +33,3 @@
  20. session required pam_unix.so
  21. +session optional pam_mount.so {include if "with-pammount"}
  22. session optional pam_sss.so
  23. END
  24. # chroot /fc28 authselect select custom/sssd with-pammount --force

另外,要确保从客户端上总是可解析 NFS 服务器的主机名:

  1. # MY_IP=$(host -t A $MY_HOSTNAME | awk '{print $4}')
  2. # echo "$MY_IP $MY_HOSTNAME ${MY_HOSTNAME%%.*}" >> /fc28/etc/hosts

可选,允许所有用户可以使用 sudo

  1. # echo '%users ALL=(ALL) NOPASSWD: ALL' > /fc28/etc/sudoers.d/users

转换 NFS 根目录到一个 iSCSI 后备存储器

在一个 nfsroot 连接建立之后,目前版本的 nfs-utils 可能很难为家目录建立一个从客户端到 NFS 服务器的第二个连接。当尝试去访问家目录时,客户端将被挂起。因此,为了共享网络引导镜像,我们将使用一个不同的协议(iSCSI)来规避这个问题。

首先 chroot 到镜像中,重新配置它的 initramfs,让它从一个 iSCSI 根目录中去引导:

  1. # for i in dev dev/pts dev/shm proc sys run; do mount -o bind /$i /fc28/$i; done
  2. # chroot /fc28 /usr/bin/bash --login
  3. # dnf install -y iscsi-initiator-utils
  4. # sed -i 's/nfs/iscsi/' /etc/dracut.conf.d/netboot.conf
  5. # echo 'omit_drivers+=" qedi "' > /etc/dracut.conf.d/omit-qedi.conf
  6. # echo 'blacklist qedi' > /etc/modprobe.d/blacklist-qedi.conf
  7. # KERNEL=$(ls -c /lib/modules | head -n 1)
  8. # INITRD=$(find /boot -name 'init*' | grep -m 1 $KERNEL)
  9. # dracut -f $INITRD $KERNEL
  10. # logout
  11. # for i in run sys proc dev/shm dev/pts dev; do umount /fc28/$i; done
  12. # > /fc28/root/.bash_history

在测试时,qedi 驱动会破坏 iSCSI,因此我们将它禁用。

(编辑:ASP站长网)

网友评论
推荐文章
    热点阅读