[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 11:47:17 浏览: 111
这个错误是因为您使用了无效的选项“-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 -p 123456 foo
这是一个 Linux 命令,用于在系统中创建一个新的用户账户。具体参数的含义如下:
-c "bar":指定该用户的注释信息为 "bar"。
-s /bin/sh:指定该用户的默认 shell 为 /bin/sh。
-d /home/foo:指定该用户的家目录为 /home/foo。
-p 123456:指定该用户的密码为 123456(注意,这样的明文密码不安全,建议使用 passwd 命令修改密码)。
foo:指定要创建的用户名为 foo。
因此,执行这个命令后,系统中会创建一个名为 foo 的用户,该用户的注释信息为 "bar",默认 shell 为 /bin/sh,家目录为 /home/foo,密码为 123456。
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值作为密码。
阅读全文