Changes for page proxmox

Last modified by Kevin Wiki on 2026/05/18 15:44

From version 10.1
edited by Kevin Wiki
on 2026/05/18 08:16
Change comment: There is no comment for this version
To version 11.3
edited by Kevin Wiki
on 2026/05/18 15:40
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -138,9 +138,20 @@
138 138  
139 139  After creating the VM and before making it into a template there are some programs and settings we want to ensure exists always.
140 140  
141 -qemu-guest-agent is for allowing proxmox to query information from the VM such as IP address, shutdown commands, etc
141 +(% id="cke_bm_721114S" style="display:none" %)** **(%%)**clear bash history** to not leave any configuration in history, clear and disable history file before proceeding:
142 142  
143 143  {{code language="bash"}}
144 +unset HISTFILE
145 +export HISTSIZE=0
146 +export HISTFILESIZE=0
147 +
148 +sudo rm /.bash_history
149 +rm ~/.bash_history
150 +{{/code}}
151 +
152 +**qemu-guest-agent** is for allowing proxmox to query information from the VM such as IP address, shutdown commands, etc
153 +
154 +{{code language="bash"}}
144 144  sudo apt update
145 145  sudo apt upgrade -y
146 146  sudo apt install qemu-guest-agent -y
... ... @@ -149,8 +149,21 @@
149 149  sudo systemctl start qemu-guest-agent.service
150 150  {{/code}}
151 151  
152 -cloud-init is a great hook for installing or configuring programs or receiving variables from cloudinit CDROM drive. Making it easier to change IP, hostname, DNS, username/password, etc between VMs.
163 +**reset machine-id** to not have overlapping ids from same template
153 153  
165 +{{code language="bash"}}
166 +cat /dev/null > /etc/machine-id
167 +cat /dev/null > /var/lib/dbus/machine-id
168 +{{/code}}
169 +
170 +**cloud-init** is a great hook for installing or configuring programs or receiving variables from cloudinit CDROM drive. Making it easier to change IP, hostname, DNS, username/password, etc between VMs.
171 +
172 +If you used a cloud-init base image it will have run the default cloudinit which installs and confi
173 +
174 +{{code language="bash"}}
175 +cloud-init clean
176 +{{/code}}
177 +
154 154  This is a debian example of what we are looking for:
155 155  
156 156  {{code language="yaml"}}
... ... @@ -159,8 +159,6 @@
159 159  # A set of users which may be applied and/or used by various modules
160 160  # when a 'default' entry is found it will reference the 'default_user'
161 161  # from the distro configuration specified below
162 -users:
163 - - default
164 164  
165 165  # If this is set, 'root' will not be able to ssh in and they
166 166  # will get a message to login instead as the default $user
... ... @@ -174,6 +174,13 @@
174 174   # which has been a source of surprise.
175 175   preserve_sources_list: true
176 176  
199 +# manually managed resolv
200 +manage_resolv_conf: false
201 +
202 +package_update: true
203 +packages:
204 + - qemu-guest-agent
205 +
177 177  # The modules that run in the 'init' stage
178 178  cloud_init_modules:
179 179   - seed_random
... ... @@ -193,6 +193,7 @@
193 193  
194 194  # The modules that run in the 'config' stage
195 195  cloud_config_modules:
225 + - keyboard
196 196   - locale
197 197   - set-passwords
198 198   - grub-dpkg
... ... @@ -219,20 +219,14 @@
219 219   - final-message
220 220   - power-state-change
221 221  
252 +runcmd:
253 + - systemctl enable qemu-guest-agent.service
254 +
222 222  # System and/or distro specific settings
223 223  # (not accessible to handlers/transforms)
224 224  system_info:
225 225   # This will affect which distro class gets used
226 226   distro: debian
227 - # Default user name + that default users groups (if added/used)
228 - default_user:
229 - name: debian
230 - lock_passwd: True
231 - gecos: Debian
232 - groups: [sudo]
233 - # Disables password-less sudo commands for default/debian user
234 - sudo: ["ALL=(ALL) ALL"]
235 - shell: /bin/bash
236 236   # Other config here will be given to the distro class and/or path classes
237 237   paths:
238 238   cloud_dir: /var/lib/cloud/