有人可以解释一下拥有额外的单独的目的和好处吗?额外用户某些Linux系统中的用户数据库(例如在 Debian 中或者在 Ubuntu 核心中)?为什么标准不够/etc/{group,passwd,shadow}
?
答案1
Debian 的 libnss-extrausers 软件包可以非常轻松地组合来自两个来源的用户和组:
我经常使用我的私人家用 PC 和笔记本电脑从我大学系的 sec=krb5 NFS 文件服务器远程挂载文件系统。为了在ls -l
、groups
、chgrp
、cd ~user/
等命令中查看和使用与文件关联的用户和组标识符,需要在本地 getent/nsswitch 数据库中列出这些标识符。我有我的私人家庭成员用户/etc/passwd
。我不想在私人家用 PC 或笔记本电脑上使用 LDAP,因为当无法访问 LDAP 服务器时(当通往大学部门的 VPN 关闭时),这会导致不便的延迟。因此,我只需使用一个脚本定期将部门 LDAP 服务器中的所有用户和组复制到/var/lib/extrausers/{group,password}
我的私人计算机上。
该/var/lib/extrausers/
机制使这变得非常方便:我的脚本可以简单地覆盖其中的所有文件,而无需修改/etc/{group,passwd}
和跟踪其中的条目来自何处。我什至可以通过自动更新的 deb 包维护这些额外的用户和组。
我目前正在为 macOS 寻找类似的解决方案,我希望它也有/var/lib/extrausers
.有什么建议么?
答案2
好吧,当您想要将“手动”维护的 passwd 文件与“不可变”本地用户的自动部署与 Chef/puppet/ansible 等工具混合使用时(例如,还有其他方法),它会很有用。