[root@localhost ~]# su foo sh-4.2$ usermod -u 2000 -s /bin/csh foo usermod: user foo is currently used by process 2453 sh-4.2$ id uid=1001(foo) gid=1001(foo) groups=1001(foo) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023 sh-4.2$ usermod -f -u 2000 -s /bin/csh foo usermod: invalid numeric argument '-u'
时间: 2023-11-28 07:47:17 浏览: 34
这个错误是因为您使用了无效的选项“-u”,它需要一个数字参数。您可以尝试使用以下命令:
```
su -
kill -9 2453
usermod -u 2000 -s /bin/csh foo
```
这将以root用户身份登录并杀死正在使用用户“foo”的进程,然后修改该用户的UID和shell。
相关问题
useradd -c "bar" -s /bin/sh -d /home/foo -passwd 123456 foo
这个命令的作用是创建一个用户名为foo的用户,用户的注释为bar,Shell为/bin/sh,用户的主目录为/home/foo,密码为123456。但是这个命令有语法错误,正确的应该是:
```
useradd -c "bar" -s /bin/sh -d /home/foo -p $(openssl passwd -1 123456) foo
```
其中,-p选项用于设置用户密码,$(openssl passwd -1 123456)表示将明文密码123456加密成一个hash值作为密码。
useradd -c "bar" -s /bin/sh -d /home/foo foo
这个命令可以创建一个新的用户账户,具体参数解释如下:
- `-c "bar"`:设置用户的注释字段为 "bar"。
- `-s /bin/sh`:设置用户的默认 shell 为 /bin/sh。
- `-d /home/foo`:设置用户的主目录为 /home/foo。
- `foo`:指定要创建的用户名为 foo。
所以,执行这个命令后会创建一个用户名为 foo 的用户,其注释字段为 "bar",默认 shell 为 /bin/sh,主目录为 /home/foo。