[OpenBSD]

[Índice da FAQ] [Seção 3 - Primeiros passos com o OpenBSD] [Seção 5 - Construção do Sistema a partir do Código Fonte]

4 - Guia de Instalação do OpenBSD 4.7


Conteúdo


4.1 - Visão geral do processo de instalação do OpenBSD

O OpenBSD há muito tempo é respeitado pelo seu processo de instalação simples e direto, consistente entre todas as plataformas.

Todas as plataformas utilizam um procedimento de instalação parecido, no entanto existem alguns pequenos detalhes diferentes em certas plataformas. Em todo caso, é aconselhável que você leia o documento INSTALL, específico da sua plataforma, no diretório plataforma do CD-ROM ou no sítio FTP (por exemplo, i386/INSTALL.i386, macppc/INSTALL.macppc ou sparc/INSTALL.sparc).

O instalador do OpenBSD é um kernel especial com vários utilitários e scripts de instalação embutidos em um disco de RAM pré-carregado. Após esse kernel ser inicializado, o sistema operacional é extraído de alguns arquivos tar(1) (.tgz) de uma fonte outra que esse disco de RAM pré-carregado. Existem diversas maneiras de inicializar esse kernel de instalação:

Nem todas as plataformas suportam todos os métodos de inicialização: Todas as plataformas podem usar um bsd.rd para reinstalar ou fazer uma atualização de versão.

Uma vez que o kernel estiver carregado, você possui diversas opções para obter os pacotes de arquivos de instalação. Lembre-se que nem todas as plataformas suportam todas as opções.

4.2 - Lista de verificações antes da instalação

Antes de você começar a instalação, você deve ter uma ideia do que precisa para terminá-la. Você deve conhecer pelo menos os seguintes itens:

4.3 - Como criar uma mídia inicializável de instalação do OpenBSD

Como exemplo, nós vamos ver as imagens de instalação disponíveis para as plataformas i386 e sparc.

A plataforma i386 possui seis imagens de disco, separadas para a instalação, que podem ser escolhidas:

A plataforma sparc possui quatro imagens de disco, separadas para instalação, que podem ser escolhidas:

Em plataformas modernas a melhor recomendação é utilizar imagens de inicialização de CD-ROM, já que em algumas plataformas "maiores" (tais como amd64, sparc64) as imagens de disquete tiveram/têm um punhado de drivers e utilitários removidos, o que pode fazer da instalação uma tarefa muito mais difícil. Plataformas mais antigas, tais como i386 e sparc, ainda são de fácil instalação por disquete.

4.3.1 - Criação de um CD-ROM

Você pode criar um CD-ROM usando o arquivo cd47.iso ou o install47.iso. Os detalhes exatos ficam por conta do leitor, que deve decidir quais ferramentas usar para a criação do CD.

No OpenBSD você pode criar um CD a partir de uma imagem ISO usando o cdio(1):
  # cdio tao cd47.iso

A maioria dos gravadores de CD vendidos para os sistemas Windows e Macintosh vêm com um software que pode queimar imagens ISO em mídias vazias. Se o seu não possui um desses softwares, saiba que existem vários aplicativos gratuitos que podem fazer isso para você.

Outros sistemas do tipo Unix utilizam aplicativos como o cdrkit.

4.3.2 - Criação de disquetes no Unix

Os detalhes exatos e os nomes de dispositivos podem variar de variante para variante do Unix; utilize o que é apropriado para o seu sistema.

Para criar um disquete formatado, use o comando fdformat(1) tanto para formatar quanto para verificar blocos defeituosos.

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

Se a sua saída for parecida com a do exemplo acima, então o seu disco está OK. No entanto, se você não vê TODOS os "V"ês, então o disco provavelmente está com problemas; tente outra vez com um disco novo.

Para escrever o arquivo de imagem no disco, utilize o dd(1). Um exemplo de uso do dd(1):

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

Uma vez que a imagem foi escrita, verifique com o comando cmp(1) para ter certeza de que a imagem copiada é igual a original. Se o disquete for igual à imagem original, você verá somente um outro prompt.

  # cmp /dev/rfd0c floppy47.fs

4.3.3 - Criação de disquetes no Windows

Para preparar o disquete no Windows, primeiramente use uma ferramenta nativa para formatar o disquete, verificando se o disco não contém setores ruins.

Para escrever a imagem de instalação no disquete preparado você pode usar o ntrw.exe, que pode ser baixado a partir do diretório tools em qualquer um dos espelhos FTP.

Exemplo de uso do ntrw:
  C:\> ntrw floppy47.fs a:
  3.5", 1.44MB, 512 bytes/sector
  bufsize is 9216
  1474560 bytes written

4.4 - Inicialização da mídia de instalação do OpenBSD

Inicialização em i386/amd64

Inicializar uma mídia de instalação em plataformas i386 e amd64 não é nenhuma novidade para muitas pessoas. Seu sistema tem que ser instruído a inicializar a partir da mídia que você escolheu utilizar; isso normalmente é feito através de uma opção de configuração no BIOS. Se você quer inicializar a partir do CD, o BIOS do seu sistema deve ser capaz de fazer isso e deve estar configurado para inicializar a partir do CD. Alguns BIOS antigos não possuem essa opção, nesse caso você deve utilizar um disquete para inicializar a imagem de instalação. Não se preocupe; mesmo que você use o disquete para inicializar, você ainda pode instalar pelo CD se ele é suportado pelo OpenBSD (ou seja, praticamente todos os drives IDE).

Você também pode instalar inicializando o bsd.rd a partir de uma partição existente do OpenBSD, ou pela rede com o processo de inicialização PXE.

Inicialização em sparc/sparc64

NOTA: Na plataforma sparc64 somente as máquinas SBus (Ultra 1, Ultra 2) são inicializáveis a partir do disquete.

O sistema precisa estar em um prompt ROM monitor, que tipicamente se parece com "ok ". Se você está usando um teclado da Sun, pressione e solte "STOP" enquanto digita "A". Se você está usando um console serial, um BREAK deve levar você de volta ao prompt monitor.

Utilize o seguinte comando para inicializar a partir do disquete:

  ok boot floppy

Normalmente você pode inicializar a partir do drive de CD-ROM de um sistema Sun digitando 'boot cdrom' no prompt de inicialização:

  ok boot cdrom

4.5 - Instalação simples

O novo instalador do OpenBSD é projetado para instalar e configurar o OpenBSD em uma configuração padrão útil e com pouca intervenção do usuário. De fato, frequentemente você pode simplesmente digitar ENTER um determinado número de vezes para conseguir uma boa instalação do OpenBSD, e mover suas mãos para o resto do teclado apenas para especificar a senha do root.

O instalador cria um plano de particionamento baseado no tamanho do seu disco rígido. Embora este NÃO será um layout perfeito para todas as pessoas, ele fornece um bom ponto de partida e uma boa estratégia geral para determinar o que você precisa.

Nós vamos começar com uma instalação simples, com discussões breves das opções fornecidas e, utilizando a mágica de links de hipertexto, permitir que você leia mais sobre os tópicos que lhe interessam e explore suas opções.

As notas de instalação para cada plataforma estão nos CDs de instalação e nos servidores FTP, no arquivo INSTALL.<plat>, onde <plat> é a sua plataforma; por exemplo, i386.

4.5.1 - Início da instalação

Qualquer que seja o meio de inicialização, agora é hora de usá-lo. Durante o processo de inicialização, o kernel e todos os programas usados para a instalação do OpenBSD são carregados na memória. Assim que o kernel de instalação estiver inicializado, a mídia de inicialização não é mais necessária, pois tudo executa a partir do disco de RAM. Neste ponto você pode realmente remover o CD ou disquete que você usou para inicializar, assumindo que você não precisa do CD para obter os arquivos de instalação.

Em qualquer ponto durante a instalação do OpenBSD você pode terminar o processo de instalação em andamento pressionando CTRL-C, e reinicializar novamente a instalação digitando install no prompt de comando sem reinicializar a máquina. Você também pode especificar um "!" na maioria dos lugares na instalação para obter um prompt de shell, e então terminar a execução do shell para voltar ao instalador.

Quando a sua inicialização é bem-sucedida, você verá várias mensagens de texto rolando em sua tela. Esse texto, em azul e branco em várias arquiteturas, é o dmesg, o kernel mostrando a você quais dispositivos foram encontrados e como eles estão enganchados em outros dispositivos. Uma cópia desse texto é salva em /var/run/dmesg.boot.

Então você verá o seguinte:

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

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

E com isso nós temos nossa primeira pergunta. Você tem as três opções mostradas:

Assumimos que você escolheu "(I)nstall" aqui.

4.5.2 - As perguntas da instalação

Agora começamos a receber as perguntas que definirão como o sistema é configurado. Você notará que, na maioria dos casos, todas as questões são feitas antes, então a instalação toma o lugar. Se você tem um computador lento ou uma conexão lenta com a Internet, você pode responder estas questões, sair de perto do computador, voltar e ter que somente reinicializar o sistema para completar a instalação.

  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.

  Terminal type: [vt220] Enter

Na maioria dos casos o tipo de terminal padrão é o mais apropriado; no entanto, se você está usando um console serial para a instalação, não escolha o padrão, responda adequadamente.

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

Esse valor, junto com o nome de domínio DNS (especificado abaixo), será salvo no arquivo /etc/myname, que é utilizado durante a inicialização normal para definir o nome de máquina do sistema. Se você não definir um nome de domínio do sistema, o valor padrão 'my.domain' será utilizado.

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

vlan0 é a interface virtual VLAN. Para os nossos propósitos, vamos ignorar essa opção e nos focar nas interfaces físicas. Se você tem múltiplas interfaces físicas, elas serão listadas aqui. Note que elas são identificadas pelo nome do driver, e não como dispositivos Ethernet genéricos. Nesse caso, "fxp0" refere-se ao primeiro dispositivo que está utilizando o driver fxp(4), fxp1 seria o segundo dispositivo, etc. Mais informações sobre nomeação de dispositivos estão na FAQ 6.

Após selecionar o dispositivo que você quer configurar, você agora vai configurá-lo. Em muitos casos você quer configurá-lo usando 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 configura o endereço IP, a máscara de sub-rede, o gateway padrão, o nome de domínio DNS e os servidores DNS. Se você não usa DHCP, você precisa especificar todas essas coisas manualmente; veja abaixo a discussão mais detalhada.

Se você tem alguma configuração de IPv6 para fazer ou existem outras interfaces para configurar (ou você não gostou da forma como configurou a interface anterior), você pode fazê-la agora, mas em nosso caso já estamos satisfeitos:

  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 in.nickh.org
  Using DNS nameservers at 192.168.1.252
  Do you want to do any manual network configuration? [no] Enter

Se você responder "yes" para a pergunta "manual network configuration", você será colocado em um prompt de shell onde você pode configurar qualquer outra coisa que precisa de configuração, então digite "exit" para retornar ao programa de instalação.

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

Utilize uma senha segura para a conta do root, e lembre-se: existem vários atacantes na Internet tentando acessar o seu computador, e eles tentarão um monte de senhas comuns que as pessoas acham que são senhas realmente seguras.

Mais tarde você terá uma chance de criar uma conta administrativa e desativar o acesso (SSH) remoto para a conta do root, mas você ainda quer uma boa senha na sua conta do root.

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

Geralmente você vai querer o sshd(8) funcionando. Se o seu uso do sistema não necessitar do sshd(8), há uma pequena vantagem teórica de segurança nisso.

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

Você terá a opção de executar o OpenNTPD, a implementação NTP do OpenBSD. O OpenNTPD é uma maneira simples de manter o relógio do seu sistema corretamente sincronizado. A configuração padrão, utilizando pool.ntp.org, utiliza um grande número de servidores de horas de acesso gratuito espalhados pelo mundo.

Uma razão pela qual você talvez NÃO queira executar o ntpd(8) é se você está executando um sistema em inicialização dupla, com um outro SO que não utiliza o relógio de hardware definido como GMT, e você não quer que o OpenBSD altere o horário para o seu outro SO.

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

Nem todas as plataformas perguntam se você espera executar o X, e são aquelas que não requerem que uma variável do sysctl seja definida para utilizar o X. Responder "y" aqui modificará o /etc/sysctl.conf para incluir a linha machdep.allowaperture=1 ou machdep.allowaperture=2, dependendo da sua plataforma.

Se você não pretende executar o X ou não tem certeza, responda 'N'; se mudar de ideia basta editar o arquivo /etc/sysctl.conf. Existe uma vantagem de segurança em deixar o driver xf86(4) desabilitado, pois os motores gráficos das placas de vídeo dos computadores modernos podem potencialmente serem usados para alterar a memória, sem controle do processador.

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

xdm(1) iniciar o ambiente X na inicialização do sistema. Nós recomendamos fazer isso durante a instalação, só se você estiver certo que irá funcionar o X por padrão no seu sistema. Caso contrário, configure o X antes de configurar o xdm(1).

  Change the default console to com0? [no] Enter

Se você deseja configurar um console serial em vez do padrão do seu sistema (usualmente um teclado e um monitor), essa é sua chance. Se você mudar o padrão para "y", um prompt será exibido para você definir a taxa de bits. Note que, para consoles seriais, o mais rápido nem sempre é o melhor; utilizar o padrão da sua plataforma é altamente recomendado.

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

Você agora tem a oportunidade de criar um OUTRO usuário, além do root, para a manutenção do sistema. Esse usuário será um membro do grupo "wheel", assim você pode executar o su(1) e um prompt será exibido para receber uma senha.

Note que se você quer criar o usuário, especifique o nome do usuário, e não "y" ou "yes".

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

O OpenBSD assume que o relógio em tempo real (RTC - "Real-Time Clock") do seu computador está configurado como GMT, mas você também tem que especificar em qual fuso horário você está. Podem existir várias respostas válidas para sua localização física. Pressionar "?" no prompt ajuda a guiá-lo para encontrar um nome de fuso horário válido.

Note que o instalador frequentemente vai determinar corretamente o seu fuso horário, e então você pode simplesmente digitar "Enter".

Mais informações sobre a configuração do fuso horário podem ser encontradas aqui.

4.5.3 - Configuração dos discos

Nota importante: Usuários com um disco rígido grande (maior do que era comum quando seu computador foi fabricado) talvez queiram ver esta seção antes de continuar.

Configurar apropriadamente o layout do seu disco é provavelmente a parte mais difícil de uma instalação do OpenBSD.

A configuração de discos no OpenBSD pode variar entre as plataformas. Para i386, amd64, macppc, zaurus e armish, a configuração dos discos é feita em duas etapas. Primeiro a fatia do disco rígido referente ao OpenBSD é definida utilizando o fdisk(8), então essa fatia é subdividida em partições OpenBSD usando o disklabel(8).

Alguns usuários se confundem com a terminologia utilizada aqui. Isso acontece porque nós estamos usando a palavra "partição" em dois sentidos diferentes. Existem duas camadas de particionamento nas plataformas do OpenBSD citadas acima, a primeira, que pode ser considerada o particionamento de Sistema Operacional, permite que múltiplos SOs em um computador definam seus espaços no disco, e a segunda, onde a partição OpenBSD é subparticionada em sistemas de arquivos individuais. A primeira camada é visível como uma partição do disco para o DOS, Windows e qualquer outro SO que use esse sistema de layout de disco, a segunda camada de particionamento somente é visível pelo OpenBSD e SOs que podem ler diretamente o seu sistema de arquivos.

O novo instalador do OpenBSD tenta tornar mais fáceis as tarefas de definição de layout de disco através de um padrão equilibrado para uso "geral". Note que muitas pessoas ainda quererão personalizar o padrão, ou usar seu próprio layout de disco, mas novos usuários certamente devem começar com esta configuração até que vejam a necessidade de uma diferente. Note que o layout padrão varia dependendo do tamanho do seu sistema de discos.

Por ora, vamos utilizar os valores padrão em nosso disco de 40G.

  Available disks are: wd0.
  Which one is the root disk? (or 'done') [wd0]
  Disk: wd0       geometry: 4863/255/63 [78125000 Sectors]
  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.
Note que esse disco possui uma partição pré-existente -- ao escolher a opção "whole" (todo o disco) a partição será removida!

Definir todo o disco para o OpenBSD resulta na realização de uma série de coisas importantes:

Existem vários momentos onde você não quer fazer aquilo, incluindo: Note que é exigido que um novo drive (ou um que nunca foi utilizado para inicialização) tenha um MBR válido, uma assinatura válida, uma partição OpenBSD e uma partição marcada como "ativa". Se você não fizer essas coisas usando a opção "Use whole disk", você precisa se certificar manualmente de que elas sejam feitas.

Mais informações sobre o particionamento fdisk do seu disco podem ser encontradas abaixo.

Agora nós vamos dividir nossa partição fdisk do OpenBSD em partições de disco do OpenBSD usando o disklabel(8):

  Setting OpenBSD MBR partition to whole wd0...done.
  The auto-allocated layout for wd0 is:
  #                size           offset  fstype [fsize bsize  cpg]
    a:          1024.0M               63  4.2BSD   2048 16384    1 # /
    b:           507.1M          2097215    swap                   
    c:         38147.0M                0  unused                   
    d:          2620.4M          3135791  4.2BSD   2048 16384    1 # /tmp
    e:          4143.1M          8502287  4.2BSD   2048 16384    1 # /var
    f:          2048.0M         16987323  4.2BSD   2048 16384    1 # /usr
    g:          1024.0M         21181627  4.2BSD   2048 16384    1 # /usr/X11R6
    h:          3610.7M         23278779  4.2BSD   2048 16384    1 # /usr/local
    i:          1961.6M         30673543  4.2BSD   2048 16384    1 # /usr/src
    j:          1961.6M         34690971  4.2BSD   2048 16384    1 # /usr/obj
    k:         19245.9M         38708399  4.2BSD   2048 16384    1 # /home

  Use (A)uto layout, (E)dit auto layout, or create (C)ustom layout? [a] Enter

O instalador nos apresentou sua proposta de "Auto layout" (layout automático) para as partições do OpenBSD no nosso disco, a qual nós vamos aceitar.

Se o layout proposto não é apropriado para as suas necessidades, você pode, obviamente, editar o padrão ou personalizá-lo completamente; mais detalhes sobre o particionamento do disklabel abaixo.

NOTA para reinstaladores: O novo instalador não limpa o seu disklabel antigo se você escolher "(C)ustom Layout", mas você terá que especificar novamente cada ponto de montagem usando a opção 'm' no disklabel(8).

O instalador agora cria aquelas partições, cria nelas os sistemas de arquivos usando o newfs(8), e as monta para a instalação:

  /dev/rwd0a: 1024.0MB in 2097152 sectors of 512 bytes
  6 cylinder groups of 202.47MB, 12958 blocks, 25984 inodes each
  /dev/rwd0k: 19245.9MB in 39415696 sectors of 512 bytes
  96 cylinder groups of 202.47MB, 12958 blocks, 25984 inodes each
  /dev/rwd0d: 2620.4MB in 5366496 sectors of 512 bytes
  13 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: 3610.7MB in 7394764 sectors of 512 bytes
  18 cylinder groups of 202.47MB, 12958 blocks, 25984 inodes each
  /dev/rwd0j: 1961.6MB in 4017428 sectors of 512 bytes
  10 cylinder groups of 202.47MB, 12958 blocks, 25984 inodes each
  /dev/rwd0i: 1961.6MB in 4017428 sectors of 512 bytes
  10 cylinder groups of 202.47MB, 12958 blocks, 25984 inodes each
  /dev/rwd0e: 4143.1MB in 8485036 sectors of 512 bytes
  21 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)

Você pode notar que a partição c parece ter sido ignorada. Essa partição é o seu disco rígido inteiro; não tente alterá-la.

4.5.4 - Escolha da mídia de instalação e dos pacotes de arquivos

Nesta etapa você tem a chance de escolher sua mídia de instalação. Neste caso vamos instalar usando um servidor 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
Se você não se lembra da localização do seu espelho favorito (ou de nenhum!), o instalador frequentemente é capaz de apresentar-lhe um espelho padrão que funciona bem para você. Caso contrário, pressione "?" para uma lista de espelhos ser exibida, e selecione o número de um espelho que funciona bem para você.

  Server directory? [pub/OpenBSD/4.7/i386] Enter
  Login? [anonymous] Enter
Todos os espelhos FTP públicos suportam downloads anônimos, obviamente, mas você pode ter uma máquina local que requer um nome de início de sessão e uma senha.

Você agora pode ajustar a lista de pacotes de arquivos.

  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] etc47.tgz     [X] game47.tgz    [X] xfont47.tgz
      [X] bsd.rd        [X] misc47.tgz    [X] xbase47.tgz   [X] xserv47.tgz
      [ ] bsd.mp        [X] comp47.tgz    [X] xetc47.tgz
      [X] base47.tgz    [X] man47.tgz     [X] xshare47.tgz
  Set name(s)? (or 'abort' or 'done') [done] Enter

Você precisa, no mínimo, de um kernel (bsd) e dos pacotes de arquivos base47.tgz e etc47.tgz. A menos que você saiba o que está fazendo, utilize os pacotes escolhidos por padrão. Você pode adicionar ou remover pacotes de arquivos usando os caracteres "+" e "-" na frente do nome do pacote de arquivos, e também pode usar os caracteres curinga:

Novamente vamos utilizar a escolha padrão. Essa máquina é um sistema de processador único, então bsd.mp não é instalado, mas todas as outras coisas são. Se em um outro momento a máquina for atualizada para um sistema com múltiplos processadores, você talvez queira instalar o bsd.mp também.

E agora vamos começar nossa instalação! Este é o ponto onde você pode desejar voltar depois de um tempo se você possui um computador lento ou uma conexão lenta com a Internet, entretanto, com um computador rápido e arquivos locais, este processo pode levar dois minutos ou menos!

  bsd          100% |*************************************|  7404 KB    00:04
  bsd.rd       100% |*************************************|  6147 KB    00:03
  base47.tgz   100% |*************************************| 49365 KB    01:46
  etc47.tgz    100% |*************************************|   510 KB    00:01
  misc47.tgz   100% |*************************************|   356 KB    00:06
  comp47.tgz   100% |*************************************| 90468 KB    03:08
  man47.tgz    100% |*************************************|  9240 KB    00:21
  game47.tgz   100% |*************************************|  2556 KB    00:04
  xbase47.tgz  100% |*************************************| 15185 KB    00:21
  xetc47.tgz   100% |*************************************| 70053       00:00
  xshare47.tgz 100% |*************************************|  2887 KB    00:12
  xfont47.tgz  100% |*************************************| 38754 KB    00:57
  xserv47.tgz  100% |*************************************| 19413 KB    00:39
  Location of sets? (cd disk ftp http or 'done') [done] Enter

Sim, o instalador está perguntando novamente sobre a partir de onde nós queremos instalar coisas. Essas coisas são pacotes de arquivos ausentes, esquecidos ou falhos que podem ser reinstalados, e também é dessa maneira que os pacotes de arquivos personalizados podem ser instalados.

Novamente vamos escolher o padrão, já terminamos a etapa de instalação de arquivos.

  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 - Primeira inicialização!

O OpenBSD agora está instalado no seu sistema e pronto para sua primeira inicialização, mas antes que você a faça...

Antes da reinicialização

Neste ponto seu sistema está instalado e pronto para ser inicializado e configurado para o serviço. Antes disso, entretanto, é melhor você verificar a página Errata para ver se existe alguma falha que possa causar-lhe algum dano.

Um truque que você pode usar "antes da primeira inicialização" é executar:

    # /mnt/usr/sbin/chroot /mnt
no prompt de shell. Isso ajusta seus pontos de montagem para ser o que seriam em uma inicialização normal do seu novo sistema instalado. Você agora pode fazer configurações básicas do seu sistema, como adicionar usuários, mudar pontos de montagem, etc.

Depois da reinicialização

Na sua primeira inicialização as chaves do SSH são geradas. Em computadores modernos isso leva alguns segundos, e você talvez nem note a geração acontecendo. Em sistemas antigos a geração pode levar vários minutos, possivelmente uma hora ou mais em sistemas realmente lentos.

Umas das primeiras coisas que você deve ler, depois de instalar o seu sistema, é afterboot(8).

Você também pode achar os seguintes links úteis:

4.5.6 - Uma última coisa...

Os desenvolvedores do OpenBSD pedem que você envie uma cópia do seu dmesg. Isso é realmente muito apreciado por eles e, no final das contas, por todos os usuários.

4.6 - Detalhes de uma instalação mais complexa

Algumas vezes você não pode aceitar os valores padrão. Nesta seção você encontra alguns detalhes a mais sobre partes do processo de instalação.

4.6.1 - Configuração da rede

Se você não possui um servidor DHCP disponível, você tem que configurar seu(s) adaptador(es) de rede manualmente. Exemplo:

  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

Após aquele conjunto de perguntas, você tem a chance de configurar quaisquer outros adaptadores de rede que sua máquina possua. Se você especificar um outro adaptador de rede aqui, as questões acima são repetidas.

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

Agora você tem que configurar o gateway padrão e os servidores DNS, coisas que estão relacionadas a todos os adaptadores de rede:

  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] exemplo.org
  DNS nameservers? (IP address list or 'none') [none] 192.168.1.250 192.168.1.251

Note que múltiplos servidores DNS podem ser listados, separados por espaços.

Algumas vezes você tem que fazer alguma outra coisa, por exemplo, configurar uma chave de acesso de rede sem fio, ou definir manualmente uma configuração de duplex ou velocidade (não faça isso, a menos que você absolutamente TENHA que fazer; corrigir a configuração do seu switch é uma ideia muito melhor!). Você agora tem a chance de ir para o shell e fazer qualquer configuração manual que gostaria de fazer.

  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
...a configuração é retomada...

(voltar para onde você estava)

4.6.2 - Configuração do fuso horário

O horário no Unix não é uma coisa simples (ou, colocado de outra maneira, o horário no Unix é uma coisa realmente simples, o horário humano é uma bagunça politicamente manipulada). Os arquivos de fuso horário ajudam o sistema a converter o horário do Unix (o número de segundos que se passaram desde a meia-noite de 1 de janeiro de 1970 (GMT)) para o horário humano, levando em consideração coisas como fuso horário, horário de verão (DST - "Daylight Saving Time"), mudanças de regras de DST, etc. Eles também incluem o histórico das mudanças.

Múltiplos arquivos de definição de fuso horário algumas vezes possuem o mesmo horário atual, mas podem ter uma história diferente. Por exemplo, EST5EDT e US/Michigan possuem o mesmo horário HOJE EM DIA, mas em 1975 as regras eram diferentes, então se você está fazendo cálculos com datas e horários que envolvam 1975, você deve tomar cuidado com as diferenças. Você deve utilizar o arquivo de fuso horário mais específico e mais preciso para a sua região que você puder, em vez de um que fornece o horário correto no momento.

O instalador do OpenBSD ajuda-o a encontrar o arquivo de fuso horário apropriado para você se você não tem certeza sobre qual utilizar. Simplesmente digite "?" em cada prompt e o instalador mostra a você as opções. Se o primeiro nível de respostas não serve para você, digite o nome de um continente ou país e olhe as opções de lá:

  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

Definimos o horário para "US/Michigan". Isso cria uma ligação simbólica em /etc apontando para o arquivo de fuso horário apropriado em /usr/share/zoneinfo, alguma coisa como:

  /etc/localtime -> /usr/share/zoneinfo/US/Michigan
Note o diretório "right/", esse diretório inclui ajustes de segundos de salto, mas fora isso duplica as escolhas de fuso horário padrão. Mais informações aqui.

(voltar para onde estávamos)

4.6.3 - Layout fdisk(8) personalizado

Nota: somente algumas plataformas do OpenBSD usam o fdisk e, usualmente, apenas os usuários das plataformas i386 e amd64 têm que se preocupar com o fdisk. Usuários da maioria das outras plataformas que usam o fdisk não têm que se preocupar com inicialização múltipla ou partições de configuração/diagnóstico. Por essa razão, esta seção é focada nas plataformas i386 e amd64.

O fdisk(8) é usado para marcar a parte do OpenBSD do seu disco rígido. Ele serve para demarcar a parte do disco utilizada pelo OpenBSD das outras partes usadas por outros SOs ou funções do sistema.

Se você tem uma partição no seu disco que você deseja manter, ou se você deseja deixar espaço para uma outra partição, você NÃO deve escolher "(W)hole disk" e, no lugar, deve editar a tabela de partições com o fdisk(8). Mais informações sobre a execução manual do fdisk(8) podem ser encontradas aqui. Antes de mecher com qualquer sistema que contenha dados que você não deseja perder, tenha certeza de que você possui um bom backup. É muito fácil arruinar dados importantes neste processo, então tenha certeza de que você está pronto para voltar atrás, se necessário.

Se você está adicionando o OpenBSD a um sistema existente, provavelmente você precisa criar algum espaço livre no seu sistema antes de instalar o OpenBSD. Isso normalmente envolve a remoção de partições ou, possivelmente, a redução do tamanho de partições existentes. O programa gparted é útil para encolher as partições de muitos SOs populares, tornando possível a instalação do OpenBSD no espaço livre que foi aberto.

Neste exemplo vamos assumir que você está utilizando um disco vazio de 40G e deseja criar um sistema com inicialização múltipla, com 5G reservados no começo do disco para o Windows e o restante para o OpenBSD. Note que um drive vazio tem que ter um código de inicialização MBR válido e uma assinatura válida escritos no disco antes que ele possa ser inicializado.

O processo é quase o mesmo que trabalhar ao redor de uma partição existente, você apenas precisa saltar as partes onde criamos a partição para o Windows e se preocupar com a instalação do código de inicialização MBR.

  Available disks are: wd0.
  Which one is the root disk? (or 'done') [wd0] Enter
  MBR has invalid signature; not showing it.
SE o disco tivesse um MBR válido, ele mostraria a você a tabela de partições existente, que pode ser um bom modo de mostrar se um disco já possui dados.

  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>

Antes de tudo note o prompt do fdisk. O número "1" indica o primeiro nível das tabelas de partições -- se você estivesse editando uma partição estendida o número seria "2" (ou um número maior). Partições estendidas são partições que têm sua própria tabela de subpartições, e são utilizadas para contornar o limite de projeto de quatro partições do IBM AT. As partições estendidas não serão abordadas aqui.

Em primeiro lugar faremos da partição "0" uma partição de 5G para o Windows (usando NTFS), e a partição "1" será nossa partição para o OpenBSD usar o resto do disco.

  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)

Já que não sabemos de cor qual é o ID de partição para o NTFS, digitamos "?" para obtermos uma lista.

  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

Agora nós definimos os pontos de início e fim:

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

O modo CHS permite a você especificar o espaço de disco em Cilindros, Cabeças e Setores (CHS - "Cylinders, Heads and Sectors"). Mantenha em mente que em discos rígidos modernos os números CHS são completamente fictícios, eles são apenas três números que são traduzidos para um setor no disco, que é traduzido para a geometria física do seu disco (que, de qualquer jeito, provavelmente varia através do disco).

Se você responder "y", você será questionado pelo cilindro, pela cabeça e pelo setor de início e fim. Se você responder "no" (como vamos fazer), você será questionado pelo setor de início e pelo tamanho. Editar por CHS é frequentemente mais fácil durante o trabalho ao redor de uma partição existente, e por setor de início e tamanho é mais fácil quando você quer criar rapidamente uma partição de um determinado tamanho.

  offset: [0] 63

As plataformas que utilizam o fdisk precisam da distância de uma trilha ("track") antes da primeira partição. Uma trilha é um número de setores de "setores por trilha", o último número dos números da mensagem "geometry:". É fácil criar o hábito de especificar "63" aqui, já que esse é um valor comum em discos IDE e SATA modernos, mas nem todos os discos usam isso como o tamanho de uma trilha, as exceções modernas mais comuns a isso são os discos SCSI e Flash.

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

O valor de tamanho ("size") pode ser o número de setores (cada um com 512 bytes), ou a capacidade desejada quando seguida de "k", "m" ou "g". Na edição com offset e size, o fdisk arrendonda a sua partição de modo que ela termine em um limite de cilindro (o OpenBSD não se preocupa com isso, e é possível que nenhum SO moderno se preocupe, mas alguns podem se preocupar).

Agora vamos dar uma olhada na nossa nova partição:

  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>

Note que agora o prompt inclui um "*". Isso significa que existem mudanças que não foram salvas.

Agora nossa partição do Windows está criada. Note que essa partição é apenas um espaço reservado no disco, ela não está formatada; nenhum sistema de arquivos existe nela. Você terá que se preocupar com isso quando for instalar o Windows; nós alcançamos nosso objetivo de reservar espaço para a partição do Windows ser criada mais tarde.

Agora nós criamos nossa partição do OpenBSD. Neste caso o ID de partição será "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]

Chiii! Qual é nosso offset? Simples -- o offset da partição anterior mais o tamanho da partição, neste caso 63+10490382 = 10490445.

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

Note que aqui nós especificamos "*" como o tamanho, que significa "o resto do disco". Novamente nós poderíamos ter especificado o tamanho em setores, "m" ou "g" se quiséssemos deixar espaço para alguma outra coisa.

Agora vamos dar uma olhada na nossa tabela de partições:

  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>

AINDA NÃO TERMINAMOS!
Esse disco ainda não é inicializável! Como ele era um disco novo, o MBR do disco estava completamente vazio. A mensagem "Signature: 0x0" mostra que não existe uma assinatura válida (0xAA55), o que indica que definitivamente não existe um código de inicialização válido. Você pode ter uma assinatura válida sem um código de inicialização válido, devido a alguma má sorte aleatória ou algum dano ao código de inicialização existente, mas uma assinatura inválida certamente indica que o código de inicialização está ausente, então vamos instalá-lo agora utilizando o comando "update":

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

Também temos que "marcar" uma partição como "ativa", assim a ROM de inicialização sabe a partir de qual partição inicializar:

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

Agora vamos ver como a tabela se parece:

  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>

Uma lista de coisas para você verificar antes de sair do fdisk(8):

(voltar para onde estávamos)

4.6.4 - Layout disklabel personalizado

Dentro da partição fdisk(8) do OpenBSD nós usamos o disklabel(8) para criar as partições dos sistemas de arquivos do OpenBSD. O OpenBSD marca suas partições de sistemas de arquivos usando dezesseis letras, de "a" até "p". A partição "a" no disco de inicialização é definida como a partição raiz, e "b" no disco de inicialização é a partição swap padrão. "c" em todos os discos é a partição do "disco todo"; ela é usada por programas que tem que ter acesso cru ao disco físico, como os programas fdisk(8) e disklabel(8). A partição "c" é criada automaticamente para você, e não deve ser removida ou alterada. As letras restantes estão disponíveis para você definir pontos de montagem nelas. Você pode saltar letras, você pode defini-las em qualquer ordem, e elas podem estar em qualquer ordem no disco (embora algumas plataformas possuam um requerimento relacionado a aonde a partição "a" está). Você também pode deixar espaços desalocados no disco, e alocá-los mais tarde, ou possivelmente aumentar o tamanho de partições existentes no espaço desalocado usando o growfs(8).

Todas as partições que possuam partições FFS nativas devem estar dentro da partição fdisk(8) do OpenBSD, no entanto, partições que não são do OpenBSD podem (e normalmente devem) estar fora da partição fdisk do OpenBSD.

Mais informações sobre a utilização do disklabel podem ser encontradas aqui.

Mais informações sobre por que o particionamento é uma boa ideia, e uma estratégia para um bom plano de particionamento, podem ser encontradas mais abaixo.

O instalador do OpenBSD tenta particionar automaticamente o seu disco em uma configuração útil e de "propósitos gerais", baseada no tamanho do seu disco. Se o seu disco é grande o bastante, o espaço não utilizado será alocado para a partição /home. Mesmo que esse particionamento automático seja bastante útil, ele não satisfaz todas as necessidades dos usuários.

No nosso exemplo, assumimos que estamos construindo um servidor Web estático para alguns dos nossos amigos utilizá-lo. Temos uma máquina ligada a uma conexão modesta com a Internet, com um disco de 40G, com a maior parte dele utilizado para o OpenBSD (com a mesma partição de 5G do Windows do exemplo acima. Por que? Pode ser que esse sistema tenha um controlador RAID que é suportado pelo OpenBSD, mas gerenciável apenas a partir de dentro do Windows. Ou, possivelmente, porque o editor da FAQ não gosta de manter um monte de diferentes sistemas de exemplo).

As páginas Web servidas pelo servidor Web do OpenBSD estarão em /var/www, e muita pouca coisa será guardada em /home, então isso indica uma mudança definitiva do padrão que precisa ser feita. Para o objetivo da discussão, vamos assumir também que não queremos recompilar o SO a partir do código fonte nesta máquina (vamos fazer isso em algum outro lugar). O sistema não vai executar o X, no entanto, devido a alguns aplicativos Web esperarem que o X esteja instalado, vamos instalar o X. A máquina não é muito poderosa, ela não pode ter mais que 1G de RAM, e dificilmente nossa utilização do sistema vai necessitar de mais do que isso.

Então, depois de pensar um pouco, nosso plano é particionar o sistema da seguinte maneira:

  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

Se tivéssemos apenas pequenas modificações a fazer, provavelmente optaríamos por editar ("Edit") o layout personalizado em vez de começar a partir de uma losa vazia, mas nós vamos fazer as coisas da forma difícil.

  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
  >

Note que já existem duas partições -- a partição "c", que está sempre lá e é criada para você, mas o disklabel(8) também noticiou a existência da partição NTFS e atribuiu a ela uma partição disklabel, assim ela pode ser acessada pelo OpenBSD (nota: no momento o suporte a NTFS é experimental e requer um kernel personalizado, mas o suporte a FAT/FAT32 é muito bom).

Agora vamos criar nossas partições. Vamos começar com a partição "a", nossa partição raiz:

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

Note que o disklabel deixou como padrão o primeiro setor disponível do OpenBSD no disco, o qual é o que queremos. Ele também deixou como padrão o tamanho ("size") de todo o espaço disponível, o qual NÃO é o que queremos. Aqui nós vamos cancelar aquele padrão com nosso tamanho predileto, o qual pode ser especificado em setores, "M" ou "G".

Normalmente você quer utilizar o "FS type" padrão de "4.2BSD" para uma partição FFS ("Fast File System") ou FFS2, embora os outros tipos, como "swap" e "RAID", sejam úteis dependendo da ocasião.

E finalmente o ponto de montagem. Nossa partição "a" é a partição raiz, por definição.

Agora nós criamos a swap, a qual é nossa partição 'b' (novamente, esse é um requerimento -- 'b' no seu disco de inicialização é a swap):

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

Novamente o disklabel calculou corretamente nosso setor de início, e nos apresentou um tamanho sugerido de "todo o espaço restante", que novamente nós cancelamos com nosso tamanho desejado. Desde que essa é a partição 'b', o disklabel assume que ela foi criada para ser utilizada para swap, e quando nós confirmamos isso ele não nos pergunta sobre um ponto de montagem.

Agora estamos prontos para criar as partições restantes.

  > 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
  >

Note que na partição /var/www ("k") nós aceitamos o padrão de utilizar todo o espaço em disco restante disponível. Com drives modernos monstruosamente gigantes, normalmente essa não é uma boa ideia. Se você sabe que nunca vai utilizar todo o espaço, não o aloque: deixe-o a salvo para algum uso futuro.

Agora vamos dar uma olhada nos nossos resultados utilizando os comandos "p" e "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
  >

Igual ao fdisk, você não quer que as suas partições disklabel do OpenBSD sobreponham-se (exceto a partição 'c', que, obviamente, sobrepõe tudo).

Escreva suas mudanças e feche o 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!
...

(voltar para onde estávamos)

4.7 - Quais arquivos são necessários para a instalação?

A instalação completa do OpenBSD é dividida em vários pacotes de arquivos separados. Nem todos os aplicativos necessitam de todos os pacotes de arquivos, no entanto, é recomendado aos novos usuários instalar TODOS os pacotes de arquivos. Aqui você tem uma visão geral de cada um deles:

Os pacotes etc47.tgz e xetc47.tgz não são instalados como parte de uma atualização de versão, somente como parte de uma instalação completa, assim nenhuma personalização que você fez é perdida. Você tem que atualizar manualmente seus diretórios /etc, /dev e /var.

Por que tenho que instalar o X se eu não uso o modo gráfico?

Mesmo que você não tenha a intenção de executar o X, alguns pacotes de terceiros precisam que as bibliotecas ou outros utilitários do X estejam instalados no seu sistema. Essa dependência pode ser facilmente resolvida instalando apenas o xbase47.tgz; o resto do X nem sempre é necessário. Muitas pessoas insistem em não instalar o X em seus sistemas, sem ter uma razão válida: As pessoas às vezes perdem um monte de tempo e esforços tentando escolher partes do xbase47.tgz e usar somente os arquivos que elas precisam para instalar algum aplicativo. Isso não é somente sem sentido, como também é um esforço que tem que ser repetido a cada ciclo de atualização de versão, o que significa que provavelmente você não atualizará corretamente a versão do seu sistema, criando problemas de segurança REAIS.

SE você precisa do X, simplesmente instale-o. Isso não vai lhe causar nenhum prejuízo maior que o aplicativo que necessita dele causaria.

Eu não quero instalar os compiladores

Tudo bem, não instale, mas, por favor, não diga a você mesmo que isso é por "razões de segurança". Se um atacante está há muito tempo no seu sistema, ao ponto de que a presença ou ausência do compilador é importante, ele mesmo pode instalar o compilador. Por outro lado, o pacote de arquivos compXX.tgz é relativamente grande e tem um monte de arquivos, e assim pode levar um tempo na instalação ou atualização de versão, e em sistemas lentos ou pequenos isso pode ser relevante.

Se você decidir não instalar o compilador, você provavelmente vai precisar de um outro sistema para manter e compilar software atualizado. Existem mais sistemas que foram comprometidos por causa de manutenção inapropriada do que por causa de um compilador que foi instalado.

4.8 - De que forma eu devo particionar meu disco?

Obviamente, a resposta para essa pergunta varia com base no tipo de uso pretendido para seu sistema. O OpenBSD pode ser instalado em pequenos discos de 512M, mas instalar em um dispositivo desse tamanho é tarefa para usuários avançados. A menos que você tenha alguma experiência, um HD de 4G a 8G é um ponto de partida recomendado.

Diferente de muitos outros SOs, o OpenBSD incentiva os usuários a particionar o disco em várias partições em vez de apenas uma ou duas partições grandes. Existem várias razões para particionar o seu disco:

Dado um espaço em disco suficiente, o instalador do OpenBSD cria por padrão as seguintes partições:

Algumas considerações adicionais sobre particionamento:

4.9 - Inicialização múltipla com OpenBSD

Inicialização múltipla é ter diversos sistemas operacionais em um só computador e meios de selecionar qual SO é para inicializar. Isso não é uma tarefa trivial! Se você não compreender o que está fazendo, você pode acabar apagando grandes quantidades de dados do seu computador. Novos usuários do OpenBSD são fortemente incentivados a começar em uma máquina dedicada, com um disco rígido sem dados, e então praticar as suas configurações em um sistema de testes antes de se aventurar em uma configuração de inicialização múltipla em uma máquina de produção. A FAQ 14 possui mais informações sobre o processo de inicialização do OpenBSD.

De preferência use uma das quatro partições MBR primárias para inicializar o OpenBSD (ou seja, partições estendidas podem não funcionam).

Note que o Windows 7 e o Vista podem redimensionar as partições do sistema: vai em Painel de Controle, procure por "partição", entre na ferramenta do sistema correspondente. Clique com o botão direito em uma partição, e você vai notar que você pode reduzir. Sua principal limitação é que o "Windows Exchange File" não pode ser movido, logo, se você precisar de mais espaço, talvez terá que mover/desativar ele.

Estas são as diversas opções de inicialização múltipla:

Marcar a partição ativa

Esta é provavelmente a mais negligenciada e, às vezes, a melhor solução para inicialização múltipla. Simplesmente utilize o SO onde você está atualmente para marcar a partição, que você quer inicializar por padrão na próxima inicialização, como ativa. Praticamente todos os SOs oferecem um programa para fazer isso; o do OpenBSD é o fdisk(8), programas com nomes similares existem para sistemas Windows 9x e DOS e para muitos outros sistemas operacionais. Isso pode ser altamente desejável para SOs que levam muito tempo para desligar ou reinicializar -- você pode marcar e dar início ao processo de reinicialização, e então sair de perto, pegar um copo de café, voltar e ver o sistema inicializado do jeito que você queria -- sem ter que esperar pelo Momento Mágico de selecionar o próximo SO.

Disquete de inicialização

Se você possui um sistema onde não usa frequentemente o OpenBSD (ou não deseja que usuários deste computador notem qualquer alteração), considere a utilização de um disquete de inicialização. Simplesmente use um dos disquetes de instalação padrão do OpenBSD e crie o arquivo /etc/boot.conf (sim, você também tem que criar o diretório /etc no seu disquete) com o conteúdo:
	 boot hd0a:/bsd
para fazer com que o sistema inicialize a partir do disco rígido 0, partição OpenBSD 'a', arquivo de kernel /bsd. Note que você também pode inicializar a partir de outros discos rígidos, com uma linha como: "boot hd2a:/bsd", para inicializar a partir do terceiro disco rígido do seu sistema. Para inicializar o OpenBSD, coloque seu disquete dentro do drive e reinicialize a máquina. Para inicializar outro SO, retire o disquete do drive e reinicialize. (Você também pode, obviamente, usar esse disquete para criar um CD inicializável.)

O programa boot(8) é carregado a partir do disquete e procura e lê o arquivo /etc/boot.conf. A linha contendo "boot hd0a:/bsd" instrui o boot(8) a partir de onde ele deve carregar o kernel -- nesse caso, o primeiro HD que o BIOS vê. Mantenha em mente que somente um pequeno arquivo (/boot) é carregado a partir do disquete -- o sistema carrega o kernel do disco rígido, adicionando somente 5 segundos ao processo de inicialização.

Windows NT/2000/XP NTLDR

Para inicialização múltipla entre OpenBSD e Windows NT/2000/XP, você pode usar NTLDR, o carregador de inicialização que o NT usa. Para inicialização múltipla com NT, você precisa ter uma cópia do seu Registro de Inicialização de Partição (PBR - "Partition Boot Record") do OpenBSD. Depois de executar o "installboot", você pode copiar o arquivo usando o dd(1) e seguir um procedimento similar ao seguinte:
	# dd if=/dev/rsd0a of=openbsd.pbr bs=512 count=1
Nota: Este é um bom momento para lembrá-lo para não digitar comandos cegamente (sem saber o que eles fazem). O comando acima não funciona diretamente em muitos computadores, ficando para o leitor a tarefa de adaptá-lo a sua máquina.

Agora inicialize o NT e coloque o openbsd.pbr em C:. Adicione uma linha como esta no fim de C:\BOOT.INI:

	c:\openbsd.pbr="OpenBSD"

Quando você reinicializar, você pode selecionar o OpenBSD a partir do menu do carregador do NT. Há muito mais informação disponível sobre NTLDR em "NTLDR Hacking Guide".

No Windows XP, você pode editar as informações de inicialização usando uma interface gráfica (GUI); consulte o "XP Boot.ini HOWTO".

Programas que fazem uma grande parte desse trabalho estão disponíveis, por exemplo, o BootPart. Esse programa pode ser executado no Windows NT/2000/XP. Ele busca o PBR do OpenBSD, coloca-o na sua partição do NT/2000/XP e adiciona-o no C:\BOOT.INI.

Nota: O carregador de inicialização do Windows NT/2000/XP só é capaz inicializar sistemas operacionais que se encontram no primeiro disco rígido. Você não pode usar o carregador de inicialização do Windows para carregar o OpenBSD a partir de um disco secundário.

Windows Vista

Com o Vista, a Microsoft descartou o suporte ao NTLDR em favor de seu mais novo armazenamento "Boot Configuration Data" (BCD), utilizado para controlar o ambiente de inicialização. Já que o BOOT.INI não está mais disponível para personalização, um utilitário de linha de comando, bcdedit, tomou seu lugar.

Uma vez que o PBR do OpenBSD está copiado na partição do sistema Vista, os três comandos seguintes são requeridos para selecionar e inicializar o OpenBSD quando o sistema é reiniciado:

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

C:\Windows\System32>

O GUID retornado aqui, 05a763ce-d81b-11db-b3ec-000000000000, é mostrado por razões ilustrativas. Tome nota do GUID mostrado quando você executa esse comando, já que esse valor precisa ser copiado nos comandos seguintes. Copiar o GUID mostrado acima simplesmente não vai funcionar.

Os dois comandos seguintes também são requeridos:

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>

Isso deve ser executado em um shell com privilégios administrativos. Quanto tiver localizado cmd.exe, clique com botão direito e selecione "Executar como Administrador".

Note o nome do caminho absoluto do arquivo PBR importado. Não adicione uma letra de drive, pois é assumido que o arquivo foi colocado na partição do sistema. bcdedit não queixa-se de uma especificação explícita de drive, mas o gerenciador de inicialização vai recusar-se a seguir adiante dizendo que ele não pôde resolver o nome de caminho designado.

Após a reinicialização, o Vista é listado por primeiro no gerenciador de inicialização, seguido do OpenBSD. Selecionar uma das duas entradas inicializa o sistema operacional correspondente. Se não acontecer nada, olhe no painel de controle para obter informações de boot. Provavelmente, o seu boot do Windows não está configurado um timeout para selecionar o sistema, fazendo com que não apareça o menu de inicialização. Você também pode usar esse menu para iniciar o OpenBSD por padrão.

Para mais informações, consulte a ajuda do bcdedit digitando:

C:\Windows\system32> bcdedit /?

ou pesquisando na documentação e no sítio Web da Microsoft. Uma boa introdução pode ser encontrada neste artigo " Frequently Asked Questions", no TechNet.

Para aqueles que acham a configuração manual assustadora, o EasyBCD fornece uma alternativa em GUI.

Windows 7

A Microsoft tem aperfeiçoado o BCD desde o lançamento do Vista para permitir que múltiplas versões do Windows sejam inicializadas através do bcdedit. Por causa desse maior controle, cinco comandos são requeridos para configurar um ambiente de inicialização múltipla com o OpenBSD.

Depois de copiar o PBR do OpenBSD na partição do sistema do Windows 7, digite o seguinte comando para inicializar o registro necessário:

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

C:\Windows\system32>

Como avisado antes, o GUID {0154a872-3d41-11de-bd67-a7060316bbb1} é dependente de sistema. Anote o valor que você recebeu ao executar o comando e copie-o nos comandos seguintes:

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>

Outros carregadores de inicialização

Alguns carregadores de inicialização que os usuários do OpenBSD usam com sucesso são: GAG, The Ranish Partition Manager, rEFIt e o GRUB.

OpenBSD e Linux (i386)

Por favor, consulte INSTALL.linux, que possui instruções sobre como fazer o OpenBSD funcionar com Linux.

Problemas com o fuso horário

O OpenBSD espera que o relógio em tempo real do computador esteja configurado para UTC ("Universal Coordinated Time", ou Tempo Universal Coordenado). Outros sistemas operacionais esperam que o relógio esteja configurado para o horário local. Isso pode ser um grande problema se você estiver usando ambos os sistemas no mesmo computador. Um dos sistemas precisará ser adaptado. Mais informações sobre como fazer isso estão na FAQ 8 - Por que meu relógio está atrasado várias horas?

4.10 - Como enviar o seu dmesg para dmesg@openbsd.org depois da instalação

Apenas para lembrar, é importante para os desenvolvedores do OpenBSD saber qual hardware funciona, e qual não funciona perfeitamente, incluindo os sensores de hardware que são encontrados em máquinas.

Uma citação de /usr/src/etc/root/root.mail

If you wish to ensure that OpenBSD runs better on your machines, please do us
a favor (after you have your mail system configured!) and type something like:
 # (dmesg; sysctl hw.sensors) | \
        mail -s "Sony VAIO 505R laptop, apm works OK" dmesg@openbsd.org

so that we can see what kinds of configurations people are running.  As shown,
including a bit of information about your machine in the subject or the body
can help us even further.  We will use this information to improve device driver
support in future releases.  (Please do this using the supplied GENERIC kernel,
not for a custom compiled kernel, unless you're unable to boot the GENERIC
kernel.  If you have a multi-processor machine, dmesg results of both GENERIC.MP
and GENERIC kernels are appreciated.)  The device driver information we get from
this helps us fix existing drivers. Thank you!

Certifique-se de enviar a mensagem de correio eletrônico a partir de uma conta que esteja habilitada para receber mensagens dos desenvolvedores, para que eles possam entrar em contato se tiverem algo que queiram testar ou mudar, a fim de tornar funcional no OpenBSD. Não é importante enviar a mensagem a partir da mesma máquina que está executando o OpenBSD; se essa máquina for incapaz de receber a mensagem, basta executar

$ (dmesg; sysctl hw.sensors) | mail your-account@yourmail.dom
E então encaminhar a mensagem para
 dmesg@openbsd.org
onde your-account@yourmail.dom é a sua conta de correio eletrônico.

NOTAS

O método acima é bastante simples, mas se você não configurou o seu sistema de correio eletrônico no OpenBSD, você pode salvar a sua saída do dmesg em um arquivo de texto e mandar para os desenvolvedores do OpenBSD.

$ (dmesg; sysctl hw.sensors) > ~/dmesg.txt
Então transfira o arquivo (usando FTP/scp/disquete/pombo-correio/...) para o sistema que você normalmente usa para correio eletrônico. Como a saída do dmesg que você envia é processada automaticamente, tenha certeza de verificar os seguintes itens quando usar clientes/sistemas de correio eletrônico alternativos.

4.11 - Como adicionar um pacote de arquivos após a instalação

"Oh não! Eu esqueci de adicionar um pacote de arquivos durante a instalação!"

Às vezes você acha que necessita realmente só de comp47.tgz (ou algum outro componente do sistema) após a instalação, você então verifica que necessita de outros pacotes de arquivos. Boa notícia: há duas maneiras fáceis de instalar pacotes de arquivos após a instalação inicial:

Usar o processo de atualização de versão

Simplesmente inicialize com uma mídia de instalação (CD-ROM ou Disquete) e escolha "Upgrade" (em vez de "Install"). Quando você ver a lista de pacotes de arquivos para instalação, escolha somente os pacotes de arquivos que você não escolheu na primeira instalação, selecione a fonte, e então deixe eles serem instalados para você.

Usar o tar(1)

Os pacotes de arquivos de instalação são simples arquivos tar, e você pode expandí-los manualmente a partir da raiz do sistema de arquivos:

  # cd /
  # tar xzvphf comp47.tgz

Não se esqueça da opção 'p' no comando acima, a fim de restaurar corretamente as permissões dos arquivos!

Um erro comum é pensar que você pode usar o pkg_add(1) para adicionar pacotes de arquivos não instalados. Isso não funciona. pkg_add(1) é a ferramenta de gerenciamento de pacotes para instalar software de terceiros. Essa ferramenta manipula arquivos de pacotes, não arquivos tar genéricos como os pacotes de instalação.

Se você está instalando o pacote de arquivos xbase pela primeira vez no seu sistema, usando o tar(1) e sem reinicializar, o cache de bibliotecas compartilhadas precisa ser atualizado usando o ldconfig(8) após a instalação. Para adicionar todas as bibliotecas do X no cache:

# ldconfig -m /usr/X11R6/lib
Alternativamente, você pode apenas reinicializar seu sistema, e isso será feito automaticamente pelo script de inicialização rc(8).

4.12 - O que é 'bsd.rd'?

bsd.rd é um "Disco de RAM" do kernel. Esse arquivo é muito útil; muitos desenvolvedores têm cuidados para mantê-lo sempre na raiz dos seus sistemas.

Chamá-lo de "disco de RAM do kernel" descreve o sistema de arquivos raiz do kernel -- ao contrário de um disco físico, os utilitários disponíveis depois da inicialização do bsd.rd são armazenados no kernel e são executados a partir de um sistema de arquivos baseado em RAM. bsd.rd também inclui um conjunto de utilitários para que você faça a manutenção e a instalação do seu sistema.

Em algumas plataformas, bsd.rd é realmente a técnica preferida para instalação -- você coloca esse kernel em um sistema de arquivos existente, inicializa-o e executa a instalação a partir dele. Na maioria das plataformas, se você está executando uma versão antiga do OpenBSD, você pode pegar por FTP uma versão nova de bsd.rd, reinicializar a máquina com ele e instalar uma nova versão do OpenBSD sem usar uma mídia removível para isso.

Aqui está um exemplo de inicialização com bsd.rd em um sistema 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.02
  boot> boot hd0a:/bsd.rd
. . . inicialização normal para a instalação . . .
Como indicado, você será levado ao programa de instalação, mas você também pode executar um shell para fazer a manutenção do seu sistema.

A regra geral para inicializar com bsd.rd é mudar o seu kernel de /bsd para bsd.rd através dos meios usados em sua plataforma.

4.13 - Problemas comuns de instalação

4.13.1 - Meu Compaq só reconhece 16M RAM

Alguns sistemas Compaq possuem um problema onde toda a RAM do sistema não é detectada corretamente pelo carregador de inicialização de segundo estágio do OpenBSD, e somente 16M são detectados e utilizados pelo OpenBSD. Isso pode ser corrigido pela criação/edição do arquivo /etc/boot.conf, ou especificando comandos depois de "boot>", antes que o OpenBSD seja carregado. Se você possui uma máquina com 64M de RAM, mas o OpenBSD só reconhece os primeiros 16M, o comando que você usaria seria:
	 machine mem +0x3000000@0x1000000
Para adicionar 48M (0x3000000) após os primeiros 16M (0x1000000). Tipicamente, se você tivesse uma máquina com esse problema, você primeiramente especificaria o comando acima no prompt boot> no momento da instalação por disquete/CD-ROM, carregaria o sistema, reinicializaria e criaria o arquivo /etc/boot.conf com a linha de comando acima, para que nas próximas inicializações toda a memória RAM disponível fosse reconhecida.

Sabe-se também que uma atualização da ROM soluciona esse problema em alguns sistemas.

4.13.2 - Meu i386 não inicializa após a instalação

Sua instalação parece ter ocorrido perfeitamente, mas na primeira inicialização você não vê nem sinal do OpenBSD. Há algumas razões comuns para esse problema:

4.13.3 - Minha (velha e lenta) máquina inicializa, mas para no procedimento de ssh-keygen

É provável que a sua máquina esteja funcionando muito bem, mas está levando algum tempo para realizar o processo de geração de chaves do ssh. Uma SPARCStation2 ou um Macintosh Quadra pode levar várias horas para terminar os três passos do ssh-keygen(1). Deixe-o terminar; isso só é feito uma vez por instalação.

Note que o tamanho padrão da chave cresceu no OpenBSD 3.8, então os tempos de geração estão mais demorados do que costumavam ser. Usuários de máquinas lentas talvez queiram gerar suas chaves em outro computador, e então colocá-las em um arquivo site47.tgz e instalá-las com o resto do sistema.

4.13.4 - Eu recebi a mensagem "Failed to change directory" enquanto fazia a instalação

Ao fazer uma instalação FTP de uma snapshot durante o estágio -beta de desenvolvimento do OpenBSD, você pode ver isto:

  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?
Isso é normal e esperado durante o ciclo de pré-liberação. O programa de instalação procura pela lista de FTP no servidor FTP primário em um diretório que ainda não está disponível antes da data de liberação, então você recebe a mensagem acima.

Simplesmente use uma lista de espelhos FTP para encontrar o seu espelho favorito, e especifique manualmente o nome quando for preciso.

Nota: Você não deve ver isso se estiver instalando uma versão -release ou a partir de um CD-ROM.

4.13.5 - Minha tabela de partições do fdisk está corrompida ou vazia!

Ocasionalmente, o usuário consegue um sistema que funciona, mas quando executa fdisk wd0 ele vê uma tabela de partições completamente vazia (ou, algumas vezes, bagunçada). Isso geralmente é causado por ter sido criada uma partição no fdisk(8) com um offset de zero setores, ao invés de um offset com uma trilha (nota: é assumida aqui uma plataforma i386 ou amd64. Outras plataformas requerem tamanhos diferentes de offset, e algumas NÃO precisam de offset). O sistema então inicializa usando o PBR, e não o MBR.

Ao passo que essa configuração pode funcionar, ela pode também ser um problema durante manutenções, devendo ser consertada. Para consertar isso, o sistema de arquivos do disco deve geralmente ser recriado do zero (no entanto, se você REALMENTE sabe o que está fazendo, você pode apenas recriar o rótulo de disco (disklabel) e o MBR, e apenas perder e ter que reconstruir a primeira partição OpenBSD no disco).

4.13.6 - Eu não tenho um drive de disquete ou CD-ROM na minha máquina

Algumas pessoas talvez queiram executar o OpenBSD em computadores que não possuem nenhum jeito óbvio de instalar o OpenBSD, sem unidade de disquete ou CD-ROM. Ou a máquina foi projetada sem ele (Por exemplo, muitos laptops e máquinas baseadas em "flash", como sistemas Soekris e ALIX), ou os dispositivos de inicialização falharam ou foram removidos, e seria difícil de substituir. Estas são algumas dicas e técnicas que você pode usar para instalar o OpenBSD nesses sistemas. Em todos os casos, lembre-se que a máquina tinha um SO instalado nela antes, e normalmente foi pensado para que o SO pudesse ser instalado novamente. Como isso foi originalmente pensado para ser feito irá, frequentemente, fornecer a você uma boa ideia sobre como você pode instalar o OpenBSD.

4.14 - Personalização do processo de instalação

arquivo siteXX.tgz

Os scripts de instalação/atualização de versão do OpenBSD permitem a seleção de um pacote de arquivos criado pelo usuário, chamado "siteXX.tgz", onde XX é a versão (por exemplo, 47). O arquivo siteXX.tgz é, como os outros pacotes de arquivos, comprimido com gzip(1) e tar(1), com a raiz em '/', e descomprimido como qualquer outro pacote de arquivos com as opções xzphf. Esse pacote de arquivos é instalado por último, depois de todos os outros pacotes de arquivos.

Esse pacote de arquivos habilita o usuário a adicionar e/ou sobrescrever arquivos instalados nos pacotes 'normais' e, assim, personalizar a instalação ou a atualização de versão.

Você também pode criar e utilizar pacotes de instalação específicos para cada máquina, nomeados como siteXX-<hostname>.tgz; "site47-puffy.tgz", por exemplo. Isso possibilita instalações personalizadas, atualizações de versão, ou recuperação do sistema.

Alguns exemplos de uso de um arquivo siteXX.tgz:

Scripts install.site/upgrade.site

Como último passo no processo de instalação/atualização de versão, o script procura no diretório raiz do sistema recém-instalado/atualizado por install.site ou upgrade.site, conforme apropriado para o processo atual, e executa esse script em um ambiente "chrootado" para a raiz do sistema instalado/atualizado. Lembre-se: a atualização de versão é feita a partir de um sistema de arquivos inicializado, então o seu sistema de arquivos alvo está realmente montado no diretório /mnt. No entanto, por causa do chroot, o script pode ser escrito como se estivesse executando na raiz "normal" do seu sistema de arquivos. Pelo fato de que esse script é executado após todos os arquivos estarem instalados, você tem uma grande parte da funcionalidade do sistema completo quando o script é executado. Mantenha em mente que você está executando um kernel mínimo, nem todos os recursos estão disponíveis e, devido à problemas de espaço, as coisas que funcionam hoje podem não funcionar em uma versão futura.

Note que o script install.site deve estar em um arquivo siteXX.tgz, enquanto que o script upgrade.site pode ser colocado no diretório raiz antes da atualização de versão, ou pode ser colocado em um arquivo siteXX.tgz.

Os scripts podem ser utilizados para fazer muitas coisas:

A combinação dos arquivos siteXX.tgz e install.site/upgrade.site tem o objetivo de dar aos usuários amplas capacidades de personalização sem precisar construir seus próprios pacotes de instalação.

Nota: se você for fazer a sua instalação a partir de um servidor http, você precisa adicionar site*.tgz ao arquivo index.txt no diretório fonte, para que ele fique disponível na hora da instalação. Isso não é necessário para ftp ou outras formas de instalação.

4.15 - Como eu instalo em vários sistemas similares?

Aqui estão algumas ferramentas que você pode usar quando tem que instalar vários sistemas similares do OpenBSD.

Arquivos siteXX.tgz e install/upgrade.site

Veja o artigo acima.

Restauração a partir do dump(8)

Na maioria das plataformas a mídia de inicialização inclui o programa restore(8), que pode ser usado para recuperar backups feitos com o dump(8). Assim você pode inicializar a partir de um disquete, CD ou bsd.rd, executar o fdisk, o disklabel, restaurar as configurações desejadas a partir de uma fita ou outra mídia, e instalar os blocos de inicialização. Mais detalhes aqui.

Imagem de disco

Infelizmente não há nenhum pacote conhecido de software que crie imagem de discos com suporte ao FFS, e que crie imagens contendo apenas o espaço ativo do arquivo. A maioria das soluções existentes tratam a partição OpenBSD como "genérica", e podem fazer uma imagem do disco inteiro. Isso geralmente é o objetivo, porém há um grande desperdício de espaço -- uma partição /home de 10G requer 10G de espaço na imagem, mesmo que não haja um único arquivo na partição. Enquanto que você pode instalar tipicamente uma imagem do drive em um grande drive, você não pode utilizar diretamente o espaço extra, e você não pode instalar uma imagem em um drive menor.

Se essa é uma situação aceitável, você pode utilizar o comando dd, o qual permite copiar o conteúdo inteiro de um disco para outro, setor a setor. Isso proporcionaria a mesma funcionalidade de programas comerciais, porém a custo zero.

4.16 - Como eu obtenho o dmesg(8) para relatar um problema de instalação?

Ao relatar um problema é necessário incluir o dmesg(8). Entretanto, quando você necessita de fazer isso é porque o sistema não está funcionando normalmente ou não instalou, então você não possui o disco, a rede, ou outros recursos necessários para que você possa pegar o dmesg e enviá-lo à lista de discussão apropriada. Há outras maneiras, no entanto:

[Índice da FAQ] [Seção 3 - Primeiros passos com o OpenBSD] [Seção 5 - Construção do Sistema a partir do Código Fonte]


[voltar] www@openbsd.org
$OpenBSD: faq4.html,v 1.21 2010/07/17 17:38:10 ajacoutot Exp $