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

4.1 - Краткий обзор процедуры установки OpenBSD



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

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

    С дискеты: Имеются образы дискет, которые могут быть использованы для создания установочных дискет на Unix-подобных или DOS/Windows системах. Обычно образ называется floppy43.fs, хотя для некоторых платформ имеется несколько образов.
    С CD-привода: Для некоторых платформ возможно использование загрузочных образов CD (cd43.iso только для загрузки, или install43.iso для полной установки).
    Из имеющегося раздела: Ядро с виртуальным диском (bsd.rd), предназначаемое для загрузки с существующего раздела OpenBSD или сетевой загрузки.
    Сеть: Некоторые платформы поддерживают загрузку по сети (например, используя PXE или другой способ загрузки по сети).
    Запись образа на жесткий диск: образ файловой системы, который можно записать в имеющийся раздел для последующей загрузки с него.
    Загрузочная лента: Некоторые платформы поддерживают загрузку с ленты. Создать такие ленты можно инструкциям из INSTALL.platform.

Не каждая платформа поддерживает все способы загрузки:

    alpha: Дискета, CD, сеть, запись образа дискеты на жесткий диск.
    amd64: Дискета, CD, сеть.
    armish: Varies by machine.
    hp300: CD, сеть.
    hppa: Сеть.
    i386: Дискета, CD, сеть.
    landisk: miniroot, installed using another computer.
    mac68k: Загружается с использованием инструментов, работающих в Mac OS. Подробнее описано в INSTALL.mac68k.
    macppc: CD, сеть.
    mvme68k: Сеть, загрузочная лента.
    mvme88k: Сеть, загрузочная лента.
    sparc: Дискета, CD, сеть, запись образа в существующий swap раздел, загрузочная лента.
    sparc64: Дискета (только U1/U2), CD, сеть, запись образа в существующий раздел.
    vax: Дискета, сеть.
    zaurus: Boot bsd.rd из раздела Linux. Читайте INSTALL.zaurus.


Также на всех платформах можно использовать bsd.rd для переустановки или обновления.

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

    CD: Конечно же, предпочтительно использование официального набора CD, но, при необходимости, вы можете использовать самостоятельно созданный диск.
    FTP: Загрузка с одного из официальных FTP зеркал OpenBSD или со своего FTP-сервера, где размещены компоненты.
    HTTP: Загрузка с одного из официальных HTTP зеркал OpenBSD или собственного веб-сервера с компонентами.
    Локальный раздел жесткого диска: Во многих случаях вы можете установить компоненты с другого раздела локального жесткого диска. К примеру, на i386, вы можете произвести установку с раздела FAT или CD в стандартах ISO9660, Rock Ridge или Joliet. В некоторых случаях Вам придется примонтировать данный раздел вручную.
    NFS: Некоторые платформы поддерживают установку компонентов по NFS.
    Лента: Пакеты могут быть установлены с поддерживаемых стриммеров. Как создать загрузочную ленту читайте в INSTALL.platform.



4.2 - Список необходимого для установки



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

    Имя машины
    Установленные и доступные аппаратные средства
         o Проверьте совместимость вашей аппаратуры на странице по совместимости
         o Для ISA также необходимо знать настройки аппаратуры и проверить их совместимость с требованиями OpenBSD.
    Способ установки (CD, FTP и т.д.)
    Каким образом будет исправляться система, в случае обнаружения серьезных ошибок?
         o При исправлении на локальной машине необходимо обеспечить достаточный объем свободного места для размещения дерева исходников и его компиляции.
         o Иначе Вам необходим доступ к другой машине для сборки исправленного релиза.
    Желаемую схему разбивки жесткого диска
         o Есть ли необходимость архивирования имеющихся данных?
         o Будет ли OpenBSD сосуществовать с другими ОС на этой системе? Если так, как будет производиться загрузка? Есть ли необходимость установки менеджера загрузки?
         o Будете ли вы использовать для OpenBSD диск целиком или сохраните существующие разделы/ОС (или свободного пространство)?
         o Как вы хотите разбить ту часть винчестера, которая предназначена для OpenBSD?
    Сетевые настройки, если не используется DHCP:
         o Доменное имя
         o Адрес(а) сервер(а/ов) DNS
         o IP адрес и маску сети для каждой сетевой карты
         o Адрес шлюза по умолчанию
    Будет ли запускаться графическая оболочка X?



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



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

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

    floppy43.fs (Персональный компьютер) поддерживает сетевые карты на шинах PCI и ISA, адаптеры IDE и обычные SCSI, некоторые PCMCIA устройства. Большинство пользователей будет использовать этот образ в случае загрузки с дискеты.
    floppyB43.fs (Сервер) поддерживает большинство контроллеров RAID, и часть мало распространенных адаптеров SCSI. Однако, поддержка многих стандартных адаптеров SCSI и многих сетевых карт EISA и ISA из этого образа удалена.
    floppyC43.fs (Ноутбук) поддерживает устройства CardBus и PCMCIA большинства ноутбуков.
    cd43.iso - образ ISO9660 для создания загрузочного CD с помощью большинства известных программ записи на большинстве платформ. Этот образ имеет самый большой набор включенных драйверов и, поэтому, обычно является лучшим выбором, если ваша аппаратура может загружаться с CD. cdrom43.fs является универсальной комбинацией трех вышеперечисленных. Может быть использован для с как загрузочный образ для создания собственных CD.    
    cdemu43.iso - образ ISO9660, использующий загрузку с эмуляцией дискеты. Используется образ на 2.88M, cdrom43.fs. Надеемся, данный образ вам не понадобится — большинству должно хватить cd43.iso, используйте cdemu43.iso если только cd43.iso не подошел.
    install43.iso - ISO9660 образ, содержащий стандартные файлы для установки. Этот CD может быть использован для создания CD stand-alone OpenBSD install.

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

На платформе sparc возможно использование одного из трех различных образов:

    floppy43.fs: Для систем с флоппи-приводом.
    cd43.iso - образ ISO образ, который можно использовать для создания загрузочного CD для систем SPARC с CD-приводом.
    miniroot43.fs может использоваться для записи в раздел swap и загрузки.
    install43.iso - ISO9660 образ, содержащий стандартные файлы для установки. This file can be used to create a CD that can do a stand-alone OpenBSD install.  


4.3.1 - Создание дискеты из Unix



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


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


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

Некоторые Unix-системы имеют другие команды для форматирования и проверки дискеты. Ознакомтесь с руководством для вашей ОС.

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


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


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


# cmp /dev/rfd0c floppy43.fs




4.3.2 - Создание дискеты из Windows или DOS



В этом разделе описывается создание загрузочной дискеты из Windows или DOS. Необходимые для этого утилиты можно закачать из каталога tools с FTP-зеркал, или из каталога 4.3/tools на первом диске из комплекта дисков OpenBSD.

Для подготовки дискеты из MS-DOS или Windows сначала отформатируйте дискету штатными средствами системы.

Для записи образа на подготовленную дискету можно использовать утилиты rawrite, fdimage или ntrw. rawrite не работает под Windows NT, 2000 или XP.

Внимание! FDIMAGE.EXE и RAWRITE.EXE являются приложениями MS-DOS и поэтому могут использовать только имена файлов в стиле MS-DOS, "8.3". Так как floppyB43.fs и floppyC43.fs имеют более длинные имена, то перед использованием FDIMAGE.EXE или RAWRITE.EXE необходимо выяснить каким образом ваша система назначила им имена в "формате 8.3".

Впрочем, проще их переименовать - прим. пер.

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


C:\> rawrite
RaWrite 1.2 - Write disk file to raw floppy diskette

Enter source file name: floppy43.fs
Enter destination drive: a
Please insert a formatted diskette into drive A: and press -ENTER- : Enter


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


C:\> fdimage -q floppy43.fs a:


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


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




Создание CD



Вы можете создать CD используя файл cd43.iso. Для платформ i386 или amd64 также можно использовать cdrom43.fs как загрузочный образ дискеты для загрузки системы i386 с CD. Детали процесса создания CD рассматриваться не будут, читатель должен сам определить как это сделать с помощью имеющихся в его распоряжении средств.

Некоторые из средств, используемых в OpenBSD:

    mkhybrid(8)
    cdrecord, часть коллекции cdrtools из системы пакетов и портов OpenBSD.
    cdio(1) "track at once" (tao) опция записи.

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




Загрузка на i386/amd64



Загрузка с установочного диска на платформах i386 и amd64 PC - не новость для большинства пользователей. При использовании дискеты, установите дискету в привод и загрузите систему. Для загрузки с дискеты может потребоваться настройка вашего BIOS. Для загрузки с CD также необходимо выбрать в BIOS загрузку с CD и вставить компакт-диск в привод. Некоторые уставревшие BIOS не умеют производить загрузку с CD, в этом случае используйте дискету. Не волнуйтесь; после загрузки с флоппи вы сможете производить установку с CD.

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


Загрузка sparc/sparc64



Внимание: На платформе sparc64 с дискеты могут загружаться только системы с SBus (Ultra 1, Ultra 2).

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


ok boot floppy


Для загрузки с CD, поместите загрузочный диск OpenBSD в привод. Если на вашем Sun установлен только один привод CD, то в приглашении загрузчика можно использовать 'boot cdrom':


ok boot cdrom


Конечно, это будет работать только в новом командном режиме. Если вы видите старое приглашение командной строки (стрелка вправо), введите 'n' для входа в новый режим. (Если у вас старый Sparc, до sun4c, возможно, в нем вовсе нет поддержки нового режима. В этом случае придется поэкспрементировать.) Если у вас несколько CD-приводов, вам необходимо загрузиться с нужного. Введите probe-scsi в новой командной строке.


ok probe-scsi

Target 0
  Unit 0   Disk     QUANTUM LIGHTNING 365S
Target 1
  Unit 0   Removable Disk     QUANTUM EMPIRE_1080S
Target 3
  Unit 0   Removable Disk     Joe's CD-ROM


Выберите, с какого из них вы хотите загрузиться. Обратите внимание на номер target.


ok boot /sbus/esp/sd@X,0




Установка




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



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

Практически в любой момент установки 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
(I)nstall, (U)pgrade or (S)hell? i


Это первый вопрос, который задаст вам система. У вас есть три варианта для выбора:

    Install: Установка OpenBSD на систему с удалением любых имеющихся данных. Обратите внимание, что некоторые разделы могут остаться нетронутыми, например /home, но можете считать, что все остальное будет перезаписано.
    Upgrade: Установка новых установочных компонентов на компьютер без изменения конфигурационных файлов, пользовательских данных или пользовательских программ. Форматирование не выполняется, /etc или /var не переписываются. Несколько важных замечаний:
         o У вас не будет возможности установить компонент etc43.tgz. После установки вам придется вручную добавить изменения из etc43.tgz в вашу систему прежде чем она будет полнофункциональна. Этот шаг обязательно должен быть выполнен, иначе некоторые критичные сервисы (как pf(4)) могут быть не запущены при старте.
         o Обновление не рассчитано на пропуск релизов! Несмотря на то, что, зачастую, это будет работать, такой процесс не является поддерживаемым. Для OpenBSD 4.3 поддерживаемым является только обновление с 4.2 до 4.3. Для обновления более ранних версий рекомендуется полная переустановка.
Дополнительная информация об обновлении между релизами есть здесь.
    Shell: В случае, если ваша система не загружается нормальным способом, вы можете произвести восстановление/обслуживание системы с помощью этой опции. Это опция предусмотрена для обслуживания вашей системы. На загрузочном носителе доступен набор ключевых утилит.

Иногда у вас не будет возможности выбрать опцию "Upgrade". После наступления определенного дня flag_day обновление становится невозможным и возможна будет только установка системы с нуля.

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


Welcome to the OpenBSD/i386 4.3 install program.

This program will help you install OpenBSD. 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.  At any time you can exit this
program by pressing Control-C, but exiting during an install can leave your
system in an inconsistent state.

Terminal type: [vt220] Enter
kbd(8) mapping? ('L' for list) [none] Enter



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

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


 IS YOUR DATA BACKED UP? As with anything that modifies disk contents, this
 program can cause SIGNIFICANT data loss.

 It is often helpful to have the installation notes handy. For complex disk
 configurations, relevant disk hardware manuals and a calculator are useful.

 Proceed with install? [no] y




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

The installation notes referred to here are on the install CDs and FTP servers, in the file INSTALL.<plat>, where <plat> is your platform, for instance, i386.


4.5.2 - Подготовка дисков



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

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

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

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


Cool!  Let's get to it...

You will now initialize the disk(s) that OpenBSD will use. To enable all
available security features you should configure the disk(s) to allow the
creation of separate filesystems for /, /tmp, /var, /usr, and /home.

Available disks are: wd0.
Which one is the root disk? (or done) [wd0] Enter


(
Здесь будет произодиться инициализация используемых системой дисков.
Для использования всех возможностей по обеспечению безопасности
рекомендуется настроить использование отдельных файловых
систем для /, /tmp, /var/, /usr и /home.

Доступны диски: wd0.
какой диск использовать в качестве основного или корневого? (or done) [wd0] Enter
)


Основной диск ("root disk") - это диск, с которого производится загрузка и, на котором, как правило, находится swap. IDE диски определяются как wd0, wd1 и т.д., SCSI диски и RAID массивы определяются sd0, sd1 и т.д. В отображаемом списке будут все определенные OpenBSD диски, если у вас имеются диски, которых нет в этом списке, значит ваше оборудование либо не поддерживается, либо неправильно сконфигурировано.


Do you want to use *all* of wd0 for OpenBSD? [no] Enter



Ответив "да" на этот вопрос, вы позволите OpenBSD использовать все пространство жесткого диска. В результате будет создана стандартная главная загрузочная запись (MBR) и таблица разделов с одним загрузочным разделом типа OpenBSD на весь диск. Данное разделение наиболее часто используется для рабочих систем с OpenBSD; однако оно может оказаться неприемлимо в ряде случаев. Многие Compaq-и, ноутбуки, некоторые Dell-ы и другие системы используют специальные разделы для восстановления системы или реализации функции приостановки с сохранением памяти на диск ("maintenance" или "Suspend to Disk"), которые вам могут еще понадобиться. Если на вашей системе есть хотя бы один раздел, который вы не хотели бы потерять, не отвечайте "да" на этот вопрос. С другой стороны, если в вашей системе стоит новенький, нигде еще не использовавшийся винчестер, вам стоит согласиться с предложением инсталлятора (или использовать параметр "update" в fdisk), в результате чего вы получите корректную загрузочную запись и флаг загрузки.

Для примера рассмотрим случай, когда диск должен быть разделен между OpenBSD и уже существующим разделом с Windows 2000, тогда мы отвечаем "нет" (по умолчанию), что приведет к загрузке fdisk(8). Дополнительную информацию о fdisk(8) можно получить здесь.

Note: If you say "Y" to "Do you want to use *all* of wd0 for OpenBSD?" question, or if you are using a platform which does not use fdisk (for example, sparc64), you will not go through this step, but will rather jump directly to creating a disklabel


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.

The 'manual' command describes all the fdisk commands in detail.

Disk: wd0       geometry: 2586/240/63 [39100320 Sectors]
Offset: 0       Signature: 0xAA55
         Starting       Ending       LBA Info:
 #: id    C   H  S -    C   H  S [       start:      size   ]
------------------------------------------------------------------------
*0: 0B    0   1  1 -  202 239 63 [          63:     3069297 ] Win95 FAT-32
 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> help
        help            Command help list
        manual          Show entire OpenBSD man page for fdisk
        reinit          Re-initialize loaded MBR (to defaults)
        setpid          Set the identifier of a given table entry
        disk            Edit current drive stats
        edit            Edit given table entry
        flag            Flag given table entry as bootable
        update          Update machine code in loaded MBR
        select          Select extended partition table entry MBR
        swap            Swap two partition entries
        print           Print loaded MBR partition table
        write           Write loaded MBR to disk
        exit            Exit edit of current MBR, without saving changes
        quit            Quit edit of current MBR, saving current changes
        abort           Abort program without saving current changes
fdisk: 1>



Описание некоторых возможностей:

    r или reinit: Очищает имеющуюся таблицу разделов, создает один раздел для OpenBSD, помечает его как активный, и инсталлирует OpenBSD MBR код. Это эквивалентно ответу "yes" на вопрос "use *all* of ...".
    p или print: Отображает текущую таблицу разделов в секторах. "p m" покажет текущую таблицу в мегабайтах, "p g" в гигабайтах.
    e или edit: редактирование записи.
    f или flag: Помечает раздел как активный, тот, с которого будет производиться загрузка.
    u или update: Устанавливает в MBR загрузочный код OpenBSD, как "reinit", но без изменения существующей таблицы разделов.
    exit и quit: Аккуратнее с ними, некоторые пользователи привыкли к обратным значениям этих команд. (Здесь exit не сохраняет изменения при выходе, а quit сохраняет - прим. пер.)

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

На нашем диске имеется раздел в 1.5 ГБ для Windows 2000 (файловая система FAT). Ознакомившись с выводимой информацией мы видим, что раздел Windows занимает все пространство до 202-го цилиндра на диске. Соответственно, мы можем выделить оставшееся место для OpenBSD, начиная с цилиндра 203. Мы также можем рассчитать начальный сектор раздела OpenBSD, 3069360, суммируя начальный сектор существующего раздела (63) и его размер (3069297).

Вы можете редактировать диск в формате Цилиндры/Головки/Сектора (Cylinder/Heads/Sectors - CHS) или с простым использованием секторов. Что будет проще, зависит от того, что вы делаете; в этом случае, при работе с имеющимся разделом, использование формата CHS, возможно, будет проще. Если вы создаете первый раздел на пустом диске, наверное, будет проще использовать сектора.


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] y
BIOS Starting cylinder [0 - 2585]: [0] 203
BIOS Starting head [0 - 239]: [0] Enter
BIOS Starting sector [1 - 63]: [0] 1
BIOS Ending cylinder [0 - 2585]: [0] 2585
BIOS Ending head [0 - 239]: [0] 239
BIOS Ending sector [1 - 63]: [0] 63
fdisk:*1> p
Disk: wd0       geometry: 2586/240/63 [39100320 Sectors]
Offset: 0       Signature: 0xAA55
         Starting       Ending       LBA Info:
 #: id    C   H  S -    C   H  S [       start:      size   ]
------------------------------------------------------------------------
*0: 0B    0   1  1 -  202 239 63 [          63:     3069297 ] Win95 FAT-32
 1: A6  203   0  1 - 2585 239 63 [     3069360:    36030960 ] 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> p m
Disk: wd0       geometry: 2586/240/63 [19092 Megabytes]
Offset: 0       Signature: 0xAA55
         Starting       Ending       LBA Info:
 #: id    C   H  S -    C   H  S [       start:      size   ]
------------------------------------------------------------------------
*0: 0B    0   1  1 -  202 239 63 [          63:        1499M] Win95 FAT-32
 1: A6  203   0  1 - 2585 239 63 [     3069360:       17593M] OpenBSD
 2: 00    0   0  0 -    0   0  0 [           0:           0M] unused
 3: 00    0   0  0 -    0   0  0 [           0:           0M] unused
fdisk:*1>



Первый раздел на диске пропускает первый трек (дорожку) диска и, в этом случае, стартовым является сектор 63. Это может варьироваться от машины к машине и от дисковой системы к дисковой системе. Если раздел OpenBSD создан начиная с 0, то таблица разделов запишется поверх загрузочной записи раздела OpenBSD. Система может даже загрузиться, но обслуживание станет проблематичным, и такая конфигурация не рекомендуется и не поддерживается.

Обратите внимание на изменение приглашения - появилась звездочка ('*'), она указывает на то, что есть несохраненные изменения. Как можно увидеть из вывода p m, раздел Windows остался на своем месте, оставшаяся часть диска отведена нами для OpenBSD, и разделы не пересекаются друг с другом. Дело сделано. Почти.

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


fdisk:*1> f 1
Partition 1 marked active.
fdisk:*1> p
Disk: wd0       geometry: 2586/240/63 [39100320 Sectors]
Offset: 0       Signature: 0xAA55
         Starting       Ending       LBA Info:
 #: id    C   H  S -    C   H  S [       start:      size   ]
------------------------------------------------------------------------
 0: 0B    0   1  1 -  202 239 63 [          63:     3069297 ] Win95 FAT-32
*1: A6  203   0  1 - 2585 239 63 [     3069360:    36030960 ] 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:*1> w
Writing MBR at offset 0.
wd0: no disk label
fdisk: 1> q




Создание таблицы раздела



Следующим шагом мы, используя disklabel(8), разобьем слайс на разделы OpenBSD. Подробности по использованию disklabel(8) можно найти в FAQ 14, disklabel.


Here is the partition information you chose:

Disk: wd0       geometry: 2586/240/63 [39100320 Sectors]
Offset: 0       Signature: 0xAA55
         Starting       Ending       LBA Info:
 #: id    C   H  S -    C   H  S [       start:      size   ]
------------------------------------------------------------------------
 0: 0B    0   1  1 -  202 239 63 [          63:     3069297 ] Win95 FAT-32
*1: A6  203   0  1 - 2585 239 63 [     3069360:    36030960 ] OpenBSD
 2: 00    0   0  0 -    0   0  0 [           0:           0 ] unused
 3: 00    0   0  0 -    0   0  0 [           0:           0 ] unused

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.

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.

disklabel: no disk label
WARNING: Disk wd0 has no label. You will be creating a new one.

# using MBR partition 1: type A6 off 3069360 (0x2ed5b0) size 36030960 (0x225c9f0)

Treating sectors 3069360-39100320 as the OpenBSD portion of the disk.
You can use the 'b' command to change this.

Initial label editor (enter '?' for help at any prompt)
> ?
Available commands:
        ? [cmnd]  - this message or command specific help.
        a [part]  - add new partition.
        b         - set OpenBSD disk boundaries.
        c [part]  - change partition size.
        D         - set label to default.
        d [part]  - delete partition.
        e         - edit drive parameters.
        g [b|d|u] - use [ b ]ios, [ d ]isk or [ u ]ser geometry.
        M         - show entire OpenBSD man page for disklabel.
        m [part]  - modify existing partition.
        n [part]  - set the mount point for a partition.
        p [unit]  - print label.
        q         - quit and save changes.
        r         - recalculate free space.
        s [path]  - save label to file.
        u         - undo last change.
        w         - write label to disk.
        X         - toggle expert mode.
        x         - exit without saving changes.
        z         - zero out partition table.
Numeric parameters may use suffixes to indicate units:
        'b' for bytes, 'c' for cylinders, 'k' for kilobytes, 'm' for megabytes,
        'g' for gigabytes or no suffix for sectors (usually 512 bytes).
        '%' for percent of total disk size, '&' for percent of free space.
        Non-sector units will be rounded to the nearest cylinder.
Entering '?' at most prompts will give you (simple) context sensitive help.
>

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

Важно, что смещения, используемые disklabel, являются
АБСОЛЮТНЫМИ, то есть, рассчитываются относительно
начала диска, а НЕ от начала слайса OpenBSD.

На текущем диске никаких разделов еще нет и таблица создается с нуля.
)





Некоторая информация о командах:

    p — вывод на экран информации о разбиении, используйте команду с ключами k, m или g для вывода в кило-, мега- и гигабайтах.
    D — Стирает существующую таблицу, создает новую со схемой по умолчанию, которая заполняет весь текущий слайс OpenBSD. Эту команда бывает полезна в случае, если на диске уже была какая-либо старая таблица, а заново созданный слайс OpenBSD имеет другой размер — в этом случае старая таблица может сохраниться и стать источником ,недоразумений.
    m — Модификация существующей таблицы. Не стоит переоценивать возможности этой команды. Несмотря на то, что она может изменять размер раздела в таблице disklabel, она НЕ будет изменять файловые системы на диске. Использование этой возможности в предположении, что это измененит размер существующих разделов — хороший способ потерять много данных.

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

В нашем случае мы имеем более 17 ГБ, доступных OpenBSD. Это довольно много и вряд ли оно нам понадобится целиком и без остатка. Поэтому, мы специально не будем использовать минимальные размеры разделов. Лучше уж у нас будут неиспользованы несколько сотен мегабайт, нежели нам будет не хватать килобайта.

На корневом диске создание разделов 'a' для корневой файловой системы (/) обязательно. Без этого условия процесс инсталляции не сможет далее исполняться. Вам также необходим создание разделa swap, 'b', as well, though if you are sure your system will never exhaust real memory, you can leave it off. If a 'b' partition exists on the root disk, it will automatically be used for swap. Swap partitions on other disks will have to be manually added to /etc/fstab.

Немного поразмыслив, мы решили выделить ровно столько разделов, сколько требуется для создания рекомендованных отдельных ФС (/, /tmp, /var, /usr, /home), плюс раздел для свопа:

    wd0a: / (root) — 150 МБ. Должно быть более чем достаточно.
    wd0b: (swap) — 300 МБ.
    wd0d: /tmp — 120 МБ. /tmp используется для сборки некоторого ПО, 120 МБ должно хватить в большинстве случаев.
    wd0e: /var — 80 МБ. Если бы система использовалась в качестве почтового или веб-сервера, нам бы пришлось значительно увеличить этот раздел, однако, это не наш случай.
    wd0g: /usr — 4 ГБ. Этот раздел мы сделаем побольше, поскольку сюда должны поместиться некоторые пользовательские приложения, плюс хотелось бы иметь возможность обновлять и пересобирать систему из исходников в случае необходимости или по желанию. Дерево портов также размещается здесь, что сразу потребует почти 160 МБ, еще не приступая к сборке. А если мы планируем собирать систему и приложения из портов, а не используя пакеты, то здесь необходимо оставить значительно больше места.
    wd0h: /home — 4 ГБ. Для пользовательских файлов.

Если просуммируете эти размеры, вы увидите, что у нас осталось еще более 6 ГБ! Неиспользованное пространство лишним не будет, оно дает нам гибкость для расширения отдельных разделов в будущем при необходимости. Не хватает /tmp? Создаем раздел в неиспользованном пространстве, форматируем с помощью newfs(8) и вносим изменения в /etc/fstab для монтирования нового раздела /tmp. Проблема решена.


> p m
 device: /dev/rwd0c
 type: ESDI
 disk: ESDI/IDE disk
 label: ST320011A
 bytes/sector: 512
 sectors/track: 63
 tracks/cylinder: 16
 sectors/cylinder: 1008
 cylinders: 16383
 total sectors: 39102336
 free sectors: 36030960
 rpm: 3600
 
 16 partitions:
 #             size        offset  fstype [fsize bsize  cpg]
   a:      17593.2M       1498.7M  unused      0     0      
   c:      19092.9M          0.0M  unused      0     0      
   i:       1498.7M          0.0M  MSDOS                  
 > d a
 > a a
 offset: [3069360] Enter
 size: [36030960] 150m
 Rounding to cylinder: 317520
 FS type: [4.2BSD] Enter
 mount point: [none] /
 > a b
 offset: [3386880] Enter
 size: [35713440] 300m
 Rounding to cylinder: 619920
 FS type: [swap] Enter
 > a d
 offset: [4006800] Enter
 size: [35093520] 120m
 Rounding to cylinder: 257040
 FS type: [4.2BSD] Enter
 mount point: [none] /tmp
 > a e
 offset: [4263840] Enter
 size: [34836480] 80m
 Rounding to cylinder: 166320
 FS type: [4.2BSD] Enter
 mount point: [none] /var
 > a g
 offset: [4430160] Enter
 size: [34670160] 6g
 Rounding to cylinder: 12594960
 FS type: [4.2BSD] Enter
 mount point: [none] /usr
 > a h
 offset: [17025120] Enter
 size: [22075200] 4g
 Rounding to nearest cylinder: 8391600
 FS type: [4.2BSD] Enter
 mount point: [none] /home
 > p m
 device: /dev/rwd0c
 type: ESDI
 disk: ESDI/IDE disk
 label: ST320011A
 bytes/sector: 512
 sectors/track: 63
 tracks/cylinder: 240
 sectors/cylinder: 15120
 cylinders: 2586
 total bytes: 19092.9M
 free bytes: 6681.4M
 rpm: 3600
 
 16 partitions:
 #             size        offset  fstype [fsize bsize  cpg]
   a:           155.0M          1498.7M  4.2BSD   2048 16384   16 # /
   b:           302.7M          1653.8M    swap
   c:         19092.9M             0.0M  unused      0     0
   d:           125.5M          1956.4M  4.2BSD   2048 16384   16 # /tmp
   e:            81.2M          2082.0M  4.2BSD   2048 16384   16 # /var
   g:          6149.9M          2163.2M  4.2BSD   2048 16384   16 # /usr
   h:          4097.5M          8313.0M  4.2BSD   2048 16384   16 # /home
   i:          1498.7M             0.0M   MSDOS
 > q
 Write new label?: [y] Enter



Обратили внимание, что раздел c нами не использован? Этот раздел - весь наш диск; не пытайтесь его использовать. Также нами не был задан раздел i ; это уже существовавший ранее раздел Windows 2000. Разделение не предполагает зарезервированных букв за исключением: a (root), b (swap) и c (весь диск), остальные разделы (вплоть до буквы p) можно использовать как угодно.

Если вы внимательно рассмотрите вывод disklabel, то сможете заметить, что данные о скорости вращения шпинделя (RPM), скорее всего, неверны. Так уж повелось; скорость вращения никак не используется системой. Не беспокойтесь об этом.


Задание точек монтирования и форматирование разделов



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


 Mount point for wd0d (size=128520k)? (or 'none' or 'done') [/tmp] Enter
 Mount point for wd0e (size=83160k)? (or 'none' or 'done') [/var] Enter
 Mount point for wd0g (size=6297480k)? (or 'none' or 'done') [/usr] Enter
 Mount point for wd0h (size=4195800k)? (or 'none' or 'done') [/home] Enter
 Mount point for wd0d (size=128520k)? (or 'none' or 'done') [/tmp] done
 No more disks to initialize.

 OpenBSD filesystems:
 wd0a /
 wd0d /tmp
 wd0e /var
 wd0g /usr
 wd0h /home

 The next step *DESTROYS* all existing data on these partitions!
 Are you really sure that you're ready to proceed? [no] y
 newfs: reduced number of fragments per cylinder group from 19840 to 19760 to enl
 arge last cylinder group
 /dev/rwd0a: 155.0MB in 317520 sectors of 512 bytes
 5 cylinder groups of 38.59MB, 2470 blocks, 4992 inodes each
 newfs: reduced number of fragments per cylinder group from 16064 to 15992 to enl
 arge last cylinder group
 /dev/rwd0d: 125.5MB in 257040 sectors of 512 bytes
 5 cylinder groups of 31.23MB, 1999 blocks, 4096 inodes each
 newfs: reduced number of fragments per cylinder group from 10392 to 10344 to enl
 arge last cylinder group
 /dev/rwd0e: 81.2MB in 166320 sectors of 512 bytes
 5 cylinder groups of 20.20MB, 1293 blocks, 2688 inodes each
 /dev/rwd0g: 6149.9MB in 12594960 sectors of 512 bytes
 31 cylinder groups of 202.47MB, 12958 blocks, 25984 inodes each
 /dev/rwd0h: 4097.5MB in 8391600 sectors of 512 bytes
 21 cylinder groups of 202.47MB, 12958 blocks, 25984 inodes each
 /dev/wd0a on /mnt type ffs (rw, asynchronous, local, ctime=Tue Oct 23 00:55:20 2
 007)
 /dev/wd0h on /mnt/home type ffs (rw, asynchronous, local, nodev, nosuid, ctime=T
 ue Oct 23 00:55:20 2007)
 /dev/wd0d on /mnt/tmp type ffs (rw, asynchronous, local, nodev, nosuid, ctime=Tu
 e Oct 23 00:55:20 2007)
 /dev/wd0g on /mnt/usr type ffs (rw, asynchronous, local, nodev, ctime=Tue Oct 23
  00:55:20 2007)
 /dev/wd0e on /mnt/var type ffs (rw, asynchronous, local, nodev, nosuid, ctime=Tu
 e Oct 23 00:55:20 2007)



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

Обратите внимание, что по умолчанию на вопрос "Are you really sure that you are ready to proceed?" (Действительно ли вы уверены в том, что хотите продолжить?) стоит ответ "нет" и вам придется специально подтвердить ваше желание продолжить процесс и отформатировать разделы. Если вы ответите отказом, то процесс прервется и вы выйдете в командную строку и сможете запустить процесс установки заново с помощью команды "install", или просто перезагрузившись с загрузочного диска.

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

4.5.3 - Установка имени хоста



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

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


Enter system hostname (short form, e.g. 'foo'): puffy




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



Пришло время задать сетевые настройки. Вам обязательно необходимо сконфигурировать сеть, если вы собираетесь использовать установку по FTP или NFS, поскольку они будут зависеть от введенной вами информации. Here is a walk through of the network configuration section of the install process. In our example, we will attach one interface (fxp0) to a cable modem, which will be configured using DHCP, the other will be to our internal network, and configured statically.


Configure the network? [yes] Enter
 Available interfaces are: fxp0 xl0.
 Which one do you wish to initialize? (or 'done') [fxp0] xl0
 Symbolic (host) name for xl0? [puffy] Enter
 The media options for xl0 are currently
         media: Ethernet autoselect (100baseTX full-duplex)
 Do you want to change the media options? [no] Enter
 IPv4 address for xl0? (or 'dhcp') 192.168.1.254
 Netmask? [255.255.255.0] Enter
 IPv6 address for xl0? (or 'rtsol' or 'none') [none] Enter
 Available interfaces are: fxp0.
 Which one do you wish to initialize? (or 'done') [fxp0] Enter
 Symbolic (host) name for fxp0? [puffy] Enter
 The media options for fxp0 are currently
         media: Ethernet autoselect (10baseT half-duplex)
 Do you want to change the media options? [no] Enter
 IPv4 address for fxp0? (or 'none' or 'dhcp') dhcp
 Issuing hostname-associated DHCP request for fxp0.
 DHCPDISCOVER on fxp0 to 255.255.255.255 port 67 interval 1
 DHCPOFFER from 73.34.136.1
 DHCPREQUEST on fxp0 to 255.255.255.255 port 67
 DHCPACK from 73.34.136.1
 bound to 69.241.244.76 -- renewal in 1800 seconds.
 IPv6 address for fxp0? (or 'rtsol' or 'none') [none] Enter
 No more interfaces to initialize.
 DNS domain name? (e.g. 'bar.com') [my.domain] example.com
 DNS nameserver? (IP address or 'none') [68.87.77.130 68.87.72.130] Enter
 Use the nameserver now? [yes] Enter
 Default route? (IP address, 'dhcp' or 'none') [dhcp] Enter
 Edit hosts with ed? [no] Enter
 Do you want to do any manual network configuration? [no] Enter




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

Теперь мы должны задать пароль администратора системы (root):


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



Используйте стойкие пароли для учетной записи администратора. Учетные записи других пользователей вы сможете создать после перезагрузки. Из passwd(1):

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



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



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

Затем вам будет предложено выбрать носитель компонентов. Варианты приведены ниже.


Let's install the sets!
Location of sets? (cd disk ftp http or 'done') [cd] Enter
Available CD-ROMs are: cd0.



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

ВНИМАНИЕ! Не все платформы поддерживают все носители. К примеру, OpenBSD/i386 не поддерживает установку через NFS, поэтому такая возможность не указывается и в вариантах выбора.


Available CD-ROMs are: cd0.
Which one contains the install media? (or 'done') [cd0] Enter
Pathname to the sets?  (or 'done') [4.3/i386] Enter



Здесь задается вопрос о местоположении каталога с установочными компонентами, на официальном CD или при использовании образа install43.iso это 4.3/i386/.


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



Пришло время выбрать, какие компоненты мы будем устанавливать. Вы можете ознакомиться с назначением компонентов в следующем разделе. Файлы с компонентами, обнаруженными инсталлятором, выводятся на экран. Ваша задача - выбрать те компоненты, которые вам необходимы. По умолчанию выбраны все компоненты, кроме графической среды X; однако, опытные пользователи, возможно, захотят ограничиться минимальным набором для работы OpenBSD в составе base43.tgz, etc43.tgz и bsd. Большинство же выберет полную установку. В примере ниже - полная установка.


 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 labeled '[x]'.

         [X] bsd
         [X] bsd.rd
         [ ] bsd.mp
         [X] base43.tgz
         [X] etc43.tgz
         [X] misc43.tgz
         [X] comp43.tgz
         [X] man43.tgz
         [X] game43.tgz
         [ ] xbase43.tgz
         [ ] xetc43.tgz
         [ ] xshare43.tgz
         [ ] xfont43.tgz
         [ ] xserv43.tgz
 Set name? (or 'done') [bsd.mp] all

         [X] bsd
         [X] bsd.rd
         [X] bsd.mp
         [X] base43.tgz
         [X] etc43.tgz
         [X] misc43.tgz
         [X] comp43.tgz
         [X] man43.tgz
         [X] game43.tgz
         [X] xbase43.tgz
         [X] xetc43.tgz
         [X] xshare43.tgz
         [X] xfont43.tgz
         [X] xserv43.tgz



Здесь можно использовать разные полезные команды — например, "-x*" отменит выбор всех компонент X, если вы передумали. В нашем случае, мы установим все компоненты. Даже если система будет работать только с некоторыми компонентами, рекомендуется установить полный набор компонентов или хотя бы набор по умолчанию. Подробнее о составе и назначении компонентов можно прочитать здесь.

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


 Set name? (or 'done') [done] Enter
 Ready to install sets? [yes] Enter
 Getting bsd ...
 100% |**************************************************|  6356 KB    00:09 ETA
 Getting bsd.rd ...
 100% |**************************************************|  5003 KB    00:03 ETA
 Getting bsd.mp ...
 100% |**************************************************|  6401 KB    00:04 ETA
 Getting base43.tgz ...
 100% |**************************************************| 42854 KB    00:38 ETA
 Getting etc43.tgz ...
 100% |**************************************************|  1190 KB    00:01 ETA
 Getting misc43.tgz ...
 100% |**************************************************|  2252 KB    00:02 ETA
 Getting comp43.tgz ...
 100% |**************************************************| 77563 KB    01:05 ETA
 Getting man43.tgz ...
 100% |**************************************************|  7530 KB    00:08 ETA
 Getting game43.tgz ...
 100% |**************************************************|  2547 KB    00:01 ETA
 Getting xbase43.tgz ...
 100% |**************************************************|  9450 KB    00:08 ETA
 Getting xetc43.tgz ...
 100% |**************************************************| 76180       00:00 ETA
 Getting xshare43.tgz ...
 100% |**************************************************|  2678 KB    00:05 ETA
 Getting xfont43.tgz ...
 100% |**************************************************| 34745 KB    00:27 ETA
 Getting xserv43.tgz ...
 100% |**************************************************|  8543 KB    00:07 ETA
 Location of sets? (cd disk ftp http or 'done') [done] Enter



Здесь вы можете выбрать другие носители для добавления других компонентов (в том числе собственных компонентов), если необходимо, или ответить 'done', если все необходимые компоненты уже установлены.

4.5.7 - Завершение установки



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


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



(Если позже передумаете, редактируйте /etc/rc.conf.local или /etc/rc.conf.)

Далее у вас будет возможность выбрать, запускать ли при загрузке OpenNTPD. OpenNTPD - легковесный способ синхронизации системных часов вашего компьютера, а его настройки по умолчанию должны устроить большинство пользователей.


NTP server? (or 'none' or 'default') [none] default



If you have a local time server, you can specify it here, if you chose "default", OpenNTPD will use pool.ntp.org, a huge collection of free access time servers. (Если позже передумаете, редактируйте /etc/rc.conf.local или /etc/rc.conf.)

На большинстве платформ вам также будет задан вопрос о необходимости запуска X. Если вы ответите 'Y', в /etc/sysctl.conf будут внесены строки machdep.allowaperture=1 или machdep.allowaperture=2, в зависимости от вашей платформы. На некоторых платформах этого вопроса вообще не будет. Если вам не требуется запуск X или вы не уверены, отвечайте 'N', внести изменения с помощью редактирования /etc/sysctl.conf потом не проблема. Также есть потенциальная польза в плане безопасности от выключения драйвера апертуры xf86(4), поскольку движки современных графических карт могут использоваться для изменения памяти без ведома процессора.


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



Затем вам будет задан вопрос об использовании консоли на последовательном порте (com-порте) вместо стандартной клавиатуры и монитора. При ответе "yes" и ответе на пару простых вопросов в /etc/boot.conf и /etc/ttys будут внесены необходимые изменения. Большинство же пользователей выберут ответ no.


Change the default console to com0? [no] Enter



Последняя задача для вас - выбор временной зоны. В зависимости от местонахождения вашей машины могут быть несколько правильных ответов на этот вопрос. К примеру, мы выбираем US/Eastern, но можно было бы также использовать EST5EDT или US/Michigan с тем же результатом. Ввод ? выведет справку о возможных ответах.


 Saving configuration files......done.
 Generating initial host.random file ......done.
 What timezone are you in? ('?' for list) [Canada/Mountain] ?
 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       zone.tab
 What timezone are you in? ('?' for list) [Canada/Mountain] 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
 Select a sub-timezone of 'US' ('?' for list): Eastern
 Setting local timezone to 'US/Eastern'...done.



Если вы очень сильно озабочены точностью времени, ознакомьтесь с этим документом.

Последний этап установки — создание каталога /dev (что может потребовать некоторого времени, особенно для систем с небольшим ОЗУ), и записывается загрузочный блок.


 Making all device nodes...done.
 Installing boot block...
 boot: /mnt/boot
 proto: /usr/mdec/biosboot
 device: /dev/rwd0c
 /usr/mdec/biosboot: entry point 0
 proto bootblock size 512
 /mnt/boot is 3 blocks x 16384 bytes
 fs block shift 2; part offset 3069360; inode block 24, offset 3624
 using MBR partition 1: type 166 (0xa6) offset 3069360 (0x2ed5b0)
 done.

 CONGRATULATIONS! Your OpenBSD install has been successfully completed!
 To boot the new system, enter halt at the command prompt. Once the
 system has halted, reset the machine and boot from the disk.
 # halt
 syncing disks... done

 The operating system has halted.
 Please press any key to reboot.

(
Здесь установка уже завершена и предлагается остановить машину
командой halt, чтобы затем перезагрузиться с винчестера.
Собственно, на показываемом фрагменте вывода эта команда
уже и вводится.
)





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


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



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

Вы можете использовать такой трюк для произведения некоторых "пред-перво-загрузочных" настроек:


  # /mnt/usr/sbin/chroot /mnt



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


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



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

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

    Добавление пользователей в OpenBSD
    Сетевые настройки
    Руководства (маны) по командам
    Руководства OpenBSD в Интернете
    Система пакетов и портов OpenBSD для установки ПО



Напоследок...



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


4.6 - Какие файлы необходимы для установки?



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

    bsd — Это ядро. Необходим
    bsd.mp — Ядро для многопроцессорных (SMP) машин (только для некоторых платформ)
    bsd.rd — Ядро с виртуальным RAM-диском
    base43.tgz — Базовая система OpenBSD Необходим
    etc43.tgz — Содержит все файлы в /etc Необходим
    comp43.tgz — Содержит компиляторы и необходимые для разработки инструменты, заголовочные файлы и библиотеки. Рекомендуется
    man43.tgz — Руководства (маны) Рекомендуется
    misc43.tgz — Разная информация, документация по настройке
    game43.tgz — Игры для OpenBSD
    xbase43.tgz — Базовая установка X11
    xetc43.tgz — Содержит конфигурационные файлы /etc/X11 и /etc/fonts
    xfont43.tgz — Содержит сервер шрифтов и шрифты X11
    xserv43.tgz — Серверы X11
    xshare43.tgz — Руководства, установки локали, заголовочные файлы и др. для X

Пакеты etc43.tgz и xetc43.tgz не устанавливаются при обновлении, только при полной установке, так что все внесенные вами когда-либо изменения не будут утеряны. Вам придется вручную отредактировать /etc, /dev и /var.

Даже если вы не планируете запускать Х, некоторые пакеты сторонних разработчиков требуют установленного xbase43.tgz. Обычно достаточно только xbase43.tgz, остальные Х-компоненты не требуются.


4.7 - Сколько свободного места потребуется для установки OpenBSD?



Очевидно, ответ на данный вопрос зависит от предназначения вашей системы. Однако, приведенные данные могут пригодиться как исходные:


(root)             60 МБ
/usr               320 МБ (без X) или 550MB (с X)
/var               25 МБ
/tmp               50 МБ
swap               32 МБ



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

Однако, имейте в виду:

    Это минимальные значения. Сегодня дисковое пространство относительно дешево, поэтому ставить перед собой задачу максимально ужать систему вряд ли имеет смысл. Для специальных задач, цифры, указанные выше, могут быть еще уменьшены, но для этого придется поэкспериментировать.
    Эти значения НЕ учитывают дерево портов.
    Если вы будете устанавливать большое количество приложений увеличьте раздел /usr. Конечно, насколько увеличить, зависит от приложений.
    Для систем, обрабатывающих большое число почтовых сообщений или веб-страниц (хранящихся, соответственно, в /var/mail и /var/www) увеличьте раздел /var или выделите для необходимых каталогов отдельные разделы.
    Для многопользовательской системы, генерирующей большие журнальные файлы (лог-файлами) вам также не помешает значительно увеличить /var или создать отдельный раздел /var/log.
    Если в ваших планах стоит сборка ядра и системы из исходников, вам стоит значительно увеличить /usr, как минимум 4 ГБ не помешает.
    Сборка некоторых портов из исходников может потребовать огромного пространства в разделах /usr и /tmp. Это еще одна из причин, по которой мы рекомендуем пользоваться прекомпилированными пакетами.
    Раздел /tmp используется, в частности, при сборке портов, так что его размер зависит от ваших задач. Большинству, скорее всего, более чем достаточно 50 МБ, но некоторым большим приложениям может потребоваться 100 МБ или даже больше в /tmp.
    The 'b' partition of your root drive automatically becomes your system swap partition. Many people follow an old rule of thumb that your swap partition should be twice the size of your main system RAM. This rule is nonsense. On a modern system, that's a LOT of swap, most people prefer that their systems never swap. You don't want your system to ever run out of RAM+swap, but you usually would rather have enough RAM in the system so it doesn't need to swap. If you are using a flash device for disk, you probably want no swap partition at all. Use what is appropriate for your needs. If you guess wrong, you can add another swap partition in /etc/fstab or swap to a file later.
    Разделы swap и /var используются для дампов ядра в случаях аварии (crash(8)). Если это для вас необходимо, имеет смысл сделать раздел свопа чуть больше, чем объем ОЗУ на вашей системе. После перезагрузки savecore(8) сделает попытку записать содержимое раздела подкачки в файл /var/crash. Таким образом, еще раз, если это вам необходимо, то /var должен быть достаточным для записи файлов дампа. Но будьте реалистами — немногие из разработчиков возьмутся за изучение вашего файла дампа на 1 ГБ, так что это все имеет смысл только для изучения дампа лично вами.
    At least some editors use /var/tmp for scratch space, and this often needs to be as big or bigger than the largest file you edit. If you plan on editing 500M files, your /var or /var/tmp partition will need to be much larger than you might have planned on.

Использованию отдельных файловых систем, вместо размещения всего в одном-двух разделах, есть несколько причин:

    Безопасность: Для некоторых файловых систем вы можете установить опции монтирования 'nosuid', 'nodev', 'noexec', 'readonly' и т.д. Это автоматически делается инсталлятором при выделении описанных выше разделов.
    Устойчивость: Пользователь или неграмотно написанное приложение может заполнить весь раздел мусором, если у него есть такие права. Критичные для работы системы приложения, использующие другие разделы, не будут прерваны.
    Производительность: Файловая система при частых записях может быть фрагментирована. (К счастью, ФС ffs, используемая OpenBSD, не склонна к сильной фрагментации)
    Целостность: Если ФС в одном из разделов будет, по той или иной причине, повреждена, то это не приведет к разрушению данных в других разделах.
    Размер: Многие машины имеют ограничения на область диска, откуда загрузчик сможет загрузить ядро. Иногда этот размер очень мал (504 МБ для старых 486), иногда он побольше (например, 2 ГБ, 8 ГБ или 128 ГБ для i386). Но так как ядро физически может расположиться в любом месте корневого раздела, необходимо, чтобы весь корневой раздел помещался в это ограничение. Подробнее это описано в этом разделе. Хорошим советом будет делать корневой раздел не более 2 ГБ, если вы, конечно, не знаете точно, что ваша платформа (и конкретная машина) может работать с большим (или меньшим) разделом.

Еще некоторые размышления по поводу разбиения:

    Для первого знакомства и экспериментов с системой создание одного большого раздела / и swap может быть вполне логичным, так как вы пока еще не знаете, сколько места где будете использовать. В этом случае вы лишитесь некоторых средств безопасности OpenBSD, которые требуют раздельных файловых систем для /, /tmp, /var, /usr и /home. Однако, вам, наверное, не следует использовать в реальной работе вашу первую установленную OpenBSD.
    Подключенная к Интернет или другому источнику угроз безопасности система должна иметь отдельный /var (а, может, и отдельный /var/log) для ведения журнала.
    Раздел /home не будет лишним. Появилась новая версия ОС? Стирайте и переустанвливайте все, но оставьте нетронутым /home. Однако, не забудьте скопировать в этот раздел ваши конфигурационные файлы!
    Отдельные разделы для любых применений, которые могут накапливать большое количество файлов, которые затем надо будет удалить, могут быть быстрее переформатированы и созданы заново, нежели очищены. Смотрите FAQ сборки из исходников для примера (/usr/obj).
    Если вы, по какой-либо причине, желаете пересобирать систему из исходников, исходники будут размещены в /usr/src. Если вы не создали отдельный раздел /usr/src, убедитесь в том, что /usr имеет достаточно свободного пространства.
    Часто забываемый факт: вы не обязаны распределять все имеющееся на диске пространство сразу при установке системы. Так как нынче нелегко найти диск менее чем на 20 ГБ, имеет смысл оставить какой-то кусочек винчестера нераспределенным. Как только вы перестанете укладываться в какой-либо раздел, вы можете создать новый раздел в неиспользованном пространстве, скопировать имеющийся раздел в новый, изменить /etc/fstab так, чтобы он указывал на новый раздел, перемонтировать, и дело сделано — вы увеличили раздел!
    Сделав очень близкую к требуемому минимуму разбивку вы, скорее всего, пожалеете об этом, когда придет время обновлять систему.
    Создавая слишком большие разделы, помните, что выполнение проверки файловой системы с помощью fsck(8) требует примерно 1 МБ ОЗУ на 1 ГБ файловой системы, и может сделать проверку очень медленной или даже невозможной на старых и медленных системах (обратитесь к этому разделу).
    Если вы разрешаете пользователям запись в /var/www (например, для домашних веб-страничек), возможно, стоит разместить этот каталог в отдельном разделе, чтобы использовать квоты для ограничения доступного им места. Тем самым, если пользователи заполнят этот раздел, это никак не повлияет на другие части вашей системы.
    You may also want to create an /altroot partition, as described in daily(8). This can make a daily copy of your / partition, giving you an extra copy of your kernel and /etc configuration files should something happen to your root partition. Obviously, the /altroot partition needs to be at least as big as /. If you have a second drive and have something else duplicating the rest of your disk, either software raid(4)  or a periodic copy using dump(8)/restore(8), this disk can be bootable after the removal of the primary disk.

4.8 - Мультизагрузка OpenBSD/i386



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

Only one of the four primary MBR partitions can be used for booting OpenBSD (i.e., extended partitions will not work).

Расскажем о нескольких способах мультизагрузки:


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



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


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



Если вы редко пользуетесь OpenBSD (или не хотите чтобы другие пользователи компьютера заметили, что что-то изменилось), подумайте об использовании загрузочной дискеты. Просто возьмите одну из стандартных загрузочных дискет OpenBSD, и создайте файл /etc/boot.conf (да, вам также придется создать создать на дискете каталог /etc) следующего содержания:


   boot hd0a:/bsd



чтобы загрузиться с жесткого диска 0, раздела OpenBSD 'a' и с ядром /bsd. Вы можете также загрузиться и с другого диска, например: "boot hd2a:/bsd" для загрузки с третьего жесткого диска. Для загрузки OpenBSD вставьте дискету и перезагрузитесь. Для загрузки другой ОС - извлеките дискету и перегрузитесь.

В этом случае программа 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). После завершения установки, вы можете скопировать ее в файл, используя 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, установленную на второй диск.


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



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


OpenBSD и Linux (i386)



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


Time zone issues



OpenBSD expects the computer's real-time clock to be set to UTC (Universal Coordinated Time). Some other OSs expect the real-time clock to be set to local time. Obviously, this can create a bit of a problem if you are using both OSs on the same computer. One or the other is most likely going to have to be adapted. More info on doing this is in FAQ 8 - Why is my clock off by several hours?


4.9 - Отправка вашего dmesg на dmesg@openbsd.org после установки



Напоминаем, что разработчикам OpenBSD очень важно знать, какая аппаратура работает, а какая не очень.

Выдержка из /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 | 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!



Make sure you send email from an account that is able to also receive email so developers can contact you if they have something they want you to test or change in order to get your setup working. It's not important at all to send the email from the same machine that is running OpenBSD, so if that machine is unable to receive email, just


$ dmesg | mail your-account@yourmail.dom



and then forward that message to

dmesg@openbsd.org

where your-account@yourmail.dom is your regular email account.

Внимание! Посылайте только dmesg из ядра GENERIC. Пользовательские ядра без каких-либо драйверов не очень помогут в работе.
If you have a supported multiprocessor system and normally run the GENERIC.MP kernel, it is helpful to developers to see the dmesg output of both the GENERIC kernel and the GENERIC.MP kernel, so please send both of them in separate emails.
Также не забывайте, что на компьютерах, принимающих вашу почту, используется система защиты от спама - spamd. Поэтому может пройти некоторое время, прежде чем сервер примет ваше сообщение. Немного терпения, через полчаса-час письмо дойдет.

The method above is very easy, but if you have chosen not to configure mail on your OpenBSD system, you should still send your dmesg to the developers. Save your dmesg output to a text file.


$ dmesg > ~/dmesg.txt



Then transfer this file (using FTP/scp/floppydisk/carrier-pigeon/...) to the system you normally use for email. Since the dmesg output you send in is processed automatically, be sure to check the following when using alternate email clients/systems:

    Configure your email client to send messages as plain text; do not use HTML-formatted email.
    Turn off any forced line break feature. Many email clients are configured to insert line breaks at 72 columns (the norm for mailing lists).
    Make sure your email client does not reformat messages into "text-flow" nonsense.
    Do not send the dmesg output as file attachment. Put the dmesg output into the body of the message.


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



"О нет! Я забыл установить нужный мне компонент при инсталляции!"

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


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



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


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



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


# cd /
# tar xzvpf comp43.tgz



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

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

If you are installing the xbase file set on your system for the first time using tar(1) and without rebooting, the shared library cache must be updated after the installation using ldconfig(8). To add all the X libraries to the cache:


   # ldconfig -m /usr/X11R6/lib



Alternatively, you can just reboot your system, and this will be done automatically by the rc(8) startup script.


4.3 - Что такое '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 2.10
 boot> boot hd0a:/bsd.rd
. . . normal boot to install . . .



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

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


4.12 - Частые проблемы при установке




4.12.1 - Мой Compaq определяет только 16 МБ ОЗУ



На некоторых Compaq-ах имеется проблема, в результате которой объем памяти не определяется полностью загрузчиком OpenBSD второго уровня и определяется и используется OpenBSD только 16 МБ. Это может быть устранено созданием/корректированием /etc/boot.conf или вводом команды при приглашении "boot>" до загрузки OpenBSD. Если в вашей машине 64 МБ ОЗУ, а OpenBSD определяет только первые 16M, то команда будет следующей:


   machine mem +0x3000000@0x1000000


для добавления 48 МБ (0x3000000) после первых 16 МБ (0x1000000). Как правило, при наличии такой проблемы, стоит попробовать команду выше в boot> приглашении при загрузке с дискеты/CD, загрузитесь, перегрузитесь и создайте /etc/boot.conf с указанной командой. При последующих загрузках вся ОЗУ будет использоваться уже корректно.

Имеется информация, что перепрошивка ПЗУ устраняет проблемы на некоторых системах.


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



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

    Ни один раздел не помечен fdisk(8) как активный. Для решения перезагрузитесь с загрузочного носителя, и установите флаг активности раздела (сделайте загрузочным). Смотрите также здесь и здесь.
    Загрузчик не был записан на диск. При ответе "Y" на вопрос "Use entire disk for OpenBSD?" при установке, или при использовании команды "reinit" fdisk(8), загрузочная запись OpenBSD устанавливается в качестве главной загрузочной записи (MBR) диска; в других случаях существующий код в MBR ни коим образом не затрагивается. Это становится проблемой, когда никакого другого загрузочного кода на диске и не было. Одно из решений — загрузка с установочного носителя еще раз, выход в командную строку и использование fdisk(8) для изменения кода MBR. Команда следующая:


        # fdisk -u wd0


     Внимание! Команда "update" в интерактивном ("-e") режиме fdisk не запишет метку загружаемого диска, которая требуется, чтобы диск был загрузочным с точки зрения BIOS.
    В некоторых редких слуаях могут быть проблемы с загрузчиком второго уровня. Переустановка загрузчика второго уровня обсуждается здесь.



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



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

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


4.12.4 - При установке выводится "Failed to change directory"



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


Do you want to see a list of potential FTP servers?  [yes] Enter
Getting the list from 192.128.5.191 (ftp.openbsd.org)... FAILED
Failed to change directory.
Server IP address or hostname?


Это нормальный и ожидаемый результат в стадии пре-релиза (pre-release). Инсталлятор пытается получить список FTP с основного сервера FTP из каталога, который не будет доступен до выхода релиза, что и приводит к этому сообщению.

Просто используйте список зеркал FTP для нахождения лучшего для вас FTP и вручную задайте его при запросе.

Внимание! Такого не должно быть, если вы устанавливаете релизную версию (-release) или устанавливаетесь с CD.


4.12.5 - Таблица разделов диска повреждена или пуста!



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

Несмотря на то, что такая конфигурация может работать, она может представлять проблемы в обслуживании и должна быть исправлена. Обычно, для устранения надо перестроить файловые системы на диске с нуля (хотя, если вы ДЕЙСТВИТЕЛЬНО знаете что делаете, вы можете обойтись перестройкой таблицы разделов и MBR, потеряв только первый раздел OpenBSD на диске).


4.13 - Настройка установки "под себя"




Файл siteXX.tgz



Программа установки/обновления OpenBSD позволяет выбрать пользовательский компонент "siteXX.tgz", где XX - версия релиза (например, 43). Компонент siteXX.tgz, как и другие компоненты, должен представлять собой сжатый gzip(1) и упакованный tar(1) архив созданый в '/' и который можно распаковать так же, как и другие компоненты, с помощью tar с ключами xzphf. Этот компонент устанавливается последним, после установки всех остальных компонентов.

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

You can also create and use hostname-specific install sets, which are named siteXX-<hostname>.tgz, for example, "site43-puffy.tgz". This allows easy per-host customized installations, upgrades, or disaster recovery.

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

    Создание siteXX.tgz, который содержит все изменения сделанные после первой установки OpenBSD. Тогда, при необходимости переустановки системы вы просто выбираете siteXX.tgz во время переустановки и все ваши изменения будут внесены в новую систему.
    Создание машинно-ориентированных каталогов, в которых хранятся файлы, siteXX.tgz необходимые для конкретных машин. Установка на машины (например, с различными видеокартами) относящиеся к одной категории завершается установкой необходимого siteXX.tgz.
    Поместите изменяемые обычно под одинаковые или схожие применения файлы в компонент siteXX.tgz — файлы /etc/skel, /etc/pf.conf, /var/www/conf/httpd.conf, /etc/rc.conf.local, и т.д.



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



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

Внимание! install.site должен находиться в наборе siteXX.tgz, а upgrade.site может быть помещен в chroot перед обновлением или также может находиться в наборе siteXX.tgz.

Эти скрипты могут использоваться для многих применений:

    Удаление файлов после установки/обновления, если они вам не нужны на вашей системе.
    Удаление/обновление/установка пакетов, в соответствии с вашими потребностями.
    Создание резервной копии/архива новой системы перед подключением к Сети.
    Использование rdate(8) для установки системного времени.

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

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


4.14 - Как мне установить несколько схожих систем?



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


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



Смотрите вышеописанное.


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



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


Образ диска



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

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


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



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

    Дискета: На загрузочных дисках и CD содержатся необходимые инструменты для записи dmesg на дискету в формате MSDOS, которую можно потом прочитать на другой машине. Вставьте отформатированную дискету в привод и выполните:


      mount -t msdos /dev/fd0a /mnt
      dmesg >/mnt/dmesg.txt
      umount /mnt


     Если есть другая машина с OpenBSD, можно записать на OpenBSD-совместимый диск -- чаще всего на загрузочной дискете достаточно места для записи dmesg. Не используйте ключ "-t msdos" в этом случае.

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

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

     

i386



     В приглашении командной строки после загрузки введите


       boot> set tty com0


     OpenBSD будет использовать первый последовательный порт (как правило COM1 или COMA в документации на ПК) в качестве консоли. Скорость по умолчанию 9600 бод/с.

     

Sparc/Sparc64



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


      ok setenv input-device ttya
      ok setenv output-device ttya
      ok reset


    FTP: Если есть возможность корректно внести сетевые настройки, то можно использовать клиент ftp(1) с загрузочного диска или CD для отправки вывода dmesg на локальный FTP сервер, откуда вы потом сможете его забрать.

Перевод соответствует $OpenBSD: faq4.html,v 1.263 2008/04/30 21:24:58 nick Exp $