Назад | Перейти на главную страницу

создание нового пользователя SSH в экземпляре ubuntu ec2 с использованием пользовательских данных шаблона облачной информации

Я хочу создать нового пользователя ssh, который может получить доступ к экземпляру с помощью пользовательских данных шаблона облачной информации. я использую этот json скрипт

"sudo adduser jenkins-user --disabled-password\n",
"sudo su - jenkins-user\n",
"\n", 
"mkdir .ssh\n",
"chmod 700 .ssh\n",
"touch .ssh/authorized_keys\n", 
"chmod 600 authorized_keys\n",
"cat >> /home/jenkins-user/.ssh/authorized_keys << end\n",
"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCKoORk6rbM4/0eDO0zBMWshXeibiuPQCP2KMl0fbyJTp9nCNngDG3qrIYBvU4TdOCXF\n", "\n",
"end\n"

и я получаю эту ошибку, когда проверяю cloud-init-output.log

adduser jenkins-user --disabled-password
Adding user `jenkins-user' ...
Adding new group `jenkins-user' (1001) ...
Adding new user `jenkins-user' (1001) with group `jenkins-user' ...
Creating home directory `/home/jenkins-user' ...
Copying files from `/etc/skel' ...
Changing the user information for jenkins-user
Enter the new value, or press ENTER for the default
Full Name []:   
Room Number []:     
Work Phone []:  
Home Phone []:  
Other []: Use of uninitialized value $answer in chop at /usr/sbin/adduser line 589.
Use of uninitialized value $answer in pattern match (m//) at /usr/sbin/adduser line 590.
Is the information correct? [Y/n] sudo su - jenkins-user

Может кто-то помочь мне с этим?

adduser интерактивный, переключитесь на useradd.

useradd - это собственный двоичный файл, скомпилированный вместе с системой. Но adduser - это Perl-скрипт, который в бэкенде использует двоичный код useradd.

adduser более удобен и интерактивен, чем его внутренняя часть useradd. Нет никакой разницы в предоставляемых функциях.

https://superuser.com/questions/547966/whats-the-difference-between-adduser-and-useradd