Aka*_*aks 11 linux chown passwd
我必须使用chmod.I更改文件/目录的所有权。我只知道所有者的用户名,但想同时更改默认组名。在这个阶段组名没有决定所以我把相同的用户名
chown -R username:username path_to_dir
Run Code Online (Sandbox Code Playgroud)
命令可能对各种系统/用户运行,所以我担心的是,linux 是否总是有一对 username(user):username(group) 或在某些时候这个默认 group_name 可能会出错。
虽然我已经开始从用户所属的地方找GID
id username | tr '(=)' ':' | awk -F: '{print $3}
Run Code Online (Sandbox Code Playgroud)
但对于知识,我想知道。到目前为止,/etc/passwd /etc/groups除了少数用户(如“shutdown、halt、sync、opeartor”)外,所有用户也已在组中列出。
编辑 1: id -gn username 也是不错的选择
Kar*_*son 20
不能保证 groupname =username会存在。
最常见的情况是系统管理员在 Linux 上使用的是在系统本地创建一个新用户,没有明确指定组,这意味着默认情况下会创建与用户名相同的组,并分配用户具有新创建的组的默认 GID。
这并不意味着另一个系统管理员将遵循此过程,并且如果您将其他命名服务(如 NIS 或 LDAP)加入到组合中,则分配为默认的组可能与组名与用户名相同的新 GID 不同。
所以你不应该依赖 username=groupname 的事实
正如 Ramesh 所指出的,默认情况下,UID 和 GID 对于普通用户是相同的。然而,情况并非总是如此,因此您不能做出这样的假设,因为这可能会对您的系统造成严重破坏。将文件/文件夹权限分配给错误的组有点麻烦,不是吗?
所以,简短的回答:不,UID 并不总是等于 GID。尽管如此,/etc/passwd在同一行中同时包含默认组的 UID 和 GID,因此提取它们相当容易。
| 归档时间: |
|
| 查看次数: |
11867 次 |
| 最近记录: |