EUR
european

EUR

usa

USD

Ex. VAT Ex. VAT 0%

Как обновить Proxmox VE 7 до Proxmox VE 8

В этой инструкции описано обновление узла Proxmox VE 7 до Proxmox VE 8 на месте с помощью apt. При обновлении система переходит с Debian 11 Bullseye на Debian 12 Bookworm, а ядро 5.15 заменяется более новым. Заложите время простоя: узел придётся перезагрузить как минимум один раз, обычно дважды.

Warning

Поддержка Proxmox VE 7 закончилась в конце июля 2024 года, а Proxmox VE 8 перестал получать обновления 31 августа 2026 года. Переход на версию 8 обязателен как промежуточный шаг, но после него система всё ещё остаётся без поддержки. Когда закончите с этой инструкцией, запланируйте следующее обновление, до Proxmox VE 9.

Перед началом

Требования

Прежде чем менять репозитории, проверьте:

  • на всех узлах установлены последние пакеты Proxmox VE 7.4 (pve-manager 7.4-15 или новее);
  • на корневой файловой системе свободно не меньше 5 ГБ;
  • кластер работает без ошибок, если узел входит в кластер;
  • у вас есть доступ к серверу, не зависящий от его сети, например IP-KVM;
  • есть рабочие и проверенные резервные копии всех виртуальных машин и контейнеров.

Проверьте свободное место на корневой файловой системе:

df -h /

Warning

Перед обновлением сделайте резервные копии всех виртуальных машин и контейнеров и убедитесь, что их можно восстановить. Мажорное обновление заменяет базовую систему, ядро и пакеты загрузчика. Если что-то пойдёт не так, восстановление из бэкапа будет единственным надёжным способом вернуть систему. Храните копии вне обновляемого узла, например на отдельном хранилище или в INTROSERV Backup Service. Также сохраните /etc/pve, /etc/network/interfaces, /etc/passwd и /etc/resolv.conf.

Info

Если у вас гиперконвергентный кластер Ceph, перед началом на нём должна работать версия Ceph 17.2 Quincy. Версию можно посмотреть на панели Ceph каждого узла. Если в кластере Octopus или Pacific, сначала обновите Ceph до Quincy и только потом возвращайтесь к этой инструкции.

Info

Если на том же хосте установлен Proxmox Backup Server, обновите его с версии 2 до версии 3 до обновления Proxmox VE. Используйте официальную инструкцию по обновлению Proxmox Backup Server 2 до 3.

Как подключиться к узлу

Danger

Не запускайте мажорное обновление из Shell (консоли) в веб-интерфейсе Proxmox VE. Веб-консоль работает через службы Proxmox VE, которые перезапускаются во время обновления, и сессия оборвётся посреди процесса.

Подключайтесь по SSH или через IP-KVM. При работе по SSH запустите сессию tmux, чтобы обновление продолжилось, даже если соединение прервётся:

apt update apt install tmux tmux new -s upgrade

Если соединение пропало, подключитесь снова и вернитесь в сессию:

tmux attach -t upgrade

Самый надёжный вариант это IP-KVM: он продолжит работать, даже если после перезагрузки на узле не поднимется сеть. Как подключиться к выделенному серверу через IP-KVM, смотрите в инструкциях Подключение к IDRAC KVM и Доступ к IP-KVM через OpenVPN (серверы DC2, DC3).

Виртуальные машины и контейнеры на узле

Выключите виртуальные машины и контейнеры на узле или перенесите их на другой узел, если они должны продолжать работу. Миграция со старой версии Proxmox VE на более новую поддерживается. Миграция с новой версии обратно на старую не поддерживается.

Info

Если узел входит в кластер, обновляйте узлы по одному и перед обновлением переводите каждый в режим обслуживания. В этом режиме гостевые системы под управлением HA переносятся на другие узлы: ha-manager crm-command node-maintenance enable <node>. Гостевые системы без HA автоматически не переносятся, их нужно мигрировать или выключить вручную. Перезагрузка не снимает режим обслуживания. После обновления и перезагрузки узла отключите его вручную: ha-manager crm-command node-maintenance disable <node>.

Шаг 1. Обновите Proxmox VE 7 до версии 7.4

Скрипт проверки pve7to8 и безопасный путь обновления есть только в последних пакетах 7.4. Обновления можно установить в веб-интерфейсе или из командной строки.

Настройте репозитории

Откройте узел в веб-интерфейсе и перейдите в Updates → Repositories.

Если у вас нет платной подписки, выберите репозиторий pve-enterprise и нажмите Disable. Для этого репозитория нужен ключ подписки.

Нажмите Add, выберите No-Subscription и нажмите Add в диалоговом окне.

Tip

Если у вас есть платная подписка, оставьте репозиторий pve-enterprise и пропустите эту часть.

Установите обновления

Перейдите в Updates и нажмите Refresh. Дождитесь обновления списка пакетов.

Нажмите Upgrade. Откроется окно терминала. На вопрос о продолжении введите Y и нажмите Enter.

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

То же обновление из командной строки. Без платной подписки сначала отключите enterprise-репозиторий и добавьте no-subscription, как в веб-интерфейсе выше:

sed -i 's/^deb/#deb/' /etc/apt/sources.list.d/pve-enterprise.list echo "deb http://download.proxmox.com/debian/pve bullseye pve-no-subscription" > /etc/apt/sources.list.d/pve-no-subscription.list

Затем установите обновления:

apt update apt dist-upgrade

Tip

Debian 11 больше не поддерживается, и его пакеты со временем могут переехать с обычных зеркал на archive.debian.org. Если apt update возвращает ошибки 404 для bullseye, замените строки Debian в /etc/apt/sources.list на:

deb http://archive.debian.org/debian bullseye main contrib deb http://archive.debian.org/debian-security bullseye-security main contrib

Эти строки нужны только для завершения шага 1. На шаге 3 вместо команды sed замените их строками Bookworm, приведёнными там.

Перезагрузите узел и проверьте версию

Перезагрузите узел:

reboot

После запуска узла обновите страницу в браузере и проверьте версию в разделе Summary узла или выполните:

pveversion

В выводе должна быть версия 7.4-15 или новее.

Шаг 2. Запустите проверку pve7to8

В Proxmox VE 7.4 входит скрипт pve7to8. Он только проверяет систему и сообщает о проблемах, ничего не меняя. Запустите его со всеми проверками:

pve7to8 --full

Разберите результат:

  • пункты FAIL нужно исправить до обновления;
  • пункты WARN нужно прочитать и оценить, даже если они не блокируют обновление;
  • после каждого исправления запускайте скрипт снова, чтобы убедиться, что проблема ушла.

Tip

Перед продолжением удалите пакеты, плагины и сторонние модули хранилищ, которые не поддерживаются в Proxmox VE 8. Сторонний плагин хранилища должен иметь версию, совместимую с Proxmox VE 8. Если её нет, дождитесь, пока автор её выпустит.

Warning

Если Proxmox VE устанавливали поверх обычной Debian 11, а не с ISO Proxmox VE, проверьте, установлен ли пакет linux-image-amd64. Он конфликтует с пакетами ядра Proxmox VE, и apt может попытаться удалить пакет proxmox-ve. Удалите его перед продолжением: apt remove linux-image-amd64.

Шаг 3. Переключите репозитории на Bookworm

Репозитории Debian

Замените Bullseye на Bookworm в основном списке источников:

sed -i 's/bullseye/bookworm/g' /etc/apt/sources.list

Если на шаге 1 вы переключились на archive.debian.org, команда sed направит строки на путь Bookworm, которого в архиве нет. В этом случае замените содержимое /etc/apt/sources.list стандартными строками Debian 12:

deb http://deb.debian.org/debian bookworm main contrib deb http://deb.debian.org/debian bookworm-updates main contrib deb http://security.debian.org/debian-security bookworm-security main contrib

Затем убедитесь, что записей Bullseye не осталось ни в одном файле:

grep -r bullseye /etc/apt/sources.list /etc/apt/sources.list.d/

Если команда нашла строки, замените в них Bullseye на Bookworm или закомментируйте их символом #. Удалите строки backports: обновление не тестировалось с пакетами из backports.

Также проверьте, что нет зафиксированных или не до конца установленных пакетов. Обе команды должны вернуть пустой вывод:

apt-mark showhold dpkg --audit

Репозиторий Proxmox VE

Имя файла репозитория зависит от того, как его добавляли. Сначала посмотрите список файлов:

ls /etc/apt/sources.list.d/

Без подписки обновите файл, в котором есть строка pve-no-subscription. В системе, установленной с ISO, это обычно pve-install-repo.list:

sed -i 's/bullseye/bookworm/g' /etc/apt/sources.list.d/pve-install-repo.list

Правильная строка для Proxmox VE 8 без подписки:

deb http://download.proxmox.com/debian/pve bookworm pve-no-subscription

В некоторых системах в строке после deb есть ещё [arch=amd64]. Это нормально, оставьте его.

Убедитесь, что enterprise-репозиторий отключён: если файл pve-enterprise.list существует, его строка должна быть закомментирована символом #, как после отключения на шаге 1.

С платной подпиской пропишите enterprise-репозиторий и убедитесь, что в других файлах не осталось активной строки pve-no-subscription:

echo "deb https://enterprise.proxmox.com/debian/pve bookworm pve-enterprise" > /etc/apt/sources.list.d/pve-enterprise.list

Репозиторий Ceph

Пропустите эту часть, если Ceph на узле не установлен.

С платной подпиской:

echo "deb https://enterprise.proxmox.com/debian/ceph-quincy bookworm enterprise" > /etc/apt/sources.list.d/ceph.list

Без подписки:

echo "deb http://download.proxmox.com/debian/ceph-quincy bookworm no-subscription" > /etc/apt/sources.list.d/ceph.list

Tip

Если apt update возвращает ошибку 401 для enterprise-репозитория Ceph, обновите подписку командой pvesubscription update --force и повторите попытку.

Обновите индекс пакетов

apt update

В выводе не должно быть ошибок, и все строки должны указывать на bookworm.

Шаг 4. Обновите систему до Proxmox VE 8

Запустите обновление:

apt dist-upgrade

Длительность зависит от скорости корневого диска: от нескольких минут на SSD до часа и больше на медленном HDD.

Вопросы во время обновления

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

На вопрос, перезапускать ли службы автоматически при обновлении пакетов, выберите Yes стрелками и нажмите Enter.

Вопросы о файлах конфигурации

Во время обновления apt спрашивает, что делать с файлами конфигурации, которые изменили и вы, и пакет. Перед ответом нажмите D, чтобы посмотреть разницу. Рекомендуемые ответы для типичных файлов:

  • /etc/issue: оставьте свою версию (N). Proxmox VE создаёт этот файл заново при загрузке, он влияет только на экран входа;
  • /etc/lvm/lvm.conf: установите версию сопровождающего пакета (Y), если вы сами не меняли файл;
  • /etc/apt/sources.list.d/pve-enterprise.list: если apt спросит об этом файле, оставьте свою версию (N), иначе apt перезапишет репозиторий, настроенный на шаге 3;
  • /etc/ssh/sshd_config: если вы не меняли файл, установите версию сопровождающего пакета (Y), она заменяет устаревший параметр ChallengeResponseAuthentication на KbdInteractiveAuthentication. Если вы сами меняли настройки SSH, внимательно сравните файлы;
  • /etc/default/grub: этот вопрос обычно появляется, только если вы меняли файл, например добавляли параметры ядра. Проверьте разницу; если сомневаетесь, оставьте свою версию (N).

Warning

В системе, которая загружается в режиме UEFI через GRUB и у которой корень на LVM, после обновления сервер может не загрузиться с ошибкой disk 'lvmid/...' not found. Чтобы этого избежать, перед перезагрузкой установите пакет grub-efi-amd64:


[ -d /sys/firmware/efi ] && apt install grub-efi-amd64

Выполняйте эту команду в UEFI-системах, которые загружаются через GRUB. Это стандартный вариант для установки с ISO Proxmox VE с корнем на LVM. В системе с legacy BIOS команда ничего не делает. Пропустите её, если корень на ZFS: такие системы загружаются через proxmox-boot-tool, и проблема их не касается.

Проверьте результат

Когда apt dist-upgrade завершится без ошибок, снова запустите проверку:

pve7to8 --full

До перезагрузки скрипт может показать пункты WARN о работающем ядре и о том, что LXCFS ещё использует старую библиотеку FUSE. Это ожидаемо: оба предупреждения пропадут после перезагрузки в новое ядро на шаге 5. Пунктов FAIL быть не должно.

Шаг 5. Перезагрузитесь в новое ядро

Перезагрузите узел. Это нужно, даже если в Proxmox VE 7 вы уже использовали дополнительное ядро 6.2:

reboot

Warning

На некоторых серверах новое ядро может переименовать сетевые интерфейсы. Если после перезагрузки узел не отвечает по сети, подключитесь через IP-KVM, посмотрите текущие имена интерфейсов командой ip link и исправьте их в /etc/network/interfaces. Затем примените настройки командой ifreload -a.

Шаг 6. Проверьте результат

Очистите кэш браузера или принудительно обновите веб-интерфейс сочетанием Ctrl+Shift+R (Cmd+Shift+R в macOS). Проверьте версию в разделе Summary узла или командой:

pveversion

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

Info

Системы, которые загружаются в режиме UEFI через proxmox-boot-tool (обычно с корнем на ZFS, установленные с ISO), после обновления получают предупреждение pve7to8 о пакете systemd-boot. Устанавливайте пакет, только если скрипт выдал это предупреждение. В других системах он не нужен, а его скрипт установки может заменить GRUB в роли загрузчика.

Решение проблем

Обновление хочет удалить proxmox-ve

Сообщение W: (pve-apt-hook) You are attempting to remove the meta-package 'proxmox-ve'! значит, что какой-то репозиторий всё ещё настроен на Bullseye или не существует для Bookworm. Проверьте все файлы в /etc/apt/sources.list.d/, исправьте репозитории и снова выполните apt update. Не подтверждайте удаление.

Обновление прервалось

Если соединение пропало или обновление остановилось на середине, вернитесь в сессию tmux или подключитесь заново и выполните:

dpkg --configure -a apt -f install apt dist-upgrade

Ошибки зависимостей для пакетов Ceph

Если apt dist-upgrade сообщает о неудовлетворённых зависимостях для пакетов Ceph на узле без Ceph, добавьте репозиторий Ceph Quincy no-subscription из шага 3 и снова выполните apt update. Некоторым пакетам Proxmox VE он может понадобиться во время обновления.

Узел не загружается

Подключитесь через IP-KVM, чтобы увидеть ошибку загрузки. При проблемах с GRUB смотрите официальную страницу Recover From Grub Failure.

Что дальше

Proxmox VE 8 больше не получает обновлений. Запланируйте переход на Proxmox VE 9 на Debian 13 Trixie. Он выполняется по той же схеме, со скриптом проверки pve8to9.

Если не хотите выполнять мажорные обновления сами, специалисты INTROSERV по системному администрированию спланируют и проведут обновление за вас.

VAT

  • Other

    Ex. VAT

    0%
  • austria

    Austria

    20%
  • Belgium

    Belgium

    21%
  • Bulgaria

    Bulgaria

    20%
  • Croatia

    Croatia

    25%
  • Cyprus

    Cyprus

    19%
  • Czech Republic

    Czech Republic

    21%
  • Denmark

    Denmark

    25%
  • Estonia

    Estonia

    22%
  • France

    France

    20%
  • Finland

    Finland

    24%
  • Germany

    Germany

    19%
  • Greece

    Greece

    24%
  • Hungary

    Hungary

    27%
  • Ireland

    Ireland

    23%
  • Italy

    Italy

    22%
  • Latvia

    Latvia

    21%
  • Lithuania

    Lithuania

    21%
  • Luxembourg

    Luxembourg

    17%
  • Malta

    Malta

    18%
  • Netherlands

    Netherlands

    21%
  • Poland

    Poland

    23%
  • Portugal

    Portugal

    23%
  • Romania

    Romania

    19%
  • Slovakia

    Slovakia

    20%
  • Slovenia

    Slovenia

    22%
  • Spain

    Spain

    21%
  • Sweden

    Sweden

    25%
  • USA

    USA

    0%
european
states
  • kingdom
  • germany
  • Español
  • French
  • Hrvatska
  • Italiano
  • Poland
  • Slovenski
  • ukraine
  • Türkçe
  • Русский
  • Other
  • Austria
  • Belgium
  • Bulgaria
  • Croatia
  • Cyprus
  • Czech Republic
  • Denmark
  • Estonia
  • Finland
  • France
  • Germany
  • Greece
  • Hungary
  • Ireland
  • Italy
  • Latvia
  • Lithuania
  • Luxembourg
  • Malta
  • Netherlands
  • Poland
  • Portugal
  • Romania
  • Slovakia
  • Slovenia
  • Spain
  • Sweden
  • USA