[Índice da FAQ] [Seção 7 - Controle do Teclado e da Tela] [Seção 9 - Migração para OpenBSD]
O processo detalhado:
Neste ponto, digite "boot -s" para ativar o sistema em modo usuário único:probing: pc0 com0 com1 apm mem[636k 190M a20=on] disk: fd0 hd0+ >> OpenBSD/i386 BOOT 3.02 boot>
A maioria das outras plataformas enviam parâmetros para o kernel através da ROM de inicialização.boot> boot -s
Naturalmente, o problema antes de se fazer isso vai ser provavelmente desligar o sistema. Normalmente, você deve apertar o botão de reinicialização ou de alimentação. Embora não seja desejável, não existe nenhuma alternativa. Não se preocupe muito, o sistema de arquivos do OpenBSD é muito robusto.
# fsck -p / && mount -uw / # fsck -p /usr && mount /usr
"Espera. Isso parece muito fácil! Isso não é muito seguro!" Se um atacante tem acesso físico ao seu sistema, ele vence, independente do SO no computador. Há algumas formas de forçar o uso de uma senha em modo usuário único (veja ttys(5)), ou eliminar a pausa em i386/amd64 (veja boot.conf), mas falando de maneira prática, transpor esses truques também é muito fácil (Um jeito: inicialize o sistema com um disquete ou CD-ROM, edite ou troque o arquivo de senhas). Você pode tentar prevenir isso, mas então alguém irá arrancar o disco rígido para fora do seu computador. Deixar nosso computador difícil de usar não é uma segurança real, e se você não tem uma máquina física em segurança, você não tem a segurança real.
Nota: muitos sistemas de "gerenciamento remoto" dão acesso à maioria das funcionalidades de um acesso físico ao computador, e isso precisa ser considerado. Não diga para você mesmo que o sistema é seguro se existe um modo para um atacante pegar o console, inserir um disquete virtual e forçar a reinicialização da máquina. Eles podem também ter acesso físico ao sistema. O sistema de gerenciamento de console normalmente não é tão seguro como o OpenBSD...
Uma causa comum para os problemas no X é a definição da variável do sysctl(8) machdep.allowaperture. Já que o padrão é ela estar desativada no OpenBSD, essa é uma causa bastante clara do problema.
Você precisa editar o arquivo /etc/sysctl.conf e definir o valor machdep.allowaperture=2 (ou 1, dependendo da sua plataforma). Isso permite que o X acesse o driver de abertura, xf86(4), na próxima reinicialização. Esse valor não pode ser mudado depois da inicialização. Esse valor também pode ser definido durante a instalação se você responder "Y" quando você for questionado se espera usar o sistema X Window.
O OpenBSD requer que o driver de abertura esteja ativado nas plataformas alpha, amd64, i386, macppc e sparc64 para controlar o acesso à placa de vídeo. Outras plataformas usam uma forma segura para controlar o sistema de vídeo, e não precisam disso (e não tem isso no kernel delas). Se você não vai usar o X no seu sistema, é recomendado que você não ative o driver de abertura.
Para mais informação a respeito da configuração e uso do X na sua plataforma, veja o arquivo /usr/X11R6/README no seu sistema instalado.
A seguinte tabela tenta fornecer uma visão geral dos compiladores para diferentes linguagens, onde você pode encontrar, e se existem quaisquer problemas ou limitações. Algumas delas são limitadas a certas plataformas, isso pode ser visto examinando um resultado de pesquisa na árvore de portes, e notando o que é mencionado em "Archs", ou inspecionando diretamente o arquivo Makefile do porte. No último caso, olhe as linhas que contém ONLY_FOR_ARCHS, NOT_FOR_ARCHS, BROKEN, etc.
Nota: Para facilitar o uso, este artigo fornece uma lista alfabética sem distinção entre as diferentes categorias de linguagens de programação. Esta não é uma lista que engloba tudo o que está disponível ou pode ser usado no OpenBSD. Se você achar que existem imperfeições ou problemas que não são mencionados aqui, sinta-se livre para relatar o problema.
| Linguagem | Onde? | Notas |
| Awk | base48.tgz, awk(1) | |
| lang/gawk | awk do projeto GNU | |
| C, C++ | comp48.tgz, gcc(1) | Os compiladores de C e C++ no sistema base foram auditados e possuem várias melhorias de segurança (por exemplo, ProPolice) ativadas por padrão. Veja gcc-local(1) para detalhes. Ele também emite avisos quando ocorre o uso de funções inseguras, tais como sprintf(), strcpy(), strcat(), tmpnam(), etc. Note que a maioria das plataformas usam o gcc 3.3.5, mas algumas ainda usam o 2.95.3. |
| C, C++ | lang/gcc | Esses compiladores não passaram por uma auditoria de segurança e não contêm melhorias de segurança como aqueles no sistema base. Os compiladores são renomeados para egcc, eg++, etc., para evitar a confusão com seus semelhantes no sistema base. |
| Caml | lang/ocaml | Objective Caml |
| COBOL | lang/open-cobol | |
| Erlang | lang/erlang | |
| Fortran | comp48.tgz, g77(1) | Somente o suporte para Fortran 77. |
| lang/gcc | Fortran 95 também é suportado pelo egfortran no gcc 4.0 e posteriores. Esse novo compilador é fornecido como um subpacote (g95) do gcc. | |
| Haskell | lang/ghc | |
| lang/nhc98 | ||
| Java | devel/jdk | JDK da Sun - somente a versão 1.7 está disponível como pacote; para versões antigas, veja as instruções de compilação a seguir. |
| lang/classpath | bibliotecas de classe base essenciais para Java | |
| lang/kaffe | ||
| lang/jikes | Compilador rápido, funciona bem. Este necessita de um "run-time jar", a versão bytecode de toda a API padrão. | |
| devel/eclipse | IDE grande; funciona com o JDK da Sun | |
| Lisp | lang/clisp | |
| Lua | lang/lua | Bibliotecas adicionais para Lua e utilidades auxiliares estão disponíveis na árvore de portes. |
| Perl | base48.tgz, perl(1) | Muitos módulos Perl estão disponíveis na árvore de portes, então procure por eles antes de instalar módulos do CPAN. |
| PHP | www/php4 | Uma grande quantidade de subpacotes está disponível para diferentes módulos PHP. |
| www/php5 | ||
| Prolog | lang/swi-prolog | Ambiente SWI-Prolog. |
| Python | lang/python | Outros portes estão usando o Python 2.5 por padrão. |
| Ruby | lang/ruby | |
| Scheme | lang/chicken | |
| lang/scheme48 | ||
| lang/scm | ||
| shells/scsh | ||
| Smalltalk | lang/squeak | |
| Tcl | lang/tcl |
Os portes do JDK estão no subdiretório devel/jdk da árvore de portes. Você pode escolher entre diferentes versões, cada uma em seu próprio subdiretório. Quando você digitar make, você verá uma mensagem pedindo que você baixe manualmente os arquivos de código fonte do sítio Web da Sun. Antes de você fazer isso, você precisa se registrar naquele sítio Web e aceitar a licença. Esse é o motivo pelo qual o sistema de portes não pode iniciar o download automaticamente.
Depois que você fez o download dos arquivos de distribuição necessários e do conjunto de correções, copie-os para o diretório /usr/ports/distfiles. Você também precisa ter o X instalado no seu sistema. Comece a compilação digitando make no subdiretório do porte.
O JDK requer um compilador Java 2 como um iniciador para a compilação. Para este propósito, desde o OpenBSD 4.0, o porte do JDK 1.5 usa o kaffe, o que permite que o JDK 1.5 seja usado tanto na plataforma i386 quanto na amd64, e reduz o tempo de compilação consideravelmente.
Versões antigas do JDK ainda requerem uma versão do JDK para Linux. A emulação do Linux no OpenBSD é restrita aos sistemas i386, desse modo as antigas versões do JDK somente compilam em i386. O sistema de portes deve tomar conta de instalar os arquivos necessários e regular a variável kern.emul.linux=1. Para mais informação, leia sobre emulação do Linux na página de manual compat_linux(8), e também a FAQ 9 - Como executar binários do Linux no OpenBSD. Note que essa emulação do Linux somente é requerida durante a compilação do JDK, o que resulta em um JDK nativo para o OpenBSD. Você não precisa da emulação do Linux para trabalhar com o JDK nativo.
Depois de muitas horas, a compilação chega ao fim. Simplesmente continue com make install para instalar o JDK.
Se você receber erros do tipo "Could not reserve enough space for object heap", tente aumentar os seus limites de memória de processos usando o comando embutido do shell ulimit com o sinalizador -d.
Você precisa configurar o kernel para sempre assumir que o drive de disquete está vinculado, mesmo se ele não foi detectado durante a fase de inicialização, marcando o bit sinalizador 0x20 no fdc(4). Isso pode ser feito usando o User Kernel Config ou o config(8) para alterar seu kernel,
# config -e -f /bsd
OpenBSD 4.8 (GENERIC) #136: Mon Aug 16 09:06:23 MDT 2010
deraadt@i386.openbsd.org:/usr/src/sys/arch/i386/compile/GENERIC
Enter 'help' for information
ukc> change fd*
254 fd* at fdc0 drive -1 flags 0x0
change [n] y
drive [-1] ? ENTER
flags [0] ? 0x20
254 fd* changed
254 fd* at fdc0 drive -1 flags 0x20
ukc> q
Saving modified kernel.
#
Quando seu sistema OpenBSD está inicializando, você provavelmente vai notar o prompt de inicialização ("boot").
boot>
Para a maioria das pessoas, você não tem que fazer nada aqui. Ele inicializa automaticamente se nenhum comando for dado. Mas algumas vezes problemas acontecem, ou funções especiais são necessárias. É nessa parte que tais opções são úteis. Antes de avançar, você deve ler a página de manual boot(8). Aqui nós veremos os comandos comuns mais usados no carregador de inicialização.
Para começar, se nenhum comando é utilizado o carregador de inicialização tenta automaticamente carregar o /bsd, se este falhar ele tenta o /obsd, e se este falhar ele tenta o /bsd.old. Você pode especificar um kernel digitando:
ouboot> boot hd0a:/bsd
boot> b /bsd
Isso carrega o kernel nomeado bsd da partição 'a' do primeiro disco rígido reconhecido pelo BIOS.
Esta é uma pequena lista das opções que você pode usar com o kernel do OpenBSD.
Essas opções são passadas no formato: boot [ imagem [-acds]]
Para mais informações, você pode ler a página de manual boot(8).
S/Key é um sistema de autenticação ``one-time password'' (uma senha diferente a cada início de sessão). Ele pode ser útil para aquelas pessoas que não têm a possibilidade de usar um canal criptografado que protege suas credenciais de autenticação, como o que pode ser estabelecido pelo ssh(1).
AVISO: Os sistemas de senha "one-time" protegem somente a informação de autenticação. Eles não previnem "eavesdroppers" de rede de ganhar acesso à informação privada. Além disso, se você está acessando um sistema seguro A, é recomendado que você faça isso a partir de um outro sistema confiável B, para se assegurar de que ninguém está ganhando acesso ao sistema A ao capturar as teclas digitadas ou ao capturar e/ou forjar a entrada e saída nos seus dispositivos de terminal.
O sistema S/Key gera uma sequência de senhas "one-time" (uso único) a partir da frase secreta do usuário junto com um convite recebido do servidor através de uma função de dispersão segura. O sistema somente é seguro se a frase secreta nunca for transferida pela rede. A inicialização ou mudança da sua frase secreta PRECISA ser feita através de um canal seguro, tal como o ssh(1) ou o console.
A implementação S/Key do OpenBSD pode usar uma variedade de algoritmos como a função de dispersão "one-way". Os seguintes algoritmos estão disponíveis:
Para começar, o diretório /etc/skey precisa existir. Se esse diretório não existe, o super usuário deve criá-lo. Isso pode ser feito com:
# skeyinit -E
Uma vez que o diretório está criado, você pode inicializar seu S/Key. Para fazer isso você precisa usar o skeyinit(1). O skeyinit(1) pergunta a você qual é a frase secreta S/Key, então você precisa executar esse comando dentro de um canal seguro, conforme explicado acima! O programa sempre lembra isso a você. No skeyinit(1), você será abordado pela senha para o sistema. Essa é a mesma senha que você usa para iniciar sessão no sistema. Depois que você obteve autorização com sua senha do sistema, você será perguntado pela sua frase secreta S/Key. Essa NÃO é a senha do sistema. Sua frase secreta precisa ter no mínimo 10 caracteres. Nós sugerimos o uso de uma frase memorizável que contenha diversas palavras como frase secreta. Este é um exemplo de uso.
$ skeyinit
Reminder - Only use this method if you are directly connected
or have an encrypted channel. If you are using telnet,
exit with no password and use skeyinit -s.
Password:
[Adding ericj with md5]
Enter new secret passphrase:
Again secret passphrase:
ID ericj skey is otp-md5 100 oshi45820
Next login password: HAUL BUS JAKE DING HOT HOG
Uma linha de importância em particular é a ID ericj skey is otp-md5 100 oshi45820, ela dá muitas informações para o usuário. Esta é a divisão das seções e suas importâncias.
Mas a mais importante é sua senha de uso único. Sua senha de uso único é formada por 6 palavras pequenas, que quando combinadas tornam-se a sua senha de uso único, com espaços e tudo. A senha de uso único mostrada pelo skeyinit não pode ser usada para o início de sessão (há um uso para essa primeira senha one-time, veja skeyinit(1)). Para ser possível iniciar sessão, uma senha de uso único correspondente ao convite mostrado pelo processo de início de sessão precisa ser calculada usando o skey(1). A próxima seção mostra como fazer isso.
Seu skey está inicializado. Agora você está pronto para iniciar sessão. Este é um exemplo de sessão usando S/Key para iniciar uma sessão. Para fazer um início de sessão S/Key, você adiciona :skey ao seu nome de início de sessão.
$ ftp localhost Connected to localhost. 220 oshibana.shin.ms FTP server (Version 6.5/OpenBSD) ready. Name (localhost:ericj): ericj:skey 331- otp-md5 96 oshi45820 331 S/Key Password: 230- OpenBSD 4.8 (GENERIC) #136: Mon Aug 16 09:06:23 MDT 2010 230- 230- Welcome to OpenBSD: The proactively secure Unix-like operating system. 230- 230- Please use the sendbug(1) utility to report bugs in the system. 230- Before reporting a bug, please try to reproduce it with the latest 230- version of the code. With bug reports, please try to ensure that 230- enough information to reproduce the problem is enclosed, and if a 230- known fix for it exists, include that as well. 230- 230 User ericj logged in. Remote system type is UNIX. Using binary mode to transfer files. ftp> quit 221 Goodbye.
Note que eu adicionei ":skey" ao meu nome de usuário. Isso diz ao ftpd que eu quero me autenticar usando S/Key. Alguns de vocês devem ter notado que meu número de sequência foi mudado para otp-md5 96 oshi45820, isso é porque eu usei S/Key diversas vezes para iniciar sessão. Mas como você pega sua senha de uso único? Bem, para calcular a senha de uso único você precisa conhecer o número de sequência que você está usando e sua chave. Você provavelmente está pensando, como lembrar o número de sequência?
Quando você está iniciando sessão, o processo de início de sessão mostra uma linha que contém a informação necessária, que você pode usar para gerar uma senha de uso único em um computador confiável através de um canal seguro, copiando a linha em um console:
otp-md5 96 oshi45820
Depois de digitar sua frase secreta, sua senha de uso único é mostrada, e você pode então copiar para o prompt de senha S/Key para iniciar uma sessão. O otp-md5 não é somente uma descrição da dispersão usada, ele é também um nome alternativo para o comando skey(1).
Se você já está autenticado e quer gerar uma senha de uso único para o próximo início de sessão, use skeyinfo(1), ele lhe diz o que usar no próximo início de sessão. Por exemplo, preciso gerar uma outra senha de uso único para um início de sessão que quero fazer no futuro (lembre-se, estou fazendo isso a partir de um canal seguro).
$ skeyinfo 95 oshi45820
O melhor jeito de fazer isso é usar skeyinfo -v, que mostra um comando adequado para ser executado na linha de comando. Por exemplo:
$ skeyinfo -v otp-md5 95 oshi45820
Assim, um modo simples de gerar a próxima senha S/Key é apenas:
$ `skeyinfo -v` Reminder - Do not use this program while logged in via telnet. Enter secret passphrase: NOOK CHUB HOYT SAC DOLE FUME
Note as aspas invertidas no exemplo acima.
Eu tenho certeza que muitos de vocês nem sempre tem uma conexão segura ou um computador local confiável para criar essas senhas, e criá-las através de uma conexão insegura não é viável. Como você pode criar múltiplas senhas em uma única vez? Você pode informar ao skey(1) o número de senhas que você quer criar. Elas então podem ser impressas e levadas com você para onde você for.
$ otp-md5 -n 5 95 oshi45820 Reminder - Do not use this program while logged in via telnet. Enter secret passphrase: 91: SHIM SET LEST HANS SMUG BOOT 92: SUE ARTY YAW SEED KURD BAND 93: JOEY SOOT PHI KYLE CURT REEK 94: WIRE BOGY MESS JUDE RUNT ADD 95: NOOK CHUB HOYT SAC DOLE FUME
Note que a senha de baixo deve ser usada primeiro, porque nós estamos decrementando a partir de 100.
O uso de S/Key com ssh(1) ou telnet(1) é feito de modo idêntico ao ftp -- você simplesmente coloca ":skey" no final do seu nome de usuário. Exemplo:
$ ssh -l ericj:skey localhost otp-md5 98 oshi45821 S/Key Password: SCAN OLGA BING PUB REEL COCA Last login: Thu Apr 7 12:21:48 on ttyp1 from 156.63.248.77 OpenBSD 4.8 (GENERIC) #136: Mon Aug 16 09:06:23 MDT 2010 Welcome to OpenBSD: The proactively secure Unix-like operating system. Please use the sendbug(1) utility to report bugs in the system. Before reporting a bug, please try to reproduce it with the latest version of the code. With bug reports, please try to ensure that enough information to reproduce the problem is enclosed, and if a known fix for it exists, include that as well. You have mail. $
SMP é suportado nas plataformas OpenBSD/i386, OpenBSD/amd64, OpenBSD/mvme88k e OpenBSD/sparc64 (incluindo os processadores UltraSPARC T1).
Um kernel SMP separado, "bsd.mp", é fornecido com os pacotes de arquivos de instalação, que pode ser selecionado na hora da instalação. É aconselhado que você teste a inicialização desse kernel antes de renomeá-lo para "bsd", tornando-o seu kernel padrão.
É esperado que outras plataformas compatíveis com SMP sejam suportadas no futuro. Na maioria das outras plataformas o OpenBSD funciona em um sistema SMP, mas utilizando somente um processador. A exceção disso é a plataforma SPARC -- OpenBSD/sparc requer algumas vezes que módulos MBus extras sejam removidos para que o sistema inicialize.
Você precisa usar /dev/cuaXX para as conexões iniciadas a partir de um sistema OpenBSD, os dispositivos /dev/ttyXX são somente para uso como terminal ou "dial-in". No passado foi possível usar dispositivos tty, agora o kernel do OpenBSD não é mais compatível com esse uso.
Extraído de cua(4):
Para portas de terminal de hardware, o "dial-out" é suportado através da correspondência de nós de dispositivos chamados unidades de chamada. Por exemplo, o terminal chamado /dev/tty03 teria uma unidade de chamada correspondente, de nome /dev/cua03. Esses dois dispositivos são normalmente diferenciados criando o nó do dispositivo de unidade de chamada com um número secundário 128 vezes maior que o nó de dispositivo "dial-in". Mesmo que o dispositivo dial-in (o tty) normalmente requeira um sinal de hardware para indicar ao sistema que ele está ativo, o dispositivo de dial-out (o cua) não, e, portanto, pode comunicar-se desimpedido com um dispositivo, tal como um modem. Isso significa que processos como o getty(8) esperam em um dispositivo dial-in até que uma conexão seja estabelecida. Enquanto isso, uma conexão dial-out pode ser estabelecida em um dispositivo dial-out (para a mesma porta de terminal do hardware) sem interferir em nenhuma outra parte do sistema. O processo getty(8) nem mesmo avisa que alguma coisa está acontecendo na porta de terminal. Se uma chamada de conexão chega depois que uma conexão dial-out foi finalizada, o processo getty(8) lida com ela apropriadamente, sem ter avisado a interferência da ação dial-out.
Lynx, um navegador em modo texto, está no sistema base, e tem suporte a SSL. Outros navegadores na árvore de portes são (sem uma ordem em particular):
Navegadores Gráficos (X)
Navegadores de Console (Modo Texto)
Você encontra todos estes na coleção de pacotes. Todos os navegadores mencionados acima estão localizados em /usr/ports/www/ depois da instalação da árvore de portes. A maioria está disponível como pacotes pré-compilados, disponíveis nos servidores FTP e no CD-ROM. Como a maioria dos navegadores gráficos são grandes e requerem algum tempo para o download e compilação, é muito recomendado o uso de pacotes quando disponíveis.
Mg é um mini editor de texto, no estilo do Emacs, incluído no OpenBSD. Mini significa que ele é pequeno (Emacs é muito grande!). Para o básico, leia a página de manual mg(1) e o tutorial que é fornecido junto com o código fonte.
Note que o mg é uma implementação pequena do Emacs, que possui funcionalidades similares ao Emacs 17, mas ele não implementa muitas outras funcionalidades do Emacs. (Isso inclui cliente de correio eletrônico e de notícias, como também modos para Lisp, C++, Lex, Awk, Java, etc.)
Há duas razões comuns para o ksh(1) aparentemente ignorar o arquivo .profile do usuário.
# chown username ~username/.profile
No xterm(1), argv[0] para o ksh(1) não começa com um traço ("-"). Colocar um traço no começo do argv[0] faz com que o csh(1) e o ksh(1) saibam que eles devem interpretar os seus arquivos de início de sessão. (Para o csh(1) é o .login, com um .cshrc separado que sempre é acessado quando o csh(1) é iniciado. Com ksh(1), isso é mais notável porque há somente um script de inicialização, .profile. Esse arquivo é ignorado, a menos que o shell seja um shell de sessão.)
Para consertar isso, adicione a linha "XTerm*loginShell: true" ao arquivo .Xdefaults no seu diretório pessoal. Note que esse arquivo não existe por padrão, você precisa criá-lo.
$ echo "XTerm*loginShell: true" >> ~/.Xdefaults
Você pode não ter que fazer isso em outros sistemas, já que algumas instalações do sistema X Window vêm com essa configuração por padrão. O OpenBSD preferiu seguir o comportamento do X.org.
O arquivo /etc/motd é editado a cada inicialização do sistema, substituindo tudo o que está nele, exceto a primeira linha em branco com a informação da versão do kernel do sistema. Quando você editar esse arquivo, tenha certeza que você começa depois dessa linha em branco, para evitar que o /etc/rc exclua essas linhas quando ele edita o /etc/motd na inicialização.
Veja este documento.
Não, ele não suporta. Nós usamos um mecanismo diferente, chamado Soft Updates, para alcançar resultados similares. Por favor, leia FAQ 14 - Soft Updates para obter mais detalhes.
Muitos novos usuários do OpenBSD experimentam um atraso de dois minutos no início de sessão quando estão usando serviços como ssh ou ftp. Isso também pode acontecer quando se usa um proxy, como o ftp-proxy, ou quando se envia uma mensagem de correio eletrônico para fora da estação de trabalho através do sendmail.
Isso é, na maioria das vezes, um problema de DNS reverso. DNS é "Domain Name Services" (Serviços de Nome de Domínio), o sistema que a Internet usa para converter um nome tal como "www.openbsd.org" em um endereço IP numérico. Uma outra tarefa do DNS é a funcionalidade de pegar um endereço numérico e converter novamente para um "nome", isso é o chamado DNS Reverso ("Reverse DNS").
Para oferecer um melhor acesso, o OpenBSD faz uma busca de DNS reverso em qualquer máquina que se conecta a ele em muitas formas diferentes, incluindo ssh, ftp, sendmail ou ftp-proxy. Infelizmente, em alguns casos a máquina que está fazendo a conexão não tem uma entrada apropriada de DNS reverso.
Isso pode ser muito chato. Mas, felizmente, existe uma solução fácil.
Seu arquivo /etc/hosts será algo parecido com isto:
::1 localhost.in.example.org localhost 127.0.0.1 localhost.in.example.org localhost 192.168.1.1 gw.in.example.org gw 192.168.1.20 scrappy.in.example.org scrappy 192.168.1.35 shadow.in.example.org shadow |
Seu arquivo resolv.conf será algo parecido com isto:
search in.example.org nameserver 24.2.68.33 nameserver 24.2.68.34 lookup file bind |
Uma objeção comum a isso é "Mas eu uso DHCP para minha rede interna! Como eu posso configurar meu /etc/hosts?" É fácil. Introduza as linhas para todos os endereços que seu servidor DHCP vai entregar, e para quaisquer dispositivos estáticos:
::1 localhost.in.example.org localhost
127.0.0.1 localhost.in.example.org localhost
192.168.1.1 gw.in.example.org gw
192.168.1.20 scrappy.in.example.org scrappy
192.168.1.35 shadow.in.example.org shadow
192.168.1.100 d100.in.example.org d100
192.168.1.101 d101.in.example.org d101
192.168.1.102 d102.in.example.org d102
[... parte recortada ...]
192.168.1.198 d198.in.example.org d198
192.168.1.199 d199.in.example.org d199
|
Nesse caso, estou assumindo que você tem uma faixa DHCP configurada de 192.168.1.100 até 192.168.1.199, mais as três definições estáticas listadas na parte superior do arquivo.
Se seu gateway precisa usar DHCP para a configuração, é possível que você encontre um problema: o dhclient sobrescreve seu /etc/resolv.conf toda vez que a conexão é renovada, o que remove a linha "lookup file bind". Isso pode ser resolvido colocando a linha "lookup file bind" no arquivo /etc/resolv.conf.tail.
As páginas Web atuais foram feitas com muito cuidado para que possam funcionar em uma grande variedade de navegadores reais, anteriores à versão 4.0 e posteriores. Nós não queremos tornar essas páginas velhas em conformidade com HTML4 ou XHTML até termos certeza de que esses padrões também irão funcionar em navegadores antigos; isso não é uma prioridade. Damos boas vindas para novos contribuidores, mas sugerimos que você trabalhe escrevendo código ou na documentação de novos aspectos do sistema, não melhorando as páginas Web existentes para seguir novos padrões.
Ao utilizar o rdate(8) para sincronizar seu relógio com um servidor NTP, você pode observar que seu relógio avançou/atrasou cerca de vinte segundos em relação a sua definição local de tempo.
Isso é causado devido a uma diferença entre o tempo UTC ("Coordinated Universal Time", ou Tempo Universal Coordenado, baseado em observações astronômicas) e o tempo TAI ("International Atomic Time", ou Tempo Atômico Internacional, baseado em relógios atômicos). Para compensar as variações na rotação da terra, se introduz "segundos de salto" no tempo UTC, mas o tempo TAI não é ajustado. Esses segundos de salto são a causa dessa discrepância. Para uma descrição detalhada, pesquise na Web por "leap seconds UTC TAI".
Corrigir o problema é simples. Na maioria dos países você consegue a hora correta se usar o parâmetro "-c" no rdate(8) e um fuso horário fora do diretório /usr/share/zoneinfo/right/. Por exemplo, se você está morando na Alemanha, você pode usar estes comandos:
# cd /etc && ln -sf /usr/share/zoneinfo/right/CET localtime
# rdate -ncv ptbtime1.ptb.de
Em outros países as regras podem variar.
Muitos outros sistemas operacionais podem ser configurados para fazer o mesmo, o que permite evitar esse problema.
Se ter um relógio de hardware configurado para UTC é um problema, você pode mudar o comportamento padrão do OpenBSD usando o config(8). Por exemplo, para configurar o OpenBSD para usar um relógio de hardware configurado para US/Eastern (5 horas a menos que UTC, ou seja, 300 minutos):
# config -ef /bsd
OpenBSD 4.8 (GENERIC) #136: Mon Aug 16 09:06:23 MDT 2010
deraadt@i386.openbsd.org:/usr/src/sys/arch/i386/compile/GENERIC
Enter 'help' for information
ukc> timezone 300
timezone = 300, dst = 0
ukc> quit
Saving modified kernel.
Veja
options(4)
e procure pela opção "TIMEZONE=value" para mais informação.
Normalmente, o fuso horário é configurado durante a instalação. Se você precisa mudar o fuso horário, você pode criar uma nova ligação simbólica para o arquivo de fuso horário apropriado em /usr/share/zoneinfo. Por exemplo, para configurar a máquina para usar EST5EDT como o novo fuso horário local:
# ln -fs /usr/share/zoneinfo/EST5EDT /etc/localtime
Veja também:
[Índice da FAQ] [Seção 7 - Controle do Teclado e da Tela] [Seção 9 - Migração para OpenBSD]