[OpenBSD]

[FAQ-Index] [Глава 3 - Начинаем работать с OpenBSD] [Глава 5 - Сборка системы из исходников]

4 - Руководство по установке OpenBSD 5.2


Содержание


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

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

На большинстве платформ процедура установки одинакова, однако, на некоторых из них все же встречаются незначительные отличия. В любом случае, мы рекомендуем вам ознакомиться с файлом INSTALL, расположенным в каталоге требуемой платформы на CD-ROM или FTP (например, i386/INSTALL.i386, macppc/INSTALL.macppc или sparc/INSTALL.sparc).

Программа установки OpenBSD представляет собой специальное ядро с набором утилит и установочных скриптов, включенных в предварительно загружаемый RAM диск. После загрузки этого ядра, операционная система распаковывается из нескольких сжатых tar(1) (.tgz) файлов, расположенных не на RAM диске. Есть несколько различных способов загрузить установочное ядро:

Не все платформы поддерживают все изложенные способы загрузки: Все платформы могут так же использовать bsd.rd для переустановки или обновления.

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

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

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

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

В качестве примера мы рассмотрим установочные образы, доступные для платформ i386 и sparc.

Для платформы i386 существует шесть различных образов установочных дисков:

Для платформы sparc предлагается четыре различных образа установочного диска:

Для современных платформ лучше всего использовать загрузочный образ CDROM, в то время, как загрузочные образы дискет для некоторых "крупных" платформ не содержат многих драйверов и утилит, что может усложнить установку. На более старые платформы, такие как i386 и sparc, по-прежнему можно успешно установить операционную систему с дискеты.

4.3.1 - Создание загрузочного CD

Для создания CD-ROM можно использовать файлы образов cd52.iso или install52.iso. Детали по созданию CD приводятся здесь, выбор же инструментов для этого, оставляем читателям.

В OpenBSD можно создать CD из ISO образа с помощью cdio(1):
  # cdio tao cd52.iso

К большинству пишущих приводов CD, продающихся для Windows и Macintosh систем, прилагается программное обеспечение для записи ISO-образов. Если у вас его нет, существуют различные бесплатные приложения, которые можно использовать для записи.

Другие UNIX-подобные системы используют такие приложения, как: cdrkit.

4.3.2 - Создание дискет в UNIX

Конкретные детали и имена устройств могут отличаться в разных UNIX-системах; используйте то, что подходит для вашей системы.

Для форматирования дискеты и проверки плохих секторов можно воспользоваться коммандой fdformat(1).

  # fdformat /dev/rfd0c
  Format 1440K floppy `/dev/rfd0c'? (y/n): y
  Processing VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV done.

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

Для записи файла образа на диск, используйте dd(1). Пример использования dd(1) приведен ниже:

  # dd if=floppy52.fs of=/dev/rfd0c bs=32k

После того, как образ будет записан, проверьте идентичность записанного образа оригиналу с помощью команды cmp(1). Если, в результате выполнения команды вы просто увидите командную строку, значит дискета идентична образу.

  # cmp /dev/rfd0c floppy52.fs

4.3.3 - Создание дискет в Windows

Чтобы подготовить дискету в Windows, сначала её следует отформатировать. Следует также убедиться, что диск не имеет плохих секторов.

Для записи установочного образа на подготовленную дискету можно использовать программу ntrw.exe, которую можно загрузить из каталога tools на любом из FTP-зеркал.

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

  C:\> ntrw floppy52.fs a:
  3.5", 1.44MB, 512 bytes/sector
  bufsize is 9216
  1474560 bytes written

4.4 - Загрузка c установочного носителя OpenBSD

Загрузка i386/amd64

Загрузка с установочного носителя на платформах i386 и amd64 для большинства пользователей не содержит в себе ничего нового. Ваша система должна быть настроена на загрузку с нужного носителя, обычно, это устанавливается в BIOS. Если вы хотите загрузиться с CD, ваш BIOS должен поддерживать и быть настроен на загрузку с CD. Некоторые устаревшие системы не имеют этой возможности и вам придется использовать дискету для загрузки установочного образа. Не беспокойтесь по этому поводу, даже, если вам придется загружаться с дискеты, вы сможете продолжить установку с CD, если это поддерживается OpenBSD (то есть, это практически все IDE диски).

Так же, можно установить операционную систему, загрузив bsd.rd из существующего раздела OpenBSD, или по сети, используя процесс загрузки PXE.

Загрузка sparc/sparc64

ПРИМЕЧАНИЕ: Загрузиться с дискеты на платформе sparc64 можно только на машинах SBus (Ultra 1, Ultra 2).

Необходимо, чтобы система на мониторе отобразила ROM-строку, которая обычно выглядит, как "ok". Если вы используете клавиатуру Sun, нажмите и удерживайте "STOP", в то же время, нажав "А". При использовании последовательной консоли, нажатие BREAK вернет вас к строке монитора.

Для загрузки с дискеты используйте следующую команду:

  ok boot floppy

Обычно, на системе Sun можно загрузиться с CDROM из командной строки, если ввести 'boot cdrom':

  ok boot cdrom

4.5 - Простая установка

Новый инсталлятор OpenBSD предназначен для установки и автоматической настройки системы практически без вмешательства пользователя. Вы можете просто несколько раз нажать ENTER, чтобы установить OpenBSD. В конце вам придется лишь ввести пароль root.

Программа инсталляции предложит схему разделов на жестком диске, исходя из его размера. Хотя эта схема может и не подойти вам, она послужит хорошей отправной точкой и хорошей общей стратегией для создания того, что вам нужно.

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

Замечания по установке для каждой платформы находятся на установочных CD и FTP-серверах в файле INSTALL.<плат>, где <плат> это ваша платформа, например, i386.

4.5.1 - Начало установки

Какой бы метод вы ни использовали для установки OpenBSD, настало время её произвести. Во время процесса загрузки, ядро и все программы, используемые для установки, загружается в память. После того, как установочное ядро будет загружено, загрузочный носитель больше не нужен - все остальное запускается с RAM диска. Вы можете извлечь CD или дискету, с которой загрузились, если вам не нужен этот CD для установки файлов.

В любой момент процесса установки OpenBSD, вы можете, нажав CTRL-C, завершить текущую попытку установки, а, выполнив install в командной строке оболочки, перезапустить установку без перезагрузки. Вы также можете ввести "!" в большинстве мест в установке, чтобы получить доступ к командной строке, а затем выйти из оболочки и вернуться к программе установки.

При успешой загрузке вы увидите много выводимых на экран текстовых сообщений. На большинстве архитектур это текст белого цвета на синем фоне, являющися ни чем иным, как dmesg выводом ядра с информацией о том, какие устройства были обнаружены. Копия этих текстовых сообщений сохраняется как /var/run/dmesg.boot.

Далее вы увидите следующее:

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

  Welcome to the OpenBSD/i386 5.2 installation program.
  (I)nstall, (U)pgrade or (S)hell? i

И вот, мы приходим к первому вопросу. Вы увидите три варианта для выбора:

Мы предполагаем, что вы выбрали "(I)nstall".

4.5.2 - Вопросы при установке

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

  At any prompt except password prompts you can escape to a shell by
  typing '!'. Default answers are shown in []'s and are selected by
  pressing RETURN.  You can exit this program at any time by pressing
  Control-C, but this can leave your system in an inconsistent state.

  Choose your keyboard layout ('?' or 'L' for list) [default] Enter

Если вы не выберете раскладку клавиатуры (или тип терминала, если установлена последовательная консоль), будет использоваться раскладка US.

  System hostname? (short form, e.g. 'foo') puffy

Это значение, наряду с именем DNS (определяется ниже), будет сохранено в файл /etc/myname, который используется в процессе обычной загрузки для установки имени хоста системы. Если не установить доменное имя, будет использовано значение "my.domain".

  Available network interfaces are: fxp0 vlan0.
  Which one do you wish to configure? (or 'done') [fxp0] Enter  

vlan0 представляет собой виртуальный интерфейс VLAN. Сейчас мы пропустим этот вариант и сконцентрируемся на физических интерфейсах. Если у вас их несколько, они будут здесь перечислены. Обратите внимание, что они идентифицируются по имени драйвера, а не как общие устройства Ethernet. В данном случае, "fxp0" является первым устройством, использующим драйвер fxp(4), fxp1 будет вторым устройством и т.д. Подробнее об именах устройств можно узнать в FAQ 6.

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

  IPv4 address for fxp0? (or 'dhcp' or 'none') [dhcp] Enter
  Issuing hostname-associated DHCP request for fxp0.
  DHCPDISCOVER on fxp0 to 255.255.255.255 port 67 interval 1
  DHCPOFFER from 192.168.1.250 (08:00:20:94:0b:c8)
  DHCPREQUEST on fxp0 to 255.255.255.255 port 67
  DHCPACK from 192.168.1.250 (08:00:20:94:0b:c8)
  bound to 192.168.1.199 -- renewal in 43200 seconds.

DHCP сконфигурирует IP адрес, маску подсети, шлюз и DNS. Если вы не используете DHCP, необходимо будет указать все эти настройки вручную; более детально смотрите обсуждение ниже.

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

  IPv6 address for fxp0? (or 'rtsol' or 'none') [none] Enter
  Available network interfaces are: fxp0 vlan0.
  Which one do you wish to configure? (or 'done') [done] Enter
  Using DNS domainname example.org
  Using DNS nameservers at 192.168.1.252
  Do you want to do any manual network configuration? [no] Enter

Если вы ответите "yes" на последний вопрос, то попадете в консоль, где сможете настроить все, что считаете необходимым. Затем введите "exit" для возврата в программу установки.

  Password for root account? (will not echo) PaSsWoRd
  Password for root account? (again) PaSsWoRd

Для учетной записи root используйте надежный пароль. Помните, что на ваш компьютер можно будет зайти из сети. Для этого надо будет лишь подобрать верный пароль.

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

  Start sshd(8) by default? [yes] Enter

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

  Start ntpd(8) by default? [no] y
  NTP server? (hostname or 'default') [default] Enter

Здесь вам предоставляется возможность разрешить запуск OpenNTPD - реализация NTP в OpenBSD. OpenNTPD является низкозатратным способом поддерживать часы вашего компьютера точно синхронизированными. В конфигурации по умолчанию используется pool.ntp.org, который используют большинство общедоступных серверов времени по всему миру.

Одной из причин, по которой не стоит запускать ntpd(8), является использование мультизагрузки. В этом случае используется другая ОС, которая не использует GMT в аппаратных часах, и вы не хотели бы, чтобы OpenBSD изменяла время другой ОС.

  Do you expect to run the X Window System? [yes] Enter

Не на всех платформах будет задан вопрос о запуске X Window System, а только на тех, которым требуется установка sysctl для использования X. Ответ "yes" повлечет за собой изменение /etc/sysctl.conf, в который будет добавлена строка machdep.allowaperture=1 или machdep.allowaperture=2 (в зависимости от вашей платформы).

Если вы не планируете запускать Х на вашей системе или не уверены, ответьте здесь 'N'. Эти настройки можно будет изменить позже, отредактировав /etc/sysctl.conf. Оставляя драйвер xf86(4) отключенным, вы потенциально улучшаете безопасность системы, так как графический движок для современной видео карты потенциально может быть использован для изменения памяти в обход контроля со стороны процессора. Обратите внимание, что "неграфические" приложения, которые используют для работы библиотеки и утилиты Х, НЕ требуют установки sysctl.

  Do you want the X Window System to be started by xdm(1)? [no] y

xdm(1) запускает X-окружение при загрузке системы. Мы рекомендуем его использовать, если вы уверены, что Х будет работать на вашей системе. В противном случае, настройте X перед использованием xdm(1).

  Setup a user? (enter a lower-case loginname, or 'no') [no] Enter

Тут вы можете создать обычного пользователя (ОТЛИЧНОГО от root). Этот пользователь будет входить в группу "wheel", т.е. сможет использовать su(1) и получать почту, адресованную root.

Если вы хотите создать пользователя, введите имя пользователя, а не "y" или "yes".

4.5.3 - Настройка дисков

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

Правильная разметка диска, пожалуй, самая трудная часть установки OpenBSD.

Настройка дисков в OpenBSD немного отличается между платформами. Для i386, amd64, macppc, zaurus и armish, настройка дисков происходит в два этапа. Сначала, используя fdisk(8), на жестком диске выделяется слайс для OpenBSD, затем этот слайс при помощи disklabel(8) разбивается на разделы OpenBSD.

Некоторых пользователей может несколько смутить данная терминология. Вы заметите, что мы будем использовать термин "раздел" в двух различных смыслах. Да, это так. Для перечисленных выше платформ в OpenBSD есть два уровня партиционирования. Первый можно назвать уровнем ОС, т.е. методом разметки своего пространства для каждой ОС. Второй определяет разбиение раздела OpenBSD на подразделы с отдельными файловыми системами. Результат первого уровня мы сможем увидеть из DOS, Windows и любой другой ОС, понимающей такую схему партиционирования. Второй уровень виден только из OpenBSD и тех ОС, которые понимают и могут напрямую работать с файловой системой OpenBSD. (Стоит отметить, что именно для избежания такой путаницы, когда требуется одновременно обсуждать разделы обоих уровней, разделы первого уровня называются слайсами, и лишь разделы второго уровня собственно разделами - прим. пер.)

Программа установки OpenBSD старается упростить процесс создания разделов на диске, используя установки по умолчанию, которые подходят для "общих" задач. Следует отметить, что несмотря на то, что каждый может создать свою собственную таблицу разделов, новичкам все же стоит начать с использования настроек по умолчанию. Во всяком случа до того, пока они не будут четко представлять почему это им не подходит. Отметим так же, что структура разметки по умолчанию будет меняться в зависимости от размера вашего диска.

Предположим, на данный момент, у нас есть диск размером 40 Гб.

  Available disks are: wd0.
  Which one is the root disk? (or 'done') [wd0] Enter
  Use DUIDs rather than device names in fstab? [yes] Enter
  Disk: wd0       geometry: 5221/255/63 [40960 Megabytes]
  Offset: 0       Signature: 0xAA55
              Starting         Ending         LBA Info:
   #: id      C   H   S -      C   H   S [       start:        size ]
  -------------------------------------------------------------------------------
   0: 06      0   1   1 -    521 254  63 [          63:     8385867 ] DOS > 32MB
   1: 00      0   0   0 -      0   0   0 [           0:           0 ] unused
   2: 00      0   0   0 -      0   0   0 [           0:           0 ] unused
   3: 00      0   0   0 -      0   0   0 [           0:           0 ] unused
  Use (W)hole disk or (E)dit the MBR? [whole] Enter
  Setting OpenBSD MBR partition to whole wd0...done.

Обратите внимание, что на этом диске уже есть раздел и, при выборе "using whole disk" (использовать весь диск), он будет удален!

Использование всего диска повлечет за собой:

Не стоит использовать весь диск, если: Обратите внимание, что новый (или никогда не использовавшийся для загрузки) диск имел правильный MBR, правильную подпись OpenBSD раздела и установленный флаг "active". Если вы не используете для установки весь диск ("use whole disk"), то не забудьте проверить эти настройки.

Дополнительную информацию об использовании fdisk для работы с разделами можно найти ниже.

Итак, приступим, используя disklabel(8), к созданию разделов внутри слайса, созданного до этого при помощи fdisk:

  Setting OpenBSD MBR partition to whole wd0...done.
  The auto-allocated layout for wd0 is:
  #                size           offset  fstype [fsize bsize  cpg]
    a:          1024.0M               64  4.2BSD   2048 16384    1 # /
    b:           199.0M          2097216    swap                   
    c:         40960.0M                0  unused                   
    d:          2822.9M          2504768  4.2BSD   2048 16384    1 # /tmp
    e:          4295.0M          8286112  4.2BSD   2048 16384    1 # /var
    f:          2048.0M         17082240  4.2BSD   2048 16384    1 # /usr
    g:          1024.0M         21276544  4.2BSD   2048 16384    1 # /usr/X11R6
    h:          5426.7M         23373696  4.2BSD   2048 16384    1 # /usr/local
    i:          1699.7M         34487520  4.2BSD   2048 16384    1 # /usr/src
    j:          2048.0M         37968576  4.2BSD   2048 16384    1 # /usr/obj
    k:         20367.4M         42162880  4.2BSD   2048 16384    1 # /home
  Use (A)uto layout, (E)dit auto layout, or create (C)ustom layout? [a] Enter

Программа установки предлагает использовать для раздела OpenBSD настройки по умолчанию ("Auto layout"), с чем мы соглашаемся.

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

ЗАМЕЧАНИЯ для переустановки: Новый инсталлятор при выборе "(C)ustom Layout" не будет очищать имеющуюся разметку раздела, но вам нужно будет повторно указать точки монтирования, используя в disklabel(8) опцию 'm'.

Сейчас программа установки создаст эти разделы и, с помощью newfs(8), файловые системы на них, а также, примонтирует разделы для установки:

  /dev/rwd0a: 1024.0MB in 2097152 sectors of 512 bytes
  6 cylinder groups of 202.47MB, 12958 blocks, 25984 inodes each
  /dev/rwd0k: 20367.4MB in 41712448 sectors of 512 bytes
  101 cylinder groups of 202.47MB, 12958 blocks, 25984 inodes each
  /dev/rwd0d: 2822.9MB in 5781344 sectors of 512 bytes
  14 cylinder groups of 202.47MB, 12958 blocks, 25984 inodes each
  /dev/rwd0f: 2048.0MB in 4194304 sectors of 512 bytes
  11 cylinder groups of 202.47MB, 12958 blocks, 25984 inodes each
  /dev/rwd0g: 1024.0MB in 2097152 sectors of 512 bytes
  6 cylinder groups of 202.47MB, 12958 blocks, 25984 inodes each
  /dev/rwd0h: 5426.7MB in 11113824 sectors of 512 bytes
  27 cylinder groups of 202.47MB, 12958 blocks, 25984 inodes each
  /dev/rwd0j: 2048.0MB in 4194304 sectors of 512 bytes
  11 cylinder groups of 202.47MB, 12958 blocks, 25984 inodes each
  /dev/rwd0i: 1699.7MB in 3481056 sectors of 512 bytes
  9 cylinder groups of 202.47MB, 12958 blocks, 25984 inodes each
  /dev/rwd0e: 4295.0MB in 8796128 sectors of 512 bytes
  22 cylinder groups of 202.47MB, 12958 blocks, 25984 inodes each
  /dev/wd0a on /mnt type ffs (rw, asynchronous, local)
  /dev/wd0k on /mnt/home type ffs (rw, asynchronous, local, nodev, nosuid)
  /dev/wd0d on /mnt/tmp type ffs (rw, asynchronous, local, nodev, nosuid)
  /dev/wd0f on /mnt/usr type ffs (rw, asynchronous, local, nodev)
  /dev/wd0g on /mnt/usr/X11R6 type ffs (rw, asynchronous, local, nodev)
  /dev/wd0h on /mnt/usr/local type ffs (rw, asynchronous, local, nodev)
  /dev/wd0j on /mnt/usr/obj type ffs (rw, asynchronous, local, nodev, nosuid)
  /dev/wd0i on /mnt/usr/src type ffs (rw, asynchronous, local, nodev, nosuid)
  /dev/wd0e on /mnt/var type ffs (rw, asynchronous, local, nodev, nosuid)

Обратили внимание, что раздел "c" нами не использован? Этот раздел - весь наш диск; не пытайтесь его использовать.

4.5.4 - Выбор установочного носителя и набора файлов

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

  Location of sets? (cd disk ftp http or 'done') [cd] ftp
  HTTP/FTP proxy URL? (e.g. 'http://proxy:8080', or 'none') [none] Enter
  Server? (hostname, list#, 'done' or '?') [mirror.example.org] obsd.cec.mtu.edu

Если вы не можете вспомнить имя зеркала (предпочитаемое вами или любое другое), программа установки будет использовать зеркало по умолчанию. В противном случае, нажмите "?" для получения списка зеркал и выберите номер зеркала, которое хотите использовать.

  Server directory? [pub/OpenBSD/5.2/i386] Enter
  Login? [anonymous] Enter

Все общедоступные FTP-зеркала поддерживают анонимный доступ, но у вас может быть и локальная машина, которая требует авторизации (т.е. использование логина и пароля).

Теперь вы можете настроить список набора файлов.

  Select sets by entering a set name, a file name pattern or 'all'. De-select
  sets by prepending a '-' to the set name, file name pattern or 'all'. Selected
  sets are labelled '[X]'.
      [X] bsd           [X] etc52.tgz     [X] xbase52.tgz   [X] xserv52.tgz
      [X] bsd.rd        [X] comp52.tgz    [X] xetc52.tgz
      [ ] bsd.mp        [X] man52.tgz     [X] xshare52.tgz
      [X] base52.tgz    [X] game52.tgz    [X] xfont52.tgz
  Set name(s)? (or 'abort' or 'done') [done] Enter

Как минимум, вам необходимо ядро (bsd), наборы файлов base52.tgz и etc52.tgz. Если вы не знаете, что делать, используйте наборы файлов, предложенные по умолчанию. Вы можете добавлять и удалять наборы файлов, используя символы "+" и "-" перед именем набора, можно также использовать шаблоны:

Опять же, мы оставляем все по умолчанию. Наша машина имеет один процессор, поэтому bsd.mp не предлагается устанавливать, но все остальное в списке есть. Если в дальнейшем в систему будет добавлен процессор, вы сможете без проблем доустановить bsd.mp.

И вот настал этап, к которому готовил нас установщик OpenBSD! Самое время установить выбранные выше компоненты в соответствии с произведенными настройками.

  bsd          100% |*************************************|  8810 KB    00:05
  bsd.rd       100% |*************************************|  6271 KB    00:03
  base52.tgz   100% |*************************************| 55415 KB    00:26
  etc52.tgz    100% |*************************************|   519 KB    00:00
  comp52.tgz   100% |*************************************| 60165 KB    00:28
  man52.tgz    100% |*************************************|  9497 KB    00:06
  game52.tgz   100% |*************************************|  2567 KB    00:02
  xbase52.tgz  100% |*************************************| 11028 KB    00:06
  xetc52.tgz   100% |*************************************| 63902       00:00
  xshare52.tgz 100% |*************************************|  4511 KB    00:04
  xfont52.tgz  100% |*************************************| 38869 KB    00:17
  xserv52.tgz  100% |*************************************| 25113 KB    00:15
  Location of sets? (cd disk ftp http or 'done') [done] Enter

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

Мы используем наборы по умолчанию и завершаем установку.

  What timezone are you in? ('?' for list) [Canada/Mountain] US/Michigan US/Michigan

OpenBSD предполагает, что часы реального времени вашего компьютера (RTC) установлены в GMT, но вы также должны указать в каком часовом поясе вы находитесь. Там может быть несколько вариантов, отвечающих вашему физическому расположению. Используйте "?" для просмотра списка всех часовых поясов.

Обратите внимание, что программа установки часто правильно определяет ваш часовой пояс, и вам останется только нажать "Enter".

Если вы ранее активировали OpenNTPD, то, вероятно, увидите нечто подобное:

  Time appears wrong.  Set to 'Thu Nov  1 19:50:15 EDT 2012'? [yes] Enter

Это позволить установить точное время на вашем компьютере.

Дополнительно о настройках часового пояса здесь.

  Saving configuration files...done.
  Generating initial host.random file...done.
  Making all device nodes...done.

  CONGRATULATIONS! Your OpenBSD install has been successfully completed!
  To boot the new system, enter 'reboot' at the command prompt.
  When you login to your new system the first time, please read your mail
  using the 'mail' command.

  #

4.5.5 - Первая загрузка!

Сейчас OpenBSD установлена на вашу систему и готова для своей первой загрузки, но перед тем, как это сделать ...

Перед перезагрузкой

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

После перезагрузки

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

После перезагрузки стоит сразу ознакомиться с afterboot(8).

Также могут показаться полезными следующие ссылки:

4.5.6 - Одна последняя вещь ...

Разработчики OpenBSD будут очень вам признательны, если вы отправите им вывод dmesg. Это действительно очень необходимо разработчикам, да и, в конечном счете, всем пользователям.

4.6 - Подробнее о более сложной установке

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

4.6.1 - Настройка сети

Если вы не используете DHCP, вам придется настраивать сеть вручную. Пример:

  Which one do you wish to configure? (or 'done') [xl0] Enter
  IPv4 address for xl0? (or 'dhcp' or 'none') [dhcp] 192.168.1.37
  Netmask? [255.255.255.0] 255.255.254.0
  IPv6 address for xl0? (or 'rtsol' or 'none') [none] Enter

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

  Available network interfaces are: xl0 vlan0.
  Which one do you wish to configure? (or 'done') [done]

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

  Default IPv4 route? (IPv4 address, 'dhcp' or 'none') 192.168.1.1
  add net default: gateway 192.168.1.1
  DNS domain name? (e.g. 'bar.com') [my.domain] example.org
  DNS nameservers? (IP address list or 'none') [none] 192.168.1.250 192.168.1.251

Обратите внимание, что можно перечислить несколько DNS, разделяя их адреса пробелами.

Иногда вам может понадобиться сделать нечто большее, чем, например, просто настроить доступ к беспроводной сети или установить дуплексный режим или скорость передачи данных (не делайте этого, если в этом нет абсолютной НЕОБХОДИМОСТИ, исправление конфигурации свича будет лучшей идеей!). Сейчас предоставляется возможность с помощью интерпретатора shell вручную настроить все, что вам необходимо.

  Do you want to do any manual network configuration? [no] y
  Type 'exit' to return to install.
  # ifconfig xl0 media
  xl0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
          lladdr 00:08:74:2c:df:9c
          groups: egress
          media: Ethernet autoselect (100baseTX full-duplex)
          status: active
          supported media:
                  media 10baseT
                  media 10baseT mediaopt full-duplex
                  media 100baseTX
                  media 100baseTX mediaopt full-duplex
                  media autoselect
          inet 192.168.1.37 netmask 0xfffffe00 broadcast 192.168.1.255
  # ifconfig xl0 media 100baseTX mediaopt full-duplex
  # ifconfig xl0
  xl0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
          lladdr 00:08:74:2c:df:9c
          groups: egress
          media: Ethernet 100baseTX full-duplex
          status: active
          inet6 fe80::208:74ff:fe2c:df9c%xl0 prefixlen 64 scopeid 0x1
          inet 192.168.1.37 netmask 0xfffffe00 broadcast 192.168.1.255
  # exit
...setup resumes...

(туда, где мы, возможно, были)

4.6.2 - Настройка часового пояса

Время в UNIX - не простая вещь (или, другими словами, время в UNIX очень простая вещь, но человеческое время представляет собой политически-управляемый беспорядок). Файлы часового пояса помогают системе преобразовывать UNIX время (количесво секунд после полуночи 01 января 1970 года в GMT) в человеческое время, принимая во внимание часовые пояса, переход на летнее время (DST), изменение правил (DST) и т.п. Они также включат в себя историю изменений.

Множественные файлы описания часового пояса иногда дают одинаковое текущее время, однако, могут иметь различную историю. Например, EST5EDT и US/Michigan сейчас используют одинаковое время, но в 1975 году правила были разными. Таким образом, если выполняются какие-либо действия с датами и временем, вы должны будете позаботиться об этих различиях. Вы должны использовать наиболее конкретный и точный файл часового пояса, доступный для вашего региона, а не тот, который дает только точное время в данный момент.

Если вы сомневаетесь, программа установки OpenBSD поможет вам найти подходящий файл часового пояса. Просто введите "?" в каждой строке и программа установки покажет вам возможные варианты. Если первый уровень ответов не подходит, выберите страну и посмотрите варианты:

  What timezone are you in? ('?' for list) [right/EST5EDT] ?
  Africa/      Chile/       GB-Eire      Israel       NZ-CHAT      UCT
  America/     Cuba         GMT          Jamaica      Navajo       US/
  Antarctica/  EET          GMT+0        Japan        PRC          UTC
  Arctic/      EST          GMT-0        Kwajalein    PST8PDT      Universal
  Asia/        EST5EDT      GMT0         Libya        Pacific/     W-SU
  Atlantic/    Egypt        Greenwich    MET          Poland       WET
  Australia/   Eire         HST          MST          Portugal     Zulu
  Brazil/      Etc/         Hongkong     MST7MDT      ROC          posix/
  CET          Europe/      Iceland      Mexico/      ROK          posixrules
  CST6CDT      Factory      Indian/      Mideast/     Singapore    right/
  Canada/      GB           Iran         NZ           Turkey
  What timezone are you in? ('?' for list) [right/EST5EDT] US
  What sub-timezone of 'US' are you in? ('?' for list) ?
  Alaska          Central         Hawaii          Mountain        Samoa
  Aleutian        East-Indiana    Indiana-Starke  Pacific
  Arizona         Eastern         Michigan        Pacific-New
  What sub-timezone of 'US' are you in? ('?' for list) Michigan

Мы сейчас установили время "US/Michigan". Это создаст символическую ссылку в /etc, указывающую на соответствующий файл временной зоны в /usr/share/zoneinfo, примерно так:

  /etc/localtime -> /usr/share/zoneinfo/US/Michigan
Обратите внимание на каталог "right/". Он включает в себя вторую часть настроек, но иначе дублирует стандартный выбор временной зоны. Подробнее здесь.

(туда, где мы, возможно, были)

4.6.3 - Пользовательская разметка c fdisk(8)

Примечание: несмотря на то, что установщик OpenBSD использует fdisk на многих платформах, пользователям только i386 и amd64 архитектур, возможно, придется столкнуться к причудами его работы. По этой причине этот раздел ориентирован на i386 and amd64.

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

Если на вашем жестком диске есть раздел, который вы хотите оставить, НЕ выбирайте "(W)hole disk". Да, в этом случае вам придется редактировать таблицу разделов при помощи fdisk(8). Дополнительную информацию об использовании fdisk(8) можно найти здесь. Перед началом работы с системой, содержащей данные, которые вы не хотите потерять, убедитесь, что имеете резервную копию. В процессе создании таблицы разделов очень легко уничтожить важные данные, поэтому убедитесь, что (при необходимости) вы готовы к их восстановлению.

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

В данном примере мы будем считать, что начинаем с пустого 40 Гб диска и хотим создать мультизагрузочную систему, оставив 5 Гб вначале диска для Windows, а остальное отдаем OpenBSD. Обратите внимание, что пустой диск должен иметь правильный загрузочный сектор MBR и подпись, которые, в свою очередь, должны быть записанны на диск прежде, чем с него что-то будет загружено.

Этот процесс точно такой же, как для работы с существующим разделом. Необходимо только пропустить этап создания раздела для Windows и заняться установкой загрузочного сектора MBR.

  Available disks are: wd0.
  Which one is the root disk? (or 'done') [wd0] Enter
  MBR has invalid signature; not showing it.

Если на диске обнаружена верная MBR, то будет показана существующая таблица разделов.


  Use (W)hole disk or (E)dit the MBR? [whole] e

  You will now create a single MBR partition to contain your OpenBSD data. This
  partition must have an id of 'A6'; must *NOT* overlap other partitions; and
  must be marked as the only active partition.  Inside the fdisk command, the
  'manual' command describes all the fdisk commands in detail.

  Disk: wd0       geometry: 4998/255/63 [80293248 Sectors]
  Offset: 0       Signature: 0x0
              Starting         Ending         LBA Info:
   #: id      C   H   S -      C   H   S [       start:        size ]
  -------------------------------------------------------------------------------
   0: 00      0   0   0 -      0   0   0 [           0:           0 ] unused
   1: 00      0   0   0 -      0   0   0 [           0:           0 ] unused
   2: 00      0   0   0 -      0   0   0 [           0:           0 ] unused
   3: 00      0   0   0 -      0   0   0 [           0:           0 ] unused
Enter 'help' for information
fdisk: 1>

Прежде всего, обратите внимание на командную строку fdisk. Цифра "1" указывает на первый уровень таблицы разделов, если бы вы редактировали расширенный раздел, это была бы цифра 2 (или больше). Расширенные разделы представляют собой разделы, включающие в себя свои подразделы, что позволило обойти ограничение в четыре раздела IBM AT. Здесь расширенные разделы рассматриваться не будут.

Сначала мы должны создать раздел "0" - раздел Windows 5 Гб (используя NTFS) и раздел "1" на оставшемся месте диска для OpenBSD.

  fdisk: 1> e 0
              Starting         Ending         LBA Info:
   #: id      C   H   S -      C   H   S [       start:        size ]
  -------------------------------------------------------------------------------
   0: 00      0   0   0 -      0   0   0 [           0:           0 ] unused
  Partition id ('0' to disable)  [0 - FF]: [0] (? for help)

Так как мы не знаем какой ID раздела соответствует NTFS, можно ввести "?" для просмотра списка поддерживаемых ФС.

  Partition id ('0' to disable)  [0 - FF]: [0] (? for help) ?
  Choose from the following Partition id values:
  00 unused         20 Willowsoft     66 NetWare 386    A9 NetBSD
  01 DOS FAT-12     24 NEC DOS        67 Novell         AB MacOS X boot
  02 XENIX /        27 Win Recovery   68 Novell         AF MacOS X HFS+
  03 XENIX /usr     38 Theos          69 Novell         B7 BSDI filesy*
  04 DOS FAT-16     39 Plan 9         70 DiskSecure     B8 BSDI swap
  05 Extended DOS   40 VENIX 286      75 PCIX           BF Solaris
  06 DOS > 32MB     41 Lin/Minux DR   80 Minix (old)    C0 CTOS
  07 NTFS           42 LinuxSwap DR   81 Minix (new)    C1 DRDOSs FAT12
  08 AIX fs         43 Linux DR       82 Linux swap     C4 DRDOSs < 32M
  09 AIX/Coherent   4D QNX 4.2 Pri    83 Linux files*   C6 DRDOSs >=32M
  0A OS/2 Bootmgr   4E QNX 4.2 Sec    84 OS/2 hidden    C7 HPFS Disbled
  0B Win95 FAT-32   4F QNX 4.2 Ter    85 Linux ext.     DB CPM/C.DOS/C*
  0C Win95 FAT32L   50 DM             86 NT FAT VS      DE Dell Maint
  0E DOS FAT-16     51 DM             87 NTFS VS        E1 SpeedStor
  0F Extended LBA   52 CP/M or SysV   8E Linux LVM      E3 SpeedStor
  10 OPUS           53 DM             93 Amoeba FS      E4 SpeedStor
  11 OS/2 hidden    54 Ontrack        94 Amoeba BBT     EB BeOS/i386
  12 Compaq Diag.   55 EZ-Drive       99 Mylex          EE EFI GPT
  14 OS/2 hidden    56 Golden Bow     9F BSDI           EF EFI Sys
  16 OS/2 hidden    5C Priam          A0 NotebookSave   F1 SpeedStor
  17 OS/2 hidden    61 SpeedStor      A5 FreeBSD        F2 DOS 3.3+ Sec
  18 AST swap       63 ISC, HURD, *   A6 OpenBSD        F4 SpeedStor
  19 Willowtech     64 NetWare 2.xx   A7 NEXTSTEP       FF Xenix BBT
  1C ThinkPad Rec   65 NetWare 3.xx   A8 MacOS X
  Partition id ('0' to disable)  [0 - FF]: [0] (? for help) 07

Сейчас мы определим значения начала и завершения раздела:

  Do you wish to edit in CHS mode? [n]

Режим CHS позволяет указывать дисковое пространство в формате: цилиндр - головка - сектор (CHS). Имейте в виду, что для современных жестких дисков CHS номера полностью фиктивны; всего три номера, которые транслируются в секторы на диске, будут переведены в физическую геометрию ваших дисков (которая, вероятно, изменяется по диску в любом случае).

Если вы ответили здесь "y", вам будет предложено указать начало и конец цилиндра, головки и сектора. Если вы ответите "no", вам будет предложено указать начало сектора и размер. Редактирование CHS часто бывает проще при работе вблизи существующих разделов, т.к. указать начальный сектор и размер проще, если вы хотите быстро создать раздел заданного размера.

  offset: [0] 64

Стоит сказать, что fdisk оставляет немного места перед первым разделом. На современных машинах точный размер не имеет значения, OpenBSD использует по умолчанию 64 сектора. Этот отступ создается по соображениям производительности.

  size: [0] 5g
  Rounding to nearest cylinder: 10490382

Значением "Size" может быть количество секторов (по 512 байт каждый) или желаемый объем со следующими обозначениями "k", "m" или "g". При редактировании с использованием смещения и размера, fdisk будет округлять разделы так, что бы они заканчивались на границе цилиндра.

Теперь, давайте посмотрим на наш новый раздел:

  fdisk:*1> p
  Disk: wd0       geometry: 4998/255/63 [80293248 Sectors]
  Offset: 0       Signature: 0x0
              Starting         Ending         LBA Info:
   #: id      C   H   S -      C   H   S [       start:        size ]
  -------------------------------------------------------------------------------
   0: 07      0   1   1 -    652 254  63 [          63:    10490382 ] NTFS
   1: 00      0   0   0 -      0   0   0 [           0:           0 ] unused
   2: 00      0   0   0 -      0   0   0 [           0:           0 ] unused
   3: 00      0   0   0 -      0   0   0 [           0:           0 ] unused
  fdisk:*1>

Обратите внимание, что командная строка теперь включает в себя "*". Это означает, что есть несохраненные изменения.

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

Сейчас мы создадим раздел OpenBSD. В этом случае, идентификатор раздела будет "A6".

  fdisk:*1> e 1
              Starting         Ending         LBA Info:
   #: id      C   H   S -      C   H   S [       start:        size ]
  -------------------------------------------------------------------------------
   1: 00      0   0   0 -      0   0   0 [           0:           0 ] unused
  Partition id ('0' to disable)  [0 - FF]: [0] (? for help) a6
  Do you wish to edit in CHS mode? [n] Enter
  offset: [0]

Оп-па... Что с нашим смещением? Все просто - смещение предыдущего раздела плюс размер раздела, в данном случае, 63 +10490382 = 10490445.

  offset: [0] 10490445
  size: [0] *
  fdisk:*1>

Обратите внимание, что здесь мы ввели "*", как размер, что означает "остальная часть диска". Опять же, мы могли бы ввести размер в секторах, "m" или "g", если мы захотели оставить свободное место для чего-то ещё.

Теперь мы посмотрим на нашу таблицу разделов:

  fdisk:*1> p
  Disk: wd0       geometry: 4998/255/63 [80293248 Sectors]
  Offset: 0       Signature: 0x0
              Starting         Ending         LBA Info:
   #: id      C   H   S -      C   H   S [       start:        size ]
  -------------------------------------------------------------------------------
   0: 07      0   1   1 -    652 254  63 [          63:    10490382 ] NTFS
   1: A6    653   0   1 -   4998   5  63 [    10490445:    69802803 ] OpenBSD
   2: 00      0   0   0 -      0   0   0 [           0:           0 ] unused
   3: 00      0   0   0 -      0   0   0 [           0:           0 ] unused
  fdisk:*1>

МЫ ЕЩЕ НЕ ЗАКОНЧИЛИ!
Этот диск все еще не загрузочный! Поскольку это был новый диск, MBR диска была совершенно пустой. Сообщение: "Signature: 0x0" показывает, что отсутствует действительная подпись (0xAA55), а это значит, что отсутствует действительный код загрузки. Конечно, у вас могла бы быть действительная подпись без корректного загрузочного кода при случайном невезении или повреждении существующего загрузочного кода, но наличие недействительной подписи указывает на то, что отсутствует загрузочный код, и, таким образом, мы сейчас его установим при помощи команды "update":

  fdisk:*1> update
  Machine code updated.
  fdisk:*1>

Мы также должны установить "flag" раздела как "active", для того, чтобы загрузочная ROM знала из какого раздела грузиться:

  fdisk:*1> f 1
  Partition 1 marked active.

Теперь давайте посмотрим, что у нас в итоге получилось:

  fdisk:*1> p
  Disk: wd0       geometry: 4998/255/63 [80293248 Sectors]
  Offset: 0       Signature: 0xAA55
              Starting         Ending         LBA Info:
   #: id      C   H   S -      C   H   S [       start:        size ]
  -------------------------------------------------------------------------------
   0: 07      0   1   1 -    652 254  63 [          63:    10490382 ] NTFS
  *1: A6    653   0   1 -   4998   5  63 [    10490445:    69802803 ] OpenBSD
   2: 00      0   0   0 -      0   0   0 [           0:           0 ] unused
   3: 00      0   0   0 -      0   0   0 [           0:           0 ] unused
  fdisk:*1>

Вот контрольный список того, что вы должны проверить перед выходом из fdisk(8):

(туда, где мы, возможно, были)

4.6.4 - Пользовательская разметка c disklabel

Для разметки OpenBSD раздела, созданного с помощью fdisk(8), мы будем использовать disklabel(8). Метки (labels) OpenBSD представляют собой разделы файловой системы, каждому из которых присваивается одна из шестнадцати букв, начиная с "а" и заканчивая "р". Раздел "а" на загрузочном диске является корневым разделом, "b" по умолчанию является разделом подкачки. "c" на всех дисках представляет собой раздел "всего диска", он используется программами, такими как fdisk(8) и disklabel(8), которые должны иметь прямой доступ к физическому диску. Раздел "c" создается автоматически и не должен удаляться или изменяться. Остальные буквы доступны для создания необходимых точек монтирования. Вы можете пропускать буквы, или использовать их в любом порядке. Вы также можете оставить место на диске для других разделов, а также отформатировать их позже, или, при помощи growfs(8), увеличить существующие разделы за счет свободного места.

Все разделы, которые включают FFS, должны находиться в пределах OpenBSD fdisk(8) раздела, однако, не-OpenBSD разделы могут (и обычно должны) быть вне этого раздела.

Более подробную информацию об использовании disklabel можно найти здесь.

Более подробную информацию о создании разделов, а также несколько советов касательно их размеров можно найти ниже.

Программа установки OpenBSD разметит диск автоматически в удобной конфигурации "общего назначения", основанной на размере вашего диска. Если ваш диск достаточно большой, неиспользуемое пространство будет выделено под раздел /home. Иногда это помогает и бывает весьма полезно, однако это не может удовлетворить потребности всех пользователей.

Предположим, что мы создаем web-сервер для использования нашими друзьями. У нас есть подключенная к Интернету машина, с 40Гб диском, при этом мы будем использовать, в основном, OpenBSD (с тем же 5Гб разделом Windows, как в примере выше). Почему? Возможно, эта система имеет RAID-контроллер, поддерживаемый OpenBSD, но управляемый только из Windows. Однако, скорее всего, потому, что редактор FAQ не испытывает симпатии к поддержке многих различных систем.

Страницы web-сервера в OpenBSD будут находиться в /var/www, и, совсем немного, в /home. Это указывает на необходимость сделать определенные изменения в схеме по умолчанию. В целях обсуждения, мы также считаем, что нам не понадобится пересобирать операционную систему из исходников на этой машине (мы сделаем это в другом месте). Мы не будем запускать X, однако, учитывая, что некоторые web-приложения требуют установленный X, мы его установим. Наша машина не слишком мощная и не может иметь более 1Гб оперативной памяти, но вряд ли нашему приложению понадобится больше.

Таким образом, после некоторого размышления, наш план разметки диска состоит в следующем:

  The auto-allocated layout for wd0 is:
  #                size           offset  fstype [fsize bsize  cpg]
    a:          1024.0M         10490445  4.2BSD   2048 16384    1 # /
    b:           252.1M         12587597    swap
    c:         39205.7M                0  unused
    d:          2319.3M         13103933  4.2BSD   2048 16384    1 # /tmp
    e:          3653.9M         17853877  4.2BSD   2048 16384    1 # /var
    f:          1149.8M         25337016  4.2BSD   2048 16384    1 # /usr
    g:          1024.0M         27691862  4.2BSD   2048 16384    1 # /usr/X11R6
    h:          3422.6M         29789014  4.2BSD   2048 16384    1 # /usr/local
    i:          5122.3M               63    NTFS
    j:          1848.7M         36798433  4.2BSD   2048 16384    1 # /usr/src
    k:          1848.7M         40584654  4.2BSD   2048 16384    1 # /usr/obj
    l:         17540.2M         44370875  4.2BSD   2048 16384    1 # /home
  Use (A)uto layout, (E)dit auto layout, or create (C)ustom layout? [a] c

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

  You will now create an OpenBSD disklabel inside the OpenBSD MBR
  partition. The disklabel defines how OpenBSD splits up the MBR partition
  into OpenBSD partitions in which filesystems and swap space are created.
  You must provide each filesystem's mountpoint in this program.

  The offsets used in the disklabel are ABSOLUTE, i.e. relative to the
  start of the disk, NOT the start of the OpenBSD MBR partition.

  Label editor (enter '?' for help at any prompt)
  > p
  OpenBSD area: 10490445-80293248; size: 69802803; free: 69802803
  #                size           offset  fstype [fsize bsize  cpg]
    c:         80293248                0  unused
    i:         10490382               63    NTFS
  >

Обратите внимание, что уже есть два существующих раздела, -- раздел "с", который всегда существует и создан автоматически, но disklabel(8) также сообщает, о существующем разделе NTFS и назначенной ему метке раздела, таким образом, этот раздел потенциально может быть доступен из OpenBSD (обратите внимание, в настоящее время поддержка NTFS является экспериментальной и требует собственного ядра, но поддержка FAT/FAT32 реализована довольно хорошо).

Теперь мы создадим наши разделы. Мы начнем с нашего корневого раздела "a":

  > a a
  offset: [10490445] Enter
  size: [69802803] 100m
  Rounding to cylinder: 208845
  FS type: [4.2BSD]  Enter
  mount point: [none] /
  >

Обратите внимание, что по умолчанию disklabel использует первый доступный сектор OpenBSD на диске, это, как раз то, что мы хотим. Кроме того, по умолчанию в размер раздела включается все доступное пространство, что нас НЕ устраивает. Здесь мы использовали необходимый нам размер, который может быть указан в секторах, "M" или "G".

Вы, скорее всего, захотите использовать файловую систему по умолчанию "4.2BSD" для раздела FFS (Fast File System) или FFS2, хотя могут быть использованы другие полезные типы, включая "swap" и "RAID".

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

Теперь мы создаем swap, который является нашим разделом «b» (опять же, установлено, что раздел "b" на загрузочном диске - это swap):

  > a b
  offset: [10699290] Enter
  size: [69593958] 1g
  Rounding to cylinder: 2104515
  FS type: [swap] Enter
  >

Итак, disklabel правильно рассчитал наш начальный сектор, и предложил нам использовать размер "всего оставшегося пространства", которое мы снова установили сами. Поскольку это раздел «b», disklabel предположил, что он должен использоваться для подкачки, и, когда мы это подтвердили, вопрос о точке монтирования не задавался.

Теперь мы готовы создать остальные разделы.

  > a d
  offset: [12803805] Enter
  size: [67489443] 2g
  Rounding to cylinder: 4209030
  FS type: [4.2BSD] Enter
  mount point: [none] /usr
  > a e
  offset: [17012835] Enter
  size: [63280413] 100m
  Rounding to cylinder: 208845
  FS type: [4.2BSD] Enter
  mount point: [none] /tmp
  > a f
  offset: [17221680] Enter
  size: [63071568] 2g
  Rounding to cylinder: 4209030
  FS type: [4.2BSD] Enter
  mount point: [none] /usr/local
  > a g
  offset: [21430710] Enter
  size: [58862538] 1g
  Rounding to cylinder: 2104515
  FS type: [4.2BSD] Enter
  mount point: [none] /usr/X11R6
  > a h
  offset: [23535225] Enter
  size: [56758023] 1g
  Rounding to cylinder: 2104515
  FS type: [4.2BSD] Enter
  mount point: [none] /home
  > a j
  offset: [25639740] Enter
  size: [54653508] 1g
  Rounding to cylinder: 2104515
  FS type: [4.2BSD] Enter
  mount point: [none] /var
  > a k
  offset: [27744255] Enter
  size: [52548993] Enter
  FS type: [4.2BSD] Enter
  mount point: [none] /var/www
  >

Отметим, что на разделе /var/www ("k"), мы просто взяли значение по умолчанию, чтобы использовать все оставшееся свободное место на диске. С современными чудовищно огромными дисками, обычно это плохая идея. При наличии опыта, вы никогда не будете использовать его целиком, не выделяйте его и сохраните его для использования в будущем.

Теперь, давайте посмотрим на наши результаты, используя команды "р" и "p m":

  > p
  OpenBSD area: 10490445-80293248; size: 69802803; free: 0
  #                size           offset  fstype [fsize bsize  cpg]
    a:           208845         10490445  4.2BSD   2048 16384    1 # /
    b:          2104515         10699290    swap
    c:         80293248                0  unused
    d:          4209030         12803805  4.2BSD   2048 16384    1 # /usr
    e:           208845         17012835  4.2BSD   2048 16384    1 # /tmp
    f:          4209030         17221680  4.2BSD   2048 16384    1 # /usr/local
    g:          2104515         21430710  4.2BSD   2048 16384    1 # /usr/X11R6
    h:          2104515         23535225  4.2BSD   2048 16384    1 # /home
    i:         10490382               63    NTFS
    j:          2104515         25639740  4.2BSD   2048 16384    1 # /var
    k:         52548993         27744255  4.2BSD   2048 16384    1 # /var/www
  > p m
  OpenBSD area: 10490445-80293248; size: 34083.4M; free: 0.0M
    #                size           offset  fstype [fsize bsize  cpg]
    a:           102.0M         10490445  4.2BSD   2048 16384    1 # /
    b:          1027.6M         10699290    swap
    c:         39205.7M                0  unused
    d:          2055.2M         12803805  4.2BSD   2048 16384    1 # /usr
    e:           102.0M         17012835  4.2BSD   2048 16384    1 # /tmp
    f:          2055.2M         17221680  4.2BSD   2048 16384    1 # /usr/local
    g:          1027.6M         21430710  4.2BSD   2048 16384    1 # /usr/X11R6
    h:          1027.6M         23535225  4.2BSD   2048 16384    1 # /home
    i:          5122.3M               63    NTFS
    j:          1027.6M         25639740  4.2BSD   2048 16384    1 # /var
    k:         25658.7M         27744255  4.2BSD   2048 16384    1 # /var/www
  >

Как и с fdisk, ваши подразделы раздела OpenBSD не должны перекрываться (кроме раздела 'c', который перекрывает все разделы).

Запишите ваши изменения и выйдите из disklabel:

  > w
  > q
  No label changes.
  newfs: reduced number of fragments per cylinder group from 13048 to 12992 to
  enlarge last cylinder group
  /dev/rwd0a: 102.0MB in 208844 sectors of 512 bytes
  5 cylinder groups of 25.38MB, 1624 blocks, 3328 inodes each
  /dev/rwd0h: 1027.6MB in 2104512 sectors of 512 bytes
  6 cylinder groups of 202.47MB, 12958 blocks, 25984 inodes each
  newfs: reduced number of fragments per cylinder group from 13048 to 12992 to
  enlarge last cylinder group
  /dev/rwd0e: 102.0MB in 208844 sectors of 512 bytes
  5 cylinder groups of 25.38MB, 1624 blocks, 3328 inodes each
  /dev/rwd0d: 2055.2MB in 4209028 sectors of 512 bytes
  11 cylinder groups of 202.47MB, 12958 blocks, 25984 inodes each
  /dev/rwd0g: 1027.6MB in 2104512 sectors of 512 bytes
  6 cylinder groups of 202.47MB, 12958 blocks, 25984 inodes each
  /dev/rwd0f: 2055.2MB in 4209028 sectors of 512 bytes
  11 cylinder groups of 202.47MB, 12958 blocks, 25984 inodes each
  /dev/rwd0j: 1027.6MB in 2104512 sectors of 512 bytes
  6 cylinder groups of 202.47MB, 12958 blocks, 25984 inodes each
  /dev/rwd0k: 25658.7MB in 52548992 sectors of 512 bytes
  127 cylinder groups of 202.47MB, 12958 blocks, 25984 inodes each
  /dev/wd0a on /mnt type ffs (rw, asynchronous, local)
  /dev/wd0h on /mnt/home type ffs (rw, asynchronous, local, nodev, nosuid)
  /dev/wd0e on /mnt/tmp type ffs (rw, asynchronous, local, nodev, nosuid)
  /dev/wd0d on /mnt/usr type ffs (rw, asynchronous, local, nodev)
  /dev/wd0g on /mnt/usr/X11R6 type ffs (rw, asynchronous, local, nodev)
  /dev/wd0f on /mnt/usr/local type ffs (rw, asynchronous, local, nodev)
  /dev/wd0j on /mnt/var type ffs (rw, asynchronous, local, nodev, nosuid)
  /dev/wd0k on /mnt/var/www type ffs (rw, asynchronous, local, nodev, nosuid)

  Let's install the sets!
...

(туда, где мы, возможно, были)

4.7 - Какие файлы нужны для установки?

Полная установка OpenBSD разбита на некоторое количество компонентов. Не каждое приложение требует наличия всех компонентов. Вот краткое их описание:

Компоненты etc52.tgz и xetc52.tgz не устанавливаются при обновлении, а только при полной установке, так что любые ваши настройки, внесенные вами когда-либо, потеряны не будут. Вам нужно будет обновлять каталоги /etc, /dev и /var вручную.

Почему я должен устанавливать X для моего не-графического приложения?

Даже если вы не планируете запускать X, некоторые пакеты сторонних разработчиков требуют наличия библиотек или других X-утилит в вашей системе. Обычно достаточно только xbase52.tgz, остальные X не всегда нужны. Многие пользователи не хотят устанавливать X без веских оснований для этого: Иногда люди тратят много времени и усилий, пытаясь извлечь из xbase52.tgz только файлы, необходимые для установки их приложения. Это не только бессмысленно, но и усилия, которые прилагаются для этого, повторяются при каждом цикле обновления, что приводит к невозможности корректно обновить вашу систему, создавая РЕАЛЬНЫЕ проблемы безопасности.

Если вам нужен X, просто установите его. Это не повредит больше, чем нужное вам какое-либо приложение.

Я не хочу устанавливать компиляторы

Ладно, но, пожалуйста, не говорите себе, что это "из соображений безопасности". Если к тому времени кто-то сможет достаточно глубоко проникнуть в вашу систему, наличие или отсутствие компилятора ни на что не повлияет, т.к. взломщики могут установить его сами. Кроме того, набор файлов compXX.tgz достаточно большой и содержит много файлов, поэтому он может занять некоторое время для установки и обновления, что на медленных или малых системах может иметь значение.

Если вы решили не устанавливать компилятор, возможно, вам понадобится другая система для сборки обновлений программного обеспечения. Существует гораздо больше систем, которые были скомпрометированы из-за неправильного обслуживания, чем из-за установки компилятора.

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

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

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

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

Некоторые дополнительные мысли о разбивке диска:

4.9 - Мультизагрузка OpenBSD (amd64, i386)

Мультизагрузка подразумевает использование на одном компьютере несколько ОС, а также средства выбора нужной из них при загрузке. Это НЕ простая задача! Если вы недопонимаете что делаете, вы можете уничтожить важные данные на компьютере. Новичкам в OpenBSD настоятельно рекомендуется попрактиковаться в создании желаемой конфигурации на чистом тестовом диске, не содержащем важных данных, прежде чем приступать к подготовке и настройке мультизагрузки на рабочей машине. О загрузке OpenBSD более подробно написано в FAQ 14.

Для загрузки OpenBSD предпочтительно использовать один из четырех основных разделов MBR (то есть, на расширенных разделах это может не работать).

Обратите внимание, что в Windows 7 и Vista можно изменить размер своих системных разделов: нужно перейти в Панель управления, найти "разбивка", и запустить соответствующие системные инструменты. Щелкните правой кнопкой мыши на раздел и вы увидите, что можете уменьшить его. Его основным ограничением является то, что файл Windows Exchange не может быть перемещен, так что, если вам понадобится больше свободного места, вам придется переместить/отключить его.

Вот несколько вариантов настройки мультизагрузки:

Установка активного раздела

Это, наверное, самый упускаемый из виду способ, но иногда именно он лучше всего подходит для мультизагрузки. Просто сделайте в текущей ОС активным тот раздел, с которого хотите загружаться. Практически каждая ОС имеет для этого встроенные средства; в OpenBSD это fdisk(8), похожие по названию программы есть в Windows 9x и DOS и во многих других системах. Этот способ рекомендуется для систем или ОС с большим временем выключения или перезагрузки — вы можете сделать установку, начать процесс перезагрузки, после чего прогуляться, сделать чашечку кофе, и вернуться уже к полностью загруженной нужной вам ОС — не нужно сидеть и ждать "Волшебного Момента" появления меню с выбором ОС для загрузки.

Загрузочная дискета

Если вы редко пользуетесь OpenBSD (или не хотите, чтобы другие пользователи компьютера заметили, что что-то изменилось), подумайте об использовании загрузочной дискеты. Просто возьмите одну из стандартных установочных дискет OpenBSD, и создайте файл /etc/boot.conf (да, вам также придется создать создать на дискете каталог /etc) следующего содержания:
     boot hd0a:/bsd
для того, чтобы система загружала файл ядра /bsd с жесткого диска 0, раздела 'а' OpenBSD. Вы можете также загрузиться и с другого диска, например: "boot hd2a:/bsd" для загрузки с третьего жесткого диска. Для загрузки OpenBSD вставьте дискету и перезагрузитесь. Для загрузки другой ОС - извлеките дискету и перегрузитесь (можно, конечно, использовать эту дискету, и для создания загрузочного CD).

В этом случае программа boot(8) загружается с гибкого диска, находит и считывает файл /etc/boot.conf. Команда "boot hd0a:/bsd" указывает boot(8) откуда загружать ядро — в данном случае с первого жесткого диска, согласно настройкам BIOS. С дискеты загружается только маленький файл (/boot) — сама система, включая ядро, загружается с жесткого диска, так что процесс загрузки увеличится всего секунд на пять.

Windows NT/2000/XP NTLDR

Для настройки мультизагрузки OpenBSD и Windows NT/2000/XP можно использовать NTLDR, стандартный загрузчик NT. Для мультизагрузки из NT, необходимо будет скопировать загрузочную запись на раздел OpenBSD (PBR). После запуска Installboot, вы можете скопировать ее в файл с помощью dd(1), следующим образом:
	# dd if=/dev/rsd0a of=openbsd.pbr bs=512 count=1
Внимание! Это хороший момент напомнить вам о том, что исполнение команд в командной строке методом перепечатывания, без понимания их смысла, весьма плохая затея. Эта команда не будет работать сходу на большинстве компьютеров. Читателю оставляется возможность адаптировать ее к своему компьютеру.

Теперь загружайте NT и разместите openbsd.pbr в корень C:. Добавьте строку следующего вида в конец файла C:\BOOT.INI:

	c:\openbsd.pbr="OpenBSD"

После перезагрузки у вас появится возможность выбора OpenBSD из меню загрузчика NT. Дополнительную информацию о NTLDR можно найти в NTLDR Hacking Guide.

В Windows XP вы можете изменить загрузочную информацию из графической оболочки; смотрите XP Boot.ini HOWTO.

Есть программы, которые сделают все за вас, к примеру, BootPart. Эту программу можно запустить в NT/2000/XP, а она сама извлечет OpenBSD PBR, разместит его в разделе NT/2000/XP, и добавит запись в C:\BOOT.INI.

Внимание! Загрузчик Windows NT/2000/XP может загрузить ОС только с основного жесткого диска системы. Вам не удастся загрузить с его помощью OpenBSD, установленную на второй диск.

Windows Vista

Начиная с Vista, Microsoft отказалась от поддержки NTLDR в пользу своего нового, используемого для управления загрузкой, Boot Configuration Data (BCD). С тех пор BOOT.INI больше не доступен для настройки, утилиты командной строки, bcdedit заняли его место.

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

C:\Windows\system32> bcdedit /create /d "OpenBSD/i386" /application bootsector
The entry {05a763ce-d81b-11db-b3ec-000000000000} was successfully created.

C:\Windows\System32>

В данном случае программой возвращен GUID 05a763ce-d81b-11dB-b3ec-000000000000 и приводится здесь для иллюстрации. Обратите внимание, что GUID отображенный при запуске этой команды, нужно будет скопировать в следующие команды. Простое копирование GUID, показанного выше, не сработает.

Следующие две команды также обязательны:

C:\Windows\system32> bcdedit /set {05a763ce-d81b-11db-b3ec-000000000000} device boot
The operation completed successfully.

C:\Windows\system32> bcdedit /set {05a763ce-d81b-11db-b3ec-000000000000} path \openbsd.pbr
The operation completed successfully.

C:\Windows\system32>

Эти команды должны быть запущены в оболочке с правами администратора. После того как вы определите расположение cmd.exe, щелкните на нем правой кнопкой мыши для выбора "запуск от имени администратора".

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

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

Если ничего не происходит, посмотрите в Панели управления информацию о загрузке. Скорее всего, загрузка Windows установлена ​​без задержки, так что вы не видите меню загрузки. Вы также можете установить загрузку OpenBSD по умолчанию.

Для получения дополнительной информации обратитесь к функции помощи bcdedit, используя следующую команду:

C:\Windows\system32> bcdedit /?

или путем поиска документации Microsoft на веб-сайте. Хорошее описание можно найти в этой TechNet статье Часто задаваемые вопросы.

Для тех, кому ручная настройка показалась сложной, можно воспользоваться альтернативным графическим интерфейсом EasyBCD.

Windows 7

С момента выпуска Vista Microsoft расширила BCD для того, чтобы можно было с помощью bcdedit загрузить несколько версий Windows. В связи с этим, появилось больше возможностей и используется пять команд, необходимых для настройки мультизагрузочной среды с OpenBSD.

После копирования PBR OpenBSD в системный раздел Windows 7, используем следующую команду для инициализации реестра:

C:\Windows\system32> bcdedit /create /d "OpenBSD/i386" /application bootsector
The entry {0154a872-3d41-11de-bd67-a7060316bbb1} was successfully created.

C:\Windows\system32>

Как было указано выше, {0154a872-3d41-11de-bd67-a7060316bbb1 GUID} является системно зависимым. Обратите внимание на значение, которое вы получаете при выполнении этой команды, и скопируйте его в следующие команды:

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.

C:\Windows\system32>

Другие загрузчики

Многие пользователи OpenBSD успешно используют GAG, The Ranish Partition Manager, rEFIt, и GRUB.

OpenBSD и Linux (i386)

Ознакомьтесь, пожалуйста, с INSTALL.linux, в котором приведены основательные инструкции по работе OpenBSD с Linux.

Вопросы настройки часового пояса

OpenBSD предполагает, что часы реального времени компьютера установлены в UTC (Всемирное координированное время). Некоторые другие ОС используют часы реального времени, установленные на местное время. Очевидно, что это может создавать небольшие проблемы, если вы используете две такие операционные системы на одном компьютере. Одну или другую из них, скорее всего, придется адаптировать. Дополнительная информация об этом находится в FAQ 8 - Почему мои часы опаздывают на несколько часов?

4.10 - Отправка после установки вывода dmesg на dmesg@openbsd.org

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

Вот цитата из /usr/src/etc/root/root.mail:

Если вы хотите, чтобы OpenBSD работала лучше на ваших машинах, пожалуйста, 
окажите нам любезность (после того, как ваша почтовая система будет настроена!) 
и введите что-то вроде:
# (dmesg; sysctl hw.sensors) | \
        mail -s "Sony VAIO 505R laptop, apm works OK" dmesg@openbsd.org
таким образом, мы сможем увидеть, на машинах каких конфигураций люди работают.  
Как видно, немного информации о вашей машине, содержащейся в теме или теле письма,
может помочь нам еще больше.  Мы будем использовать эту информацию для улучшения 
поддержки драйверов устройств в будущих выпусках.  (Используйте, пожалуйста, для 
генерации dmesg прилагаемое ядро GENERIC, а не для собранное пользовательское ядро, 
за исключением случая, если вы не в состоянии загрузить ядро GENERIC.
Если у Вас многопроцессорная машина, будет приветствоваться отправка результатов 
dmesg для двух ядер: GENERIC.MP и GENERIC.)  Из этого файла мы получим информацию 
о драйвере устройства, что поможет нам исправить существующие драйверы. Спасибо!

Убедитесь, что вы посылаете письмо с аккаунта, на который также можно получать электронную почту, это нужно для того, чтобы разработчики могли связаться с вами, если нужно будет что-то протестировать, изменить или получить ваши рабочие настройки. Не важно, если письмо будет отправлено не с той же машины, на которой работает OpenBSD, так что, если машина не в состоянии получать электронную почту, просто используйте:

$ (dmesg; sysctl hw.sensors) | mail your-account@yourmail.dom
а затем перенаправьте сообщение на
 dmesg@openbsd.org
где your-account@yourmail.dom является вашей учетной записью электронной почты.

ПРИМЕЧАНИЯ

Описанный выше метод очень прост, однако, если вы решили не настраивать почту на вашей системе OpenBSD, постарайтесь все равно отправить dmesg разработчикам. Вы можете сохранить вывод dmesg в текстовый файл.

$ (dmesg; sysctl hw.sensors) > ~/dmesg.txt
Затем передать этот файл (с использованием FTP/scp/дискеты/почтового голубя/ ...), в систему, на которой вы обычно пользуетесь электронной почтой. Отправляемый вами вывод dmesg, обрабатывается автоматически, поэтому убедитесь в следующем при использовании альтернативных почтовых клиентов/систем:

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

"О, нет! Я забыл добавить набор файлов во время установки!"

Бывают случаи, когда вы понимаете, что вам действительно нужен comp52.tgz (или любой другой из компонентов системы), но вы не можете сейчас его установить, т.к. система уже установлена. Можем обрадовать: есть два простых способа добавления компонентов после установки:

Использование процесса обновления

Загрузитесь с установочного носителя (CD или дискеты), выберите Upgrade (вместо Install). Когда вы получите списки компонентов, выберите только те, которые забыли установить в первый раз, выберите носитель, и все установится.

Использование tar(1)

Установочные компоненты - простые архивы tar, и вы можете запросто распаковать их в корень файловой системы:

  # cd /
  # tar xzvphf comp52.tgz

НЕ забывайте использовать в приведенной выше команде опцию 'р', которая необходима для установления правильных прав доступа к файлам!

Одной из распространенных ошибок является уверенность в том, что вы можете использовать pkg_add(1) для добавления недостающих наборов файлов. Это не сработает. pkg_add (1) является инструментом управления пакетами для установки стороннего программного обеспечения. Эта программа обрабатывает файлы пакета, а не обычные tar файлы, которыми являются установочные наборы.

Если вы устанавливаете на вашей системе набор файлов xbase в первый раз, используя tar(1) и без перезагрузки, необходимо будет после установки обновить кэш общих библиотек при помощи ldconfig(8) для добавления всех библиотек X в кэш:

# ldconfig -m /usr/X11R6/lib
Вместо этого, вы можете просто перезагрузить систему, и это будет сделано автоматически сценариями запуска rc(8).

4.12 - Что такое 'bsd.rd'?

bsd.rd является ядром "RAM диска". Этот файл может быть очень полезным; многие разработчики аккуратно хранят его все время в корне своей системы.

Название "ядро RAM диска" означает корневую файловую систему ядра, а не физического диска, а также утилиты, доступные после загрузки bsd.rd, которые хранятся в ядре и выполняются из файловой системы, расположенной в оперативной памяти. bsd.rd также включает в себя множество утилит, позволяющих вам обслуживать и устанавливать систему.

На некоторых платформах использование bsd.rd на самом деле является предпочтительной техникой установки - вы помещаете это ядро в существующую файловую систему, загружаете его и запускаете установку. На большинстве платформ, если у вас работает старая версия OpenBSD, вы можете загрузить по FTP новую версию bsd.rd, перезагрузится с ним и установить новую версию OpenBSD вообще без использования каких-либо съемных носителей.

Вот пример загрузки bsd.rd на i386 системе:

  Using Drive: 0 Partition: 3
  reading boot.....
  probing: pc0 com0 com1 apm mem[639k 255M a20=on]
  disk: fd0 hd0+
  >> OpenBSD/i386 BOOT 3.18
  boot> boot hd0a:/bsd.rd
. . . normal boot to install . . .

Как показано выше, вы окажетесь в программе установки, но вы также сможете попасть в оболочку (shell), чтобы сделать обслуживание вашей системы.

Общее правило при загрузке bsd.rd, заключается в том, чтобы изменить загружаемое ядро с /bsd на bsd.rd с помощью средств, используемых на вашей платформе.

4.13 - Возможные проблемы при установке

4.13.1 - Мой Compaq распознает только 16Мб RAM

В некоторых Compaq системах существует проблема, связанная с тем, что полный объем оперативной памяти системы не определяется загрузчиком OpenBSD второй стадии, а определяется и может быть использовано OpenBSD только 16 Мб. Это можно исправить либо путем создания/редактирования файла /etc/boot.conf или путем ввода команд в строке "boot>" перед загрузкой OpenBSD. Если у вас машина с 64 Мб оперативной памяти, но OpenBSD было обнаружено только первые 16Мб, вот команда, которую вам необходимо использовать:
     machine mem +0x3000000@0x1000000
для добавления 48Мб (0x3000000) после первых 16Mб (0x1000000). Обычно, если у вас машина с этой проблемой, вы должны ввести вышеприведенную команду сначала в строке boot> при загрузке с дискеты/CD-ROM', затем загрузить систему, перезагрузиться и создать файл /etc/boot.conf с указанной выше командой в нем, и при всех последующих загрузках будет распознаваться весь доступный объем оперативной памяти.

Было также сообщение, что в обновлениях на ROM для некоторых систем это будет исправлено.

4.13.2 - Мой i386 не загружается после установки

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

4.13.3 - Моя (старая, медленная) машина загрузилась, но зависла на этапе генерации SSH-ключей

Вполне вероятно, ваша машина работает нормально, просто, необходимо принять во внимание сам процесс генерации SSH-ключей. Этап генерации SSH-ключей (ssh-keygen(1)) на SPARCStation2 или Macintosh Quadra может занять несколько часов. Просто дайте ему закончить - это делается только один раз за установку.

Пользователи очень медленных машин могут генерировать свои ключи на другом компьютере, а затем, поместить их в файл site52.tgz и установить его вместе с остальными наборами файлов.

4.13.4 - При установке я получил сообщение "Не удалось изменить каталог"

При использовании для установки через FTP snapshot в период -beta стадии цикла разработки OpenBSD, вы можете увидеть следующее:


  Display the list of known ftp servers? [no] yes
  Getting the list from 192.128.5.191 (ftp.openbsd.org)... FAILED
  Failed to change directory.
  Server IP address or hostname?

Это нормальное и ожидаемое поведение при использовании предварительной версии цикла. Программа установки ищет список FTP на основном FTP сервере в каталоге, который не доступен до даты выхода версии, именно поэтому, вы получите вышеприведенное сообщение.

Просто используйте список FTP серверов-зеркал, чтобы найти подходящее вам FTP-зеркало и вручную введите его имя при запросе.

Примечание: При использовании -release или CD-ROM, указанное сообщение не должно появляться.

4.13.5 - В моей таблице разделов fdisk какой-то мусор или она пуста!

Иногда, система нормально работает, но при выполнении fdisk wd0, можно увидеть совершенно пустую (или, бывает, заполненную мусором) таблицу разделов. Это, как правило, вызвано тем, что созданный в fdisk(8) раздел, имеет нулевое смещение секторов, а не требуемое смещение на один трек (примечание: это при условии, что используется i386 или amd64 платформа. Другие платформы имеют разные требования к смещению, некоторым смещения не нужны). Затем система загружается с помощью PBR, не используя MBR.

Хотя эта конфигурация может работать, однако, могут возникнуть проблемы при обслуживании системы и поэтому ошибка должна быть исправлена. Чтобы исправить ситуацию, файловая система диска должна быть воссоздана с нуля (хотя, если вы точно знаете, что делаете, можете восстановить только disklabel и MBR, и тогда вы потеряете только первый OpenBSD раздел на диске, который нужно будет восстановить).

4.13.6 - На моей машине нет дискеты или CD-ROM

На некоторых компьютерах людям может понадобиться запустить OpenBSD при отсутствии каких-либо очевидных способов ее установки, не имея дискеты или компакт-диска. Либо машина была выпущена без этих устройств (например, многие ноутбуки и основанные на "flash" машины типа Soekris и ALIX системы), либо загрузочные устройства не работают должным образом или были удалены, а заменить их проблематично. Вот некоторые советы и приемы, которые можно использовать, чтобы установить OpenBSD на этих системах. В любом случае, помните, что на машине уже была ранее установленна ОС и это означает, что ОС может быть переустановлена. Идея о том, как установить OpenBSD, может прийти, если подумать, как могла быть установлена оригинальная ОС.

4.13.7 - Во время установки я получил расхождение SHA256!

Контрольные суммы для наборов файлов, используемых при установке, встроены в установочное ядро.

В действительности, наборы файлов в -release должны полностью соответствовать своим контрольным суммам.

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

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

файл siteXX.tgz

Сценарии установки/обновления OpenBSD позволяют выбрать созданный пользователем установочный набор, который называется "siteXX.tgz", где XX это релиз версии (например, 52). Установочный набор siteXX.tgz, как и другие наборы файлов, представляет собой сжатый gzip(1) tar(1) архив с источником в '/' и, который, как и другие наборы, распаковывается с опциями xzphf. Этот набор будет установлен последним, после установки всех других наборов файлов.

Этот набор файлов позволяет пользователям добавлять и/или переопределять файлы, установленные в «нормальных» наборах и, таким образом, настроить установку или обновление.

Вы также можете создавать и использовать системно-зависимые наборы файлов, которые будут называться siteXX-<hostname>.tgz, например, "site52-puffy.tgz". Это позволяет использовать предназначенные для конкретного хоста настройки установки, обновления или аварийного восстановления.

Вот некоторые примеры использования файла siteXX.tgz:

сценарии install.site/upgrade.site

В качестве последнего шага в процессе установки/обновления, сценарии ищут в корневом каталоге вновь установленную/обновленую систему для install.site или upgrade.site, в соответствии с текущим процесс, и запускают этот сценарий в изолированном (chrooted) окружении для установки/обновления корня системы. Помните, что обновление выполняется из загруженной файловой системы, в связи с этим, ваша целевая файловая система на самом деле смонтирована в /mnt. Однако, в связи с использованием chroot, ваш скрипт может быть написан как будто он работает в "нормальном" корне вашей файловой системы. Так как этот скрипт запускается после того, как все файлы будут установлены, у вас есть доступ к многим функциональным возможностям полной системы для выполнения скрипта. Имейте в виду, что вы работаете с минимальным ядром, не все функции доступны, и из-за нехватки места, то, что работает сегодня, может не работать в будущих версиях.

Обратите внимание, что сценарий install.site должен находиться в файле siteXX.tgz file, в то время, как сценарий upgrade.site может быть помещен в корневой каталог до обновления или в файл siteXX.tgz.

Сценарии могут быть использованы для многих вещей:

Сочетание siteXX.tgz и файлов install.site/upgrade.site предназначено для того, чтобы предоставить пользователям широкие возможности настройки без необходимости создавать свои собственные пользовательские установочные наборы.

Примечание: если вы будете осуществлять установку с HTTP-сервера, вам будет нужно добавить ваш site*.tgz файл(ы) в index.txt, расположенный в исходном каталоге, для того, чтобы они были видны как опции во время установки. Это не является необходимым при использовании FTP или других способов установки.

4.15 - Как установить несколько одинаковых систем?

Здесь приведены некоторые инструменты, которые можно использовать для установки нескольких одинаковых систем OpenBSD.

файлы siteXX.tgz и install/upgrade.site

См. выше.

Восстановление из dump(8)

На большинстве платформ, загрузочный носитель включает в себя программу restore(8), которая может быть использована для восстановления из резервной копии, сделанной dump(8). Таким образом, вы можете загрузиться с floppy, CD или файла bsd.rd, а затем fdisk, disklabel, и восстановить нужную конфигурацию с ленты или другого носителя, и установить загрузочные блоки. Подробнее здесь.

Образы диска

К сожалению, не известно о существовании пакетов для создания образов дисков, которые могут работать с файловой системой FFS и делать ее образы, содержащие только активные файловые пространства. Большинство основных решений в области создания образов диска будут работать с разделом OpenBSD, как с "общим" разделом, и могут сделать образ всего диска. Эти программы выполняют свою задачу, но, обычно, с огромным количеством пустого пространства -- пустой 10Гб раздел /home займет также 10Гб пространства в созданном образе, даже если там нет ни одного файла. Этот образ диска вы, как правило, сможете установить на больший диск, но, при этом, не будете иметь возможности напрямую использовать дополнительное пространство, и не сможете установить этот образ на меньший диск.

Если эта ситуация приемлема в вашем случае, тогда вам подойдет команда dd, позволяющая скопировать один диск на другой, сектор в сектор. Это позволяет обеспечить такую ​​же функциональность, как у коммерческих программ без каких-либо затрат.

4.16 - Как получить вывод dmesg(8), чтобы сообщить о проблеме при установке?

При сообщении о проблеме, решающее значение имеет наличие полного системного dmesg(8). Однако, часто вам нужно это сделать, в связи с тем, что система неправильно работает или не устанавливается и, таким образом, вы можете не иметь доступа к диску, сети, или другим ресурсам, необходимым для получения dmesg для соответствующего списка рассылки. Конечно, есть и другие способы его получения:

[FAQ-Index] [Глава 3 - Начинаем работать с OpenBSD] [Глава 5 - Сборка системы из исходников]


[back] www@openbsd.org
$OpenBSD: faq4.html,v 1.1 2013/01/12 07:47:15 ajacoutot Exp $