Хочу на своем тестовом сервере где в роли виртуализации поднято Debian 12 + Proxmox 8.2.2 для задач посредством которых я не буду разворачивать полноценные виртуальные машины с дистрибутивом Ubuntu LTS, мне нужно задействовать LXC контейнеры, т.е. готовые образа (шаблоны) дабы быстро что-то обкатать, а уже либо оставить так либо как-то по другому, все должно быть в едином стиле.

Шаг №1: Скачиваем уже подготовленный контейнер различных операционных систем, я буду использовать только Ubuntu LTS релиз:

https://IP&DNS:8006 - user&pass (Доступ к Proxmox и только в Proxmox) – (Folder View) Datacenter - Storage - local (srv-proxmox) - CT Templates - Templates

вижу дефолтные шаблоны, которые могу скачать себе

Доступные шаблоны которые я могу загрузить в свой Proxmox 8.2.2

выделяю к примеру:

  • Type: lxc
  • Package: Ubuntu-26.04-standard
  • Version: 26.04-1
  • Description: Ubuntu 26.04 Resolute (standard)

Выделяю шаблон ubuntu-26.04-standard и нажимаю Download.

и нажимаю "Download"

Ожидаю, формируется задание на скачивание шаблона с последующем сохранением:

downloading http://download.proxmox.com/images/system/ubuntu-26.04-standard_26.04-1_amd64.tar.zst to /var/lib/vz/template/cache/ubuntu-26.04-standard_26.04-1_amd64.tar.zst

--2026-08-19 08:56:31--  http://download.proxmox.com/images/system/ubuntu-26.04-standard_26.04-1_amd64.tar.zst

Resolving download.proxmox.com (download.proxmox.com)... 45.144.208.36, 2a01:7e0:0:424::249

Connecting to download.proxmox.com (download.proxmox.com)|45.144.208.36|:80... connected.

HTTP request sent, awaiting response... 200 OK

Length: 158434587 (151M) [application/octet-stream]

Saving to: '/var/lib/vz/template/cache/ubuntu-26.04-standard_26.04-1_amd64.tar.zst.tmp_dwnl.3157'

спустя N-ного количества времени скачивание завершается успешно:

0K ........ ........ ........ ........ 21% 1.80M 66s

32768K ........ ........ ........ ........ 42% 2.05M 45s

65536K ........ ........ ........ ........ 63% 2.11M 28s

98304K ........ ........ ........ ........ 84% 2.50M 11s

131072K ........ ........ .......          100% 1.99M=73s

2026-08-19 08:57:44 (2.07 MB/s) - '/var/lib/vz/template/cache/ubuntu-26.04-standard_26.04-1_amd64.tar.zst.tmp_dwnl.3157' saved [158434587/158434587]

calculating checksum...OK, checksum verified

download of 'http://download.proxmox.com/images/system/ubuntu-26.04-standard_26.04-1_amd64.tar.zst' to '/var/lib/vz/template/cache/ubuntu-26.04-standard_26.04-1_amd64.tar.zst' finished

TASK OK

Шаг №2: И вот мой первый Template который мне доступен для развертывания в качестве "Create CT" под мою задачу.

Теперь при создании LXC контейнера появилась возможность выбрать скачанный шаблон: ubuntu-26.04-standard_26.04-1_amd64.tar.zst

Шаг №3: Создам контейнер на основе шаблона и запустив подключаюсь к нему через ">_ Console", авторизуюсь

https://IP&DNS:8006 - user&pass - "Create CT"

вкладка "General"

  • Node: srv-proxmox
  • CT ID: 107
  • Hostname: srv-lxc2604a
  • Password: 712mbddr@
  • Confirm Password: 712mbddr@
  • Unprivileged container: Отмечаю галочкой
  • Nesting: отмечаю галочкой

вкладка "Template"

  • Storage: local
  • Template: Ubuntu-26.04-standard_26.04-1_a

вкладка "Disks"

  • (rootfs)
  • Storage: EightTB
  • Disk size (GiB): 50

вкладка "CPU"

  • Cores: 2

вкладка "Memory"

  • Memory (MiB): 4096
  • Swat (MiB): 4096

вкладка "Network"

  • Name: eth0
  • IPv4: DHCP
  • Bridge: vmbr0

вкладка "DNS"

  • DNS domain: polygon.local

и нажимаю Finish

а вот и первый косяк наверное

Logical volume "vm-107-disk-0" created.

Creating filesystem with 13107200 4k blocks and 3276800 inodes

Filesystem UUID: 269f8dee-c712-4330-9bac-95ffffdc16de

Superblock backups stored on blocks:

32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,

4096000, 7962624, 11239424

extracting archive '/var/lib/vz/template/cache/ubuntu-26.04-standard_26.04-1_amd64.tar.zst'

Total bytes read: 625838080 (597MiB, 518MiB/s)

Logical volume "vm-107-disk-0" successfully removed.

TASK ERROR: unable to create CT 107 - unsupported Ubuntu version '26.04'

Если я правильно понял ошибку и изученное в интернете на этот счет, то:

Сам .tar.zst успешно распаковывается, файловая система создаётся, но затем pve-container в Proxmox 8.2.2 проверяет версию Ubuntu и не знает Ubuntu 26.04.

Proxmox Containers используют host kernel и host-side настройки для конкретных дистрибутивов, поэтому недостаточно просто иметь подходящий rootfs-шаблон

Моя версия pve-container, входящая в установленный PVE 8.2.2, не знает Ubuntu 26.04, поэтому и появляется:

unsupported Ubuntu version '26.04'

Возможное решение: после обновления до pve-container-6.0.12 в список известных Ubuntu были добавлены 26.04 и 25.10

Шаг №4: С учетом полученных знаний выше назревает вопрос, а как узнать какие шаблоны LXC моя текущая версия pve-container поддерживает, если я хочу использовать в основе дистрибутив Ubuntu:

root@srv-proxmox:~# pveversion -v | grep pve-container

pve-container: 5.0.10

root@srv-proxmox:~#

root@srv-proxmox:~# pveam update

update successful

root@srv-proxmox:~#

root@srv-proxmox:~# pveam available --section system | grep ubuntu

system          ubuntu-18.04-standard_18.04.1-1_amd64.tar.gz

system          ubuntu-20.04-standard_20.04-1_amd64.tar.gz

system          ubuntu-22.04-standard_22.04-1_amd64.tar.zst

system          ubuntu-24.04-standard_24.04-2_amd64.tar.zst

system          ubuntu-25.04-standard_25.04-1.1_amd64.tar.zst

system          ubuntu-26.04-standard_26.04-1_amd64.tar.zst

root@srv-proxmox:~#

но он есть среди доступных шаблонов, но не поддерживает в текущей версии Proxmox, впрочем, как всегда.

Шаг №5: Увидел, что можно в коде узнать какие версии OS поддерживаются:

root@srv-proxmox:~# grep -R "unsupported Ubuntu version" /usr/share/perl5/PVE/

/usr/share/perl5/PVE/LXC/Setup/Ubuntu.pm:    die "unsupported Ubuntu version '$version'\n"

root@srv-proxmox:~# grep -n -A20 -B10 "unsupported Ubuntu version" /usr/share/perl5/PVE/LXC/Setup/Ubuntu.pm

sub template_fixup {

63-    my ($self, $conf) = @_;

64-

65-    my $version = $self->{version};

66-

67-    if ($version >= '17.10' && $version < '23.04') {

68-     # enable systemd-networkd

69-     $self->ct_mkdir('/etc/systemd/system/multi-user.target.wants');

70-     $self->ct_mkdir('/etc/systemd/system/socket.target.wants');

71-     $self->ct_symlink('/lib/systemd/system/systemd-networkd.service',

72-                       '/etc/systemd/system/multi-user.target.wants/systemd-networkd.service');

Т.е. у меня заработает LXC шаблон если OS будет 22.04, т.к. он вход в промежуток из вывода выше.

Шаг №6: Устанавливаю в Proxmox 8.2.2 шаблон ubuntu-22.04-standard_22.04-1_amd64.tar.zst

root@srv-proxmox:~# pveam download local ubuntu-22.04-standard_22.04-1_amd64.tar.zst

downloading http://download.proxmox.com/images/system/ubuntu-22.04-standard_22.04-1_amd64.tar.zst to /var/lib/vz/template/cache/ubuntu-22.04-standard_22.04-1_amd64.tar.zst

--2026-08-19 09:39:33--  http://download.proxmox.com/images/system/ubuntu-22.04-standard_22.04-1_amd64.tar.zst

Resolving download.proxmox.com (download.proxmox.com)... 45.144.208.36, 2a0b:7140:5:100::167

Connecting to download.proxmox.com (download.proxmox.com)|45.144.208.36|:80... connected.

HTTP request sent, awaiting response... 200 OK

Length: 129824858 (124M) [application/octet-stream]

Saving to: '/var/lib/vz/template/cache/ubuntu-22.04-standard_22.04-1_amd64.tar.zst.tmp_dwnl.10616'

0K ........ ........ ........ ........ 25% 2.13M 43s

32768K ........ ........ ........ ........ 51% 2.10M 28s

65536K ........ ........ ........ ........ 77% 2.22M 13s

98304K ........ ........ ........ ...     100% 2.13M=58s

2026-08-19 09:40:31 (2.15 MB/s) - '/var/lib/vz/template/cache/ubuntu-22.04-standard_22.04-1_amd64.tar.zst.tmp_dwnl.10616' saved [129824858/129824858]

calculating checksum...OK, checksum verified

download of 'http://download.proxmox.com/images/system/ubuntu-22.04-standard_22.04-1_amd64.tar.zst' to '/var/lib/vz/template/cache/ubuntu-22.04-standard_22.04-1_amd64.tar.zst' finished

root@srv-proxmox:~#

На заметку: где local — это Storage (по умолчанию)

Шаг №7: С учетом скачанного шаблона повторяю создание контейнера, но выбираю шаблон Ubuntu 22.04 и контейнер создается:

Logical volume "vm-107-disk-0" created.

Creating filesystem with 13107200 4k blocks and 3276800 inodes

Filesystem UUID: 55cb5234-d474-4005-b90a-3ffffb647f32

Superblock backups stored on blocks:

32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,

4096000, 7962624, 11239424

extracting archive '/var/lib/vz/template/cache/ubuntu-22.04-standard_22.04-1_amd64.tar.zst'

Total bytes read: 508579840 (486MiB, 551MiB/s)

Detected container architecture: amd64

Creating SSH host key 'ssh_host_rsa_key' - this may take some time ...

done: SHA256:hTuB8RquN44zhGdsZKx/P5OP37a5bfC26dFNgMGWutQ root@lxc2204a

Creating SSH host key 'ssh_host_ed25519_key' - this may take some time ...

done: SHA256:KhXdHBbXYhenkT3J93/Uro/UbxlHozwjJ4qKHVwTJ5k root@lxc2204a

Creating SSH host key 'ssh_host_dsa_key' - this may take some time ...

done: SHA256:/TcGJxvUCoF8+hK7rLtDgx4QTQizBWL05xbQA4iABus root@lxc2204a

Creating SSH host key 'ssh_host_ecdsa_key' - this may take some time ...

done: SHA256:2UKtg8Uld015D7p7+ZotKCX3JQU6gtJ2W+RWR6YC8DQ root@lxc2204a

TASK OK

Шаг №8: Запускаю созданный контейнер:

https://IP&DNS:8006 - user&pass - (Folder View) Datacenter - LXC Container, выделяю 107 (lxc2204a) и нажимаю Start, после перехожу в ">_ Console", вижу приветствие на авторизацию

Ubuntu 22.04 LTS Lxc2204a tty1

lxc2204a login: указываю дефолтный логин это root

Password: тот что предопределил при создании контейнера, т.е. 712mbddr@

Запустив созданный контейнер и выполнив авторизацию в нем, я получил возможность обкатывать наработки.

Проверяю что в системе есть сервис SSH дабы я мог подключиться к ней с основной системы:

root@lxc2204a:~# ss -tulp | grep :ssh

tcp   LISTEN 0      4096                   *:ssh               *:*    users:(("systemd",pid=1,fd=41))

root@lxc2204a:~#

Сервис есть, после узнаю какой IP от DHCP сервиса получил контейнера и уже подключаюсь к системе по SSH дабы выполнить предподготовку системы на последующее использование.

root@lxc2204a:~# rm -Rf /var/lib/apt/lists

root@lxc2204a:~# apt-get update && apt-get upgrade -y

а после выключаю ее и создаю Snapshot с именованием OriginalSystem чтобы если что-либо проводимое с ней меня не устроило я мог выполнить откат на только что установленную с выполненной преднастройкой и возобновить заново тестирование.

root@lxc2204a:~# uname -a && lsb_release -a

Linux lxc2204a 6.8.4-2-pve #1 SMP PREEMPT_DYNAMIC PMX 6.8.4-2 (2024-04-10T17:36Z) x86_64 x86_64 x86_64 GNU/Linux

No LSB modules are available.

Distributor ID: Ubuntu

Description:    Ubuntu 22.04.5 LTS

Release:        22.04

Codename:       jammy

root@lxc2204a:~#

Ну а далее уже использую данную виртуальную машину по задачам, которые мне нужны.

На этом я пока прощаюсь, с уважением автор блога ekzorchik.