OpenBSD FAQ - Руководство по установке [FAQ - На главную]



Обзор процесса установки

Установщик OpenBSD использует специальное ramdisk ядро (bsd.rd), которое создает live среду, полностью загружаемую в память. Эта среда содержит установочные скрипты и небольшое количество утилит, необходимых для процесса установки. Они могут использоваться и для востановления (disaster recovery) системы.

Есть несколько способов загрузить установочное ramdisk ядро:

Не каждая платформа поддерживает все перечисленные выше способы.

Если у вас есть рабочая OpenBSD система, bsd.rd - это все, что вам нужно для переустановки или обновления её до более новой версии. Для этого скачайте и проверьте новый bsd.rd файл, поместите его в существующую файловую систему и загрузитесь с него. Чтобы загрузиться с bsd.rd - замените загрузочное ядро с /bsd на /bsd.rd.

Загрузиться с bsd.rd на платформе amd64 можно вот так:

Using drive 0, partition 3.
Loading......
probing: pc0 com0 com1 mem[638K 1918M a20=on]
disk: hd0+ hd1+
>> OpenBSD/amd64 BOOT 3.33
boot> bsd.rd
Это загрузит ядро bsd.rd из первого раздела первого найденного жесткого диска.

Если вам нужно указать другой диск или раздел, просто подставьте перед именем ядра его местоположение. В следующем примере загрузка происходит с четвертого раздела второго диска:

Using drive 0, partition 3.
Loading......
probing: pc0 com0 com1 mem[638K 1918M a20=on]
disk: hd0+ hd1+
>> OpenBSD/amd64 BOOT 3.33
boot> boot hd1d:/bsd.rd
Загрузчики OpenBSD описаны в архитектурно-зависимых boot(8) man-страницах.

Предварительная подготовка

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

Загрузка OpenBSD из Интернет

Следующие установочные образы доступны для скачивания:

install75.img Образ диска, который может быть записан на USB флешку или подобное устройство. Содержит установочные компоненты.
amd64 | arm64 | i386 | octeon | powerpc64 | riscv64 | sparc64
miniroot75.img Это такой же образ, как и выше, но без установочных компонентов. Они могут быть загружены из интернет или c диска.
alpha | amd64 | arm64 | armv7 | i386 | landisk | luna88k | octeon | powerpc64 | riscv64 | sparc64
install75.iso ISO 9660 образ. Используется для создания установочных CD/DVD. Содержит установочные компоненты.
alpha | amd64 | hppa | i386 | macppc | powerpc64 | sparc64
cd75.iso Такой же образ как и выше, но без установочных компоненов.
alpha | amd64 | hppa | i386 | loongson | macppc | sparc64
floppy75.img Поддерживает некоторые старые машины, где отсутствуют другие возможности для загрузки.
amd64 | i386 | sparc64

Образы могут быть загружены с альтернативных зеркал.

Файл SHA256, содержащий контрольные суммы, находится в том же каталоге, что и установочные файлы, перечисленные выше. Вы можете проверить, что ни один из загруженных файлов не был искажен при скачивании, используя команду sha256(1).

$ sha256 -C SHA256 miniroot*.img
(SHA256) miniroot75.img: OK
Если же вы используете ОС с GNU coreutils:
$ sha256sum -c --ignore-missing SHA256
miniroot75.img: OK
Однако это используется лишь для проверки правильной загрузки файлов по сети. Используйте signify(1) и SHA256.sig для криптографической проверки файла, содержащего контрольные суммы.
$ signify -Cp /etc/signify/openbsd-75-base.pub -x SHA256.sig miniroot*.img
Signature Verified
miniroot75.img: OK
Обратите внимание, что пакет signify в других операционных системах может не содержать требуемого открытого ключа или быть установлен в другое место.

Образы install75.iso и install75.img не содержат файл SHA256.sig, поэтому установщик пожалуется, что не может проверить подпись включенных файлов, которые содержат установочные компоненты:

Directory does not contain SHA256.sig. Continue without verification? [no]
Это происходит из-за того, что мы не стали включать этот файл, так как установщику нет смысла проверять их. Если кто-то создаст мошеннический установочный образ, он конечно же сможет изменить установщик так, чтобы файлы были легитимны. Если подпись установочного образа была проверена ранее, можно с уверенностью ответить «да».

Создание установочного носителя

Флеш устройства (Flash Drives)

Загрузочную USB флешку можно создать записав не нее образ при помощи dd(1).

Используя OpenBSD и предполагая, что устройство было распознано как sd6:

# dd if=install*.img of=/dev/rsd6c bs=1M
Обратите внимание, что используется raw I/O device rsd6c, а не sd6c.

Некоторые детали могут отличаться в разных системах. Если вы используете другую ОС, не забудьте о правильном имени устройства: /dev/sdX в Linux или /dev/rdiskX в macOS, например.

CD-ROM

При помощи cdio(1) вы можете создать загружаемый CD-ROM.
# cdio tao cd*.iso

Выполнение простой установки

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

Установщик OpenBSD предназначен для установки системы с очень удобной конфигурацией по умолчанию с минимальным вмешательством пользователя. Вы можете просто нажимать <Enter>, чтобы получить правильно установленную OpenBSD, пробежавшись пальцами по клавиатуре только для ввода пароля root.

После вывода dmesg(8) вы увидете первый вопрос установщика:

...
root on rd0a swap on rd0b dump on rd0b
erase ^?, werase ^W, kill ^U, intr ^C, status ^T

Welcome to the OpenBSD/amd64 7.5 installation program.
(I)nstall, (U)pgrade, (A)utoinstall or (S)hell?
Выберите (I)nstall для начала процесса установки.

Набор устанавливаемых компонент

Полная инсталляция OpenBSD разбита на несколько установочных компонент.

bsd Ядро (обязательно для установки)
bsd.mp Ядро с поддержкой мультипроцессорных систем (SMP) (доступно не для всех платформ)
bsd.rd ramdisk ядро
base75.tgz Базовая система (обязательно для установки)
comp75.tgz Компиляторы, заголовочные файлы (headers) и библиотеки
man75.tgz Справочные man-страницы
game75.tgz Консольные игры (text-based games)
xbase75.tgz Основные библиотеки и утилиты для X11 (требует xshare75.tgz)
xfont75.tgz Шрифты, используемые X11
xserv75.tgz X серверы X11
xshare75.tgz Справочные man-страницы, конфиги и заголовочные файлы для X11

Новым пользователям рекомендуется установить все эти компоненты.

Некоторые библиотеки из xbase75.tgz, такие как freetype или fontconfig, используются программами для работы с текстом или графикой и без X. Такие программы обычно нуждаются в шрифтах из xfont75.tgz или пакетов со шрифтами. Для простоты разработчики решили не поддерживать минимальный компонент xbase75.tgz, который позволял бы работать большинству не-X портов.

Добавление компоненты после установки

Если вы решили пропустить некоторые установочные компоненты в ходе установки системы, вы, возможно, позже все же передумаете. Для этого просто загрузитесь с bsd.rd и выберите (U)pgrade. Когда вы, предварительно ответив на несколько вопросов, наконец перейдете к выбору установочных компонент, выберите те, что хотите доустановить.

Разметка диска

Для установки OpenBSD требуется всего 512 Мб свободного места на диске, но подобная установка подойдет по большей части опытным пользователям. Если же у вас нет большого опыта в работе с OpenBSD, мы рекомендуем использовать 8 Гб или даже больше.

В отличие от других операционных систем, OpenBSD советует пользователям разбивать свои разделы на несколько подразделов, а не на один или два больших. Некоторые из причин для этого:

Установщик OpenBSD предложит свой вариант создания разделов, основываясь на размере вашего диска. Хотя порой это и не является идеальным вариантом для всех пользователей, этот вариант, тем не менее, гарантирует правильную конфигурацию. От нее можно оттолкнуться, редактируя и приближаясь к тому, что нужно вам. Прочтите информацию о настройках, используемых по умолчанию, для автоматического disk allocation и man-страницу hier(7), прежде чем принимать решение о создании своей схемы разметки.

Bootstrapping Wireless Firmware

По причине ограничений, связанных с лицензиями, некоторые firmware не могут поставляться месте с OpenBSD. Программа fw_update(8) автоматически загрузит и установит любые отсутствующие в системе firmware, но она требует установленного и рабочего соединения с интернет.

В некоторых случаях нет возможности подключиться к интернет, например если на ноутбуке нет порта Ethernet. В этом случае пользователю придется вручную загрузить и установить firmware, чтобы подключиться к интернет. Это можно сделать перед установкой, добавив файлы с firmware на установочный носитель или после установки ОС с CD или жеского диска.

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

Начать стоит с поиска interface name wireless адаптера в dmesg(8).

Из существующей установки OpenBSD смонтируйте установочный образ как диск vnode при помощи vnconfig(8) и используйте fw_update(8) для загрузки нужных файлов. В приведенном примере используется firmware для карты iwm(4):

# vnconfig install75.img
vnd0
# mount /dev/vnd0a /mnt
# fw_update -Fv -p /mnt iwm
# umount /mnt
# vnconfig -u vnd0
Полученный файл затем можно использовать для создания загрузочного установочного образа с необходимой прошивкой (firmware).

Если у вас нет системы с OpenBSD с выходом в интернет, используйте другой компьютер для загрузки соответствующего файлов с https://firmware.openbsd.org/firmware/, после чего скопируейте их на USB-флешку, с которой может работать OpenBSD. Затем, в OpenBSD системе подключите устройство при помощи mount(8) и используйте все ту же программу fw_update(8) для установки файлов оттуда.

Отправка вашего dmesg после установки

После успешной установки проверьте, не выглядит ли что-то странным в выводе команды dmesg(8). Если какое-то устройство показано как not configured, это значит, что оно в настоящий момент не поддерживается ядром. Это можно исправить только если отпаравить вывод dmesg. Содержание письма /usr/src/etc/root/root.mail:
If you wish to ensure that OpenBSD runs better on your machines, please do us
a favor (after you have your mail system configured!) and type something like:

# (dmesg; sysctl hw.sensors) | \
   mail -s "Sony VAIO 505R laptop, apm works OK" dmesg@openbsd.org

so that we can see what kinds of configurations people are running.  As shown,
including a bit of information about your machine in the subject or the body
can help us even further.  We will use this information to improve device driver
support in future releases.  (Please do this using the supplied GENERIC kernel,
not for a custom compiled kernel, unless you're unable to boot the GENERIC
kernel.  If you have a multi-processor machine, dmesg results of both GENERIC.MP
and GENERIC kernels are appreciated.)  The device driver information we get from
this helps us fix existing drivers. Thank you!
Или просто сохрание вывод dmesg в каком-нибудь текстовом файле и отпавьте нам его содержание:
$ (dmesg; sysctl hw.sensors) > ~/dmesg.txt
Пожалуйста, настройте ваш почтовый клиент для использования plain text. В частности, не используйте HTML форматирование или принудительные переносы строк. Поместите вывод dmesg в тело письма, а не прикрепляйте к письму attachment-файл.

Настройка процесса установки

Компонент site75.tgz

Скрипты установки и обновления OpenBSD позволяют выбирать установленные пользователем настройки, называемые site75.tgz. Как и официальные копоненты установки, это tar(1) архив, распаковывапющийся в корень ФС / и при помощи опций -xzphf. Он распаковается последним, поэтому отлично подходит для изменения файлов, которые присутствуют в системе после установки. Кроме того, можно использовать компоненты, зависящие лишь от имени хоста, при использовании имени site75-$(hostname -s).tgz.

Заметка: Если вы хотите использовать установочные компоненты, загружая их через HTTP(s), поместите site75.tgz в каталог, откуда будете загружать архив, и добавьте его имя в ваш index.txt. Этот компонент будет доступен во время установки системы.

Скрипты install.site и upgrade.site

Если компонент site75.tgz содержит файл /install.site, установщик запустит его при помощи chroot(8), в только что созданный для установки корень ФС. Аналогично, upgrade-скрипт запустит /upgrade.site. Последний может быть помещен в корневой каталог системы и использован для обновления перед перезагрузкой.

Пример использования:

Мультизагрузка

Мультизагрузка подразумевает использование на одном компьютере нескольких ОС, а также средства выбора нужной из них при загрузке. Ознакомтесь с процессом загрузки OpenBSD перед тем так начать. Краткое введение в возможности fdisk(8) можно найти в разделе использование fdisk.

Если вы собираетесь установить OpenBSD на машину, где она не будет первой, вам, возможно, потребуется освободить место перед установкой OpenBSD. В дополнение к встроенным инструментам вашей существующей системы, gparted может быть полезен для удаления или изменения размера существующих разделов. Предпочтительно использовать один из четырех основных разделов MBR для загрузки OpenBSD. Расширенные разделы могут не работать.

rEFInd, как нам известно по сообщениям пользователей. обычно работет без проблем. GRUB, по сообщениям от пользователей, как правило работает не совсем правильно. Так или иначе, вы в праве сами решать что и как хотите использовать.

Windows

Boot Configuration Data (BCD) позволяет загружать несколько версий Windows при помощи bcdedit. Описание этой программы можно найти в этой статье. Если вам нужна альтернатива с графическим интерфейсом, вы можете попробовать EasyBCD.

Вам понадобится скопировать Partition Boot Record (PBR) вашей OpenBSD. Вы можете скопировать его в файл:

# dd if=/dev/rsd0a of=openbsd.pbr bs=512 count=1
где sd0a - ваше загрузочное устройство. Вам нужно будет загрузить файл openbsd.pbr в системный раздел Windows.

После копирования PBR OpenBSD в системный раздел Windows вам понадобится shell с правами администратора для запуска следующих команд:

C:\Windows\system32> bcdedit /create /d "OpenBSD/i386" /application bootsector
The entry {0154a872-3d41-11de-bd67-a7060316bbb1} was successfully created.
C:\Windows\system32> bcdedit /set {0154a872-3d41-11de-bd67-a7060316bbb1} device boot
The operation completed successfully.
C:\Windows\system32> bcdedit /set {0154a872-3d41-11de-bd67-a7060316bbb1} path \openbsd.pbr
The operation completed successfully.
C:\Windows\system32> bcdedit /set {0154a872-3d41-11de-bd67-a7060316bbb1} device partition=c:
The operation completed successfully.
C:\Windows\system32> bcdedit /displayorder {0154a872-3d41-11de-bd67-7060316bbb1} /addlast
The operation completed successfully.
Обратите внимание, что OpenBSD ожидает, что real-time clock компьютера будут установлены на Coordinated Universal Time (UTC). Подробную информацию можно найти в этом разделе.