首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >哪个UID/GID对新包是免费的

哪个UID/GID对新包是免费的
EN

Unix & Linux用户
提问于 2023-02-28 13:07:51
回答 1查看 63关注 0票数 0

阅读https://unix.stackexchange.com/a/222376/246754后,rpm如何确保不存在uid/gid之间的冲突?

我所看到的是类似于https://github.com/NixOS/nixpkgs/blob/68196a61c26748d3e53a6803de3d2f8c69f27831/nixos/modules/config/users-groups.nix#L640-L642 (供比较)

不过,我必须构建一个VM,并使用/etc/passwd来查看所选的uid。它没有完全满足我的需要,因为174不是他们的默认。同样,nix也为根https://github.com/NixOS/nixpkgs/commit/dba1d48b7897c49e5df9430c6b60f17e03ec361e保留一些uid,比如0,我可以在不构建VM的情况下看到列表,或者可以使用cli进行查询。他们还为id配置了一个分配器,所以我不需要管理它。

这是在重新构建/etc/passwd时运行的脚本

PS:我标记了rpm-spec,因为链接的问题是关于RPM的,但是这个问题更可能发生在其他工具上,比如apt,yum,pacman,brew.如果您有其他系统的知识,请创建另一个问题并回答它(保持Q&A风格)或评论。

EN

回答 1

Unix & Linux用户

发布于 2023-02-28 13:18:52

通常我们指的是用户/组的名称,而不是他们的UID/GID。

有自己用户的包将使用useradd标记调用--systemadduser。这将为系统用户(通常为100-999)创建一个未使用的UID/GID范围内的新用户。

例如,我使用的是debian系统,它存在于/var/lib/dpkg/info/openssh-server.postinst (Debian相当于您所描述的RPM-SPEC脚本)中。

代码语言:javascript
复制
if ! getent passwd sshd >/dev/null; then
    adduser --quiet --system --no-create-home --home /run/sshd --shell /usr/sbin/nologin sshd
fi

OpenSSH从不对用户sshd的UID/GID进行硬编码,它会对该名称进行查找。

票数 1
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/737217

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档