我正在进行 CentOS 8 自动安装。我以前创建单个用户并将其添加到组中时没有遇到任何问题,如下所示:
user --name=othername --password=big_long_hash --iscrypted --groups=myname --homedir=/var/ftp --shell=/sbin/nologin
尽管有文件表明该组已经存在,但我从未遇到任何问题。
现在我想向该组添加多个用户,因此我在文件中添加了另一行
user --name=myname --groups=myname --homedir=/var/ftp --shell=/sbin/nologin
user --name=othername --password=big_long_hash --iscrypted --groups=myname --homedir=/var/ftp --shell=/sbin/nologin
我收到一个错误:
anaconda[1842]: program: Running... useradd -R /mnt/sysimage -U -G myname -d /var/ftp -m -s /sbin/nologin myname
useradd[25852]: failed adding user 'myname', exit code: 9
anaconda[1842]: program: useradd: group myname exists - if you want to add this user to that group, use -g.
anaconda[1842]: program: Return code: 9
anaconda[1842]: anaconda: kickstart.kickstart.user: User myname already exists
因此我尝试添加以下行来创建组:
group --name=myname
user --name=myname --groups=myname --homedir=/var/ftp --shell=/sbin/nologin
user --name=othername --password=big_long_hash --iscrypted --groups=myname --homedir=/var/ftp --shell=/sbin/nologin
但没有变化。尝试不指定组:
group --name=myname
user --name=myname --homedir=/var/ftp --shell=/sbin/nologin
user --name=othername --password=big_long_hash --iscrypted --groups=myname --homedir=/var/ftp --shell=/sbin/nologin
这次useradd
命令中没有组,但仍然失败并出现相同的错误。我想我会通过从usermod
安装后脚本调用来解决这个问题,但想检查一下在 Kickstart 文件中添加组和用户是否有我不明白的地方。
答案1
我从未关心过 Kickstart 添加用户或组的功能。我只是自己在 中完成这些操作%post
。
%post --erroronfail
groupadd groupname
useradd -m user1
useradd -m user2
usermod -a -G groupname user1
usermod -a -G groupname user2