linux -/etc/passwd 上是否存在所有 linux 用户?

标签 linux bash shell system-administration

<分区>

我在/etc/passwd 中找不到一个用户“user1”,但我可以像这样执行命令

$touch abc
$chown user1 abc
$su user1

这些命令运行良好,但如果我尝试对一些真正不存在的用户进行 chown,这些 chownsu 命令会失败

我想知道这个 user1 来自哪里?

最佳答案

使用 user1 登录时(在 su user1 之后)执行:

getent passwd $USER

这会跨不同的数据库获取用户密码条目。所有用户不一定都是系统用户——他们可以来自 LDAP 等。 查看 getenv 上的文档.

同时检查您的 nsswitch.conf 以查看用于获取名称服务信息的所有来源。

关于linux -/etc/passwd 上是否存在所有 linux 用户?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49316528/

相关文章:

c++ - 枚举错误 : expected identifier before numeric constant

linux - Bash 查找行号

bash - Bash 的 '-c' 的未记录 'declare' 选项?

linux - Linux服务器中的文件如何按名称分类?

shell - 调用具有 awk shebang 和参数(vars)的脚本

bash - 终端工作流快捷方式

python - 为什么 dbus 服务无法正常运行?

linux - 在准确的时间设置 Cronjobs

c - LD_PRELOAD 不适用于我的程序

python - 如何在一行中转换shell脚本并从Python子进程中执行它?