Я использую Packer и cloud-init для создания шаблонов для proxmox. Я так растерян и раздражен. Каждый раз, когда я создаю шаблон, мой пользователь создается с uid и gid 1000, а затем сразу после этого создается пользователь Ubuntu с uid 1001 и gid 1002. Я не могу найти, чтобы это происходило с кем-либо где-либо. Я прочитал документацию, и там говорится, что если пользователь определен, пользователь Ubuntu не будет создан. Я ошибаюсь, у меня так много разных облачных конфигураций, что я не могу сосчитать. Чтобы сделать это еще более раздражающим, каждый раз, когда я пытаюсь удалить пользователя Ubuntu с помощью автоматизации после создания шаблона, при следующей загрузке пользователь Ubuntu снова там. Я в такой растерянности. Наткнулся на странную ошибку, и я делаю что-то не так? Я как сумасшедший просматривал логи, и все, что там говорится, это то, что пользователь ubuntu создан, но не упоминается, почему.
#cloud-config
autoinstall:
version: 1
locale: en_US
keyboard:
layout: us
ssh:
install-server: true
allow-pw: true
disable_root: true
ssh_quiet_keygen: true
allow_public_ssh_keys: true
packages:
- qemu-guest-agent
- sudo
storage:
layout:
name: direct
swap:
size: 0
user-data:
package_upgrade: false
timezone: (user timezone)
users:
- name: (user)
groups: [adm, sudo]
lock-passwd: false
sudo: ALL=(ALL) NOPASSWD:ALL
shell: /bin/bash
passwd:(user password)
ssh_authorized_keys:
- (user ssh key)
решение1
Эта проблема также наблюдается в iso 22.04.2 и упаковщике proxmox v1.1.3.
В итоге просто добавил ansible playbook для его запуска в качестве обходного пути, поделился здесь
- name: Remove the user 'ubuntu'
ansible.builtin.user:
name: ubuntu
state: absent
remove: yes #delete dirs
- name: Remove sudo access for deleted 'ubnt' user
ansible.builtin.lineinfile:
path: /etc/sudoers.d/90-cloud-init-users
state: absent
search_string: 'ubuntu ALL=(ALL) NOPASSWD:ALL'
validate: 'visudo -cf %s'
- name: Remove left over config for deleted 'ubnt' user
ansible.builtin.lineinfile:
path: /etc/sudoers.d/90-cloud-init-users
state: absent
search_string: '# User rules for ubuntu'
validate: 'visudo -cf %s'