[Índice da FAQ] [Seção 3 - Primeiros passos com o OpenBSD] [Seção 5 - Construção do Sistema a partir do Código Fonte]
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:
Imagens de disquetes são disponibilizadas para a criação de disquetes de instalação em outro sistema compatível com Unix, ou em um sistema Windows. Os nomes dos arquivos são tipicamente floppy47.fs, embora diversas plataformas possuam múltiplas imagens de disquete disponíveis.
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.
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:
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:
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.
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 |
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 |
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.
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 |
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.
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:
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.
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.
|
Definir todo o disco para o OpenBSD resulta na realização de uma série de coisas importantes:
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.
Location of sets? (cd disk ftp http or 'done') [cd] ftp HTTP/FTP proxy URL? (e.g. 'http://proxy:8080', or 'none') [none] Enter Server? (hostname, list#, 'done' or '?') [mirror.example.org] obsd.cec.mtu.edu |
Server directory? [pub/OpenBSD/4.7/i386] Enter Login? [anonymous] Enter |
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:
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. # |
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.
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:
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)
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:
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./etc/localtime -> /usr/share/zoneinfo/US/Michigan
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. |
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):
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! ... |
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:
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.
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.
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:
Algumas considerações adicionais sobre particionamento:
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:
boot hd0a:/bsdpara 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.
# dd if=/dev/rsd0a of=openbsd.pbr bs=512 count=1Nota: 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.
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.
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>
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.
Por favor, consulte INSTALL.linux, que possui instruções sobre como fazer o OpenBSD funcionar com Linux.
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.domE então encaminhar a mensagem para
dmesg@openbsd.orgonde 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.txtEntã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.
À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:
# 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:
Alternativamente, você pode apenas reinicializar seu sistema, e isso será feito automaticamente pelo script de inicialização rc(8).# ldconfig -m /usr/X11R6/lib
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 . . . |
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.
machine mem +0x3000000@0x1000000Para 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.
# fdisk -u wd0
Nota: a opção "update" do modo interativo ("-e") do fdisk não
escreve os bytes de assinatura requeridos para tornar o disco
inicializável.
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.
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? |
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.
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).
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:
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.
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.
mount -t msdos /dev/fd0a /mnt
dmesg >/mnt/dmesg.txt
umount /mnt
Se você tiver um outro sistema OpenBSD, você pode fazer isso em um
disquete compatível com o sistema de arquivos do OpenBSD --
frequentemente o disquete de inicialização tem bastante espaço para
conter o dmesg. Nesse caso, tire a opção "-t msdos" acima.
Informações gerais sobre a configuração de console serial são discutidas em outra parte nesta FAQ; para capturar o registro da instalação, os seguintes comandos usualmente são suficientes.
i386
No prompt do carregador de inicialização, digite
boot> set tty com0
Isso diz ao OpenBSD para usar a primeira porta serial (também chamada de COM1 ou COMA na documentação do PC) como um console serial. A taxa padrão de comunicação é 9600 ("baud rate").
Sparc/Sparc64
Essas máquinas usam automaticamente um console serial se iniciadas sem um teclado. Se você possui um teclado e um monitor conectados, você pode forçar o sistema a usar um console serial com o seguinte comando no prompt ok.
ok setenv input-device ttya ok setenv output-device ttya ok reset
[Índice da FAQ] [Seção 3 - Primeiros passos com o OpenBSD] [Seção 5 - Construção do Sistema a partir do Código Fonte]