我的/etc/group
成长是通过添加新用户以及安装添加了自己的用户和/或组的程序来实现的。的情况也是如此/etc/passwd
。由于缺乏结构,编辑现在变得有点麻烦。
我可以对这些文件进行排序(例如,按数字ID或按名称按字母顺序),而不会对系统和/或程序包管理器产生负面影响吗?
我想这并不重要,但只是为了确保我想得到第二意见。也许root
需要在第一行或前一千行之内?
同样的道理/etc/*shadow
。
vi
。
我的/etc/group
成长是通过添加新用户以及安装添加了自己的用户和/或组的程序来实现的。的情况也是如此/etc/passwd
。由于缺乏结构,编辑现在变得有点麻烦。
我可以对这些文件进行排序(例如,按数字ID或按名称按字母顺序),而不会对系统和/或程序包管理器产生负面影响吗?
我想这并不重要,但只是为了确保我想得到第二意见。也许root
需要在第一行或前一千行之内?
同样的道理/etc/*shadow
。
vi
。
Answers:
您应该可以这样做:实际上,根据文章并阅读文档,您可以分别使用和对UID / GID进行排序/etc/passwd
和排序。/etc/group
pwck -s
grpck -s
/etc/passwd
在进行批量更改时进行手动编辑,例如由于移动/重组(全局房间或电话号码更改等)而为所有用户更改GECOS字段,这种情况已不再常见,但是有一些特定的不时出现的原因。
尽管ErikF是正确的,通常应该可以,但我确实要指出一个潜在的问题:
您可以将不同的用户名映射到同一UID。如果您使用此功能,则将UID映射回用户名的工具通常会选择在中找到该UID的第一个用户名/etc/passwd
。排序可能会导致其他用户名首先出现。出于显示目的(例如ls -l
输出),这两个用户名都应该起作用,但是您可能已经配置了一些程序来接受来自用户名A的请求,即使看到了来自用户名B的请求,该程序也会拒绝这些请求,即使A和B是同一用户。
在第一行拥有root权限已经很长时间了,实际上是“标准”,如果您在解决问题或恢复系统时必须修复其shell或删除密码,则非常方便。
同样我更喜欢在中间和标准用户守护进程/ utils的用户在两个结束passwd
和shadow
。
hvd
对于干扰用户的秩序,答案也非常好,尤其是在手动维护许多用户的系统中。
例如,如果您设法对文件进行排序(仅针对标准用户),则比更改所有用户的顺序imo更明智。
0
,守护进程通常的UID低于
以下是一些冗长的bash代码,以类似方式安全地对shadow / gshadow文件进行排序(使用vipw -s
/ vigr -s
)并从命令行就地对其进行排序:
EDITOR="/usr/bin/vi -c \"1,\\\$!awk 'BEGIN {FS = \\\":\\\"} FNR==NR {x2[\\\$1] = \\\$0; next} \\\$1 in x2 {print x2[\\\$1]}' - /etc/passwd\" -c \"wq! \" >/dev/null 2>&1" vipw -s
EDITOR="/usr/bin/vi -c \"1,\\\$!awk 'BEGIN {FS = \\\":\\\"} FNR==NR {x2[\\\$1] = \\\$0; next} \\\$1 in x2 {print x2[\\\$1]}' - /etc/group\" -c \"wq! \" >/dev/null 2>&1" vigr -s
注意:
vi -c
将命令传递给vim编辑器,该编辑器被变量指定为vipw
/ 的编辑器vigr
EDITOR
shadow
的passwd
(和gshadow
通过group
)