gpt4 book ai didi

linux - 如何在不使用 useradd 或类似命令的情况下添加用户?

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:00:01 29 4
gpt4 key购买 nike

如何在不使用 useradd 或类似命令的情况下在 linux bash 脚本上添加用户。

同时复制位于/etc/skel/的启动脚本,并为你添加的用户修改密码。

user1=$1
read -p "Enter your home name" home_name
read -p "Enter your login shell" loginshell
echo "$user1:x:500:500:$user1:/home/$home_name:$loginshell" >> /etc/passwd
echo "$user1:x:500:" >> /etc/group
mkdir /home/$home_name
chmod 744 /home/$home_name
cp -pr /etc/skel/.bashrc /home/$home_name
echo "$user1: " >> /etc/shadow
echo "`passwd` $user1"

执行脚本后报错

passwd: Authentication token manipulation error

如有错误请多多指教?

最佳答案

您应该解释为什么要这样做。在我看来,这是个坏主意。特别是,因为它不能很好地处理所有各种类型的系统(例如,某些 Linux 系统使用 LDAP 进行用户身份验证等)。

而且我相信您的行 echo "$user1: ">>/etc/shadow 是错误的。查看(使用 sudo)/etc/shadow 文件的内容,您会明白其中的条目不仅仅是用户名后跟冒号。

但实际上,您应该使用 useraddadduser 来做到这一点。您冒着完全破坏系统的风险。

关于linux - 如何在不使用 useradd 或类似命令的情况下添加用户?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7859281/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com