繁体   English   中英

正确的方法来重命名用户并使用ec2用户数据删除密码

[英]correct way to rename user and remove password with ec2 user-data

我有一个centos7基本AMI,并已使用从Amazon-Linux脚本修改的ec2-launch用户数据成功更改了用户名

#!/bin/bash
groupadd ec2-user
usermod -d /home/ec2-user -m -g ec2-user -l ec2-user centos
echo ""  | sudo tee -a  /etc/sudoers
echo "Defaults:root !requiretty"  | sudo tee -a  /etc/sudoers
echo "ec2-user   ALL=(ALL) NOPASSWD: ALL"  | sudo tee -a  /etc/sudoers
echo "Defaults:ec2-user !requiretty"  | sudo tee -a  /etc/sudoers

登录工作按预期方式进行,并且主目录已更改,但是当我使用sudo时,仍然要求输入密码。 由于无法进入文件检查格式,因此我想知道是否使用了正确的语法?

如何在单个脚本中更改用户并删除sudo密码要求?

我相信您的Cloudinit用户数据脚本失败了,因为它试图在没有tty的情况下使用sudo (并且尚未添加!requiretty )。 由于该脚本始终以root用户身份运行,因此应该可以:

#!/bin/bash
groupadd ec2-user
usermod -d /home/ec2-user -m -g ec2-user -l ec2-user centos
echo ""  | tee -a  /etc/sudoers
echo "Defaults:root !requiretty"  | tee -a  /etc/sudoers
echo "ec2-user   ALL=(ALL) NOPASSWD: ALL"  | tee -a  /etc/sudoers
echo "Defaults:ec2-user !requiretty"  | tee -a  /etc/sudoers

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM