Установка VNC

Установка VNC

С июня 2007 года Hetzner Online предлагает установку VNC через  робота .

VNC — это программное обеспечение, которое показывает экранный вывод удаленного компьютера (с запущенным серверным программным обеспечением VNC) на локальном компьютере (с запущенным программным обеспечением VNC viewer) и может отправлять на удаленный компьютер движения клавиатуры и мыши, которые выполняются на локальном компьютере. . Таким образом, удаленный компьютер может быть установлен так, как если бы вы сидели прямо перед удаленным компьютером и наблюдали за ним.

Во время этого процесса все данные копируются по сети. Поскольку необходимые данные находятся на серверах загрузки Hetzner, установка пакетов не займет больше времени, чем при установке с CD или DVD.

Однако вам понадобится клиент VNC ( http://en.wikipedia.org/wiki/Virtual_Network_Computing ) для доступа к процедуре установки.

Как начать установку VNC?

Чтобы начать установку VNC, щелкните вкладку VNC вашего сервера в  Robot . Здесь вы увидите раскрывающийся список доступных операционных систем, а также архитектуру и язык. После выбора нужной конфигурации и нажатия кнопки активации отобразится пароль, с помощью которого вы сможете войти в установку VNC через несколько минут после перезапуска сервера. Адрес VNC будет:

<IP Address>:1

или

<IP Address>:5901

Пример:

192.168.0.1:1
192.168.0.1:5901

Какие операционные системы и версии можно установить с помощью VNC?

  • CentOS 6.10
  • CentOS 7.7
  • CentOS 8.1
  • Fedora 31
  • openSUSE 15.1

Особенности: openSuSE

Установка openSuSE с помощью VNC выполняется в два этапа. Сначала выбираются языки, время, разделы, пакеты и т. Д. И устанавливается загрузчик. После установки система перезагрузится и снова автоматически установит соединение VNC. Вы можете войти (снова), используя ранее использованный пароль. На этом втором этапе установка завершается, что обычно требует минимального вмешательства пользователя. Затем система нормально перезагружается и становится доступной по SSH.

Если  RealVNC или  UltraVNC используются в качестве клиентов VNC, то при определенных обстоятельствах   могут произойти отключения . В этих случаях попробуйте следующие конфигурации:

  • Шестнадцатеричное кодирование
  • Низкий уровень цвета (256 цветов)

Особенности: Fedora

Во время установки брандмауэр активируется автоматически. По умолчанию одобрено лишь небольшое количество портов, включая SSH. Вместо iptables  firewalld  теперь является межсетевым экраном по умолчанию. Настройки брандмауэра можно изменить с помощью следующей программы:

firewall-cmd

Fedora 25 не может быть установлена ​​на виртуальном сервере CX10, так как для установки требуется более 1 ГБ ОЗУ.

UEFI

Вступление

В новых моделях серверов Hetzner Online будет изначально поддерживать загрузку UEFI и прекратит поддержку устаревшей загрузки (CSM). Текущее состояние UEFI Rescue System — БЕТА .

Что такое UEFI

UEFI (Unified Extensible Firmware Interface) — это замена устаревшей прошивки BIOS.

Какие серверы поддерживаются

В настоящее время (2020/03/19) все серверы, которые есть в нашем портфеле, кроме SX62, поддерживают стабильную загрузку UEFI, включая Hetzner Rescue System.

Какие преимущества есть у UEFI

UEFI дает заказчику такие преимущества, как использование больших разделов дисков размером более 2 ТБ с GPT, гибкая среда до ОС и обратная / прямая совместимость, а также более простой способ настройки двойной загрузки. Кроме того, если неисправный диск необходимо заменить, его нужно только повторно смонтировать в RAID. Установка загрузчика на диск больше не требуется, потому что загрузочные файлы находятся на отдельном разделе в формате FAT, который есть в наших образах в RAID. Для получения дополнительной информации об этом см. Системный раздел EFI.

Примите участие в бета-тестировании UEFI

Клиент может открыть вверх билет в Administration Console- Robot для сервера и попросить Enablement из UEFI на сервере. Обратите внимание, что произойдет кратковременный сбой, когда поддержка включит поддержку UEFI на сервере. Кроме того, установленная операционная система должна иметь поддержку UEFI, и вам потребуется системный раздел EFI для загрузки системы.

CSM (модуль поддержки совместимости) будет полностью отключен, поэтому невозможно загрузить систему с включенным UEFI-CSM.

Убедитесь, что система уже работает в режиме UEFI

Linux

В Linux есть два способа проверить, работает ли система в режиме UEFI.

Использование efibootmgr

Запуск efibootmgrв системе с поддержкой UEFI должен выглядеть так:

BootCurrent: 0019
Timeout: 1 seconds
BootOrder: 0019,0000,004,0005
Boot0000* UEFI OS: Samsung MZVLB512HAJQ-00000
Boot0004* UEFI:Removable Device
Boot0005* UEFI:Network Device
Boot0019* UEFI: IP4 Intel(R) Ethernet Connection (2) I219-LM

Запуск efibootmgrв системе без поддержки UEFI выдаст следующее:

EFI variables are not supported on this system.

Проверьте путь к sysfs

Если путь /sys/class/firmware/efi/существует, значит, система поддерживает UEFI.

Windows

Откройте msinfo32System Information) и проверьте, System Summary -> BIOS Modeнаписано ли там UEFIили Legacy.

Вопросы-Ответы

Поддержка безопасной загрузки

Мы знаем о преимуществах безопасной загрузки, а также о том, что некоторые клиенты хотят использовать безопасную загрузку. Его можно включить, но мы его не поддерживаем. Если он будет включен, система восстановления и автоматическая установка больше не будут доступны, и система может больше не быть загрузочной (дистрибутивы на основе Linux).

Поддержка аппаратного RAID-контроллера

Поскольку загрузка UEFI все еще находится в состоянии BETA , мы не можем гарантировать, что контроллер Hardware-RAID совместим с загрузкой UEFI.

Установка пользовательских образов

Вступление

В этой статье объясняются три метода установки образов, которые не предлагаются роботом в качестве автоматической установки.

Имейте в виду, что Hetzner Online не предлагает никакой поддержки для установки пользовательских образов и не может предложить никаких гарантий на функциональность установленной системы в наших продуктах.

В этой статье доступны и описаны следующие параметры:

  • Чтобы установить более старую версию образа Linux, доступную через робота:
    • Установите старые образы Linux с помощью скрипта Installimage
  • Для установки собственного образа Debian, Ubuntu, OpenSUSE или CentOS:
    • Установка пользовательского образа с помощью скрипта Installimage
  • Для установки Windows с собственной лицензией или любой другой операционной системы из загрузочного ISO-образа:
    • Установка через KVM-консоль и USB-накопитель
    • Установка с помощью консоли KVM и виртуального носителя

Установите старые образы Linux с помощью скрипта Installimage

Используя сценарий Installimage , который уже предустановлен в Rescue System , вы можете выполнять настраиваемые установки всех образов Linux, предлагаемых через Robot , а также старых образов, для которых мы больше не предлагаем поддержку и не гарантируем совместимость. Вы можете найти эти изображения после запуска сценария Installimage в меню выбора операционной системы в Old imagesразделе.

Установка пользовательского образа с помощью скрипта Installimage

Требования

  • Образ должен быть Debian, Ubuntu, OpenSUSE или CentOS для правильной настройки сетевых параметров.
  • Образ должен быть текущей версией дистрибутива. Установка предыдущей версии обычно еще возможна в течение определенного времени после выпуска новой версии, но это не поддерживается активно.
  • Полная ОС должна быть заархивирована в .tar.gzформате и размещена на веб-сервере, NFS или FTP-сервере или загружена в Rescue System (например, с помощью SCP). В архиве не должно быть ни папок /dev/procни /sysпапок.
  • Архив должен иметь имя дистрибутива и версию (во второй позиции) в имени файла (например, «debian-123-image.tar.gz» или «suse-123-backup.tar.gz»).
  • Загрузчик GRUBдолжен быть установлен и выбран в файле конфигурации.
  • Должно быть только одно ядро /boot.
  • Для проверки подписи подпись image.tar.gz.sigи соответствующий открытый ключ public-key.ascдолжны храниться в одном каталоге.

Процедура

Поэтому просто загрузите сервер в Rescue System , смонтируйте удаленную файловую систему, содержащую ваш архив (или просто загрузите его в Rescue System), запустите Installimage Script (команда:) installimageи в следующем меню выберите custom_images. Это загрузит пустую конфигурацию, которую можно настроить в соответствии с вашими требованиями. Вы также найдете там рекомендации и примеры.

Имейте в виду, что некоторые настройки, например, IMAGEPATHи т. Д., Не имеют заранее определенных параметров, но являются обязательными и должны быть заполнены вами.

Доступные диски автоматически обнаруживаются и добавляются к переменным DRIVE1DRIVE2

Установка через KVM-консоль и USB-накопитель

Для этого метода просто закажите KVM-консоль через Robot . Поэтому щелкните соответствующий сервер в своей учетной записи робота, выберите Supportраздел, выберите запрос конкретного сервера «Удаленная консоль / KVM» и вставьте прямую ссылку для загрузки в поле комментария.

Таким образом, вы можете загрузить свое изображение на любой предпочитаемый хостинг файлов, веб-пространство, хранилище или FTP-сервер. Кроме того, вы также можете отправить нам прямую ссылку для загрузки с зарубежного веб-сайта или выбрать изображение с нашего зеркала (учетные данные для входа указаны в сообщении о предоставлении сервера). Там вы также найдете несколько образов Windows Server.

Затем наши специалисты загрузят данный образ, создадут загрузочную USB-флешку и подключат ее вместе с KVM-консолью к вашему серверу (бесплатно).

Подробнее читайте в этой статье .

Установка с помощью консоли KVM и виртуального носителя

Важный:

  • KVM Console поддерживает только монтирование файлов ISO через протокол удаленной файловой системы SAMBA / SMB / CIFS.
  • Подключение образа может занять значительное время, поэтому убедитесь, что подключение к местоположению файла достаточно быстрое.
  • К сожалению, индикатора выполнения нет. Вы увидите уведомление, когда файл будет полностью загружен.
  • Мы не можем гарантировать, что монтирование ISO-файла и его установка всегда будут работать из-за ошибки прошивки, которая при определенных обстоятельствах приводит к зависанию консоли и / или сервера. По этой причине мы предлагаем установку через USB-накопитель (см. Предыдущий раздел).

Поэтому просто закажите KVM-консоль через Robot . Для этого щелкните соответствующий сервер в своей учетной записи робота, выберите Supportраздел и выберите запрос конкретного сервера «Удаленная консоль / KVM». Получив данные для входа в KVM Console, следуйте этому руководству, чтобы смонтировать образ.

Зеркало Hetzner Aptitude

IPv6

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

Debian 10.0 Buster В Debian 10.0 зеркало можно использовать, добавив следующее в файл /etc/apt/sources.list :

Пакеты и обновления безопасности из Hetzner Debian Mirror

deb http://mirror.hetzner.de/debian/packages buster         main contrib non-free
deb http://mirror.hetzner.de/debian/packages buster-updates main contrib non-free
deb http://mirror.hetzner.de/debian/security buster/updates main contrib non-free

Конечно, всегда нужно добавлять репозиторий с патчами безопасности:

deb http://deb.debian.org/debian/ buster          main contrib non-free
deb http://deb.debian.org/debian/ buster-updates  main contrib non-free
deb http://security.debian.org/   buster/updates  main contrib non-free

Debian 9.0 Stretch

В Debian 9.0 зеркало можно использовать, добавив следующее в файл /etc/apt/sources.list:

# Packages and Security Updates from the Hetzner Debian Mirror
deb http://mirror.hetzner.de/debian/packages stretch         main contrib non-free
deb http://mirror.hetzner.de/debian/packages stretch-updates main contrib non-free
deb http://mirror.hetzner.de/debian/security stretch/updates main contrib non-free

Конечно, всегда нужно добавлять репозиторий с патчами безопасности:

deb http://deb.debian.org/debian/ stretch          main contrib non-free
deb http://deb.debian.org/debian/ stretch-updates  main contrib non-free
deb http://security.debian.org/   stretch/updates  main contrib non-free

Debian 8.0 Джесси

В Debian 8.0 зеркало можно использовать, добавив в /etc/apt/sources.listфайл следующее:

# Packages and Security Updates from the Hetzner Debian Mirror
deb http://mirror.hetzner.de/debian/packages jessie         main contrib non-free
deb http://mirror.hetzner.de/debian/security jessie/updates main contrib non-free

Конечно, всегда нужно добавлять репозиторий с патчами безопасности:

deb http://http.debian.net/debian/ jessie-updates main contrib non-free
deb http://security.debian.org/ jessie/updates    main contrib non-free

Ubuntu 18.04 Bionic Beaver

В Ubuntu 18.04 зеркало можно использовать, добавив в /etc/apt/sources.listфайл следующее:

# Packages and Updates from the Hetzner Ubuntu Mirror
deb http://mirror.hetzner.de/ubuntu/packages bionic           main restricted universe multiverse
deb http://mirror.hetzner.de/ubuntu/packages bionic-updates   main restricted universe multiverse
deb http://mirror.hetzner.de/ubuntu/packages bionic-backports main restricted universe multiverse
deb http://mirror.hetzner.de/ubuntu/packages bionic-security  main restricted universe multiverse

Ubuntu 16.04 Xenial Xerus

В Ubuntu 16.04 зеркало можно использовать, добавив в /etc/apt/sources.listфайл следующее:

# Packages and Updates from the Hetzner Ubuntu Mirror
deb http://mirror.hetzner.de/ubuntu/packages xenial           main restricted universe multiverse
deb http://mirror.hetzner.de/ubuntu/packages xenial-updates   main restricted universe multiverse
deb http://mirror.hetzner.de/ubuntu/packages xenial-backports main restricted universe multiverse
deb http://mirror.hetzner.de/ubuntu/packages xenial-security  main restricted universe multiverse

Ubuntu 14.04 Надежный Тар

В Ubuntu 14.04 зеркало можно использовать, добавив в /etc/apt/sources.listфайл следующее:

# Packages and Updates from the Hetzner Ubuntu Mirror
deb http://mirror.hetzner.de/ubuntu/packages  trusty           main restricted universe multiverse
deb http://mirror.hetzner.de/ubuntu/packages  trusty-backports main restricted universe multiverse
deb http://mirror.hetzner.de/ubuntu/packages  trusty-updates   main restricted universe multiverse
deb http://mirror.hetzner.de/ubuntu/security  trusty-security  main restricted universe multiverse

Запись в файлы preseed Зеркало Hetzner можно настроить в файлах preseed следующим образом: ( debian можно заменить на ubuntu ):

d-i mirror/http/hostname string mirror.hetzner.de
d-i mirror/http/directory string /debian/packages

Установить image ISO

скрипт installimage

Installimage  сценарий обеспечивает Hetzner предлагает простой и быстрый способ установки различных дистрибутивов Linux.

Installimage можно запустить прямо из  Rescue System  на вашем сервере. Он предлагает интерфейс на основе меню, в котором вы можете выбрать дистрибутив Linux по вашему выбору. У вас есть полный контроль над разбиением на разделы вашего диска (ов) и можно активировать использование программного RAID, а также LVM с помощью простого редактора.

Запуск installimage

Чтобы использовать installimage, вам сначала нужно активировать, а затем загрузиться в  Rescue System .

После входа в систему спасения как «root», используя пароль, отображаемый в  роботе , введите installimage, чтобы запустить сценарий installimage:

root@rescue ~ #installimage

Будет показано следующее меню:

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

Midnight Commander  ( mcedit ) используется как редактор.

Выбор ОС

Мы предлагаем ряд  стандартных изображений,  которые вы можете использовать. Обычно это последняя версия конкретного дистрибутива.

Опытные пользователи также могут установить более старые версии этих дистрибутивов, перейдя в old\_imagesпапку. Обратите внимание, что мы не поддерживаем эти старые образы.

Кроме того, опытные пользователи могут создавать собственные образы ОС и устанавливать их. Пожалуйста, ознакомьтесь с руководством по  установке собственных образов ОС,  чтобы узнать, как это возможно, а также список требований.

автонастройка

Если  installimage находит  /autosetup файл в системе спасения, он будет автоматически использовать это в качестве файла конфигурации. Ни меню, ни редактор не отображаются, если в файле нет ошибок.

Переменные

Следующие переменные можно настроить для настройки установки.

Диски

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

Здесь вы можете выбрать, на какие диски вы хотите установить ОС. Диски будут полностью очищены, и все данные на них будут потеряны.

Если вы хотите оставить диск в его текущем состоянии и не вносить в него никаких изменений, вы можете оставить его (удалить), поставив #перед ним. Обратите внимание, что это означает, что число после следующей переменной DRIVE должно быть правильно отрегулировано.

Пример:

# SSDSC2BB480G4
#DRIVE1 /dev/sda
# SSDSC2BB480G4
DRIVE1 /dev/sdb

SWRAID

Когда сервер имеет несколько дисководов переменные SWRAIDи SWRAIDLEVELможет быть использован для создания различных уровней программного обеспечения RAID. Любые программные уровни RAID всегда применяются ко всем (помеченным как DRIVE, как описано выше) дискам. Если вам не нужен программный RAID на конкретном диске, вам необходимо удалить его соответствующим образом.

Скрипт может создавать программный RAID с уровнями 0, 1, 5, 6 или 10.

Загрузчик

Загрузчик Grub предварительно настроен (в прошлом мы также предлагали Lilo). В зависимости от операционной системы установлен GRUB2 или GRUB1 (устаревший Grub).

Имя хоста

Переменная HOSTNAMEустанавливает соответствующее имя хоста в системе.

Разделы / файловые системы

Installimage также поддерживает настройку схемы разбиения (включая использование LVM). Обозначенный синтаксис можно найти в примерах в редакторе.

Образ операционной системы

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

Установка

После выхода из редактора с помощью F10 (сохранить и выйти) проверяется синтаксис файла конфигурации. Если он будет содержать ошибки, вы вернетесь в редактор.

Если вы видите этот вывод через 1-5 минут (в зависимости от используемого образа и разбиения на разделы), система готова и загружается.

В качестве пароля root установлен текущий пароль Rescue System.

После rebootв Спасательной системе

root@rescue ~ # reboot

вновь установленная система загружается, и вы можете войти в систему с предыдущим паролем Rescue System.

Особенности

При установке Debian или Ubuntu с использованием сценария installimage время выполнения cronjob  /etc/cron.d/mdadm устанавливается случайным образом.

Часто задаваемые вопросы

Почему я не могу создать разделы размером более 2 ТиБ?

Создание разделов размером более 2 ТиБ возможно только с помощью  таблицы разделов GUID (GPT) . Таким образом, могут быть установлены только операционные системы, включающие GRUB2, которые поддерживают загрузку с дисков GPT.

Сценарий установки показывает одну или несколько ошибок. Что я должен делать?

Повторно запустите установку. Если вы снова получите ту же ошибку, отправьте полный вывод экрана и содержимое файла  /root/debug.txt по адресу support@hetzner.de.

Должен ли я помещать «все» в конец таблицы разделов или я могу поместить эту строку дальше вверху?

Размер allв файле конфигурации означает  использование оставшейся части доступного пространства на диске . Поскольку разделы создаются один за другим, таблица разделов будет закрыта после использования, allпотому что после этого не останется свободного места. Конечно, можно вообще не использовать «все».

Нажатие F10 не работает. Вместо этого ~21(или что-то подобное) отображается.

Нажмите Escape, а затем 0. В большинстве случаев имеет тот же эффект, что и F10.

Кто автор сценария? Могу ли я использовать его бесплатно?

Скрипты были написаны разработчиками Hetzner Online GmbH и поддерживаются и расширяются ими. Скрипты написаны на bash и доступны в системе восстановления. Их можно свободно использовать и изменять. Hetzner Online GmbH не несет ответственности за любой ущерб, причиненный изменением сценариев, и исключает любую поддержку руководств, которые включают изменения сценария.

https://github.com/hetzneronline/installimage

Какой пароль root MySQL после установки LAMP?

Пароль root MySQL для образа LAMP можно найти в /password.txtфайле.

Разрыв связи с сетевой картой Realtek r8169-r8168

Вступление

Система теряет сетевое соединение из-за зависания сетевой карты. Разгрузка сегментации TCP сетевых адаптеров неисправна и должна быть деактивирована.

Решение

Чтобы исправить зависание, вы можете отключить разгрузку сегментации TCP с помощью следующей команды:

ethtool -K <interface> tso off

В настоящее время нет доступного / объявленного исправления, позволяющего разгрузить сегментацию TCP на сетевой адаптер без ущерба для производительности.

Следующее сообщение об ошибке можно игнорировать:

Cannot get device udp-fragmentation-offload settings: Operation not supported

Более старые версии ethtool пытаются отключить функцию, отсутствующую в более новых версиях ядра. Тем не менее, отключение разгрузки сегментации TCP все равно будет работать: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=898907

Серверы серии SX61 имеют на материнской плате сетевой чип Realtek 8111F, который неправильно управляется ядром Debian Stretch Linux с драйвером r8169. Вместо этого вам следует установить пакет r8168-dkms.

Пример ошибок от dmesg

NETDEV WATCHDOG: enp3s0 (r8168): transmit queue 0 timed out
enp3s0: BUG! Tx Ring full when queue awake!
r8168: enp3s0: link up

Rescue FreeBSD

Вступление

В этой статье объясняется общее использование Hetzner FreeBSD Rescue System.

Что такое система восстановления FreeBSD?

Система восстановления FreeBSD основана на минимальном дистрибутиве FreeBSD, который можно загрузить по сети (PXE). Это дает вам возможность восстановить вашу текущую систему FreeBSD в случае ошибки конфигурации, отключить или загрузить файлы или установить FreeBSD на ваш продукт. Установка и использование FreeBSD требует определенных знаний FreeBSD и рекомендуется только для опытных пользователей. Обратите внимание, что Hetzner Online обычно не предлагает поддержки программного обеспечения, поэтому вы несете ответственность за любые проблемы, возникающие при использовании FreeBSD. Образы FreeBSD были созданы с помощью системы создания образов mfsBSD Мартином Матуска.

Как я могу запустить спасательную систему?

Поэтому войдите в свою учетную запись робота . Затем щелкните соответствующий сервер и выберите Rescueвкладку. Выберите FreeBSD Rescue System из раскрывающегося меню, подтвердите и перезапустите сервер (обычно через SSH, но в случае ошибки вы также можете сделать это через Resetвкладку в Robot).

Пароль, который был дан вам при активации FreeBSD Rescue System, теперь может использоваться для входа в систему как пользователь rootчерез SSH.

Как я могу смонтировать свою файловую систему?

Файловая система UFS

Поэтому используйте команду mount. Пример:

mount -t ufs /dev/da1p1 /mnt

Дополнительные параметры и точный синтаксис можно найти на этом сайте .

Файловая система ZFS

Прежде всего, перечислите пулы, которые можно импортировать, используя команду:

zpool import

Для монтажа, например, бассейн my_poolв /mnt, используйте следующую команду:

zpool import -o altroot=/mnt my_pool

Как я могу сбросить или изменить свой пароль root?

Чтобы сбросить пароль rootпользователя, смонтируйте корневой раздел ( /) вашей установленной системы /mnt, как описано в предыдущем разделе. После этого вы можете изменить текущий корень на смонтированный корневой раздел вашей установленной системы:

chroot /mnt

Теперь вы можете изменить пароль rootпользователя:

passwd

Наконец, выйдите из среды chroot, размонтируйте корневой раздел и перезагрузите сервер обратно в установленную систему:

exit
umount /mnt
reboot

Системный раздел EFI

Вступление

Системный раздел EFI (или ESP) — это независимый от ОС раздел, отформатированный в FAT12, FAT16 или FAT32, который действует как место хранения загрузчиков EFI и драйверов, запускаемых прошивкой UEFI, и является обязательным для загрузки UEFI.

Настроить системный раздел EFI

Linux (с использованием GRUB)

Сначала необходимо изменить таблицу разделов. Убедитесь, что на каждом диске есть не менее 200 МБ свободного пространства без разделов. Чтобы создать ESP, раздел должен быть определен в таблице разделов. Это можно сделать с помощью gdisk.

$ gdisk /dev/nvme0n1
GPT fdisk (gdisk) version 1.0.3

Partition table scan:
  MBR: protective
  BSD: not present
  APM: not present
  GPT: present

Found valid GPT with protective MBR; using GPT.

Command (? for help):

На выбранном диске есть таблица разделов GPT. Введите, pчтобы распечатать текущую таблицу разделов.

Command (? for help): p
Disk /dev/nvme0n1: 1000215216 sectors, 476.9 GiB
Model: SAMSUNG MZVLB512HAJQ-00000
Sector size (logical/physical): 512/512 bytes
Disk identifier (GUID): 81C8DFEB-06A0-4164-84BC-B5F5D696B519
Partition table holds up to 128 entries
Main partition table begins at sector 2 and ends at sector 33
First usable sector is 34, last usable sector is 1000215182
Partitions will be aligned on 2048-sector boundaries
Total free space is 411614 sectors (201.0 MiB)

Number  Start (sector)    End (sector)  Size       Code  Name
   1            2048       999805582   476.7 GiB   8300  Linux filesystem

Command (? for help):

В этом случае будет только один раздел размером с 476.7 GiBустановленную ОС. Также имеется полное свободное пространство, 201.0 MiBкоторое не разделено на разделы. Они 200 MiBбудут использоваться для ESP. Чтобы создать новый раздел, введите n.

Command (? for help): n
Partition number (2-128, default 2):
First sector (34-1000215182, default = 999806976) or {+-}size{KMGTP}:
Last sector (999806976-1000215182, default = 1000215182) or {+-}size{KMGTP}:
Current type is 'Linux filesystem'
Hex code or GUID (L to show codes, Enter = 8300): EF00
Changed type of partition to 'EFI System'

Обратите внимание : ESP не обязательно должен быть в начале таблицы разделов. Единственное, что нужно, — это установить для шестнадцатеричного кода EF00и использовать минимальный размер 200MiB.

Когда закончите, таблицу разделов можно записать с помощью w.

Command (? for help): w

Final checks complete. About to write GPT data. THIS WILL OVERWRITE EXISTING
PARTITIONS!!

Do you want to proceed? (Y/N): y
OK; writing new GUID partition table (GPT) to /dev/nvme0n1.
The operation has completed successfully.

Чтобы убедиться, что таблица разделов перезагружается, запустите partprobe.

Результат lsblkтеперь может выглядеть так:

$ lsblk
NAME        MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
loop0         7:0    0     4G  1 loop
nvme0n1     259:0    0   477G  0 disk
├─nvme0n1p1 259:4    0   512M  0 part
├─nvme0n1p2 259:5    0 476.2G  0 part
└─nvme0n1p3 259:6    0   256M  0 part

НОТА

Если на сервере имеется более одного диска в системе, то рекомендуется сделать ESP в RAID 1. В этом случае важно установить --metadata=1.0на MD. При этом метаданные MD будут записаны в конец раздела, а не в начало раздела. В данном случае это необходимо, чтобы дать прошивке UEFI возможность обнаруживать ESP.

Сначала сверьтесь с cat /proc/mdstatсостоянием MD. Результат может быть таким:

Personalities : [raid1] [raid10] [linear] [multipath] [raid0] [raid6] [raid5] [raid4]
md0 : active raid1 nvme0n1p1[1] nvme1n1p1[0]
      523712 blocks super 1.2 [2/2] [UU]

md1 : active raid1 nvme0n1p2[1] nvme1n1p2[0]
      1874716672 blocks super 1.2 [2/2] [UU]
      bitmap: 1/14 pages [4KB], 65536KB chunk

В этом случае следующим доступным «md-device» будет md2. Это будет использоваться для ESP. Создайте раздел на каждом устройстве, как уже было описано выше.

Создайте устройство md следующим образом (количество raid-devicesи логические устройства должны быть адаптированы):

mdadm --create --verbose --level=1 --raid-devices=2 --metadata=1.0 /dev/md/2 /dev/nvme0n1p3 /dev/nvme1n1p3

После создания mdadm.confдолжен быть сгенерирован.

mdadm --detail --scan /dev/md/2 >> /etc/mdadm/mdadm.conf

Отформатируйте только что созданный раздел с помощью FAT32:

$ mkfs.vfat -F 32 /dev/nvme0n1p3 # or the md device
mkfs.fat 4.1 (2017-01-24)

Создайте каталог /boot/efiс помощью mkdir /boot/efi.

Смонтируйте раздел ESP в /boot/efiс mount.

Получите UUID раздела blkid -o value -s UUID /dev/your_esp_partition_or_md_deviceи создайте новую запись fstab:

UUID=the_uuid_of_the_esp /boot/efi vfat umask=0077 0 1

Чтобы установить загрузочные двоичные файлы EFI, сначала необходимо установить загрузчик EFI-GRUB.

В Debian / Ubuntu это так grub-efi-amd64-bin, в CentOS так и есть grub2-efi-x64.

Теперь можно установить загрузчик EFI-GRUB:

$ # Ubuntu/Debian
$ grub-install --target=x86_64-efi --efi-directory=/boot/efi --no-floppy --no-nvram --removable

$ # CentOS
$ grub2-mkconfig -o /boot/efi/EFI/centos/grub.cfg

Windows

Microsoft предлагает с Windows Server 2012 инструмент, mbr2gptкоторый автоматически преобразует таблицу разделов в GPT, а также создает ESP.

Рекомендуется делать это в среде WinPE, но это также можно сделать в работающей системе.

Откройте командную строку с повышенными привилегиями ( cmd) и запустите mbr2gpt /validate /allowFullOS. Обратите внимание, что /allowFullOSэто требуется только при выполнении преобразования в работающей системе (без WinPE). Результат должен быть таким:

C:\Windows\System32> mbr2gpt /validate /allowFullOS
MBR2GPT: Attempting to validate disk 0
MBR2GPT: Retrieving layout of disk
MBR2GPT: Validating layout, disk sector size is: 512 bytes
MBR2GPT: Validation completed successfully

Важно: Если проверка не удалась, прервите ее и проверьте, почему она не прошла. Если диск динамический, то таким образом сделать это невозможно.

Если проверка прошла успешно, продолжайте преобразование. Это можно сделать с помощью mbr2gpt /convert /allowFullOS. Результат должен быть таким:

C:\Windows\System32> mbr2gpt /convert /allowFullOS
MBR2GPT will now attempt to convert the default book disk.
If conversion is successful the disk can only be booted in GPT mode.
These changes cannot be undone!

MBR2GPT: Attempting to convert disk 0
MBR2GPT: Retrieving layout of disk
MBR2GPT: Validating layout, disk sector size is: 512 bytes
MBR2GPT: Trying to shrink the OS partition
MBR2GPT: Creating the EFI system partition
MBR2GPT: Installing the new boot files
MBR2GPT: Performing the layout conversion
MBR2GPT: Migrating default boot entry
MBR2GPT: Adding recovery boot entry
MBR2GPT: Fixing drive letter mapping
MBR2GPT: Conversion completed successfully
MBR2GPT: Before the new system can boot properly you need to switch the firmware to boot to UEFI mode!

Теперь загрузочную прошивку можно изменить на UEFI.

Отключить функцию сбоя записи GRUB2

Вступление

GRUB2 имеет функцию, которая после неудачной попытки загрузки во время следующей загрузки автоматически останавливается в меню загрузки.

При определенных обстоятельствах это может быть нежелательно. В зависимости от версии GRUB необходимо внести изменения либо в файл, /etc/grub.d/00_headerлибо в переменную GRUB_RECORDFAIL_TIMEOUTв файле /etc/default/grub.

Отключить функцию сбоя записи GRUB2

Сначала найдите в файле следующее /etc/grub.d/00_header

if [ ${recordfail} = 1 ]; then
   set timeout=-1
else
  set timeout=${GRUB_TIMEOUT}
fi

Если это будет найдено (точная формулировка), просто добавьте символы комментария:

#if [ \${recordfail} = 1 ]; then
#    set timeout=-1
#else
    set timeout=${GRUB_TIMEOUT}
#fi

В качестве альтернативы, если вы обнаружите следующее:

if [ "\${recordfail}" = 1 ]; then
 set timeout=${GRUB_RECORDFAIL_TIMEOUT:--1}
else
 set timeout=${2}
fi

Затем отредактируйте файл /etc/default/grubи добавьте строку

GRUB_RECORDFAIL_TIMEOUT=5

На таймаут 5 секунд.

В любом случае, чтобы обновить конфигурацию, запустите update-grub

Теперь GRUB2 всегда будет использовать установленный тайм-аут.

Ручной сброс значения сбоя записи

Значение grubenv можно сбросить вручную.

grub-editenv set recordfail=0 или даже удалили grub-editenv unset recordfail