我在 Ubuntu 服务器中有一个用户 john 和一个用户 keith
我添加了这些用户使用
sudo adduser John
sudo adduser Keith
Run Code Online (Sandbox Code Playgroud)
我现在如何将 john 添加到 Keith 的群组?
我试过:
sudo usermod -aG Keith john
Run Code Online (Sandbox Code Playgroud)
但我得到:
usermod: group 'Keith' does not exist
Run Code Online (Sandbox Code Playgroud)
我需要做什么来解决这个问题?
Яро*_*лин 17
您可以使用: usermod -a -G grouptoadd username
由于它远没有我想象的那么明显,为什么 -a -G 可以,而 -aG 不是,我将尝试解释它:
-G 选项采用一个值或一组值。在一个值的情况下,该值可以像这样给出:-GVALUE,因为不需要在选项和值之间有一个空格。这只是常见的做法。
如果您的系统上有一个名为 a 的组,那么调用 -Ga 就会变得不明确。您是否希望用户只有一个组 a?你在调用 -a 和 -G 吗?那么“a”是-G的值吗?其余的值(到 -G)在哪里?任何单字母选项都可以在任何其他单字母选项之前,这也是常见的做法。所以 tat -xy == -yz。但是,当其中一个选项可以采用单个值(如 VALUE)或多个值(如 VAL1、Val2、val4 等)时,这是模棱两可的。
因此,为了使命令 FAILSAFE 并为所有输入正常工作,您必须将 -a 与 -G 分开
来自man usermod
:
姓名
usermod - 修改用户帐户
概要
usermod [选项] 登录
描述
该usermod命令命令修改系统帐户文件,以反映在命令行上指定的变化。
选项
适用于usermod命令的选项是:
-a, --append
将用户添加到补充组。仅与-G选项一起使用。
...
-G, --groups GROUP1[,GROUP2,...[,GROUPN]]]
用户也是其成员的补充组列表。每个组之间用逗号分隔,中间没有空格。这些组受到与使用-g选项给出的组相同的限制。
如果用户当前是未列出的组的成员,则该用户将从该组中删除。可以通过-a选项更改此行为,该选项将用户附加到当前的补充组列表。
...
归档时间: |
|
查看次数: |
19411 次 |
最近记录: |