我想创建一个新用户来在系统上运行服务,但不想拥有/home
其他配置文件。例如,有一个 postgres 用户,但它没有任何/home
目录。
答案1
默认情况下,useradd 命令不会创建主目录,但是对于守护进程,我建议您使用系统选项并将 shell 更改为不存在的 shell,这样就没有人可以使用该帐户登录(例如在 ssh 中):
sudo useradd -r -s /bin/false USERNAME
man useradd
如果man groupadd
您也想为用户创建一个组,则可以看到所有选项。
答案2
尝试adduser --system --no-create-home USERNAME
或简单看看man adduser
该公司声称自己是“对低级工具(如 useradd)更友好的前端……“。
答案3
我需要类似的东西 - 一个没有登录权限并绑定到系统服务的新用户。但是,Clausi 的答案创建了一个主组为“nogroup”的用户,这确实不太理想。
adduser --system --no-create-home --group USERNAME
创建一个与用户同名的系统组,并将其作为主要组与用户关联。然后可以使用groups USERNAME
或id USERNAME
命令进行验证。
答案4
尝试这个命令:
sudo useradd vivek
这将创建一个用户,但不会在/home/vivek