- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
场景1:
我有 2 个用户,每个用户都有不同的主要组。对于 user1,主要组是 GID 501 的 group1。对于 user2,主要组是 GID 502 的 group2。
我编辑了 /etc/passwd
,以便 user1 现在的 GID 600。但是,我忘记创建一个 GID 600 的新组(并且我也没有编辑 /etc/group
)。
令我惊讶的是,即使我从未创建过 GID 600 的组(因此 /etc/group
中没有这样的组),一切都正常工作,就好像这样的组存在一样:
示例:
1) 用户1 创建新文件- test.txt
后,用户2 无法读写该文件。
2)运行ls -l
时,我可以看到test.txt
属于GID 600。
我错过了什么?为什么即使 /etc/passwd
和 /etc/group
之间存在不一致,它仍然有效?
场景 2:
假设我有一个 GID 1000 的群组。当运行 useradd -c "name"test2 -g 1000
和 groups test2
时,我可以看到 test2
的主要组是 1000。
但是,在 /etc/group
中,我看到的只是 test_group:x:1000:
,这意味着 test2
不是 test_group
的成员。
此外,运行useradd -c "name"test3
后,我在/etc/group
中有test3:x:8093:
。
你能解释一下为什么会发生这种情况吗?
谢谢。
最佳答案
非编程问题,预计会有反对票...您应该在 super 用户或 unix.se 上询问
也就是说,UID 编号到 GID 编号没有映射,要求它们具有相同的值。想想当您添加一些用户,然后创建一个或两个组供他们共享,然后添加更多用户时会发生什么。 “下一个可用”GID/UID 对的值不匹配,但这并不重要。
当您查看用户的主要组时,他们不会在 groups
文件中作为成员列出,因为他们的主要组信息位于 passwd
文件中。
如果您手动更改 UID 号或 GID 号,请记住查找没有所属用户或组的文件/目录,并进行适当的修复。
此外,当涉及 UID 编号和 GID 编号时,有 0
(根)和其他所有内容 - 对它们来说没有特殊含义。一致认为,“系统用户”类型帐户的数量较低,大多数发行版开始创建 UID/GID 为 1000 的“普通”用户
关于linux - "/etc/passwd"和 "/etc/group"之间不一致,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54852242/
在我的 CentOS 7 系统(和其他 Linux 版本)中,我注意到有两个 passwd 文件,/etc/passwd 和/usr/bin/passwd。前者包含有关用户、组、默认 shell 等的
我想通过我的 api 更改用户密码,但我当前的代码不起作用。 也许有人可以帮助我。 $cmd1 = "passwd ".$info['instanceFtpUser']; $ssh->exec($cm
我需要验证/etc/passwd 文件是否有效,并且认为正则表达式是验证非注释行的好主意。我如何验证这样的行: root:*:0:0:System Administrator:/var/root:/b
我有一个问题,我已经尽可能地缩小了范围。我想将 /etc/passwd 中的行计数两次。一次作为引用,一次检测任何变化。 我初始化一个passwd 结构并计算其中的条目数。然后调用 setpwent(
这是我的脚本: #!/bin/bash for i in $(cat usernames.txt) do echo $i useradd $i -m -s /bin/bash $i -
如何使用 echo 将一些输入通过管道传输到需要用户输入两次内容的程序中? 例如 echo "somepassword"|passwd someuser 创建此错误消息 Enter new UNIX
1.命令简介 passwd 令用于设置用户的认证信息,包括用户密码、账户锁定、密码失效等。 系统管理员能用它管理系统用户的密码,只有管理员可以指定用户名称,一般用户只能变更自己的密码。 2.命
passwd命令 passwd 命令用来修改您的密码。 语法: 语法是 passwd [命令开关] 命令开关: -a 显示密码属性的所有项目。
我正在尝试使用 OpenSSL passwd 命令对输入的密码进行散列并将其与存储的散列进行比较,但散列函数不一致。第一次生成的散列与我去比较输入时生成的散列不同。每次执行哈希时,请注意 3 个不同的
我想过滤/etc/passwd的内容, 仅显示第三列中的值大于 999 的行. 有没有一种简单的方法可以用一个衬垫来做到这一点?我想在不写无聊的情况下做到这一点 for-loop . 最佳答案 这是一
我有一个系统构建器项目来制作需要完成的 QNX 操作系统镜像。问题是它目前不支持 passwd 命令。我的意思是当我写图像并尝试使用 passwd root 命令时,我得到了这个输出: /bin/pa
很难说出这里要问什么。这个问题模棱两可、含糊不清、不完整、过于宽泛或夸夸其谈,无法以目前的形式得到合理的回答。如需帮助澄清此问题以便重新打开,visit the help center . 关闭 1
我想逐字节读取/etc/passwd 文件,并想在std o/p 上显示它。这是我的代码 void main(int argc, char *argv[]) { int fd, ch; int
我知道,passwd 设置了 setuid 位,因此它可以修改 root 拥有的 /etc/shadow 文件。 [~]$ ls -l `which passwd` -rwsr-xr-x. 1 roo
我写了一个脚本作为 Ubuntu 启动服务(位于/etc/init.d 并在启动时运行)有一条线 HOMEDIR=`getent passwd username1 | cut -d: -f6` 问题是
我一直在尝试使用 ecryptfs 通过 ecryptfs-mount-private 和 ecryptfs-umount-private 手动挂载/卸载私有(private)存储>。当我以配置了 e
我试图在这个 perl 脚本上返回 Unix 用户列表。我正在使用带有 Passwd::Unix 的 Mojolicious 框架。 引用: Mojolicious (http://metacpan.
在具有 sudo 权限的 shell 脚本中,我正在尝试更改另一个用户的密码。 我试过sudo passwd username但没有得到任何地方。 最佳答案 您需要使用 chpasswd命令。你可以尝
我目前正在尝试在 OSX Yosemite 上从单用户模式创建一个 root 帐户 /sbin/mount -uw / launchctl load /System/Library/LaunchDae
我想检查某个用户是否存在于特定组中。 getent passwd user_name &> /dev/null 上面的命令检查用户是否在那里。但我还想看看它是否属于一个名为 example suppo
我是一名优秀的程序员,十分优秀!