Я хочу создать нового пользователя 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