Você está na página 1de 639

TRADUO F3R4 @CSROZ

clenilsonsq@yahoo.com

O FreeBSD completo

ndice
Consideraes .............................................................................xxv
Prefcio .......................................................................................... xxvii
A quarta edio ...................................................................................... xxvii
Convenes usadas neste livro ..................................................................xxviii
Descrevendo o teclado .............................................................................. xxix
Agradecimentos ....................................................................................... xxx
Revisores do livro ................................................................................... xxxi
Como este livro foi escrito ....................................................................... xxxii

1: Introduo......................................................................................1
Como usar este livro .....................................................................................2
Caractersticas FreeBSD ................................................................................4
As condies de licenciamento .......................................................................6
Um pouco de histria ....................................................................................7
O fim das guerras UNIX.................................................................................9
Outros sistemas operacionais UNIX-like livre ....................................................9
FreeBSD e Linux ....................................................................................... 10
Documentao do sistema FreeBSD ............................................................... 12
Lendo a documentao on-line ....................................................................... 12
O manual online ........................................................................................ 13
GNU info ................................................................................................ 15
Outra documentao sobre FreeBSD .............................................................. 16
v

vi

ndice analtico

A comunidade FreeBSD .............................................................................. 17


Listas de discusso ..................................................................................... 17
Cancelar a assinatura de listas de discusso ........................................................ 19
Os grupos de usurios.................................................................................. 19
Relatar bugs ............................................................................................. 19
O Berkeley daemon .................................................................................... 20

2: Antes de instalar ..................................................................... 25


Usando hardware antigo .............................................................................. 25
Os drivers de dispositivo .............................................................................. 27
PC Hardware ............................................................................................. 27
Como o sistema detecta o hardware ............................................................... 29
Configurando placas ISA ............................................................................. 29
PCMCIA, PC Card e CardBus ...................................................................... 30
PC Card e cartes CardBus ........................................................................... 31
Universal Serial Bus ................................................................................... 31
Discos ...................................................................................................... 31
Layout de dados em disco ............................................................................ 33
BIOS do PC e discos ................................................................................... 33
Particionamento de disco .............................................................................. 34
Dispositivos de bloco e de carter .................................................................... 35
Fazendo com que os sistemas de arquivos ....................................................... 39
Limitaes de tamanho de disco .................................................................... 39
Mostrar hardware ....................................................................................... 40
O hardware ............................................................................................... 41
O teclado ................................................................................................. 41
O mouse ................................................................................................. 41
A placa de vdeo e monitor ............................................................................ 42
Hardware Laptop ....................................................................................... 42
Compaq / Digital mquinas Alpha ................................................................. 42
A distribuio do CD-ROM.......................................................................... 43
CD-ROM de instalao ................................................................................ 43
Vivo CD-ROM File System .......................................................................... 46
CVS Repository CD-ROM ............................................................................ 46
O Ports coleo de CD-ROMs ........................................................................ 46

3: A instalao rpida ................................................................ 47


Tornar as coisas mais fceis para si mesmo ..................................................... 47
FreeBSD em um disco com espao livre ......................................................... 48
FreeBSD compartilhado com Microsoft .......................................................... 49
Configurando o XFree86 ............................................................................. 50

O FreeBSD completo

vii

4: instalao do SO compartilhada .................................... 51


Discos separados ........................................................................................ 51
Compartilhando um disco ............................................................................ 52
Compartilhando com Linux ou outro BSD ...................................................... 52
Repartitioning com FIPS.............................................................................. 52
Repartitioning-um exemplo ........................................................................... 54

5: Instalando o FreeBSD .......................................................... 59


Instalao na arquitetura Intel i386 ................................................................ 59
Iniciando a sysinstall ................................................................................... 60
Os tipos de instalao .................................................................................. 61
Definir as opes de instalao ..................................................................... 62
Particionamento do disco ............................................................................. 63
Parties compartilhadas .............................................................................. 66
Definio de sistemas de arquivos ................................................................. 67
O parties? ............................................................................................. 68
Quanto espao de swap? ............................................................................... 70
Sistemas de arquivos em discos compartilhados ................................................... 75
Seleo de distribuies ............................................................................... 75
Selecionando a mdia de instalao ................................................................ 76
Executando a instalao ............................................................................... 77
Instalando em um sistema Alpha ................................................................... 78
Atualizando uma verso antiga do FreeBSD .................................................... 79
Como desinstalar o FreeBSD ........................................................................ 79
Se as coisas do errado ................................................................................ 80
Problemas com sysinstall .............................................................................. 80
Problemas com a instalao do CD-ROM .......................................................... 80
No possvel inicializar .............................................................................. 80
Instalao de inicializao incorreta ................................................................. 81
Problemas de geometria ............................................................................... 81
Sistema trava durante a inicializao ................................................................ 82
Inicializao do sistema, mas no executado corretamente ..................................... 82
Sistema de arquivos raiz enche ....................................................................... 82
Pnico .................................................................................................... 83
Fixao de uma instalao quebrado................................................................. 84
Mtodos de instalao alternativos ................................................................. 85
Preparando disquetes de inicializao ............................................................... 85
Inicializao a partir de disquetes .................................................................... 86
Instalando via ftp ....................................................................................... 86
Instalando via ftp ....................................................................................... 87
Instalando atravs do NFS ............................................................................ 88
Instalando a partir de uma partio Microsoft ...................................................... 88
Criando disquetes para uma instalao flexvel .................................................... 89

viii

ndice analtico

6: Configurao Ps-instalao .......................................... 91


Instalao de software adicional .................................................................... 92
Workstation instante ................................................................................... 93
Alterar o shell padro para o root .................................................................... 94
Adicionando usurios .................................................................................. 94
Definindo a senha de root ............................................................................. 95
Fuso horrio .............................................................................................. 95
Servios de rede ......................................................................................... 97
Configurando interfaces de rede ...................................................................... 98
Outras opes de rede.................................................................................. 99
Preferncias de inicializao ....................................................................... 100
Configurando o mouse .............................................................................. 101
Configurando o X..................................................................................... 102
Configurao de desktop ............................................................................ 108
Configurao adicional X ........................................................................... 108
Reiniciando o novo sistema ........................................................................ 109

7: As ferramentas do comrcio ..........................................111


Usurios e grupos ..................................................................................... 112
Ganhando acesso ...................................................................................... 113
O desktop KDE........................................................................................ 116
O menu do desktop ................................................................................... 116
O gerenciador de janelas fvwm2 .................................................................. 118
Comeando fvwm2 ................................................................................... 119
Alterar o visor X ...................................................................................... 120
Seleo de profundidade de pixel .................................................................. 121
Conseguir um shell ................................................................................... 121
Shell bsico ............................................................................................ 122
Opes ................................................................................................. 122
Parmetros shell ...................................................................................... 123
Os campos que podem conter espaos ............................................................. 125
Arquivos e nomes de arquivos .................................................................... 125
Os nomes de arquivos e extenses ................................................................. 126
Os caminhos relativos................................................................................ 126
Caracteres englobamento ............................................................................ 126
De entrada e de sada................................................................................. 127
As variveis de ambiente ............................................................................ 128
Linha de edio de comando ........................................................................ 131
Histrico de comandos e outras funes de edio .............................................. 133
Arquivos de inicializao do shell ................................................................. 135
Mudar seu shell ....................................................................................... 136
Diferenas da Microsoft ............................................................................ 138
Cortes: para trs e para a frente ..................................................................... 138

O FreeBSD completo

ix

Caracteres de tabulao .............................................................................. 138


Caracteres de controle do carro ..................................................................... 139

O editor Emacs ........................................................................................ 139


Parando o sistema ..................................................................................... 141

8: Tomar o controle...................................................................143
Usurios e grupos ..................................................................................... 144
Escolher um nome de usurio....................................................................... 144
Adicionando usurios ................................................................................ 145
O super-usurio ....................................................................................... 146
Tornando-se super usurio .......................................................................... 147
Adicionar ou alterar senhas ......................................................................... 147
Processos ................................................................................................ 148
Quais os processos que eu tenho correndo?....................................................... 149
Os processos que esto a correr? ................................................................... 149
Daemons ................................................................................................ 150
cron ..................................................................................................... 151
Processos em FreeBSD Release 5 .................................................................. 152
topo ..................................................................................................... 152
Processos de parada .................................................................................. 154
A marcao do tempo ............................................................................... 155
A varivel de ambiente TZ .......................................................................... 155
Mantendo o horrio correto ......................................................................... 156
Os arquivos de log .................................................................................... 157
Suporte ao processador Multiple ................................................................. 159
Dispositivos PC Card ................................................................................ 159
DEVD: O daemon dispositivo ...................................................................... 159
Remoo de dispositivos PC Card ................................................................. 161
Cdigo do carto alternativo PC.................................................................... 161
Configurando dispositivos PC Card na inicializao ............................................ 161
Emulando outros sistemas .......................................................................... 162
Emuladores e simuladores........................................................................... 162
Emulando Linux ...................................................................................... 163
Executando o emulador de Linux .................................................................. 163
Linux procfs ........................................................................................... 164
Problemas executando Linux binrios ............................................................. 164
Emulando SCO UNIX ............................................................................... 164
Emulando Microsoft Windows.................................................................... 165
Acessando arquivos do Microsoft .................................................................. 165

ndice analtico

9: A Coleo de Ports ..............................................................167


Como instalar um pacote ........................................................................... 168
Construo de um porto ............................................................................. 169
Instalao de portas durante a instalao do sistema ............................................ 169
Instalao de portas a partir do CD-ROM primeiro ............................................. 169
Instalao de portas do sistema de arquivos ao vivo de CD-ROM ............................ 169
Conseguir novos portos .............................................................................. 170
O que est em que porta? ............................................................................ 172
Obtendo o arquivo fonte ............................................................................. 173
Construo do porto .................................................................................. 174
Dependncias do Porto .............................................................................. 174
Documentao do pacote ........................................................................... 174
Ficando somente binrio software ................................................................ 175
Manter as portas ....................................................................................... 176
Atualizando as portas ................................................................................ 176
Usando portupgrade .................................................................................. 176
Controle de portas instaladas ...................................................................... 178
Submeter um novo porto............................................................................ 180

10: Os sistemas de arquivos e dispositivos ...............181


Permisses de arquivo ............................................................................... 181
Mandatory Access Control ......................................................................... 186
Ligaes ................................................................................................. 186
Hierarquia de diretrios ............................................................................. 187
Diretrios padro ..................................................................................... 187
Tipos de sistemas de arquivos ..................................................................... 190
Soft updates ........................................................................................... 191
Snapshots .............................................................................................. 191
Montagem de sistemas de arquivos .............................................................. 192
Arquivos de montagem dos sistemas de arquivos................................................ 193
Desmontando sistemas de arquivos ................................................................ 194
Dispositivos FreeBSD ............................................................................... 195
Resumo dos dispositivos FreeBSD ................................................................ 195
Terminais virtuais .................................................................................... 197
Pseudo-terminais ..................................................................................... 197

11: Discos .......................................................................................199


Adicionando um disco rgido ...................................................................... 199
Instalao de hardware de disco .................................................................... 200
A formatao do disco ............................................................................... 203
Usando sysinstall ..................................................................................... 204

O FreeBSD completo

xi

Faz-lo da maneira mais difcil ................................................................... 209


Criando uma tabela de partio ..................................................................... 210
Rotulagem do disco .................................................................................. 214
Disklabel ............................................................................................... 215
Problemas de execuo disklabel .................................................................. 216
Criando sistemas de arquivos ...................................................................... 217
Montagem dos sistemas de arquivos ............................................................... 217
Movendo sistemas de arquivos .................................................................... 218
Recuperando-se de erros de dados em disco................................................... 218

12: O Vinum Volume Manager ............................................221


Objetos Vinum ........................................................................................ 221
Espao em disco mapeamento para plexos ....................................................... 222
A integridade dos dados ............................................................................. 223
Que organizao complexa? ........................................................................ 224
Criao de unidades Vinum ........................................................................ 225
Comeando Vinum ................................................................................... 225
Configurando Vinum ................................................................................ 226
O arquivo de configurao .......................................................................... 226
Criando um sistema de arquivos.................................................................... 227
Aumento da resilincia: o espelhamento .......................................................... 228
Adicionando plexos para um volume existente .................................................. 229
Adicionando subdiscos de plexos existentes...................................................... 230
Otimizar o desempenho.............................................................................. 232
Resilincia e desempenho ........................................................................... 233
Banco de dados de configurao Vinum ....................................................... 235
Instalando FreeBSD em Vinum ................................................................... 236
Recuperando-se de falhas no disco............................................................... 240
Disco de inicializao falhou ....................................................................... 241
Migrando Vinum para uma nova mquina ..................................................... 241
Coisas que voc no deve fazer com Vinum .................................................. 241

13: gravao de CD-Rs ...........................................................243


Criando uma imagem ISO-9660 .................................................................. 243
Testando o CD-R ..................................................................................... 245
Gravar o CD-R ........................................................................................ 246
Gravar um CD-R em um queimador de ATA .................................................... 246
Gravar um CD-R em um gravador SCSI .......................................................... 248
Cpia de CD-ROMs ................................................................................. 250

xii

ndice analtico

14: Tapes, backups e disquetes ........................................251


Fazer o backup de seus dados ..................................................................... 251
O meio de backup? ................................................................................... 252
Dispositivos de fita ................................................................................... 252
O software de backup ................................................................................ 253
alcatro ................................................................................................. 253
O uso de disquetes no FreeBSD .................................................................. 256
A formatao de um disquete ....................................................................... 256
Sistemas de arquivos em disquete .................................................................. 257
Sistemas de arquivo do Microsoft .................................................................. 259
Outros usos de disquetes ............................................................................ 259
Acessando disquetes Microsoft ..................................................................... 260

15: Impressoras ..........................................................................263


Configurao da impressora ....................................................................... 264
Testando a impressora ............................................................................... 265
Configurando o / etc / printcap ..................................................................... 265
Impresso remota ..................................................................................... 266
Filtros Spooler ........................................................................................ 267
Iniciando o spooler ................................................................................... 268
Testando o spooler ................................................................................... 268
Soluo de problemas ............................................................................... 269
Usando o spooler...................................................................................... 270
Remover trabalhos de impresso ................................................................... 271
PostScript ............................................................................................... 271
Exibir com gv ......................................................................................... 272
Impresso com ghostscript .......................................................................... 273
Qual driver? ........................................................................................... 274
PDF ....................................................................................................... 276

16: Redes e Internet ..................................................................277


Rede de camadas ...................................................................................... 279
A camada de enlace .................................................................................. 280
A camada de rede ..................................................................................... 281
A camada de transporte .............................................................................. 281
Atribuio de portas e servios de Internet ....................................................... 283
As conexes de rede ................................................................................. 284
A conexo de rede fsica ............................................................................ 285
Ethernet.................................................................................................. 286
Como Ethernet funciona ............................................................................. 287
Encontrar endereos Ethernet ....................................................................... 289

O FreeBSD completo

xiii

Quais so os sistemas em que Ethernet? .......................................................... 290


Classes de endereos ................................................................................. 290
Endereos roteado .................................................................................... 291

LANs sem fio .......................................................................................... 291


Como as redes sem fio coexistem .................................................................. 293
Encryption ............................................................................................. 293
A rede de referncia .................................................................................. 294

17: Configurar a rede local ...................................................297


Configurao de rede com sysinstall ............................................................ 297
Configurao manual da rede...................................................................... 299
Descrevendo sua rede ................................................................................ 300
Verificando a configurao da interface ........................................................... 301
Os arquivos de configurao ........................................................................ 302
Configurao automtica com DHCP ........................................................... 302
Cliente DHCP ......................................................................................... 302
Servidor DHCP ....................................................................................... 303
Iniciando dhcpd ....................................................................................... 304
Configurando cartes de rede do PC ............................................................ 304
Retirando as placas de rede ......................................................................... 306
Configurao de rede sem fio ..................................................................... 306
O que podemos fazer agora ......................................................................... 307
Roteamento ............................................................................................. 307
Adicionando rotas automaticamente ............................................................... 309
Adicionar rotas manualmente ....................................................................... 309
Configurao de rota do ISP ....................................................................... 310
Olhando para as tabelas de roteamento ......................................................... 311
Bandeiras .............................................................................................. 312
Encaminhamento de pacotes ....................................................................... 313
Resumo da configurao ............................................................................ 313

18: Conexo Internet ............................................................315


A conexo fsica ...................................................................................... 315
Estabelecendo-se na Internet....................................................................... 317
Qual nome de domnio? ............................................................................. 317
Preparando-se para o registo ........................................................................ 318
Registrando um nome de domnio ................................................................. 318
Obter endereos IP ................................................................................... 318
Escolhendo um provedor de servios de Internet ............................................ 319
Quem esse ISP? ..................................................................................... 319
Perguntas a um ISP ................................................................................... 319
Fazendo a conexo ................................................................................... 323

xiv

ndice analtico

19: As comunicaes seriais ..............................................325


Terminologia ........................................................................................... 326
Comunicao sncrona e assncrona ............................................................. 326
Comunicao assncrona ............................................................................ 326
A comunicao sncrona............................................................................. 327
As portas seriais ....................................................................................... 328
Conexo porta....................................................................................... 328
Quando posso enviar os dados? .................................................................... 330
Modems ................................................................................................. 330
Velocidades de modem .............................................................................. 331
Compresso de dados ................................................................................ 331
A velocidade do link ................................................................................. 332
Discando ............................................................................................... 333
Comandos de modem ................................................................................ 333
Discar manualmente ................................................................................. 335
Discando-um exemplo ............................................................................... 336
Discando ............................................................................................... 338

20: Configurando o PPP .........................................................339


Configurao rpida.................................................................................. 340
Como funciona PPP .................................................................................. 340
As interfaces .......................................................................................... 340
Discagem .............................................................................................. 341
Negociao ............................................................................................ 341
Quem atira a primeira pedra? ....................................................................... 342
Autenticao .......................................................................................... 343
Quais endereos IP no link?......................................................................... 344
A mscara de rede para o link ...................................................................... 345
Endereos estticos e dinmicos ................................................................... 346
A definio de uma rota padro .................................................................... 347
Discagem automtica ................................................................................ 347
A informao que voc precisa saber ........................................................... 347
Configurando o usurio PPP ....................................................................... 348
Configurando o usurio PPP: os detalhes ......................................................... 349
Negociao ............................................................................................ 350
Solicitando LQR ...................................................................................... 351
Autenticao .......................................................................................... 351
Configurao de IP dinmico ....................................................................... 352
Correndo usurio PPP................................................................................ 353
Quanto tempo vamos ficar ligado? ................................................................. 353
Automatizando o processo .......................................................................... 354
Aes em conectar e desconectar .................................................................. 355
Se as coisas do errado .............................................................................. 355

O FreeBSD completo

xv

Configurando o kernel do PPP .................................................................... 355


Autenticao .......................................................................................... 356
Discagem .............................................................................................. 357
Quem atira a primeira pedra? ....................................................................... 358
Configurao de IP dinmico ....................................................................... 358
Execuo do kernel PPP ............................................................................. 358
Automatizando o processo .......................................................................... 359
Parmetros do tempo limite ......................................................................... 359
Resumo da configurao ............................................................................ 359
Aes em conectar e desconectar .................................................................. 360
Coisas que podem dar errado ...................................................................... 361
Problemas ao estabelecer uma conexo ........................................................... 361

21: O Domain Name Service ................................................363


Domnios e zonas ..................................................................................... 364
Zonas ................................................................................................... 365
Configurar um servidor de nome ................................................................. 365
Uso de DNS passiva ................................................................................. 366
Servidor de nomes em um sistema autnomo ................................................. 366
Servidor de nomes em uma rede do usurio final ............................................ 368
O registro SOA ....................................................................................... 368
Os registros A ......................................................................................... 369
Os registros NS ....................................................................................... 370
Apelidos ............................................................................................... 370
Os registros MX ...................................................................................... 370
Os registros HINFO .................................................................................. 371
Juntando tudo ......................................................................................... 371
A pesquisa reversa .................................................................................... 372
A viso distante: o mundo exterior ................................................................. 373
O arquivo named.conf ............................................................................... 373
Servidores de nomes escravos ..................................................................... 376
O prximo nvel abaixo: delegao de zonas .................................................. 377
china.example.org .................................................................................... 377
example.org com a delegao....................................................................... 378
Mensagens de chamada ............................................................................. 379
Atualizando a configurao da verso 4 ........................................................ 380
Olhando-se as informaes de DNS ............................................................. 381
Verificao de DNS para correo ............................................................... 382
Segurana do DNS ................................................................................... 383

xvi

ndice analtico

22: Firewalls, aliasing IP e proxies ...................................385


Segurana e firewalls ................................................................................ 386
ipfw: a definio de regras de acesso .............................................................. 386
Aes ................................................................................................... 388
Escrevendo regras .................................................................................... 388
Os arquivos de configurao ........................................................................ 389
Tentando com isso.................................................................................... 393
Aliasing IP .............................................................................................. 393
Software aliasing IP .................................................................................. 394
natd ..................................................................................................... 395
Os servidores proxy .................................................................................. 396
Instalando o squid .................................................................................... 397
Iniciando squid........................................................................................ 398
Configurao de proxy do navegador ........................................................... 399
Configurando informaes de proxy para ftp ..................................................... 399

23: a depurao de rede .........................................................401


Como abordar problemas de rede ................................................................ 401
Camada problemas ligao ......................................................................... 402
Problemas da camada de rede ..................................................................... 406
traceroute................................................................................................ 407
Perda de pacote de alta............................................................................... 410
tcpdump ................................................................................................. 411
A perda de pacotes revisitado ....................................................................... 412
Camadas de transporte e aplicao ............................................................... 414
Etreo .................................................................................................... 414

24: o acesso rede bsica: clientes ...............................417


A World Wide Web .................................................................................. 418
Os navegadores da Web............................................................................. 418
ssh......................................................................................................... 419
Acesso sem senha ..................................................................................... 420
Criao e distribuio de chaves ................................................................... 421
Autenticao automaticamente ..................................................................... 422
Configurando o X para usar ssh .................................................................... 423
ssh tneis ................................................................................................ 424
X tunelamento ........................................................................................ 425
Outras utilizaes de tneis ......................................................................... 425
Configurando o ssh ................................................................................... 425
Resumo dos arquivos em ~ /. Ssh .................................................................. 428
Conexes ssh para soluo de problemas ...................................................... 428

O FreeBSD completo

xvii

telnet ..................................................................................................... 430


Telnet seguro .......................................................................................... 431
Usando telnet para outros servios ................................................................. 431
Copiando arquivos.................................................................................... 432
scp ........................................................................................................ 432
ftp ......................................................................................................... 433
Especificando nomes de arquivos como URIs ................................................... 434
Outros comandos de ftp ............................................................................. 434
mget .................................................................................................... 435
incitar................................................................................................... 435
reget .................................................................................................... 436
usurio ................................................................................................. 436
sftp ........................................................................................................ 437
rsync ...................................................................................................... 437
Copiando hierarquias de diretrios ................................................................. 438
Usando um servidor rsync .......................................................................... 440
O Network File System ............................................................................. 441
NFS cliente ............................................................................................. 442
Montagem de sistemas de arquivos remotos ...................................................... 442
Onde montar sistemas de arquivos NFS ........................................................... 444
Montagem de sistemas de arquivos NFS automaticamente ..................................... 445
NFS estranheza ........................................................................................ 445
Nenhum dispositivo .................................................................................. 445
Apenas um sistema de arquivos .................................................................... 446

25: o acesso rede bsica: servidores .........................447


Execuo de servidores a partir do inetd ....................................................... 448
Configurando ftpd .................................................................................... 450
ftp annimo ............................................................................................ 450
Restringir o acesso e registro ....................................................................... 452
Execuo sshd ......................................................................................... 453
rsyncd .................................................................................................... 454
Configurando um servidor web ................................................................... 455
Configurando o apache .............................................................................. 455
O arquivo de configurao .......................................................................... 456
httpd.conf .............................................................................................. 456
Hosts virtuais.......................................................................................... 457
Log File Format....................................................................................... 459
O controle de acesso ................................................................................. 460
Os mdulos do Apache .............................................................................. 462
Servidores web proxy ................................................................................ 462
Caching ................................................................................................ 462
Execuo apache ..................................................................................... 462
Servidor NFS .......................................................................................... 463

xviii

ndice analtico

/ Etc / exportaes .................................................................................... 463


Samba .................................................................................................... 464
Instalando o software Samba ....................................................................... 465
smbd e nmbd: os daemons do Samba .............................................................. 466
O arquivo de configurao .......................................................................... 466
Configurao de senhas.............................................................................. 469
Testando a instalao ................................................................................ 469
Exibindo status de Samba ........................................................................... 470

26: Correio eletrnico: clientes ..........................................471


Formatos de correio .................................................................................. 471
Agentes de usurio de email ....................................................................... 472
correio .................................................................................................. 472
Outros MUAs ......................................................................................... 473
Arquivos, pastas ou diretrios? ................................................................... 473
vira-lata ................................................................................................ 474
Criar uma nova mensagem ......................................................................... 477
Respondendo a uma mensagem ................................................................... 478
Usando pastas .......................................................................................... 480
Apagar mensagens.................................................................................... 481
Marcao de mensagens ............................................................................ 481
Configurando o vira-lata ............................................................................ 481
Cores em vira-lata .................................................................................... 483
Aliases e-mail .......................................................................................... 484
Cabealhos de email ................................................................................. 484
Como enviar e responder e-mails .................................................................. 487
Usando anexos MIME ............................................................................... 489

27: Electronic mail: servidores ..........................................491


Como o correio entregue ......................................................................... 492
Arquivos MTA........................................................................................ 492
Quem recebe o e-mail? .............................................................................. 493
Postfix ................................................................................................... 493
Configurando o postfix .............................................................................. 494
Host e nomes de domnio............................................................................ 495
Retransmisso de email .............................................................................. 496
Alias revisitado ....................................................................................... 496
Rejeitando o spam .................................................................................... 498
Rejeitando domnios de spam conhecidas......................................................... 500
Rejeitando locais sem consulta reversa ............................................................ 501
Rejeitando sites listados ............................................................................. 501
Reconhecendo mensagens falsificadas ............................................................ 501

O FreeBSD completo

xix

Restries Remetente: resumo ...................................................................... 501


Correndo postfix no momento da inicializao ............................................... 502
Conversando com o MTA ........................................................................... 502
Baixando mail do seu ISP .......................................................................... 503
POP: o Post Office Protocol ........................................................................ 504
popper: o servidor .................................................................................... 504
fetchmail: o cliente ................................................................................... 504
Listas de discusso: majordomo .................................................................. 505

28: XFree86 em profundidade .............................................507


X configurao: a teoria............................................................................. 507
Como TVs e monitores de trabalho ................................................................ 508
Como monitores diferem das televises ........................................................... 510
Como fritar seu monitor ............................................................................. 510
O controlador CRT ................................................................................... 511
A linha de modo XF86Config ...................................................................... 513
XF86Config ............................................................................................ 516
O layout do servidor ................................................................................. 517
A seo de Arquivos ................................................................................. 517
A seo ServerFlags.................................................................................. 518
A seo Module....................................................................................... 518
A seo InputDevice ................................................................................. 519
A seo do Monitor .................................................................................. 519
A seo Dispositivo .................................................................................. 520
A seo da tela ........................................................................................ 521
Vrios monitores e servidores ..................................................................... 523
Vrios servidores ..................................................................................... 523
X na rede ................................................................................................ 524
Vrios monitores em vrios servidores ............................................................ 525
Parando X ............................................................................................. 525

29: Iniciar e parar o sistema .................................................527


Iniciando o sistema ................................................................................... 528
Coisas que voc pode fazer antes de inicializar ............................................... 529
O que voc est indo para arrancar? ............................................................. 529
Carregador de comandos ............................................................................ 530
loader.conf............................................................................................. 532
Carregar outros mdulos em tempo de inicializao ............................................ 532
Carga automtica kld................................................................................. 533
Rodando o kernel ..................................................................................... 533
Modo de usurio nico .............................................................................. 540
Proteger o modo single-user senha ................................................................. 541

xx

ndice analtico

Desligar e reiniciar o sistema ...................................................................... 541


FreeBSD sem discos ................................................................................. 542
Inicializao via rede ................................................................................ 543
Configurao dos sistemas de arquivos ........................................................... 544
Construindo um kernel diskless .................................................................... 544
Configurando o TFTP................................................................................ 544
Configurando o DHCP............................................................................... 545
Outros cadaros Ethernet ............................................................................ 546
Configurar o equipamento........................................................................... 547
Sistema de compartilhamento de arquivos entre vrias mquinas ............................. 548
Substitutos de disco .................................................................................. 549

30: arquivos de configurao do FreeBSD .................551


/ Etc / rc.conf ........................................................................................... 552
O nosso / etc / rc.conf ................................................................................ 565
Arquivos que voc precisa para mudar ......................................................... 566
/ Etc / exportaes .................................................................................... 566
/ Etc / fstab ............................................................................................ 566
/ Etc / group ........................................................................................... 568
/ Etc / namedb / named.conf ........................................................................ 568
/ Etc / mail ............................................................................................. 568
/ Etc / master.passwd ................................................................................. 568
Arquivos que voc pode precisar de mudar .................................................... 568
/ Etc / crontab ......................................................................................... 569
/ Etc / csh.cshrc, / etc / csh.login, / etc / csh.logout .............................................. 569
/ Etc / dhclient.conf................................................................................... 569
/ Etc / disktab .......................................................................................... 569
/ Etc / ftpusers ......................................................................................... 569
/ Etc / hosts ............................................................................................ 569
/ Etc / hosts.equiv ..................................................................................... 570
/ Etc / hosts.lpd........................................................................................ 570
/ Etc / inetd.conf ...................................................................................... 570
/ Etc / login.access .................................................................................... 570
/ Etc / login.conf ...................................................................................... 570
/ Etc / motd ............................................................................................ 572
/ Etc / newsyslog.conf................................................................................ 572
/ Etc / nsswitch.conf .................................................................................. 572
/ Etc / pccardd.conf ................................................................................... 572
/ Etc / periodic.conf .................................................................................. 572
/ Etc / printcap ........................................................................................ 573
/ Etc / profile .......................................................................................... 573
/ Etc / rc.firewall ...................................................................................... 573
/ Etc / resolv.conf ..................................................................................... 573
/ Etc / syslog.conf..................................................................................... 573

O FreeBSD completo

xxi

/ Etc / ttys .............................................................................................. 573


/ Boot / device.hints .................................................................................. 574

Arquivos que voc no deve mudar.............................................................. 576


/ Etc / gettytab ......................................................................................... 576
/ Etc / manpath.config................................................................................ 576
/ Etc / netconfig ....................................................................................... 576
/ Etc / networks ....................................................................................... 576
/ Etc / passwd ......................................................................................... 576
/ Etc / protocolos ...................................................................................... 577
/ Etc / pwd.db ......................................................................................... 577
/ Etc / rc ................................................................................................ 577
Arquivo / etc/rc.i386 ................................................................................. 577
/ Etc / rc.network e / etc/rc.network6 .............................................................. 577
/ Etc / rc.pccard ....................................................................................... 577
/ Etc / rc.serial ......................................................................................... 577
/ Etc / shells ........................................................................................... 577
/ Etc / services ......................................................................................... 577
/ Etc / spwd.db ........................................................................................ 578
/ Etc / termcap ......................................................................................... 578
/ Etc / peridica ....................................................................................... 578
Arquivos de configurao obsoletos ............................................................. 578
/ Etc / host.conf ....................................................................................... 579
/ Etc / named.boot .................................................................................... 579
/ Etc / netstart ......................................................................................... 579
/ Etc / sysconfig ....................................................................................... 579

31: Manter-se atualizado ........................................................581


FreeBSD lanamentos e CVS ..................................................................... 581
Nomes ou marcas simblicas ....................................................................... 582
FreeBSD lanamentos ............................................................................... 582
FreeBSD-RELEASE ................................................................................. 582
FreeBSD-STABLE ................................................................................... 583
CORREO DE SEGURANA lanamentos .................................................. 583
FreeBSD-CURRENT ................................................................................ 583
Obter atualizaes da Net........................................................................... 584
CVSup ................................................................................................. 585
Que CVSup servidor? ................................................................................ 587
Execuo cvsup ....................................................................................... 587
Obtendo lanamentos individuais .................................................................. 587
Criando a rvore de cdigo fonte ................................................................. 588
Tag lanamento ....................................................................................... 588
Atualizando uma rvore existente .................................................................. 591
Usando uma rvore CVS remoto ................................................................... 591

xxii

ndice analtico

32: Atualizando o software do sistema .........................593


Atualizando kernel eo processo ................................................................... 595
Atualizando o kernel ................................................................................. 597
Atualizando os arquivos de inicializao ....................................................... 598
Atualizando os arquivos de configurao ...................................................... 599
Mesclando o arquivo de senhas..................................................................... 600
Mesclando / etc / group ............................................................................. 602
Mergemaster, segunda vez ......................................................................... 603

33: kernels personalizados...................................................607


Construir um novo kernel .......................................................................... 608
Configurando dispositivos de I / O ............................................................... 608
O diretrio de compilao do kernel ............................................................. 609
O arquivo de configurao ......................................................................... 610
Nomeando o kernel................................................................................... 611
Opes de kernel ..................................................................................... 612
Mltiplos processadores ............................................................................. 613
As opes de depurao ............................................................................. 614
Preparando-se para atualizaes .................................................................. 616
Construir e instalar o novo kernel ................................................................ 616
Reiniciando ............................................................................................ 618
Fazendo ns de dispositivos ....................................................................... 619
Mdulos carregveis do kernel .................................................................... 619
sysctl ..................................................................................................... 620
Viver com FreeBSD-CURRENT ................................................................. 621
Construir kernels com smbolos de depurao ................................................... 621
Resoluo de problemas em FreeBSD-CURRENT.............................................. 621
Analisando despejos de memria do kernel ................................................... 622
Escalada atravs da pilha ............................................................................ 624
Descobrir o que realmente aconteceu .............................................................. 625

A: Bibliografia ..............................................................................627
Livros sobre BSD ..................................................................................... 627
Guias dos usurios .................................................................................... 628
Guias dos administradores ......................................................................... 628
Guias dos programadores ........................................................................... 629
Referncia Hardware ................................................................................ 629
Os manuais 4.4BSD .................................................................................. 630
Obtendo o FreeBSD em CD-ROM............................................................... 630

O FreeBSD completo

xxiii

B: A evoluo do FreeBSD ...................................................633


FreeBSD Libera 1 e 2................................................................................ 633
FreeBSD Release 3 ................................................................................... 633
O driver SCSI CAM ................................................................................. 634
Mdulos carregveis do kernel .................................................................... 635
O formato do objeto ELF ........................................................................... 635
O que aconteceu com minhas bibliotecas? ........................................................ 636
FreeBSD verso 4 .................................................................................... 638
No h mais dispositivos de bloco ............................................................... 640
New ATA (IDE) driver de disco .................................................................. 641
Novo driver do console ............................................................................. 641
FreeBSD Release 5 ................................................................................... 641

ndice .................................................................................................643

Consideraes
Tenho sido um longo tempo desenvolvedor das distribuies de software Berkeley (BSD). Meu
envolvimento comeou em 1976, na Universidade da Califrnia, em Berkeley. Eu fui atrado como
um escritrio companheiro de Bill Joy, que, sozinho, escreveu o cdigo BSD e, em seguida, comeou a
manipulao de seu lanamento. Bill passou a executar o Grupo de Pesquisa em Sistemas de Computao (CSRG)
que desenvolveu e divulgou as primeiras distribuies BSD totalmente completos. Depois de Bill
partida para se tornar um dos fundadores da Sun Microsystems, eu finalmente subiu para cabecear a CSRG
e supervisionar o lanamento da livre distribuio 4.4BSD-Lite. O 4.4BSD-Lite
distribuio a base para todas as variantes livremente distribuveis do BSD hoje bem
como o fornecimento de muitos dos utilitrios encontrados em Linux e distribuies UNIX comerciais.
Com o lanamento do 4.4BSD-Lite, da Universidade da Califrnia em Berkeley deixou ainda mais
Desenvolvimento BSD. Depois de analisar os pontos fortes e fracos de diferentes BSD
grupos de desenvolvimento, eu decidi fazer o meu desenvolvimento contnuo em FreeBSD porque
teve a maior comunidade de usurios. Nos ltimos 10 anos, portanto, eu tenho sido um membro da
a equipe de desenvolvedores do FreeBSD.
Eu sempre senti que importante usar o seu prprio produto. Por esta razo, eu tenho
sempre correr BSD em todos os lugares: no meu trabalho, na minha Web / arquivo / mail / backup do servidor, em
meu laptop e no meu firewall. Por necessidade, eu tenho que encontrar ferramentas para fazer o meu trabalho
que ser executado em meus sistemas BSD. Pode ser mais fcil simplesmente executar o Windows e PowerPoint para
fazer a sua apresentaes, mas h um nmero cada vez maior de alternativas bem l isso
rodar em FreeBSD, como o cdigo aberto OpenOffice.org suite ou MagicPoint.
Nos velhos tempos, no havia muitas pessoas que trabalham com o software BSD. Este
restrio sobre o desenvolvimento BSD tornou fcil manter-se com o que poderia fazer e BSD
como gerenciar seu sistema. Mas a ltima dcada assistiu a um crescimento exponencial no
movimento de cdigo aberto. O resultado foi um grande aumento no nmero de pessoas
trabalhando em FreeBSD e um aumento ainda maior no nmero de aplicaes e ferramentas
que foram portados para rodar em FreeBSD. Tornou-se um trabalho de tempo mais do que completo apenas para
manter o controle de todos os recursos do sistema, e muito menos para descobrir como us-los todos.
Greg Lehey tem feito um trabalho maravilhoso com este livro de ajudar aqueles de ns que querem
utilizar plenamente o sistema FreeBSD para fazer isso sem ter que dedicar toda a nossa vida
xxv

xxvi

Prefcio

descobrir como. Ele atravessou e descobriu cada uma das diferentes tarefas que voc
pode pedir o seu sistema para fazer. Ele identificou o software que voc precisa para fazer a tarefa.
Ele explica como configur-lo para as suas necessidades operacionais. Ele diz-lhe como monitorar
subsistema resultante para se certificar de que est funcionando como desejado. E, ele ajuda voc a
identificar e corrigir problemas que possam surgir.
O livro comea com o bsico de conseguir o sistema FreeBSD instalado e funcionando em seu
hardware, incluindo laptops, estaes de trabalho e servidores. Em seguida, ele explica como personalizar
uma instalao para as suas necessidades pessoais. Esta personalizao inclui o download e
operando o mais importante dos pacotes de software de mais de 8000 no FreeBSD
portas de cobrana. O livro tambm inclui um conjunto muito abrangente de sistemas
informaes de administrao, incluindo a instalao e operao de impressoras, local e
rede externa, o sistema de nome de domnio, os sistemas de arquivos remotos NFS e Samba,
correio eletrnico, navegao na web e de hospedagem, e dial-up para FAX, login remoto, e ponto-aapontar conexes de rede.
Em suma, este livro fornece tudo o que voc precisa saber sobre o sistema FreeBSD de
o dia em que primeiro pegar o software ao longo do dia voc tem um conjunto completo de mquinas.
Ele cobre seu gama completa de necessidades de computao. H uma razo que este livro to
Populares: como diz o ttulo, o FreeBSD completa. Estou muito feliz em ver esta reviso
que mais uma vez cumpre o seu mandato.
Marshall Kirk McKusick
Berkeley, Califrnia
Fev 2003

Neste captulo:
A quarta edio
Convenes usadas
este livro
Agradecimentos
Como este livro foi
escrito

Prefcio
FreeBSD um sistema operativo de alto desempenho derivado do Berkeley Software
Distribuio (BSD), a verso do UNIX desenvolvida na Universidade da Califrnia em
Berkeley, entre 1975 e 1993. FreeBSD no um clone UNIX. Historicamente e
tecnicamente, ele tem mais direitos do que UNIX System V para serem chamados UNIX. Legalmente, pode
no ser chamado de UNIX, uma vez que UNIX agora uma marca registrada do The Open Group.
Este livro destina-se a ajud-lo a obter o FreeBSD instalado e funcionando em seu sistema e
familiariz-lo com ele. No posso fazer tudo, mas a abundncia de livros UNIX e on-line
documentao esto disponveis, e uma grande proporo delas so directamente aplicveis aos
FreeBSD. No decorrer do texto, vou repetidamente apontar-lhe outra documentao.
Eu no estou esperando por voc para ser um guru, mas eu espero que voc entenda os fundamentos do uso
UNIX. Se voc vem de um fundo Microsoft, vou tentar fazer a transio de um
pouco menos pedregoso.

A quarta edio
Este livro j teve uma histria bastante. Dependendo da forma como voc conta, esta a
quarta ou quinta edio O FreeBSD completo: a primeira edio do livro foi chamado
Instalando e executando o FreeBSD, e foi publicado em Maro de 1996. A prxima edio
foi chamado de'' The Complete FreeBSD'', primeira edio. As trs primeiras edies foram
publicado pela Walnut Creek CDROM, que cessou actividade editorial, em 2000. Isto
a primeira edio a ser publicada pela O'Reilly and Associates.
Durante este tempo, FreeBSD tem mudado continuamente, e difcil para um livro para manter
com a mudana. Isso no significa que o FreeBSD mudou alm do reconhecimento,
mas as pessoas tm feito um grande trabalho de trabalhar fora essas pequenas arestas que fazem o
diferena entre um sistema operacional utilizvel e que um prazer de usar. Se voc
vm para FreeBSD do System V, voc certamente vai notar a diferena.
Durante o tempo de vida das edies anteriores deste livro, percebi que grande parte do texto
torna-se obsoleto muito rapidamente. Por exemplo, na primeira edio eu fui a um monte de problemas
xxvii

xxviii

Prefaciar

para dizer s pessoas como instalar a partir de um CD-ROM ATAPI, pois no momento em que o apoio era
pouco vacilante. Quase antes que o livro foi lanado, a equipe melhorou o FreeBSD
apoio e rolou para o lanamento base. O resultado? Muitas mensagens de correio electrnico para o
FreeBSD-questions lista de discusso dizendo:'' Onde posso obter ATAPI.FLP?''. Mesmo o
lista errata freqentemente postou no ajuda muito.
Este tipo de ocorrncia traz para casa a diferena na escala de tempo entre software
lanamentos e publicao de livros. FreeBSD CD-ROMs so liberadas vrias vezes por ano. A
nova edio de um livro a cada ano considerado muito freqente, mas, obviamente, no pode esperar
para manter-se com o ciclo de lanamento de software. Como resultado, este livro contm menos tempo
material sensvel do que as edies anteriores. Por exemplo, o captulo sobre a construo de kernels no
j contm uma discusso aprofundada do kernel construir parmetros. Eles mudam muito
freqncia, e as descries, embora corretas no momento da impresso, seria apenas
confusas. Em vez disso, o captulo agora explica onde encontrar as informaes up-to-date.
Outra coisa que descobri foi que o livro era muito grande. A segunda edio
continha 1.100 pginas de man pages, pginas de manual do FreeBSD que tambm so instalados
on-line no sistema. Estas pginas impressas eram mais fceis de ler, mas eles tiveram dois
desvantagens: em primeiro lugar, eles estavam um pouco desatualizado em relao verso on-line, e
Em segundo lugar, pesava cerca de 1 kg (2,2 lbs). O livro era simplesmente pesado, e
algumas pessoas relataram que tinham rasgado fisicamente as pginas do manual do livro para
torn-lo mais controlvel. Como resultado, a terceira edio tinha apenas o homem mais necessrio
pginas.
Os tempos mudaram desde ento. Na altura, O FreeBSD completo foi a nica
Livro Ingls-language em FreeBSD. Agora, existem vrios, consulte o Apndice A,
Bibliografia, para mais detalhes. Em particular, o FreeBSD handbook on-line est disponvel
tanto na forma impressa e on-line em http://www.freebsd.org/handbook/index.html, ento eu tenho
deixou muito das questes mais sensveis ao tempo deste livro. Consulte o manual on-line
em vez disso. Alternativamente, voc pode imprimir as pginas man-se-ver pgina 15 para mais detalhes.
muito difcil encontrar uma boa seqncia de apresentao que o material neste livro. Em
muitos casos, no um problema da galinha e do ovo: o que voc precisa saber primeiro?
Dependendo do que voc precisa fazer, preciso obter informaes em diferentes seqncias.
Passei muito tempo tentando apresentar o material na seqncia melhor possvel, mas
inevitavelmente, voc vai achar que voc vai ter que saltar atravs de uma pgina da mirade
cruzar referncias.

Convenes usadas neste livro


Neste livro, eu uso negrito para os nomes das teclas no teclado. Vamos ver mais sobre este
na prxima seo.
Eu uso itlico para os nomes dos utilitrios UNIX, diretrios, nomes de arquivos e URI s (Uniform
Resource Identifier, a nomeao de arquivo de tecnologia da World Wide Web), e
enfatizar novos termos e conceitos quando so introduzidas pela primeira vez. Eu tambm uso este tipo de letra para
Comentrios nos exemplos.

Convenes usadas neste livro

xxix

Eu uso largura constante em exemplos para mostrar o contedo dos arquivos, a sada do
comandos, variveis do programa, os valores reais de palavras-chave, para IDs e-mail, para os nomes dos
Internet Notcias newsgroups, e no texto para representar comandos.
Eu uso itlico largura constante em exemplos para mostrar as variveis de contexto quesubstituies especficas devem ser feitas. Por exemplo, a varivel nome do arquivo Seria
substitudo por um nome de arquivo real.
Eu uso largura constante negrito nos exemplos para mostrar comandos ou texto que seria
digitado literalmente pelo usurio.
Neste livro, eu recomendo o uso do shell Bourne ou um de seus descendentes (sh, festana,
pdksh, ksh ou zsh). sh est na base do sistema, e os restantes so todos na Coleo de Ports,
que veremos no captulo 9. Eu pessoalmente uso o bater shell. Este um pessoal
preferncia, e uma recomendao, mas no o padro shell: o tradicional BSD
shell o shell C (csh), que substituiu o FreeBSD com um descendente mais cheio de recursos,
tcsh. Em particular, o padro de instalao define o raiz usurio com um csh. Consulte a pgina
136 para obter detalhes sobre como alterar o shell.
Na maioria dos exemplos, vou mostrar a janela de comandos como $, Mas no importa qual normalmente
shell que voc usa. Em alguns casos, no entanto, que faz:

s vezes voc precisa ser super-usurio, o usurio que pode fazer qualquer coisa. Se este for
necessrio, eu indic-lo usando o prompt #.

s vezes, os comandos s funcionam com a Bourne Shell e seus derivados (zsh,


bash), e eles no vo trabalhar com csh, tcsh e amigos. Nestes casos, eu vou mostrar o
csh alternativa com a norma csh incitar %.
No decorrer do texto que vai ocasionalmente tocar num assunto que no de importncia absoluta, mas
que podem ser de interesse. Vou imprimir essas notas em texto menor, como este.

Descrevendo o teclado
Uma das grandes diferenas entre os sistemas operacionais UNIX e outra refere-se maneira
eles tratam os chamados'' cdigos de controle do carro.'' Quando UNIX foi escrito, o padro
terminal interativo ainda era o modelo Teletipo KSR 35. Esta monstruosidade mecnica
impresso em 10 caracteres por segundo, e os personagens de controle do carro realmente causa
movimento fsico da carruagem. Os dois personagens mais importantes foram Transporte
Retorno, que moveu a carruagem (que levou a cabea de impresso) para a margem esquerda, e
Line Feed , Que transformaram a prensa para fazer avanar o papel pela altura de uma linha. Para chegar a
o incio de uma nova linha, que voc precisava para emitir os caracteres de controle. Ns no temos
placas ou carruagens mais, mas os personagens ainda esto l, e em muitos sistemas,
incluindo a Microsoft, uma linha de texto terminada por um caractere de retorno de carro e uma linha
carter alimentar. UNIX usa apenas um carcter'''' nova linha, que corresponde linha
alimentar. Essa diferena, por vezes, d origem a confuso. Vamos olh-la com mais detalhes
na pgina 267.

xxx

Prefaciar

surpreendente quantas existem termos confusos para descrever as teclas individuais no


teclado. Meu favorito o qualquer chave ('' Pressione qualquer tecla para continuar''). Ns no vamos
estar usando o qualquer chave neste livro, mas h uma srie de outras chaves, cujos nomes precisam
entendimento:

O Entrar ou Voltar chave. Vou chamar esta ENTER.

Caracteres de controle (caracteres produzidos por mantendo pressionada a Ctrl e pressionando uma tecla
teclado normal, ao mesmo tempo). Vou mostrar a eles como, por exemplo, Ctrl-D no
texto, mas esses personagens so freqentemente ecoado na tela como um acento circunflexo () seguido
pelo caractere digitado, por isso, os exemplos, voc pode ver as coisas como D.

O Alt chave, que Emacs aficionados chamar um META chave, funciona da mesma maneira como
o Ctrl chave, mas gera um conjunto diferente de caracteres. Estes so, por vezes,
abreviado por prefixar o personagem com um til (~) ou os personagens Um-. Eu
pessoalmente, como este mtodo melhor, mas para evitar confuso eu vou representar o carter
gerado, mantendo pressionada a Alt fundamental e urgente D como Alt-D.

NL o nova linha personagem. Em ASCII, Ctrl-J, mas os sistemas UNIX ger-lo


quando voc pressiona o ENTER chave. UNIX tambm se refere a este personagem como \ N, uma utilizao
que vem da linguagem de programao C.

CR o retorno de carro caracteres, em ASCII Ctrl-M. A maioria dos sistemas de gerao com
o ENTER chave. UNIX tambm se refere a este personagem como \ R de novo, isso vem de
a linguagem de programao C.

HT o ASCII guia horizontal personagem, Ctrl-I. A maioria dos sistemas que geram quando o
TAB tecla pressionada. UNIX e C tambm se referem a esse personagem como \ T.

Agradecimentos
Este livro baseia-se no trabalho de muitas pessoas, em primeiro lugar o FreeBSD
projeto de documentao. Anos atrs, eu levei partes significativas do FreeBSD handbook,
em particular o Captulo 7, As ferramentas do comrcio. O FreeBSD manual fornecido como
documentao on-line com o lanamento do FreeBSD-consulte a pgina 12 para obter mais informaes.
sujeito licena BSD documentao, uma variante da licena de software BSD.
A redistribuio e utilizao do cdigo fonte (SGML DocBook) ou formato 'compilado' (SGML,
HTML, PDF, PostScript, RTF e assim por diante), com ou sem modificao, so
permitidas desde que as seguintes condies sejam atendidas:
1. As redistribuies do cdigo fonte (SGML DocBook) devem manter os direitos autorais acima
aviso prvio, esta lista de condies ea seguinte iseno de responsabilidade nas primeiras linhas deste
arquivo sem modificaes.
2. As redistribuies em forma compilada (transformada para outros DTDs, convertida para PDF,
PostScript, RTF e outros formatos) devem reproduzir o aviso de copyright acima,
esta lista de condies ea seguinte iseno de responsabilidade na documentao e / ou
outros materiais fornecidos com a distribuio.

Agradecimentos

xxxi

Esta documentao fornecida pelo Projeto de Documentao do FreeBSD'' como '' e


quaisquer garantias expressas ou implcitas, incluindo, mas no limitado a, o implcito
garantias de comerciabilidade ou adequao a um propsito particular, so recusadas. Em nenhum
evento ser o Projeto de Documentao do FreeBSD se responsabiliza por quaisquer danos diretos, indiretos,
, danos especiais, exemplares, incidentais ou conseqentes (incluindo, mas no limitado
a, aquisio de bens ou servios substitutos, perda de uso, dados ou lucros, ou
interrupo de negcios) que sejam causados em qualquer teoria de responsabilidade, seja em
contrato, responsabilidade estrita ou ato ilcito (incluindo negligncia ou no) decorrentes de qualquer forma
do uso desta documentao, mesmo se avisados da possibilidade de tais
dano.

Revisores do livro
Este livro no seria o mesmo sem a ajuda de um pequeno grupo de crticos dedicados
que tentou o que eu disse, e assinalou que no deu certo. Em particular, eu gostaria de
agradecer Jack Velte de Walnut Creek CDROM, que teve a idia deste livro, no primeiro
lugar, Jordan Hubbard e Gary Palmer para rasgar a estrutura eo contedo para alm
vrias vezes, e tambm Bob Bishop, Julian Elischer, Stefan Esser, John Fieber, Glen
Foster, Poul-Henning Kamp, Michael Smith, e Nate Williams para valiosa contribuio
es ('' O que, voc espera que os novos usurios de saber que voc tem que desligar a mquina
antes de lig-lo?'') 0,1 Finalmente, um agradecimento especial a Josef Mllers, Andreas Ritter, e
Jack Velte, que colocou os primeiros rascunhos deste livro atravs de seus ritmos e realmente instalado
FreeBSD com a sua ajuda.
A segunda edio teve muito mais crtica do que a primeira. Um certo nmero de dedicado
revisores realizada atravs de vrios meses que eu gradualmente dobrado para fora cpia utilizvel. Em
especial, um agradecimento especial a Annelise Anderson, Sue Blake, Jonathan M. Bresler, William
Bulley, Mike Cambria, Brian Clapper, Paul Coyne, Lee Crites, Jerry Dunham, Stefan
Esser, Patrick Gardella, Gianmarco Giovannelli, David Kelly, Andreas Klemm, Andrew
MacIntyre, Jonathan Michaels, Jrg Micheel, Marco Molteni, Charles Mott, Jay D.
Nelson, Daniel J. O'Connor, Andrew Perry, Kai Peters, Wes Peters, Mark Prior, Guido
van Rooij, Andrew Rutherford, Thomas Vickery e Don Wilde.
Muitos dos revisores segunda edio voltou para a terceira edio. Alm disso, graas
para John Birrell por sua ajuda com a arquitetura Alpha, e Michael A. Endsley para
esmiuando erros, alguns dos quais tinham estado presentes desde os tempos de Instalao e
Execuo FreeBSD.
As seguintes pessoas ajudaram com a quarta edio: Annelise Anderson, Jonathan
Arnold, Sue Blake, Doug Barton, Brian Clapper, Jerry Dunham, Matt Geddes, Jeremias
Gowdy, Daniel B. Hemmerich, Justin Heath, Peter NM Hansteen, Paul A. Hoadley, Ed
Irvine, John Lind, Johannes Lochmann, Warner Losh, Yin Cheung 'Yogesh' Mar,
Andrew MacIntyre, Jonathan Michaels, Ove Ruben R. Olsen, Hiten Pandya, Linh Pham,
Daniel Phillips, Siegfried P Pietralla. Stephen J. Roznowski, Dan Shearer e Murray
Stokely.
Alm disso, os meus agradecimentos ao povo de O'Reilly and Associates, especialmente Andy Oram,
1. Consulte a pgina 541 para obter detalhes sobre como desligar o sistema.

xxxii

Prefaciar

com quem eu tinha discutido esse projeto h anos antes que ele finalmente foi capaz de convencer
O'Reilly que era uma boa idia. Posteriormente, foi Andy que coordenou vendo isso
projeto bastante incomum atravs de canais O'Reilly. Emma Colby desenhou a capa e
David Futato desde especificaes, recomendaes e exemplos para o formato. Linley Dolby
revisar o documento depois que eu pensei que estava pronto, e encontrou dezenas de erros em quase
cada pgina, garantindo que o livro melhor que seus antecessores.
Finalmente, graas a David Lloyd para o emprstimo de uma unidade ATA CD-R ao escrever o ATA
seo do Captulo 13, Gravao de CD-Rs.

Como este livro foi escrito


Este livro foi escrito e composto inteiramente com ferramentas fornecido como padro com o
Sistema FreeBSD, incluindo a coleo de ports. O texto deste livro foi escrito com
o GNU Emacs editor, e foi formatado em 10 de Abril 2003, com o GNU groff texto
formatador, Verso 1.18, e alguns fortemente modificadas mm macros. O processo era
realizada sob FreeBSD 5.0-CURRENT. Mesmo as verses de desenvolvimento do FreeBSD
so estveis o suficiente para executar o trabalho pesado, como formatao de texto profissional.
Os arquivos de origem para este livro so mantidos sob RCS, o Sistema de Controle de Reviso (Veja o
pgina de manual rcs (1)). Aqui esto as IDs Verso RCS para os captulos deste livro em particular.
$ Id:
$ Id:
$ Id:
$ Id:
$ Id:
$ Id:
$ Id:
$ Id:
$ Id:
$ Id:
$ Id:
$ Id:
$ Id:
$ Id:
$ Id:
$ Id:
$ Id:
$ Id:
$ Id:
$ Id:
$ Id:
$ Id:
$ Id:
$ Id:
$ Id:
$ Id:
$ Id:
$ Id:
$ Id:
$ Id:

title.complete, v 4.2 2003/04/09 19:43:58 grog grog Exp $


preface.mm, v 4.19 2003/04/09 19:26:11 grog Exp $
introduction.mm, v 4.22 2003/04/02 06:36:16 grog Exp $
concepts.mm, v 4.21 2003/04/02 06:37:12 grog Exp $
quickinstall.mm, v 4.11 2003/04/09 19:26:40 grog Exp $
shareinstall.mm, v 4.12 2003/04/09 19:26:50 grog Exp $
install.mm, v 4.21 2003/04/02 06:39:30 grog Exp $
postinstall.mm, v 4.12 2003/04/02 06:40:31 grog Exp $
unixref.mm, v 4.16 2003/04/02 06:41:29 grog Exp $
unixadmin.mm, v 4.13 2003/04/02 06:50:29 grog Exp $
ports.mm, v 4.12 2003/04/02 06:43:08 grog Exp $
filesys.mm, v 4.17 2003/04/02 06:43:57 grog Exp $
disks.mm, v 4.17 2003/04/02 06:44:17 grog Exp $
vinum.mm, v 4.19 2003/04/09 19:56:42 grog Exp $
burncd.mm, v 4.13 2003/04/02 06:46:59 grog Exp $
tapes.mm, v 4.10 2003/04/02 06:47:36 grog Exp $
printers.mm, v 4.17 2003/04/02 06:48:05 grog Exp $
netintro.mm, v 4.16 2003/04/02 06:48:55 grog Exp $
netsetup.mm, v 4.18 2003/04/03 08:57:41 grog Exp $
isp.mm, v 4.10 2003/04/02 03:09:55 grog Exp $
modems.mm, v 4.10 2003/04/02 03:11:02 grog Exp $
ppp.mm, v 4.14 2003/04/02 08:14:21 grog Exp $
dns.mm, v 4.19 2003/04/02 08:43:25 grog Exp $
firewall.mm, v 4.12 2003/04/09 20:40:28 grog Exp $
netdebug.mm, v 4.17 2003/04/03 02:04:14 grog Exp $
netclient.mm, v 4.14 2003/04/03 02:17:18 grog Exp $
netserver.mm, v 4.19 2003/04/09 20:42:40 grog Exp $
mua.mm, v 4.15 2003/04/03 02:07:47 grog Exp $
mta.mm, v 4.16 2003/04/03 01:18:20 grog Exp $
xtheory.mm, v 4.13 2003/04/03 03:13:24 grog Exp $

Como este livro foi escrito


$ Id:
$ Id:
$ Id:
$ Id:
$ Id:
$ Id:
$ Id:
$ Id:

starting.mm, v 4.21 2003/04/03 02:35:05 grog Exp $


configfiles.mm, v 4.18 2003/04/03 02:42:08 grog Exp $
current.mm, v 4.17 2003/04/09 19:28:00 grog Exp $
upgrading.mm, v 4.6 2003/04/03 01:51:34 grog grog Exp $
building.mm, v 4.17 2003/04/03 02:48:25 grog Exp $
biblio.mm, v 4.7 2003/04/02 04:56:03 grog Exp $
evolution.mm, v 4.13 2003/04/02 04:59:47 grog Exp $
tmac.Mn, v 1.15 2003/04/09 19:56:02 grog Exp $

xxxiii

Neste captulo:
Como usar este livro
Caractersticas FreeBSD
As condies de licenciamento
Um pouco de histria
Outro livre UNIX-like
sistemas operativos
Sistema FreeBSD
documentao
Outra documentao
em FreeBSD
O FreeBSD
comunidade
Listas de discusso
O Berkeley
demnio

1
Introduo

FreeBSD um sistema operacional livre derivado da AT & T UNIX operando system.1 Ele
executado nas seguintes plataformas:

Computadores baseados na arquitetura CPU Intel i386, incluindo o 386, 486 e


Pentium famlias de processadores, e CPUs compatveis da AMD e Cyrix.

O processador Alpha Compaq / Digital.

Alm disso, os esforos de desenvolvimento significativos esto indo para portar o FreeBSD
outro hardware, nomeadamente a arquitetura de 64 bits da Intel e IBM / Motorola PowerPC
arquitetura.

64 bits mquinas SPARC da Sun Microsystems.

Este livro descreve as verses lanadas do FreeBSD para processadores Intel e Alpha.
Suporte atual para 64 processadores SPARC est mudando rpido demais para que seja prtico para dar
detalhes especficos para este processador, mas quase tudo neste livro tambm se aplica a SPARC
64.

1. FreeBSD no contm qualquer AT & T cdigo proprietrio, por isso pode ser distribudo gratuitamente. Consulte a pgina 7 para
mais detalhes.
introduction.mm, v v4.22 (2003/04/02 06:36:16)
1

O FreeBSD completo

Como usar este livro


Este livro destina-se a um nmero de diferentes pblicos. Ele tenta apresentar o
material sem muitas referncias frente. Ele contm as seguintes partes:
1. A primeira parte, captulos 1-6, diz-lhe como instalar o FreeBSD eo que fazer se
as coisas do errado.
2. Captulos 7 a 15 apresent-lo para a vida com FreeBSD, incluindo a configurao de opcionais
recursos e administrao do sistema.
3. Captulos 16-27 apresent-lo ao suporte de rede rica do FreeBSD.
4. Finalmente, os captulos 28 a 33 olhar para temas de administrao do sistema que se acumulam em todo o
o material anterior.
Em mais detalhes, vamos discutir os seguintes temas:

No restante deste captulo, vamos olhar para o FreeBSD , o que voc precisa para execut-lo, e
quais recursos esto disponveis, incluindo caractersticas e histria do FreeBSD, como
compara a outros sistemas livres operacionais UNIX-like, outras fontes de informao
sobre FreeBSD, a comunidade FreeBSD em todo o mundo, e suporte para FreeBSD. Em
Alm disso, vamos olhar para o emblema daemon do BSD.

Captulo 2, Antes de instalar, discute os requisitos de instalao e tericas


fundo de instalar o FreeBSD.

Captulo 3, Instalao Rpida, apresenta uma viso geral do processo de instalao.


Se voc est razoavelmente experiente, isso pode ser tudo que voc precisa para instalar o FreeBSD.

No captulo 4, Instalao OS compartilhada, veremos se preparando para instalar o FreeBSD em um


sistema que j contenha um outro sistema operativo.

No Captulo 5, Instalando o FreeBSD, vamos percorrer uma instalao tpica em detalhe.

Captulo 7, As ferramentas do comrcio, apresenta uma srie de aspectos do FreeBSD que so de


interesse para os recm-chegados (especialmente a partir de um ambiente Microsoft). Ns olharemos
a criao de uma rea de trabalho'','' o conceito de usurios e nomeao de arquivo. Tambm vamos considerar o
noes bsicas de uso da concha e editor, e como desligar a mquina.

Captulo 8, Tomar o controle, entra em mais detalhes sobre as especificidades do trabalho com
UNIX, tais como processos, daemons, pontualidade e arquivos de log. Tambm vamos olhar
caractersticas nicas para FreeBSD, incluindo suporte ao processador mltipla, removvel I / O
dispositivos e emulando outros sistemas.

Captulo 9, A coleo de ports, descreve os milhares de pacotes de software livre


que voc pode, opcionalmente, instalar em um sistema FreeBSD.

Captulo 6, Configurao ps-instalao, explica a configurao que voc precisa fazer


aps a instalao, para obter um sistema funcional completa.

introduction.mm, v v4.22 (2003/04/02 06:36:16)

Captulo 1: Introduo

Captulo 10, Os sistemas de arquivos e dispositivos, contm informaes sobre o FreeBSD


estrutura de diretrio e nomes de dispositivos. Voc vai encontrar a seo sobre nomes de dispositivos
(A partir da pgina 195) interessante, mesmo se voc um hacker de UNIX experientes.

Captulo 11, Discos, descreve como formatar e integrar os discos rgidos, e como
lidar com erros no disco.

Gerenciamento de discos pode ser um assunto complicado. Captulo 12, O volume Vinum
Manager, descreve uma forma de gerenciamento de armazenamento em disco.

No captulo 13, Gravao de CD-Rs, veremos como usar o FreeBSD para gravar CD-Rs.

Captulo 15, Impressoras, descreve o sistema de spooling BSD e como us-lo tanto no
sistemas locais e em rede.

A partir de Captulo 16, Redes e da Internet, vamos olhar para a Internet ea


servios mais importantes.

Captulo 17, Configurao da rede local, descreve como configurar a rede local.

Captulo 19, Comunicao serial, discute hardware de srie e os pr-requisitos


para PPP e SLIP comunicaes.

No captulo 20, Configurando o PPP, olhamos para duas implementaes de PPP do FreeBSD
e que preciso configur-los.

No captulo 21, O Domain Name Service, vamos considerar o uso de nomes na


Internet.

A segurana um problema crescente na Internet. No captulo 22, Firewalls, IP


aliasing e proxies, vamos dar uma olhada em algumas coisas que podemos fazer para melhor-lo.
Vamos tambm olhar para Aliasing IP, uma vez que anda de mos dadas com firewalls e servidores proxy.

Redes s vezes se tornam notworks. No captulo 23, depurao de rede, ns vamos


ver o que podemos fazer para resolver problemas de rede.

Captulo 24, Acesso rede bsica: clientes, descreve o ponto de vista do cliente de rede
acesso, incluindo navegadores da Web, ssh, ftp, rsync e NFS clientes para o compartilhamento de arquivos
sistemas entre computadores em rede.

Os clientes da rede conversar com servidores de rede. Vamos olhar para o servidor correspondente
ponto de vista no captulo 25, Acesso rede bsica: servidores.

Apesar da World Wide Web, comunicao pessoal bidirecional tradicional ainda


muito popular. Veremos como usar clientes de email no Captulo 26, Correio eletrnico:
clientes.

FreeBSD oferece, servios de backup de dados confiveis profissionais como parte da base
sistema. Nunca deixe-se perder dados por causa de disposies de backup inadequadas.
Leia tudo sobre ele no captulo 14, Tapes, backups e disquetes.

Captulo 18, Conexo Internet, discute os problemas na seleo de uma Internet


Service Provider (ISP) e estabelecer uma presena na Internet.

introduction.mm, v v4.22 (2003/04/02 06:36:16)

Como usar este livro

Os servidores de correio so um importante tema bastante que h um captulo em separado 27,


Correio eletrnico: servidores.

No captulo 28, XFree86 em profundidade, vamos olhar para a teoria por trs ficando X11
de trabalho.

Captulo 29, Iniciar e parar o sistema, descreve como iniciar e parar a


Sistema FreeBSD e todas as coisas que voc pode fazer para personaliz-lo.

No captulo 30, Arquivos de configurao do FreeBSD, vamos olhar para a mais comum
arquivos de configurao eo que deve conter.

No captulo 31, Manter-se atualizado, vamos discutir a forma de garantir que o seu sistema
sempre executando a verso mais apropriada do FreeBSD.

FreeBSD continua a mudar. Ns vamos olhar para alguns aspectos do que isso significa para voc em
Captulo 32, A atualizao do software do sistema.

Captulo 33, Kernels personalizados, discute recursos do kernel opcionais.

Apndice B, A evoluo do FreeBSD, descreve as mudanas que tm ocorrido


em FreeBSD desde que foi introduzido h quase dez anos.

Apndice A, Bibliografia, sugere alguns livros para leitura.

Caractersticas FreeBSD
FreeBSD derivado Berkeley UNIX , O sabor de UNIX desenvolvido pela
Computer Systems Research Group da Universidade da Califrnia em Berkeley e
lanadas anteriormente como o Berkeley Software Distribution (BSD) do UNIX.
UNIX uma marca registrada da Open Group, por isso legalmente, FreeBSD no pode ser chamado de UNIX.
As questes tcnicas so diferentes, claro, fazer a sua prpria mente como a quantidade de diferena
isto faz.

Como comerciais UNIX, FreeBSD oferece muitos recursos avanados, incluindo:

FreeBSD utiliza multitarefa preemptiva com ajuste de prioridade dinmica para garantir
partilha suave e justa do computador entre as aplicaes e usurios.

FreeBSD um sistema multi-usurio: muitas pessoas podem usar um sistema FreeBSD


simultaneamente para fins no relacionados. As partes do sistema perifricos, como
impressoras e unidades de fita adequadamente entre todos os usurios do sistema.
No entendo isso confundido com o'''' multitarefa oferecida por alguns comercial
sistemas. FreeBSD um verdadeiro sistema multi-usurio que protege os usurios uns dos outros.

FreeBSD seguro. Sua trajetria confirmado pelos relatrios do CERT, o


organizao lder lidar com a segurana do computador. Ver http://www.cert.org/ para
mais informaes. O projeto FreeBSD tem uma equipe de agentes de segurana em questo
com a manuteno desta liderana.
introduction.mm, v v4.22 (2003/04/02 06:36:16)

Captulo 1: Introduo

FreeBSD confivel. Ele usado por provedores ao redor do mundo. Sistemas FreeBSD regularmente
ir vrios anos sem reiniciar. FreeBSD pode falhar, claro, mas as principais causas
de interrupes so falhas de energia e falhas de hardware catastrficas.

FreeBSD fornece uma completa TCP / IP networking implementao. Isto significa que
sua mquina FreeBSD pode interagir facilmente com outros sistemas e tambm atuar como um
servidor da empresa, oferecendo funes vitais como NFS (acesso remoto a arquivos) e
servios de correio eletrnico, ou colocar sua empresa na Internet com a WWW,
Servios FTP, roteamento e firewall. Alm disso, a coleco de portas inclui software
para se comunicar com protocolos proprietrios.

Proteo de memria garante que nem aplicaes nem usurios podem interferir uns com os
outro. Se um aplicativo trava, ele no pode afetar outros aplicativos em execuo.

Inclui o FreeBSD XFree86 execuo do X11 interface grfica do usurio.

A Coleo de Ports do FreeBSD inclui milhares de ready-to-run aplicaes.

Demanda paginada memria virtual (VM) e'' fundiu VM / buffer de cache'' projeto
eficientemente satisfaz aplicaes com grande apetite para a memria e ainda mantering resposta interativo para outros usurios.

O sistema bsico contm um conjunto completo de C, C + + e Fortran desenvolvimento


ferramentas. Todas as linguagens de programao comumente disponveis, tais como perl, python e
rubi, esto disponveis. Muitas linguagens adicionais para pesquisa avanada e desenvolvimento
mento tambm esto disponveis na coleo de ports.

FreeBSD fornece o completo cdigo-fonte para todo o sistema, para que voc tenha a
maior grau de controle sobre o seu ambiente. Os termos de licenciamento so os mais livres
que voc vai encontrar em qualquer lugar ('' Ei, us-lo, no finja que voc escreveu, no reclame
para ns, se voc tem problemas''). Essas so apenas as condies de licenciamento, claro. Como
veremos mais adiante neste captulo, h uma abundncia de pessoas dispostas a ajudar se voc executar
em apuros.

Extenso documentao on-line, incluindo pginas de manual tradicionais e um hipertexto


baseado manual on-line.

FreeBSD pode rodar a maioria dos programas criados para verses do UNIX e SCO UnixWare,
Solaris, BSD / OS, NetBSD, 386BSD e Linux na mesma plataforma de hardware.
Milhares de aplicaes adicionais e easy-to-port esto disponveis na Internet.
FreeBSD o cdigo fonte compatvel com os mais populares sistemas UNIX comerciais
e, portanto, a maioria das aplicaes requerem poucos, se houver, as mudanas para compilar. Mais livremente
software disponvel foi desenvolvido em sistemas BSD-like. Como resultado, o FreeBSD um
das plataformas mais simples que voc pode transferir para.

FreeBSD baseado no 4.4BSD UNIX divulgado pela Computer Systems Research


Group (CSRG) da Universidade da Califrnia em Berkeley. O Projeto FreeBSD tem
passaram muitos milhares de horas a afinar o sistema para o mximo desempenho e
confiabilidade. Caractersticas do FreeBSD, desempenho e confiabilidade comparam muito favoravelmente
com os sistemas operacionais comerciais.
introduction.mm, v v4.22 (2003/04/02 06:36:16)

Caractersticas FreeBSD

Uma vez que o cdigo fonte est disponvel, voc pode facilmente personaliz-lo para aplicaes especiais ou
projetos, de forma geral, no so possveis com os sistemas operacionais de comercial
vendedores. Voc pode facilmente comear pequeno com um barato 386 classe PC e atualizar como
suas necessidades aumentam. Aqui esto algumas das aplicaes em que as pessoas utilizam atualmente
FreeBSD:

Servio de Internet: a Internet cresceu em torno de Berkeley UNIX. O TCP / IP originais


implementao, lanado em 1982, foi baseado em BSD 4.2, e quase todas as correntes
Implementao TCP / IP tem emprestado a partir dele. FreeBSD um descendente desta
implementao, que foi mantida e polida por dcadas. o mais
maduro e confivel TCP / IP disponveis a qualquer preo. Isso o torna uma plataforma ideal para
uma variedade de servios de Internet, como servidores FTP, servidores de World Wide Web,
servidores de correio eletrnico, servidores de notcias da Usenet, servidores e firewalls nome de DNS.
Com o Samba suite, voc pode substituir um servidor de arquivos da Microsoft.

Educao: FreeBSD uma maneira ideal para aprender sobre sistemas operacionais, computador
arquitetura e networking. Um nmero de disponveis livremente CAD, matemtica e
pacotes de design grfico tambm torn-lo muito til para aqueles cujo principal interesse em
um computador obter outro trabalho feito.

Pesquisa: FreeBSD uma excelente plataforma para a investigao em sistemas operacionais bem
como outros ramos da cincia da computao, uma vez que o cdigo-fonte do sistema como um todo
disponvel. Livre disponibilidade do FreeBSD tambm possibilita que grupos remotos
colaborar com idias ou desenvolvimento compartilhado sem ter que se preocupar com especial
acordos de licenciamento ou limitaes sobre o que pode ser discutido em fruns abertos.

X Janela estao de trabalho: FreeBSD uma excelente escolha para uma barata
soluo de desktop grfico. Ao contrrio de um terminal X, FreeBSD permite muitas aplicaes
para ser executado localmente, se desejado, aliviando assim a carga em um servidor central. FreeBSD
pode at arrancar'' sem disco'', fazendo estaes de trabalho individuais ainda mais barato e mais fcil de
administrar.

Desenvolvimento de Software: O sistema FreeBSD bsico vem com um conjunto completo de


ferramentas de desenvolvimento, incluindo o renomado GNU C / C + + compilador e depurador.

As condies de licenciamento
Como o nome sugere, FreeBSD gratuito. Voc no tem que pagar para obter o cdigo, voc pode usar
-lo em quantos computadores voc quiser, e voc pode dar cpias para seus amigos.
H algumas limitaes, no entanto. Aqui est a licena BSD, usado para todos os novos
Cdigo FreeBSD:
A redistribuio eo uso nas formas de origem e binria, com ou sem modificao, so
permitidas desde que as seguintes condies sejam atendidas:
1. As redistribuies do cdigo fonte devem manter o aviso de copyright acima, esta lista de
condies ea seguinte iseno de responsabilidade.
introduction.mm, v v4.22 (2003/04/02 06:36:16)

Captulo 1: Introduo

2. As redistribuies em formato binrio devem reproduzir o aviso de copyright acima, esta lista
de condies ea seguinte iseno de responsabilidade na documentao e / ou outros
materiais fornecidos com a distribuio.
Este software fornecido pelo projeto FreeBSD'' como '' e qualquer expressa ou implcita
garantias, incluindo, mas no limitado a, garantias implcitas de comerciabilidade
e adequao a um propsito particular so recusadas. Em nenhum caso o FreeBSD
projeto ou colaboradores sero responsveis por quaisquer, indiretos, incidentais, especiais, exemplares direta,
ou danos conseqentes (incluindo, mas no limitado a, aquisio de substituto
bens ou servios, perda de uso, dados ou lucros, ou interrupo de negcios), no entanto
causados em qualquer teoria de responsabilidade, seja por contrato, responsabilidade estrita ou ato ilcito
(Incluindo negligncia ou no) decorrentes de qualquer forma de uso deste software,
mesmo se avisados da possibilidade de tais danos.
O ltimo pargrafo tradicionalmente escrito em todos os CAPS, por razes que no parecem
tem nada a ver com o significado. As verses mais antigas da licena tambm continha
clusulas adicionais relativas publicidade.

Um pouco de histria
FreeBSD um trabalho de amor: grandes empresas comerciais produzir sistemas operacionais e
lotes de carga de dinheiro para eles, o projeto FreeBSD produz um profissional de qualidade
sistema operacional e d-lo afastado. Essa no a nica diferena.
Em 1981, quando a IBM lanou seu computador pessoal, a indstria de microprocessadores foi
ainda na sua infncia. Eles confiada Microsoft para fornecer o sistema operacional. Microsoft
j tinha sua prpria verso do UNIX, chamado XENIX, mas o PC tinha um mnimo de 16
kB e nenhum disco. UNIX no era um fsforo apropriado para este hardware. Microsoft passou
procurando por algo mais simples. O sistema operacional'''' eles escolheram foi correspondentemente
primitiva: 86/DOS, um clone do sistema operacional CP / M sucesso da Digital Research,
escrito por Tim Paterson da Seattle Computer Products e originalmente chamado QDOS
(Sistema Operacional Quick and Dirty). Na poca, parecia apenas uma coisa: ela funcionou muito bem
sem um disco rgido (na verdade, o PC original no fez ter um disco rgido, nem como um
opo), e no utilizar muita memria. A nica coisa que realmente tinha que fazer
era mudar o nome. IBM chamado sua verso PC-DOS, enquanto a Microsoft comercializou seu
verso sob o nome MS-DOS.
Por esta altura, um pouco mais abaixo os EUA West Coast, o Computer Systems Research
Group (CSRG) da Universidade da Califrnia em Berkeley tinha acabado de modificao da AT & T
Sistema operacional UNIX para rodar no novo dezembro VAX 11/780 da mquina, que ostentou
memria virtual, e virou a sua ateno para aplicar alguns dos novos protocolos para
ARPANET: o chamado Protocolos da Internet. A verso do UNIX que tinham
desenvolvido agora era suficientemente diferente do sistema da AT & T que tinha sido apelidado
Berkeley UNIX .
Conforme o tempo passava, o MS-DOS e UNIX evoluiu. Em pouco tempo, o MS-DOS foi
modificada para lidar com discos rgidos, no bem, mas lidou com eles, e para os usurios de PC, que era
introduction.mm, v v4.22 (2003/04/02 06:36:16)

A pouco de histria

muito melhor do que o que tinham antes que eles ignoraram as ineficincias. Afinal,
o PC deu-lhe o seu prprio disco rgido em sua mesa, e voc no tem que compartilhar com todos
as outras pessoas no departamento. Microsoft ainda tentou emular o diretrio UNIX
estrutura, mas s conseguiu implementar o conceito de diretrios aninhados. Em
Berkeley, eles estavam desenvolvendo um maior desempenho subsistema de disco, o Rpido Arquivo
Sistema, agora conhecido como o sistema de arquivos UNIX.
Ao final dos anos 80, era evidente que a Microsoft j no se destinem a melhorar substancialmente
MS-DOS. Novos processadores com suporte para multitarefa e memria virtual teve
substituiu o antigo processador Intel 8088 do IBM PC, mas eles ainda corriam MS-DOS
emulando o processador 8088, que foi agora completamente obsoleto. A memria de 640 kB
limite do PC original, que j apareceu maior do que qualquer um poderia precisar,
tornou-se um problema srio. Alm disso, as pessoas queriam fazer mais do que uma coisa de cada
tempo com seus computadores.
Uma soluo para ambos os problemas era bvia: passar para o modo, o endereo de 32 bits do novo
Processador Intel 80386 e introduzir verdadeira multitarefa, que sistemas operacionais em maior
mquinas tiveram durante dcadas. Naturalmente, estas mquinas maiores eram apenas fisicamente
maior. O PC mdio de 1990 tinha mais memria, mais disco e mais poder de processamento
do que apenas sobre qualquer um dos grandes computadores da dcada de 70. No entanto, a Microsoft no fez
resolver estes problemas para o seu'' Windows'' plataforma at muito mais tarde, e as solues ainda
deixam muito a desejar.
UNIX, por outro lado, era um sistema operativo maduro relativamente ao momento em que o
PC foi introduzido. Como resultado, os ambientes baseados em Microsoft tiveram pouca influncia
sobre o desenvolvimento do UNIX. Desenvolvimento UNIX foi determinada por outros fatores:
mudanas nas regulamentaes legais nos EUA, entre 1977 e 1984 permitiu AT & T primeiro a
licena UNIX para outros fornecedores, notadamente da Microsoft, que anunciou XENIX em 1981,
e, em seguida, para comercializar sua prpria verso do UNIX. AT & T desenvolveu System III em 1982, e
Sistema V em 1983. As diferenas entre XENIX e System V foram inicialmente pequeno,
mas eles cresceram: em meados dos anos 80, havia quatro verses diferentes do UNIX: o Pesquisa
Version, usado quase somente dentro AT & T, que a partir da oitava edio on derivado
4.1cBSD, o Berkeley Software Distribution (BSD) de Berkeley, o comercial
System V da AT & T, e XENIX, que a Microsoft no est mais interessado, e foi
comercializado pela empresa que tinha desenvolvido, o Operao de Santa Cruz, ou SCO.
Uma vtima de maturidade do UNIX foi o CSRG em Berkeley. UNIX era muito madura para
ser considerado um objeto de pesquisa, e nele estava escrito na parede: o CSRG seria
fechar as portas. Algumas pessoas decidiram porta Berkeley UNIX para o PC, afinal, SCO tinha
portado sua verso do UNIX com os anos anteriores de PC. Na tradio Berkeley, no entanto,
eles queriam d-lo afastado. A reao da indstria no foi amigvel. Em 1992, a AT & T
subsidirio USL (UNIX Systems Laboratories) entrou com uma ao contra Berkeley Software
Design, Inc. (BSDI), o fabricante do sistema operacional BSD/386, mais tarde chamado
BSD / OS, um sistema muito semelhante ao FreeBSD. Alegaram distribuio de fonte AT & T
cdigo em violao dos acordos de licena. Eles posteriormente alargado o caso ao
Universidade da Califrnia em Berkeley. O processo foi resolvido fora do tribunal, ea exata
condies no foram todos divulgados. O nico que se tornou pblico foi a de que seria BSDI
migrar sua base de origem para as mais recentes fontes de 4.4BSD-Lite, uma coisa que eles eram
introduction.mm, v v4.22 (2003/04/02 06:36:16)

Captulo 1: Introduo

prepara-se para fazer, em qualquer caso. Apesar de no ser envolvido no litgio, foi sugerido para
FreeBSD que eles tambm devem se deslocar para 4.4BSD-Lite, que foi feito com o lanamento do
FreeBSD verso 2.0 no final de 1994.
Agora, no incio do sculo 21, o FreeBSD o mais conhecido dos sistemas operacionais BSD,
aquela que muitos consideram a seguir a tradio da CSRG. No consigo pensar em nenhum maior
honra para a equipe de desenvolvimento. Ele foi desenvolvido com um oramento apertado, ainda que
consegue superar sistemas operacionais comerciais por uma ordem de magnitude.

O fim das guerras UNIX


No decorrer do projeto FreeBSD, uma srie de coisas mudaram sobre UNIX. Sol
Microsystems mudou-se de uma base de BSD para uma base de V Sistema no final dos anos 80, um movimento que
convenceu muitas pessoas que BSD estava morto e que o Sistema V era o futuro. Coisas
sido diferente: em 1992, a AT & T vendeu USL a Novell, Inc., que introduziu um
produto com base no Sistema de V.4 chamado UnixWare. Embora UnixWare tem muito melhor
especificaes que o sistema antigo V.3 SCO UNIX, ele nunca foi um sucesso, e Novell
finalmente vendeu sua operao de UNIX SCO. SCO em si foi ento comprada pela Caldera
(Que recentemente mudou seu nome de volta SCO), enquanto que a propriedade do comrcio UNIX
marca passou para o Open Group. System V UNIX essencialmente morto: current
verses comerciais do UNIX evoluram medida desde System V que eles no podem ser
considerado o mesmo sistema. Por outro lado, BSD est vivo e saudvel, e vive em
FreeBSD, NetBSD, OpenBSD e Mac OS X, da Apple
A importncia da AT & T cdigo nas verses anteriores do FreeBSD foi certamente
subestimada no processo. Todo o cdigo foi disputada com mais de 10 anos de idade na
tempo, e nada disso foi de grande importncia. Em janeiro de 2002, Caldera lanou todos
'''' Antigas verses do UNIX sob uma licena BSD. Estes especificamente includos todos
verses do UNIX BSD a partir do qual foi derivado: o primeiro-stima edies da Pesquisa
UNIX e 32V, o predecessor de 3BSD. Como resultado, todas as verses do BSD, incluindo
aquelas sobre as quais o processo foi conduzido, esto agora disponveis gratuitamente.

Outros sistemas operacionais UNIX-like livre


FreeBSD no o nico sistema operacional UNIX-like livre disponvel, no mesmo a melhor
conhecido um. O mais conhecido sistema operacional UNIX-like livre , sem dvida, Linux, mas
h tambm um nmero de outros sistemas operativos BSD-derivados. Vamos olh-los em primeiro lugar:

386/BSD era o sistema operacional BSD original livre, introduzida por William F. Jolitz
em 1992. Ele nunca progrediu alm de uma fase de teste: em vez disso, duas operacional derivado
sistemas surgiu, FreeBSD e NetBSD. 386/BSD tem sido obsoleto durante anos.

NetBSD um sistema operativo que, para o observador casual, quase idntica


FreeBSD. As principais diferenas so que NetBSD concentrados em hardware
independncia, enquanto FreeBSD se concentra em performance. FreeBSD tambm tenta
mais difcil de ser fcil de entender para um iniciante. Voc pode encontrar mais informaes sobre
NetBSD em http://www.NetBSD.org.

introduction.mm, v v4.22 (2003/04/02 06:36:16)

Outros sistemas operacionais UNIX-like livre

10

OpenBSD um spin-off do NetBSD que se concentra em segurana. tambm muito semelhante ao


FreeBSD. Voc pode encontrar mais informaes em http://www.OpenBSD.org.

Computador Apple lanou a verso 10 (X) de sua Mac OS no incio de 2001. um grande
desvio de verses anteriores do Mac OS: ele baseado em um microkernel Mach com
um ambiente DEB. O sistema de base (Darwin), tambm gratuito. FreeBSD e Darwin
so compatveis ao nvel do cdigo fonte do usurio.

Voc poderia ter a impresso de que h muitas verses BSD diferentes e incompatveis.
Na verdade, do ponto de vista do usurio so todos muito semelhantes entre si, muito mais do que o
distribuies individuais de Linux, o que ns vamos olhar ao lado.

FreeBSD e Linux
Em 1991, Linus Torvalds, ento um estudante em Helsinki, Finlndia, decidiu que queria correr
UNIX em seu computador de casa. Naquela poca, as fontes BSD no eram livremente disponvel,
e assim por Linus escreveu sua prpria verso do UNIX, que ele chamou de Linux.
Linux um excelente exemplo de como alguns dedicados, pessoas inteligentes podem produzir uma
sistema operacional que melhor do que sistemas comerciais famosos desenvolvidos por um grande
nmero de engenheiros de software treinados. melhor at do que uma srie de comerciais
Sistemas Unix.
Obviamente, eu prefiro FreeBSD sobre Linux, ou eu no estaria escrevendo este livro, mas o
diferenas entre FreeBSD e Linux so mais uma questo de filosofia e no de
conceito. Aqui esto alguns contrastes:
Tabela 1-1: Diferenas entre FreeBSD e Linux
FreeBSD um descendente direto do
UNIX original, embora ele no contm
residual AT & T cdigo.

Linux um clone e nunca continha qualquer


AT & T cdigo.

FreeBSD um sistema operacional completo, Linux um kernel, pessoalmente, mantido pela


mantido por um grupo central de software
Linus Torvalds e um confivel poucos compandesenvolvedores sob as Concurrent Versions ies. Os programas no do kernel fornecido
Sistema que mantm uma completa histocom Linux fazem parte de um distribuio de
ry do developemnt projeto. Tem
que existem vrios. Distribuies so
apenas uma distribuio do FreeBSD.
no totalmente compatvel com os outros.
O estilo de desenvolvimento do FreeBSD
enfatizar
tamanhos de prestao de contas e
documentao de
mudanas.

O Linux mantida por um pequeno


nmero de pessoas que mantm o controle de todos
mudanas. Os patches no-oficiais no faltam.

Distribuies de Linux tm muitas vezes sutilmente difekernels Ent. As diferenas no so sempre


O kernel fornecido com uma verso especfica documentada.
do FreeBSD est claramente definida.
introduction.mm, v v4.22 (2003/04/02 06:36:16)

11

FreeBSD tem como objetivo ser uma


produo estvel
ambiente.
Como resultado do desenvolvimento
centralizado
estilo, FreeBSD simples e
fcil de instalar.

Captulo 1: Introduo

Muitas verses do Linux ainda esto'' sangramento


ponta'' ambientes de desenvolvimento. Isto
mudando rapidamente, no entanto.
A facilidade de instalao do Linux depende
no distribuio. Se voc mudar de um
distribuio de Linux para outro, voc vai
tem que aprender um novo conjunto de ferramentas de instalao.

Linux no tem quaisquer aes para enfrentar


com, assim por algum tempo ele foi pensado para ser
FreeBSD ainda relativamente desconhecido,
o nico sistema do tipo UNIX livre disponvel.
uma vez que
sua distribuio foi inicialmente restrito
devido
para o AT & T aes judiciais.

Uma quantidade crescente de software comercial


est se tornando disponvel para Linux.

Como resultado da ausncia de conhecimento


Apenas sobre qualquer nova diretoria ter em breve uma
do
driver para Linux.
FreeBSD, relativamente pouco comercial
software est disponvel para ele.
Linux parece no precisa ser capaz de executar
Como um resultado de uma base de
utilizadores mais pequenos,
Programas do FreeBSD.
FreeBSD menos propensos a ter drivers para
novssimo placas que Linux.
Por causa da falta de apli-comercial
ctions e drivers para FreeBSD, FreeBSD executa programas mais Linux, se
comercial ou no.

Linux est licenciado sob a GNU General

FreeBSD est licenciado sob a BSD liincenso, consulte a pgina 6. H muito poucosPublic License.
Mais detalhes esto no
restries sua utilizao.
http://www.gnu.org/licenses/gpl.html. Por
comparao com a licena BSD, imposes restries significativas sobre o que voc pode
fazer com o cdigo fonte.
FreeBSD tem aficionados que esto precomparado a ningum chama que sugerem
atreve
que no melhor do que o Linux.

Linux tem aficionados que esto preparados para


Algum chama quem ousa sugerir que
no melhor que o FreeBSD.

Em resumo, o Linux tambm um sistema operativo muito boa. Para muitos, melhor do que
FreeBSD.

introduction.mm, v v4.22 (2003/04/02 06:36:16)

Outros sistemas operacionais UNIX-like livre

12

Documentao do sistema FreeBSD


FreeBSD vem com uma quantidade considervel de documentao que veremos no
aps algumas pginas:

O Projeto de Documentao do FreeBSD mantm uma coleo de livros'','' documentos


em formato HTML ou PDF, que tambm pode ser acessado online. Eles esto instalados na
hierarquia de diretrios / Usr / share / doc.

O formato tradicional documento UNIX pginas de manual, documentos individuais


descrevendo a funcionalidade especfica. Eles so curtos e direto ao ponto de ser enigmtico, mas
se voc sabe o que voc est procurando, eles tm apenas o direito quantidade de detalhes.
Eles no so uma boa introduo.

O projeto GNU introduziu o seu prprio formato de documento, Informaes GNU. Alguns GNU
programas no tm outra forma de documentao.

Lendo a documentao on-line


Voc vai encontrar uma srie de documentos HTML no diretrio / Usr / share / doc / en / books:

/ Usr / share / doc / en / books / faq / index.html contm o FreeBSD FAQ (Frequentes
Asked Questions). exatamente o que ele diz que : uma lista de perguntas que as pessoas freqentemente
perguntar sobre FreeBSD, com as respostas, claro.

/ Usr / share / doc / en / books / fdp-primers / index.html um iniciador para a FreeBSD DocuProjeto atividade mental,

/ Usr / share / doc / en / books / handbook / index.html o FreeBSD manual on-line. Ele
contm uma grande quantidade de informaes especificamente sobre FreeBSD, incluindo um profundo
discusso de muitos temas deste livro.

/ Usr / share / doc / en / books / porteiros-handbook / index.html um manual para os contribuintes


a Coleo de Ports do FreeBSD, que discutiremos no Captulo 9, As Portas
Collection.

/ Usr / share / doc / en / books / ppp-primer / index.html contm um documento um pouco datado
sobre a criao de PPP. Se voc tiver problemas com o captulo 20, Configurando o PPP, voc
pode ser til.

Alm do directrio / Usr / share / doc / en / livros, h tambm um diretrio


/ Usr / share / doc / en / Artigos com um nmero de itens mais curtos de documentao.
Note-se a componente en nos caminhos acima. Isso significa Ingls. Um certo nmero de
esses livros tambm so instalados em outras lnguas: mudar en a de para uma verso em alemo,
a es para o espanhol, para fr para o francs, a ja para os japoneses, a ru para o russo, ou zh para
Chins. Esforos de traduo continuam, assim voc pode encontrar documentao em outro
idiomas.

introduction.mm, v v4.22 (2003/04/02 06:36:16)

13

Captulo 1: Introduo

Se voc est rodando o X, voc pode usar um navegador como mozilla ler os documentos. Se voc
no tem X em execuo ainda, use lynx. Ambos os programas esto includos no CD-ROM
distribuio. Para instal-los, use sysinstall, que descrita na pgina 92.
lince no um substituto completo para navegadores completos, como Mozilla: uma vez que
somente texto, no capaz de exibir a grande maioria das pginas da web corretamente.
bom o suficiente para ler a maior parte da documentao on-line FreeBSD, no entanto.
Em cada caso, voc inicia o navegador com o nome do documento, por exemplo:
$ Lynx / usr / share / doc / en / books / handbook / index.html
$ Mozilla / usr / share / doc / en / books / handbook / index.html &

Digite o & aps a invocao de mozilla para liberar a janela na qual voc invoc-lo:
mozilla abre sua prpria janela.
Se voc no instalou a documentao, voc ainda pode acess-lo a partir do Live
CD-ROM do sistema de arquivos. Assumindo que o CD-ROM est montado / Cdrom, escolha o arquivo
/ Cdrom / usr / share / doc / en / books / handbook / index.html.
Alternativamente, voc pode imprimir o manual. Isto um pouco mais difcil, e, claro,
voc vai perder as referncias de hipertexto, mas voc pode preferir desta forma. Para formatar o
manual para a impresso, voc vai precisar de uma impressora PostScript ou ghostscript. Consulte a pgina 271 para
mais detalhes sobre como imprimir PostScript.
A verso impressa da documentao normalmente no vm com o CD-ROM
distribuio. Voc pode busc-lo com
ftp (Ver pgina 430) a partir de
ftp://ftp.FreeBSD.ORG/pub/FreeBSD/doc/, que tem a mesma estrutura de diretrios
descrito acima. Por exemplo, voc poderia fazer o download do manual em formato PostScript
de ftp://ftp.FreeBSD.ORG/pub/FreeBSD/doc/en/books/handbook/book.ps.bz2.

O manual online
A documentao mais abrangente sobre FreeBSD o manual online, geralmente
referido como o pginas man. Quase todos os programas, arquivos, biblioteca de funes, dispositivo ou
interface no sistema vem com um manual de referncia de curto explicando o bsico
operao e vrios argumentos. Se voc fosse para imprimi-lo, ele iria correr para bem mais
8000 pginas.
Quando on-line, voc v as pginas do manual com o comando homem. Por exemplo, para aprender
mais sobre o comando ls, digite:
$ Man ls
LS (1)

FreeBSD Manual de Referncia

LS (1)

NOME
ls - lista o contedo do diretrio
SINOPSE
ls [-ACFLRTacdfiloqrstu1] [arquivo ... ]
DESCRIO
Para cada operando que nomeia um arquivo de um tipo diferente de diretrio, ls
exibe seu nome, bem como todas as informaes solicitadas, associado. Para
introduction.mm, v v4.22 (2003/04/02 06:36:16)

Documentao do sistema FreeBSD


(Etc)

14

cada operando que nomeia um arquivo do tipo diretrio, ls exibe os nomes.

Neste exemplo em particular, com a excepo da primeira linha, o texto constante


largura negrito no a entrada, a maneira como ele aparece na tela.
O manual online dividido em sees numeradas:
1. Comandos do usurio
2. Chamadas de sistema e nmeros de erro
3. Funes nas bibliotecas C
4. Os drivers de dispositivo
5. Formatos de arquivo
6. Jogos e outras diverses
7. Informao diversa
8. Manuteno do sistema e comandos de operao
9. Documentao da interface Kernel
Em alguns casos, o mesmo tpico pode aparecer em mais do que uma seco do manual on-line.
Por exemplo, h um comando de utilizador chmod e uma chamada de sistema chmod (). Neste caso,
voc pode dizer a homem comando que voc quiser especificando o nmero da seo:
$ Man 1 chmod

Este comando exibe a pgina de manual para o usurio comando chmod. As referncias a um
seo especial do manual online so tradicionalmente colocados entre parnteses na escrita
documentao. Por exemplo, a chmod (1) refere-se ao comando do utilizador chmod, e
chmod (2) significa que a chamada do sistema.
Isso bom se voc souber o nome do comando e se esqueceu de como us-lo, mas o que se
voc no consegue lembrar o nome do comando? Voc pode usar homem para procurar palavras-chave na
descries de comando usando o -K opo, ou iniciando o programa a propsito:
$ Man-k correio $ apropos correio

Ambos os comandos fazem a mesma coisa: eles mostram os nomes das pginas de manual que
tem a palavra correio em suas descries.
Alternativamente, voc pode navegar atravs do / Usr / bin directrio, que contm a maior parte do
executveis do sistema. Voc vai ver um monte de nomes de arquivos, mas voc no tem idia do que eles
fazer. Para descobrir isso, digite uma das seguintes linhas:
$ Cd / usr / bin, o homem-f *
$ Cd / usr / bin; whatis *

introduction.mm, v v4.22 (2003/04/02 06:36:16)

15

Captulo 1: Introduo

Ambos os comandos fazem a mesma coisa: eles imprimir um resumo de uma linha do
objetivo do programa:
$ Cd / usr / bin, o homem-f *
a2p (1) - Awk para Perl tradutor
addftinfo (1) - adicionar informaes aos arquivos fonte troff para uso com groff
aplica (1) - aplicar um comando para um conjunto de argumentos
apropos (1) - pesquisar a base de dados whatis
Etc ...

Imprimindo pginas de manual


Se voc preferir ter pginas de manual em verso impressa, em vez de na tela, voc pode fazer isso em dois
maneiras diferentes:

A maneira mais simples redirecionar a sada para o spooler:


$ Man ls | lpr

Isto d-lhe uma verso impressa, que muito parecido com o original na tela,
exceto que voc no pode ter o texto em negrito ou sublinhado.

Voc pode obter uma sada compor com troff :


$ Man-t ls | lpr

Isto d-lhe uma verso devidamente compor da pgina homem, mas exige que o seu
sistema de spool entender PostScript-consulte a pgina 271 para mais detalhes sobre a impresso
PostScript, mesmo em impressoras que no entendem PostScript.

GNU info
A Free Software Foundation tem o seu prprio navegador de hipertexto on-line chamada info. Muitos
Programas FSF quer entrar com nenhuma pgina homem em tudo, ou uma desculpa para uma pgina de homem
(Gcc, por exemplo). Para ler a documentao on-line, voc precisa para navegar na Informaes arquivos
com a Informaes programa, ou a partir de Emacs com a Informaes modo. Para comear info, basta digitar:
$ Info

Em Emacs, digite CTRL-h i ou ALT-X info. Qualquer que seja a maneira que voc comear info, voc pode
obter
breve introduo, digitando h, e uma referncia de comando rpido digitando?.

Outra documentao sobre FreeBSD


Usurios do FreeBSD tem acesso a, provavelmente, mais documentao de alta qualidade do que apenas sobre
de qualquer outro sistema operativo. Lembre-se de que a palavra UNIX marca registrada. Claro, o
advogados nos dizem que no podemos nos referir ao FreeBSD como UNIX, UNIX, porque pertence
Open Group. Isso no faz a menor diferena para o fato de que quase todos os livros
em UNIX se aplica mais diretamente para FreeBSD do que qualquer outro sabor do UNIX. Por qu?
introduction.mm, v v4.22 (2003/04/02 06:36:16)

Outra documentao sobre FreeBSD

16

Fornecedores de UNIX comerciais tm um problema, e FreeBSD no ajud-los: por que


as pessoas compram seus produtos quando voc pode obt-lo gratuitamente a partir do Projeto FreeBSD (ou, para que
matria, de outros sistemas operacionais UNIX-like livre como NetBSD, OpenBSD e
Linux)? Uma razo bvia seria'' recursos de valor agregado.'' Assim que adicionar recursos ou
corrigir pontos fracos no sistema, colocar um autor sobre as mudanas e ajudar a bloquear a sua
clientes para o seu especial de execuo. Enquanto as alteraes so muito teis,
isso legtimo, mas faz o sistema operacional menos compatvel com padro''
UNIX'', e os livros sobre o padro UNIX so menos aplicveis.
Alm disso, muitos livros so escritos por pessoas com formao acadmica. No
UNIX mundo, isso significa que eles so mais propensos do que o usurio mdio ter sido
exposto a DEB. Muitos livros gerais UNIX lidar principalmente BSD, possivelmente com uma
captulo adicional sobre a verso comercial do sistema V.
No Apndice A, Bibliografia, voc vai encontrar uma lista de livros que eu acho que vale a pena. Eu gostaria de
destacar alguns que eu acho particularmente bom, e que eu freqentemente me usar:

UNIX Power Tools, por Jerry Peek, Tim O'Reilly, e Mike Loukides, uma soberba
recolha de informaes interessantes, incluindo um CD-ROM. Recomendado para
todos, desde iniciantes a peritos.

UNIX para o Impaciente, por Paul W. Abrahams e Bruce R. Larson, mais semelhante
com este livro, mas inclui muito mais material sobre produtos especficos, tais como conchas
e a Emacs editor.

O UNIX Administration Handbook sistema, por Evi Nemeth, Garth Snyder, Scott
Seebass e Trent R. Hein, um dos melhores livros sobre administrao de sistemas que tenho
vi. Abrange um nmero diferente de sistemas UNIX, incluindo uma verso mais antiga do
FreeBSD.

H tambm muitos grupos ativos de Internet que lidam com FreeBSD. Leia sobre eles no
o manual online.

A comunidade FreeBSD
FreeBSD foi desenvolvido por um grupo mundial de desenvolvedores. No poderia ter
acontecido sem a Internet. Muitos dos principais jogadores nunca sequer se conheceram
em pessoa, o principal meio de comunicao atravs da Internet. Se voc tem qualquer tipo de
Conexo com a Internet, voc pode participar tambm. Se voc no tem uma conexo com a Internet,
sobre o tempo que voc tem um. A conexo no precisa ser completa: se voc puder
receber e-mails, voc pode participar. Por outro lado, o FreeBSD inclui todo o software
voc precisa de uma conexo de Internet completo, no o subconjunto muito limitado que a maioria dos PCbaseada em'' Internet'' pacotes lhe oferecer.

introduction.mm, v v4.22 (2003/04/02 06:36:16)

17

Captulo 1: Introduo

Listas de discusso
Como diz o autor, FreeBSD fornecido tal como est, sem qualquer responsabilidade apoio. Se
voc est na Internet, voc no est sozinho, entretanto. Responsabilidade uma coisa, mas h
muitas pessoas dispostas a ajud-lo, a maioria de graa, alguns para a taxa. Um bom lugar para comear
com as listas de discusso. H uma srie de listas de discusso que voc pode participar:

FreeBSD-questions@FreeBSD.org a lista para a qual voc pode enviar geral


perguntas, em particular sobre como usar o FreeBSD. Utilize este se voc no tiver certeza
que o mais adequado.

FreeBSD-newbies@FreeBSD.org uma lista de recm-chegados ao FreeBSD. destinado


para as pessoas que se sentem um pouco assustados com o sistema e precisa de um pouco de tranquilidade.
no o lugar certo para fazer qualquer tipo de questo tcnica.

FreeBSD-hackers@FreeBSD.org uma lista de discusso tcnica.


FreeBSD-current@FreeBSD.org uma lista obrigatria para as pessoas que dirigem o
verso de desenvolvimento do FreeBSD, chamado FreeBSD-CURRENT. Falaremos sobre
-CURRENT, como normalmente chamado, nas pginas 580 e 613.

Voc pode encontrar a lista completa no site.


Para participar de uma lista, envie uma mensagem de correio para majordomo@FreeBSD.org com os nomes dos
listas que deseja participar:
subscrever FreeBSD-iniciantes
subscrever FreeBSD-questions

Se o ID de e-mail que voc deseja adicionar lista diferente da ID que voc est enviando
de, colocar o ID no final da linha. Isto requer a interveno manual para confirmar que
o usurio realmente quer estar na lista, para que ele possa demorar mais tempo. sempre melhor para enviar o
mail do ID em que deseja receber o e-mail.
Voc no precisa de uma linha de assunto, se voc incluir um, ele ser ignorado. Voc obter uma resposta
de volta dizendo que o pedido deve ser autenticado: ele vai ser algo como isto:
Por favor, certifique-se de ler as cartas antes de assinar ou enviar
e-mail para qualquer lista de discusso FreeBSD para uma explicao de quais tpicos
so relevantes para uma determinada lista e quais os tipos de postagens so e
no so permitidos. Eles podem ser encontrados em:
http://www.freebsd.org/handbook/eresources.html # eResources-MAIL
Algum (possivelmente voc) pediu que o seu endereo de e-mail ser adicionado
ou excludo da lista de discusso "freebsd-questions@FreeBSD.ORG".
Se voc realmente quer esta ao a ser tomada, por favor, envie a seguinte
comandos (exatamente como mostrado) de volta para "Majordomo@FreeBSD.ORG":
auth b2c64f95 subscribe FreeBSD-questions grog@example.org
Se voc no quer que esta ao a ser tomada, simplesmente ignore esta mensagem
eo pedido ser desconsiderado.
introduction.mm, v v4.22 (2003/04/02 06:36:16)

Listas de discusso

18

Se o seu cliente no vai permitir que voc envie o comando inteiro como um nico
linha, voc pode dividi-lo usando barras invertidas, assim:
auth b2c64f95 subscribe FreeBSD-questions \
grog@example.org
Se voc tem alguma dvida sobre a poltica do proprietrio da lista, por favor
contato "postmaster@FreeBSD.ORG".
Thanks!
Majordomo@FreeBSD.ORG

Basta responder a essa mensagem, a remoo de todo o texto, exceto o auth linha:
auth b2c64f95 subscribe FreeBSD-questions grog@example.org

Envie esta mensagem para majordomo@FreeBSD.org (Que o que voc faria se s


responder), no para a prpria lista. Voc vai ter uma outra resposta de volta:
Bem-vindo lista de discusso FreeBSD-questions!
Por favor, salve esta mensagem para referncia futura. Obrigado.
Se voc quiser remover-se esta lista,
voc pode enviar e-mail para <Majordomo@FreeBSD.ORG> com a seguinte
comando no corpo da sua mensagem de e-mail:
unsubscribe FreeBSD-questions
ou de outra conta, alm grog@example.org:
unsubscribe FreeBSD-questions grog@example.org
Se voc precisar entrar em contato com o proprietrio da lista,
(Se voc tiver problemas para cancelar ou tiver dvidas sobre o
prpria lista) enviar e-mail para <owner-freebsd-questions@FreeBSD.ORG>.
Esta a regra geral para a maioria das listas de discusso quando voc precisar
entrar em contato com um ser humano.
Aqui est a informao geral para a lista que voc subscreveu,
no caso de voc j no tem isso:
FreeBSD-questions perguntas do usurio
Esta a lista de discusso para perguntas sobre FreeBSD. Voc no deve
enviar "como fazer" perguntas para as listas tcnicas, a menos que voc considere o
pergunta a ser bastante tcnico.

Ao enviar perguntas para -Pergunta, lembre-se de que as pessoas esto sob nenhuma
obrigao de respond-las. Faz-los querer respond-la: apresentar a questo de forma clara,
forma compreensvel. Para mais detalhes, consulte http://www.lemis.com/questions.html. Voc
tambm pode gostar de conferir o site em FreeBSD World Wide Web (WWW)
http://www.FreeBSD.org, em particular a pgina de suporte em http://www.FreeBSD.org/support.html.
Alm disso, um nmero de empresas que oferecem suporte para FreeBSD. Veja a pgina web
http://www.freebsd.org/commercial/consulting_bycat.html para algumas possibilidades.

introduction.mm, v v4.22 (2003/04/02 06:36:16)

19

Captulo 1: Introduo

Cancelar a assinatura de listas de discusso


H uma grande quantidade de trfego nas listas de discusso, especialmente em -Questes. Voc pode encontrar
voc no pode lev-la e quer sair de novo. Mais uma vez, envie um e-mail para majordomo @ FreeBSD.org, no lista. Cada mensagem que voc comea a partir das listas de discusso termina com a
o seguinte texto:
Para cancelar a inscrio: envie e-mail para majordomo@FreeBSD.org
com "unsubscribe FreeBSD-questions" no corpo da mensagem

No seja uma daquelas pessoas que enviam o pedido de cancelamento para a lista de discusso.

Os grupos de usurios
Mas como sobre o encontro de usurios de FreeBSD face a face? H um certo nmero de grupos de utilizadores
em todo o mundo. Se voc mora em uma cidade grande, as chances so de que h um perto de voc. Verificar
http://www.freebsd.org/support.html # usurio para uma lista. Se voc no encontrar um, considere
tomar a iniciativa e comear um.
Alm disso, USENIX detm uma conferncia anual, a BSDCon, que lida com
aspectos tcnicos dos sistemas operacionais BSD. tambm uma grande oportunidade para chegar ao
conhece outros usurios de todo o mundo. Se voc estiver na Europa, h tambm uma BSDCon
Europa, que, no momento da escrita no foi executado por USENIX. Ver http://www.eurobsdcon.org / para mais detalhes.

Relatar bugs
Se voc encontrar algo de errado com FreeBSD, queremos saber sobre o assunto, para que possamos corrigir
lo. Para relatar um erro, use o envie-pr programar para envi-lo como uma mensagem de e-mail.
Costumava haver um formulrio web em http://www.FreeBSD.org/send-pr.html, mas tem sido
encerradas devido ao abuso.

O Berkeley daemon
O pequeno daemon direita simboliza BSD.
includo com a devida permisso de Marshall Kirk McKusick,
um dos principais membros da antiga Computer
Sciences Research Group da Universidade da Califrnia em
Berkeley, e proprietrio dos direitos autorais do daemon. Kirk tambm
escreveu o prefcio para este livro.
O daemon ocasionalmente tem dado origem a uma certa quantidade
de confuso. Na verdade, uma referncia a brincar aos processos que
executado em segundo plano, consulte o Captulo 8, Tomar o controle, pgina
150, para uma descrio. O mundo l fora, ocasionalmente v
coisas de forma diferente, como indica a seguinte histria:
introduction.mm, v v4.22 (2003/04/02 06:36:16)

O Berkeley daemon

20

Grupos de notcias: alt.humor.best-of-usenet


Subject: [comp.org.usenix] A Grande Daemon Histria
De: Rob Kolstad <kolstad@bsdi.com>
Grupos de notcias: comp.org.usenix
Assunto: A Grande Histria Daemon
Linda Branagan um especialista em daemons. Ela tem uma T-shirt que ostenta o daemon em
tnis que aparece na capa dos manuais 4.3BSD e O Projeto e
Implementao do Sistema Operacional UNIX 4.3BSD por S. Leffler, M. McKusick, M.
Karels, J. Quarterman, Addison Wesley Publishing Company, Reading, MA 1989.
Ela conta a seguinte histria sobre vestindo a t-shirt daemon 4.3BSD:
Na semana passada eu andei em um'' restaurante / rega estilo caseira, 'buraco no local''
Texas para pegar uma ordem de take-out. Falei brevemente para a garonete atrs do balco,
que me disse que meu pedido seria feito em poucos minutos.
Ento, enquanto eu estava ocupado olhando para a implementos agrcolas penduradas nas paredes, eu estava
abordado por dois nativos''.'' Esses caras s poderia ser os rednecks Texas originais.
'' Perdoe-nos, senhora. Importa-se que lhe fazer uma pergunta?''
Bem, as pessoas ficam me dizendo que Texans so reais amigvel, ento eu assenti.
'' um satanista?''
Bem, pelo menos eles no me perguntar se eu gostava de festa.
'' Uh, no, eu no posso dizer que eu sou.''
'' Nossa, minha senhora. Tem certeza sobre isso?'' Eles pediram.
Eu coloquei a minha maior, mais brilhante Dallas Cowboys cheerleader sorriso e disse:'' No, eu sou
positivo. O mais prximo que eu j vir com o satanismo est assistindo Geraldo.''
'' Hmmm. Interessante. Veja, ns s estava me perguntando por que que voc tem o senhor de
escurido em seu peito l.''
Eu estava to perto de tapa um deles e fazendo com que uma cena, ento eu parei e
notado a camisa aconteceu de eu estar usando naquele dia. Com certeza, ele tinha uma foto de um
pequena criatura, com aparncia diablica que tem j h algum tempo foi associada a um
determinado sistema operacional. Nesta representao particular, a criatura estava vestindo
tnis.
Eles continuaram:'' Veja, minha senhora, no exatamente apreci-lo quando as pessoas mostram off
fotos do diabo. Especialmente quando ele est olhando to amigvel.''
Esses idiotas soou terrivelmente srio.
Me:'' Oh, bem, veja, isso no realmente o diabo, apenas, bem, uma espcie de mascote.
Native:?'' E que tipo de time de futebol tem o diabo como mascote''
Me:'' Oh, no uma equipe. uma operao-uh, uma espcie de computador.''
Eu percebi que um caixa eletrnico foi tanta tecnologia como esses caras poderiam
lidar, e eu sabia que se eu tanto como pronunciou a palavra'' UNIX'' Eu s faria
coisas piores.
introduction.mm, v v4.22 (2003/04/02 06:36:16)

21

Captulo 1: Introduo

Native:'' Onde que este computador satnico vem''?


Me:'' Califrnia. E no h nada de satnico nisso de verdade.''
Em algum lugar ao longo da linha aqui, a garonete notou a minha situao, mas esses caras
provavelmente superado seu por 600 libras, ento tudo que ela fez foi olhar para mim com simpatia
e correr para a cozinha.
Native:'' Minha senhora, eu acho que voc est mentindo. E ns apreciaramos se voc deixar o
instalaes agora.''
Felizmente, a garonete voltou mesmo instante com o meu pedido, e eles concordaram que
seria bom para mim, na verdade, pagar a minha comida antes de eu sair. Enquanto eu estava no
registo de dinheiro, eles se divertiam conversando entre si.
Native # 1:'' Voc acha que a polcia sabe sobre esses computadores diabo''?
Native # 2:'' Se eles vm da Califrnia, em seguida, o FBI deveria saber sobre eles.''
Eles me acompanhou at a porta. Eu tentei uma ltima vez:'' Voc realmente est soprando isso tudo
de proporo. Muitas pessoas usam esse 'tipo de computadores. Universidades, pesquisadores,
empresas. Eles so realmente muito til.''
Grande, grande, grande erro. Eu devia ter adivinhado o que veio a seguir.
Native:'' Ser que o governo use esses computadores diabo''?
Me:.'' Sim''
Outro grande boo-boo.
Native:'' E se o governo pagar por eles? Com o dinheiro de nossos impostos?''
Eu decidi que era hora de pular do barco.
Me:'' No. No.. Nem um pouco. Seus dlares de impostos nunca entrou em cena em tudo. Eu
promessa. No senhor, nem um centavo. Nossas boas congressistas cristos nunca deixaria
algo como isso acontecer. No.. Nunca. Bye.''
Texas. O que um pas.
A tradio remonta daemon uma maneira muito. To recentemente quanto 1996, aps a publicao de
a primeira edio deste livro, a seguinte mensagem atravessou o FreeBSD-chat
lista de discusso:
Para: "Jonathan M. Bresler" <jmb@freefall.freebsd.org>
Cc: obrien@antares.aero.org (Mike O'Brien),
joerg_wunsch@uriah.heep.sax.de,
chat@FreeBSD.org, juphoff@tarsier.cv.nrao.edu
Data: Tue, 7 de maio de 1996 16:27:20 -0700
Sender: owner-chat@FreeBSD.org
>
detalhes e gifs POR FAVOR!
Se voc insistir. :-)
Sherman, definir o Wayback Machine por volta de 1976 ou assim (ver Peter Salus " A
Quarto de sculo de UNIX para mais detalhes), quando a primeira reunio UNIX realmente nacional era
realizada em Urbana, Illinois. Isso seria depois de'' quarenta pessoas em um Brooklyn
introduction.mm, v v4.22 (2003/04/02 06:36:16)

O Berkeley daemon

22

sala de aula'' reunio realizada por Mel Ferentz (sim, eu estava naquele demais) ea mais-ou-menos
simultnea reunio Costa Oeste (s) organizada pela SRI, mas antes do Users Group UNIX
foi realmente incorporado como uma preocupao constante.
Eu sabia que Ken Thompson e Dennis Ritchie estaria l. Eu estava vivendo em
Chicago no momento, e assim foi quadrinista Phil Foglio, cuja estrela estava apenas comeando
a subir. Naquela poca, eu era um serralheiro ligado. Colega de quarto de Phil tinha inesperadamente
cidade dividida, e ele era o nico que sabia a combinao do cofre de parede em seu
apartamento. Este o nico apartamento que eu j vi que tinha um cofre de parede, mas com certeza fez
tem um, e Phil tinha algumas coisas trancado l dentro. Eu no tinha muita esperana, j que
cofres esto muito alm de onde eu estava (e estou) em serralharia minha esfera de competncia,
mas eu percebi que'' nenhuma entranhas nenhuma glria'' e disse a ele que iria dar-lhe uma pancada. Em troca, eu lhe disse:
ele poderia fazer alguma T-shirt arte para mim. Ele concordou prontamente.
Maravilha das maravilhas, este seguro era vulnervel para o mesmo algoritmo que o Mestre
fechaduras costumava ser suscetvel. Abri-lo em cerca de 15 minutos de manipulao. Ele
foi o meu melhor momento como serralheiro e Phil ficou muito feliz. Fui at a minha
laboratrio e tiro algumas Polaroid encaixe do sistema PDP-11 que eu estava correndo em UNIX no
tempo, e deu para Phil com algumas descries dos trocadilhos visuais que eu queria: tubos,
demnios com garfos correndo ao longo dos tubos, um pouco balde'''' chamado / Dev / null, tudo isso.
O Phil veio com a obra de arte que enfeitou a pena da primeira dcada do
'' Camisetas UNIX'', que foram feitas por uma operao de Ma e Pa em um subrbio de Chicago.
Eles transformaram a arte de transferncia usando uma copiadora colorida 3M em seu poro. Assim, o
PDP-11 invertida (as unidades de fita esto para trs), mas desde Phil parou na frente
painel, isso era difcil dizer. Sua assinatura marca era foto invertida, mas era
recopiado pelos T-shirt pessoas e re-forwardized'','' que por isso parece um pouco
engraado em comparao com a sua assinatura real.
Dezenas e dezenas de estas camisas foram produzidas. Sozinho Bell Labs representaram
uma ordem de algo como 200 para um grande piquenique. Contudo, apenas quatro (4) Real
originais foram produzidos: com um colar vermelho distintivo e punho da luva. Um foi
para Ken, um para Dennis, um para mim e outro para minha ento esposa. Eu agora possuem o ltimo
duas camisas. Ken e Dennis foram apresentados com suas camisas na conferncia Urbana.
Pessoas ordenou estas camisas direto do casal Chicago. Muitos anos depois,
quando eu estava morando em Los Angeles, eu recebi um telefonema de Armando Stettner, depois para dezembro, pedindo
sobre o que a arte agora famoso. Eu lhe disse que no tinha falado com os fabricantes de Illinois T-shirt
nos ltimos anos. A seu pedido, eu liguei para eles. Eles tinham dobrado os anos de operao atrs e
estavam dentro dos dias de descartar toda a arte antiga. I solicitado o seu retorno, e devidamente
recebeu-o de volta no correio. Parecia estranho, vendo-o novamente em sua forma original, uma
imagem de espelho das camisas com que eu e todos os outros estavam agora familiar.
Enviei a arte para Armando, que queria dar comercializao Ultrix
pessoas. Eles saram com o cartaz Ultrix que mostrou uma boa mquina Ultrix brilhante
contrastava com a goma de mascar-e-corda PDP-11 pessoas UNIX estavam familiarizados.
Eles ainda tm a obra de arte, tanto quanto eu sei.
No me lembro mais exatamente o contedo da carta que enviei junto com a obra de arte. Eu
disse que, tanto quanto sabia, Phil no tinha direitos residuais arte, j que era uma "obra
feito para aluguer ', mas nada foi escrito (e note que este foi dcadas antes do
introduction.mm, v v4.22 (2003/04/02 06:36:16)

23

Captulo 1: Introduo

nova lei de direitos autorais). Eu no me lembro agora se eu explicitamente atribudo todos os direitos dezembro
O que certo que o daemon de John Lassiter, de forma consciente emprestado do
original ou criado por evoluo paralela, posterior primeira horda de daemons UNIX
pelo menos uma dcada e provavelmente mais. E se o daemon de Lassiter se parece muito com um Phil
Criao Foglio, h uma razo.
Eu nunca fiz a varredura na arte de Phil, eu tenho quase nunca verificado em nada, ento eu
no tm GIFs para mostrar. Mas eu tenho alguns muito, muito velho camisetas UNIX em surpreendentemente
bom estado de conservao. Melhores condies do que eu, de qualquer modo: eu j no se encaixam em nenhum dos
eles.
Mike O'Brien
rangente antigo
Observe a data desta mensagem: ele apareceu desde a primeira edio deste livro. Desde ento,
a imagem daemon foi digitalizado, e voc pode encontrar uma verso em
http://www.mckusick.com/beastie/shirts/usenix.html.

introduction.mm, v v4.22 (2003/04/02 06:36:16)

Neste captulo:
Usando hardware antigo
PC Hardware
Como o sistema
detecta hardware
Configurando o ISA
cartes
PCMCIA, PC Card
e CardBus
Universal Serial Bus
Discos
Layout de dados em disco
Fazendo o arquivo
sistemas
Limitaes de tamanho de disco
Mostrar hardware
O hardware
Compaq / Digital
Mquinas Alpha
O CD-ROM
distribuio

2
Antes de instalar

FreeBSD executado em praticamente qualquer PC moderno, Alpha ou 64 bits mquina SPARC. Voc pode
pular este captulo e no prximo e passar para o captulo 3, e voc ter uma chance muito boa
de sucesso. No entanto, isso torna as coisas mais fceis de conhecer o contedo deste captulo
antes de comear. Se voc se deparar com problemas, ele vai te dar a informao de fundo
voc precisa para resolver o problema de forma rpida e simples.
FreeBSD tambm executado na maioria dos laptops baseados em Intel, em geral, as consideraes acima se aplicam
para laptops tambm. No decorrer do livro vamos ver exemplos de onde laptops requerem
tratamento especial.
A maioria da informao aqui se aplica principalmente s plataformas Intel. Vamos olhar para o
Compaq arquitetura Alpha na pgina 42. A primeira verso do FreeBSD para apoiar o
Arquitetura SPARC 64 5.0, e suporte ainda um pouco irregular. Na hora de ir para a
imprensa, no vale a pena descrever, uma vez que vai mudar rapidamente. As instrues sobre o CDDistribuio ROM so atualmente a melhor fonte de informaes sobre a execuo FreeBSD em
SPARC 64.

Usando hardware antigo


FreeBSD executado em todas as mquinas relativamente recentes. Alm disso, um monte de hardware mais antigo, que
est disponvel por uma quantia nominal, ou at mesmo de graa, funciona FreeBSD completamente feliz, mas voc
pode precisar de tomar mais cuidado na instalao.
FreeBSD no suporta todo o hardware PC: o PC tem sido no mercado h mais de 20
anos, e mudou muito nesse tempo. Em particular:
concepts.mm, v verso 4.21 (2003/04/02 06:37:12)

25

26

Captulo 2: Antes de instalar

FreeBSD no suporta 8 bits e processadores de 16 bits. Estes incluem a 8086 e


8088, as quais foram utilizadas na IBM PC e PC-XT e clones, e a 80286, usado em
o IBM PC-AT e os clones.

O kernel FreeBSD no suporta mais o ST-506 e ESDI. improvvel que voc


ter qualquer um destes: eles so agora to velho que a maioria deles falharam. O wd motorista
ainda inclui suporte para eles, mas no foi testado, e se voc quiser usar este
tipo de unidade que voc pode achar que melhor usar FreeBSD Release 3. Consulte a pgina 31 para encontrar
como identificar essas unidades. Voc pode obter a verso 3 do FreeBSD a partir de
ftp://ftp.FreeBSD.org/pub/FreeBSD/releases/i386/3.x-STABLE. Voc vai ter que performar uma instalao de rede.

Os requisitos de memria para FreeBSD tm aumentado significativamente nos ltimos anos,


e voc deve considerar 16 MB de tamanho mnimo, mas ningum tem recentemente
verificado se ele no iria instalar em, digamos, 12 MB. FreeBSD Release 3 ainda corre na 4
MB, mas voc precisa de 5 MB para a instalao.

Se voc estiver planejando instalar FreeBSD em uma mquina antiga, considere o seguinte para ser um
mnimo absoluto:

PC com 80386 CPU, mquina baseada em Alpha com firmware SRM.

16 MB de memria (Intel) ou 24 MB (Alpha).

80 MB de espao livre em disco (Intel). Ningum tentou uma instalao em um Alpha ou


Mquina SPARC com menos de 500 MB, mas voc provavelmente pode reduzir esse valor
significativamente.

Voc no precisa absolutamente de um teclado e exibir placa: muitas mquinas FreeBSD executar
tarefas do servidor com nem teclado nem monitor. Mesmo assim, porm, voc pode encontr-lo
conveniente para colocar uma placa de vdeo na mquina para ajudar no caso de voc ter problemas.
Quando eu digo absoluto mnimo, eu quero dizer isso. Voc no pode fazer muito com esse mnimo
sistema, mas para algumas finalidades, pode ser adequada. Pode melhorar o desempenho de
um sistema to mnima significativamente pela adio de memria. Antes de ir para o trabalho de
mesmo tentar uma instalao como mnimo, considerar o custo de mais 16 MB de memria. E
voc pode pegar as mquinas melhores do que este de segunda mo por US $ 50. o trabalho vale a pena?
Para obter todos os benefcios de um sistema FreeBSD desktop ou laptop (mas no de uma mquina
usado principalmente como um servidor), voc deve estar executando o sistema X Window. Este usa mais
memria. Considere 32 MB no mnimo til aqui, embora graas a virtuais do FreeBSD
sistema de memria, este no um limite to difcil como com alguns outros sistemas.
A velocidade de um sistema baseado em memria virtual, como FreeBSD depende, pelo menos, tanto sobre
desempenho da memria como no desempenho do processador. Se voc tem, digamos, um 486DX-33 e 16 MB de
memria, upgrade da memria para 32 MB, provavelmente voc vai comprar mais desempenho do que a atualizao
placa-me para um Pentium 100 e manter a memria de 16 MB. Isto vlido para a habitual mistura
de programas, em especial, os programas que no realizam processamento de nmeros.

Qualquer mquina de 64 SPARC corre FreeBSD aceitvel, pois as mquinas so relativamente novos. Se
voc est executando Intel ou Alpha, considere o seguinte o mnimo para conseguir til
trabalho feito com FreeBSD e X:
concepts.mm, v verso 4.21 (2003/04/02 06:37:12)

Usando hardware antigo

PC com 80486DX/2-66 ou mquina baseada em Alpha

SVGA placa de vdeo com 2 MB de memria, 1024x768

Mouse

200 MB de espao livre em disco

27

32 MB de memria (i386) ou 64 MB (Alpha)

Sua milhagem pode variar. Durante a fase de reviso de uma edio anterior deste livro, um dos
usurios declarou que estava muito feliz com a sua mquina, que tem um processador de 486-33, 16 MB
memria principal, e 1 MB de memria de sua placa de vdeo. Ele disse que correu muito mais rpido do que o seu
Pentium 100 no trabalho, que decorreu Microsoft. Moral da histria: se o seu hardware no est altura do
especificao recomendada, no desanime. Experiment-lo de qualquer maneira.

Para alm deste mnimo, FreeBSD suporta um grande nmero de outros componentes de hardware.

Os drivers de dispositivo
O kernel do FreeBSD a nica parte do sistema que podem acessar o hardware. Ele
inclui drivers de dispositivo, que controlam a funo de dispositivos perifricos, como discos,
monitores e placas de rede. Quando voc instala um novo hardware, voc precisa de um driver para ele.
H duas maneiras de obter um driver no kernel: voc pode construir um kernel que inclui o
cdigo do driver, ou voc pode carregar um mdulo de controlador (Kernel Module carregvel ou kld ) Na
do kernel em tempo de execuo. Nem todos os drivers esto disponveis como klds. Se voc precisa de um desses motoristas,
e no est includo no kernel padro, voc tem que construir um novo kernel. Ns olhamos para
construo de kernels no captulo 33.
A configurao do kernel fornecido com distribuies FreeBSD chamado GENRICO aps o
nome do arquivo de configurao que descreve. Ele contm suporte para o mais comum
dispositivos, embora o suporte para alguns hardwares mais antigos est faltando, geralmente porque est em conflito
com os drivers mais modernos. Para uma lista completa de hardware suportado atualmente, leia a web
pgina http://www.FreeBSD.org/releases/ e selecione o link Notas de Hardware pela
liberar voc est interessado polegadas Este arquivo tambm est disponvel em sistemas FreeBSD instalados como
/ Usr/share/doc/en_US.ISO_8859-1/books/faq/hardware.html. Ele tambm est disponvel em outras
lnguas, ver os subdiretrios / Usr / share / doc.

PC Hardware
Esta seo examina as informaes que voc precisa entender para instalar o FreeBSD no
arquitetura i386. Em particular, na prxima seo veremos como o FreeBSD detecta
hardware, eo que fazer se o seu hardware no corresponde ao sistema de
expectativas. Na pgina 31, vamos ver como FreeBSD e outros sistemas operacionais de PC lidar com
espao em disco, e como configurar o disco para o FreeBSD.
Algumas dessas informaes tambm se aplica aos Alpha e SPARC 64 arquiteturas. Vamos
olhar para as diferenas para a arquitetura Alpha na pgina 42. Atualmente, a SPARC 64
implementao est mudando rpido demais para descrev-lo de uma forma significativa.
concepts.mm, v verso 4.21 (2003/04/02 06:37:12)

28

Captulo 2: Antes de instalar

Desde que o PC original, uma srie de padres de hardware vm, e alguns foram:

O PC original tinha um barramento de 8 bits. Muito poucas destas cartas ainda esto disponveis, mas eles
so compatveis com o barramento ISA (veja o prximo item).

O PC AT, lanado em 1984, tinha um processador de 16 bits 80286. Para apoiar esta
processador, o nibus foi ampliado para 16 bits. Esse nibus veio a ser conhecido como o Indstria
Standard Architecture, ou ISA. Esta norma ainda no est completamente morto, e muitos
novas placas-me suportam. Placas-me mais antigas tm um nmero de slots ISA.

O barramento ISA tem uma srie de limitaes severas, nomeadamente o mau desempenho. Este
tornou-se um problema muito cedo. Em 1985, a IBM introduziu o sistema PS / 2, que
abordou esta questo com um novo nibus, o chamado Arquitetura de microcanais ou MCA.
Embora bem sucedido para a IBM, MCA no foi adotado por outros fabricantes, e
FreeBSD no apoi-lo em tudo. IBM no produz produtos base de
MCA.

Em paralelo ao MCA, outros fabricantes introduziram um nibus chamado Alargado


Industry Standard Architecture, ou EISA. Como o nome sugere, uma maior
extenso desempenho do ISA, e FreeBSD suporta. Como MCA, obsoleto.

EISA ainda provou no ser rpido o suficiente para uma boa performance grfica. No final dos anos
Dos anos 80, uma srie de nibus local solues apareceu. Eles tiveram um desempenho melhor, mas
alguns eram muito confiveis. FreeBSD apoiou a maioria deles, mas voc no pode contar com
lo. melhor ficar longe deles.

Finalmente, no incio de 1990, a Intel trouxe um novo barramento chamado Componentes perifricos
Interligar, ou PCI. PCI agora o barramento dominante num certo nmero de arquitecturas.
PC mais moderno add-on placas so PCI.
Em comparao com os nibus anteriores, PCI muito mais rpido. A maioria das placas tem uma largura de
32 bits de dados autocarro, mas tambm existe um padro PCI de 64 bits. PCI placas tambm contm uma quantida

de suficiente inteligncia para que o sistema possa configur-los, o que simplifica


a instalao do sistema ou de novas placas.
Placas-me modernas tambm tm um AGP (Accelerated Graphics Port) Slot especifily projetado para suportar exatamente uma placa grfica. Como o nome indica, mais rpido, mesmo
do PCI, mas otimizado para apenas grficos. FreeBSD suporta, claro;
caso contrrio, no poderia ser executado em hardware moderno.
A maioria dos laptops tm disposio para o externo plug-in cartes que estejam em conformidade com o PC Card
(Antigamente chamado PCMCIA) ou CardBus normas. Estes cartes so projetados para serem
inserido e removido a partir de um sistema de execuo. FreeBSD tem suporte para estes
cartes; vamos olh-los com mais detalhes na pgina 30.
Cada vez mais, as portas seriais e paralelas bsicos instalados no incio dos PCs esto sendo
substitudo por um Universal Serial Bus ou USB. Vamos olhar para ele na pgina 31.

concepts.mm, v verso 4.21 (2003/04/02 06:37:12)

PC Hardware

29

Como o sistema detecta o hardware


Quando o sistema iniciado, cada driver no kernel examina o sistema para encontrar qualquer
hardware que pode ser capaz de controlar. Este exame chamado sondagem. Dependendo
no driver e da natureza do hardware suportado por elas, a sonda pode ser inteligente o bastante
para configurar o hardware em si, ou a reconhecer o seu hardware no importa como ele foi definido
acima, ou pode esperar que o hardware a ser criado de uma maneira especfica, a fim de encontr-lo. Em
Geralmente, voc pode esperar motoristas PCI para ser capaz de configurar a placa para funcionar corretamente. No
caso do ISA ou placas EISA, voc pode no ter tanta sorte.

Configurando placas ISA


Placas ISA esto rapidamente se tornando obsoleto, mas s vezes eles ainda so teis:

Placas de vdeo ISA so muito lentos em comparao com placas grficas modernas, mas se
voc quer apenas um carto para manuteno em uma mquina servidor que normalmente no
exibir qualquer coisa, esta uma alternativa econmica.

Alguns controladores de disco ISA pode ser til, mas eles so bem limitados em performance.

Muitas placas seriais ISA e modems internos ainda esto disponveis.

ISA placas Ethernet pode ser uma escolha para a rede de baixo volume.

A maioria das placas ISA exigir alguma configurao. Existem quatro parmetros principais que voc
pode ser necessrio definir para placas de controlador de PC:
1. O endereo da porta o endereo do primeiro possivelmente vrios registos de controlo de que o
motorista usa para se comunicar com a placa. Ele normalmente especificada em hexadecimal,
por exemplo 0x320.
Se voc vem de um fundo Microsoft, voc pode estar mais acostumado com a notao 320H.
O notation0x320 vem da linguagem de programao C. Voc vai ver um monte de que em UNIX.

Cada placa tem seu prprio endereo ou faixa de endereos. A arquitetura ISA tem um
acentuadamente intervalo de endereos limitada, e uma das causas mais freqentes de problemas quando
a instalao de uma placa que os endereos de porta coincidir com os de outra placa.
Cuidado com as placas com um grande nmero de registros. Porta tpica aborda final em
(Hexadecimal) 0. No confie em ser capaz de tomar qualquer endereo desocupado
terminando em 0, porm: algumas placas, como a Novell NE2000 placas Ethernet
compatveis, ocupar
at 32 registos, por exemplo, a partir de 0x320 a 0x33f. Note-se tambm que uma srie de
endereos, como as portas seriais e paralelas, muitas vezes acabam em 8.
2. Placas usam um Solicitao de interrupo, tambm conhecido como IRQ, para chamar a ateno do
motorista quando um determinado evento acontece. Por exemplo, quando uma interface serial l um
personagem, ele gera uma interrupo para dizer ao motorista para recolher o personagem. Interromper
pedidos s vezes pode ser compartilhado, dependendo do motorista e do hardware. L
so ainda menos pedidos de interrupo do que endereos de porta: um total de 15, dos quais um nmero
concepts.mm, v verso 4.21 (2003/04/02 06:37:12)

30

Captulo 2: Antes de instalar

esto reservados pela placa-me. Normalmente voc pode esperar para ser capaz de usar IRQs 3, 4,
5, 7, 9, 10, 11 e 12. IRQ 2 especial: devido ao design do IBM PC original / AT,
ela a mesma coisa que o IRQ 9. FreeBSD se refere a essa interrupo como IRQ 9.
Como se as interrupes disponveis j no estavam restritas suficiente, ISA e PCI placas
utilizam o mesmo conjunto de linhas de interrupo. Placas PCI podem compartilhar linhas de interrupo entre
vrias placas, e de fato o padro PCI suporta apenas quatro interrupes, chamadas
INTA, INTB, INTC e INTD. Na arquitetura PC eles so mapeados para quatro dos 15 ISA
as interrupes. Placas PCI so auto-configurao, ento tudo que voc precisa fazer garantir que PCI
e interrupes ISA no entrem em conflito. Voc normalmente configurar isso em um menu de configurao do BIOS.
3. Alguns dispositivos de alta velocidade executar Direct Memory Access, tambm conhecido como DMA, para
transferir dados para ou a partir da memria sem a interveno da CPU. Para transferir os dados, eles
afirmar uma DMA Request (DRQ) e aguardar o nibus para responder com uma DMA Reconhea
(DACK). A combinao de DRQ e DACK s vezes chamado de DMA Channel.
A arquitectura ISA fornece 7 canais DMA, numerados de 0 a 3 (8 bits) e de 5 a 7
(16 bits). O driver de disquete utiliza DMA canal 2. Canais de DMA no pode ser compartilhado.
4. Finalmente, os controladores podem ter memria on-board, por vezes referido como I / O de memria
ou Iomem. geralmente localizados em endereos entre 0xA0000 e 0xeffff.
Se o motorista s olha para configuraes de placa especfica, voc pode configurar a placa para combinar
o que o motorista espera que, normalmente, definindo jumpers ou utilizando um fornecedor fornecido
programa de diagnstico para definir a configurao de memria on-board, ou voc pode construir um kernel
coincidem com as configuraes de tabuleiro.

PCMCIA, PC Card e CardBus


Laptops no tem espao suficiente para slots de expanso PCI normais, embora muitos usam um
formato de carto PCI menor. mais comum ver PC Card ou CardBus cartes, no entanto.
PC Card foi originalmente chamado PCMCIA, que significa Personal Computer Memory
Associao Internacional de carto: o primeiro objetivo do nibus foi para expandir a memria.
Hoje em dia a expanso de memria tratado por outros meios, e os cartes PC Card so normalmente
perifricos, como placas de rede, modems ou discos. verdade que voc pode inserir compacto
memria flash para cmeras digitais em um adaptador de carto de PC e acess-lo a partir de FreeBSD, mas
mesmo neste caso, o carto de um disco, no um carto de memria.
O padro de carto PC original j tem um p na cova: um barramento de 16 bits que
no funciona bem com computadores portteis modernos. O padro de substituio tem um barramento de 32 bits de largura
e chamado CardBus. As cartas parecem quase idnticos, e laptops mais modernos suportam
ambos os padres. Neste livro eu vou usar usar o termo PC Card para incluir CardBus salvo
indicado de outra forma. FreeBSD Release 5 inclui completamente novo cdigo PC Card. Ele agora
suporta tanto o PC Card de 16 bits e de 32 bits placas CardBus.
PC Card oferece um conceito que os cartes convencionais no: os cartes so hot swappable.
Voc pode inseri-los e remov-los em um sistema em execuo. Isso representa um nmero de
potenciais problemas, alguns dos quais so parcialmente solucionados.
concepts.mm, v verso 4.21 (2003/04/02 06:37:12)

PCMCIA, PC Card e CardBus

31

PC Card e cartes CardBus


PC Card e CardBus ambos usam a mesma forma de fator cartes: so 54 mm de largura e em
menos 85 mm de comprimento, embora alguns cartes, cartes de rede sem fio, visivelmente so at
120 milmetros de comprimento e projecto para alm da carcaa do laptop. As placas wireless conter uma
antena na parte da placa, que se projecta a partir da mquina.
Cartes PC Card pode ter um dos trs espessuras padro:

Tipo 1 cartes so 3,3 milmetros de espessura. Eles so muito raros.

Tipo 2 cartes so 5 mm de espessura. Estes so o tipo mais comum, ea maioria dos laptops
tomar dois deles.

Tipo 3 cartes so 10,5 milmetros de espessura. Na maioria dos laptops normalmente voc pode inserir qualquer um
tipo 3 card ou dois tipo 2 cartes.

O GENRICO Kernel do FreeBSD contm suporte para carto PC, assim voc no precisa construir uma
novo kernel.

Universal Serial Bus


O Universal Serial Bus (USB) uma nova maneira de se conectar perifricos externos,
normalmente aqueles que costumava ser conectados por portas seriais ou paralelas. muito mais rpido do que
os componentes antigos: a velha interface serial tinha uma velocidade mxima de 115.200 bps, e
o mximo que voc pode esperar de transferir a porta paralela de cerca de 1 MB / s. Por
comparao, os atuais implementaes USB transferir dados a at 12 Mb / s, e uma verso
com 480 Mb / s est em desenvolvimento.
Como o nome indica, um USB nibus: voc pode conectar vrios dispositivos a um barramento. Atualmente
os dispositivos mais comuns so dispositivos meados de velocidade, tais como impressoras e scanners, mas voc
pode conectar praticamente qualquer coisa, incluindo teclados, mouses, placas Ethernet e massa
dispositivos de armazenamento.

Discos
Um certo nmero de discos diferentes tm sido usados em computadores:

ST-506 discos so os mais antigos. Voc pode reconhec-los pelo fato de que eles tm dois
cabos: um cabo de controle que, geralmente, tem conexes para dois discos, e um mais fino dados
cabo que no partilhada com qualquer outro disco. Eles so apenas sobre completamente obsoleto
por agora, mas FreeBSD Release 3 ainda apoia-los com o wd motorista. Estes discos
s vezes so chamados pelo seu formato de modulao, Modified Frequency Modulation ou
MFM. Uma variante da MFM, que oferece cerca de 50% mais espao de armazenamento RLL ou Run Length
Limitado modulao. Do ponto de vista do sistema operativo, no existe diferena
entre MFM e RLL.

concepts.mm, v verso 4.21 (2003/04/02 06:37:12)

32

Captulo 2: Antes de instalar

ESDI (Enhanced Small Device Interface) discos foram projetados para trabalhar em torno de alguns
do as limitaes de unidades ST-506. Eles tambm usam o mesmo cabeamento como ST-506, mas
eles no so hardware compatvel, embora a maioria dos controladores ESDI entender ST-506
comandos. Eles tambm esto obsoletos, mas o wd motorista em FreeBSD Release 3 suporta
eles, tambm.

IDE (Integrated Device Electronics), agora freqentemente chamado ATA (AT Attachment)
a interface de disco do PC de baixo custo atual. Ele suporta dois discos ligados por uma nica de 40
ou 80 cabo plano condutor. Os suportes para os cabos so os mesmos, mas o 80
cabos condutores necessrio para a 66 MHz, 100 MHz e 133 MHz e as taxas de transferncia
apoiada por unidades de disco mais recentes.
Todos os discos IDE modernos so chamados EIDE (Enhanced IDE). O IDE originais
discos foram limitadas pela BIOS do PC padro para um tamanho de 504 MB (1024 * 16 * 63 *
512, ou 528.482.304 bytes). As unidades EIDE exceder esse limite por vrias ordens de
magnitude.
Um problema com os controladores IDE antigos era que eles costumavam programada de I / O ou PIO a
realizar a transferncia. Neste modo, a CPU est directamente envolvido na transferncia ou
a partir do disco. Mais antigos controladores transferido um byte de cada vez, mas mais moderno
controladores podem transferir em unidades de 32 bits. De qualquer maneira, transferncias de disco usam uma grande
quantidade de tempo de CPU com programado I / O, e difcil conseguir a transferncia
taxas de discos IDE modernos, que podem ser to elevados como 100 MB / s. Durante tal
transferncias, o sistema parece ser insuportavelmente lento:'' sofre uma parada.''
Para resolver este problema, chipsets modernos oferecem transferncias DMA, que quase
eliminar completamente a sobrecarga da CPU. Existem dois tipos de DMA, cada um com
vrios modos de transferncia possveis. Os mais velhos DMA modo no est mais em uso. Ele
taxas de transferncia de tratados entre 2.1 MB / s e 16,7 MB / s. O mais recente UDMA (Ultra
DMA) modo suporta taxas de transferncia entre 16,7 MB / s, 133 MB / s. Discos atuais
usar UDMA33 (33 MHz a taxa de transferncia), que a taxa mais rpida que voc pode usar com um 40
cabo condutor, e UDMA66 (66 MHz), UDMA100 (100 MHz) e UDMA-133
(133 MHz), com um cabo condutor 80. Para obter esta taxa de transferncia, tanto o disco eo
controlador de disco deve suportar a taxa. FreeBSD suporta todos os modos UDMA.
Outro fator que influencia o desempenho IDE o fato de que a maioria dos controladores IDE e
discos s pode executar uma transferncia ao mesmo tempo. Se voc tiver dois discos em um controlador,
e voc deseja acessar ambos, o controlador serializa os pedidos para que um pedido de
uma unidade completa antes das outras partidas. Isso resulta em um pior desempenho do que
em uma cadeia SCSI, que no tem essa restrio. Se voc tiver dois discos e dois
controladores, melhor colocar um disco em cada controlador. Esta situao est gradualmente
mudando, assim, quando a escolha de hardware vale a pena checar com o apoio atual para
enfileiramento marcado, que permite transferncias simultneas.

SCSI o Sistemas Small Computer Interface. geralmente pronunciado'' scuzzy.''


usado para discos, fitas, CD-ROMs e tambm outros dispositivos, como scanners e
impressoras. O controlador SCSI mais corretamente chamado de sediar adaptador. Como IDE,
SCSI tem evoludo significativamente ao longo do tempo. Dispositivos SCSI so conectados por um nico plano
cabo com condutores (50'' SCSI estreito'', que conecta de um total de oito dispositivos) ou 68
concepts.mm, v verso 4.21 (2003/04/02 06:37:12)

Discos

33

condutores ('' wide SCSI'', que tambm se conecta at 16 dispositivos). Alguns SCSI
dispositivos tm subdevices, para trocadores de CD-ROM exemplo.
Drives SCSI tm a reputao de um desempenho muito superior do que o IDE. Isto principalmente
porque quase todos os adaptadores SCSI suportam DMA, enquanto no passado IDE
controladores geralmente utilizados programado I / O. Alm disso, os adaptadores SCSI pode
realizar transferncias de vrias unidades ao mesmo tempo, enquanto os controladores IDE pode
apenas realizar uma transferncia ao mesmo tempo. Drives SCSI tpicos ainda so mais rpidos do que IDE
unidades, mas a diferena nem de longe to grande quanto costumava ser. Narrow SCSI pode
suportar taxas de transferncia de at 40 MB / s (Ultra 2) e grande SCSI pode suportar taxas de
at 320 MB / s (Ultra 320). Estas velocidades no so necessariamente mais rpido que IDE: voc
pode conectar mais de sete vezes o nmero de dispositivos a uma ampla cadeia SCSI.

Layout de dados em disco


Antes de instalar o FreeBSD, voc precisa decidir como voc deseja usar o espao em disco
disponveis para voc. Se desejar, o FreeBSD pode coexistir com outros sistemas operacionais no
Plataforma Intel. Nesta seo, vamos olhar para a forma como os dados so dispostos no disco, e que ns
precisa fazer para criar sistemas de arquivos do FreeBSD no disco.

BIOS do PC e discos
Os princpios bsicos de unidades de disco so relativamente simples: os dados so armazenados em um ou mais
girando os discos com um revestimento magntico semelhante em funo do revestimento em uma fita de udio.
Ao contrrio de uma fita, no entanto, os chefes de disco, no toque na superfcie: o disco em rotao produz um
a presso de ar de encontro cabea, a qual mantm flutuante muito perto da superfcie. O disco
tem (geralmente) um leitura / escrita cabea para cada uma das superfcies de transferncia de dados de e para o
sistema. As pessoas freqentemente falam sobre o nmero de cabeas, e no o nmero de superfcies,
embora estritamente falando, isso incorreto: se h duas cabeas por superfcie (para acelerar
de acesso), voc ainda est interessado no nmero de superfcies, no o nmero de cabeas.
Durante a transferncia dos dados, as cabeas esto estacionrias, os dados assim est escrito em discos numa srie
concntrico de circular faixas. Logicamente, cada pista est dividida num nmero de sectores,
que hoje em dia quase que invariavelmente contm 512 bytes. Um nico mecanismo de posicionamento
move as cabeas de uma faixa para outra, de modo a qualquer momento todas as faixas sob a
posio atual chefe pode ser acessado sem reposicionamento. Este grupo de faixas
chamado cilindro.
Uma vez que o dimetro da pista difere de uma faixa para a outra, o mesmo acontece com a armazenagem
capacidade por faixa. No entanto, por uma questo de simplicidade, unidades mais antigas, como a ST-506
(MFM e RLL) unidades, teve um nmero fixo de setores por trilha. Para executar um conjunto de dados
transferncia, necessrio dizer que a unidade de cilindro, cabea e setor de abordar. Este
modo de endereamento assim chamado CHS endereamento.
Discos modernos tm um nmero varivel de setores por trilha em diferentes partes do disco para
optimizar o espao de armazenamento, e pela mesma razo que normalmente armazenar dados no disco
em unidades muito maiores do que os sectores. Externamente, eles traduzem os dados em unidades de setores,
concepts.mm, v verso 4.21 (2003/04/02 06:37:12)

34

Captulo 2: Antes de instalar

e tambm, opcionalmente, manter a iluso de faixas'''' e'' cabeas'', embora os valores


no tem nada a ver com a organizao interna do disco. No entanto, a configurao do BIOS
rotinas ainda dar-lhe a opo de especificar as informaes sobre as unidades de disco em termos de
o nmero de cilindros, cabeas e setores, e alguns insistem nisso. Na realidade, o disco moderno
setores endereo discos sequencialmente, os chamados Logical Block Addressing ou LBA. CHS
endereamento tem um problema adicional: vrios padres tm limitado o tamanho dos discos a
504 MB ou 8 GB. Ns vamos olhar para isso com mais detalhes na pgina 39.
Drives SCSI so uma questo diferente: o sistema BIOS normalmente no sabe nada
sobre eles. Eles so sempre abordados em modo LBA. at o adaptador host para
interrogar o carro e descobrir quanto espao est nele. Normalmente, o adaptador host tem
um BIOS que interroga a unidade e encontra suas dimenses. Os valores que determina podem
no estar correto: a BIOS limite de endereo GB PC 1 (ver pgina 39) pode mord-lo. Verificar
a documentao do adaptador de host para mais detalhes.

Particionamento de disco
O BIOS do PC divide o espao em disco em at quatro parties, liderados por uma partio
tabela. Para os sistemas Microsoft, cada partio pode ser uma partio primria que
contm um sistema de arquivos (a'' unidade'' na terminologia Microsoft), ou um partio estendida que
contm vrios sistemas de arquivos (ou parties lgicas'''').
FreeBSD no utiliza a tabela de partio BIOS do PC diretamente. Ele mantm a sua prpria
esquema de particionamento com a sua prpria tabela de parties. Na plataforma PC, ele coloca este
tabela de partio em uma nica partio BIOS do PC, em vez da mesma forma que um BIOS do PC
partio estendida contm'' vrias parties lgicas.'' Trata-se de parties da BIOS do PC
como fatias''.''
Este uso duplo da palavra divisria realmente confuso. Neste livro, eu sigo uso BSD, mas
Eu continuo a referir a tabela de parties do PC BIOS por esse nome.

Divisria oferece a flexibilidade que outros sistemas operativos precisa, por isso, tem sido adoptada
por todos os sistemas operacionais que rodam na plataforma PC. A Figura 2-1 mostra um disco com todos
alocados quatro fatias. O Partition Table representa a estrutura de dados mais importantes. Contem
informaes sobre o tamanho, localizao e tipo das fatias (parties do PC). A BIOS do PC
permite que uma destas fatias de ser designado como active: no momento da inicializao do sistema, a sua inicializao
registro utilizado para iniciar o sistema.
A tabela de partio de um disco de inicializao tambm contm um Master Boot Record (MBR), que
responsvel por encontrar a fatia correta e arrancar-lo. O MBR ea tabela de partio
ocupam o primeiro setor no disco, e muitas pessoas consideram que eles sejam a mesma coisa. Voc
s precisa de um MBR em discos a partir do qual voc inicializa o sistema.

concepts.mm, v verso 4.21 (2003/04/02 06:37:12)

Layout de dados em disco

35

Master Boot Record


Partition Table
Partition (fatia) 1
/ Dev/da0s1
Partition (fatia) 2
/ Dev/da0s2
Partition (fatia) 3
/ Dev/da0s3
Partition (fatia) 4
/ Dev/da0s4

Figura 2-1: A tabela de partio


Uso do PC designa, pelo menos, uma fatia como o partio primria, o C: dirigir. Outro
fatia pode ser designado como um partio estendida que contm as outras unidades'''' (todos
juntos em uma fatia).
Sistemas UNIX tem sua prpria forma de particionamento que antecede o PC e no
compatvel com o mtodo de PC. Como resultado, todas as verses do UNIX que pode coexistir com
Microsoft implementar a sua prpria separao dentro de uma nica fatia (partio PC BIOS).
Isso conceitualmente semelhante a uma partio estendida. Sistemas FreeBSD definir at oito
parties por fatia. Eles podem ser usados para as seguintes finalidades:

A partio pode ser um sistema de arquivos, uma estrutura na qual UNIX armazena arquivos.

Ele pode ser usado como um partio swap. FreeBSD usa a memria virtual: do total endereado
memria do sistema pode exceder o tamanho da memria fsica, ento precisamos de espao no
disco para armazenar pginas de memria que no cabem na memria fsica. Swap um separado
partio por motivos de desempenho: voc pode usar arquivos de swap, como a Microsoft faz, mas
muito menos eficiente.

A partio poder ser utilizada por outros componentes do sistema. Por exemplo, a Vinum
Volume Manager utiliza parties especiais como blocos de construo para volumes. Ns olharemos
Vinum na pgina 221.

A partio pode no ser uma partio real. Por exemplo, a partio c refere-se ao
fatia inteira, para que ele se sobrepe todo o resto. Por razes bvias, as parties que
representar sistemas de arquivos e espao de troca (a, b e d atravs h) no devem se sobrepor.

Dispositivos de bloco e de carter


UNIX tradicional trata dispositivos de disco de duas maneiras diferentes. Como vimos, possvel
pensar de um disco como um grande nmero de blocos sequenciais de dados. Olhando para ele como esta
no lhe d um sistema de arquivo que mais como trat-la como uma fita. UNIX chama esse tipo
de acesso cru acesso. Voc tambm vai ouvir o termo dispositivo de carter.
concepts.mm, v verso 4.21 (2003/04/02 06:37:12)

36

Captulo 2: Antes de instalar

Normalmente, claro, voc quer que os arquivos em seu disco: voc no se importa onde eles esto, voc s
quer ser capaz de abri-los e manipul-los. Alm disso, por razes de desempenho
o sistema mantm os dados acessados recentemente em um o buffer cache. Trata-se de um conjunto muito mais
trabalhar de dispositivos brutos. Estes dispositivos so chamados bloquear dispositivos.
Em contraste com o UNIX, Linux originalmente no tm dispositivos de disco caracteres. Comeando
com a verso 4.0, FreeBSD tomou o caminho inverso: h agora nenhum usurio
dispositivos de bloco acessveis mais. H um nmero de razes para isto:

Ter dois nomes diferentes para dispositivos confuso. Em verses mais antigas do FreeBSD,
voc poderia reconhecer bloco e dispositivos de caracteres em um ls-l lista com as letras b
e c no incio das permisses. Por exemplo, em FreeBSD 3.1 voc pode
vi:
$ Ls-l / dev/rwd0s1a
crw-r ----- 1 operador de raiz
brw-r ----- 1 operador de raiz

/ Dev/wd0s1a
3, 131072 31 de outubro 19:59 / dev/rwd0s1a
0, 131072 31 de outubro 19:59 / dev/wd0s1a

wd o nome antigo para o atual anncio discos. A questo : quando voc usa o que
um? Mesmo em comparao com UNIX System V, as regras eram diferentes.

Quase todos os acessos ao disco passa atravs do sistema de arquivos e dispositivos de bloco acessveis ao usurio
adicionar complicao.

Se voc escrever para um dispositivo de bloco, voc no escrever automaticamente para o disco, s em
o buffer cache. O sistema decide quando escrever para o disco. Se h um problema de escrita
para o disco, no h nenhuma maneira para notificar o programa que realizou a gravao: Pode at
j terminaram. Pode demonstrar isto de forma muito eficaz, comparando o
maneira FreeBSD e Linux gravar em um disquete. Ele leva 50 segundos para escrever um
disco da disquete completa velocidade determinada pelo hardware, de modo que o FreeBSD
programa de cpia termina aps 50 segundos. Com o Linux, no entanto, o programa executado apenas
por um segundo ou dois, depois que ele termina e voc ter seu prompt de volta. No
Enquanto isso, o sistema libera os dados para floppy: voc ainda precisa esperar um total de 50
segundos. Se voc remover o disquete neste momento, obviamente voc perder dados.

A remoo de dispositivos de bloco causado mudanas significativas para os nomes de dispositivos. Em mais velhos
verses do FreeBSD, o nome do dispositivo o nome do dispositivo de bloco, ea matria(Personagem) dispositivo tinha a letra r no incio do nome, tal como mostrado no exemplo
acima.
Vamos olhar com mais cuidado em como nomes BSD suas parties:

Como todos os outros dispositivos, o ns de dispositivos, as entradas que descrevem os dispositivos so


armazenado no diretrio / Dev. Ao contrrio tradicional UNIX e verses mais antigas do FreeBSD,
FreeBSD Release 5 inclui o sistema de arquivos do dispositivo ou devfs, o que cria o dispositivo
ns automaticamente, assim voc no precisa se preocupar em criar-los sozinho.

Em seguida, vem o nome do motorista. Como vimos, o FreeBSD tem drivers para IDE
e amigos (ad), discos SCSI (da) e disquetes (fd). Para discos SCSI, agora
ter o nome / Dev / da.
concepts.mm, v verso 4.21 (2003/04/02 06:37:12)

Layout de dados em disco

37

As verses originais do FreeBSD tinha a abreviatura wd para drives IDE. Esta abreviatura
surgiu porque o mais popular dos controladores MFM originais foram feitos por Western
Digital. Outros afirmam, porm, que uma abreviatura de'' Winchester disco.'' Discos SCSI
foram originalmente abbreviatedsd. O NameDA vem do padro CAM e curto para
acesso directo. BSD / OS, NetBSD e OpenBSD ainda usa os nomes antigos.

Em seguida, vem o nmero da unidade, geralmente um nico dgito. Por exemplo, a primeira SCSI
disco no sistema seria normalmente chamada / Dev/da0.
Geralmente, os nmeros so atribudos durante os testes de inicializao, mas voc pode reservar os nmeros para
Discos SCSI, se quiser. Isto impede a remoo de um nico disco de mudar o
nmeros de todas as unidades subseqentes. Consulte a pgina 574 para mais detalhes.

Em seguida, vem as informaes da partio. O chamado estrita nome de fatia especificado pela
adicionando a letra s (Por fatia) eo nmero fatia (1 a 4) para o nome do disco. BSD
sistemas de divisrias nome anexando as letras um a h ao nome do disco. Assim, o
primeira partio da primeira fatia do nosso disco acima (que normalmente seria um arquivo de raiz
sistema) ser chamado / Dev/da0s1a.
Algumas outras verses do BSD no tm o mesmo suporte para as fatias, de modo que eles usam um
terminologia mais simples para o nome da partio. Em vez de chamar o sistema de arquivos raiz
/ Dev/da0s1a, eles se referem a ele como / dev/da0a. FreeBSD suporta este mtodo como bem
ele chamado fatia compatibilidade de nomeao. A fatia compatibilidade simplesmente o primeiro
FreeBSD cortar encontrado no disco, e as parties nessa fatia tem dois diferentes
nomes, por exemplo / Dev/ad0s1a e / Dev/ad0a.

Divisria c uma exceo: por conveno, que representa todo o disco BSD (neste
caso, a fatia em que reside FreeBSD).

Alm disso, NetBSD partio reservas d para o disco inteiro, incluindo outras parties.
FreeBSD no atribui qualquer significado especial para particionar d.

A Figura 2-2 mostra uma disposio tpica de um sistema com um nico disco SCSI, partilhada entre
Microsoft e FreeBSD. Voc vai notar que a partio / Dev/da0s3c est faltando a partir do
FreeBSD fatia, uma vez que no uma separao real. Como a tabela de partio do BIOS do PC, o disco
rtulo contm as informaes necessrias para o FreeBSD para gerenciar a fatia FreeBSD, como
a localizao e os comprimentos das divisrias individuais. A inicializao usado para carregar a
kernel na memria. Ns vamos olhar para o processo de inicializao em mais detalhes no Captulo 29.

concepts.mm, v verso 4.21 (2003/04/02 06:37:12)

38

Captulo 2: Antes de instalar

Master Boot Record


Partition Table
Bootstrap
Fatia 1 - PC BIOS principal
/ Dev/da0s1

PC BIOS C: conduzir
PC BIOS D: conduzir / Dev/da0s5

Slice 2 - PC BIOS estendida


/ Dev/da0s2

PC BIOS E: conduzir / Dev/da0s6

Slice 3 - FreeBSD
/ Dev/da0s3

/ Dev/da0s3a: / sistema de arquivos


/ Dev/da0s3b: troca
/ Dev/da0s3d: no utilizado
/ Dev/da0s3e: / usr sistema de arquivos
/ Dev/da0s3f: no utilizado
/ Dev/da0s3g: no utilizado
/ Dev/da0s3h: no utilizado

Figura 2-2: A tabela de partio com o sistema de arquivos do FreeBSD


Tabela 2-1 fornece uma viso geral dos dispositivos FreeBSD define para este disco.
Tabela 2-1: Terminologia partio de disco
Nome Slice
/ Dev/da0s1
/ Dev/da0s2
/ Dev/da0s3
/ Dev/da0s5
/ Dev/da0s6
/ Dev/da0s3a
/ Dev/da0s3b
/ Dev/da0s3c
/ Dev/da0s3e
/ Dev/da0a
/ Dev/da0b
/ Dev/da0c
/ Dev/da0e

Uso
Primeira fatia (PC BIOS C: partio)
Segunda fatia (PC BIOS partio estendida)
Terceiro fatia (PC BIOS partio), FreeBSD
Primeira unidade de partio estendida PC BIOS (D :)
Segunda unidade na partio estendida PC BIOS (E :)
Terceiro fatia (PC BIOS partio), a partio um (Sistema de arquivos root)
Terceiro fatia (PC BIOS partio), a partio b (Espao de troca)
Terceiro fatia (PC BIOS partio), partio inteira
Terceiro fatia (PC BIOS partio), a partio e (Sistema de arquivos / usr)
Partio de compatibilidade, o sistema de arquivos raiz, o mesmo que
/ Dev/da0s1a
Partio de compatibilidade, a partio swap, mesmo que
/ Dev/da0s1b
Fatia BSD todo, mesmo que / Dev/da0s1c
Partio de compatibilidade, usr sistema de arquivos, mesmo que
/ Dev/da0s1e

concepts.mm, v verso 4.21 (2003/04/02 06:37:12)

Layout de dados em disco

39

Fazendo com que os sistemas de arquivos


Armado com este conhecimento, podemos agora continuar a tomar algumas decises sobre como
instalar nossos sistemas. Em primeiro lugar, preciso responder a algumas perguntas:

Queremos compartilhar este disco com qualquer outro sistema operacional?

Se assim for, ns temos dados sobre o disco que quer manter?

Se voc j tem outro sistema instalado no disco, melhor usar esse sistema de
ferramentas para manipular a tabela de partio. FreeBSD normalmente no tem dificuldade
com tabelas de parties criadas por outros sistemas, de modo que voc pode estar razoavelmente certo de que a
outro sistema vai entender o que ele deixou. Se o outro sistema a Microsoft, e voc
ter uma fatia que voc no precisa, utilize o MS-DOS FDISK programa para liberar o suficiente
espao para instalar o FreeBSD. Se voc no tem uma fatia de apagar, voc pode usar o FIPS
programa para criar um consulte o Captulo 5, Instalando o FreeBSD, pgina 52.
Se por algum motivo voc no pode usar o MS-DOS FDISK, por exemplo, porque voc est instalando
FreeBSD, por si s, FreeBSD tambm fornece um programa chamado fdisk que manipula o
tabela de parties. Normalmente voc invoc-lo indirectamente atravs do sysinstall programa consulte a pgina
63.

Limitaes de tamanho de disco


Capacidade de armazenamento em disco cresceu em vrias ordens de magnitude desde FreeBSD foi o primeiro
liberado. Como ele fez isso, uma srie de limites tornou-se evidente:

A primeira foi a BIOS Limite de 504 MB em discos IDE, imposta pela sua semelhana com
Discos ST-506. Discutimos isso na pgina 32. FreeBSD trabalha em torno desta questo,
usando um carregador que entende discos grandes, ento esse limite uma coisa do passado.

O limite seguinte foi o limite de 1 GB, o que afetou alguns adaptadores host SCSI mais velhos.
Embora discos SCSI sempre usar o endereamento LBA Internamente, o BIOS precisava
simular CHS endereamento para a Microsoft. BIOS iniciais foram limitados a 64 cabeas, 32
n seria um
setores e 1.024 faixas (64 32 1024 512 = 1 GB). Isso o
problema, a no ser que alguns antigos controladores Adaptec oferecer uma opo de compatibilidade 1 GB.
No us-lo: ele s necessrio para os sistemas que foram instalados com o velho mapeamento.

Depois disso, lgico que o prximo limite deve vir a 2 GB. Existem vrias
diferentes problemas aqui. O nico que afeta FreeBSD parece ser um bug no
alguns controladores IDE, o que no trabalham alm desse limite. Todos eles so, e
Controladores IDE no custa nada, por isso, se voc tem certeza que voc tem esse problema, voc pode
resolv-lo mediante a substituio do controlador. Certifique-se de obter um que suporta DMA.
Outros sistemas, incluindo vrias verses do UNIX System V, ter problemas com isso
limitar porque 231 o maior nmero que pode ser representado em um 32 bit
inteiro. FreeBSD no tem esta limitao, como o tamanho dos arquivos so representados em 64 bits
quantidades.

concepts.mm, v verso 4.21 (2003/04/02 06:37:12)

40

Captulo 2: Antes de instalar

s 4 GB, alguns controladores de IDE tm problemas porque converter isso em um CHS


mapeamento com 256 cabeas, que no funciona: o maior nmero 255. Novamente, se
voc tem certeza esta a causa dos problemas que voc pode ter um novo controlador pode
ajudar.

s 8 GB do sistema CHS funciona fora do vapor. No se pode descrever com mais de 1024
cilindros, 255 cabeas e 63 setores. Alm deste tamanho, voc deve usar LBA
dirigindo-se a sua BIOS suporta.

Voc esperaria mais problemas em 16 GB, mas na verdade a prxima limitao no vem
at 128 GB. devido s limitaes no plano inicial LBA, que s tinha
28 bits de endereo setor. O novo padro prolonga-se isto para 48 bits, o que deve ser
suficiente para os prximos anos. FreeBSD j usa o novo padro, de modo que este
limitao nunca foi um problema.

Nenhum desses problemas afetam diretamente FreeBSD. A inicializao do FreeBSD no usa mais
BIOS do sistema, por isso no est vinculada pelas restries do BIOS e do controlador. Se
voc usar o gestor de outro sistema operacional, no entanto, voc pode ter problemas. Se voc
tem a opo, use o endereamento LBA. Infelizmente, voc no pode fazer isso, se o disco j
contm software que usa endereamento CHS.
Outras coisas a considerar so:

Se voc tiver outro software j instalado no disco, e voc quer mant-lo, fazer
no alterar a geometria do disco. Se voc fizer isso, voc no ser mais capaz de executar o
outro software.

Use o endereamento LBA se seu hardware suporta.

Se tudo mais falhar, instale o Microsoft em uma pequena fatia no incio do disco. Isto cria um
tabela de parties vlida para a unidade, eo software de instalao entende. Uma vez
de ter iniciado o processo de instalao, a partio Microsoft cumpriu a sua
propsito, e voc pode exclu-lo novamente.

Se voc tem que usar CHS, e voc no tem nenhum outro software na unidade, utilize o
conduzir geometria especificada no prprio disco ou no manual, se voc tiver sorte o suficiente para
obter um manual com o disco. Muitos BIOS remapear a geometria da unidade, a fim de obter
Microsoft concorda em trabalhar com o disco, mas isso pode quebrar o mapeamento de disco FreeBSD.
Verifique se o editor de parties tem esses valores, e alter-las se necessrio.

Mostrar hardware
Durante anos, os usurios UNIX tm trabalhado com um nico modo de exibio de caracteres 80x25. Muitos
pessoas consideram esta extremamente antiquado, mas na verdade a flexibilidade do UNIX
sistema feito isso muito uma boa maneira de trabalhar. Ainda assim, no h dvida da vantagem de um
sistema que oferece a possibilidade de realizar vrias operaes ao mesmo tempo, e isso
Uma das vantagens particulares do UNIX. Mas voc precisa normalmente de um terminal para interagir
com cada tarefa. A melhor maneira de fazer isso com o X Window System. Voc tambm pode
quer usar um desktop, um conjunto de programas que oferecem funcionalidades comumente usados.
concepts.mm, v verso 4.21 (2003/04/02 06:37:12)

Mostrar hardware

41

Em muitos outros ambientes, o GUI eo display grfico so a mesma coisa, e em


alguns sistemas, nomeadamente da Microsoft, no h distino clara entre o operacional
sistema ea GUI. Em UNIX, h pelo menos quatro nveis de abstrao:

O kernel executado no computador.

Interfaces de X com o kernel e corre o display. Ele no exibe em si nada


exceto, possivelmente, um fundo de tela, por padro, um padro de cross-hatch cinza.

O gerenciador de janelas lhe d o controle sobre as janelas, como mover, redimensionar


e iconification (Muitas vezes chamado minimizando em outros sistemas). Ele fornece as janelas
com decoraes como quadros, botes e menus.

O ambiente de trabalho fornece aplicaes e formas de inici-los usados. Muitos


pessoas passar sem um desktop usando a funcionalidade de gerenciador de janelas.

Por que faz-lo desta maneira? Porque lhe d mais opes. Existem dezenas de janela
gerentes disponveis, e tambm vrios ambientes. Voc no est preso a um nico produto.
Isso tem seu lado negativo, porm: voc deve fazer a escolha, e assim a criao de X requer um
pouco mais de ateno do que a instalao do Microsoft.

O hardware
X funciona com praticamente qualquer hardware. Isso no significa que todo o hardware igual, claro.
Aqui esto algumas consideraes:

O teclado
X usa o teclado muito mais do que Microsoft. Certifique-se de obter uma boa.

O mouse
X prefere um mouse de trs botes, embora tenha provises para at cinco botes. Pode
apoiar os ratos mais novos com rolos e botes laterais, mas a maioria dos softwares no us-los.
Alguns mouses, como o mouse sem fio Logitech, requerer sequncias de indocumentados
permitir alguns botes (no boto polegar no caso do Logitech). X no suporta esta
boto.
Obter o melhor mouse que voc puder. Prefira um switch curto, luz. Ele obrigao ter pelo menos trs
botes. No aceite nenhum substituto. Consultar por um com um boto de fcil de usar meio.
Frequentemente os ratos com ambos um boto no meio e um rolo tornam difceis de usar o meio
boto: ou deslocada, muito pesado em ao, ou exige a presso sobre o rolo (e
assim, eventualmente, transformando-o). Todos estes provar ser um incmodo ao longo do tempo.
Camundongos mais velhos conectados via porta serial ou um carto especial ('' bus rato''). Hoje em dia
a maioria dos mouses so os chamados mouses PS / 2 e mouse USB esto se tornando mais popular.

concepts.mm, v verso 4.21 (2003/04/02 06:37:12)

42

Captulo 2: Antes de instalar

A placa de vdeo e monitor


X permite-lhe fazer muito mais em paralelo do que outros ambientes de janelas. Como
resultado, tela imobilirio est em um prmio. Use um monitor to grande quanto voc pode pagar, e como
uma alta resoluo de seu monitor pode suportar. Voc deve ser capaz de exibir uma resoluo
de 1600x1200 num monitor ", 1280x1024 em 17" do monitor 21, e em um 1024x768 14 "
monitorar. Qualidade premium 21 "monitores podem exibir 2048x1536. Se isso no for suficiente,
vamos olhar para vrias configuraes do monitor na pgina 523.

Hardware Laptop
Se voc tiver um laptop, voc no tem outra escolha. O ecr tem uma resoluo nativa que
voc no pode mudar. A maioria dos laptops exibir resolues mais baixas por interpolao, mas o resultado
parece muito pior do que a resoluo nativa. Telas de LCD olhar mais ntida do que CRT
laptops monitores, assim voc pode escolher resolues mais altas-modernos tm resolues de tela
de at 1600x1200.
Se voc estiver indo para usar seu laptop para apresentaes com projetores, certifique-se
encontrar um que pode exibir tanto na tela interna e tambm na sada externa em
Ao mesmo tempo, mantendo uma resoluo de tela de 1024x768: no muitos sobrecarga
projetores pode exibir em uma resoluo maior.

Compaq / Digital mquinas Alpha


FreeBSD tambm suporta computadores com base na Compaq (anteriormente Digital) AXP
processador, comumente chamado Alpha. Grande parte das informaes acima tambm se aplica
Alpha; excees notveis so:

Grande parte do hardware PC mencionado acima no foi fornecido com o Alpha. Este
vale principalmente para hardware mais antigo.

A BIOS do PC muito diferente do firmware do console Alpha. Veremos que


abaixo.

Particionamento de disco diferente. FreeBSD no suporta mltiplos sistemas operacionais


na plataforma Alpha.

Nesta seo, vamos dar uma olhada em alguns tpicos adicionais que se aplicam apenas ao Alpha.
Requer que o FreeBSD SRM consola de firmware, que usado pelo Tru64 (Anteriormente conhecido
como UNIX Digital ). Ele no funciona com o firmware ARC (s vezes chamado
AlphaBIOS) usado com Microsoft NT. O firmware SRM funciona a mquina de 64 bits
modo, o que necessrio para executar FreeBSD, enquanto o ARC firmware define o modo de 32 bits. Se
seu sistema est funcionando atualmente Tru64, voc deve ser capaz de usar o SRM existente
Console.
Os comandos do console SRM diferem de uma verso para outra. Os comandos
suportado pela sua verso esto descritas no manual de hardware que foi enviado com
seu sistema. O console ajudar comando lista todos os comandos de console suportados. Se o seu
concepts.mm, v verso 4.21 (2003/04/02 06:37:12)

Compaq / Digital mquinas Alpha

43

sistema foi configurado para inicializar automaticamente, voc deve digitar Ctrl-C interromper o arranque
processar e chegar ao prompt do console do SRM (>>>). Se o sistema no estiver configurado para inicializar
automaticamente, ele exibir o console SRM aps a realizao de verificaes do sistema.
Todas as verses do console SRM apoiar o conjunto e mostrar comandos, que operam em
variveis de ambiente que so armazenados em uma memria no-voltil. O mostrar listas de comandos
todas as variveis de ambiente, incluindo aqueles que so somente leitura.
SRM da Alpha exigente sobre qual hardware que suporta. Por exemplo, reconhece
NCR placas SCSI, mas ele no reconhece placas Adaptec. H relatos de alguns
Alphas no arrancar com determinadas placas de vdeo. O GENRICO configurao do kernel
(/ Usr / src / sys / alpha / conf / GENERIC) mostra que o kernel suporta, mas que no
significa que o SRM suporta todos os dispositivos. Alm disso, o suporte varia de SRM
uma mquina para a prxima, ento no h o perigo de que o que est descrito aqui no vai funcionar para
voc.
Outras diferenas para Alpha incluem:

O layout do disco para o SRM diferente do layout para Microsoft NT. SRM parece
para sua inicializao onde a Microsoft mantm sua tabela de partio. Isto significa que
No possvel compartilhar um disco entre FreeBSD e Microsoft em um Alpha.

A maioria das mquinas Alpha baseados em SRM no suportam drives IDE: voc est limitado a SCSI.

A distribuio do CD-ROM
A maneira mais fcil de instalar o FreeBSD de CD-ROM. Voc pode compr-los com desconto
com o formulrio de pedido na parte de trs do livro, ou voc pode baixar um Imagem ISO de
ftp.FreeBSD.org e criar seu prprio CD-ROM. H um certo nmero de CD-ROMs numa
FreeBSD de distribuio, mas apenas o mais importante o primeiro, o Instalao CDROM. Ele contm tudo que voc precisa para instalar o sistema em si. O outro CD-ROMs
conter pacotes principalmente instalveis. Verses individuais podem conter outros dados, como por exemplo um
cpia do repositrio de cdigo-fonte. Vamos dar uma olhada mais detalhada na instalao
CD-ROM aqui.

CD-ROM de instalao
O CD-ROM de instalao contm tudo que voc precisa para instalar o FreeBSD em seu
sistema. Ela fornece duas categorias de software instalvel:

O sistema operativo de base armazenado como compactado arquivos nos diretrios base,
boot, catpages, compat1x, compat20, compat21, compat3x, compat4x, des, dict, doc,
jogos, informaes, manpages e proflibs. Para facilitar o transporte de e para a instalao de
disquete, os arquivos foram divididos em pedaos de 1,44 MB. Por exemplo, a
set s necessrio nos arquivos base / base.?, em outras palavras, todos os arquivos cujos nomes
comear com base. e conter dois caracteres adicionais. Isso exclui especificamente a
arquivos base.inf e base.mtree, que no fazem parte do arquivo.

concepts.mm, v verso 4.21 (2003/04/02 06:37:12)

44

Captulo 2: Antes de instalar

O diretrio / Todos os pacotes contm portados, pacotes de software instalveis como gzipped
alcatro arquivos. Eles so projetados para ser instalado diretamente em um sistema em execuo, para que eles
No foram divididos em pedaos. Devido a restries de tamanho no CD-ROM, este
diretrio no contm todos os pacotes: os outros so em CD-ROMs adicionais.
packages / Latest contm as ltimas verses dos pacotes.
/ Todos os pacotes contm um grande subconjunto da coleo de ports. Para torn-lo mais fcil para
voc a encontrar o seu caminho em torno deles, links simblicos para pacotes apropriados foram
colocados nos diretrios archivers, astro, udio, pontos de referncia, biologia, cad, chins,
comunicadores, conversores, bases de dados, deskutils, devel, editores, emuladores, francs, ftp, jogos,
alemo, grficos, hebraico, irc, japons, java, coreano, lang, e-mail, matemtica, mbone, variado,
net, notcias, palma, PicoBSD, plan9, impresso, russo, cincia, segurana, conchas, sysutils,
modelos, textproc, ucraniano, vietnamita, www, x11, x11-relgios, x11, x11-fm-fontes,
X11-servidores x11-toolkits e x11-wm. No fique com a impresso de que estes so
diferentes pacotes, eles so realmente os ponteiros para os pacotes em Tudo. Voc vai encontrar um
lista dos pacotes atualmente disponveis no arquivo pacotes / index .
Vamos dar uma olhada na coleo de Ports em mais detalhes no Captulo 9.

Tabela 2-2 lista os arquivos tpicos no diretrio principal do CD-ROM de instalao.


Tabela 2-2: O CD-ROM de instalao
Arquivo
ERRATA.TXT

Contedo
A lista de alteraes de ltima hora. Leia este arquivo. Ela pode salvar
um monte de dores de cabea.

HARDWARE.TXT

A lista de hardware suportado.

INSTALL.TXT

Informaes sobre a instalao do FreeBSD.

LEIAME.TXT

O primeiro arquivo tradicional de ler. Ele descreve como utilizar o


outros arquivos.

RELNOTES.TXT

Solte notas.

base

Diretrio de instalao: a distribuio base do sistema.


Este o diretrio somente necessrio para a instalao. Ver
Captulo 5, Instalando o FreeBSD, para obter mais detalhes.

bota

Arquivos relacionados a inicializao, incluindo o kernel de instalao.

catpages

Pginas de manual pr-formatados. Consulte a pgina 13 para mais detalhes.

cdrom.inf

Arquivo legvel por mquina que descreve o contedo do CD-ROM para


o benefcio sysinstall.

compat1x

Diretrio contendo bibliotecas para manter a compatibilidade


com 1.X Lanamento do FreeBSD.

compat20

Diretrio contendo bibliotecas para manter a compatibilidade


com a verso 2.0 do FreeBSD.
concepts.mm, v verso 4.21 (2003/04/02 06:37:12)

A distribuio do CD-ROM

Arquivo
compat21

Contedo
Diretrio contendo bibliotecas para manter a compatibilidade
com a verso 2.1 do FreeBSD.

compat22

Diretrio contendo bibliotecas para manter a compatibilidade


com a Verso 2.2 do FreeBSD.

compat3x

Diretrio contendo bibliotecas para manter a compatibilidade


com a verso 3 do FreeBSD.

compat4x

Diretrio contendo bibliotecas para manter a compatibilidade


com Release 4 do FreeBSD.

crypto

Diretrio de instalao: software de criptografia.

dict

Diretrio de instalao: dicionrios.

doutor

Diretrio de instalao: documentao.

docbook.css

Folha de estilo para a documentao.

nomedeficheiro.txt A lista de todos os arquivos deste CD-ROM.


disquetes

Um diretrio contendo instalao de imagens de disco.

jogos

Diretrio de instalao: games.

Informaes

Diretrio de instalao: GNU Info documentos.

ncleo

O kernel de inicializao.

manpages

Um diretrio contendo as pginas do manual para a instalao.

pacotes

Um diretrio contendo verses instalveis dos Portos


Collection. Consulte a pgina 168.

portas

As fontes para a Coleo de Ports. Consulte o Captulo 9, O


Coleo de Ports, pgina 167.

proflibs

Um diretrio contendo bibliotecas perfilados, til para


identificar problemas de desempenho durante a programao.

src

Um diretrio contendo os arquivos de origem do sistema.

ferramentas

Um diretrio contendo ferramentas para preparar a instalao de


outro sistema operativo.

O . TXT arquivos tambm so fornecidos em formato HTML com um . HTM sufixo.


O contedo do CD-ROM ser quase certamente mudar de uma verso para outra.
Ler LEIAME.TXT para obter detalhes sobre as mudanas.

concepts.mm, v verso 4.21 (2003/04/02 06:37:12)

45

46

Captulo 2: Antes de instalar

Vivo CD-ROM File System


Embora o CD-ROM de instalao contm tudo que voc precisa para instalar o FreeBSD, o
formato no o que voc gostaria de lidar todos os dias. A distribuio pode incluir um Arquivo Vivo
Sistema CD-ROM, que resolve este problema: contm substancialmente os mesmos dados
armazenado no formato do sistema de arquivos da mesma forma que voc iria instal-lo em um disco rgido.
Voc pode acessar os arquivos diretamente a partir deste CD-ROM.

CVS Repository CD-ROM


Um dos discos pode tambm conter o'' CVS Repository.'' O repositrio o mestre
rvore fonte de todo o cdigo-fonte, incluindo todas as informaes de atualizao. Vamos dar uma olhada em mais
pormenor no captulo 31, Manter-se atualizado, pgina 581.

O Ports coleo de CD-ROMs


Uma parte importante do FreeBSD o Portas coleo, que inclui muitos mil
programas populares. A Coleo de Ports automatiza o processo de software portabilidade para
FreeBSD. A combinao de vrias ferramentas de programao j est disponvel na base
Instalao FreeBSD permite que voc simplesmente digitar fazer instalar um determinado pacote. O
mecanismo de portas faz o resto, ento voc precisa de espao em disco suficiente apenas para construir os portos
querem. Vamos dar uma olhada na coleo de Ports em mais detalhes no Captulo 9. Os arquivos so distribudos
ao longo de vrios CD-ROMs:

Voc encontrar o portas, as instrues para a construo dos pacotes, na instalao


CD-ROM.

As fontes de base para a coleo de ports preencher mais de um CD-ROM, mesmo que
restries de copyright significa que nem todas as fontes podem ser includos: alguns ficheiros de origem
distribudo gratuitamente na rede, mas no pode ser distribudo em CD-ROM.
No se preocupe com as fontes ausentes: se voc estiver conectado Internet, as portas
Coleo recupera automaticamente as fontes a partir de um servidor de Internet quando voc digita
fazer.

Voc vai encontrar o mais popular pacotes, os binrios pr-compilados dos portos, na
CD-ROM de instalao. Um pleno de distribuio contm uma srie de outros CD-ROMs com
a maioria dos pacotes restantes.

concepts.mm, v verso 4.21 (2003/04/02 06:37:12)

Neste captulo:
Tornar as coisas mais fceis
para si mesmo
FreeBSD em um disco
com espao livre
FreeBSD partilhada com
Microsoft
Configurando o XFree86

3
Instalao rpida

Nos captulos 4-6 vamos entrar em muitos detalhes sobre como instalar o sistema. Talvez isso
muito detalhe para voc. Se voc um usurio experiente UNIX, voc deve ser capaz de obter
com pelo menos significativamente leitura. Este captulo apresenta listas de verificao para alguns dos mais
os tipos usuais de instalao. Cada remete s descries detalhadas correspondentes
Os captulos 4 a 6.
Nas pginas seguintes, vamos olhar para a instalao mais simples, onde FreeBSD a nica
sistema no disco. A partir da pgina 49, vamos olhar para compartilhar o disco com a Microsoft,
e na pgina 50, veremos como instalar o XFree86. Voc pode achar que conveniente para
fotocpia estas pginas e para marc-los como voc ir junto.

Tornar as coisas mais fceis para si mesmo


provavelmente mais fcil de instalar FreeBSD do que qualquer outro sistema operacional do PC, incluindo
Produtos da Microsoft. Bem, na maioria das vezes, pelo menos. Algumas pessoas passam dias tentando
instalar o FreeBSD e, finalmente desistir. Isso acontece com os produtos da Microsoft, bem como, mas
infelizmente isso acontece com mais freqncia com FreeBSD.
Agora voc provavelmente est dizendo:'' Isso no faz sentido. Primeiro voc diz que mais fcil
instalar, em seguida, voc diz que mais provvel que no. Qual a verdadeira histria?''
Como voc poderia esperar, a histria real muito envolvido. No Captulo 2, Antes de instalar, eu
entrou em alguns dos antecedentes. Antes de comear, vamos olhar para o que voc pode fazer para
fazer a instalao mais fcil possvel:

quickinstall.mm, v v4.11 (2003/04/09 19:26:40)

47

48

Captulo 3: A instalao rpida

Use conhecido, hardware estabelecida. Novos produtos de hardware freqentemente tm undocuproblemas mentados. Voc pode ter certeza de que eles trabalham sob Microsoft, porque o
fabricante testou-los nesse ambiente. Com toda a probabilidade, ele no testou
los sob qualquer sabor de UNIX, e muito menos FreeBSD. Normalmente, os problemas no so
srio, ea equipe FreeBSD resolve-los muito rapidamente, mas se voc pegar o
hardware at o software est pronto, voc a cobaia.
No outro extremo da escala, voc pode ter mais problemas com hardware antigo tambm.
No to fcil de configurar, e hardware de idade no to bem suportado como mais recente
hardware.

Executar uma instalao padro. A maneira mais fcil de instalar o FreeBSD est iniciando
a partir de um CD-ROM e instalar em um disco rgido vazio a partir do CD-ROM. Se voc
proceder conforme discutido no Captulo 5, Instalando o FreeBSD, voc no deve ter qualquer
dificuldade.

Se voc precisa para compartilhar o seu disco rgido com outro sistema operacional, mais fcil de instalar
ambos os sistemas a partir do zero. Se voc j tem um sistema Microsoft no disco,
voc pode usar FIPS (Ver pgina 52) para dar espao para ele, mas isso requer mais cuidado.

Se voc tiver problemas, RTFM.1 Eu fui a um monte de problemas para antecipar os problemas
voc pode encontrar, e h uma boa chance de que voc vai encontrar algo aqui para
ajudar.

Se voc fizer tudo isso, e ainda no funciona, consulte a pgina 17 para maneiras de obter externo
ajudar.

FreeBSD em um disco com espao livre


Este procedimento aplica-se voc pode instalar o FreeBSD sem ter que abrir espao em
disco. Execute as seguintes etapas:
Boot from CD-ROM. A maioria dos sistemas suportam a inicializao a partir de CD-ROM, mas se o seu
no:

Criar dois disquetes de inicializao, copiando as imagens / Cdrom / disquetes / kern.flp e


/ Cdrom / disquetes / mfsroot.flp de 3 "disquetes. Consulte a pgina 89 para mais detalhes.

Insira o CD-ROM na unidade antes de arrancar.


Inicializar a partir do kern.flp disquete. Aps o carregamento, insira o mfsroot.flp disquete quando
o sistema pede-lhe para faz-lo, em seguida, pressione Enter.
Se voc tem um disquete maior, como 2,88 MB ou LS-120, voc pode copiar a imagem
/ Cdrom / disquetes / boot.flp a ele e iniciar a partir dele. Neste caso, voc no precisa mudar
discos.

1. Hackerspeak para'' Leia o manual''-o F geralmente silencioso.


quickinstall.mm, v v4.11 (2003/04/09 19:26:40)

FreeBSD em um disco com espao livre

49

Selecione o Personalizado instalao. Consulte a pgina 60.


O que voc faz no editor de parties depende se voc quer compartilhar a unidade
com outro sistema operacional ou no:

Se voc quiser usar o carro apenas para FreeBSD, exclua todas as fatias existentes e
alocar uma nica fatia FreeBSD, que ocupa todo o disco. Ao sair do
editor de parties, selecione o Padro MBR. Consulte a pgina 66.

Se voc quiser compartilhar o disco com outros sistemas, apagar qualquer fatias indesejadas e
us-los para FreeBSD. Ao sair do editor de parties, selecione o BootMgr
MBR. Consulte a pgina 66.

No editor de etiqueta de disco, exclua todas as parties UNIX existentes. Criar os sistemas de arquivos
manualmente. Se voc no tem qualquer layout favorito, crie um sistema de arquivos raiz com 4
GB, uma partio swap com pelo menos 512 MB (certifique-se que pelo menos 1 MB maior do que
o mximo de memria que voc pretende instalar em seu sistema). Alocar um / Home arquivo
sistema to grande quanto voc quiser, contanto que ele pode caber em uma nica fita quando o backup. Se
voc tem algum espao adicional, deixe-o vazio, a menos que voc saiba o que usar para isso.
Consulte a pgina 68 para a lgica desta abordagem, o que no o que sysinstall
recomenda.
Instalar o sistema completo, incluindo X e da Coleo de Ports. Isto exige
cerca de 1 GB de espao em disco. Consulte a pgina 75, se voc quiser limitar.
Selecione CD-ROM como mdia de instalao. Consulte a pgina 76.
D a confirmao final. O sistema vai ser instalado. Consulte a pgina 77.
Aps a instalao, configurar pelo menos um ID de usurio para si mesmo. Consulte a pgina 144.

FreeBSD compartilhado com Microsoft


Se voc tiver um disco com Microsoft instalado em apenas uma parte do disco, e voc no quer
alterar o layout da partio, voc pode proceder como nas instrues acima. Isso muito
incomum, porm: normalmente Microsoft leva o disco inteiro, e difcil persuadi-lo
contrrio. Para instalar o FreeBSD em um disco que atualmente contm um nico Microsoft
partio ocupando todo o disco, passar pelas seguintes etapas:
Faa um backup! No h qualquer possibilidade de apagar os dados, e no h
absolutamente nenhuma razo para que voc deve assumir o risco.
Se voc tiver uma mquina antiga com um disco IDE com mais de 504 MB, voc pode executar em
problemas. Consulte a pgina 32 para mais detalhes.
Bota Microsoft e reparticionar o disco com FIPS. Consulte a pgina 52.
Insira o CD-ROM na unidade antes de arrancar.

quickinstall.mm, v v4.11 (2003/04/09 19:26:40)

50

Captulo 3: A instalao rpida

Desligue a mquina e reiniciar a partir do CD-ROM FreeBSD. Se voc tiver que


inicializar a partir do disquete, consulte a pgina 48 para mais detalhes.
Selecione o Personalizado instalao.
No editor de parties, apague apenas a segunda partio primria Microsoft. O primeiro
partio primria Microsoft contm os dados da Microsoft, e se houver um prolongado
Microsoft partio, ele tambm ir conter seus dados da Microsoft.
Criar uma fatia FreeBSD no espao que foi libertada. Consulte a pgina 63.
Ao sair do editor de parties, selecione o BootMgr MBR. Consulte a pgina 66.
No editor de etiqueta de disco, exclua todas as parties UNIX existentes. Criar os sistemas de arquivos
manualmente. Se voc no tem qualquer layout favorito, crie um sistema de arquivos raiz com 4
GB, uma partio swap com pelo menos 512 MB (certifique-se que pelo menos 1 MB maior do que
o mximo de memria que voc pretende instalar em seu sistema). Alocar um / Home arquivo
sistema to grande quanto voc quiser, contanto que ele pode caber em uma nica fita quando o backup. Se
voc tem algum espao adicional, deixe-o vazio, a menos que voc saiba o que usar para isso.
Consulte a pgina 68 para a lgica desta abordagem, o que no o que sysinstall
recomenda.
Antes de deixar o editor rtulo de disco, selecione tambm os pontos de montagem para as parties DOS
se voc pretende mont-los no FreeBSD. Consulte a pgina 74.
Instalar o sistema completo, incluindo X e da Coleo de Ports. Isto exige
cerca de 1 GB de espao em disco. Consulte a pgina 75, se voc quiser limitar.
Selecione CD-ROM como mdia de instalao. Consulte a pgina 76.
D a confirmao final. O sistema vai ser instalado. Consulte a pgina 77.
Aps a instalao, configurar pelo menos um ID de usurio para si mesmo. Consulte a pgina 144.

Configurando o XFree86
Voc pode configurar o XFree86 durante a instalao ou aps a reinicializao.
Verifique se o seu mouse est conectado ao sistema no momento da inicializao. Dependendo do
hardware, se voc conect-lo mais tarde, ele no pode ser reconhecido.
Se voc j tiver reiniciado a mquina, efetue login como raiz e reinicie sysinstall.
Selecione o sysinstall Configurao menu XFree86 e depois xf86cfg, e
siga as instrues. Consulte a pgina 102 para mais detalhes.
Selecione o rea de Trabalho menu e instalar o gerenciador de janelas de sua escolha. Consulte a pgina
108 para uma discusso mais aprofundada.

quickinstall.mm, v v4.11 (2003/04/09 19:26:40)

Neste captulo:
Discos separados
Compartilhando um disco
Compartilhando com Linux ou
outro BSD
Repartitioning com
FIPS

4
Shared OS
Instalao

Em muitos casos, voc no vai querer instalar o FreeBSD no sistema por si s: voc pode precisar
usar outros sistemas operativos bem. Neste captulo, vamos olhar para o que voc precisa fazer
a preparar-se para uma instalao deste tipo. Se voc est apenas executando FreeBSD na mquina, voc
No precisa ler este captulo, e voc pode passar para o Captulo 5, Instalando o FreeBSD.

Antes de iniciar a instalao, leia este captulo com ateno.


fcil cometer um erro, e um dos resultados mais freqentes
de erros a perda total de todos os dados no disco rgido.
Atualmente, apenas o ia32 (Intel) port do FreeBSD capaz de compartilhar com os outros
sistemas operacionais. Vamos nos concentrar em como compartilhar o seu sistema com a Microsoft,
porque isso tanto mais difcil ea mais comum, mas a maior parte deste captulo
aplica-se a outros sistemas operacionais tambm. Voc pode querer referir-se discusso de
Layouts de disco da Microsoft e FreeBSD na pgina 34.

Discos separados
A primeira pergunta : voc precisa compartilhar um disco entre FreeBSD e outro
sistema operacional? muito mais fcil se voc no tem que. Nesta seo, veremos
o que voc precisa fazer.
Muitos sistemas operacionais s ir arrancar a partir do primeiro disco identificado pela BIOS, geralmente
chamado C: disco em deferncia a Microsoft. FreeBSD no tem esse problema, de modo que o
shareinstall.mm, v v4.11 (2003/04/02 06:38:41)

51

Discos separados

52

coisa mais fcil instalar o FreeBSD em todo o segundo disco. Restries BIOS normalmente
tornar difcil para arrancar a partir de qualquer, mas os dois primeiros discos.
Neste caso, voc realmente no precisa fazer nada de especial, embora seja sempre uma boa idia
para fazer backup de seus dados antes. Instalar o FreeBSD no segundo disco e escolher o Bota
Gerente opo no editor de parties (pgina 64). Este, ento, dar-lhe a escolha de
arranque a partir do primeiro ou segundo disco. Note que voc no deve alterar a ordem dos discos
depois de uma instalao deste tipo, se voc fizer isso, o sistema no ser capaz de encontrar os seus sistemas de arquivos
aps a inicializao.

Compartilhando um disco
Se voc pretende compartilhar um disco entre FreeBSD e outro sistema operacional, o primeiro
pergunta : h espao suficiente no disco para o FreeBSD? Quanto voc precisa
Depende do que voc quer fazer com o FreeBSD, claro, mas por uma questo de exemplo
vamos dar 120 MB como um mnimo absoluto. Na seo seguinte, vamos considerar
o que fazer se voc precisa mudar suas parties. Se voc j tem espao suficiente para uma
Partio FreeBSD (por exemplo, se voc acabou de instalar Microsoft especificamente para
compartilhando com FreeBSD, e, portanto, no ter preenchido o disco), continue lendo na pgina 66.

Compartilhando com Linux ou outro BSD


Compartilhamento com outros sistemas operacionais livres relativamente simples. Voc ainda precisa ter
espao para o FreeBSD, claro, e ao contrrio da Microsoft, no h ferramentas para encolher
Linux ou BSD sistemas de arquivos: voc vai ter que remov-los ou recri-los. Voc pode encontrar
algumas informaes sobre a partilha com Linux no mini-Howto
em
http://www.linux.org/docs/ldp/howto/mini/Linux+FreeBSD.html.
NetBSD e OpenBSD sistemas de arquivos e fatias so muito semelhantes ao seu FreeBSD
homlogos. Eles no so idnticos, no entanto, e voc pode achar que um dos sistemas
reconhece a partio de outro sistema e reclama sobre isso, porque no muito
direita. Por exemplo, tem uma NetBSD d partio que pode ir para fora do limite do
slice. FreeBSD no permite isso, ento voc receber uma mensagem de erro inofensiva.

Repartitioning com FIPS


Normalmente, se voc estiver executando o Microsoft em sua mquina, ele ir ocupar todo o
disco. Se voc precisar de todo este espao, claro, no h como instalar outro operacional
sistema assim. Freqentemente, porm, voc vai achar que voc tem espao livre suficiente na
partio. Infelizmente, isso no onde voc quer: voc quer o espao em um novo
partio. H uma srie de maneiras de fazer isso:

shareinstall.mm, v v4.11 (2003/04/02 06:38:41)

53

Captulo 4: Instalao OS Shared

possvel reinstalar o software. Esta abordagem comum no mundo da Microsoft, mas


Usurios do FreeBSD tentar evit-lo.

Voc pode usar FIPS para diminuir uma partio Microsoft, deixando espao para o FreeBSD. FIPS
um utilitrio de domnio pblico, e est includo no CD-ROM do FreeBSD.

Se voc no pode usar FIPS, use um utilitrio comercial como PartitionMagic. Isto no
includo no CD-ROMs, e no vamos discutir mais o assunto.

No restante da seo, veremos como encolher uma partio com FIPS. Se voc fizer isso
com PartitionMagic, os detalhes so diferentes, mas os princpios so os mesmos. Em
nomeadamente:

Antes reparticionar seu disco, faa um backup. Voc pode disparar


no prprio p com este mtodo, eo resultado ser quase
invariavelmente haver perda de dados.
Se voc estiver executando o Microsoft em seu sistema por um longo perodo de tempo, os dados da
partio sero espalhados por todo o partio. Se voc acabou de truncar a partio, voc vai
perder uma grande quantidade de dados, portanto, voc primeiro precisa mover todos os dados para o incio da partio.
Faa isso com o utilitrio de desfragmentao Microsoft. Antes de prosseguir, considere alguns
dicas:

A nova partio Microsoft precisa ser grande o suficiente para manter no s os dados atuais,
mas tambm qualquer coisa que voc vai querer colocar nele no futuro. Se voc faz exatamente o
tamanho atual dos dados, ele ser efetivamente completo, e voc no vai ser capaz de escrever
nada com ele.

A segunda partio tambm uma partio da Microsoft. Para instalar o FreeBSD nele, voc precisa
para convert-lo em uma partio FreeBSD.

FIPS pode resultar em problemas de configurao com a sua mquina Microsoft. Desde que
adiciona uma partio, as parties atribudas automaticamente a seguir ter uma diferente
letra de unidade. Em particular, isso poderia significar que a unidade de CD-ROM vai'' passar''.
Depois de excluir a segunda partio Microsoft e transform-lo em um FreeBSD
partio, ele ir mover'''' de volta novamente.

Para mais informaes, leia o FIPS documentao / Cdrom / ferramentas / fips.doc. Em


particular, observar essas limitaes:

FIPS s funciona com o BIOS do disco rgido que usam interrupo 0x13 de baixo nvel difcil
acesso ao disco. Esta no geralmente um problema.

FIPS no dividir parties com gorduras de 12 bits, que foram utilizados por verses mais antigas do
Microsoft. Estes so menos de 10 MB de tamanho e, portanto, pequenas demais para valer a pena dividir.

FIPS divide apenas parties Microsoft. A tabela de partio eo setor de inicializao deve
conformidade com o MS-DOS 3.0 + ou convenes do Windows 95. Este marcada pela
indicador do sistema byte na tabela de partio, que deve ter o valor 4 (setor 16 bit
nmero) ou 6 (nmero do setor 32 bits). Em particular, ser no diviso Linux ou Windows
2000 e parties posteriores.

shareinstall.mm, v v4.11 (2003/04/02 06:38:41)

Repartitioning com FIPS

54

FIPS ainda no funciona em parties Microsoft prolongados.

FIPS no vai reduzir a partio original para um tamanho inferior a 4085 clusters
porque isso implicaria reescrever o bit FAT 16 para um pouco FAT 12.

FIPS precisa de uma entrada de partio livre. No vai funcionar se voc j tem quatro parties.

Repartitioning-um exemplo
Nesta seo, ns vamos passar a mecnica de reparticionar um disco. Vamos comear com um
disco que contm um sistema nico, completo Microsoft.
Primeiro, execute o utilitrio de verificao de erro Microsoft sobre a partio que voc deseja dividir. Certificar-se
no h aglomerados'''' mortas permanecem no disco.
Em seguida, preparar um disquete de boot. Quando voc comear FIPS, voc vai ser dada a oportunidade
escrever cpias de backup de sua raiz e arrancar setor para um arquivo em disco R:. Estes sero
chamado ROOTBOOT.00x, onde x representa um algarismo entre 0 a 9. Se algo der errado
durante o uso FIPS, voc pode restaurar a configurao original de inicializao a partir do disquete
e funcionando RESTORRB.
Se voc usar FIPS mais de uma vez (o que no normalmente necessrio, mas pode acontecer), o disquete
conter mais de um ROOTBOOT arquivo. RESTORRB permite que voc escolha qual configurao
arquivo para restaurar. O arquivo RESTORRB.000 contm sua configurao original. Tente no confundir
as verses.

Antes de comear FIPS voc obrigao desfragmentar o disco para garantir que o espao a ser usado
para a nova partio gratuito. Se voc estiver usando programas como o IMAGEM ou MIRROR, nota que
que armazenar um arquivo de sistema oculto com um ponteiro para seus arquivos espelho no ltimo setor da
disco rgido. Voc obrigao excluir esse arquivo antes de usar FIPS. Ele vai ser recriada a prxima vez
executar MIRROR. Para apag-lo, no diretrio raiz, digite:
C \:> atri-r-s-h image.idx
C \:> atri-r-s-h mirorsav.fil

para IMAGE
para MIRROR

Em seguida, exclua o arquivo.


Se FIPS no oferece espao em disco, tanto para a criao da nova partio como voc espera,
isto pode significar que:

Voc ainda tem muitos dados na partio restante. Considere fazer o novo
partio menor ou excluso de alguns dos dados. Se voc apagar os dados, voc deve
desfragmentar e executar FIPS novamente.

H arquivos ocultos no espao da nova partio que no foram movidos por


o programa de desfragmentao. Certifique-se de que o programa a que pertencem. Se um arquivo um
arquivo de troca de algum programa (por exemplo NDOS), possvel que possa ser seguramente
suprimido (e ser recriada automaticamente depois, quando surge a necessidade). Veja o seu
manual para obter detalhes.

shareinstall.mm, v v4.11 (2003/04/02 06:38:41)

55

Captulo 4: Instalao OS Shared

Se o arquivo pertence a algum tipo de proteo contra cpia, ser necessrio desinstalar o programa para
que pertence e reinstal-lo aps reparticionamento.

Se voc estiver executando verses anteriores do MS-DOS (antes 5,0), ou


outro sistema operacional, como o OS / 2, ou voc est usando programas como o Stacker, SuperStor, ou Doublespace, leia o FIPS
documentao para outros possveis problemas.
Execuo FIPS
Depois de desfragmentar sua partio Microsoft, voc pode executar FIPS:
C: \> D:
D: \> cd \ tools
D: \ tools \> FIPS
... um monte de informaes sobre direitos autorais
omitido
Pressione qualquer tecla
Qual a unidade (1 = 0x80 / 2 = 0x81)?

mude para CD-ROM


certificar-se de que voc est no diretrio de ferramentas
e iniciar o programa FIPS
fazer o que o computador diz

A mensagem Qual a unidade Pode parecer confuso. Refere-se a BIOS interno numerao.
No se preocupe com isso: se voc deseja particionar a primeira unidade fsica no sistema (C :)
entrar 1, caso contrrio, digite 2. Como o BIOS, FIPS lida apenas dois discos rgidos.
Se voc comear FIPS no Windows, ele vai reclamar e dizer-lhe para iniciar a partir de um disquete
disco. Ele no vai impedi-lo de continuar, mas uma m idia para faz-lo.
Em seguida, FIPS l o setor de raiz do disco rgido e exibe a tabela de partio:
| |
Comece | | End
Parte |. Inicializvel | Cabea Cyl. Sector
----- + -------- + ---------------- + -----1 | sim |
1 0 1 |
0Ch | 239
2 | no | 0
0 0 |
00h |
3 | No | 0
0 0 |
00h |
4 | no | 0
0 0 |
00h |

| Incio | Nmero de |
| Sistema | Cabea Cyl. Setor | Setor | Setores | MB
+ ----------- ----- + -------- + --------- + ---2047
63 | 63 | 40083057 | 19571
0
0 0 |
0 |
0 |
0
0
0 0 |
0 |
0 |
0
0
0 0 |
0 |
0 |
0

Isso mostra que somente a primeira partio ocupado, que inicializvel, e que ocupa
todo o disco (19.571 MB, de cilindro 0, cabea 1, Setor 1 a Cylinder 2047, Chefe
238, Setor 63). Ele tambm afirma que isso faz 40083057 setores. No faz: o cilindro
Nmero foi truncado, e FIPS reclama uma inconsistncia tabela de parties,
que ele corrige. Depois disso, tem-se:
| |
Comece | | End
Parte |. Inicializvel | Cabea Cyl. Sector
----- + -------- + ---------------- + -----1 | sim |
1 0 1 |
0Ch | 239
2 | no | 0
0 0 |
00h |
3 | No | 0
0 0 |
00h |
4 | no | 0
0 0 |
00h |

| Incio | Nmero de |
| Sistema | Cabea Cyl. Setor | Setor | Setores | MB
+ ----------- ----- + -------- + --------- + ---2650
63 | 63 | 40083057 | 19571
0
0 0 |
0 |
0 |
0
0
0 0 |
0 |
0 |
0
0
0 0 |
0 |
0 |
0

No se preocupe com o'' arranque'' bandeira negcio aqui: ns com isso no FreeBSD
instalao. Em primeiro lugar, FIPS faz alguma verificao de erros e, em seguida, l e mostra o boot
setor da partio:
shareinstall.mm, v v4.11 (2003/04/02 06:38:41)

Repartitioning com FIPS


Verificando o setor de boot ... Ok
Pressione qualquer tecla
Bytes por setor: 512
Setores por cluster: 32
Setores reservados: 32
Nmero de FATs: 2
Nmero de entradas RootDirectory: 0
Nmero de setores (short): 0
Descritor de mdia byte: f8h
Setores por FAT: 9784
Setores por trilha: 63
Cabeas da unidade: 240
Setores ocultos: 63
Nmero de setores (longo): 40083057
Nmero da unidade fsica: 80h
Assinatura: 29h

56
fazer o que diz

Aps nova verificao, FIPS pergunta se voc quer fazer um disquete de backup. Digite o seu
disquete formatado na unidade A: e fazer o backup. Em seguida, voc v:
Digite comear cilindro para nova partio (35-2650):
Use as teclas do cursor para escolher o cilindro, <enter> para continuar
Partio antiga
Cilindro nova partio
258,4 MB
35 19313,4 MB

Use o Cursor Esquerda e Direita Cursor teclas para ajustar o nmero de cilindros em que a
nova partio comea. Voc tambm pode usar as teclas Cursor Up e Cursor para baixo para alterar
em intervalos de dez cilindros. FIPS atualiza a linha de fundo do display para mostrar a nova
valores selecionados. Inicialmente, FIPS escolhe o menor possvel partio da Microsoft, assim
inicialmente s pode aumentar o tamanho da partio antiga (com a Direita Cursor key).
Quando voc est feliz com o tamanho, prima Entrar para passar para a prxima etapa.

Tenha certeza que voc est muito feliz antes de continuar. Se voc fizer o
primeira partio muito pequena, no h nenhuma maneira de tornar maior
novamente.
Por outro lado, se voc torn-lo muito grande, voc pode dividi-lo
novamente e, em seguida, usar fdisk ou MS-DOS FDISK para remover o
parties suprfluo.
Neste exemplo, ns escolhemos as parties de igual tamanho:
Partio antiga
Cilindro nova partio
251,5 MB
511 251,5 MB
(Pressionado Enter)
| |
Comece | | End
| Incio | Nmero de |
Parte |. Inicializvel | Cabea Cyl. Sector | Sistema | Cabea Cyl. Setor | Setor | Setores | MB
----- + -------- + ---------------- + ------ + ----------- ----- + -------- + --------- + ---1 | sim |
0 0 1 |
06h | 15 511
63 | 0 |
515088 | 251
2 | no | 0
512 1 |
06h | 15 63 1023 |
0 | 515088 | 251
3 | No | 0
0 0 |
00h |
0
0 0 |
0 |
0 |
0
4 | no | 0
0 0 |
00h |
0
0 0 |
0 |
0 |
0
Voc quer continuar ou reeditar a tabela de partio (c / r)? c

Para garantir que a partio reconhecida, reinicie imediatamente. Certifique-se de desativar todos
programas que gravam o disco em CONFIG.SYS e AUTOEXEC.BAT antes
reinicializao. Pode ser mais fcil para renomear os arquivos ou para arrancar a partir de disquete. Tenha especial
o cuidado de desativar programas como o MIRROR e Imagem, que pode ficar confuso se a
shareinstall.mm, v v4.11 (2003/04/02 06:38:41)

57

Captulo 4: Instalao OS Shared

particionamento no do seu agrado. Depois de reiniciar, use CHKDSK ou Norton Disk Doctor
para garantir que a primeira partio OK. Se voc no encontrar algum erro, voc pode reiniciar agora
com a sua normalidade CONFIG.SYS e AUTOEXEC.BAT. Iniciar alguns programas e fazer
certeza que voc ainda pode ler seus dados.
Depois disso, voc tem duas parties Microsoft vlidos em seu disco. Veremos o que fazer
com eles no prximo captulo. As diferenas especficas de uma instalao dedicada so em
pgina 66, mas voc vai precisar para comear a partir do incio do captulo para fazer a instalao.

shareinstall.mm, v v4.11 (2003/04/02 06:38:41)

Neste captulo:
Iniciar a partir de CDROM
Instalao na Intel
arquitetura i386
Iniciando a sysinstall
Definir instalao
opes
Particionamento do disco
Definio de sistemas de
arquivos
Selecionando
distribuies
Selecionando o
mdia de instalao
Realizar o
instalao
Instalando em um Alpha
sistema
Atualizando um velho
verso do FreeBSD
Como desinstalar
FreeBSD
Se as coisas do errado
Alternativa
mtodos de instalao

5
Instalando o FreeBSD

Nos captulos anteriores, ns olhamos se preparando para instalar o FreeBSD. Neste captulo,
vamos, finalmente, faz-lo. Se voc tiver problemas, vou encaminh-lo de volta para a pgina do Captulo 2
que discute o tema. Se voc quiser instalar o FreeBSD no mesmo disco como Microsoft
ou outro sistema operacional, voc j deve ter lido o Captulo 4, Shared OS
Instalao.
A discusso a seguir se refere principalmente instalao na arquitetura i386. Ver
pgina 78 para as diferenas na instalao no AXP ('' Alpha'') do processador.

Instalao na arquitetura Intel i386


Para instalar o FreeBSD necessrio o software de uma forma que o software de instalao
entende. Voc tambm pode precisar de um disquete de boot. Hoje em dia voc vai quase que invariavelmente
instalar a partir de CD-ROM, ento vamos supor que mdio. Na pgina 85, vamos olhar para alguns
alternativas: instalao de disquete ou atravs da rede.
O primeiro passo para a instalao do FreeBSD iniciar uma verso mnima do sistema operativo.
A maneira mais simples iniciar diretamente a partir do CD-ROM de instalao. Se o seu sistema
no suporta este tipo de bota, bota de disquete. Consulte a pgina 85 para mais detalhes.
A descrio neste captulo baseado em uma instalao de vida real em uma mquina real.
Quando voc instalar o FreeBSD em sua mquina, uma srie de coisas ser diferente,
install.mm, v verso 4.21 (2003/04/02 06:39:30)

59

Instalao na arquitetura Intel i386

60

dependendo do hardware que voc est correndo, do jeito que voc est instalando o software eo
lanamento do FreeBSD que voc est instalando. No entanto, voc deve ser capaz de reconhecer o que
est acontecendo.
Iniciar a partir de CD-ROM principalmente uma questo de configurar o BIOS do sistema e, possivelmente,
o SCSI BIOS. Normalmente, voc executar um dos seguintes procedimentos:

Se voc est inicializando atravs de um CD-ROM IDE, voc entra em seu sistema de configurao do BIOS rotinas
e definir o Seqncia de inicializao parmetro para selecionar CD-ROM iniciar antes do disco rgido
inicializao e, possivelmente, tambm frente do disquete de inicializao. Uma seqncia tpica pode ser
CDROM, C, A.

Na maioria das mquinas, se est a arrancar a partir de um CD-ROM SCSI, voc tambm precisa de um host
adaptador que suporte CD-ROM de inicializao. Configure o BIOS do sistema para arrancar no
seqncia, digamos, SCSI, A, C. Em adaptadores de host tpicos (como o Adaptec 2940
srie), voc configura o adaptador para permitir CD-ROM boot, e definir o ID da bota
dispositivo para o ID da unidade de CD-ROM.

Essas configuraes no so, provavelmente, o que voc deseja usar para a operao normal. Se voc deixar
as definies como esta, e no um CD-ROM inicializvel na unidade de CD-ROM, ele sempre
botas desse CD-ROM em vez do disco rgido. Aps a instalao, altere o
parmetros de volta para arrancar a partir do disco rgido antes de CD-ROM. Ver o seu sistema
documentao para mais detalhes.

Iniciando a sysinstall
O prprio processo de inicializao muito semelhante ao processo de inicializao normal descrito na pgina 524.
Depois de terminar, porm, voc colocado no sysinstall menu principal.

Figura 5-1: menu de instalao principal


install.mm, v verso 4.21 (2003/04/02 06:39:30)

61

Captulo 5: Instalando o FreeBSD

A Figura 5-1 mostra o principal sysinstall menu. sysinstall inclui ajuda on-line em todas as fases.
Basta pressionar F1 e voc vai ter a ajuda adequada. Alm disso, se voc no esteve aqui antes,
o Doutor Menu d-lhe uma grande parte da informao adequada do manual.

Os tipos de instalao
Para comear, selecione uma das Padro, expresso ou Personalizado. Os nomes implicam que o
Padro instalao o melhor caminho a percorrer, a Expresso instalao para as pessoas de uma
apressar, e Personalizado instalao para quando voc quiser especificar exatamente o que deve ser feito.
Na verdade, os nomes so um pouco enganador. No h realmente muita diferena
entre as trs formas de instalao. Todos eles executam os mesmos passos:

Possivelmente configurar as opes.

Configure as parties do disco, que discutiremos na prxima seo.

Criar sistemas de arquivos e espao de troca dentro de uma fatia FreeBSD, que comeam na pgina
67.

Escolha o que voc quer instalar, o que discutimos na pgina 75.

Na verdade, instalar o software. Vamos tratar isso na pgina 77.

Escolha onde voc deseja instal-lo. Ns vamos olhar para isso na pgina 76.

Olhamos para parties de disco e sistemas de arquivos na pgina 34. Ns vamos olhar para os outros pontos
quando chegarmos a eles.
Ento, qual a diferena entre os tipos de instalao?

A instalao padro leva voc por essas etapas em seqncia. Entre cada
etapa, voc tem uma janela pop-up que lhe diz o que vai acontecer a seguir.

A instalao Expressa tambm leva voc por essas etapas em seqncia. A principal
diferena que voc no fique a janela pop-up dizendo que o que vai
acontecer a seguir. Isso pode economizar um pouco de tempo. Se voc deseja que as informaes, similar
informaes esto disponveis com a tecla F1.

A instalao personalizada retorna para o menu principal, depois de cada etapa. Cabe a voc
para selecionar a prxima etapa. Voc tambm pode selecionar uma outra etapa, ou voltar para a anterior.
Como a instalao Express, voc no tem a janela de informaes pop-up, mas voc
pode obter mais informaes com a tecla F1.

O grande problema com as instalaes Standard e Express que eles no deixam voc de volta
up: se voc passar um passo especfico e descobrir que voc quer mudar alguma coisa, voc tem que
abortar a instalao e comear de novo. Com a instalao personalizada, voc pode simplesmente ir
trs e mud-lo. Como resultado, eu recomendo a instalao personalizada. No seguinte
discusso, voc no vai ver muita diferena: os menus so os mesmos para todos os trs
formas de instalao.

install.mm, v verso 4.21 (2003/04/02 06:39:30)

Iniciando a sysinstall

62

Figura 5-2: As opes de instalao personalizada

Definir as opes de instalao


O primeiro item do menu para definir as opes de instalao. No h provavelmente muito
voc vai querer mudar. Sobre a nica coisa de interesse pode ser o editor CE, que uma
compromisso entre um editor simples para iniciantes e editores mais complicadas, como vi.
Se voc est planejando para editar nada durante a instalao, por exemplo, o arquivo
/ Etc / exportaes, que ns vamos olhar na pgina 560, voc pode preferir definir um editor com o qual
voc est familiarizado. Seleccionar os campos movendo o cursor para a linha e apertando o espao
bar.

Figura 5-3: Opes de instalao

install.mm, v verso 4.21 (2003/04/02 06:39:30)

63

Captulo 5: Instalando o FreeBSD

Particionamento do disco
O primeiro passo da instalao a criao de espao para o FreeBSD no disco. Olhamos para o
formao tcnica no Captulo 2, na pgina 39. Nesta seco s, vamos usar o termo
divisria para se referir a uma fatia ou partio BIOS, porque essa a terminologia habitual.
Mesmo se o disco est corretamente particionado, selecione o Divisria Menu: a instalao
rotinas precisa entrar nessa tela, a fim de ler as informaes da partio do disco.
Se voc gosta do que voc v, voc pode sair de novo imediatamente com q (Sair), mas voc deve
entra pela primeira vez este menu. Se voc tiver mais de um disco conectado a sua mquina, voc vai
prximo ser solicitado a escolher as unidades que voc deseja usar para FreeBSD.

Figura 5-4: menu de seleo de disco


Esta tela mostra entradas para cada unidade que sysinstall detectou, neste exemplo, a
sistema tem uma unidade ATA (IDE), / Dev/ad0, e uma unidade SCSI, da0. Voc s tem esse
tela, se voc tiver pelo menos dois discos conectados sua mquina, caso contrrio sysinstall
passa automaticamente para a prxima tela.
Se voc pretende usar mais de um disco para o FreeBSD, voc tem a opo de configurar tudo
discos agora, ou definindo os outros at depois que o sistema est instalado e funcionando. Vamos olhar para o
Esta ltima opo no Captulo 11, na pgina 199.
Para selecionar o disco no qual voc deseja instalar o FreeBSD, mova o cursor para a
linha apropriada e pressione a barra de espao. A tela que voc comea provavelmente ser a aparncia
Figura 5-5. Tabela 5-1 explica o significado das colunas nesta exibio. O primeiro
partio contm o Master Boot Record, que exatamente um setor muito tempo, eo
inicializao, que pode ser de at 15 sectores longo. As ferramentas de particionamento usar o completo
primeira faixa: neste caso, a informao sobre a geometria do BIOS diz que tem 63 sectores
por faixa.
Neste caso, o sistema de arquivos Microsoft usa-se o disco inteiro, exceto para a ltima faixa,
1008 sectores (504 kB), no final do disco. Claramente no h muito deixou de compartilhar. Ns
tem a opo de remover a partio Microsoft, o que veremos aqui, ou podemos
encurt-lo com FIPS. Olhamos para FIPS no Captulo 4, pgina 52, e vamos olhar para o que
a ver com o layout resultante na pgina 66.
install.mm, v verso 4.21 (2003/04/02 06:39:30)

Particionamento do disco

64

Figura 5-5: Menu editor de partio


No se esquea que se voc remover uma partio, voc perde todos os dados
na mesma. Se a partio contm qualquer coisa que voc deseja manter, fazer
se voc tem um backup legvel.
Voc remover a partio com o d de comando. Depois disso, sua tela se parece com:

O prximo passo alocar uma partio FreeBSD. H duas maneiras de fazer isso: se voc
quer ter mais de uma partio no disco (por exemplo, se voc compartilhar o disco com
outro sistema operacional), voc pode usar o c (Criar) de comando. Veremos que na pgina
66. Neste caso, no entanto, voc quiser usar todo o disco para o FreeBSD, assim que voc escolher o
um opo. A tela resultante efectivamente a mesma que na Figura 5-5: a nica
diferena que o Desc campo agora mostra freebsd em vez de gordura.
Isso tudo que voc precisa fazer aqui: sair fdisk premindo o q chave.

No utilize o W (Gravar alteraes) comando aqui. destinado


para uso somente quando o sistema estiver em funcionamento.

install.mm, v verso 4.21 (2003/04/02 06:39:30)

65

Captulo 5: Instalando o FreeBSD

Tabela 5-1: informaes fdisk

Compensar

Coluna

Descrio
O nmero do primeiro sector da partio.

Tamanho

O comprimento da partio em sectores.

Final

O nmero do ltimo sector na partio.

Nome

Quando presente, este o nome do dispositivo que o FreeBSD atribui partio.


Neste exemplo, a segunda entrada tem um nome.

Ptype

O tipo de partio. Partio do tipo 6 o Master Boot Record, que


exatamente uma pista longa (note que o cabealho diz que esta unidade tem 63 setores
por faixa). Tipo 2 uma partio normal.

Desc

A descrio textual do tipo de partio. gordura stands para File Allocation


Mesa, uma parte central da estratgia de alocao de espao em disco Microsoft.

Subtipo

O subtipo partio. Isto corresponde ao texto descritivo.

Bandeiras Pode ser um ou mais dos seguintes caracteres:

= A partio alinhado corretamente.


> A partio termina aps o cilindro 1024, que costumava causar problemas
para Microsoft.
A Esta a partio ativa (de arranque).
B A partio emprega bad144 manuseio mau-spot.
C Esta uma partio compatibilidade do FreeBSD.
R Esta partio contm um sistema de arquivos raiz.
Em um PC, a prxima tela pede que tipo de inicializar selector (Por outras palavras, MBR) voc
querem. Voc no consegue isso em um Alpha.

Figura 5-6: Menu selector Bota


install.mm, v verso 4.21 (2003/04/02 06:39:30)

Particionamento do disco

66

Se voc pretende ter apenas um sistema operacional neste disco, selecione Padro. Se voc
compartilhando com outro sistema operacional, voc deve escolher BootMgr em vez disso. Veremos
a isso com mais detalhes na seo sobre a inicializao do sistema na pgina 525. Saia pressionando
a tecla Tab at o Ok guia destacado, em seguida, pressione Enter.
Tabela 5-2: Escolhas MBR

BootMgr

Escolha

Descrio
Instale o gerenciador de boot do FreeBSD no MBR. Isso permitir que voc
escolher qual partio para inicializar a cada vez que voc iniciar o sistema.

Padro

um padro do MBR. Voc ser capaz de arrancar apenas do ativo


partio.

Nenhum

No altere a MBR. Isto til se voc j tem um outro bota


gerente instalado. Se nenhum MBR est instalado, no entanto, voc no ser capaz de
iniciar a partir deste disco.

Parties compartilhadas
Se voc estiver instalando em um disco compartilhado com outro sistema operacional, as coisas so um pouco
diferente. A seo continua o exemplo iniciado no Captulo 4. Quando voc entra no
editor de parties, voc vai ver algo como:

Figura 5-7: parties compartilhadas


Esta tela mostra as duas parties da Microsoft, ad0s1 e ad0s2, que o que voc v
depois de usar FIPS, se voc acabou de instalar o Microsoft em uma partio, a partio ad0s2
no estar presente. Se for, voc primeiro precisa remov-lo. Tenha muito cuidado para remover o
partio correta. sempre a segunda das duas paredes, neste caso ad0s2.
install.mm, v verso 4.21 (2003/04/02 06:39:30)

67

Captulo 5: Instalando o FreeBSD

Remova a partio movendo o cursor para a segunda partio e pressionando d.


Depois disso, o visor parece:

O prximo passo alocar uma partio FreeBSD com o c de comando. O menu pede
o tamanho da partio, e sugere um valor de 35899920 sectores, o tamanho da utilizada
rea no final. Voc pode editar este valor se desejar, mas neste caso o que voc quer, ento
basta pressionar ENTER. Voc comea uma outra janela pedindo-lhe o tipo de partio, e
sugerindo tipo 165, a tabela de parties do FreeBSD. Quando voc aceita isso, voc obtm:

A nova partio agora tem um tipo de partio e 8 subtipo 165 (0xA5), que identifica
como uma partio FreeBSD.
Aps isso, selecione um mtodo de inicializao conforme descrito na pgina 66 e sair do menu com o q
de comando. Existem dois sistemas operacionais no disco, s selecionar o BootMgr opo.

Definio de sistemas de arquivos


O prximo passo dizer ao programa de instalao o que colocar na sua partio FreeBSD.
Primeiro, vamos olhar para o caso simples de instalar o FreeBSD por si s. Na pgina 75, veremos
em que as diferenas existem na instalao ao lado de outro sistema operacional no
mesmo disco.
Quando voc seleciona Etiqueta, voc tem a tela mostrada na Figura 5-8.

Figura 5-8: menu do editor de etiqueta


install.mm, v verso 4.21 (2003/04/02 06:39:30)

Definio de sistemas de arquivos

68

O parties?
Neste exemplo, voc tem 20 GB de espao para dividir. Como voc deve faz-lo? Voc no
precisa se preocupar com esta questo, uma vez que sysinstall pode faz-lo para voc, mas vamos ver a seguir por
isso pode no ser a melhor escolha. Nesta seo, vamos considerar como UNIX sistemas de arquivos
tem mudado ao longo dos anos, e ns vamos olhar para as questes de layout de sistema de arquivos hoje em dia.
Quando UNIX era jovem, os discos eram diminutos. No momento da terceira edio do UNIX, em
1972, o sistema de arquivos raiz estava em um Digital RF-11, um disco de cabea fixa com 512 kB. O
sistema estava a crescer, e que j no era possvel, para manter o sistema em todo o disco,
para um segundo sistema de arquivos tornou-se essencial. Foi montado numa Digital RK03 com 2 MB
de armazenamento. Para citar um artigo publicado no Communications da ACM em Julho
1974:
Em nossa instalao, por exemplo, o diretrio raiz reside no fixo-cabea
disco, eo disco grande, que contm os arquivos do usurio, montado pelo
programa de inicializao do sistema ...
Conforme o tempo passava, UNIX ficou maior, mas assim como os discos. No incio dos anos 80, os discos foram
grande o suficiente para colocar / e / Usr no mesmo disco, e que teria sido possvel
fundir / e / Usr, mas no o fez, principalmente por causa de preocupaes com a confiabilidade. Desde aquele tempo,
um sistema de arquivos adicionais, / Var, entrou em uso comum de dados freqentemente alterados,
e apenas recentemente sysinstall foi modificado para criar um / Tmp sistema de arquivos por padro.
Isto o que sysinstall faz se voc pedir para ele particionar automaticamente:

Figura 5-9: Os tamanhos de sistema de arquivos padro


relativamente simples para estimar o tamanho do sistema de arquivos raiz, e valor do sysinstall
128 MB razovel. Mas o que dizer / Var e / Tmp? de 256 MB muito ou pouco?
Na verdade, ambos os sistemas de arquivos juntos seria perdido na 18,7 GB de / Usr sistema de arquivos.
Por que as coisas ainda assim? Vamos olhar para as vantagens e desvantagens:
install.mm, v verso 4.21 (2003/04/02 06:39:30)

69

Captulo 5: Instalando o FreeBSD

Se voc escrever para um sistema de arquivos eo sistema trava antes de todos os dados podem ser gravados
no disco, a integridade desse sistema de arquivo de dados pode ser severamente comprometida. Para
razes de desempenho, o sistema no escrever tudo para o disco imediatamente, assim
h muito uma chance razovel de que isso acontea.

Se voc tem um acidente e perder o sistema de arquivos raiz, a recuperao pode ser difcil.

Por outro lado, alguns sistemas de ficheiros so mais importantes do que outros. Se o / Var arquivo
sistema enche (devido explorao madeireira excessivamente ativo, por exemplo), voc no pode se preocupar demais
muito. Se o seu sistema de arquivos raiz enche, voc pode ter problemas srios.

No modo single-user, apenas o sistema de arquivos raiz est montado. Com o layout clssico,
isto significa que os nicos programas que podem ser executados so aqueles em / Bin e / Sbin. Para executar
outros programas, voc deve primeiro montar o sistema de arquivos em que eles esto localizados.

bom para manter seus arquivos pessoais separados dos arquivos do sistema. Dessa forma, voc pode
atualizar um sistema com muito mais facilidade.

muito difcil estimar com antecedncia o tamanho precisa de alguns sistemas de arquivos. Para
exemplo, em alguns sistemas / Var pode ser muito pequeno, talvez de apenas 2 ou 3 MB.
no vale a pena fazer um sistema de arquivos separado para tantos dados. Por outro lado,
outros sistemas, como servidores web, ftp, ou podem ter um / Var sistema de 50 ou 100 GB.
Como voc escolhe o tamanho correto para seu sistema?

Ao fazer backups, uma boa idia para ser capaz de obter um sistema de arquivos em uma nica fita.

Se um sistema de arquivos enche, ele pode causar muitos problemas. A maioria das mensagens sobre sistemas de arquivos
no FreeBSD-questions lista de discusso esto reclamando sobre sistemas de arquivos enchimento
up. Se voc tem um grande nmero de sistemas de arquivos pequenos, as chances so maiores que um
vai encher-se enquanto espao permanece em outro.

Nos primeiros dias de UNIX, falhas no sistema foram relativamente comuns, e os danos que
fez para os sistemas de arquivos foi relativamente srio. Os tempos mudaram, e hoje em dia o arquivo
danos ao sistema relativamente raro, principalmente em sistemas de arquivos que tm pouca atividade.
Por outro lado, unidades de disco tm crescido alm do mais selvagens expectativas da maioria das pessoas.
A primeira edio deste livro, h apenas seis anos, mostrou como instalar em um 200 MB
dirigir. As unidades de disco mais pequeno na produo atual de 20 GB de tamanho, mais do que vai caber
em muitas fitas.
Como resultado destas consideraes, eu mudei as minhas recomendaes. Em mais cedo
edies deste livro, eu recomendo colocar um sistema de arquivos raiz pequeno e um / Usr arquivo
sistema no primeiro disco (ou nico) no sistema. / Var era para ser um link simblico para
/ Usr / var.
Este ainda um layout vlido, mas tem alguns problemas:

No exemplo que estamos vendo, / Usr de cerca de 19 GB de tamanho. Muitas pessoas no tm


dispositivos de backup que pode escrever isso muitos dados sobre um nico meio.

Muitas pessoas tiveram dificuldade com o link simblico para / Usr / var.

install.mm, v verso 4.21 (2003/04/02 06:39:30)

Definio de sistemas de arquivos

70

Como resultado, agora eu recomendo:

Faa um sistema nico de entre 4 e 6 GB de arquivos raiz.

No tem uma separada / Usr sistema de arquivos.

No tem uma separada / Var o sistema de arquivos, a menos que voc tenha uma boa idia de quo grande ele
deveria ser. Um bom exemplo pode ser um servidor web, onde (ao contrrio do FreeBSD
recomendaes), uma boa idia para colocar as pginas web na / Var sistema de arquivos.

Usar o resto do espao no disco para uma / Home sistema de arquivos, desde que seja possvel
guard-lo em uma nica fita. Caso contrrio, fazer vrios sistemas de arquivos. / Home o
diretrio normal para os arquivos do usurio.

Este layout permite fcil de backup dos sistemas de arquivos, e tambm permite a fcil
atualizao para uma nova verso do sistema: voc s precisa substituir o sistema de arquivos raiz. No
um ajuste perfeito para todas as aplicaes, no entanto. Em ltima anlise, voc precisa fazer o seu prprio
decises.

Quanto espao de swap?


Alm de arquivos, voc tambm deve ter pelo menos uma partio swap no disco. muito
difcil prever quanto espao de swap que voc precisa. O automtico opo deu-lhe 522
MB, um pouco mais do que o dobro do tamanho da memria fsica. Talvez voc pode conviver com
64 MB. Talvez voc vai precisar de 2 GB. Como voc decide?
quase impossvel saber de antemo o que o seu sistema vai exigir. Aqui esto algumas
consideraes:

necessrio espao de troca para todas as pginas de memria virtual que contm dados que no so
travado na memria e que no pode ser recriada automaticamente. Esta a maior parte das
memria virtual no sistema.

Algumas pessoas usam regras de ouro como'' 2,5 vezes o tamanho da memria fsica, ou 64
MB, o que for maior.'' Essas regras funcionam apenas fazendo suposies sobre o seu
carga de trabalho. Se voc estiver usando mais de 2,5 vezes mais espao de swap como fsico
memria, o desempenho ser prejudicado.

Devoradores de memria conhecidos so programas grficos X11 e integrada como o Netscape


e StarOffice. Se voc us-los, voc provavelmente vai precisar de mais espao de swap. Mais velho
Porcos baseados em UNIX, como o Emacs eo compilador GNU C (gcc) no esto na mesma
liga.

Voc pode adicionar as parties de swap adicionais em outros discos. Isto tem o adicional
vantagem de equilibrar a carga do disco se o seu swaps mquina muito.

Sobre as nicas maneiras de mudar o tamanho de uma partio swap adicionar outro
partio ou reinstalar o sistema, ento se voc no tiver certeza, um pouco mais no vai fazer qualquer
prejudicar, mas muito pouco realmente pode ser um problema.

install.mm, v verso 4.21 (2003/04/02 06:39:30)

71

Captulo 5: Instalando o FreeBSD

Se o seu sistema entra em pnico, e despejo de memria ativada, ela vai escrever o contedo de
memria para a partio swap. Isto, obviamente, no vai funcionar se sua partio swap
menor do que a memria principal. Sob estas circunstncias, o sistema se recusa a despejar,
assim voc no ser capaz de encontrar a causa dos problemas.
As rotinas de despejo apenas pode despejar a uma nica partio, ento voc precisa de um que grande
suficiente. Se voc tem 512 MB de memria e duas parties swap de 384 MB cada,
voc ainda no vai ser capaz de despejar.

Mesmo com cargas leves de memria, o sistema de memria virtual lentamente pginas fora dados
preparao para uma possvel demanda repentina para a memria. Isto significa que ele pode ser
mais sensvel a esses pedidos. Como resultado, voc deve ter pelo menos a mesma quantidade correspondente
como memria.

Um par de exemplos pode tornar isso mais claro:


1. Alguns anos atrs, eu costumava correr X , StarOffice, Netscape e um monte de outros
aplicaes de memria de fome em um velho 486 com 16 MB. Claro, era muito lento,
especialmente quando mudar de uma aplicao para outra, mas funcionou. Houve
no a quantidade de memria, por isso usei um monte de swap.
Para visualizar a utilizao de swap atual, use pstat. Aqui est uma viso tpica desta mquina de
espao de swap:
$ Pstat-s
Dispositivo
/ Dev/da0s1b

1024-blocos
122880

Usado
65148

Aproveitar Tipo Capacidade


57.668 53% Intercalado

2. Na hora de escrever eu corro muito mais coisas em um AMD Athlon com 512 MB de
memria. Tem muito espao swap, mas o que eu vejo :
$ pstat-s
Dispositivo
/ Dev/ad0s1b

1024-blocos
1048576

Disponvel Usado Tipo Capacidade


14644 1033932
1% Intercalado

No to importante que o Athlon est usando menos swap: ele est usando menos de 3% do seu
memria swap, enquanto que o 486 usado 4 vezes a sua memria. Em uma edio anterior deste
livro, eu tive o exemplo de um Pentium com 96 MB de memria, que usaram 43 MB de
trocar. Olh-lo de um ponto de vista diferente, e isso faz mais sentido: troca faz-se
a falta de memria real, de modo que o 486 foi utilizando um total de 80 MB de memria, a
Pentium estava usando 140 MB, eo Athlon est usando 526 MB. Em outras palavras, existe um
tendncia para ser capaz de dizer'' o mais principal memria que voc tem, menos voc precisa trocar.''
Se, entretanto, voc olha para ele do ponto de vista de desempenho aceitvel, voc vai
ouvir coisas como'' voc precisa de pelo menos um tero de sua memria virtual em memria real.''
Isso faz sentido do ponto de vista do desempenho, assumindo que todos os processos so relativamente
ativo. E, claro, outra maneira de dizer'' tomar o dobro de swap to real
memria.''

install.mm, v verso 4.21 (2003/04/02 06:39:30)

Definio de sistemas de arquivos

72

Em resumo: ser generoso na alocao de espao de swap. Se voc tiver a opo, use mais. Se
voc realmente no pode fazer a sua mente, ter 512 MB de espao de troca ou 1 MB a mais do que o
tamanho mximo de memria que so susceptveis de instalar.
Para os sistemas de arquivos, a coluna Monte agora mostra os pontos de montagem, e o Newfs
coluna contm as letras UFS1 para UNIX File System, verso 1, ea letra Y,
o que indica que voc precisa para criar um novo sistema de arquivos para que voc possa us-lo. Neste ponto,
voc tem duas opes: decidir por si mesmo o que voc quer, ou deixar que o editor rtulo de disco faz-lo
para voc. Vamos olhar para os dois lados:
Criando sistemas de arquivos
Com essas consideraes em mente, vamos dividir o disco da seguinte maneira:

4 GB para o sistema de arquivos raiz, o que inclui / Usr e / Var

512 MB de espao de swap

O resto do disco para o / Home sistema de arquivos

Para criar um sistema de arquivos, voc pressiona c. Voc fica com uma janela de prompt pedindo o tamanho
da
sistema de arquivos, e oferecendo todo o espao. Digite o tamanho do sistema de arquivos root:

Figura 5-10: Especificar o tamanho da partio


Quando voc pressiona ENTER, voc v uma outra perguntando pronta para o tipo de partio. Selecionar
Um sistema de arquivos:

install.mm, v verso 4.21 (2003/04/02 06:39:30)

73

Captulo 5: Instalando o FreeBSD

Figura 5-11: Seleo de tipo de partio


Quando voc pressiona ENTER, voc v uma outra perguntando prompt para o ponto de montagem para o
arquivo
sistema. Entrar / para o sistema de arquivos raiz, aps o qual o visor se parece com:

Figura 5-12: Atribudo sistema de arquivos raiz


No imediatamente bvio neste momento que as atualizaes macios no esto habilitados para este arquivo
sistema. Imprensa s para permitir, aps o que a entrada na Newfs alteraes da coluna
UFS1 a UFS1 + S. Ver pgina 191 para razes pelas quais voc quer usar soft updates.
Em seguida, repita a operao para a partio swap e / Home sistema de arquivos, entrar no
valores apropriados de cada vez. No altere o valor oferecido para o comprimento de / Home:
basta usar todo o espao restante. No final, voc tem:
install.mm, v verso 4.21 (2003/04/02 06:39:30)

Definio de sistemas de arquivos

74

Figura 5-13: alocao partio Concludo


Voc no precisa ativar as atualizaes suaves para / Home, isso acontece automaticamente.
Isso tudo que voc precisa fazer. Saia do menu pressionando q.
Onde voc est agora
Neste ponto da instalao, voc disse sysinstall o layout geral do disco ou
discos que voc pretende usar para FreeBSD, e se ou como voc pretende compartilh-los com
outros sistemas operacionais. O prximo passo especificar como voc deseja usar o FreeBSD
parties. Primeiro, porm, vamos considerar alguns cenrios alternativos.
a segunda vez atravs de
Se voc j comeou a instalao e abortado por algum motivo aps a criao do
sistemas de arquivos, as coisas parecem um pouco diferente quando voc chegar ao editor rtulo. Ele vai encontrar
as parties, mas no sei o nome dos pontos de montagem, de modo que o texto sob o ttulo Monte
ser <nenhum>. Sob Newfs, voc vai encontrar um asterisco (*) em vez do texto UFS1 Y.
O editor rtulo encontrou as parties, mas no sei onde para montar o arquivo
sistemas. Antes que voc possa us-los, voc obrigao dizer ao editor rtulo os tipos e montar
pontos das parties UFS. Para fazer isso:

Posicione o cursor em cada partio de cada vez.

Imprensa m (Mount). Uma janela aparece pedindo o ponto de montagem. Digite o nome, em
Neste exemplo, o primeiro / E pressione Enter. O editor rtulo insere o nome do monte
ponto em Monte, e sob Newfs ele entra UFS1 N-ele sabe que esta uma UFS
sistema de arquivos, de modo que apenas verifica a sua consistncia e no substitu-lo. Repita este
procedimento para / Home, e est feito. Se voc estiver compartilhando seu disco com o outro
sistema, voc tambm pode usar esse mtodo para especificar pontos de montagem para o arquivo Microsoft
sistemas. Selecione a partio Microsoft e especificar o nome de um ponto de montagem.
install.mm, v verso 4.21 (2003/04/02 06:39:30)

75

Captulo 5: Instalando o FreeBSD

A menos que voc est muito certo de que o sistema de arquivo vlido, e voc realmente quiser manter o
dados nas parties, pressione t para especificar que o sistema de arquivo deve ser criado. O
texto UFS1 N alteraes UFS1 Y. Se voc deixar o N l, a fase de confirmao ser
verificar a integridade do sistema de arquivos com fsck ao invs de criar um novo.

Sistemas de arquivos em discos compartilhados


Se voc tiver outro sistema operacional no disco, voc vai notar algumas diferenas. Em
particular, o menu do editor de etiqueta da Figura 5-8 (na pgina 68) no estar vazio: em vez disso,
voc ver algo parecido com isto:

Ser cuidadoso neste ponto. O sistema de arquivos mostrados na lista o Microsoft Active
partio, no um sistema de arquivos do FreeBSD. A informao importante aqui o fato de
que temos 17.529 MB de espao livre no disco. Vamos criar os sistemas de arquivos em que
espao livre da mesma forma que vimos na pgina 72.

Seleo de distribuies
O prximo passo decidir o que instalar. Figura 5-14 mostra o menu que voc comea quando
voc entra Distribuies. A instalao completa do FreeBSD utiliza cerca de 1 GB de espao,
ento no h motivo para escolher outra coisa. Posicione o cursor na linha Tudo, pois
mostrado, e pressione a barra de espao.
Por que pressionar a barra de espao quando at agora lhe tm vindo a pressionar ENTER? Porque neste nomeadamente
menu ENTER ir voltar para o menu de nvel superior, ou simplesmente continuar com a seleo de mdia
de menu, dependendo do tipo de instalao que voc est fazendo. um dos estranheza de
sysinstall.

Em seguida, sysinstall perguntar se voc deseja instalar a coleo de ports. Vamos olhar para o
Portas coleo no Captulo 9. Voc no precisa instal-lo agora, e preciso muito mais
tempo do que voc esperaria de a quantidade de espao que ele tem: a Coleo de Ports
consiste em mais de 150.000 arquivos muito pequenos, e copi-los para o disco pode demorar tanto quanto o
resto da instalao juntos. Por outro lado, muito mais fcil do que fazer agora, ento se
voc tem o tempo, voc deve instal-los.
Tudo o que voc responder a esta pergunta, voc retorna para o menu de distribuio da Figura
5-14. Selecionar Saia, e est feito selecionando suas distribuies.
As verses anteriores do sysinstall perguntou-lhe perguntas sobre XFree86 neste momento. Hoje em dia voc faz
que, depois de completar a instalao.

install.mm, v verso 4.21 (2003/04/02 06:39:30)

Seleo de distribuies

76

Figura 5-14: menu de seleo de Distribuio


Onde voc est agora
Agora sysinstall sabe o layout do disco ou discos que voc pretende usar para FreeBSD, e
o que colocar neles. Em seguida, voc especifica onde obter os dados.

Selecionando a mdia de instalao


A prxima coisa que voc precisa especificar o lugar onde voc ir obter os dados. Onde voc vai
agora depende do seu meio de instalao. A Figura 5-15 mostra o Mdia menu. Se voc
instalando a partir de qualquer coisa, exceto um servidor FTP ou NFS, voc s precisa selecionar o seu meio
e, em seguida, cometer a instalao, que ns olhamos na pgina 77. Se voc est instalando a partir de
alm de CD-ROM de mdia, consulte a pgina 85.
Neste ponto, sysinstall sabe tudo o que precisa para instalar o software. Ele est apenas esperando
para que voc possa dizer a ele para ir em frente.

install.mm, v verso 4.21 (2003/04/02 06:39:30)

77

Captulo 5: Instalando o FreeBSD

Figura 5-15: Menu mdia de instalao

Executando a instalao
At agora, tudo que voc fez no teve nenhum efeito sobre as unidades de disco. Se voc mudar sua
mente, voc pode simplesmente abortar a instalao e os dados em seus discos no ser alterada.
Isso muda completamente na prxima etapa, que vocs chamam comprometendo a instalao.
Agora o grande momento. Voc configurar suas parties, decidiu o que voc deseja instalar
e de onde. Agora voc faz-lo.
Se voc estiver instalando com a instalao personalizada, voc precisa selecionar Cometer explicitamente.
A instalao padro pergunta se voc quer continuar:
Last Chance! Tem certeza de que deseja continuar a instalao?
Se voc estiver executando esta em um sistema existente, altamente
incentiv-lo a fazer backups apropriados antes de prosseguir.
Ns no assumimos qualquer responsabilidade pelos contedos de discos perdidos!

Quando voc responder sim, sysinstall faz o que temos vindo a preparar-se para:

Ele cria as parties e as parties de disco.

Ele cria as estruturas do sistema de arquivos nas parties do sistema de arquivos, ou verifica-los,
dependendo do que voc escolheu no editor de etiqueta.

Ele monta os sistemas de arquivos e espao de swap.


Ele instala o software no sistema.

install.mm, v verso 4.21 (2003/04/02 06:39:30)

Executando a instalao

78

Aps os sistemas de arquivos so montados, e antes de instalar o software, sysinstall comea


processos em outras duas terminals.1 virtual em / Dev/ttyv1 voc recebe a sada do log mostrando-lhe
o que est acontecendo nos bastidores. Voc pode acess-lo com ALT-F2. Logo no
comeo voc vai ver um monte de mensagens de erro como sysinstall tenta inicializar todos
dispositivo que possa pensar. No se preocupe com eles, normal. Para voltar para a instalao
tela, pressione ALT-F1.
Alm disso, depois sysinstall monta o sistema de arquivos raiz, ele inicia um shell interativo em
/ Dev/ttyv3. Voc pode us-lo se algo der errado, ou simplesmente para ver o que est acontecendo
enquanto voc est instalando. Voc pode alternar a ele com ALT-F4.
Depois de instalar todos os arquivos, sysinstall pergunta:
Acesse o menu de configurao geral para a chance de definir
suas ltimas opes?

Voc realmente tem a opo aqui. Voc pode responder Sim e continuar, ou voc pode reiniciar:
o sistema agora executvel. Com toda a probabilidade, porm, voc ter adicional
trabalhos de montagem para fazer, ento vale a pena continuar. Ns vamos olhar para isso da seguinte
captulo.

Instalando em um sistema Alpha


Instalando FreeBSD em um Alpha (oficialmente Compaq AXP) tem algumas pequenas diferenas
devido ao prprio hardware. Em princpio, voc pode executar os mesmos passos para instalar o FreeBSD em
a arquitetura Alpha que voc executa para a arquitetura Intel. Consulte a pgina 42 para alguns
diferenas.
O tipo mais fcil de instalao de CD-ROM. Se voc tem um CD-ROM suportadas
unidade e um CD de instalao do FreeBSD para Alpha, voc pode iniciar a instalao atravs da construo de
um conjunto de discos de boot do FreeBSD a partir dos arquivos disquetes / kern.flp e disquetes / mfsroot.flp como
descrito para a arquitetura Intel na pgina 85. Use o CD-ROM marcado'' Alpha
instalao.'' No prompt do console SRM, inserir o kern.flp disquete e digite o
seguinte comando para iniciar a instalao:
>>> Boot dva0

Insira o mfsroot.flp disquete quando solicitado e voc vai acabar na primeira tela do
instalar o programa. Voc pode ento continuar como para a arquitetura Intel na pgina 59.
Para instalar atravs da Net, buscar as imagens de disquetes a partir do site ftp, bota acima, e depois
proceder como para a arquitetura Intel.

1. Consulte a pgina 197 para uma explicao de terminais virtuais.


install.mm, v verso 4.21 (2003/04/02 06:39:30)

79

Captulo 5: Instalando o FreeBSD

Uma vez que o processo de instalao for concludo, voc ser capaz de comear a FreeBSD / Alpha por
digitando algo assim para o prompt de SRM:
>>> Boot DKC0

Isto instrui o firmware para inicializar o disco especificado. Para encontrar os nomes SRM de discos em
sua mquina, use o mostrar dispositivo comando:
Dispositivo espetculo
dka0.0.0.4.0
dkc0.0.0.1009.0
dkc100.1.0.1009.0
dva0.0.0.0.1
ewa0.0.0.3.0
pkc0.7.0.1009.0
pqa0.0.0.4.0

>>>
DKA0
DKC0
DKC100
Dva0
EWA0
PKC0
PQA0

TOSHIBA CD-ROM XM-57 3476


RZ1BB-BS 0658
SEAGATE ST34501W 0015
00-00-F8-75-6D-01
SCSI Bus ID 7 5.27
PCI EIDE

Este exemplo vem de uma cmera digital 433au estao de trabalho pessoal e mostra trs discos
acoplado mquina. O primeiro um CD-ROM chamado DKA0 e os outros dois so discos
e so chamados DKC0 e dkc100 respectivamente.
Voc pode especificar qual arquivo do kernel para carregar e quais as opes de inicializao para usar com o -File
e -Flags opes de boot:
>>> Boot-file kernel.old-flags s

Para fazer FreeBSD / Alpha iniciar automaticamente, use os seguintes comandos:


>>> Set boot_osflags um
>>> Set bootdef_dev DKC0
>>> Set auto_action BOOT

Atualizando uma verso antiga do FreeBSD


Paradoxalmente, atualizando uma verso antiga do FreeBSD mais complicado do que instalar
a partir do zero. A razo que voc certamente quer manter o seu velho
configurao. H material suficiente neste tpico para preencher um captulo, de modo que o que eu tenho
feito: ver captulo 31, para mais informaes sobre como atualizar um sistema.

Como desinstalar o FreeBSD


O que, voc quer remover o FreeBSD? Por que voc iria querer fazer isso?
Srio, se voc decidir que quer remover completamente o FreeBSD a partir do sistema, este
no mais uma questo FreeBSD, um problema de qualquer sistema que voc usa para substitu-lo. Para
exemplo, na pgina 63, vimos como remover uma partio Microsoft e substitu-lo por
FreeBSD, nenhum software Microsoft foi necessria para remov-lo. Da mesma forma, voc no
precisar de alguma ajuda do FreeBSD, se voc deseja substitu-lo com um sistema operacional diferente.
install.mm, v verso 4.21 (2003/04/02 06:39:30)

Como desinstalar o FreeBSD

80

Se as coisas do errado
Nesta seo, vamos olhar para os problemas de instalao mais comuns. Muitos destes so
coisas que antes costumavam acontecer e no ter sido visto por algum tempo: sysinstall tem
melhorou consideravelmente, e hardware moderno muito mais confivel e fcil de
configurar. Voc pode encontrar informaes adicionais sobre este tpico na seo Conhecido
Problemas de hardware no arquivo INSTALL.TXT no CD-ROM em primeiro lugar.

Problemas com sysinstall


sysinstall destina-se a ser fcil de usar, mas no muito tolerante a erros. Voc pode muito bem
achar que voc digitar algo por engano e no pode voltar para onde voc quer estar. Em
caso de dvida, se voc ainda no se comprometeram com a instalao, voc pode sempre reiniciar.

Problemas com a instalao do CD-ROM


Se voc optar por instalar a partir de CD-ROM, voc pode receber a seguinte mensagem:
Nenhum dispositivo de CD-ROM encontrado

Isso pode acontecer mesmo se voc tiver iniciado a partir do CD-ROM! As razes mais comuns
para este problema so:

Voc iniciado a partir do disquete e esqueceu-se de colocar o CD-ROM na unidade antes de


inicializado. Desculpe, esta uma limitao atual do processo de inicializao. Reinicie a instalao
(Press Ctrl-Alt-Del ou o boto de reset, ou desligar e ligar o computador).

Voc est usando uma unidade de CD-ROM ATAPI que no se encaixa a especificao. Em
Neste caso, voc precisa de ajuda dos desenvolvedores do FreeBSD. Enviar uma mensagem para FreeBSDquestions@FreeBSD.org e descrever o seu CD-ROM com a maior preciso possvel.

No possvel inicializar
Uma das coisas mais terrveis aps a instalao do FreeBSD se voc achar que a mquina
s no vai arrancar. Isto particularmente ruim se voc tem dados importantes no disco (ou
outro sistema operacional, ou dados de uma instalao anterior do FreeBSD).
Neste momento, os hackers experientes tendem a encolher os ombros e apontam que ainda
ter o backup que voc fez antes de voc fazer a instalao. Se voc lhes disser que voc no fez
fazer um backup, eles tendem a encolher novamente e passar para outra coisa.
Mesmo assim, todos provavelmente no est perdida. As causas mais freqentes de falha de inicializao so incorretas
inicializar problemas de instalao ou geometria. Alm disso, possvel que o sistema pode
travar e nunca completar o processo de inicializao. Todos esses problemas so muito menos comuns
do que costumava ser, e um monte de informaes sobre como lidar com eles um pouco
anos de idade, uma vez que no foram vistos desde ento.

install.mm, v verso 4.21 (2003/04/02 06:39:30)

81

Captulo 5: Instalando o FreeBSD

Instalao de inicializao incorreta


possvel se esquea de instalar o bootstrap, ou at mesmo elimin-lo completamente. Que
soa como um grande problema, mas na verdade ele inofensivo. Consulte a descrio da bota
processo na pgina 525, e iniciar a partir de disquete ou CD-ROM. Interromper o processo de inicializao
com a barra de espao. Voc pode ver:
BTX BTX carregador 1,00 verso 1.01
BIOS drive A: disk0
BIOS unidade C: disk1
BIOS unidade D: disk1
BIOS 639kB/130048kB memria disponvel
FreeBSD/i386 de bootstrap loader, Reviso 0.8
(Grog@freebie.example.com, Thu Jun 13 13:06:03 CST 2002)
Colocar / boot / defaults / loader.conf
Bata [Enter] para iniciar imediatamente, ou qualquer outra tecla para o prompt de comando.
Iniciando [ncleo] em 6 segundos ...
pressione a barra de espao aqui
ok descarregar
descarregar o kernel atual
ok definir currdev disk1s1a
e defina a localizao do novo
ok carga / boot / kernel / kernel
carregar o kernel
bota ok
em seguida, inici-lo

Este botas da unidade / Dev/ad0s1a, supondo que voc est usando discos IDE. O
a correspondncia entre o nome / Dev/ad0s1a e disk1s1a passa atravs da informao no
a parte superior do exemplo: BTX s conhece os nomes de BIOS, ento voc normalmente estar olhando
para a primeira partio no disco C:. Aps a inicializao, instalar o bootstrap correta com
disklabel-B ou comando boot0cfg, e voc deve ser capaz de inicializar a partir do disco rgido novamente.

Problemas de geometria
As coisas poderiam continuar um pouco mais: voc optar por instalar booteasy, e quando voc iniciar, voc
obter o prompt do Gerenciador de Inicializao, mas s imprime F? no menu de inicializao e no aceitar qualquer
entrada. Neste caso, voc pode ter definido a geometria do disco rgido incorretamente na partio
editor quando voc instalou o FreeBSD. Volte para o editor de parties e especifique o
geometria correta para o seu disco rgido. Infelizmente, voc deve reinstalar o FreeBSD a partir do
comeando se isso acontecer.
Ela costumava ser relativamente comum que sysinstall no poderia calcular a geometria correta para
um disco, e que, como resultado, voc pode instalar um sistema, mas que no iria arrancar. Uma vez que os
dias, sysinstall tornou-se muito mais inteligente, mas ainda quase impossvel que voc vai correr em
este problema.
Se voc no consegue descobrir a geometria correta para sua mquina, e mesmo se voc no quiser
para executar o Microsoft em sua mquina, tente instalar uma pequena partio Microsoft no
incio do disco e instalar o FreeBSD depois disso. O programa de instalao vai ver a
Partio Microsoft e tentar inferir a geometria correta dele, o que geralmente funciona.
Aps o editor de parties aceitou a geometria, voc pode remover o Microsoft
partio novamente. Se voc estiver compartilhando sua mquina com Microsoft, certifique-se de que o
Microsoft partio antes a partio FreeBSD. Lembre-se que, em ambos os casos, voc
pode precisar localizar o sistema de arquivos raiz FreeBSD completamente nos primeiros 1024 cilindros,
caso contrrio voc no ser capaz de inicializar. Consulte a pgina 32 para mais detalhes.
install.mm, v verso 4.21 (2003/04/02 06:39:30)

Se as coisas do errado

82

Alternativamente, se voc no deseja compartilhar seu disco com qualquer outro sistema operacional, selecione
a opo de usar todo o disco (um no editor de parties). Isso vai deixar toda a geometria
consideraes de lado.

Sistema trava durante a inicializao


Uma srie de problemas pode levar suspenso do sistema durante o processo de inicializao. Todos os o
problemas conhecidos foram eliminados, mas h sempre a chance de que algo novo
vo surgir. Em geral, os problemas esto relacionados com as sondas de hardware, e o mais
indicao importante o ponto em que o arranque falha. Vale a pena repetir o boot
com a bandeira detalhado: mais uma vez, consulte a descrio do processo de inicializao na pgina 525.
Interromper o processo de boot com a barra de espao e digite:
Bata [Enter] para iniciar imediatamente, ou qualquer outra tecla para o prompt de comando.
Iniciando [ncleo] em 6 segundos ...
pressione a barra de espao aqui
ok definir boot_verbose
definir uma bota detalhado
bota ok
em seguida, continuar

Esta bandeira d-lhe informaes adicionais que podem ajudar a diagnosticar o problema. Ver
Captulo 29 para mais detalhes sobre o que significa a sada.
Se voc estiver usando placas ISA, pode ser necessrio reconfigurar a placa para coincidir com o kernel, ou
alterar o arquivo / Boot / device.hints para coincidir com as configuraes da placa. Veja o exemplo na pgina
600. Verses antigas do FreeBSD costumava ter um programa chamado UserConfig para executar
esta funo, mas no mais suportado.

Inicializao do sistema, mas no executado corretamente


Se voc receber o sistema instalado at o ponto onde voc pode inici-lo, mas ele no correr bastante
do jeito que voc quer, no reinstalar. Na maioria dos casos, no vai ajudar a reinstalao. Em vez disso,
tente encontrar a causa do problema, com a ajuda do FreeBSD-questions lista de discusso se
necessrio e corrigir o problema.

Sistema de arquivos raiz enche


Voc pode achar que a instalao for concluda com xito, e voc ter seu sistema
e funcionando, mas quase antes que voc perceba, o sistema de arquivos raiz enche. Isso relativamente
No se voc seguir a minha recomendao para ter um sistema de arquivos para /, / Usr e / Var,
mas se voc seguir as recomendaes, uma possibilidade. Poderia ser, claro, que
simplesmente no ter feito grandes sistemas de arquivos raiz o suficiente, FreeBSD tem maior sobre o
anos. Na primeira edio deste livro, recomendado 32 MB'' para estar no lado seguro.''
Hoje em dia, o padro de 128 MB.
Por outro lado, talvez voc j tem um sistema de arquivos raiz de 128 MB, e ainda enche
up. Neste caso, verifique onde voc colocar o seu / Tmp e / Var sistemas de arquivos. H uma
boa chance de que eles esto no sistema de arquivos raiz, e por isso que ele est enchendo.

install.mm, v verso 4.21 (2003/04/02 06:39:30)

83

Captulo 5: Instalando o FreeBSD

Pnico
s vezes o sistema entra em tantos problemas que no pode continuar. Deve notar
esta situao e parar mais ou menos graciosamente. Voc pode ver uma mensagem como:
pnico: vnode livre no
Discos de sincronizao 14 13 9 5 5 5 5 5 5 5 desistir
despejo para dev 20001 offset 0
despejar 16 32 48 64 80 96 112 128 sucedido
Reinicializao automtica em 15 segundos - premir uma tecla no console para abortar
Reboooting ...

S porque o sistema tem em pnico, no significa que voc deve entrar em pnico tambm. uma pena
fato da vida que o software contm bugs. Muitos sistemas comerciais apenas falhar quando eles
atingiu um bug, e voc nunca sabe por que, ou eles imprimem uma mensagem como Proteo geral
culpa, o que no lhe diz muito tambm. Quando o sistema entra em pnico UNIX,
geralmente d-lhe informaes mais detalhadas, neste exemplo, a razo vnode livre no . Voc
pode no ser o mais sbio de uma mensagem como esta (diz-lhe que a manipulao do sistema de arquivos
tem confundido sobre o estado atual de armazenamento em um disco), mas outras pessoas podem. Em
particular, se voc fazer obter um pnico e pedir ajuda em FreeBSD-questions, por favor
no basta dizer'' Meu sistema entrou em pnico, o que eu fao?'' A primeira resposta, se voc conseguir um
ser'' Qual foi a seqncia de pnico?'' O segundo ser'' Onde est o lixo?''
Depois de entrar em pnico, o sistema tenta escrever buffers do sistema de arquivos de volta para o disco de modo que eles
no ficar perdido. Isso nem sempre possvel, como podemos ver na segunda linha deste exemplo.
Tudo comeou com 14 buffers para escrever, mas s conseguiu escrever 9 deles, possivelmente
porque ele estava confuso sobre o estado do disco. Isso pode significar que voc ter
dificuldades aps a reinicializao, mas tambm pode significar que o sistema estava errado em sua
suposies sobre o nmero de buffers necessrios para ser escrito.
Alm de dizer a causa do pnico, FreeBSD, opcionalmente, copiar o atual
contedo da memria para o arquivo de swap para a anlise post-mortem. Isto chamado despejo o
do sistema, e mostrado nas duas linhas seguintes. Para habilitar o dumping, necessrio especificar
onde o lixo deve ser escrito. Em / Etc / defaults / rc.conf, voc vai encontrar:
dumpdev = "NO"

# Nome do dispositivo de despejo de memria para (se habilitado).

Para ativar o dumping, colocar algo como isso em / Boot / loader.conf :


dumpdev = "/ dev/ad0s1b"

Isso permite que os depsitos a ser feita mesmo pnico ocorre antes que o sistema l o
/ Etc / rc.conf arquivo. Certifique-se de que o nome do dumpdev corresponde a uma troca
partio com pelo menos tanto espao quanto a sua memria total. Voc pode usar pstat para verificar
isto:

install.mm, v verso 4.21 (2003/04/02 06:39:30)

Se as coisas do errado
# Pstat-s
Dispositivo 1024-blocos
/ Dev/ad0s1b 51200
/ Dev/da0s1b 66036
/ Dev/da2s1b 204800
Total de 321.844

84
Usado
50108
51356
51220
152684

Aproveitar Tipo Capacidade


1028
98% Intercalado
14616 78% Intercalado
153516
25% Intercalado
169160
47%

Enquanto esta mquina no tem mais do que cerca de 192 MB de memria, ser
possvel fazer um despejo em / Dev/da2s1b.
Alm disso, garantir que voc tenha um diretrio chamado / Var / crash. Aps a reinicializao, o
primeiro sistema verifica a integridade dos sistemas de ficheiros, ento verifica a presena de um
despejar. Se encontrar um, ele copia o despejo eo kernel atual para / Var / crash.
Vale sempre a pena permitir que o dumping, assumindo que o seu espao de swap pelo menos to grande como o seu
memria. Voc pode analisar os dumps com gdb, consulte a pgina 614 para mais detalhes.
Para obter os melhores resultados a partir de uma anlise de despejo, voc precisa de um depurar o kernel. Este kernel
idntico a um ncleo normal, mas inclui uma srie de informaes que podem ser usadas para despejo
anlise. Consulte a pgina 605 para detalhes de como construir um kernel de depurao. Voc nunca sabe quando
voc pode executar em um problema, ento eu recomendo que voc utilize um kernel de depurao em todos os
vezes. Ele no tem nenhum efeito sobre o desempenho do sistema.

Fixao de uma instalao quebrado


Um acidente muito grande pode danificar o seu sistema de tal forma que voc precisa
reinstalar todo o sistema. Por exemplo, se voc substituir o disco rgido do incio ao
terminar, voc no tem outra escolha. Em muitos casos, porm, o dano reparvel.
s vezes, porm, voc no pode iniciar o sistema para corrigir os problemas. Neste caso, voc tem
duas possibilidades:

Inicializao a partir do CD-ROM segunda (Live Sistema de Arquivos). Ele ser montado como o arquivo de raiz
sistema.

Inicializar a partir do Fixit disquete. A disquete Fixit est na distribuio da mesma


diretrio do disquete de boot, disquetes. Basta copiar disquetes / fixit.flp a um disco na
mesma forma como descrito para disquetes de inicializao na pgina 85. Para utilizar o disquete fixit, primeiro
boot com o disquete de inicializao e selecione'' Fixit disquete'' a partir do menu principal. O Fixit
disquete ser montado sob o MFS raiz / Mnt2.

Em ambos os casos, os discos rgidos no so montados, voc pode querer fazer o trabalho de reparo neles
antes de qualquer outro acesso.
Use esta opo somente se voc tiver uma boa compreenso do processo de instalao do sistema.
Dependendo do dano, voc pode ou no ser bem sucedido. Se voc tiver uma recente
backup do seu sistema, pode ser mais rpido para executar uma instalao completa do que tentar
consertar o que est esquerda, e depois de uma reinstalao pode ser mais confiante de que o sistema
instalado corretamente.

install.mm, v verso 4.21 (2003/04/02 06:39:30)

85

Captulo 5: Instalando o FreeBSD

Mtodos de instalao alternativos


A descrio, no incio da presente captulo aplicada instalao mais comum
mtodo, a partir de CD-ROM. Nas sees seguintes, vamos olhar para o relativamente menor
diferenas necessrias para a instalao de outros meios de comunicao. As escolhas que voc tem so, em ordem de
diminuindo atratividade:

Ao longo da rede. Voc tem a opo de ftp ou conexo NFS. Se voc


conectado Internet e voc no estiver com pressa, voc pode carregar diretamente de um dos
os sites de distribuio descrito no FreeBSD handbook.

A partir de uma partio de disco montado localmente, ou FreeBSD (se voc j tiver instalado
lo) ou Microsoft.

A partir de disquete. Esta apenas para masoquistas ou pessoas que realmente no tm quase nenhum
hardware: dependendo da extenso da instalao, voc vai precisar de at 250 discos
e pelo menos um deles obrigado a ter um erro I / O. E no se esquea que um CDROM custa muito menos do que 250 disquetes.

Preparando disquetes de inicializao


Se a sua mquina no mais o mais jovem, voc pode ser capaz de ler a unidade de CD-ROM,
mas no iniciar a partir dele. Neste caso, voc precisar inicializar atravs de disquetes. Se voc estiver usando 1,44
MB disquetes, voc vai precisar de dois ou trs deles, a Disk Kernel e a MFS Disk Root
e, possivelmente, o Disk Drivers para iniciar os programas de instalao. Se voc estiver usando 2,88
MB disquetes ou um LS-120 de disco, voc pode copiar o nico Disco de inicializao, que 2,88 MB
por muito tempo, em vez de o kernel e discos de raiz MFS. As imagens destes disquetes esto na
CD-ROM distribuio nos ficheiros
disquetes / kern.flp, disquetes / mfsroot.flp, flop
tortas / drivers.flp e disquetes / boot.flp respectivamente. Se voc tem o seu montado CD-ROM
em um sistema Microsoft, que pode ser chamado DISQUETES \ kern.flp, disquetes \ MFSROOT.FLP, disquetes \ drivers.flp e DISQUETES \ boot.flp respectivamente. O
inicializao no se recuperar bad blocks, ento o disquete deve ser 100% legvel.
A maneira como voc tirar a imagem de disco de boot em um disquete real, depende do sistema operacional
que voc usa. Se voc estiver usando qualquer sabor de UNIX, basta executar algo como:
# Dd if = / cdrom / disquetes / kern.flp of = / dev/fd0 bs = 36b
mudar o disquete
# Dd if = / cdrom / disquetes / mfsroot.flp of = / dev/fd0 bs = 36b
mudar o disquete
# Dd if = / cdrom / disquetes / drivers.flp of = / dev/fd0 bs = 36b

Isso pressupe que o seu software est no CD-ROM, e que est montado no diretrio
/ Cdrom. Ele tambm assume que sua unidade de disquete chamado de / dev/fd0. Este o FreeBSD
nome da verso 5.0, e tambm o nome que usa Linux. Older FreeBSD e outros
Sistemas BSD referem a ele como / Dev/fd0c.
O dd implementao de algumas verses do UNIX, especialmente os mais antigos variantes System V,
podem queixar-se sobre a opo bs = 36b. Se isso acontecer, basta deix-lo fora. Pode demorar
install.mm, v verso 4.21 (2003/04/02 06:39:30)

Mtodos de instalao alternativos

86

at 10 minutos para gravar o disquete, mas ele vai trabalhar, e isso vai fazer voc apreciar
FreeBSD tudo o mais.
Se voc tem que criar o disquete de boot da Microsoft, use o programa FDIMAGE.EXE,
que est na ferramentas diretrio do primeiro CD-ROM.

Inicializao a partir de disquetes


Em quase todos os casos onde voc no iniciar a partir de CD-ROM, voc poder inicializar a partir do disquete, no
importa o meio que voc est instalando a partir de. Se voc estiver instalando a partir do CD-ROM, colocar o
CD-ROM na unidade de antes de arrancar. A instalao pode falhar se iniciar antes
inserir o CD-ROM.
Inicializar o sistema no modo normal a partir do primeiro disquete (aquele que contm o
kern.flp imagem). Depois de carregar o kernel, o sistema ir imprimir a mensagem:
Por favor insira MFS raiz disquete e pressione Enter:

Depois de substituir o disquete e pressione Enter, o processo de inicializao continua como antes.
Se voc estiver usando a imagem 2.88 MB em um disquete de 2,88 MB ou um LS-120 unidade, voc tem
tudo que voc precisa de um disco, ento voc no tem o pedido para mudar o disco.
Dependendo de seu hardware, voc poder mais tarde ter uma solicitao para instalar drivers adicionais
a partir do disquete driver.

Instalando via ftp


A maneira divertida de instalar o FreeBSD atravs da Internet, mas no sempre a melhor escolha.
H uma grande quantidade de dados a transferir, e se voc tem realmente uma alta velocidade, no sobrecarregado
conexo com o servidor, que poderia durar para sempre. Por outro lado, claro, se tiver
o software em outra mquina na mesma rede local, eo sistema no qual voc quer
instalar o FreeBSD no tem um drive de CD-ROM, essas condies forem satisfeitas, e isso
poderia ser para voc. Antes de decidir, porm, ler sobre a alternativa de NFS
instalao abaixo: se voc no tem um servidor ftp com os arquivos j instalados, muito
mais fcil de configurar uma instalao NFS.
Existem dois modos de instalao FTP que voc pode usar:

Regular ftp modo no funciona atravs da maioria dos firewalls, mas, muitas vezes, funcionam melhor com
servidores FTP antigos que no suportam modo passivo. Utilize este modo se sua conexo
trava com o modo passivo.

Se voc precisar passar por firewalls que no permitem conexes de entrada, tente
FTP passivo.

Qualquer que seja o modo de instalao e qualquer mquina remota que voc escolher, voc precisa
ter acesso mquina remota. A maneira mais fcil e mais comum para garantir o acesso
a utilizao de ftp annimo. Se voc est instalando a partir de outra mquina FreeBSD, leia como
instalar ftp annimo na pgina 448. Esta informao tambm geralmente correto para outra
Sistemas Unix.
install.mm, v verso 4.21 (2003/04/02 06:39:30)

87

Captulo 5: Instalando o FreeBSD

Configurar o servidor ftp


Coloque a distribuio FreeBSD no diretrio ftp pblico do servidor ftp. Em BSD
sistemas, este ser o diretrio home do usurio ftp, que no FreeBSD como padro
/ Var / spool / ftp. O nome do diretrio o nome da verso, que neste
exemplo, vamos supor que seja 5.0-RELEASE. Voc pode colocar esse diretrio em um subdiretrio
de / Var / spool / ftp, por exemplo / var/spool/ftp/FreeBSD/5.0-RELEASE, mas a nica
parte opcional neste exemplo o diretrio pai FreeBSD.
Este diretrio tem uma estrutura um pouco diferente da distribuio de CD-ROM. Para configur-lo
acima, supondo que voc tenha o seu CD-ROM de distribuio montado / Cdrom, e que voc
instalar no diretrio / Var/spool/ftp/FreeBSD/5.0-RELEASE, execute o seguinte
passos:
#
#
#
#
#
#

cd / var/spool/ftp/FreeBSD/5.0-RELEASE
mkdir disquetes
cd disquetes
cp / cdrom / disquetes / *.
no omitir o. no final
cd / cdrom
o diretrio de distribuio em CD-ROM
tar cf -. | (Cd / var/spool/ftp/FreeBSD/5.0-RELEASE; tar xvf -)

Isso copia todos os diretrios de / Cdrom em / Var/spool/ftp/FreeBSD/5.0-RELEASE. Para


uma instalao mnima, voc s precisa do diretrio base. Para instalar apenas de base em vez de
toda a distribuio, alterar a ltima linha do exemplo acima:
# Mkdir base de
# Cp / cdrom / base / * Base

Instalando via ftp


Na pgina 77, vimos o menu de seleo de mdia. Figura 5-16 mostra o menu que voc comea quando
selecionar FTP ou FTP passivo. Para ver o resto dos stios, usar o PageDown
chave. Vamos supor que voc deseja instalar a partir presto, um sistema na rede local. presto
no est nesta lista, claro, para que voc escolha URL. Outro menu aparecer, pedindo um ftp
caminho na forma URL ftp://hostname/pathname. hostname o nome do
sistema, neste caso presto.example.org, eo caminho o caminho em relao ao
diretrio ftp annimo, que em sistemas FreeBSD geralmente / Var / spool / ftp. O
instalar o programa sabe seu nmero de verso, e atribui-lo para o nome que voc fornecer.
Voc pode alterar o nmero da verso do menu de opes, por exemplo, para instalar um instantneo de um
mais recente verso do FreeBSD.

Neste caso, estamos instalando verso 5.0 do FreeBSD, e no diretrio


/ Var/spool/ftp/pub/FreeBSD/5.0-RELEASE. sysinstall conhece a 5.0-RELEASE, assim voc
entrar apenas ftp://presto.example.org/pub/FreeBSD. O menu seguinte pede que voc configure
sua rede. Este o mesmo menu que normalmente preencher na extremidade do
instalao, consulte a pgina 98 para mais detalhes.
Esta informao usada para configurar a mquina aps a instalao, assim que paga para preencher este
informaes corretamente. Depois de inserir essas informaes, continue com Cometer (Na pgina
77).
install.mm, v verso 4.21 (2003/04/02 06:39:30)

Mtodos de instalao alternativos

88

Figura 5-16: Seleo servidor ftp

Instalando atravs do NFS


Se voc est instalando a partir de uma unidade de CD-ROM em outro sistema na rede local, voc
pode encontrar uma instalao via ftp muito complicada para seu gosto. A instalao muito
mais fcil se a outro sistema de suporte NFS. Antes de comear, certifique-se que o CDROM montado na mquina remota, e que a mquina remota exportar o arquivo
sistema (na terminologia System V, a exportao chamado partilha). Quando for solicitado o
nome do diretrio, especifique o nome do diretrio em que o CD-ROM
montada. Por exemplo, se o CD-ROM est montado no diretrio / Cdrom no sistema
presto.example.org, insira presto.example.org :/ cdrom . Isso tudo que existe para ela!
Verses antigas do FreeBSD armazenados a distribuio em um subdiretrio dists. Novas verses armazen-lo
no diretrio raiz do CD-ROM.

Em seguida, voc dar essa informao para sysinstall, como mostrado na Figura 5-17. Depois de entrar neste
informaes, sysinstall pede-lhe para configurar uma interface. Este o mesmo procedimento
que voc faria de outra maneira aps a instalao, consulte a pgina 98. Depois de realizar esta
configurao, voc continuar com Cometer (Na pgina 77).

Instalando a partir de uma partio Microsoft


Na arquitetura Intel, voc tambm pode instalar a partir de uma partio primria no Microsoft
primeiro disco. Para se preparar para a instalao de uma partio Microsoft, copie os arquivos da
distribuio em um diretrio chamado C: \ FreeBSD. Por exemplo, para fazer um mnimo
instalao de FreeBSD da Microsoft usando arquivos copiados de um CD-ROM, copie o
diretrios disquetes e base aos diretrios Microsoft C: \ FreeBSD \ DISQUETES e
C: \ FreeBSD \ BIN respectivamente. Voc precisa do diretrio DISQUETES porque onde
sysinstall olha para o boot.flp, a primeira imagem em cada instalao.
install.mm, v verso 4.21 (2003/04/02 06:39:30)

89

Captulo 5: Instalando o FreeBSD

Figura 5-17: A especificao de sistema de arquivos NFS


O diretrio somente necessrio base. Voc pode incluir como muitos outros diretrios como voc
quer, mas no se esquea de manter a estrutura de diretrios. Em outras palavras, se voc tambm queria
instalar XF86336 e manpages, voc copi-los para C: \ FreeBSD \ XF86336 e
C: \ FreeBSD \ manpages.

Criando disquetes para uma instalao flexvel


Instalao de disquete definitivamente a pior escolha que voc tem. Voc vai precisar
cerca de 50 disquetes para a instalao mnima, e cerca de 250 para o completo
instalao. A chance de um deles ser ruim alta. A maioria dos problemas em um disquete
instalao pode ser atribuda a mdia ruim, ou diferenas no alinhamento entre a mdia e os
unidade em que so utilizados, da seguinte forma:

Antes de comear, formatar todos os disquetes no drive que voc pretende


utilizar, mesmo se elas so pr-formatado.
Os dois primeiros disquetes que voc precisa o kernel do disquete ea MFS Root floppy, que
foram descritos anteriormente.
Alm disso, voc precisa de, no mnimo, como muitos disquetes que for preciso para manter todos os arquivos no base
diretrio, que contm a distribuio binria. Leia o arquivo LAYOUT.TXT pagante
ateno especial para a seo'' Distribuio formato'', que descreve quais arquivos voc
precisa.
Se voc estiver criando os disquetes em uma mquina FreeBSD, voc pode colocar ufs sistemas de arquivos no
disquetes vez:

install.mm, v verso 4.21 (2003/04/02 06:39:30)

Mtodos de instalao alternativos

90

# Fdformat-f 1,440 fd0.1440


# Disklabel-w-r fd0.1440 floppy3
# Newfs-t 2-u 18-l 1-i 65536 / dev/fd0

Em seguida, copie os arquivos para os disquetes. Os arquivos de distribuio so divididos em partes que se encaixam
exatamente em um disquete de 1,44 MB convencional. Copiar um arquivo para cada disquete. Assegure-se
colocar o arquivo base.inf no primeiro disquete, que necessrio para descobrir quantos disquetes para
ler.
A instalao em si bastante simples: siga as instrues a partir da pgina
63, selecione Frouxo no menu de mdia de instalao na pgina 76 e siga as instrues.

install.mm, v verso 4.21 (2003/04/02 06:39:30)

Neste captulo:
Instalando adicional
software
Adicionando usurios
Fuso horrio
Servios de rede
Preferncias de inicializao
Configurando o
mouse
Configurando o X
Reiniciando o novo
sistema

Ps-instalao
configurao
No ltimo captulo olhamos para a instalao do sistema bsico, at o ponto onde
ele pode ser reiniciado. quase impossvel que isso poderia ser o suficiente. Quase certamente,
porm, voc vai precisar para realizar uma srie de outras etapas de configurao para que o sistema
til. Neste captulo, seguem aproximadamente o menu de configurao final, mas h uma
algumas excees. As coisas mais importantes a fazer so:

Instale software adicional.

Criar contas de usurios normais.

Configurar o suporte de rede.

Configurar o sistema para iniciar todos os servios que voc precisa.

Configurar o X Window System e desktop.

Neste captulo, vamos nos concentrar em obter o sistema instalado e funcionando o mais rapidamente
possvel. Mais tarde, no livro ns vamos entrar em mais detalhes sobre esses tpicos.
No final do captulo anterior, tivemos um menu perguntando se queramos visitar o
'''' ltimas opes do menu. Se voc responder Sim, voc comea o menu de configurao mostrada na
Figura 6-1. Se voc tiver reiniciado a mquina, efetue login como raiz e comear sysinstall. Em seguida
selecionar Configure, que voc fica no mesmo menu.

postinstall.mm, v v4.12 (2003/04/02 06:40:31)

91

O FreeBSD completo

92

Figura 6-1: Menu de Configurao


Como os marcadores sob a palavra Networking indicam, este menu maior do que o
janela, na qual ele aparece. Ns vamos olhar para algumas das entradas adicionais abaixo.
Apenas algumas destas entradas so de interesse em uma instalao normal, ns vamos ignorar o resto.
Pode haver algumas razes para se desviam da seqncia neste captulo. Por exemplo, se
o seu CD-ROM est montado em um sistema diferente, talvez voc precise configurar a rede
antes de instalar software adicional.

Instalao de software adicional


O primeiro ponto de interesse Packages. Estes so alguns dos portos dos Portos
Coleo, que veremos com mais detalhes no Captulo 9.
A coleo de ports contm uma grande quantidade de software que voc pode querer instalar.
Na verdade, h muito que apenas fazer a sua mente o que instalar pode ser um
processo complicado: h mais de 8.000 portas na coleo. Que valem a pena
usando? Eu recomendo a seguinte lista:

acroread o Acrobat Reader, um utilitrio para ler e imprimir arquivos PDF. Ns olhamos
para ele brevemente na pgina 276.

bater o shell recomendado neste livro. Vamos olh-la com mais detalhes na pgina
113. Outros conchas populares so tcsh e CSH, tanto no sistema de base.

cdrecord um utilitrio para queimar SCSI CD-Rs. Vamos discutir isso no captulo Captulo 13,
Gravao de CD-Rs. Voc no precisa se voc tiver uma unidade IDE CD-R.

postinstall.mm, v v4.12 (2003/04/02 06:40:31)

93

Captulo 6: Configurao Ps-instalao

Emacs o editor GNU Emacs recomendado neste livro. Vamos olh-lo na pgina
139. Outros editores populares so vi (No sistema base) e vitalidade (Nos Portos
Collection).

fetchmail um programa para a recuperao de e-mail de caixas de correio POP. Ns olhamos para ele na pgina
501.

fvwm2 um gerenciador de janelas que voc pode preferir um desktop completo. Ns olhamos para
ele na pgina 118.

galeon um navegador web. Vamos olh-lo brevemente na pgina 416.

ghostscript um interpretador de PostScript. Ele pode ser usado para exibir PostScript em um X
exibir, ou imprimi-lo em uma impressora no-PostScript. Vamos olhar para ele na pgina 273.
gpg um programa de criptografia.
gv um utilitrio que funciona com ghostscript para exibir PostScript em um display X. Ele
e permite a ampliao de paging, ambos os quais ghostscript no faz facilmente. Vamos
olh-lo na pgina 273.
ispell um programa de verificao ortogrfica.
kde o ambiente de trabalho recomendada neste livro. Vamos dar uma olhada em mais
detalhadamente no Captulo 7, As ferramentas do comrcio.

mkisofs um programa para criar imagens de CD-R. Ns olhamos para ele no captulo Captulo 13,
Gravao de CD-Rs.

vira-lata o Mail User Agent (MUA, ou leitor de mail) recomenda no Captulo 26,
Correio eletrnico: seus clientes.

postfix o Mail Transfer Agent (MTA) recomendou no captulo Captulo 27,


Correio eletrnico: servidores.

xtset um utilitrio para definir o ttulo de uma xterm janela. utilizada pela . Bashrc arquivo
instalado com o instant-workstation pacote.

xv um programa para exibir imagens, em particular jpeg e gif.

Por que eu recomendo essas portas em particular? Simples: porque eu gosto deles, e eu us-los
eu. Isso no significa que eles so a nica opo, no entanto. Outros preferem o Gnomo
gerenciador de janelas-kkde, ou o pinho ou olmo MUAs para vira-lata, ou o vim editor para
Emacs. Este
o material
de
santo
guerras.
Ver
http://www.tuxedo.org/ ~ esr / jargo / html / entry / santo wars.html para mais detalhes.

Workstation instante
As portas mencionados na seco anterior, esto includas no misc / instant-workstation
porto, que instala software tpico e configuraes para uma estao de trabalho e permite que voc
para ser produtivo imediatamente. Em um ponto mais tarde, voc pode achar que voc preferir outro software,
Nesse caso, voc pode instal-lo.
postinstall.mm, v v4.12 (2003/04/02 06:40:31)

Instalao de software adicional

94

possvel que o CD ajust-lo se no incluir instant-workstation. Isso no to


um problema: o que voc acabou de instalar as portas individuais a partir desta lista. Voc tambm pode fazer isso se voc
no gosto da lista de portas.

Alterar o shell padro para o root


Aps a instalao, voc pode querer mudar o shell padro para os usurios existentes para Bash. Se
voc tem
instalado instant-estao de trabalho,
deve copiar
o
arquivo
/ Usr / share / skel / dot.bashrc a diretrio home do root e cham-lo . Bashrc e . Bash_proarquivo. Primeiro, comece
presto #
presto #
presto #
=== Root

cp / usr / share / skel / dot.bashrc. bashrc


ln. bashrc. bash_profile
festa
@ presto (/ dev/ttyp2) ~ 1 -> chsh

O ltimo comando inicia um editor com o seguinte contedo:


# Alterando informaes de banco de dados de usurio para root.
Login: raiz
Senha:
Uid [#]: 0
Gid [# ou nome]: 0
Mudana [ms dia ano]:
Expirar [ms dia ano]:
Classe:
Diretrio home: / root
Shell: / bin / csh
Nome Completo: Charlie &
Office Location:
Telefone Escritrio:
Telefone Residencial:
Outras informaes:

Alterar o Concha linha para:


Shell: / usr / local / bin / bash

Note-se que o bater shell est no diretrio / Usr / local / bin, o que porque ele no faz parte do
o sistema base. As conchas so padro no diretrio / Bin.

Adicionando usurios
Um sistema FreeBSD recm instalado tem um nmero de usurios, quase todos para o sistema
componentes. O nico login de usurio raiz, e voc no deve se autenticar como root.
Em vez disso voc
deve adicionar pelo menos uma conta para si mesmo. Se voc est transferindo um master.passwd arquivo
de outro sistema, voc no precisa fazer nada agora. Caso contrrio, selecione este item e
em seguida, o item de menu Usurio, e preencher o menu resultante da seguinte forma:

postinstall.mm, v v4.12 (2003/04/02 06:40:31)

95

Captulo 6: Configurao Ps-instalao

Figura 6-2: Adicionando um usurio


Voc no precisa entrar nos campos UID e Diretrio home: sysinstall faz isso
para voc. importante garantir que voc est em grupo roda de modo que voc pode usar o su
de comando para se tornar root, e voc precisa estar no grupo operator usar o encerramento
de comando.
No se preocupe em adicionar mais usurios nesta fase, voc pode faz-lo mais tarde. Ns vamos olhar para usurio
gesto no Captulo 8, na pgina 112.

Definindo a senha de root


Em seguida, selecione Senha Root. Falaremos sobre senhas mais na pgina 144. Selecione esta
item para definir a senha no modo normal.

Fuso horrio
Em seguida, selecione a entrada fuso horrio. A primeira entrada pergunta se a mquina do
relgio CMOS
(Ou seja, o relgio de hardware) est definido para UTC (s vezes incorretamente chamado de GMT, que um
Fuso horrio britnico). Se voc pretende executar apenas FreeBSD ou outro UNIX-like operacional
sistemas nesta mquina, voc deve ajustar o relgio para UTC. Se voc pretende executar outro
software que no entende fusos horrios, como muitos sistemas da Microsoft, voc tem
para definir o tempo para a hora local, o que pode causar problemas com o horrio de vero.

postinstall.mm, v v4.12 (2003/04/02 06:40:31)

Fuso horrio

96

Figura 6-3: Fuso horrio selecione o menu: EUA


O menu seguinte pede para voc selecionar uma regio'','' o que corresponde a uma
continente. Supondo que voc est vivendo em Austin, TX nos Estados Unidos da Amrica, voc
selecionaria Amrica - do Norte e do Sul e, em seguida (depois de deslocamento para baixo) Unido
Unidos da Amrica. O prximo menu, em seguida, se parece com isso: Selecione Horrio
Central e
selecionar Sim quando o sistema pergunta se a abreviatura CST parece razovel.
Este passo particular relativamente pesado. Voc pode achar que mais fcil olhar no
diretrio / Usr / share / zoneinfo aps a instalao. L voc encontra:
# Cd / usr / share / zoneinfo /
# Ls
frica Austrlia
Etc
Amrica CET
Europa
Antarctica CST6CDT
Fbrica
rtico EET
GMT
sia EST
HST
Atlantic EST5EDT
Indiano

TEM
MST
MST7MDT
PST8PDT
Pacfico
SystemV

WET
regras posix
zone.tab

Se voc quiser definir o fuso horrio, digamos, Cingapura, voc pode digitar:
# Cd sia /
# Ls
Aden
Almaty
Am
Anadyr
Aqtau
Aqtobe
Ashkhabad
Bagd
Bahrain
Baku
Bangkok
Beirute

Chungking
Colombo
Dacca
Damasco
Dili
Dubai
Dushanbe
Gaza
Harbin
Hong_Kong
Hovd
Irkutsk

Jerusalm
Cabul
Kamchatka
Carachi
Kashgar
Katmandu
Krasnoyarsk
Kuala_Lumpur
Kuching
Kuweit
Macau
Magadan

Novosibirsk
Omsk
Phnom_Penh
Pyongyang
Catar
Rangoon
Riyadh
Saigon
Samarkand
Seul
Xangai
Cingapura

Teer
Thimbu
Tquio
Ujung_Pandang
Ulaanbaatar
Ulan_Bator
Urumqi
Vientiane
Vladivostok
Yakutsk
Yekaterinburg
Yerevan

postinstall.mm, v v4.12 (2003/04/02 06:40:31)

97

Captulo 6: Configurao Ps-instalao

Bishkek
Brunei
Calcut
# Cp Cingapura

Istambul
Manila
Jacarta
Moscatel
Jayapura Nicosia
/ Etc / localtime

Taipei
Tashkent
Tbilisi

Note-se que os arquivos / Usr / share / zoneinfo / sia (E os outros diretrios) representam
cidades especficas, e estes podem no corresponder com a cidade em que voc se encontra.
Escolha um no mesmo pas e fuso horrio.
Voc pode fazer isso a qualquer momento em um sistema em execuo.

Servios de rede

Figura 6-4: Menu de servios de rede


O prximo passo configurar o seu equipamento de rede. Figura 6-4 mostra a rede
Menu de servios. H um certo nmero de maneiras de chegar a esse menu:

Se voc estiver executando a instalao personalizada recomendado, voc vai busc-la automaticamente
depois do fim da instalao.

Se voc estiver executando as instalaes Standard e Express, voc no obt-lo em tudo: depois
criao de suas interfaces de rede, sysinstall apresenta-lhe os itens individuais de
Menu Network Services vez.

postinstall.mm, v v4.12 (2003/04/02 06:40:31)

Servios de rede

98

Se voc estiver configurando aps a reinicializao, ou se voc perdeu durante a instalao, selecione
Configurar a partir do menu principal e depois Networking.

O primeiro passo deve ser sempre para configurar as interfaces de rede, de modo que este o lugar onde voc encontra
a si mesmo se voc estiver executando uma instalao padro ou Express.

Configurando interfaces de rede


Figura 6-5 mostra o menu de configurao de rede. Num ecr de 80x25 padro requer
rolar para ver o menu inteiro. Se voc instalou via FTP ou NFS, voc j ter
configurar suas interfaces de rede, e sysinstall no vai fazer as perguntas novamente. A nica
placa de rede real nesta lista xl0, a placa Ethernet. Os outros so padro
hardware que pode tambm ser usado como as interfaces de rede. No tente criar uma conexo PPP aqui;
no h mais a configurao de PPP sysinstall pode manipular. Ns vamos olhar para PPP
configurao no captulo 20.

Figura 6-5: menu de configurao de rede


No nosso caso, escolhemos a placa Ethernet. O prximo menu nos pede para definir a internet
parmetros. Figura 6-6 mostra o menu de configurao de rede aps preencher os valores.
Especifique o nome do host local totalmente qualificado, quando voc guia para a Domnio: campo, o
domnio preenchido automaticamente. Os nomes e endereos correspondendo ao exemplo
rede que olhamos no Captulo 16, na pgina 294. Optamos por chamar essa mquina
presto, eo domnio example.org. Em outras palavras, o nome completo da mquina est
presto.example.org. O endereo IP 223.147.37.2. Nesta configurao, o acesso a todos
o mundo exterior passa por gw.example.org, que tem o endereo IP 223.147.37.5.
O nome do servidor est localizado no mesmo hospedeiro, presto.example.org. O nome do servidor no
execuo quando esta informao necessria, de modo que especificar todos os endereos em formato numrico.

postinstall.mm, v v4.12 (2003/04/02 06:40:31)

99

Captulo 6: Configurao Ps-instalao

O que acontece se voc no tem um nome de domnio? Se voc est se conectando ao global
Internet, voc deve sair e comear uma pgina 318. Mas, entretanto, no falso
lo. Basta deixar os campos em branco. Se voc no est se conectando Internet, claro,
no faz muita diferena o nome que voc escolher.

Figura 6-6: menu de configurao de rede


Como habitual para uma rede classe C, a mscara de rede 255.255.255.0. Voc no precisa preencher
nesta informao, se voc deixar este campo sem preencher-lo, sysinstall insere-lo para
voc. Normalmente, como neste caso, voc no precisa de quaisquer opes adicionais para ifconfig.

Outras opes de rede


Cabe a voc decidir o que as outras opes de rede que voc gostaria de usar. Nenhum dos
seguir so essenciais, e ningum precisa ser feito agora, mas voc pode eventualmente encontrar
algumas das seguintes caractersticas interessantes:

inetd permite conexes ao seu sistema a partir do exterior. Vamos olh-la com mais detalhes
na pgina 446. Embora seja muito til, tambm um risco de segurana se ele est configurado
incorretamente. Se voc no quiser aceitar as conexes de fora, voc pode
incapacitar inetd e reduzir significativamente as possveis exposies de segurana.

Cliente NFS. Se voc quiser montar sistemas de arquivos NFS localizados em outras mquinas, selecione
esta caixa. Um X aparece na caixa, mas nada acontece mais. Veja os Captulos 24 e
25 para mais detalhes sobre NFS.

Servidor NFS. Se voc quiser permitir que outros sistemas para montar sistemas de arquivos localizados neste
mquina, marque essa caixa. Voc receber um aviso pedindo para voc criar o arquivo / Etc / exportaes,
que descreve as condies em que outros sistemas podem montar os sistemas de arquivos
nesta mquina. Voc deve digitar o editor, mas no h necessidade de mudar nada
este ponto. Ns olharemos / Etc / exportaes em mais detalhes na pgina 460.

postinstall.mm, v v4.12 (2003/04/02 06:40:31)

Servios de rede

100

ntpdate e ntpd so programas que estabelecem automaticamente a hora do sistema de tempo


servidores localizados na Internet. Consulte a pgina 156 para mais detalhes. Se desejar, voc pode
selecione o servidor neste momento.

rwhod transmite informaes sobre o estado dos sistemas na rede. Voc


pode usar o ruptime programa para encontrar o uptime de todos os sistemas que executam rwhod, e
rwho para descobrir quem est sendo executado nesses sistemas. Em uma tela de tamanho normal, que voc precisa
para percorrer o menu at encontrar esta opo.

Voc no precisa selecionar sshd: ele j est selecionado para voc. Consulte a pgina 451
para obter mais
Detalhes de ssh e sshd.

Voc no precisa especificar qualquer uma das opes de configurao restantes durante
configurao. Consulte o manual on-line para mais detalhes.

Preferncias de inicializao
O prximo passo o de interesse Startup submenu, o que permite que voc escolha as configuraes
que entrem em vigor, sempre que voc ligar a mquina. Consulte o Captulo 29 para obter detalhes sobre a partida
arquivos.

Figura 6-7: menu de configurao de inicializao

postinstall.mm, v v4.12 (2003/04/02 06:40:31)

101

Captulo 6: Configurao Ps-instalao

Os mais importantes so:

Selecionar APM Se voc estiver executando um laptop. Ele permite que voc desligar o sistema em
suspender para RAM ou suspenso para o disco modo, preservando o sistema atualmente em execuo,
e para continuar a execuo em uma data posterior.

Se voc tiver perifricos USB, selecione usbd , para permitir o usbd daemon, que
reconhece quando os dispositivos USB so adicionados ou removidos.

nomeado inicia um nome do daemon. Use isto se voc est se conectando Internet em tudo, mesmo
Se voc no tem uma configurao de DNS: a configurao padro um cache nome
servidor, o que torna mais rpido de resoluo de nome. Basta selecionar a caixa, voc no precisa fazer
qualquer outra coisa. Ns olharemos nomeado no captulo 21.

Selecionar LPD, a daemon de impressora de linha, se voc tiver uma impressora conectada mquina.
Ns olharemos lpd no Captulo 15.

Selecionar linux Se voc pretende executar binrios Linux. Este certamente o caso,
e, por padro a caixa j est marcada para voc.

Selecione SVR4 e SCO, se voc pretende correr Sistema UNIX V.4 (SVR4) ou SCO
OpenDesktop ou OpenServer (SCO) binrios, respectivamente.

Configurando o mouse
FreeBSD detecta mouse PS / 2 no momento da inicializao s, ento o mouse deve ser ligado quando voc
arrancar. Se no, voc no ser capaz de us-lo. Para configurar, selecione Mouse do
menu de configurao. O menu na Figura 6-8 aparece.

Figura 6-8: Menu Rato


postinstall.mm, v v4.12 (2003/04/02 06:40:31)

Configurando o mouse

102

Com um moderno mouse PS / 2, voc no precisa fazer nenhuma configurao em tudo. Voc s
permitir que o do mouse daemon ou moused. Selecione o item de menu Ativar: voc tem o
possibilidade de mover o mouse e observe que o cursor segue. As chaves no funcionam nesta
Menu: selecione Sim e sair do menu. Isso tudo que voc precisa fazer.
Se voc estiver executando um mouse serial, escolha o item Selecione a porta do mouse e configur-lo para
correspondem com a porta que voc tem, se voc tem um protocolo incomum, voc tambm pode precisar
configur-lo com o Digite menu. Para conexes ainda mais exticas, leia a pgina de manual
para
moused e definir os parmetros apropriados.

Configurando o X
Voc deve ter instalado o X junto com o resto da pgina do sistema de ver 75. Se voc
se no, instale o pacote x11/XFree86. Nesta seo, vamos olhar para o que voc precisa
fazer para obter X instalado e funcionando.
Configurao X mudou muito no decorrer do tempo, e ainda est mudando. O
mtodo atual de configurao do X utiliza um programa chamado xf86cfg, que ainda est em
desenvolvimento, e mostra algumas estranheza. Muito possivelmente, a verso que voc comea
no se comportam de forma idntica, com a seguinte descrio. As diferenas devem ser
relativamente clara, no entanto.

Figura 6-9: Menu principal xf86cfg


A configurao armazenado em um arquivo chamado XF86Config, embora o diretrio mudou
vrias vezes nos ltimos anos. Ela costumava ser em / Etc/X11/XF86Config ou
/ Etc/XF86Config, mas o actual lugar preferido / usr/X11R6/lib/X11/XF86Config. O
postinstall.mm, v v4.12 (2003/04/02 06:40:31)

103

Captulo 6: Configurao Ps-instalao

servidor procura pelo arquivo de configurao em vrios lugares, ento se voc estiver atualizando a partir de um
verso anterior, certifique-se de remover todos os arquivos de configurao antigos. Vamos olhar para o
contedo do arquivo em detalhes no Captulo 28. Nesta seo, vamos ver como
gerar uma configurao utilizvel.
A partir do menu de configurao, selecione XFree86 e depois xf86cfg. H um pequeno atraso
enquanto xf86cfg cria um arquivo de configurao inicial, ento voc v o menu principal da figura
6-9. Este aplicativo executado, sem saber o que o hardware , portanto, o processamento
bastante bsico. A janela esquerda mostra o layout do hardware, ea janela
direita est disponvel no caso do seu mouse no est funcionando. Seleccione o indivduo
componentes com o mouse ou o teclado numrico. Por exemplo, para configurar o
mouse, selecione a imagem no canto superior esquerdo:

Figura 6-10: Menu rato xf86cfg


Com toda a probabilidade de que no ser necessrio. O arquivo de configurao que xf86cfg j tem
criado pode ser suficiente, ento voc pode simplesmente sair e salvar o arquivo. Voc provavelmente vai querer
mudar algumas coisas, no entanto. A seguir, vamos percorrer as mais provveis mudanas
voc pode querer fazer.
Configurando o teclado
Voc pode selecionar um nmero de opes para o teclado, incluindo layouts principais alternativas.
Voc provavelmente no precisar mudar nada aqui.

Figura 6-11: Menu teclado xf86cfg


postinstall.mm, v v4.12 (2003/04/02 06:40:31)

Configurando o X

104

Descrevendo o monitor
Provavelmente a coisa mais importante que voc precisa mudar so as definies para o monitor
e a placa de exibio. Alguns monitores modernos e mais placas de vdeo AGP suprir a
informao, mas dispositivos mais antigos no. Neste exemplo vamos configurar a Hitachi CM813U
monitor, que no se identifica com xf86cfg. Selecione a imagem no monitor, na parte superior
direito da janela, ento Configurar Monitor (s). Voc v:

xf86cfg no sabe nada sobre o monitor, por isso assume que ele s pode exibir
resolues VGA padro de 640x480. Os parmetros importantes para mudar so os
freqncias horizontal e vertical. Voc pode selecionar uma das possibilidades mencionadas, mas
a no ser que voc no sabe de suas especificaes do monitor, voc deve definir exatamente o
freqncias que ele pode fazer. Neste caso, o monitor de frequncias horizontais de suporte 31
kHz a 115 kHz e freqncias verticais de 50 Hz a 160 Hz, e isso que ns entramos.
Ao mesmo tempo, mudar o identificador para indicar o nome do monitor:

Figura 6-12: menu do monitor xf86cfg


postinstall.mm, v v4.12 (2003/04/02 06:40:31)

105

Captulo 6: Configurao Ps-instalao

Selecione OK para voltar ao menu anterior.


Configurando a placa de vdeo
xf86cfg reconhece placas de vdeo mais modernas, incluindo, provavelmente, todas as placas AGP, assim voc
provavelmente no precisa fazer nada adicional para configurar a placa de vdeo. Se voc encontrar
que o arquivo de configurao resultante no sabe sobre o seu carto, voc ter que selecionar o
smbolo de carto no topo do ecr. Mesmo que o carto tenha sido reconhecida, voc receber esse
exibir:

A nica indicao que voc tem que xf86cfg reconheceu o carto (aqui uma Matrox G200)
que ele selecionou mga para o nome do motorista. Se voc precisa mudar, desloque-se a
lista at encontrar o carto:

Figura 6-13: xf86cfg menu de seleo carto


postinstall.mm, v v4.12 (2003/04/02 06:40:31)

Configurando o X

106

Seleo de resolues de tela


A resoluo da tela definido por Linhas de modo que ns vamos olhar em detalhe na pgina
510. Os nomes referem-se a resoluo que oferecem. Por padro, o xf86cfg s lhe d
640x480, ento voc certamente vai querer adicionar mais. Primeiro, escolha o campo na parte superior esquerda da
tela:

Figura 6-14: seleo de configurao xf86cfg


A partir deste menu, selecione Configurar Modeline. Voc v:

Figura 6-15: xf86cfg menu de linha de modo


Se voc passar o cursor sobre a imagem da tela, voc ver o seguinte aviso:

Figura 6-16: xf86cfg aviso linha de modo


Levar a srio. Vamos olhar para esta questo novamente no captulo 28 na pgina 508. Para uma primeira
configurao, voc no deve usar esta interface. Em vez disso, selecione Adicione o modo padro VESA no
topo. Ns temos um outro menu:
postinstall.mm, v v4.12 (2003/04/02 06:40:31)

107

Captulo 6: Configurao Ps-instalao

Figura 6-17: xf86cfg linhas modo VESA


Selecione as resolues que voc quer com a maior frequncia que o seu hardware pode suportar.
Neste caso, voc pode selecionar 1024x768 @ 85 Hz, porque ainda bem dentro da faixa
do monitor. Responder Sim a questo de saber se voc deseja adicion-lo. Voc pode
selecionar quantas resolues quiser, mas a janela do Modeline no mostr-los.
Voc tambm pode usar a janela de Modeline para ajustar a tela, mas mais fcil com outra
programa xvidtune. Veremos esses detalhes no captulo 28.
Por fim, selecione Desistir na parte inferior direita da tela. Voc comea esta janela:

Figura 6-18: xf86cfg quit


Quando voc responder Sim, voc tem uma pergunta semelhante perguntando se voc deseja salvar
o
definio de teclado. Uma vez que voc tiver feito isso, voc est acabado.

postinstall.mm, v v4.12 (2003/04/02 06:40:31)

Configurando o X

108

Configurao de desktop
Em seguida, selecione rea de Trabalho a partir do menu de configurao. Voc ganha este menu:

Figura 6-19: menu Desktop select


Qual deles voc instalar? Voc tem a escolha. Se voc sabe o que quer, us-lo.
H muitos mais gerenciadores de janelas que mostrado aqui, ento se voc no v o que voc est
procurando, verifique a categoria x11-wm na Coleo de Ports. O menu de seleo d
voc os mais populares: Gnome, Afterstep, iluminao, KDE, Windowmaker e
fvwm2. Neste livro, vamos considerar o KDE ambiente de trabalho ea fvwm2 gerenciador de janelas.
KDE confortvel, mas requer uma grande quantidade de recursos. Gnome semelhante em tamanho para o KDE.
Em contraste, fvwm2 muito mais rpido, mas exige uma boa quantidade de configurao. Vamos
olhar para KDE e fvwm2 no Captulo 7.

Configurao adicional X
Neste ponto, estamos quase feito. Algumas coisas ainda precisam ser feitas:

Decida como voc deseja iniciar X. Voc pode faz-lo explicitamente com a startx comando,
ou voc pode entrar diretamente com o X xdm Display Manager. Se voc escolher startx,
voc no precisa fazer nenhuma configurao adicional.

Para cada usurio que executa X, criar um arquivo de configurao X.

postinstall.mm, v v4.12 (2003/04/02 06:40:31)

109

Captulo 6: Configurao Ps-instalao

Configurando o xdm
Para ativar xdm, edite o arquivo / etc / ttys. Por padro, ele contm as seguintes linhas:
ttyv8

"/ Usr/X11R6/bin/xdm-nodaemon" xterm

off seguro

Usando um editor, mudar o texto fora a em:


ttyv8

"/ Usr/X11R6/bin/xdm-nodaemon" xterm

em proteger

Se voc fizer isso a partir de um sistema em execuo, enviar um sinal HUP para inicializao para fazer com que re-ler o
arquivo de configurao e start xdm:
# Kill -1 1

Isto provoca um xdm tela a aparecer / Dev/ttyv8. Voc pode acess-lo com Alt-F9.
Configurao do usurio X
Se voc est comeando X manualmente com startx, crie um arquivo. xinitrc em seu diretrio home.
Este arquivo contm comandos que so executados quando o X for iniciado. Selecione a linha que
corresponde ao seu gerenciador de janelas ou ambiente de trabalho a partir da lista a seguir, e coloc-lo em
. Xinitrc:
startkde
exec gnome-session
fvwm2

para kde
para o Gnome
para fvwm2

Se voc estiver usando xdm, voc coloca o mesmo contedo do arquivo. xsession em sua casa
diretrio.

Reiniciando o novo sistema


Quando voc chegar at aqui, voc deve ter um sistema funcional. Se voc ainda est instalando a partir de
CD-ROM, voc reiniciar por sair sysinstall. Se voc j tiver reiniciado, voc sair
sysinstall e reiniciar com:
# Shutdown-r now

No basta pressionar o boto de reset ou desligue-o. Isso pode causar perda de dados. Vamos
olhar para esta questo com mais detalhes na pgina 537.

postinstall.mm, v v4.12 (2003/04/02 06:40:31)

Neste captulo:
Usurios e grupos
Ganhando acesso
O desktop KDE
A janela fvwm2
gerente
Alterando o X
exibir
Conseguir um shell
Arquivos e nomes de arquivos
Diferenas entre
Microsoft
O editor Emacs
Parando o sistema

As ferramentas do
comrcio
Portanto, agora que voc instalou FreeBSD, e ele inicia com sucesso a partir do disco rgido. Se
voc novo no FreeBSD, o seu primeiro encontro com ele pode ser bastante intrigante. Voc provavelmente
no esperava ver as mesmas coisas que voc sabe de outras plataformas, mas voc no pode
esperar o que voc quer ver:
FreeBSD (freebie.example.org) (ttyv0)
sesso:

Se voc tiver instalado xdm, voc vai pelo menos conseguir um display grfico, mas ainda pede para voc fazer logon
e fornecer uma senha. Onde voc vai a partir daqui?
No h espao neste livro para explicar tudo o que h sobre como trabalhar com FreeBSD,
mas nos seguintes alguns captulos que eu gostaria de fazer a transio mais fcil para as pessoas que
ter experincia prvia com plataformas da Microsoft ou com outros sabores de UNIX. Voc pode
encontrar muito mais informaes sobre esses tpicos em UNIX para o Impaciente, por Paul W.
Abrahams e Bruce R. Larson, UNIX Power Tools, por Jerry Peek, Tim O'Reilly, e
Mike Loukides e UNIX Administration Handbook sistema, por Evi Nemeth, Garth
Snyder, Scott Seebass e Trent R. Hein. A terceira edio deste livro cobre tambm
FreeBSD verso 3.2. Veja o Apndice A, Bibliografia, para mais informaes.
Se voc veio da Microsoft, voc vai notar um grande nmero de diferenas entre
UNIX e Microsoft, mas na verdade os dois sistemas tm mais em comum do que os
olho. De fato, em meados dos anos 80, um dos objetivos declarados do MS-DOS 2.0 era faz-lo
mais UNIX-like. Voc o juiz de quo bem sucedido que a tentativa era, mas se voc sabe
unixref.mm, v v4.16 (2003/04/02 06:41:29)

111

O FreeBSD completo

112

a interface de linha de comando do MS-DOS, voc vai notar algumas semelhanas nos seguintes
sees.
Neste captulo, vamos olhar para FreeBSD a partir da perspectiva de algum com computador
experincia, mas sem fundo UNIX. Se voc fazer tem um fundo UNIX, voc pode
Continuo a achar interessante.
Se voc est vindo de uma plataforma Microsoft, vai ser usado para fazer quase tudo
com uma interface grfica. Neste livro, eu recomendo que voc use X e, possivelmente, um
desktop, mas a maneira de us-lo ainda muito diferente. FreeBSD, como outros UNIX-like
sistemas, lugares muito maior nfase no uso de texto. Isto pode parecer primitivo, mas
na verdade, o oposto verdadeiro. mais fcil apontar e clicar do que escrever, mas voc pode expressar
-se com muito mais preciso e muitas vezes mais rapidamente com uma interface de texto.
Como resultado, as duas ferramentas mais importantes que voc ir usar com o FreeBSD so o concha e a
editor. Usar o Shell para emitir comandos diretos para o sistema, eo editor de preparar
textos. Ns vamos olhar para estas questes com mais detalhes neste captulo. No captulo 8, Tomar
controle, vamos olhar para outros aspectos do sistema. Primeiro, porm, precisamos ter acesso ao
o sistema.

Usurios e grupos
Provavelmente, a maior diferena entre a maioria dos sistemas operacionais de PC e FreeBSD tambm
leva mais tempo para se acostumar: FreeBSD um sistema multi-usurio, multi-tasking. Este
significa que muitas pessoas podem usar o sistema ao mesmo tempo, e cada um pode fazer vrias coisas ao
mesmo tempo. Voc pode pensar'' Por que eu iria querer fazer isso?''. Uma vez que voc se acostumou a
essa idia, no entanto, voc nunca vai querer fazer sem ele novamente. Se voc usar o X Window
Sistema, voc ver que todas as janelas podem estar ativos ao mesmo tempo, voc no tem que
selecion-los. Voc pode acompanhar alguma atividade no fundo em outra janela enquanto
escrevendo uma carta, testando um programa, ou jogar um jogo.
Antes que voc possa acessar um sistema FreeBSD, voc deve estar registrado como um utilizador. O
registo define um certo nmero de parmetros:

A nome de usurio, muitas vezes tambm chamado de ID de usurio. Este um nome que voc usa para

identificar
-se ao sistema.
A senha, um dispositivo de segurana para garantir que outras pessoas no abusar do seu ID de usurio.
Para entrar, voc precisa especificar o ID do usurio ea senha correta. Quando voc
digite a senha, no aparece nada na tela, para que as pessoas olhando sobre seu
ombro no pode l-lo.
Pode parecer estranho para ir a tais medidas de segurana em um sistema que s voc usa.
A incidncia de problemas de segurana relacionados com a Internet nos ltimos anos tem mostrado
que no estranho em tudo, apenas o senso comum. Sistemas da Microsoft ainda esto sujeitos
a uma srie interminvel de falhas de segurana. Sistemas FreeBSD no so.

unixref.mm, v v4.16 (2003/04/02 06:41:29)

113

Captulo 7: As ferramentas do comrcio

A shell, um programa que l os comandos e os executa. MS-DOS usa


o programa COMMAND.COM para executar esta funo. UNIX tem uma grande variedade de
shells: as conchas tradicionais UNIX so o shell Bourne sh eo shell C csh, mas
FreeBSD tambm fornece bash, tcsh, zsh e outros. Eu pessoalmente uso o bater shell,
e os exemplos neste livro so baseados nele.

A diretrio home. O sistema pode ter vrios usurios, de modo que cada um precisa de uma separada
diretrio para armazenar seus arquivos privados. Normalmente, os usurios tm um diretrio
/ Home / username, onde username o nome que eles usam para entrar Quando voc faz logon no
para o sistema, o shell define o diretrio atual para o diretrio home. Nele, voc
pode fazer o que quiser, e normalmente esto protegidos contra acesso por outros usurios. Muitos
escudos, incluindo o bater shell usado nestes exemplos, use a notao especial ~
(Til) para representar o nome do diretrio home.

A grupo nmero. UNIX recolhe usurios em grupos que tm acesso especfico comum
permisses. Quando voc adicionar um usurio, voc precisa fazer dele um membro de uma especfica
grupo, que est inscrita no as informaes de senha. O seu nmero de grupo indiretamente
ajuda a determinar o que permitido fazer no sistema. Como veremos na pgina 181,
seu usurio e grupo determinar o que voc tem acesso ao sistema. Voc pode pertencer
a mais de um grupo.
Os nmeros de grupo geralmente tm nomes que lhes esto associados. Os nomes dos grupos e
nmeros so armazenados no arquivo / Etc / group. Alm disso, este arquivo pode conter IDs de usurio
de usurios que pertencem a outro grupo, mas que esto autorizados a pertencer a este grupo como
bem.
Se voc encontrar o conceito de grupos de confuso, no se preocupe com eles. Voc pode comear por
completamente feliz sem us-los em tudo. Voc s ver referncias a eles quando
vir a discutir as permisses de arquivo. Para mais informaes, veja a pgina man
grupo (5).

No momento em que voc chegou aqui, voc deve ter definido um nome de usurio, como recomendado na pgina
94. Se voc no tiver, voc vai ter que logar como raiz e criar um tal como descrito aqui.

Ganhando acesso
Depois de ter um nome de usurio, voc pode fazer login no sistema. J que voc tem uma escolha:
FreeBSD oferece terminais virtuais eo X Window System. O primeiro exibido
texto simples no monitor, enquanto o segundo usa as capacidades grficas do sistema. Uma vez
execuo, voc pode mudar de um para o outro, mas voc tem a opo de qual interface
voc usa pela primeira vez. Se voc no fizer nada, voc recebe um terminal virtual. Se voc executar xdm, voc
obter X.
Ainda relativamente incomum de usar xdm, e em muitos casos voc pode no querer X em
tudo, por exemplo, se voc estiver executando o sistema como um servidor. Como resultado, ns vamos olhar para o
'' Convencional'' de login em primeiro lugar.
Se voc est entrando em um terminal virtual, voc ver algo parecido com isto:
unixref.mm, v v4.16 (2003/04/02 06:41:29)

Ganhando acesso

114

login: grog
Senha:
senha no mostra na tela
ltimo login: Fri 11 de abril de Canberra 16:30:04
Copyright (c) 1980, 1983, 1986, 1988, 1990, 1991, 1993, 1994
Os Regentes da Universidade da Califrnia. Todos os direitos reservados.
FreeBSD 5.0-RELEASE (FREEBIE) # 0: ter 31 dez 19:08:24 CST 2002
Bem-vindo ao FreeBSD!
Voc tem e-mail.
apagar H, matar U, intr C, o estado T
Niklaus Wirth lamentou que, enquanto os europeus pronunciar seu nome
corretamente (Ni-klows Virt), os americanos sempre mangle-lo em
(Nick-les Worth). O que significa dizer que os europeus cham-lo pelo nome, mas
Americanos cham-lo pelo valor.
=== Grog @ freebie (/ dev/ttyv0) ~ 1 ->

H um monte de coisas aqui. Vale a pena olhar para ele com mais detalhes:

O programa pede que voc faa login em uma janela de terminal chamado getty. L-se em
seu ID eo usurio inicia um programa chamado login e passa o ID do usurio para ele.

login pede a senha e verifica o seu ID de usurio.


Se o ID de usurio e senha esto corretos, login inicia o shell designado.

Durante o arranque, o shell examina uma srie de arquivos. Veja a pgina de manual para o seu
shell em particular para obter mais detalhes sobre o que eles so. Neste caso, porm, podemos ver o
resultados: um arquivo contm a ltima vez que voc logado, outra contm o
Mensagem do dia (/ Etc / motd), e um terceiro informa que voc tem e-mail. O
concha imprime a mensagem do dia textualmente, neste caso, contm informao
sobre o nome do kernel e uma mensagem de boas-vindas. O escudo tambm imprime
informaes sobre a ltima vez login (neste caso, a partir de um sistema remoto) e se voc
tem e-mail.

A linha de'' apagar H, matar U, intr C, o estado T'' parece estranha.


dizendo que os caracteres de controle de edio atual. Ns vamos olhar para estes na pgina 131.
Neste ponto, o shell altera o diretrio atual para o seu diretrio home. Tem
nenhuma sada na tela para indicar isso.

O shell executado a fortuna programa, que imprime uma citao aleatria a partir de uma
banco de dados de biscoitos da sorte''.'' Neste caso, temos uma mensagem sobre Niklaus Wirth,
o inventor da linguagem de programao Pascal.

Finalmente, a ltima linha um alerta, a informao que lhe diz que o shell est pronto
para entrada.

O prompt ilustra uma srie de coisas sobre o ambiente UNIX. Por padro, o sh
e os amigos com um prompt de $, E csh e os amigos com um prompt de %. Voc pode mud-lo para
qualquer coisa que voc quiser com as conchas UNIX. Voc no tem que gostar de meu especial
verso, mas vale a pena entender o que ele est tentando dizer.
A primeira parte, ===, apenas para torn-lo mais fcil de encontrar em uma grande lista em um
display X. Um
xterm janela num cran X de alta resoluo pode conter at 120 linhas, e pesquisando
para comando solicitar pode ser no-trivial.
unixref.mm, v v4.16 (2003/04/02 06:41:29)

115

Captulo 7: As ferramentas do comrcio

Em seguida, grog @ freebie o meu ID de usurio eo nome do sistema no qual estou trabalhando, em
o formato RFC 2822 usado para IDs e-mail. Vrios sistemas e vrios usurios podem ser
presentes numa nica tela X. Dessa forma, eu posso descobrir qual usurio eu sou eo que
sistema que estou executando.
/ Dev/ttyv0 o nome do dispositivo terminal. Isso s vezes pode ser til.
~ o nome do diretrio home. A maioria das conchas, mas no todos eles, apoiar esta
simbolismo.
1 o nmero de alerta. Cada vez que voc digitar um comando, ele associado com este
nmero e o nmero de aviso incrementado. Uma maneira de re-executar o comando
para introduzir ! 1 (Dois pontos de exclamao eo nmero do comando). Ns olharemos
os mais confortveis na pgina 131.
Para iniciar o X a partir de um shell terminal virtual, use o startx comando:
$ Startx

Se voc usar xdm, voc ignorar os terminais virtuais e ir direto para X. Digite seu usurio
nome e senha para o prompt de login ou o xdm tela de login, e imprensa Enter. Se voc
utilizar o xdm login, voc vai direto para X.

Figura 7-1: KDE exibio


unixref.mm, v v4.16 (2003/04/02 06:41:29)

Ganhando acesso

116

De qualquer maneira, supondo que voc tenha instalado e configurado kde, voc vai ter uma exibio
semelhante ao da Figura 7-1. Este exemplo inclui quatro janelas que no esto presentes em
inicializao. No arranque da parte central da tela est vazio. Ns vamos olhar para as janelas
mais abaixo.

O desktop KDE
KDE um sistema complicado, e uma boa documentao est disponvel
em
http://www.kde.org/documentation/. Uma vez que voc tem o KDE em execuo, voc pode acessar o
mesma informao atravs do cone de ajuda no painel na parte inferior (o cone anel de vida). O
seguindo descrio d uma breve introduo.
O visor KDE contm um certo nmero de reas distintas. No topo est um menu opcional, a
o fundo quase opcional painel, e no meio da tela reservada para
janelas.

O menu do desktop
O Desktop menu est no topo da tela. Ele fornece a funcionalidade que no
especfico para uma aplicao particular. Selecione as categorias individuais com o mouse. Para
exemplo, a Novo Menu parecido com este:

Figura 7-2: Menu KDE


Como o menu indica, voc pode usar esses menus para criar novos arquivos.
O Painel
Na parte inferior da tela o painel, a qual consiste de um nmero de campos. A esquerda
seco mo usada para iniciar aplicaes.

A letra K estilizado na extrema esquerda o Iniciado aplicao. Quando voc selecion-lo, uma
unixref.mm, v v4.16 (2003/04/02 06:41:29)

117

Captulo 7: As ferramentas do comrcio

menu vertical longo aparece no lado esquerdo da tela e permite iniciar programas
('' Aplicaes'') ou o acesso apenas sobre qualquer outra funo.
Em seguida, vem um cone chamado'' Mostrar rea de trabalho.'' Essa uma maneira conveniente de iconify todo o
janelas atualmente no desktop.
Os demais cones nesta parte do painel representam diversas aplicaes.

O konsole emulador de terminal.

O centro de comando, o que voc usa para configurar o KDE.

O sistema de ajuda.

O acesso ao diretrio home com o navegador konqueror.

O acesso Web, tambm com o navegador konqueror.

O Kmail MUA.

O KWord processador de texto, o que pode compreender documentos do Microsoft Word.

O Kspread planilha.

O Kpresenter pacote de apresentao.

O Kate editor.

A prxima seo do painel contm alguns botes de controle e informaes sobre o


layout de rea de trabalho atual:

A seo esquerda mostra o contedo atual de quatro telas, numeradas de 1 a 4.


Tela 1 a tela exibida no momento, voc pode selecionar um dos outros, movendo o
cursor na direo correspondente ou selecionando o campo com o mouse.
direita do que so cones para as janelas ativas no momento. O tamanho e expande
contratos, dependendo do nmero de diferentes tipos de janela ativa. Se voc selecionar um
desses cones com o boto esquerdo do mouse, ele vai iconify ou deiconify ('''' minimizar ou
Maximizar'''') da janela. Se voc tiver mltiplas xterms ativo, voc ter apenas uma
cone. Neste caso, se voc selecionar o cone, voc receber um outro menu de seleo de pop-up para
permitem que voc escolha a janela especfica.
A parte direita do painel contm mais trs campos:

unixref.mm, v v4.16 (2003/04/02 06:41:29)

O desktop KDE

118

O primeiro mostra um cadeado estilizado (para bloquear a sesso quando deixar o


mquina; desbloqueio inserindo a senha) e um switch off estilizado, para sair
da sesso.

A prxima seo mostra um conector de alimentao estilizada, que mostra o poder atual
estado da mquina, e uma rea de transferncia.

O lado direito mostra um relgio digital.

Provavelmente a parte mais til desta seo do painel no muito bvia: o direito do
seta apontando permite remover o painel, se voc achar que est no caminho. A totalidade
painel substitudo por uma nica seta apontando para a esquerda na extrema direita da tela.
Usando o mouse
Por padro, o kde s usa os botes esquerdo e direito do mouse. Em geral, o boto esquerdo
usado para selecionar um determinado boto, eo boto direito usado para um menu auxiliar.
Manipulando janelas
Voc ver que cada janela tem uma moldura em torno dele com uma srie de recursos. Em X
terminologia, eles so chamados decoraes. Especificamente:

H uma barra de ttulo com o nome do programa. Se voc selecionar a barra de si mesmo, voc levanta
a janela acima de todos os outros. Se voc segurar o boto na barra de ttulo, voc pode
mover a janela.

No lado esquerdo da barra de ttulo existe um logotipo X. Se voc selecionar este logo, voc ter um menu
de operaes de janela.

direita da barra de ttulo, h trs botes que voc pode selecionar. A esquerda
maximize a janela, o do meio maximiza da janela, tornando-se levar at o
tela inteira, eo outro direita mata a aplicao. Se a janela j
maximizada, o boto do meio restaura-lo ao seu tamanho anterior.

Voc pode selecionar qualquer canto da janela, ou qualquer um dos outros lados, para alterar o tamanho
da janela.

O gerenciador de janelas fvwm2


Se voc vem de um fundo PC convencional, voc no deve ter muita dificuldade
com KDE. um ambiente relativamente completa e integrada. Mas no realmente UNIX.
Se voc vem de um ambiente UNIX, voc pode achar que muito abrangente. Voc pode
Tambm acho que h atrasos significativos quando inicia novas aplicaes.
UNIX tem uma abordagem muito diferente para as janelas. No h ambiente de trabalho, apenas uma janela
gerente. Ele ocupa menos espao em disco, menos tempo de processador e menos espao na tela. Por
padro, vem com o XFree86 twm gerenciador de janelas, mas isso realmente um pouco primitivo.
Com mquinas modernas, no h nenhuma razo para escolher tal gerente bsica janela. Voc
Pode, no entanto, considerar que fvwm2 mais o seu estilo de KDE.
unixref.mm, v v4.16 (2003/04/02 06:41:29)

119

Captulo 7: As ferramentas do comrcio

Comeando fvwm2
Como KDE, instale fvwm2 a partir da coleo de ports. No projetado para funcionar
completamente corretamente fora da caixa, mas ela no funciona. Tal como acontece com o KDE, a primeira coisa
voc precisa fazer criar um . Xsession ou . Xinitrc arquivar, dependendo se voc est
funcionamento xdm. Deve conter, no mnimo, a seguinte linha:
fvwm2

Comece X da mesma forma que voc fez para o KDE. Desta vez, voc v, aps o incio da mesma
aplicaes como antes:

Esta imagem mostra semelhanas e diferenas em relao com KDE. As semelhanas


incluem:

Cada janela tem uma moldura e um ttulo. A forma exata da decorao diferente,
mas o objectivo o mesmo. No h'' boto'' Fechar aplicao: para a maioria UNIX
aplicaes, voc deve obter o programa para sair ao invs de mat-lo.

H uma barra de tarefas no canto inferior direito, tendo-se apenas a metade da largura da tela.
A janela ativa no momento (o xterm no lado esquerdo, neste exemplo) realado.

O padro fvwm2 display tambm tem quatro telas, e da barra de tarefas mostra a posio
das janelas na barra de tarefas.

unixref.mm, v v4.16 (2003/04/02 06:41:29)

O gerenciador de janelas fvwm2

120

Ainda assim, existem uma srie de diferenas tambm:

A menos que voc tenha uma mquina topo de gama, muito mais rpido no que faz.

O fundo (o janela root) no tem qualquer padro, apenas um cinza crossescotilha.

Voc pode mover de uma tela para a outra usando o cursor, e as janelas podem
sobrepem. Neste exemplo, a galeon janela do navegador web vai at a tela
a seguir, e a janela Emacs passa sobre todas as quatro telas, tal como o mostrador na tarefa
bar mostra. Com o KDE, a nica maneira de exibir o resto destas janelas mover
a janela.

Paradoxalmente, voc pode fazer muito mais com o mouse. Na janela de raiz, esquerda
boto do mouse d-lhe um menu para iniciar vrios programas, tanto a nvel local e
remotamente, e tambm vrios utilitrios de janela. O boto do meio lhe d direto
acesso aos utilitrios de manipulao de janelas, eo boto direito d um drop-down
lista para selecionar qualquer uma das janelas actualmente activa:

Os menus acima mostram um dos problemas: olhar para os nomes do sistema esquerda
submenu (Dunga, snoopy e amigos). Eles no existem em nossa rede de amostra, eo
possibilidade deles existentes em sua rede so muito baixos tambm. Eles so codificados em
o arquivo de configurao de amostra, / Usr/X11R6/etc/system.fvwm2rc. Para usar fvwm2 eficaz,
voc vai ter que modificar o arquivo de configurao. A melhor coisa a fazer fazer uma cpia do
/ Usr/X11R6/etc/system.fvwm2rc em seu prprio diretrio, como ~ / .fvwm2/.fvwm2rc. Ento voc
pode ter muita diverso aprimorando o arquivo para fazer exatamente o que voc quer que ele faa. Claramente, KDE
mais fcil de configurar.

Alterar o visor X
Quando voc configurar o seu XF86Config arquivo, voc pode ter especificado mais de uma
resoluo. Por exemplo, na pgina 107 foram selecionados a resoluo 1024x768 adicional
pixels. Quando voc iniciar o X, ele seleciona automaticamente a primeira resoluo, neste caso
640x480. Voc pode alterar a resoluo anterior (aquele esquerda na lista) por
pressionando a Ctrl-Alt-Teclado - chave, e para a seguinte resoluo (aquele para a direita
na lista) com Ctrl-Alt-Teclado +. Teclado + e Teclado - referem-se a + e - smbolos
no teclado numrico direita do teclado, voc no pode usar o + e - smbolos
unixref.mm, v v4.16 (2003/04/02 06:41:29)

121

Captulo 7: As ferramentas do comrcio

o teclado principal para esta finalidade. As listas de envolver em torno de: no nosso exemplo, se o seu
resoluo atual de 640x480, e voc pressionar Ctrl-Alt-teclado -, o visor muda para
1024x768. uma idia muito boa para manter a resoluo padro de 640x480 at que voc tenha
depurado seu XF86Config parmetros: 640x480 quase sempre funciona, por isso, se o seu monitor
confuso, voc pode simplesmente voltar para uma boa exibio conhecido com uma nica tecla.

Seleo de profundidade de pixel


Voc pode configurar a maioria das placas de vdeo para exibir um nmero de diferentes profundidades de pixel (a
um nmero diferente de bits por pixel, o que se traduz em um nmero diferente de cores).
Ao iniciar o X, no entanto, o padro de 8 bits por pixel (256 cores), o que muito
m interpretao. Para inici-lo com um nmero diferente, especifique o nmero de avies. Para
exemplo, para iniciar com 32 bits por pixel (4294967296 cores), digite:
$ Startx --- bpp 32

Com placas de vdeo mais velhas, que tinham exposio relativamente limitada de memria, no houve uma
tradeoff entre a mxima resoluo e profundidade mxima de pixel. Modernas placas de vdeo
j no tem essa limitao. Vamos olhar para esta questo com mais detalhes na pgina 519.

Conseguir um shell
Como vimos no incio do captulo, suas principais ferramentas so o reservatrio eo editor,
e isso o que vimos nas telas de amostra. Mas quando voc comea X, eles no esto l:
voc precisa comear a eles.
No KDE, voc tem duas maneiras para iniciar uma janela de terminal:

Voc pode selecionar o cone que mostra um monitor com uma concha na frente dele, o terceiro do
deixado na parte inferior do exemplo acima. Isso inicia o konsole emulador de terminal.

Voc pode iniciar uma xterm premindo Alt-F2. Voc ver uma janela como a da
centro-esquerda da Figura 7-1, digite o texto xterm (Como mostrado) e prima Correr ou Entrar
chave.

Obviamente, a primeira a abordagem pretendida, e mais fcil. No entanto, eu recomendo


utilizao xterm pelo menos at que voc tem certeza que quer ficar com KDE: h algumas sutis
diferenas, e konsole destina-se a trabalhar com kde s. Se voc ficar com KDE,
deve alterar a configurao do konsole boto para iniciar xterm em vez disso, que
relativamente simples.
Em fvwm2, voc comea um xterm no menu esquerdo do mouse, como mostrado acima.

unixref.mm, v v4.16 (2003/04/02 06:41:29)

Conseguir um shell

122

Shell bsico
A coisa mais bsica que voc pode fazer com a casca para iniciar um programa. Considere programa
nomes como comandos: como voc pode pedir a algum para'' lavar os pratos'' ou'' cortar a
gramado,'' voc pode dizer ao shell para'' remover esses arquivos'':
$ Rm arquivo1 arquivo2 file3

Isso inicia um programa chamado rm (Retirar), e d-lhe uma lista de trs nomes de arquivos para
remover.
Se voc est removendo um monte de arquivos, isto pode demorar um pouco. Considere remover a
hierarquia diretrio inteiro / Usr / obj, que criado quando a construo de uma nova verso do
sistema (ver pgina 587). Esta hierarquia diretrio contm cerca de 15.000 arquivos e
diretrios, e vai demorar um pouco para remov-lo. Voc pode fazer isso com a seguinte
comando:
# Rm-rf / usr / obj &

Neste exemplo, temos um par de opes levou em por um hfen (-) e tambm o carter
& no final da linha.

O r opo diz rm a recursivamente descer para os subdiretrios. Se voc no


especificar isso, seria remover todos os arquivos no diretrio / Usr / obj e depois sair,
reclamando que no pode excluir diretrios.

O f Opo (fora) diz rm para continuar no erro, caso contrrio, se alguma coisa der errado,
ele vai parar.

O & personagem no final da linha diz ao shell (no rm) para continuar aps o incio
o programa. Ele pode funcionar por algum tempo, e no h necessidade de esperar por ele.

Opes
No exemplo anterior, vimos um par de opes. Por conveno, eles vm entre
o nome do comando e outros parmetros, e eles esto identificados porque eles comeam com um
hfen (-). H muita variao, no entanto, dependendo do indivduo
programa.

Por vezes, como no exemplo anterior, as opes de consistir de uma nica letra e pode
muitas vezes, ser unidas.

Alguns programas, como o alcatro e ps, no insista em levar o hfen-in. No captulo 8,


vamos ver o comando:
# Ps Waux

unixref.mm, v v4.16 (2003/04/02 06:41:29)

123

Captulo 7: As ferramentas do comrcio

Este comando tambm podia ser escrito:


# Ps-Waux

Voc tambm pode vir atravs de programas que se recusam a aceitar o hfen em tudo.

Por vezes, podem ter valores de opes. Por exemplo, no captulo 23, vamos ver:
# Tcpdump-i ppp0 hub.freebsd.org anfitrio

Aqui, ppp0 um argumento para o Eu opo. Em alguns casos, deve ser escrita com um
espao, em outros, ele deve ser escrito sem um espao, e em outros ainda, pode ser
escrita de qualquer maneira. Preste ateno a este detalhe ao ler as pginas de manual.

Em outros casos, eles podem ser palavras-chave, caso em que eles tm de ser escritas
separadamente. O projeto GNU particularmente apaixonado por este tipo de opo. Por exemplo, a
na construo do sistema, voc pode ver invocaes compilador como estes:
cc-O-pipe-DINLINE = rpcgen_inline-Wall-WNO-format-Y2K-WNO-inicializado \
-D__FBSDID = __RCSID-c / usr / src / usr.bin / rpcgen / rpc_main.c

Com excepo do ltimo parmetro, todos os textos so opes, tal como o hfen
sugere.

As opes so especficas para comandos especficos, embora muitas vezes vrios comandos tentar
usar as mesmas letras para significar o mesmo tipo de coisa. As tpicas so v para verboso
sada, q para a sada tranquila (ou seja, menos do que o normal).

s vezes voc pode ter problemas quando voc fornecer um parmetro que se parece com um
opo. Por exemplo, como voc remover um arquivo chamado -Rf? H um certo nmero de
solues para este problema. Neste exemplo, voc poderia escrever:
$ Rm. /-Rf

Este um arquivo alternativo conveno de nomeao que veremos novamente na pgina 126.

Parmetros shell
Quando voc chama um programa com a casca, ele primeiro analisa a linha de entrada antes de pass-lo
para o programa: verifica-se a linha para um nmero de parmetros (chamado argumentos na C
linguagem de programao). Normalmente, os parmetros so separados por um espao em branco, ou uma
espao ou um caractere de tabulao. Por exemplo, considere o exemplo anterior:
$ Rm arquivo1 arquivo2 file3

o programa recebe quatro argumentos, numeradas de 0 a 3:

unixref.mm, v v4.16 (2003/04/02 06:41:29)

Conseguir um shell

124

Tabela 7-1: Argumentos do programa


Argumento Valor
0
rm
1
file1
2
arquivo2
3
file3
O que acontece se voc quiser passar um nome com um espao? Por exemplo, voc pode querer
olhar para o texto'' Correio'' rejeitado em um arquivo de log. UNIX tem um programa padro para
olhar para o texto, chamado grep. A sintaxe :
arquivos expresso GREP

Argumento 1 a expresso, todos os argumentos adicionais so os nomes dos arquivos a serem pesquisados.
Poderamos escrever:
$ Grep mail rejeitou / var / log / maillog

mas que iria tentar olhar para o texto Correio nos ficheiros rejeitado (Provavelmente causar um erro
mensagem que o arquivo no existe) e / Var / log / maillog (Onde praticamente todas as linhas
contm o texto Mail). Isso no o que queremos. Em vez disso, ns fazemos muito bem
o que eu
escrevi acima:
$ Grep "Mail rejeitado" / var / log / maillog

Em outras palavras, se colocar aspas "" em torno de um grupo de palavras, a Shell


interpret-los como um nico parmetro. O primeiro parmetro que passado para grep Correio
rejeitado, no "Mail rejeitado".
Este comportamento do shell uma boa razo para no usar nomes de arquivos com espaos em
eles. perfeitamente legtimo para incorporar espaos em nomes de arquivos UNIX, mas uma dor de
usar. Se voc quer criar um nome de arquivo que contm vrias palavras, por exemplo,
Todos os arquivos atualizados desde a semana mudando os espaos sublinhados:
passada, considere
All_files_updated_since_last_week.
ainda mais interessante ver o que acontece quando voc passa um personagem englobamento de um
programa, por exemplo:
$ Cc-o foo *. C

Esta invocao compila todos os arquivos fonte C (*. C) e cria um programa foo. Se voc fizer isso
com a Microsoft, o compilador C recebe quatro parmetros, e tem que encontrar os arquivos de origem C
si. No UNIX, o shell expande o texto *. C e substitui-lo com os nomes dos
arquivos de origem. Se h trinta arquivos de origem no diretrio, ele ir passar por um total de 33
parmetros para o compilador.
unixref.mm, v v4.16 (2003/04/02 06:41:29)

125

Captulo 7: As ferramentas do comrcio

Os campos que podem conter espaos


A soluo para o'' Correio rejeitado problema'' no o ideal, mas funciona muito bem, desde
como voc no tem que lidar com campos com espaos em branco com muita freqncia. Em muitos casos, porm,
particularmente nos arquivos de configurao, os campos com espaos em branco so relativamente comuns. Como resultado,
um nmero de arquivos de configurao do sistema usar dois pontos (:) como um delimitador. Isso parece muito
confuso no incio, mas acaba por no ser to ruim quanto as alternativas. Vamos ver alguns
exemplos no PATH varivel de ambiente na pgina 130, no arquivo de senhas na pgina
144, e no arquivo de classe de login na pgina 564.

Arquivos e nomes de arquivos


Tanto os dados do disco Microsoft ambientes de loja em UNIX e imagens, que por sua vez so colocados
em diretrios. Um arquivo pode ser um diretrio, ou seja, pode conter outros arquivos. O
diferenas entre UNIX e Microsoft comeam com nomes de arquivos. Arquivo tradicional Microsoft
nomes so rgidas: um nome de arquivo composto por oito caracteres, possivelmente seguido por um perodo
e mais trs caracteres (o chamado extenso de nome de arquivo). H significativos
restries sobre quais os caracteres podem ser utilizados para formar um nome de ficheiro, superiores e inferiores
letras minsculas tm o mesmo significado (internamente, a Microsoft converte os nomes para UPPER
CASE). Membros do diretrio so selecionados com uma barra invertida (\), que entra em conflito com outro
significados na linguagem de programao C, consulte a pgina 138 para mais detalhes.
FreeBSD tem um mtodo muito flexvel de nomear arquivos. Os nomes de arquivos podem conter qualquer
caractere, exceto /, E eles podem ter at 255 caracteres. Eles so maisculas e minsculas:
os nomes FOO, Foo e foo so trs nomes diferentes. Isto pode parecer bobo no comeo, mas
qualquer outro meio que os nomes deve ser associado a um conjunto especfico de caracteres.
Como voc upshift o nome alemo ungleichmig? O que se os mesmos caracteres
aparecer em um nome russo? Ser que eles ainda mudar a mesma coisa? A excepo porque o /
personagem representa diretrios. Por exemplo, o nome / Home/fred/longtext-with-a-longnome representa:
1. Primeiro personagem um /, Representando o sistema de arquivos raiz.
2. casa o nome de um diretrio no sistema de arquivos raiz.
3. fred o nome de um directrio / Home.
4. O nome sugere que longtext-com-a-long-name provavelmente um arquivo, no um diretrio,
que voc no pode dizer o nome.
Como resultado, voc no pode usar / em um nome de arquivo. Alm disso, o binrio 0s (a ASCII NUL
personagem) pode confundir um monte de programas. quase impossvel conseguir um 0 binrio em um
nome do arquivo de qualquer maneira: o personagem usado para representar o fim de uma string em C
linguagem de programao, e difcil de introduzi-lo a partir do teclado.
Maisculas e minsculas j no parece to estranho, como j fez: navegadores fizeram
Nomes de arquivo UNIX mais popular com Uniform Resource Indicators ou URIs, que so
derivados de nomes de UNIX.
unixref.mm, v v4.16 (2003/04/02 06:41:29)

Arquivos e nomes de arquivos

126

Os nomes de arquivos e extenses


A conveno de nomenclatura da Microsoft (nome, perodo e extenso) parece similar do
UNIX. UNIX tambm usa extenses para representar tipos especficos de arquivos. A diferena est
que estas extenses (e os seus comprimentos) so implementados por conveno, no pelo arquivo
sistema. Na Microsoft, o perodo entre o nome ea extenso uma tipogrfico
caracterstica que s existe no nvel de exibio: no parte do nome. No UNIX, o perodo
faz parte do nome, e nomes como foo.bar.bazzot so nomes de arquivos perfeitamente vlidos. O
sistema no atribuir qualquer significado particular para apresentar as extenses de nome, em vez disso, ele procura
nmeros mgicos, os valores especficos em lugares especficos no arquivo.

Os caminhos relativos
Cada diretrio contm duas entradas de diretrio, . e .. (Um e dois perodos). So
entradas de diretrio relativo:. uma forma alternativa para se referir ao diretrio atual, e ..
refere-se ao diretrio pai. Por exemplo, em / Home / fred,. refere-se a / Home / fred, e ..
refere-se a / Home. O diretrio raiz no tem um diretrio pai, portanto, neste diretrio
apenas, .. refere-se ao mesmo diretrio. Veremos uma srie de casos em que este useful.1

Caracteres englobamento
A maioria dos sistemas tem um mtodo de representao de grupos de nomes de arquivos e outros nomes,
geralmente usando caracteres especiais para representar uma abstrao. Os mais comuns em
UNIX so os personagens *,? e os colchetes []. UNIX chama esses caracteres
englobamento caracteres. O uso Microsoft vem do UNIX, mas o arquivo subjacente
representao nome faz grandes diferenas. Tabela 7-2 d alguns exemplos.
Tabela 7-2: Exemplos englobamento
Nome
CONFIG. *

Microsoft significado
Todos os arquivos com o nome
CONFIG,
no importa qual a sua extenso.

Todos os arquivos que comecem com CONFIG.BA e tem mais um caacter em seu nome.

CONFIG.BA?

*. *

UNIX significado
Todos os arquivos cujo nome comea com
CONFIG., No importa o que o resto
. Note-se que o nome contm um
perodo.

Todos os arquivos com o nome


CONFIG
e uma extenso que comea com
BA, no importa qual seja a ltima
Todos os arquivos.
personagem.

Dependendo da verso do Microsofto, todos os arquivos sem uma


Todos os arquivos que tm um perodo no
extenso,
ou todos os arquivos.
Todos os arquivos com a extenso.

meio do seu nome.

1. Curiosamente, os sistemas de arquivos da Microsoft tambm tm esta caracterstica.


unixref.mm, v v4.16 (2003/04/02 06:41:29)

127

Captulo 7: As ferramentas do comrcio

foo [127]

Em verses mais antigas, invlido. Em Os trs arquivos foo1, foo2 e


nova
foo7.
verses er com o nome de arquivo
longo
suporte, o arquivo com o nome
foo [127].

De entrada e de sada
A maioria dos programas ou ler dados de entrada ou escrever dados de sada. Para torn-lo mais fcil, o shell
geralmente comea programas com pelo menos trs arquivos abertos:

Entrada padro, muitas vezes abreviado para stdin, o arquivo que a maioria dos programas de leitura
para obter
os dados de entrada.
Sada padro, ou stdout, o lugar normal para programas para escrever dados de sada.
Sada de erro padro, ou stderr, um arquivo separado para os programas de gravao de erro
mensagens.

Com um shell interativo (que funciona em uma tela de terminal, como o que estamos vendo aqui), tudo
trs arquivos so o mesmo aparelho, neste caso o terminal que voc est trabalhando.
Por que dois arquivos de sada? Bem, voc pode estar a recolher algo importante, como um backup
de todos os arquivos de seu sistema. Se algo der errado, voc quer saber sobre ele, mas
voc no quer estragar o backup com a mensagem.
Redirecionamento de entrada e sada
Mas claro que, mesmo se voc estiver executando um shell interativo, voc no quer fazer backup do seu
sistema para a tela. Voc precisa mudar stdout ser um arquivo. Muitos programas podem fazer isso
-se, por exemplo, voc pode fazer um backup de seu diretrio home assim:
$ Tar-cf / var / tmp / backup ~

Isso cria (opo c) um arquivo (opo f) chamado / Var / tmp / backup, e inclui todos os arquivos
em seu diretrio home (~). Todas as mensagens de erro ainda aparecer no terminal, como stderr
no foi alterado.
Esta sintaxe especfico para tar. A casca fornece uma sintaxe mais geral para redirecionar
fluxos de entrada e de sada. Por exemplo, se voc quiser criar uma lista dos arquivos em seu
diretrio atual, voc pode digitar:
$ Ls-l
drwxr-xr-x
-Rw-r - r -Rw-r - r -Rw-r - r -Rw-r - r -Rw-r - r -Rw-r - r -Rw-r - r (Etc)

2
1
5
5
5
1
5
5

raiz
raiz
raiz
raiz
raiz
raiz
raiz
raiz

roda
roda
roda
roda
roda
roda
roda
roda

512
7928
209
1163
271
741
108
482

unixref.mm, v v4.16 (2003/04/02 06:41:29)

Dezembro
Outubro
Julho
Jan
Jan
Fevereiro
Jan
Jan

20
23
26
31
31
19
31
31

14:36
12:01
07:11
2002
2002
2001
2002
2002

CVS
Makefile
amd.map
apmd.conf
auth.conf
crontab
csh.cshrc
csh.login

Arquivos e nomes de arquivos

128

Voc pode redirecionar essa sada para um arquivo com o comando:


$ Ls-l> / var / tmp / etclist

Isso coloca a lista no arquivo / Var / tmp / etclist. O smbolo > diz ao shell para redirecionar stdout
para o arquivo cujo nome segue. Da mesma forma, voc pode usar a < para redirecionar stdin quele
arquivo, por exemplo, quando se utiliza grep procurar textos especficos no arquivo:
$ Grep
-Rw-r -Rw-r -Rw-r -

csh
r-5
r-5
r-5

</
roda
roda
grog

var / tmp / etclist


raiz
108 31 de janeiro de 2002 csh.cshrc
raiz
482 31 de janeiro de 2002 csh.login
Lemis
110 31 de janeiro de 2002 csh.logout

Na verdade, porm, h uma maneira melhor de fazer isso: o que estamos fazendo aqui alimentar o
sada de um programa para a entrada de um outro programa. Isso acontece tantas vezes que no h
um mtodo especial de faz-lo, chamado tubos:
$ Ls-l | grep
-Rw-r - r -Rw-r - r -Rw-r - r -

csh
5 roda raiz
5 roda raiz
5 grog Lemis

108 31 de janeiro de 2002 csh.cshrc


482 31 de janeiro de 2002 csh.login
110 31 de janeiro de 2002 csh.logout

O | smbolo faz com que o shell para iniciar dois programas. O primeiro tem um arquivo especial, um pipe, como
a sada, e o segundo tem o mesmo tubo como entrada. Nada gravado no disco, e
o resultado muito mais rpido.
Um uso tpico de tubos esto a manipular quantidades de dados de sada em excesso de uma tela cheia.
Voc pode canalizar para o less1 programa, que permite a pgina para trs e para a frente:
$ Ls-l | menos

Outro uso para classificar os dados arbitrrios:


$ Ps aux | sort-n +1

Este comando leva a sada do ps comando e classifica-lo pela numrico (-n)


o valor do seu segundo coluna (1). A primeira coluna numerado 0. Ns olharemos ps em
pgina 148.

As variveis de ambiente
O modelo de programao UNIX inclui um conceito chamado variveis de ambiente. Este
nome soa bastante incomum simplesmente um mtodo prtico de passagem relativamente longa durao
informaes de carcter geral a partir de um programa para outro. mais fcil para demonstrar
a utilizao de descrever. Tabela 7-3 d uma olhada em algumas variveis de ambiente tpico.
Para definir as variveis de ambiente a partir de conchas de estilo Bourne, digite:

1. Porqu menos? Originalmente havia um programa chamado mais, mas no to poderoso. menos um novo programa com
recursos adicionais, o que prova sem sombra de dvida que menos mais.
unixref.mm, v v4.16 (2003/04/02 06:41:29)

129

Captulo 7: As ferramentas do comrcio

$ Export TERM = xterm

Isso define o valor da PRAZO varivel xterm. A palavra de exportao diz que o shell
passar essa informao para qualquer programa que comea. Uma vez que exportado, ele permanece exportado. Se o
varivel no exportada, s o shell pode us-lo.
Alternativamente, se voc quiser definir a varivel de uma nica vez durante a execuo de um programa, e depois
esquec-lo, voc pode configur-lo no incio de uma linha de comando:
$ TERM = xterm-color vira-lata

Isso inicia o vira-lata leitor mail (ver pgina 472) com cor do xterm funcionalidades ativadas.
Para csh e tcsh, definir variveis de ambiente com:
% Setenv TERM xterm

Para iniciar um processo com estas variveis, digite:


% Env vira-lata xterm-color

Tabela 7-3: Variveis de ambiente comuns


Nome
BLOCKSIZE
EXIBIO

EDITOR
PGINA
PRINCIPAL
LANG
MAIL
MANPATH

NTAPE

Propsito
O tamanho dos blocos de programas que gosta df contar. O padro de 512 bytes,
mas muitas vezes mais conveniente usar 1024 ou at 1.048.576 (1 MB).
Ao executar o X, o nome do servidor X. Para um sistema local, este
tipicamente unix: 0. Para sistemas remotos, na forma
system-name: server-number.screen-nmero. Para o sistema bumble.example.org, voc provavelmente iria escrever bumble.example.org: 0.
O nome do seu editor favorito. Vrios programas que iniciam editores
olhar para esta varivel para saber qual editor para comear.
O nome do seu diretrio home.
O localidade que voc usa. Este deve ser o nome de um diretrio em
/ Usr / share / locale.
Alguns programas usam esta varivel para encontrar seu arquivo de mensagens recebidas.
Uma lista de nomes de caminho, separados por dois pontos (:), que especifica onde o homem
programa deve procurar pginas man.
Uma seqncia tpica pode ser
/ Usr / share / man :/ usr / local / man, e especifica que no h homem
pginas em cada um dos diretrios / Usr / share / man e / Usr / local / man.
O nome do dispositivo de fita no-retrocesso. Consulte a pgina 252 para mais
detalhes.

unixref.mm, v v4.16 (2003/04/02 06:41:29)

Arquivos e nomes de arquivos

Nome

130

SHELL

Propsito
Uma lista de nomes de caminho, separados por dois pontos (:), que especifica onde o shell
deve procurar programas executveis, se voc especificar apenas o nome do programa.
Em conchas de estilo Bourne, esta a seqncia de prompt. geralmente definida como $, Mas
pode ser alterado. Consulte a pgina 114 para uma discusso sobre uma possvel solicitao para
Bash.
Em conchas Bourne estilo, esta a seqncia de prompt para linhas de continuao.
geralmente definida como >.
O nome da shell. Alguns programas usam isso para iniciar uma shell.

TAPE

O nome do dispositivo de fita rebobinando. Consulte a pgina 252 para mais detalhes.

PRAZO

O tipo de emulao de terminal que voc est usando. Isto muito importante:
no h outra maneira de um aplicativo para saber o que o terminal , e
se voc configur-lo para o valor errado, os programas em tela cheia vai se comportar
incorretamente.
Fuso horrio. Este o nome de um ficheiro / Usr / share / zoneinfo que descreve
o fuso horrio local. Veja a seo de cronometragem na pgina 155 para mais
detalhes.

PATH
PS1

PS2

TZ

Nota particular a PATH varivel. Uma das perguntas mais populares no FreeBSDperguntas lista de discusso '' Eu compilei um programa, e eu posso v-lo no meu diretrio,
mas quando tento execut-lo, recebo a mensagem de'' comando no foi encontrado.'' Isso geralmente
porque PATH no inclui o diretrio atual.
uma boa prtica no ter o seu diretrio atual ou seu diretrio home em ThePath: se o fizer,
pode estar sujeito a comprometer a segurana. Por exemplo, algum poderia instalar um programa
chamado ps no diretrio / Var / tmp. Apesar do nome, o programa pode fazer outra coisa, para
exemplo, remover todos os arquivos em seu diretrio home. Se voc alterar o diretrio para / Var / tmp e executar ps,
voc ir remover todos os arquivos em seu diretrio home. Obviamente compromissos muito mais sutis so
possvel.
Em vez disso, execute o programa como este:
$. / Programa

Voc deve definir o seu PATH varivel para apontar para os diretrios executveis mais comuns.
Adicionar algo como isto para o seu . Perfil arquivo (por shells Bourne estilo):
PATH = / usr / bin :/ usr / local / bin :/ usr / sbin :/ bin :/ sbin :/ usr/X11R6/bin
export PATH

Esta varivel de grande importncia: um dos principais problemas que os novatos tm


ter uma incorreta PATH varivel.

unixref.mm, v v4.16 (2003/04/02 06:41:29)

131

Captulo 7: As ferramentas do comrcio

Imprimir as variveis de ambiente


Ento voc no pode iniciar um programa, e voc est se perguntando se o seu PATH ambiente
varivel definida corretamente. Voc pode encontrar-se com o eco comando:
$ Echo $ PATH
/ Bin :/ usr / bin

O $ no incio $ PATH informa o reservatrio para substituir o valor do ambiente


varivel pelo seu nome. Sem isso, o shell tem nenhuma maneira de saber que uma
varivel de ambiente, assim que passa o texto PATH a echo, que apenas imprime-lo.
Se voc quiser imprimir todas as variveis de ambiente, use o printenv comando:
$ Printenv | tipo
BLOCKSIZE = 1048576
CLASSPATH = / usr / local / java / lib :/ usr / local / java / lib / classes.zip :/ home / grog / netscape /
CVSROOT = / home / ncvs
DISPLAY = freebie: 0
EDITOR = emacs
HOME = / home / grog
PAGER = menos
PATH =. :/ Usr / bin :/ usr / sbin :/ bin :/ sbin :/ usr/X11R6/bin :/ usr / local / bin :/ usr / local / sbin
XAUTHORITY = / home / grog / .Xauthority

Este exemplo classifica as variveis para torn-lo mais fcil de encontr-los. Com toda a probabilidade, voc vai
encontrar mais variveis.

Linha de edio de comando


A digitao uma dor. Se voc for como eu, voc est fazendo continuamente erros, e
voc pode gastar mais tempo corrigindo erros de digitao que fazer a digitao em primeiro lugar.
particularmente frustrante quando voc digitar algo como:
$ Groff-rex = 7,5-r $-RL-RW-RN2-mpic tmac.M unixerf.mm
troff: Erro fatal: no possvel abrir 'unixerf.mm': Arquivo ou diretrio

Este comando deveria criar a verso PostScript deste captulo, mas, infelizmente,
errei o nome do captulo que deveria ter sido unixref.mm, e eu digitei
unixerf.mm.
Sim, eu sei que isso parece terrvel. Na verdade, UNIX tem maneiras para garantir que voc quase nunca precisam escrever
comandos como este. O comando eu realmente usar para formatar este captulo '' fazer'' unixref.

Seria particularmente frustrante se eu tivesse que digitar todo o comando novamente. UNIX
oferece uma srie de maneiras de tornar a vida mais fcil. O mais bvio to bvio que voc
tendem a tom-lo como certo: o Retrocesso apaga-chave o ltimo caractere digitado. Bem,
a maior parte do tempo. E se voc estiver rodando em uma mquina sem um Retrocesso chave? Voc
no tem esse problema com um PC, claro, mas uma srie de estaes de trabalho tm um DEL chave
em vez de um Retrocesso chave. UNIX permite que voc especifique o que chave usar para apagar a ltima
caractere digitado. Por padro, o personagem realmente apagar DEL, mas o incio do shell
mudanas que ele e imprime uma mensagem dizendo o que tem feito:
unixref.mm, v v4.16 (2003/04/02 06:41:29)

Arquivos e nomes de arquivos

132

apagar H, matar U, intr C, o estado T

no exemplo na pgina 113. H (Ctrl-H) uma representao alternativa para Backspace.


Os outros trs funes matar, intr e status executar funes de edio semelhantes.
matar apaga a linha inteira, e intr interrompe um programa em execuo.
Mais corretamente, intr envia uma sinalizar chamado SIGINT para o processo. Isto normalmente causa uma
programa para parar.

Voc notar que ele est definido para Ctrl-C, pelo que a sua funo muito semelhante do MS-DOS
Quebrar chave. estado uma funo excntrico: ele no mudar a entrada, ele apenas exibe uma
mensagem de estatsticas. bater no de fato us-lo: ele tem um uso melhor para Ctrl-T.
Na verdade, esses caracteres de controlo so apenas alguns de um grande nmero de caracteres de controlo que
voc pode definir. Tabela 7-4 fornece uma viso geral dos caracteres de controle mais comuns. Para um
lista completa, veja a pgina man stty (1).
Tabela 7-4: Caracteres de controle de terminal
Nome

Funo
Ir para o incio da linha. Normalmente, este tambm termina entrada (em
Ou seja, ele retorna a linha completa para o programa, que
em seguida, actua sobre a entrada).

CR

Omisso
\ R

NL

\ N

INTR

Ctrl-C

SAIR

Ctrl-|

APAGAR

DEL

MATAR

Ctrl-U

EOF

Ctrl-D

PARAR

Ctrl-S

Pare de sada. Use-o para examinar o texto que est rolando mais rpido do que
voc pode ler.

COMECE

Ctrl-Q

Retomar a produo aps a parada.

SUSP

Ctrl-Z

Linha de fundo. Normalmente, este tambm termina entrada.


Gerar uma SIGINT sinal. Isso normalmente faz com que o processo de
terminar.
Gerar uma SIGQUIT sinal. Isso normalmente faz com que o processo de
terminar e dump de memria, para salvar uma cpia da sua memria para o disco para
posterior anlise.
Apague ltimo caractere. FreeBSD define isso Retrocesso no login, mas
em algumas circunstncias incomuns que voc pode encontr-lo ainda definido para
DEL.
Apagar linha de entrada atual.
Voltar indicao de fim-de-arquivo. A maioria dos programas parar quando eles
receber um EOF.

Processo de suspenso. Esta tecla gera um SIGTSTP sinalizar quando


digitado. Isso normalmente faz com que um programa a ser suspenso. A
reiniciar, utilize o fg de comando.

unixref.mm, v v4.16 (2003/04/02 06:41:29)

133

Captulo 7: As ferramentas do comrcio

Nome
DSUSP

Omisso
Ctrl-Y

REPRODUO

Ctrl-R

DESCARTE

Ctrl-O

Funo
Suspenso adiada. Gerar uma SIGTSTP sinalizar quando o personagem
ler. Caso contrrio, esta a mesma SUSP.
Reexibir todos os personagens na fila de entrada (em outras palavras,
caracteres que foram introduzidos, mas ainda no foram lidas por qualquer processo).
O termo "impresso", lembra os dias de terminais harcopy. Muitos
conchas desabilitar esta funo.
Descartar todas as sadas do terminal at que outro DESCARTE carter
chega, mais entrada digitado ou o programa elimina a condio.

Para definir esses caracteres, utilize o stty programa. Por exemplo, se voc est acostumado a apagar a
linha de entrada completo com Ctrl-X, e especificando uma condio de fim de arquivo com Ctrl-Z, voc
poderia entrar:
$ Stty susp \ 377 matar X eof Z

Voc precisa definir SUSP a outra coisa em primeiro lugar, porque, por padro, Ctrl-Z, de modo que o
sistema no sabe qual a funo de realizar, se voc pressionar Z.
A combinao \ 377 representa o caractere octal 377 (esta notao vem do C
linguagem de programao, e sua origem se perde nas brumas do tempo, de volta nos dias em que decorreu UNIX
em PDP-11s). Este personagem o nulo'' personagem'' que desliga a funo correspondente.
Sistema V usa o carcter \ 0 para a mesma finalidade.

Neste caso particular, X realmente significa o carter seguido da letra X, e


no Ctrl-X, o nico personagem criado por mantendo o controle carter e
premente X ao mesmo tempo.

Histrico de comandos e outras funes de edio


Hoje em dia, a maioria das conchas de fornecer uma histrico de comandos funo e funcionalidade adicional
para edit-lo. Vamos dar uma breve olhada nestas caractersticas aqui, para mais detalhes, ver o homem
pginas para o seu escudo.
Shell edio de linha de comando tem sido atravs de uma srie de fases evolutivas. O
originais shell Bourne fornecido nenhuma edio de linha de comando em tudo, embora a verso
fornecido com o FreeBSD oferece muitos dos recursos de edio de conchas mais modernos.
Ainda assim, improvvel que voc vai querer usar o shell Bourne como seu shell: bash, ksh, e
zsh so compatveis com o shell Bourne, mas tambm fornecer uma melhor linha de comando
edio.
A prxima fase da edio de linha de comando foi introduzido com o shell C, csh. Por
padres modernos, tambm bastante lamentvel. descrito no csh pgina man se voc realmente
quero saber. Sobre a nica parte que ainda til a capacidade de repetir a anterior
comando com o ! construir. Conchas modernas fornecer edio de linha de comando que
assemelha-se aos editores vi ou Emacs. Em bash, sh, ksh e zsh voc pode fazer a escolha por
digitando:
unixref.mm, v v4.16 (2003/04/02 06:41:29)

Arquivos e nomes de arquivos


$ Set-o emacs
$ Set-o vi

134
para edio de estilo Emacs
para edio de estilo vi

Em tcsh, os comandos correspondentes so:


% Ligam emacs
% Ligam vi

Normalmente voc colocar um destes comandos no seu arquivo de inicializao.


Em Emacs modo, voc digite os comandos simplesmente digitando-los dentro em vi modo,
tem que pressionar ESC em primeiro lugar. Tabela 7-5 mostra uma viso geral do estilo Emacs mais tpico
comandos Bash. Muitas outras conchas fornecer suporte de edio similar.
Como o nome sugere, o Emacs editor entende os mesmos personagens de edio. Tambm
entende muito mais do que os comandos so mostrados aqui. Alm disso, muitos baseado X
comandos, incluindo navegadores web, compreender alguns desses personagens.
Tabela 7-5: Caracteres de edio do Emacs
Chave
Ctrl-A
Leftarrow
Ctrl-B
Ctrl-D
Ctrl-E
RightArrow
Ctrl-F
Ctrl-K
Ctrl-L
DownArrow
Ctrl-N
UpArrow
Ctrl-P
Ctrl-R
Ctrl-S
Ctrl-T
Ctrl-Y
Ctrl-_
Alt-C
Alt-D
Alt-F
Alt-L

Funo
Mover para o incio da linha.
Mova a personagem anterior em linha.
Mova a personagem anterior em linha (alternativa).
Excluir o caractere sob o cursor. Tenha cuidado com este personagem:
tambm personagem de fim-de-arquivo do shell, por isso, se voc entra em um vazio
linha, ele pra o seu shell e registra-lo.
Mover para o fim da linha.
Mover para a prxima personagem na linha.
Mover para a prxima personagem em linha (alternativa).
Apagar o resto da linha. Os contedos so salvos em um buffer de anel de
apagados texto e pode ser restaurado, possivelmente em outros lugares, com Ctrl-Y.
Apague o contedo da tela (shell) ou janela (Emacs) redesenhar.
Mover para a prxima linha de entrada.
Mover para a prxima linha de entrada (alternativa).
Mova a linha de entrada anterior.
Mova a linha de entrada anterior (alternativa).
Incremental para trs busca de texto.
Pesquisa incremental para a frente para o texto.
Transpor o personagem sob o cursor com o personagem antes do
cursor.
Insert anteriormente apagadas com Ctrl-K ou Alt-D.
Desfazer o ltimo comando.
Capitalizar a seguinte palavra.
Excluir a palavra seguinte.
Avanar uma palavra.
Converta a seguinte palavra para minsculas.
unixref.mm, v v4.16 (2003/04/02 06:41:29)

135

Captulo 7: As ferramentas do comrcio

Chave
Funo
Alt-T
Transpor a palavra antes do cursor com o depois.
Alt-U
Converta a seguinte palavra em maisculas.
Ctrl + X Ctrl-S Salvar arquivo (somente Emacs).
Ctrl + X Ctrl-C Sair do Emacs editor.
Voc vai notar uma srie de alternativas para as teclas do cursor. H duas razes para eles:
Em primeiro lugar, o shell e Emacs deve trabalhar em sistemas sem teclas de setas do teclado.
A segunda razo no imediatamente bvio: se voc um touch-typer, mais fcil de digitar
Ctrl-P de tomar as suas mos longe do teclado principal e procurar a chave de seta.
As setas so boas para iniciantes, mas se voc se acostumar com as teclas de controle, voc nunca
perca as setas.
O nome do arquivo completo
Como vimos, os nomes de arquivo UNIX pode ser muito mais do que nomes tradicionais da Microsoft,
e torna-se um problema para digit-los corretamente. Para resolver este problema, escudos mais recentes
fornecer concluso de nome de arquivo. No Emacs modo, voc normalmente digitar parte do nome,
em seguida, pressione o Aba chave. As verificaes shell qual arquivo nomes comeam com os caracteres que voc
digitado. Se houver apenas um, ele coloca nos personagens que faltam para voc. Se no houver nenhum,
beeps (anis do terminal de sino''''). Se houver mais do que um, coloca em tantas letras
so comuns a todos os nomes de arquivo e emite um sinal sonoro. Por exemplo, se eu tenho um diretrio
docco no meu diretrio home, eu poderia entrar:
=== Grog @ freebie (/ dev/ttyp4) ~ 14 -> cd docco /
=== Grog @ brinde (/ dev/ttyp4) ~ / docco 15 -> ls
freebsd.faq freebsd.fbc gratuito
=== Grog @ freebie (/ dev/ttyp4) ~ / docco 16 -> emacs freebeepbsd.fbeepaq

Lembre-se que a minha entrada largura constante negrito fonte e de sada do reservatrio de
largura constante fonte. Na primeira linha, entrei para os personagens cd doc seguido por uma
Aba personagem, eo shell concludo com o texto co /. Na ltima linha, entrei no
caracteres emacs f e um Tab. Neste caso, o reservatrio determinou que havia mais
de um nome de arquivo que comeou assim, por isso acrescentou as letras ree e tocou a campainha. Eu
entrou na carta b e pressionado Aba novamente, eo shell acrescentou as letras sd.f e
buzinou novamente. Finalmente, eu adicionei as letras aq para completar o nome do arquivo freebsd.faq.
Concluso da linha de comando em vi modo semelhante: em vez de pressionar Tab, pressione ESC
duas vezes.

Arquivos de inicializao do shell


Como vimos acima, h uma srie de maneiras de personalizar o seu shell. Seria
inconveniente de ter de coloc-los a cada vez, para que todos os shells fornecer um meio para defini-las
automaticamente quando voc log in Quase todos os shell tem seu prprio arquivo de inicializao. Tabela 7-6
d uma viso geral.

unixref.mm, v v4.16 (2003/04/02 06:41:29)

Arquivos e nomes de arquivos

136

Tabela 7-6: Arquivos de inicializao do shell


Conch
a
bater
csh
sh
tcsh

arquivo de inicializao
. Perfil, ento. Bashrc
. Logon no login, sempre . Cshrc
. Perfil
. Logon no login, sempre . Tcshc,. Cshrc se . Tcshrc no encontrado

Esses arquivos so shell scripts no-outras palavras, os comandos shell retas. Figura 7-3 mostra
um tpico . Bashrc arquivo para definir as variveis de ambiente que discutimos.
umask 022
exportar BLOCKSIZE = 1024
# Para df
export CVSROOT = / src / NCVS
export EDITOR = / opt / bin / emacs
exportao MANPATH = / usr / share / man :/ usr / local / man
exportao MOZILLA_HOME = / usr / local / netscape
exportao PAGER = menos
export PATH = / usr / bin :/ usr / local / bin :/ usr / sbin :/ bin :/ sbin :/ usr/X11R6/bin
PS1 = "=== \ u @ \ h ('tty') \ w \ # ->"
PS2 = "\ u @ \ h \ w \! + +"
exportao SHELL = / usr / local / bin / bash
exportar TAPE = / dev/nsa0
# Nota no rebobinar como padro
if ["$ TERM" = ""], ento
export TERM = xterm
fi
if ["$ DISPLAY" = ""], ento
export DISPLAY =: 0
fi
/ Usr / games / fortune # imprime um biscoito da sorte

Figura 7-3: Minimal bashrc.


Seria tedioso para todos os usurios para colocar as configuraes em seus arquivos de inicializao privadas, de modo a
conchas tambm leu um grande sistema de arquivos padro. Para a famlia de concha Bourne, / Etc / profile,
enquanto a famlia shell C tem trs arquivos: / Etc / csh.login para ser executado no login,
/ Etc / csh.cshrc a ser executado quando um novo shell iniciado aps o login, e
/ Etc / csh.logout a ser executado quando voc parar um shell. Os arquivos iniciais so executados antes
os arquivos individuais correspondentes.
Alm disso, as aulas de login (pgina 564) oferecem um outro mtodo de configurao do ambiente
variveis, em nvel global.

Mudar seu shell


A instalao do FreeBSD d raiz um shell C, csh. Esta a casca BSD tradicional, mas
que tem uma srie de desvantagens: a opo de edio muito primitivo, e que o script
lngua significativamente diferente do da casca Bourne, que o de fato
padro para scripts shell: se voc ficar com o shell C, voc pode ainda precisa entender
o shell Bourne. A verso mais recente do shell Bourne sh tambm inclui algum comando
edio de linha. Consulte a pgina 133 para obter detalhes sobre como ativ-lo.
unixref.mm, v v4.16 (2003/04/02 06:41:29)

137

Captulo 7: As ferramentas do comrcio

Se voc quiser ficar com um shell csh-like, voc pode obter melhor linha de comando edio com
tcsh, que tambm se encontra no sistema de base. Voc pode obter tanto melhor edio e linha de comando
Bourne shell com sintaxe Bash, na Coleo de Ports.
Se voc tem raiz acesso, voc pode usar vipw para mudar seu shell, mas no h uma forma mais
maneira geral: usar chsh (Alterar Shell). Basta executar o programa. Ele comea o seu favorito
edio (tal como definido pela EDITOR varivel de ambiente). Aqui est um exemplo antes:
# Alterando informaes de banco de dados de usurio para Velte.
Shell: / bin / csh
Nome Completo: Jack Velte
Localizao:
Telefone Escritrio:
Telefone Residencial:

Voc pode mudar alguma coisa depois dos dois pontos. Por exemplo, voc pode mudar isso para:
# Alterando informaes de banco de dados de usurio para Velte.
Shell: / usr / local / bin / bash
Nome Completo: Jack Velte
Localizao: On the road
Escritrio Telefone: +1-408-555-1999
Telefone Residencial:

chsh verifica e atualiza os arquivos de senha quando voc salvar as modificaes e sair da
editor. A prxima vez que voc fizer login, voc comea o novo shell. chsh tenta garantir que voc no
cometer erros, por exemplo, ele no vai deixar voc digitar o nome de um shell que no
mencionado no arquivo / Etc / shells-mas um muito boa idia para verificar a casca antes
sair. Voc pode tentar isso com su, o que voc normalmente usa para se tornar super-usurio:
bumble # su Velte
Senha:
su-2.00 $

observe o novo prompt

Voc pode ouvir objees ao uso de bater como um shell de root. O argumento algo
assim: bater instalado em / Usr / local / bin, por isso ele no est disponvel, se voc iniciar o singlemodo de usurio, onde apenas o sistema de arquivos raiz est disponvel. Mesmo se voc copi-lo para, por exemplo, / Bin,
voc no pode execut-lo em modo de usurio nico, porque ele precisa de bibliotecas em / Usr / lib.
Na verdade, este no um problema. Se voc instalar o sistema do jeito que eu recomendo no Captulo 5,
/ Usr no sistema de arquivos raiz. Mesmo se no , porm, voc no tem que usar bater em
modo de usurio nico. Quando voc inicializar no modo de usurio nico, voc receber um aviso pedindo que voc
que shell para comear, e sugerindo / Bin / sh.

unixref.mm, v v4.16 (2003/04/02 06:41:29)

Arquivos e nomes de arquivos

138

Diferenas da Microsoft
Se voc est vindo de um fundo Microsoft, existem algumas dicas que voc pode
tropear.

Cortes: para trs e para a frente


/ (Barra) e \ (Barra invertida) so confusas. Como vimos, UNIX usa / para delimitar
diretrios. A barra invertida \ denominado escapar personagem. Ele tem vrias finalidades:

Voc pode coloc-lo na frente de outro personagem especial para dizer'' no interprete isso
personagem de alguma forma especial.'' Vimos que o shell interpreta um caractere de espao
como o fim de um parmetro. No exemplo anterior, mudamos E-mail rejeitou a
"Mail rejeitado" para parar o shell de interpret-la. Tambm poderia ter escrito:
\ Mail rejeitado.
Um uso mais comum para este citando dizer ao shell para ignorar o fim de uma linha. Se
uma linha de comando em um shell script fica muito longo, voc pde gostar de dividi-la em vrios
linhas, mas o shell v o fim de uma linha como um aval para executar o comando. Pare
de faz-lo, colocando uma barra invertida imediatamente antes do fim da linha:
$ Grep \
"Mail rejeitado" \
/ Var / log / maillog

No coloque espaos entre o \ e a extremidade da linha, caso contrrio a concha vai


interpretar o primeiro espao como um parmetro, por si s, e, em seguida, ir interpretar o fim de
A linha como o fim do comando.

Na linguagem de programao C, a barra invertida usada para representar vrios controlar


caracteres. Por exemplo, a \ N meio'' nova linha.'' Esse uso aparece em muitos outros
lugares.

Utilizao \ como um caractere de escape causa problemas: como que vamos colocar um \ personagem em um
line? A resposta: cit-lo. Escrever \ \ quando voc quer dizer \. Isso faz com que determinado
problemas na interface com Microsoft: se voc der um nome de caminho para a Microsoft
shell, ele precisa as barras invertidas dobrou: C: \ \ WINDOWS.

Caracteres de tabulao
Ns vimos que o shell trata'' espao em branco'', espaos ou caracteres de tabulao, como o
mesmas. Infelizmente, alguns outros programas no. fazer, sendmail e syslogd fazer
distino entre os dois tipos de personagens, e todos eles necessitam de guias (e no espaos) em
determinados lugares. Este um real incmodo, porque quase nenhum editor faz uma distino
entre eles.

unixref.mm, v v4.16 (2003/04/02 06:41:29)

139

Captulo 7: As ferramentas do comrcio

Caracteres de controle do carro


Nos tempos antigos, o terminal de computador padro era um teletipo, uma espcie de computador
controlado mquina de escrever eltrica. Quando o carro, que continha a cabea de impresso, tem que
o fim de uma linha, que necessitou de duas operaes mecnicas para se deslocar para o incio do
linha seguinte: o retorno de carro caractere de controle disse que para mover o carro de volta para a
incio da linha, eo avano de linha carter disseram que virar a placa para a prxima linha.
Geraes de sistemas de computador emulado este comportamento, colocando ambos os personagens em
ao fim de cada linha de texto. Isto torna-se mais difcil reconhecer o fim de linha, que utiliza
mais espao de armazenamento, e normalmente no compra muito. Os implementadores de
UNIX decidiu em vez de usar um nico personagem, o que ele chama o nova linha personagem. Para
alguma razo, eles escolheram o avano de linha para representar nova linha, embora o carter
gerado pela Entrar um retorno de carro. Como vimos acima, a linguagem de programao C
representa como \ N.
Isso causa problemas a transferncia de dados entre o FreeBSD e Microsoft, e tambm quando
imprimir em impressoras que ainda espera os dois personagens. Vamos olhar para as questes de transferncia de arquivos
na pgina 260 e os problemas da impressora na pgina 267.

O editor Emacs
Alm da casca, a segunda ferramenta mais importante a editor, um programa que cria
e alteraes de textos. Outra divergncia de conceito entre UNIX e Microsoft
ambientes UNIX que lhe d uma escolha dos editores em praticamente qualquer coisa que voc faz.
Produtos Microsoft freqentemente tentam redefinir todo o ambiente, por isso, se voc mudar
utentes, voc tambm pode ter que mudar o editor que voc usa para escrever e-mail. Isto tem um
efeito profundo sobre a maneira de trabalhar. Em particular, a forma como o Microsoft torna
desinteressante para escrever um bom editor, porque voc no pode us-lo o tempo todo.
O editor BSD padro vi, sobre o qual as pessoas falam com uma mistura de admirao,
espanto e horror. vi uma das partes mais antigas do BSD. um editor muito poderoso, mas
ningum diria que fcil de aprender. H duas razes para usar vi:
1. Se voc j um experiente vi hacker, voc provavelmente no vai querer mudar.
2. Se voc fizer um monte de trabalho em diferentes sistemas UNIX, voc pode confiar em vi estar l.
sobre o nico em que voc pode confiar.
Se, por outro lado, no sabe vi, e s funciona em sistemas cujo software
voc pode controlar, voc provavelmente no deve usar vi. Emacs muito mais fcil aprender, e
mais poderoso do que vi.

unixref.mm, v v4.16 (2003/04/02 06:41:29)

O editor Emacs

140

Figura 7-4: Menu principal Emacs


Quando executando sob o X, Emacs exibe uma janela prpria (vi usa um xterm sob estas
circunstncias). Como resultado, se voc comear Emacs a partir de um xterm, voc deve usar o &
personagem para inici-lo em segundo plano:
$ Emacs &

A Figura 7-4 mostra o visor resultante. Como voc pode ver, a primeira coisa que Emacs oferece
voc um tutorial. Voc deve lev-la. Voc tambm ver as barras de menu no topo.
Embora paream primitivos em comparao com barras de ferramentas grficos, eles oferecem todo o
funcionalidade dos menus grficos orientados. Alm disso, eles vo te dizer as teclas
que voc pode usar para invocar as mesmas funes. A Figura 7-5 mostra um exemplo da Arquivos
menu.
Existe uma grande quantidade de documentao para Emacs, em grande parte em linha. A completa Emacs
manual est disponvel atravs do Informaes de modo Emacs, que descrito no tutorial. Se
isso no suficiente, leia Aprendizado GNU Emacs, por Debra Cameron, Bill Rosenblatt e
Eric Raymond.
unixref.mm, v v4.16 (2003/04/02 06:41:29)

141

Captulo 7: As ferramentas do comrcio

Figura 7-5: Menu arquivos Emacs

Parando o sistema
Para parar X, pressione a combinao de teclas Ctrl-Alt-Backspace, que escolhido deliberadamente
assemelhar-se a combinao de teclas Ctrl-Alt-Delete usado para reiniciar a mquina. Ctrl-AltRetrocesso X pra e retorna para o terminal virtual em que voc comeou. Se voc
executado a partir de xdm, ele exibe novamente a tela de login.
Para parar o sistema, utilize o encerramento programa. Para isso, voc precisa ser um membro de
grupo operador.
Por padro, o KDE usa o parar programa. Apenas raiz pode usar este programa, ento voc deve
KDE reconfigurar para usar desligamento. Aps isso, voc pode desligar do KDE com o
combinao de teclas Ctrl-Alt-PageDown.

unixref.mm, v v4.16 (2003/04/02 06:41:29)

Neste captulo:
Usurios e grupos
O super-usurio
Processos
Daemons
Processos de parada
A marcao do tempo
Os arquivos de log
Processador de mltipla
apoiar
Dispositivos PC Card
Emulando outros
sistemas
Emulando Linux
Emulando SCO UNIX
Emulando Microsoft
Windows

8
Assumindo o controle

No Captulo 7, vimos os conceitos bsicos de trabalhar com FreeBSD. Nesta parte do livro, vamos
olhar para algumas questes mais especficas do sistema. Este captulo aborda os seguintes tpicos:

UNIX um sistema operacional multi-usurio. Ns j deslizou sobre a criao de usurio


contas, mas na pgina 144 veremos com mais detalhes.

Nem todos os usurios so criados iguais. Em particular, a administrao de login do sistema raiz
tem poder sobre todos os outros usurios. Ns olharemos raiz na pgina 146.

UNIX implementa multi-tasking atravs de um mecanismo chamado processos. Ns olharemos


los na pgina 148.

A marcao do tempo extremamente importante em um sistema de rede. Se o seu sistema tem a


hora errada, pode causar todos os tipos de efeitos estranhos. Na pgina 155, vamos ver como
garantir que o seu sistema est funcionando o tempo correto.

Uma srie de eventos so de interesse em manter a mquina em funcionamento. O


sistema pode ajudar a se manter a par do que acontece. Um mecanismo para isso log
, arquivos que contm informaes sobre o que aconteceu na mquina. Vamos
olh-los na pgina 157.

Na pgina 159, veremos como o FreeBSD lida com sistemas com mais de um
processador. Isto tambm chamado Simtrica Multiprocessador ou SMP apoiar.

Quase todas as laptop moderno tem como nibus especial para cartes de plugin. Ela costumava ser chamado
PCMCIA, um acrnimo para o nome bastante improvvel Pessoal carto de memria de computador
Associao Internacional. Hoje em dia ele chamado PC Card. Mais tarde foi atualizado para uma
Barramento de 32 bits chamado CardBus. Ns veremos como o FreeBSD suporta carto de PC e
CardBus na pgina 159.

unixadmin.mm, v V4.13 (2003/04/02 06:50:29)

143

O FreeBSD completo

144

A partir da pgina 162, veremos o apoio do FreeBSD para emular outros sistemas operacionais
sistemas.

Outros aspectos do FreeBSD so to extensos que vamos dedicar captulos separados para
eles. Vamos olh-los nos captulos 9 a 15.

Para iniciar e parar o sistema muito simples, mas h um nmero surpreendente


de opes. Muitas delas esto relacionadas com a rede, para o Captulo 29, localiza-se depois de o
seo networking.

Usurios e grupos
J olhou para os usurios no Captulo 7. Neste captulo, vamos dar uma olhada mais profunda.
Na tradicional UNIX, informaes sobre os usurios foi mantido no arquivo / Etc / passwd. Como
nome sugere, ele incluiu as senhas que foram armazenados de forma criptografada. Qualquer
usurio poder ler este arquivo, mas a criptografia era forte o suficiente para que ele no era prtico
descriptografar as senhas. Hoje em dia os processadores so muito mais rpido, e muito fcil de quebrar um
senha. Como resultado, FreeBSD mantm a informao real em um arquivo chamado / Etc/master.passwd, e por motivos de desempenho tambm torna disponvel na forma de banco de dados
/ Etc / pwd.db e / Etc / spwd.db. Nenhum destes arquivos so user-readable. / Etc / passwd restos
por razes de compatibilidade: alguns programas de terceiros acess-lo diretamente para obter informaes
sobre o meio ambiente em que esto em execuo.

Escolher um nome de usurio


Ento, o nome de usurio que voc escolhe? Os nomes de utilizador esto normalmente relacionados com o seu verdadeiro nome e
pode ser de at oito caracteres. Como os nomes dos arquivos, eles so case-sensitive. Por
conveno, eles esto em todas as letras minsculas, mesmo quando eles representam verdadeiros nomes. Tpico
maneiras para formar um nome de utilizador so:

Primeiro nome. No meu caso, isto seria greg.

Sobrenome (lehey).

Primeiro nome ea inicial do sobrenome (gregl).

Inicial do primeiro nome e sobrenome (glehey).

Iniciais (GPL).

Nome de utilizador (por exemplo, grog).

Eu escolho a ltima possibilidade, como veremos na discusso a seguir.

unixadmin.mm, v V4.13 (2003/04/02 06:50:29)

145

Captulo 8: Tomar o controle

Adicionando usurios
Ns j vimos como usar sysinstall para criar um usurio. No a nica maneira. L
so, pelo menos, dois outros mtodos. Um deles o programa adduser:
# Adduser
Use a opo-verbose'''' se voc quiser ver mais avisos e perguntas
ou tentar reparar os erros.
Digite o nome de usurio [a-z0-9]: yana
Digite o nome completo []: Yana Lehey
Digite o shell bash csh data no sh [Bash]:
aceitar o padro
Uid [1000]:
aceitar o padro
Digite classe login: default []:
aceitar o padro
Entrar grupo yana [yana]: home
Grupo de login '' casa''. Convidar yana em outros grupos: no
[No]: roda
para ser capaz de usar o su
Digite a senha []:
sem eco
Digite a senha novamente []:
sem eco
Nome: yana
Password: ****
Nome Completo: Yana Lehey
Uid: 1000
Gid: 1001 (em casa)
Classe:
Grupos: roda de casa
HOME: / home / yana
Shell: / bin / bash
OK? (Y / n) [y]:
Adicionados pelo usurio'''' yana
Adicionar outro usurio? (Y / n) [y]: n

aceitar o padro

Uma maneira alternativa de adicionar ou remover utilizadores com o vipw programa. Esta mais uma
abordagem tpica UNIX-hackish: vipw comea seu editor favorito e permite que voc edite
o contedo do ficheiro / Etc / master.passwd. Depois de ter terminado, ele verifica o contedo
e reconstri o banco de dados de senha. A Figura 8-1 mostra um exemplo.

Figura 8-1: vipw exibio


unixadmin.mm, v V4.13 (2003/04/02 06:50:29)

Usurios e grupos

146

Voc pode estar se perguntando por que voc nunca quer fazer as coisas desta maneira, e voc pode
acho engraado que os administradores UNIX mais experientes preferem. A razo que voc
ter mais de uma viso geral do que com uma abordagem olho mgico que ambientes grficos dar
voc, mas claro que voc precisa entender o melhor formato. menos confuso, uma vez que
sabe que cada linha representa um nico utilizador, de que as linhas esto divididas em campos (Que
pode estar vazia), e que cada campo separada da seguinte por dois pontos (:). Tabela 8-1
descreve os campos que voc v na linha em que o cursor est posicionado. Voc pode ler
mais sobre o formato de / Etc / master.passwd na pgina de manual passwd (5).
Tabela 8-1: / Etc / formato master.passwd
Campo
yvonne

Significado
Nome de Usurio.

1005

Senha criptografada. Ao adicionar um novo usurio, deixe este campo em branco


e adicion-lo mais tarde com o passwd programa.
Nmero de usurio.

1001

Nmero do grupo.

(Vazio)

/ Home / yvonne

Entre classe, que descreve uma srie de parmetros para o utilizador.


Ns vamos olhar para isso no Captulo 29, na pgina 564. Este campo no est includo
em / Etc / passwd.
Tempo de mudana de senha. Se no-0, que o tempo em segundos depois de que
a senha deve ser alterada. Este campo no est includo no
/ Etc / passwd.
Tempo de expirao da conta. Se no-0, que o tempo em segundos depois de que
o utilizador expira. Este campo no est includo no / Etc / passwd.
O chamado gecos campo, o qual descreve o utilizador. Este campo usado
por um nmero de programas, em leitores de e-mail em particular, para extrair o real
nome do utilizador.
O nome do diretrio home.

/ Bin / bash

A casca deve ser iniciado quando o usurio fizer login

(Jargo)

0
Yvonne Lehey

O super-usurio
FreeBSD tem um nmero de usurios privilegiados para vrias funes de administrao. Alguns
so apenas apresentar-se os proprietrios dos arquivos particulares, enquanto outros, como demnio e
uucp, existem para executar determinados programas. Um usurio est acima de todos os outros,
no entanto: root
pode fazer praticamente qualquer coisa. O kernel d raiz privilgios especiais, e voc precisa para
tornar-se raiz para executar um nmero de funes, incluindo a adio de outros utilizadores. Certificar-se
raiz tem uma senha, se houver qualquer possibilidade de que outras pessoas podem acessar seu sistema (esta
uma necessidade, se voc tem qualquer tipo de acesso dial-up). Alm de que, raiz um usurio como qualquer
outro, mas para citar a pgina do manual su (1):
unixadmin.mm, v V4.13 (2003/04/02 06:50:29)

147

Captulo 8: Tomar o controle

Por padro (a menos que o prompt reposta por um arquivo de inicializao) no prompt de superusurio
definido para # para lembrar um de seu poder incrvel.

Tornando-se super usurio


Muitas vezes, quando voc est logado normalmente, voc quer fazer algo que exija
ser root. Voc pode sair e entrar novamente como root, claro, mas no h uma maneira
mais fcil
forma:
$ Su
Senha:
#

se tornar super user


como de costume, no ecoar
prompt de raiz

Para usar su, voc deve ser um membro do grupo roda. Normalmente voc fazer isso quando voc
adicionar o utilizador, mas, caso contrrio basta colocar o nome do utilizador no fim da linha em
/ Etc / group:
wheel: *: 0: root, grog

adicione o texto em negrito

BSD trata su um pouco diferente do Sistema V. Primeiro, voc precisa ser um membro do grupo
roda, e em segundo lugar BSD lhe d mais do meio ambiente do que o super-usurio do sistema V. Veja a
pgina de manual para mais informaes.

Ter uma nica raiz senha um risco de segurana em um sistema onde vrias pessoas
saber a senha. Se um deles deixa o projeto, voc precisa alterar a senha.
Uma alternativa o sudo port (/ usr / ports / security / sudo). Ele fornece acesso de granulao fina
a raiz privilgios, todos com base na prpria password do usurio. Ningum precisa saber o
raiz senha. Se um usurio deixa, basta retirar a sua conta, e que cancela seu acesso.

Adicionar ou alterar senhas


Se o seu sistema tem qualquer conexo com o mundo exterior, uma boa idia para mudar o seu
palavra-passe ao longo do tempo. Faa isso com o passwd programa. A entrada no parece
muito interessante:
$ Passwd
Alterando a senha local para Yana.
Old password:
no ecoa
New password:
no ecoa
Confirme a nova senha:
no ecoa
passwd: reconstruir o banco de dados ...
passwd: feito

Voc tem que digitar a senha antiga para certificar-se de que alguns transeuntes no mud-lo
para voc enquanto voc estiver longe do seu monitor, e voc tem que digitar a nova senha
duas vezes para se certificar de que voc no erra e se tranca para fora de sua conta. Se esta
acontecer de qualquer maneira, voc pode logar como raiz e alterar a senha: raiz no faz
tem que digitar a senha antiga, e isso pode alterar a senha de ningum. Por exemplo:

unixadmin.mm, v V4.13 (2003/04/02 06:50:29)

O super-usurio

148

# Passwd yana
Alterando a senha local para Yana.
New password:
no ecoa
Confirme a nova senha:
no ecoa
passwd: reconstruir o banco de dados ...
passwd: feito

Neste caso, voc deve especificar o nome do usurio para quem voc alterar a senha.
Se voc estiver alterando o raiz senha, tome cuidado: fcil o suficiente para se tranca para fora
do sistema se voc mexer as coisas, o que poderia acontecer se, por exemplo, digitado incorretamente
a senha duas vezes da mesma maneira (no ria, isso acontece). Se voc est rodando o X, aberta
outra janela e utilizao su para se tornar root. Se voc estiver executando em modo de caracteres,
selecione
outro terminal virtual e faa o login como raiz l. Somente quando voc tem certeza que ainda pode
acessar raiz voc deve sair.
Se voc fazer conseguem perder o raiz senha, nem tudo pode ser perdido. Reinicie a mquina para
modo de usurio nico (ver pgina 535), e digite:
# Mount-u /
# Mount / usr
Root # passwd
Digite a nova senha:
Digite a senha novamente:
# D

sistema de arquivos raiz montagem de leitura / gravao


sistema de arquivos mount / usr (se separado)
alterar a senha forroot
digite ctrl-D para continuar com a inicializao

Se voc tem um separado / Usr sistema de arquivos (o caso normal), voc precisa mont-lo, bem como,
uma vez que o passwd programa est no diretrio / Usr / bin. Observe que voc deve explicitamente
indicar o nome root: no modo de usurio nico, o sistema no tem o conceito de usurio
IDs.

Processos
Como vimos, o UNIX um sistema operacional multi-usurio, multi-tasking. Em particular,
voc pode executar um programa especfico, mais de uma vez. Ns usamos o termo processo para se referir a um
em particular instncia de um programa em execuo. Cada processo dado um processo de identificao, mais
frequentemente referido como PID, um nmero entre 0 e 99999 que o identifica de forma nica.
H muitas coisas que voc gostaria de saber sobre os processos que esto atualmente
correr, tais como:

Quantos processos esto sendo executados?

Quem est executando os processos?

Por que o sistema to lento?

Qual processo est bloqueando meu acesso ao modem?

Sua principal ferramenta para investigar o comportamento do processo o ps (Estado do processo)


de comando. Ele tem um grande nmero de opes de comando, e posso dizer-lhe uma srie de
coisas que voc s vai entender quando tiver investigado como o kernel funciona,
mas pode ser muito til para uma srie de coisas. Aqui esto alguns usos tpicos:
unixadmin.mm, v V4.13 (2003/04/02 06:50:29)

149

Captulo 8: Tomar o controle

Quais os processos que eu tenho correndo?


Aps o incio de um grande nmero de processos em um certo nmero de janelas sob X,
provavelmente no consegue lembrar o que ainda est em execuo. Talvez os processos que voc pensou que tinha
parou ainda esto em execuo. Para apresentar um breve resumo dos processos que estejam em execuo,
utilizar o ps comando sem opes:
$ Ps
PID
187
188
453

TT
p0
p1
p1

STAT
+
Ss
R +

TEMPO
0:01.02
0:00.62
0:00.03

COMANDO
-Bash (bash)
-Bash (bash)
ps

Esta exposio mostra as seguintes informaes:

O PID do processo.

TT curto para teletipo, e mostra as ltimas letras do nome do controle


do terminal, o terminal em que o processo est a correr. Neste exemplo, os terminais
so / Dev/ttyp0 e / Dev/ttyp1.

STAT mostra o estado do processo atual. envolvido e requer uma certa quantidade de
a compreenso de como o kernel funciona para interpret-lo, veja a pgina man para ps para
mais detalhes.

TEMPO o tempo de CPU que o processo foi usado em minutos, segundos e centsimos
de um segundo. Note-se que muitos outros sistemas UNIX, particularmente o System V, apenas mostrar
este campo para o segundo mais prximo.

COMANDO normalmente o comando que voc digitou, mas no contam com isso. Na prxima
seo, voc vai ver que sendmail mudou sua COMANDO campo para dizer o que
fazendo. Voc notar que o comando na ltima linha o ps que executa a
listagem. Devido a algum problema de tempo complicado no kernel, este processo pode ou
no aparecem na listagem.

Os processos que esto a correr?


H muitos mais processos no sistema do que a lista acima shows. Para mostr-los
todo, com o um opo ps. Para mostrar daemons bem (veja a prxima seo para uma definio
de daemon), use o x opo. Para mostrar muito mais detalhes, use o u ou l opes. Para
exemplo:
$ Ps Waux
USER PID% CPU% MEM
raiz 12 95,7 0,0
raiz 11 95,1 0,0
raiz 1 0.0 0.0
raiz 12 0,0 0,0
raiz 13 0,0 0,0
raiz 15 0,0 0,0
raiz 18 0,0 0,0
raiz 20 0,0 0,0
raiz 21 0,0 0,0
raiz 22 0,0 0,0
raiz 23 0,0 0,0

VSZ RSS TT STAT


0 12? RL
0 12? RL
708 84? TIs
0 12? WL
0 12? WL
0 12? DL
0 12? WL
0 12? WL
0 12? WL
0 12? WL
0 12? WL

unixadmin.mm, v V4.13 (2003/04/02 06:50:29)

COMEOU
1Jan70
1Jan70
1Jan70
1Jan70
1Jan70
1Jan70
1Jan70
1Jan70
1Jan70
1Jan70
1Jan70

COMANDO DE TEMPO
1406:43.85 (idle: cpu0)
1406:44.64 (idle: cpu1)
0:09.10 / sbin / init 15:04.95 (swi1: net)
21:30.29 (swi6: tty: relgio sio)
2:17.27 (aleatrio)
0:00.00 (swi3: cambio)
0:00.00 (IRQ11: ahc0 uhci0 + +)
39:00.32 (IRQ5: rl0)
7:12.92 (IRQ14: ata0)
0:47.99 (IRQ15: ATA1)

Processos
raiz 24 0.0
raiz 25 0.0
raiz 26 0.0
raiz 27 0.0
raiz 340 0.0
raiz 375 0.0
daemon 408 0.0
raiz 420 0.0
raiz 491 0.0
raiz 551 0.0
raiz 562 0.0
raiz 572 0.0
www 582 0.0
grog 608 0.0
raiz 2600 0.0
raiz 33.069 0,0
grog 33081 0,0

150
0.0
0.0
0.0
0.0
0,1
0.0
0.0
0,1
0,1
0.0
0.0
0.0
0.0
0,1
0.0
0.3
0,1

0
0
0
0

12
12
12
12
280
12
152
308
368
12
216

1124
1192
1136
2648
2432
1336
1252
1180
8
2432
8
1316
720
1180
8
5352
1716
1328
752

?
?
?
?
?
?
?
?
?
?
?
v2
?
v0
v1
?
p8

DL
DL
DL
DL
S
Ss
Ss
Ss
Ss
Ss

IWs +
IW
Eu
IWs +
Ss
+

1Jan70
0:00.08 (usb0)
1Jan70
0:00.00 (usbtask)
1Jan70
0:00.07 (usb1)
1Jan70
0:00.08 (usb2)
18Dec02 16:41.11 nfsd: servidor (nfsd)
18Dec02 0:01.70 / usr / sbin / lpd
18Dec02 0:11.41 / usr / sbin / rwhod
18Dec02 0:04.20 / usr / sbin / sshd
18Dec02 0:38.61 / usr / local / sbin / httpd
18Dec02 0:02.71 / usr / sbin / inetd-WW
18Dec02 0:15.50 / usr / sbin / cron
0:00.00 / usr / libexec / getty Pc
- 0:00.00 / usr / local / sbin / httpd
18Dec02 0:00.04-bash (bash)
0:00.00 / usr / libexec / getty Pc
29Dec02 0:01.30 xterm-name xterm
29Dec02
0:00.09 / usr / local / bin / bash

Esta lista apenas um trecho. Mesmo em um sistema recm instalado, a lista real dos processos ser
ser muito maior, de cerca de 50 processos.
Temos visto um nmero desses campos j. Os outros so:

USURIO o ID de usurio real do processo, o ID de usurio da pessoa que o iniciou.

CPU% uma contagem aproximada da proporo do tempo de CPU que o processo apresenta
vindo a utilizar nos ltimos segundos. Esta a coluna para examinar se as coisas de repente
ficar lento.

% MEM uma indicao aproximada da quantidade de memria fsica que o processo de


est a utilizar.

VSZ (Tamanho virtual) a quantidade de memria virtual que o processo est a utilizar, medido
em kilobytes.

RSS (Tamanho do segmento residente) a quantidade de memria fsica em uso atualmente,


medido em kilobytes.

COMEOU a hora ou a data em que o processo foi iniciado.

Alm disso, um nmero surpreendente de processos no tem um terminal de controlo. Eles so


daemons, e ns vamos olhar para eles na prxima seo.

Daemons
Uma parte significativa do trabalho em um sistema FreeBSD realizado por daemons. Um daemon
No apenas o mascote BSD descrito na pgina 20 tambm um processo que se passa em torno de
o plano de fundo e faz o trabalho de rotina, tais como o envio de e-mail (sendmail), manipulao
conexes de entrada da Internet (inetd), ou trabalhos a partir de determinados momentos (cron).
Para citar o Dicionrio de Ingls Oxford: Demnio Tambm daemon. ME [Na forma e no sentido I, a. L.
daemon (Med. L. demnio) ...] 1a. Na antiga mitologia grega (= ' ): Um ser sobrenatural
um intermedirio entre a natureza dos deuses e dos homens, uma divindade inferior, esprito, gnio (incluindo
as almas das pessoas falecidas, esp heris divinizados). Muitas vezes, por escrito daemon para a distino.

unixadmin.mm, v V4.13 (2003/04/02 06:50:29)

151

Captulo 8: Tomar o controle

Voc pode reconhecer daemons em um ps Waux listando pelo facto de eles no tm um


terminal de controle, em vez de ver os personagens ?. Cada daemon tem uma pgina de homem
que descreve o que ele faz.
Normalmente, daemons so iniciados quando o sistema iniciado e executado at que o sistema
parado. Se voc parar por um acidente, normalmente voc pode reinici-los. Uma exceo init,
o qual responsvel por iniciar outros processos. Se voc mat-lo, voc efetivamente matar o
sistema. Ao contrrio dos sistemas tradicionais do UNIX, FreeBSD no permite inicializao para ser morta.

cron
Um dos daemons mais teis cron, em homenagem a Pai Tempo. cron executa
funes em horrios especficos. Por exemplo, o sistema executa o script / Etc / periodic / daily
todos os dias s 02h00, o script / Etc / peridica / semanal todos os sbados s 03h30, e os
escrita / Etc / peridica / mensal no primeiro dia de cada ms s 05h30.
Para dizer cron para executar uma funo em um determinado momento, voc precisa de um arquivo chamado crontab.
O sistema mantm o real crontab onde no se pode chegar a ela, mas voc pode manter uma cpia.
uma boa idia de cham-lo crontab bem.
Vamos olhar para o formato padro do sistema crontab, localizado em / etc / crontab:
# / Etc / crontab - crontab do root para FreeBSD
#
# $ Id: crontab, v 1.10 1995/05/27 01:55:21 Exp ache $
# De: Id: crontab, v 1.6 1993/05/31 02:03:57 Exp cgd
#
SHELL = / bin / sh
PATH = / etc :/ bin :/ sbin :/ usr / bin :/ usr / sbin
HOME = / var / log
#
# Minuto hora
mday ms
wDay que
comando
#
* / 5 *
*** Raiz
/ Usr / libexec / atrun
#
# Rodar arquivos de log a cada hora, se necessrio
# 0 *
*** Raiz
/ Usr / bin / newsyslog
#
# Fazer a manuteno diria / semanal / mensal
0 2 *** raiz
/ Etc / dia 2> & 1
30 3
** 6 raiz
/ Etc / semanal 2> & 1
30 5
1 ** raiz
/ Etc / mensal 2> & 1
#
# Tempo de ajuste mudana de fuso para a parede CMOS de relgio,
# Veja adjkerntz (8) para mais detalhes.
1,31 0-4
*** Raiz
/ Sbin / adjkerntz-a

Como de costume, as linhas comeando com # so comentrios. Os outros tm sete campos. Os cinco primeiros
campos especificam a cada minuto, a hora, o dia do ms, o ms e dia do
semana em que deve ser realizada uma ao. O personagem * meio'' cada''. Assim, 0
2 *** (Por / Etc / dia) significa'' 0 minutos, duas horas (no relgio de 24 horas), todos os dias
do ms, a cada ms, a cada dia da semana.''
Nmero do campo seis especial: ela s existe em / Etc / crontab, e no em crontabs privadas. Ele
especifica o utilizador para o qual deve ser realizada a operao. Quando voc escreve o seu
prprio crontab arquivo, no use este campo.
unixadmin.mm, v V4.13 (2003/04/02 06:50:29)

Daemons

152

Os restantes campos definem a operao a ser realizada. cron no l o seu shell


arquivos de inicializao. Em particular, isso pode significar que ele no vai encontrar programas que voc espera que ele
encontrar. uma boa idia para colocar em explcita PATH definies, ou especificar um caminho absoluto
para o programa, tal como feito neste exemplo. cron mails a sada para voc, ento voc deve
verificar correio de raiz ao longo do tempo.
Para instalar ou listar um crontab, use o crontab programa:
$
$
#
#
#
0

crontab crontab
instalar um crontab
crontab-l
listar o contedo de um crontab instalado
No edite esse FILE - editar o mestre e reinstalar.
(Crontab instalado em Qua 01 de janeiro 15:15:10 1997)
(Verso Cron - $ Id: crontab.c, v 1.7 1996/12/17 00:55:12 PST Exp $)
0 *** / home / grog / Scripts / gira-log

Processos em FreeBSD Release 5


Alguns dos processos no exemplo acima so especficos para o FreeBSD Release 5:

FreeBSD Release 5 tem um processo ocioso de utilizar-se o tempo de processamento em excesso e


executar determinadas atividades necessrias quando nenhum processo est ativo. Este exemplo mquina
tem dois processadores, de forma que h dois deles:
raiz 12 95,7 0,0 0
raiz 11 95,1 0,0 0

12? RL
12? RL

1Jan70 1406:43.85 (idle: cpu0)


1Jan70 1406:44.64 (idle: cpu1)

Um certo nmero de processos tm nomes comeam com irq ou swi:


raiz
raiz
raiz
raiz
raiz
raiz
raiz

12
13
18
20
21
22
23

0.0
0.0
0.0
0.0
0.0
0.0
0.0

0.0
0.0
0.0
0.0
0.0
0.0
0.0

0
0
0
0
0
0
0

12
12
12
12
12
12
12

?
?
?
?
?
?
?

WL
WL
WL
WL
WL
WL
WL

1Jan70 15:04.95 (swi1: net)


1Jan70 21:30.29 (swi6: tty: s
1Jan70
0:00.00 (swi3: Cambi
1Jan70
0:00.00 (IRQ11: ahc0
1Jan70 39:00.32 (IRQ5: rl0)
1Jan70
7:12.92 (IRQ14: ata0)
1Jan70
0:47.99 (IRQ15: ATA1)

Estes processos lidar com interrupes de hardware (IRQ) ou interrupes de software (SWI). O
texto que se segue d uma ideia do que os dispositivos de software ou servios que eles suportam.

topo
Outra ferramenta para investigar o desempenho do sistema parte superior, que mostra uma srie de
critrios de desempenho, incluindo o status dos processos esto usando a maioria dos recursos.
Inici-lo com o nmero de processos que voc deseja exibir. A Figura 8-2 mostra um exemplo.

unixadmin.mm, v V4.13 (2003/04/02 06:50:29)

153

Captulo 8: Tomar o controle

$ Top-S 10
ltima pid: 3992; mdias de carga: 0,59, 0,17, 0,06 por 0 +23:54:49 17:25:13
87 processos: trs em execuo, 73 dormir, 8 de espera, trs de bloqueio
CPU estados: 10,2 user%, 0,0% agradvel, sistema de 18,8%, 1,7% de interrupo, 69,4% idle
Mem: 43M Ativo, INACT 36M, 31M Wired, Cache 7460K, Buf 22M, 2996K grtis
Swap: Total de 512M, 512M grtis
PID

USURIO
raiz
raiz
grogue
raiz
raiz
grogue
raiz
raiz
raiz
raiz

12
1
2854
20
2925
3193
3783
167
25
110

PRI AGRADVEL SIZE RES STATE


-16 0
0K RUN 12K
-16 0
0K CPU1 12K
97 0 4940K 3932K * gigante
-64 -183
0K ESPERA 12K
96 0
712K 608K select
96 0 2220K 1304K CPU0
96 0
520K 416k select
96 0 13876K 2112K escolha
-68 -187
0K ESPERA 12K
96 0 1528K 956K escolha

C
TEMPO WCPU
CPU COMANDO
0 23.7H 55,32% 55,32% idle: cpu0
1 23.7H 54,49% 54,49% idle: cpu1
1
0:04 3,88% 3,86% xterm
1 0:08 0,83% 0,83% IRQ14: ata0
1
0:01 0,15% 0,15% make
00:01 0 0,15% 0,15% superior
1
0:00 0,10% 0,05% make
0
01:02 0,00% 0,00% xcpustate
00:28 0 0,00% 0,00% IRQ9: xl0
1
0:26 0,00% 0,00% ntpd

Figura 8-2: Exibio topo


Por padro, a exibio atualizada a cada dois segundos e contm uma grande quantidade de informaes
a respeito do estado do sistema:

A primeira linha d informaes sobre o ltimo destinou PID (voc pode usar isso para
seguir o nmero de processos sendo criados) ea carga mdia, o que d
informaes sobre quantos processos esto espera de ser agendada.

A linha seguinte d uma viso geral das estatsticas do processo, e em que estado se encontram. A
processo espera por eventos externos para completar, ele espera em um bloqueio, se algum outro processo
tem um recurso do kernel que ele quer.

A terceira linha mostra o percentual de tempo utilizado em modo de usurio, no sistema (kernel)
Modo e por interrupes.

A quarta linha mostra o uso de memria.

As linhas restantes mostram os dez processos mais ativos (porque o parmetro 10


foi especificado na linha de comando). O -S opo diz topo para incluir sistema
processos, tais como o inactivo e os processos de interrupo. O estado pode ser:

A quinta linha mostra as estatsticas de swap. Quando ocorre a troca de actividade, parece tambm
nesta linha.

Prazo, quando o processo est esperando por um processador para correr.

CPU0 ou CPU1, quando o processo est activamente a execuo.

* Bloqueio, onde travar o nome de um bloqueio do kernel. Neste exemplo, a xterm


aguardando o bloqueio Gigante.

A esperar corda, o que indica um evento em que o processo est em espera.

Veja a pgina de manual top (1) para mais detalhes.

unixadmin.mm, v V4.13 (2003/04/02 06:50:29)

Daemons

154

Processos de parada
s vezes voc pode achar que voc quiser parar um processo em execuo. Existem
nmero de maneiras de fazer isso, mas o mais fcil :

Se o processo est sendo executado em um terminal, e ele est aceitando entrada, pressionando a tecla EOF
(Normalmente Ctrl-D), muitas vezes, faz-lo.

Se EOF no faz-lo, tente a tecla INTR (geralmente Ctrl-C).


Se o processo for ignorando INTR, ou se ele no est associado com um terminal, a utilizar matar
de comando. Por exemplo, para descobrir quem est usando todo o tempo de CPU, use ps e olhar para
o CPU% campo:
# Ps Waux | grep cron
raiz 105 97,3 1,1 236 340?

09:11 137:14.29 cron

Aqui, cron usa 97% do tempo de CPU, e acumulou ao longo de 2 horas de CPU
vez desde esta manh. bvio que doente, e devemos coloc-lo fora de sua misria.
Para par-lo, digite:
# Kill 105

Este comando envia um sinal de chamada SIGTERM (Encerrar) para o processo. Este sinal
d o tempo do processo para arrumar antes de sair, por isso voc deve sempre tentar us-lo
em primeiro lugar. O 105 PID do cron, que temos a partir do ps de comando.
Se o processo no desaparece dentro de alguns segundos, provavelmente ignorando SIGTERM.
Neste caso, voc pode usar a arma definitiva:
# Kill -9 105

O -9 o nmero de SIGKILL, um sinal que no pode ser detectada ou ignorados. Voc pode
encontrar uma lista dos sinais e seus valores numricos em / Usr / include / sys / signal.h, que
parte do pacote de desenvolvimento de software.
FreeBSD tambm tem um script chamado killall. Como o nome indica, ele mata um grupo de
processos, por nome. Se voc achar que voc tem, digamos, um monte de fugitivo sendmail
processos, voc pode salvar o dia escrevendo:
# Killall sendmail

Como veremos em outro lugar, voc tambm pode usar killall para enviar um sinal para um processo nico quando
voc sabe que apenas um est presente. Por exemplo, para causar inetd reler o seu
arquivo de configurao, voc pode escrever:
# Killall -1 inetd

unixadmin.mm, v V4.13 (2003/04/02 06:50:29)

155

Captulo 8: Tomar o controle

A marcao do tempo
FreeBSD um sistema de rede, mantendo assim a hora certa mais importante do que em um
sistema autnomo. Alm do problema bvio de manter o mesmo tempo que a outra
sistemas locais, tambm importante para manter o tempo com os sistemas de outros fusos horrios.
Internamente, o FreeBSD mantm o tempo como o nmero de segundos desde o epoch, a
incio da histria registrada: 00:00:00 UTC, 1 de Janeiro de 1970. UTC o internacional
zona horria da base e meio Tempo Universal Coordenado, apesar das iniciais. Ele
corresponde muito de perto, mas no exatamente, para Greenwich Mean Time (GMT), o local de mdia
tempo na Inglaterra no inverno. Seria inconveniente para manter todas as datas em UTC, de modo que o
sistema entende o conceito de fusos horrios. Por exemplo, em Walnut Creek, CA, o
fuso horrio no inverno chamado PST (Pacific Standard Time), e no vero
PDT (Pacific Daylight Time). FreeBSD vem com um conjunto de arquivos de descrio de fuso horrio em
a hierarquia de diretrio / Usr / share / zoneinfo. Ns j vimos na pgina 95, que quando
voc instalar o sistema, que armazena informaes sobre o fuso horrio local no arquivo
/ Etc / localtime. Se voc mover fusos horrios, voc deve alterar o fuso horrio, e no o tempo,
ou atravs da execuo do tzsetup programa, ou simplesmente copiando o arquivo. Por exemplo, se
viajar com um laptop de Adelaide, Austrlia do Sul, a San Francisco CA, voc faria:
# Cp / usr / share / zoneinfo / America / Los_Angeles / etc / localtime

Quando voc chegar em casa novamente, voc faria:


# Cp / usr / share / zoneinfo / Australia / Adelaide / etc / localtime

Em nenhum momento voc precisa para mudar a data ou hora diretamente.


Porqu Los_Angeles e no San_Francisco? Os desenvolvedores do pacote de fuso horrio
escolheu a maior cidade do fuso horrio. Voc precisa ter uma certa compreenso da
fusos horrios para escolher o correto.

A varivel de ambiente TZ
Um meio alternativo de descrever o fuso horrio definir a varivel de ambiente TZ,
que ns olhamos na pgina 128. Voc pode usar esta forma, se voc estiver conectado a um
sistema remoto em um fuso horrio diferente, ou talvez apenas para encontrar o tempo em algum outro lugar.
Por exemplo, em Adelaide, SA que eu poderia encontrar:
$ Date
Sun 14 abr 13:31:15 CST 2002
$ TZ = America / Los_Angeles data
Sb 13 abr 2002 21:01:15 PDT

Defina o TZ varivel para o nome da zona de arquivo de informaes do tempo no / Usr / share / zoneinfo
hierarquia. Por exemplo, o valor de TZ para Berlim, a Alemanha Europe / Berlin em
FreeBSD.

unixadmin.mm, v V4.13 (2003/04/02 06:50:29)

A marcao do tempo

156

Esta no a mesma que a utilizao do TZ varivel em UNIX System V. System V


no tem tempo arquivos de definio de zona de / Usr / share / zoneinfo, ento o TZ varivel diz
que informaes sobre o fuso horrio. Se voc estiver usando o System V, em Berlim, voc definiria
seu TZ varivel MEZ1MSZ2, indicando nomes de fuso horrio e deslocamentos de UTC.

Mantendo o horrio correto


Se voc estiver conectado Internet em uma base razoavelmente regular, h uma srie de
programas que podem ajud-lo a sincronizar o seu tempo atravs da ntp (Network Time Protocol)
servio.
Um certo nmero de sistemas de todo o mundo informaes de tempo atravs do fornecimento ntp servio. Veja
em http://www.eecis.udel.edu/ ~ mills / ntp / servers.html para encontrar um perto de voc.
Sua escolha do programa depende da natureza de sua conexo com a Internet. Se
voc est conectado em tempo integral, voc provavelmente vai preferir ntpd, que mantm o sistema
sincronizada. Caso contrrio, voc pode usar ntpdate, que voc pode correr como lhe apetecer.
ntpd
ntpd executa consultas peridicas para manter o sistema sincronizado com um servidor de tempo.
H muitas maneiras de execut-lo, veja a pgina man ntpd (8). Na maioria dos casos, voc pode configurar
um sistema na rede para se conectar a uma referncia de tempo externa, e os outros sistemas
na mesma Ethernet pode obter a informao do tempo a partir do primeiro sistema.
Para obter o tempo de uma fonte externa e transmiti-lo aos outros sistemas na
rede, crie um arquivo / Etc / ntp.conf com um contedo como este:
servidor 227.21.37.18
driftfile / etc / ntp.drift
transmitir 223.147.37.255

este endereo invlido, verificar o que est perto de voc

A primeira linha define o servidor. O valor, neste exemplo, invlido, por isso no tente usar
lo. importante ter um perto de voc: atrasos de rede pode prejudicar significativamente o
exactido dos resultados. ntpd usa o arquivo / Etc / ntp.drift para registrar informaes sobre o
(In) exatido do relgio do sistema local. Voc s precisa da linha final, se voc tiver outros
sistemas na rede que esperar por uma mensagem de difuso. Especifica a transmisso
endereo para a rede e tambm diz ntpd para transmitir neste endereo.
Depois de configurar o arquivo, voc s precisa comear ntpd :
# Ntpd

Para garantir que ntpd iniciada cada vez que voc reiniciar, certifique-se de que voc tem o
seguintes linhas de / Etc / rc.conf :
ntpd_enable = "YES"

# Execute ntpd Network Time Protocol (ou NO).

O comentrio na primeira linha enganador: o valor de ntpd_enable deve ser SIM.


Voc no precisa de todas as bandeiras. Voc colocou exatamente o mesmo texto no / Etc / rc.conf na outra
mquinas, e simplesmente omitir o arquivo / Etc / ntp.conf. Isso faz com que NTPD em que essas mquinas
unixadmin.mm, v V4.13 (2003/04/02 06:50:29)

157

Captulo 8: Tomar o controle

monitorar mensagens de difuso.


Nas verses anteriores do FreeBSD, ntpd foi chamado xntpd, ento voc pode encontrar coisas como
xntpd_enable na sua / Etc / rc.conf. Se voc fizer isso, voc vai ter que mudar o nome.
ntpdate
Se voc se conectar Internet com pouca frequncia, ntpd pode tornar-se desanimado e no manter
bom tempo. Neste caso, melhor usar ntpdate. Basta execut-lo quando voc deseja definir o
tempo:
Server # ntpdate

Voc no pode usar tanto ntpdate e ntpd ao mesmo tempo: ambos usam a mesma porta. ntpd
leva algum tempo para sincronizar, e se o tempo est totalmente fora, no vou nem tentar, ento
muitas vezes uma boa idia para executar ntpdate na inicializao e, em seguida, comear a ntpd manualmente.

Os arquivos de log
Vrios componentes de relatar problemas FreeBSD ou itens de interesse como eles acontecem. Para
exemplo, sempre pode haver problemas com a entrega de correio, para um servidor de correio deve manter
algum tipo de registro do que vem fazendo. Se ocorrerem problemas de hardware, o kernel
deve relat-los. Se algum tenta invadir a mquina, os componentes afetados
deve relatar o fato.
FreeBSD tem um sistema generalizado de registro tais eventos. O syslogd daemon leva
mensagens de vrias fontes e escreve-los para vrios destinos, geralmente arquivos de log
no diretrio / Var / log. Voc pode alterar este comportamento modificando o arquivo
/ Etc / syslog.conf. Veja syslog.conf (5) para mais detalhes. Alm de syslogd, outro
programas escrever diretamente para arquivos nesse diretrio. Os seguintes arquivos so de interesse:

XFree86.0.log contm o arquivo de log para o ltimo (ou atual) X sesso comeou em
exibir 0. Esta a principal fonte de informao, se voc tiver problemas com o X.

auth.log contm informaes sobre a autenticao do usurio. Por exemplo, voc pode
veja:
10 de dezembro 10:55:11 bumble
10 de dezembro 12:00:19 bumble
10 de dezembro 12:00:19 bumble
10 de dezembro 00:06:52 bumble
port 49564 ssh2
10 de dezembro 12:06:58 bumble

su: grog para erradicar on / dev/ttyp0


sshd [126]: Servidor :: escutando a porta 22.
sshd [126]: Servidor ouvindo na porta 22 0.0.0.0.
sshd [167]: publickey aceito para grog de 223.147.37.80
su: BAD SU grog a raiz / dev/ttyp0

A primeira linha um sucesso su invocao, a ltima linha um fracassado


(Porque a senha foi digitado errado). As mensagens so de at 00:00:19 sshd
inicializao, ea mensagem de 12:06:52 um login remoto com sucesso ssh.

unixadmin.mm, v V4.13 (2003/04/02 06:50:29)

Os arquivos de log

158

cron um arquivo de log para cron. relativamente desinteressante:


Jan
Jan
Jan
Jan

5
5
5
5

16:00:00
16:05:00
16:05:00
16:10:00

bumble
bumble
bumble
bumble

newsyslog [2668]:
/ Usr / sbin / cron
/ Usr / sbin / cron
/ Usr / sbin / cron

logfile entregue
[2677]: (root) CMD (/ usr / libexec / atrun)
[2678]: (root) CMD (/ usr / libexec / atrun)
[2683]: (root) CMD (/ usr / libexec / atrun)

Se voc tiver problemas com cron, que pode mudar rapidamente.

dmesg.today e dmesg.yesterday so criadas pela cron trabalho em duas horas todos os dias. O
dmesg buffer de mensagens envolve, substituindo as entradas mais antigas, para que eles possam ser de uso.

lastlog um arquivo de gravao de ltima informao de login binrio. Voc normalmente no acess-lo
diretamente.

maillog contm informaes sobre a entrega de correio.

Os arquivos mount.today e mount.yesterday mostrar os sistemas de arquivos montados atualmente


no formato necessrio para / Etc / fstab.

O arquivo ppp.log contm informaes sobre as conexes PPP. Ns olhamos para ele na pgina
353.

Os arquivos setuid.today e setuid.yesterday conter uma lista de setuid arquivos. A diria


verificao de segurana compara-os e envia uma mensagem de correio se existem diferenas.

O arquivo vinum_history contm informaes sobre vinum atividade.

mensagens o arquivo de log principal.

O arquivo wtmp contm informaes sobre logins no sistema. Como lastlog, est em
forma binria. Ver utmp (5) para o formato de dois lastlog e wtmp.

Um grande nmero de arquivos de log mais importantes so mantidos por vrios ciclos. Como o exemplo
acima mostra, cron corre o newsyslog comandar a cada hora. newsyslog verifica o tamanho
dos ficheiros, e se forem maiores do que um certo tamanho, renomeia os antigos dando
lhes uma extenso numrica um maior do que o atual, ento muda o nome do arquivo de base
com uma extenso 0,0 e comprime. O resultado se parece com isso:
-Rw-r - r -Rw-r - r -Rw-r - r -Rw-r - r -Rw-r - r -Rw-r - r -Rw-r - r -

1
1
1
1
1
1
1

raiz
raiz
raiz
raiz
raiz
raiz
raiz

roda 31773 05 de janeiro mensagens 13:01


roda
8014 02 de janeiro 01:00 messages.0.bz2
roda 10087 15 de dezembro 14:00 messages.1.bz2
roda
9940 03 de dezembro 17:00 messages.2.bz2
roda
9886 16 de novembro 11:00 messages.3.bz2
roda
9106 05 de novembro 18:00 messages.4.bz2
roda
9545 15 de outubro 17:00 messages.5.bz2

newsyslog tem um arquivo de configurao / Etc / newsyslog.conf, que discutiremos na pgina 565.

unixadmin.mm, v V4.13 (2003/04/02 06:50:29)

159

Captulo 8: Tomar o controle

Suporte ao processador Multiple


FreeBSD Release 5 pode suportar mais atual Intel e AMD multiprocessador me
placas com a arquitetura ia32. Ele tambm suporta alguns Alpha, SPARC64 e Intel ia64
motherboards. Documentao em suporte SMP atualmente bastante escassa, mas voc pode encontrar
algumas informaes em http://www.freebsd.org/ ~ FSMP / SMP / SMP.html.
O GENRICO kernel no suporta SMP, ento voc deve construir um novo kernel antes de
pode utilizar mais do que um processador. O arquivo de configurao / Usr/src/sys/i386/conf/GENERIC
contm os seguintes comentada entradas:
# Para fazer um kernel SMP, os dois prximos so necessrios
# Opes de SMP
# Symmetric Kernel MultiProcessor
# Opes APIC_IO
# Symmetric (APIC) I / O

Para outras plataformas, voc no precisa APIC_IO. Consulte o Captulo 33 para obter informaes
sobre como
construir um novo kernel.

Dispositivos PC Card
Como j vimos, os dispositivos PC Card so especiais porque pode ser conectada a quente.
Eles tambm se destinam a ser reconhecidos automaticamente. Comeando com verso 5, FreeBSD
reconhece a insero e remoo de cartes no kernel e invoca o driver apropriado para
manipular o evento. Quando voc insere um carto que voc vai ver algo parecido com isso no sistema
console:
ata2 na porta 0x140-0x14f irq 11 funo de configurao 0 1 em pccard0
ad4: 7MB <LEXAR ATA FLASH> [251/2/32] em ata2-master BIOSPIO

Este um carto de memria flash compacto, que o sistema considera como um disco ATA. O kernel
criou as estruturas necessrias, mas no pode saber como montar o dispositivo, para
exemplo. Veremos o que podemos fazer sobre isso na prxima seo.

DEVD: O daemon dispositivo


O daemon do dispositivo, DEVD, fornece uma maneira de executar programas userlndia quando determinado ncleo
eventos acontecem. Destina-se a gerenciar a configurao de espao de usurio de dispositivos PC Card como
Placas Ethernet, o que ele pode fazer automaticamente. Ns vamos olhar para esse uso automtico na pgina
304.
DEVD l as informaes do evento do kernel a partir do dispositivo / Dev / devctl e processade acordo com as regras especificadas no arquivo de configurao / Etc / devd.conf, que instalado
com o sistema. Se voc quiser us-lo para outros dispositivos, voc deve modificar / Etc / devd.conf.
Este arquivo contm um nmero de sees, conhecido como declaraes na pgina de manual:

O opes declarao descreve os caminhos de arquivo e uma srie de expresses regulares


(Padres) para procurar nas mensagens que ele l / Dev / devctl.

unixadmin.mm, v V4.13 (2003/04/02 06:50:29)

Dispositivos PC Card

160

anexar declaraes especificar qual ao a ser executada quando um dispositivo conectado. Para
exemplo:
anexar 0 {
device-name "$ scsi-controlador-regex";
ao "CamControl redigitalize tudo";
};

O device-name entrada usa a expresso regular $ Scsi-controlador-regex a


reconhecer o nome de um controlador SCSI na mensagem anexar. O ao entrada
em seguida, especifica qual ao a ser tomada quando tal dispositivo conectado ao sistema. Em
Neste caso, corre-se o CamControl programa para repetir a verificao dos barramentos SCSI e reconhecer qualquer
novos dispositivos que tenham sido adicionados.
Mltiplo anexar declaraes podem corresponder a um evento especfico, mas apenas um ser executado.
A ordem em que so verificados indicado por um prioridade, um valor numrico depois
a palavra-chave ao. As afirmaes so verificadas em ordem de maior para o menor
prioridade numrica.

separar declaraes tm a mesma sintaxe anexar declaraes. Como o nome sugere,


eles so executados quando um dispositivo destacada.
Nem sempre possvel ou necessrio para executar qualquer ao quando um dispositivo
removido. No caso de placas SCSI, no h separar declarao. Ns vamos olhar para este
emitir em mais detalhe abaixo.

Finalmente, se o kernel no foi capaz de localizar um driver para a placa, ele gera um preo
evento, que tratada pela NoMatch declarao.

Ento, o que faz DEVD fazemos quando inserir o carto compact flash? Por padro, nada. O
Motorista ATA reconhece e configura o carto. Seria bom ter DEVD mont-lo
bem. Isso relativamente simples:

Certifique-se de que voc tem uma entrada para o dispositivo em / Etc / fstab. As cmeras digitais criar um
nico sistema de arquivos MS-DOS em cartes de memria flash. Uma entrada apropriada no / Etc / fstab para esta
dispositivo pode ser:
/ Dev/ad4s1

/ Cmera

msdos

rw, noauto

Este um dispositivo removvel, ento voc deve usar o noauto palavra-chave para parar o sistema
tentando mont-lo na inicializao do sistema.

No opes seo / Etc / devd.conf, adicione uma expresso para reconhecer os nomes de
Controladores ATA:
definir ata-controlador-regex
"Ata [0-9] +";

Adicionar um anexar seo para o dispositivo:

unixadmin.mm, v V4.13 (2003/04/02 06:50:29)

161

Captulo 8: Tomar o controle


anexar 0 {
device-name "$ ata-controlador-regex";
ao "mount / cmera";
};

Restart DEVD :
# Killall DEVD
# DEVD

Depois disso, o sistema de arquivos ser montado automaticamente quando voc inserir o carto.

Remoo de dispositivos PC Card


A prxima coisa que gostaria de fazer desmontar o sistema de arquivos quando voc remove o flash
carto. Infelizmente, isso no possvel. Desmontando pode envolver a transferncia de dados, assim voc
tem que fazer isso antes de remover o carto. Se voc esquecer, e remova o carto sem
desmontagem, o sistema pode entrar em pnico prxima vez que voc tentar acessar o carto.
Depois de desmontar, voc pode remover o carto. No console voc vai ver algo como:
ad4: removido da configurao
ad4: no status, dispositivo reselecting
ad4: comando de tempo limite de envio = E7 = s ff e = 04
ad4: limpeza de cache em detach falhou
ata2: Separada

Cdigo do carto alternativo PC


A implementao PC Card aqui descrito, chamado Newcard, nova no FreeBSD
Solte 5. No momento da escrita, a implementao mais velho, chamado OLDCARD, ainda
includa no sistema. possvel que voc pode ter um carto antigo que suportada
por OLDCARD mas no por Newcard. Nesse caso, voc precisar construir um kernel com
Apoio OLDCARD.
Verifique a
NOTAS arquivos
/ Usr / src / sys / conf e
/ Usr / src / sys / arch / conf, onde arch a arquitetura do seu sistema, e as pginas do manual
pccardd e pccard.conf.

Configurando dispositivos PC Card na inicializao


Um certo nmero de entradas em / Etc / rc.conf referem-se ao uso de dispositivos de placa de PC, mas quase todos
eles so para OLDCARD. Voc s precisa de um para Newcard:
devd_enable = "YES"

Isso inicia DEVD na inicializao do sistema.

unixadmin.mm, v V4.13 (2003/04/02 06:50:29)

Dispositivos PC Card

162

Emulando outros sistemas


Um grande nmero de sistemas operacionais so executados em hardware Intel, e h um monte de software
que est disponvel para estes outros sistemas operacionais, mas no para o FreeBSD.

Emuladores e simuladores
H um certo nmero de maneiras de executar software escrito para uma plataforma diferente. O
mais populares so:

Simulao um processo em que um programa executa as funes que so normalmente


realizada pelo conjunto de instrues nativo de uma outra mquina. Eles simulam a baixa
instrues do nvel da mquina alvo, de modo simuladores no tem que ser executado no mesmo
tipo de mquina que o cdigo que eles executam. Um bom exemplo a porta
emulators/p11, que simula um minicomputador PDP-11, o aparelho para o qual a maioria
primeiras verses do UNIX foram escritas.
Simuladores de correr muito mais lentamente do que o conjunto de instrues nativa: para cada simulado
instruo, o simulador pode executar centenas de instrues da mquina. Surpreendentemente,
na maioria das mquinas modernas, a p11 emulador ainda corre mais rpido do que o original
PDP-11: mquinas modernas so mais de 1.000 vezes mais rpido do que o PDP-11.

Em geral, emuladores executar as instrues de programa directamente e apenas a simular


ambiente operacional do sistema. Como resultado, eles tm que correr no mesmo tipo de
hardware, mas eles no so visivelmente mais lento do que o original. Se houver alguma
diferena no desempenho, por causa das diferenas entre o operacional hospedeiro
e do sistema operacional emulado.

Outro uso para o termo emulador onde o hardware entende um diferente


conjunto de instrues que o nativo. Obviamente, isso no o tipo de emulador que estamos
falando aqui.

FreeBSD pode emular muitos outros sistemas at um ponto onde as aplicaes escritas para estes
sistemas ser executado sob FreeBSD. A maioria dos emuladores so na coleo de ports no
diretrio / Usr / ports / emuladores.
Num certo nmero de casos, o suporte de emulao em fase experimental. Aqui est um
Resumo:

FreeBSD ir executar programas mais BSD / OS sem problemas. Voc no precisa de um


emulador.

FreeBSD tambm vai rodar a maioria dos executveis do NetBSD e OpenBSD, embora no muitos
as pessoas fazem isso: mais seguro para recompilar os sob FreeBSD.

FreeBSD executado executveis do Linux com o auxlio do linux kld (Kernel carregvel
mdulo). Veremos como us-lo na prxima seo.

FreeBSD pode rodar executveis COFF SCO com o auxlio do iBCS2 kld. Este apoio
um pouco irregular: embora os executveis ser executado, voc pode ter problemas
causada por diferenas na estrutura de diretrios entre SCO e FreeBSD. Vamos
unixadmin.mm, v V4.13 (2003/04/02 06:50:29)

163

Captulo 8: Tomar o controle

olh-lo na pgina 164.

A Microsoft Windows emulador est disponvel. Vamos olhar para ele na pgina 165.

Emulando Linux
Linux um sistema operacional UNIX-like, que em muitos aspectos muito semelhante ao FreeBSD.
Discutimos o assunto na pgina 10. Embora parea muito UNIX-like, muitos dos internos
as interfaces do kernel so diferentes daquelas do FreeBSD e outros sistemas baseados em UNIX. O
Pacote de compatibilidade Linux lida com essas diferenas, e mais software Linux ser executado
em FreeBSD. A maioria das excees usar drivers especficos que no funcionam no FreeBSD,
embora haja um esforo considervel para minimizar ainda nesta categoria.
Para instalar o emulador de Linux, voc deve:

Instalar as bibliotecas de compatibilidade. Estes so, no porto / Usr/ports/emulators/linux_base.

Execute o emulador de Linux kld, linux.

Executando o emulador de Linux


Normalmente voc carregar o emulador de Linux ao inicializar o sistema. Coloque a seguinte linha
na sua / Etc / rc.conf :
linux_enable = "YES"

Se voc no quer fazer isso por algum motivo, voc pode inici-lo a partir da linha de comando:
# Kldload linux

Voc no interagir diretamente com o mdulo emulador: s l para fornecer ncleo


funcionalidade, de modo a obter um novo aviso imediatamente quando voc inici-lo.
linux um kld, por isso no aparece em um ps listagem. Para verificar se ele est carregado, use
kldstat:
$ Kldstat
Id Refs Endereo
1 5 0xc0100000
2 2 0xc120d000
3 1 0xc121b000
5 1 0xc1771000

Tamanho
1d08b0
a000
3000
E000

Nome
ncleo
ibcs2.ko
ibcs2_coff.ko
linux.ko

Este perfil mostra que a emulao SCO UNIX (iBCS2) tambm foi carregado.
O emulador de Linux e muitos programas Linux esto localizadas na hierarquia de diretrios
/ Usr / compat / linux. Voc normalmente no ir precisar acess-los diretamente, mas se voc pegar um
Programa Linux que inclui as bibliotecas destinadas a / Lib, voc ter que colocar manualmente
los em / Usr / compat / linux / lib. Ser muito cuidado para no substituir os arquivos no / Usr / lib
unixadmin.mm, v V4.13 (2003/04/02 06:50:29)

Emulando Linux

164

hierarquia com as bibliotecas do Linux, o que tornaria impossvel para executar programas do FreeBSD
que dependem deles, e frequentemente muito difcil de recuperar esses problemas.
Note-se que o FreeBSD no tem um diretrio / Lib, portanto, o perigo relativamente menor.

Linux procfs
Sistemas Linux tem um sistema de arquivo chamado procfs, ou processo de sistema de arquivo, que contm
informaes utilizadas por muitos programas. FreeBSD tambm tem um procfs, mas completamente
diferente. Para ser capaz de executar programas Linux que se referem a procfs, coloque o seguinte
entrada no seu / Etc / fstab arquivo:
linproc

/ Compat / linux / proc linprocfs

rw

Problemas executando Linux binrios


Um dos problemas com o formato ELF usado por mais binrios Linux que eles possam
no contm informaes para identific-los como binrios Linux. Eles podem ser igualmente bem
BSD / OS ou UnixWare binrios. Isso no normalmente um problema, a menos que haja biblioteca
conflitos: o sistema no pode decidir qual biblioteca compartilhada de usar. Se voc tem este tipo de
binria, voc deve marca o executvel usando o programa brandelf. Por exemplo, a
marca o programa StarOffice swriter3, voc deve digitar:
# Brandelf-t Linux / usr/local/StarOffice-3.1/linux-x86/bin/swriter3

Este exemplo deliberadamente mostra uma verso muito antiga do StarOffice: no claro que no
quaisquer binrios modernos que causam esses problemas.

Emulando SCO UNIX


SCO UNIX , Tambm conhecida como OpenDesktop SCO e SCO Open Server, baseado em UNIX
Sistema V.3.2. Esta verso especial do UNIX era corrente no final de 1980. Ele usa um
formato binrio obsoleto chamado COFF (Common Object File Format).
Como suporte ao Linux, SCO apoio para FreeBSD fornecido como um mdulo do kernel carregvel.
Ele no chamado sco, no entanto: um nmero de sistema antigo V.3.2 sistemas, incluindo interativo
UNIX, tambm suportam a ibcs21 padro. Como resultado, o kld chamado iBCS2.
Executar iBCS2 apoio como suporte Linux: inici-lo manualmente, ou modificar / Etc / rc.conf para inici-lo
automaticamente na inicializao:
ibcs2_enable = "YES"

# IBCS2 (SCO) emulao carregados na inicializao (ou NO).

Em alternativa, carregue o kld:

1. iBCS2 stands para Intel System compatibilidade binria 2.


unixadmin.mm, v V4.13 (2003/04/02 06:50:29)

165

Captulo 8: Tomar o controle

# Kldload iBCS2

Um problema com a emulao SCO as bibliotecas compartilhadas SCO. Estes so necessrios para
executar muitos executveis SCO, e eles no so fornecidos com o emulador. Eles so
fornecido com sistemas operacionais da SCO. Verifique a licena SCO para determinar se
voc tem permisso para us-los em FreeBSD. Voc tambm pode ser elegvel para um SCO livre
licena de ver o site SCO para mais detalhes.

Emulando Microsoft Windows


O vinho projeto vem trabalhando h algum tempo para dar uma emulao da Microsoft
Windows gama de ambientes de execuo. Est mudando continuamente, por isso h pouco
apontar descrevendo-o aqui.
Voc lata encontrar up-to-date informaes em
http://www.winehq.com/about/, e voc pode instal-lo a partir dos emuladores de porta / vinho. Ser
preparado para uma boa quantidade de trabalho.

Acessando arquivos do Microsoft


Muitas vezes, voc no est to interessado em rodar aplicativos do Microsoft como decodificao de seu
formatos proprietrios. Por exemplo, voc pode receber uma mensagem de e-mail com um anexo
descrita apenas como
[- Attachment # 2: FreeBSD.doc -]
[- Tipo: application / octet-stream, Encoding: x-unknown, tamanho: 15K -]
[- Application / octet-stream no suportado (use 'v' para ver esta parte) -]

Este acessrio tem um tipo MIME inespecficos, 1, mas voc pode imaginar que Microsoft
Formato Word, porque o nome do arquivo termina em . Doc. Isso no faz com que seja mais legvel.
Para l-lo, voc precisa de algo que entendem esse formato. Uma boa escolha
OpenOffice.org, um clone de'' Microsoft Office'' produto. Instalar a partir dos Portos
Collection (/ usr / ports / editores / OpenOffice).
OpenOffice.org no um bom exemplo da forma como UNIX. Ele quebra uma srie de
convenes e, em geral, muito mais difcil de usar do que as ferramentas FreeBSD normais. Sua
nica vantagem real que voc pode processar formatos de documentos Microsoft.

1. Consulte o Captulo 26, Correio eletrnico: clientes, pgina 486, para mais informaes sobre MIME.
unixadmin.mm, v V4.13 (2003/04/02 06:50:29)

Neste captulo:
Como instalar um
pacote
Construo de um porto
Pacote
documentao
Ficando somente binrio
software
Manter as portas
Atualizando as portas
Controlar instalado
portas
Submeter um novo
porto

A coleo de Ports
A Internet est cheia de software livre, que normalmente distribudo na forma de cdigo fonte. Isso pode
ser um problema em si mesmo: o caminho do arquivo fonte que voc se livrar da Internet
ao, instalado, funcionando programa acabado em sua mquina-normalmente chamado portarpode ser um longo e frustrante. Veja o meu livro Portando UNIX Software para mais detalhes
do processo de portabilidade.
Para obter um pacote de software instalado e funcionando em seu sistema, voc precisa passar por mais
destas etapas:
1. Obter os arquivos de origem em sua mquina. Eles so geralmente contido numa arquivo, um arquivo
contendo um certo nmero de outros ficheiros. Arquivos usados para a coleta portas esto
geralmente compactado arquivos, embalados com alcatro e comprimidos com gzip, mas outros
formatos tambm so possveis. Seja qual for o formato, voc normalmente usa ftp para lev-los a
sua mquina.
2. Descompacte o arquivo em um rvore de origem, neste caso usando gunzip e tar.
3. Configure o pacote. A maioria dos pacotes incluem shell scripts para fazer isso. Configurao
realiza uma adaptao triplo do pacote:
1. Ele se adapta-lo para o hardware do sistema.
2. Ele se adapta ao ambiente de software que est em execuo (neste caso, FreeBSD).
3. Ele se adapta-lo s suas preferncias pessoais.
4. Construa o pacote. Para a maioria dos pacotes, isso envolve a compilao dos arquivos de origem e
a criao de arquivos executveis. A principal ferramenta para essa finalidade fazer, que usa um conjunto de
regras, tradicionalmente armazenados em um arquivo chamado Makefile, para decidir como construir o pacote.
H quase sempre um Makefile nas fontes, mas a coleo de ports inclui um
ports.mm, v v4.12 (2003/04/02 06:43:08)

167

O FreeBSD completo

168

segundo um que controla a construir a um nvel mais elevado.


5. Instale o pacote. Trata-se de cpia, principalmente os executveis, arquivos de configurao
e documentao criada por uma construo para o local correto na hierarquia do diretrio.
6. Configure o software instalado. Isto semelhante ao conceito de configurao do pacote,
exceto que ele ocorre no ambiente de tempo de execuo. A configurao do pacote pode
executar toda a configurao necessria para voc.
Trata-se de uma srie de etapas, e muitas vezes voc vai achar que est colocada atravs de um campo minado: um falso
mover-se, e tudo explode. Para fazer a portabilidade e instalar o software mais fcil, o
FreeBSD equipe criou um quadro chamado Coleo de Ports, o que torna trivial a
executar essas etapas. Ele tambm proporciona um mtodo de embalagem e de instalar a resultante
portado software, chamado pacotes. A edio em CD-ROM do FreeBSD inclui um grande
nmero de pacotes pr-compilados que podem ser instalados diretamente.
Neste captulo, vamos considerar os seguintes pontos como eles se relacionam com os ports do FreeBSD
coleo:

Como instalar um pacote pr-compilado. Veremos isso na prxima seo.

O que a rvore de ports, e como compilar e instalar ('' construo'') um pacote. Vamos
olhar para isso na pgina 169.

Como criar e enviar um novo porto, na pgina 174.

Como instalar um pacote


No FreeBSD linguagem, um pacote simplesmente um arquivo especial que contm os arquivos
(Geralmente arquivos binrios executveis), que so instalados quando voc construir e instalar uma porta.
Efetivamente um instantneo do processo de construo de porta que vimos acima, tirada aps o passo 4
foi concluda. Em comparao com a porta full-blown, pacotes so muito mais rpidos para instalar-
normalmente, uma questo de segundos. Por outro lado, eles no do a opo de
configurao que a porta faz completa. A distribuio de CD-ROMs contm um diretrio
pacotes com um grande nmero de pacotes de softwares pr-compilados. Alternativamente, voc pode
encontrar pacotes FreeBSD em muitos servidores na internet, verifique o manual on-line para
alguns lugares para olhar.
Para ajudar a manter uma viso geral, ambas as portas e os pacotes so divididos em categorias. Eles
so armazenadas em diretrios nomeados aps a categoria. Consulte o arquivo / Usr / ports / index para uma
lista. Por exemplo, a emacs em editores est atualmente no arquivo packages/editors/emacs-21.2.tgz, embora este nome vai mudar com verses atualizadas do emacs. Para
a verso mais recente dos pacotes s, voc vai encontrar uma outra cpia sem a extenso em
packages / Latest / emacs.tgz. Para instal-lo, digite:

ports.mm, v v4.12 (2003/04/02 06:43:08)

169

Captulo 9: A Coleo de Ports

# Pkg_add / cdrom / packages / Latest / emacs.tgz

Alternativamente, voc pode instalar os pacotes a partir do sysinstall menu de configurao final
mostrado na Figura 6-1, na pgina 92.

Construo de um porto
A forma mais geral para instalar software de terceiros com um port. O projeto FreeBSD
utiliza o termo porto para descrever os arquivos adicionais necessrios para adaptar um pacote para construir
sob FreeBSD. Faz no incluem o prprio cdigo de fonte, embora o CD-ROM
distribuio inclui muitos arquivos de cdigo no diretrio / Ports / distfiles, distribudos por
vrios dos CD-ROMs.
Antes de comear com as portas, voc precisa instalar as informaes de porta em seu
sistema. Normalmente ser em / Usr / ports. Esta rvore de diretrios freqentemente chamado de
Portas Tree. H um certo nmero de maneiras para instal-los.

Instalao de portas durante a instalao do sistema


A maneira mais simples de instalar a coleo de ports quando voc instala o sistema. Quando
voc escolhe os componentes a serem instalados, sysinstall oferece para instalar a coleo de ports para
voc tambm.

Instalao de portas a partir do CD-ROM primeiro


O arquivo portas / ports.tgz no CD-ROM um primeiro alcatro arquivo que contm todas as portas. Se
voc no instal-lo durante a instalao do sistema, use o seguinte mtodo para instalar o
coleo completa (cerca de 200 MB). Verifique se o seu CD-ROM est montado (neste
exemplo em / Cdrom) e digite:
# Cd / usr
# Tar xzvf / cdrom / ports / ports.tgz

Se voc s quer extrair um nico pacote, digamos pousada, que est na categoria notcias, digite:
# Cd / usr
# Tar xzvf / cdrom / portas / portas ports.tgz / news / inn

preciso um tempo surpreendentemente longo para instalar as portas, embora no haja muitos dados no
arquivo, h cerca de 250 mil arquivos nele, e que a criao de muitos arquivos tem um monte de disco
I / O.

Instalao de portas do sistema de arquivos ao vivo de CD-ROM


Alternativamente, os arquivos tambm esto no CD-ROM do sistema de arquivos ao vivo. Isso no muito de um
vantagem para a instalao, mas voc pode achar que conveniente para navegar atravs da fonte
rvores no diretrio portas no CD-ROM. Vamos supor que voc tenha encontrado um diretrio
/ Usr / ports / grficos / hpscan no CD-ROM, e o seu diretrio de trabalho atual.
ports.mm, v v4.12 (2003/04/02 06:43:08)

Construo de um porto

170

Voc pode mover os dados deparar com o seguinte:


# Cd / cdrom / ports / grficos
# Mkdir-p / usr / ports / grficos
# Tar cf -. | (Cd / usr / ports / grficos; tar xvf -)

Conseguir novos portos


O que acontece quando uma nova verso de um porto sai? Por exemplo, voc est usando
Emacs verso 20 para sempre, e agora Verso 21.2 estiver disponvel? novo, portanto,
no , obviamente, no seu CD-ROM.
Uma maneira de obter a porta via FTP. Isto costumava ser bastante conveniente: voc pode baixar
um tarball direta e extra-lo localmente. Essa , infelizmente, no mais possvel: atualmente
voc deve baixar arquivos de um diretrio de uma vez. Se voc est seguindo a Coleo de Ports em
tudo de perto, voc deve considerar o uso cvsup, que pode manter suas fontes at data
automaticamente. Consulte o Captulo 31, pgina 577, para obter mais detalhes.
Todas as portas so mantidas em subdiretrios do URL ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/.
Este diretrio tem o seguinte contedo:
drwxr-xr-x 6 1006 1006
drwxr-xr-x 209 1006 1006
drwxr-xr-x 6 1006 1006
drwxr-xr-x 3 1006 1006
drwxr-xr-x 83 1006 1006
lrwxrwxrwx uma roda de raiz
lrwxrwxrwx uma roda de raiz
lrwxrwxrwx uma roda de raiz
lrwxrwxrwx uma roda de raiz
drwxr-xr-x 4 1006 1006

512 08 de junho 13:18 alpha


401408 28 de maio 14:08 distfiles
28 maio 1536 17:53 i386
512 06 de abril 13:45 ia64
20 maio 3072 15:35 locais-distfiles
13 01 de junho de 2001 pacotes -> i386/packages
24 01 de junho de 2001 portas -> .. / FreeBSD-current/ports
5 01 de junho de 2001 portas circulante -> portas
5 01 de junho de 2001 portas estveis -> portas
512 09 de abril 10:37 sparc64

Os diretrios alpha, i386, ia64 e sparc64 conter pacotes (no portas) para o
arquitetura correspondente. distfiles contm um grande nmero de fontes originais para
os pacotes de terceiros, concebida como um ltimo recurso'' localizao'' se voc no pode encontr-los em
outros locais.
O diretrio Local-distfiles usado por pessoas que trabalham na coleo de ports, voc no
normalmente precisa de alguma coisa a partir desses diretrios. Os diretrios importantes para voc
portos, portos atual e portos estvel. Atualmente estes so realmente tudo no mesmo diretrio,
mas as coisas no podem continuar assim.
Voltando ao seu emacs port: voc iria encontr-lo no diretrio / Pub/FreeBSD / ports / ports / editores /. Nota final / em que o nome do diretrio: se voc deix-lo fora, ftp
imprime uma mensagem de erro e sai. Aqui est o que pode acontecer:
$ Ftp ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/ports/editors/
Conectado a ftp.beastie.tdk.net.
220 servidor FTP ftp.beastie.tdk.net (Verso 6.00LS) pronto.
331 visitantes de login ok, envie seu endereo de e-mail como senha.
230 - O espelho FreeBSD no Tele Danmark Internet.
... Muito sinopse omitido
250 comando CWD bem sucedida.
250 comando CWD bem sucedida.
ftp> ls
229 Entering Passive Mode Extended (| | | 55649 |)
ports.mm, v v4.12 (2003/04/02 06:43:08)

171
150 Abertura
total de 704
...
drwxr-xr-x
drwxr-xr-x
drwxr-xr-x
drwxr-xr-x
drwxr-xr-x
drwxr-xr-x
...

Captulo 9: A Coleo de Ports


ASCII modo conexo de dados para '/ bin / ls'.
3
4
4
4
3
2

1006
1006
1006
1006
1006
1006

1006
1006
1006
1006
1006
1006

512
512
512
512
512
512

Maio
Maio
Maio
Maio
Maio
Maio

20
20
20
20
20
20

10:07
10:08
10:08
10:08
10:08
10:08

emacs
emacs20
emacs20-dl
emacs20-mule-devel
emacs21
eshell-emacs20

Isso mostra que os arquivos estaro no diretrio emacs21. Voc pode obt-los com a
ftp mget comando:
ftp> mget emacs21
mget emacs21/files [anpqy?]? um
answera para todos os arquivos
Solicitao de fora, com durao de mget.
ftp:local: emacs21/files: Nenhum tal lima ou diretrio
ftp:local: emacs21/Makefile: Nenhum tal lima ou diretrio
(Etc)

Isso acontece porque voc precisa criar o diretrio de destino manualmente. Tente de novo:
ftp>! mkdir emacs21
criar o diretrio local
ftp> mget emacs21
mget emacs21/files [anpqy?]? um
Solicitao de fora, com durao de mget.
229 Entering Passive Mode Extended (| | | 57074 |)
550 emacs21/files: No um arquivo simples.
229 Entering Passive Mode Extended (| | | 57085 |)
150 Opening BINARY conexo de dados para o modo 'emacs21/Makefile' (2185 bytes).
100% | ************************************* | 2185 2,34 MB / s ETA 00:00
226 Transferncia concluda.
(Etc)

Voc ter um desses para cada arquivo transferido. Mas note a mensagem de erro: no um arquivo simples.
emacs21/files um diretrio, por isso temos de busc-la separadamente:
ftp>! emacs21/files mkdir
ftp> mget emacs21/files
mget emacs21/files/patch-lib-src: Makefile.in [anpqy?]? um
Solicitao de fora, com durao de mget.
229 Entering Passive Mode Extended (| | | 57258 |)
150 Opening BINARY conexo de dados para o modo 'emacs21/files/patch-lib-src: Makefile.in
'(908 bytes).
100% | ************************************* |
908 1.64 MB / s ETA 00:00
226 Transferncia concluda.
(Etc)

Note-se que o ftp comando especifica o URL do diretrio. Ele deve ter uma fuga /,
caso contrrio ftp vai reclamar. Este formulrio suportado pelo FreeBSD ftp, mas muitos outros ftp
clientes vai exigir que voc faz-lo em duas etapas:
Ftp.FreeBSD.org # ftp
Conectado a ftp.beastie.tdk.net.
(Etc)
ftp> cd / pub / FreeBSD / ports / ports / editores
250 comando CWD bem sucedida.

ports.mm, v v4.12 (2003/04/02 06:43:08)

Construo de um porto

172

O que est em que porta?


Um problema com a coleo de ports o grande nmero. Ela pode apenas ser difcil encontrar
o que eles deveriam fazer. Se voc construir todas as portas, voc vai estar ocupado durante semanas, e
no h nenhuma maneira que voc pode ler toda a documentao em uma s vida. Onde voc pode obter
uma viso geral? Aqui esto algumas sugestes. Em cada caso, voc deve ter o diretrio
/ Usr / ports como seu diretrio de trabalho atual.

H um ndice em / Usr / ports / index. Se voc tiver atualizado a rvore de ports, voc pode
fazer o ndice com os seguintes comandos:
# Cd / usr / ports
# Make ndice

ndice o nome de um alvo, a parte de uma regra que o identifica. geralmente um


nome do arquivo ou uma abreviatura de uma operao a ser executada. Veremos uma srie de
fazer metas no decorrer do livro.
O ndice utilizado por outros programas, por isso escrito como uma nica linha longa
por pacote, com campos delimitados pelo caractere de barra vertical (|). Aqui esto dois
linhas como exemplo, envolto em trs linhas para caber na pgina:
mp3asm-0.1.3 | / usr/ports/audio/mp3asm | / usr / local | editor nvel de quadro MP3 | / usr / porta
s/audio/mp3asm/pkg-descr | ports@FreeBSD.org | udio | autoconf213-2.13.000227_1 | | htt
p :/ / mp3asm.sourceforge.net /
mp3blaster-3.0p8 | / usr/ports/audio/mp3blaster | / usr / local | consola MP3 ncurses-base de
d jogador | / usr/ports/audio/mp3blaster/pkg-descr | greid@FreeBSD.org | audio | | | http://
www.stack.nl/ ~ brama/mp3blaster.html

Voc provavelmente vai querer process-lo com outras ferramentas.

Voc pode imprimir o ndice com os seguintes comandos:


# Cd / usr / ports
# Make print-index | lpr

Note-se que existem cerca de 1.000 pginas de sada, que se parecem com isto:
Porto:
Caminho:
Info:
Manut:
ndice:
B-deps:
R-deps:

zip-2.3_1
/ Usr / ports / arquivadores / zip
Criar / atualizar arquivos ZIP compatveis com pkzip
ache@FreeBSD.org
archivers
unzip-5.50

Voc pode procurar por uma palavra-chave especfica com a procurar alvo. Por exemplo, para encontrar
portos relacionada com Emacs, voc pode digitar:
# Cd / usr / ports
# Fazer pesquisa key = Emacs | menos

Canalizar a sada atravs menos: pode ser muito.


ports.mm, v v4.12 (2003/04/02 06:43:08)

173

Captulo 9: A Coleo de Ports

Voc pode construir uma srie de quase 10 mil html pginas como esta:
# Cd / usr / ports
# Make readmes

Voc pode, ento, procur-los na URL file :/ / / usr / ports / README.html.

Obtendo o arquivo fonte


Voc vai ver no exemplo acima, que no h muitos arquivos no porto. A maior parte do
arquivos necessrios para a construo do software esto no arquivo de cdigo fonte original (o tarball'''')
mas isso no parte do porto.
H um nmero de lugares a partir do qual voc pode obter as fontes. Se voc tem um CDSet ROM, muitos deles esto espalhados ao longo dos CD-ROMs, no diretrio
/ Cdrom / ports / distfiles em cada CD-ROM. As portas Coleo Makefiles procur-los
neste diretrio (outra boa razo para montar o seu CD-ROM em / Cdrom) e tambm na
/ Usr / ports / distfiles.
Se voc no tem o pacote de cdigo, isso no um problema. Parte da funo das portas
Coleo sair na net e lev-los para voc. Isto completamente automtico:
basta digitar fazer, eo processo de construo recebe o arquivo fonte para voc e constri.
De Claro, voc deve estar conectado Internet para que isso funcione.
Se voc montar o seu CD-ROM em outro lugar (talvez porque voc tem mais de um CDROM, e ento voc tem que montar o CD-ROM, digamos, / CD4), a Makefiles no vai
encontrar os arquivos de distribuio e vai tentar carregar os arquivos a partir da Internet. Uma maneira de resolver
este problema criar um link simblico de / Cd4/ports/distfiles a / Usr / ports / distfiles.
O problema com esta abordagem que voc vai, ento no ser mais capaz de carreg-novo
arquivos de distribuio em / Usr / ports / distfiles, porque vai ser em CD-ROM. Em vez disso, faa:
#
#
#
>
>

cd / cd4/ports/distfiles
mkdir-p / usr / ports / distfiles
verifique se voc tem um diretrio distfiles
for i in *; fazer
ln-s / cd4/ports/distfiles / $ i / usr / ports / distfiles / $ i
feito

Se voc estiver usando csh ou tcsh, digite:


#
#
#
?
?

cd / cd4/ports/distfiles
mkdir-p / usr / ports / distfiles
verifique se voc tem um diretrio distfiles
foreach i (*)
ln-s / cd4/ports/distfiles / $ i / usr / ports / distfiles / $ i
final

Isso cria um link simblico para cada arquivo de distribuio, mas se o arquivo para uma porta especfica no
l, a coleo de ports pode busc-lo e armazen-lo no diretrio.

ports.mm, v v4.12 (2003/04/02 06:43:08)

Construo de um porto

174

Construo do porto
Depois de ter os arquivos de esqueleto para a porta, o resto simples. Basta digitar:
# Cd / usr/ports/editors/emacs21
# Make
# Make install
====>
====> Para ativar o suporte menu fontset, definir WITH_MENUBAR_FONTSET
====>
>> Emacs-21.2.tar.gz no parecem existir em / usr / ports / distfiles /.
>> Tentando buscar a partir ftp://ftp.gnu.org/gnu/emacs/.
===> Extrair para emacs-21.2_1
>> Checksum OK para emacs-21.2.tar.gz.
===> Emacs-21.2_1 depende executvel: gmake - encontrado
===> Emacs-21.2_1 depende executvel: autoconf213 - no encontrado
===> Verificando a instalao para autoconf213 em / usr/ports/devel/autoconf213
===> Extrair para autoconf213-2.13.000227_2
>> Checksum OK para autoconf-000227.tar.bz2.
===> Autoconf213-2.13.000227_2 depende executvel: GM4 - no encontrado
===> Verificando a instalao para GM4 em / usr/ports/devel/m4
===> Extrair para m4-1.4_1
>> Checksum OK para m4-1.4.tar.gz.
===> Correo para m4-1.4_1
===> Aplicao de patches do FreeBSD para m4-1.4_1
===> Configurao para m4-1.4_1
a criao de cache. / config.cache
verificao de mawk ... no
(Etc)

uma boa idia para realizar o fazer primeiro passo: make install nem sempre construir o
pacote.

Dependncias do Porto
s vezes, no suficiente para construir uma nica porta. Muitos portos depender de outros portos. Se
voc tem a, up-to-date rvore portas completo instalado em seu sistema, as portas
Coleo vai cuidar disso para voc: ele vai verificar se a outra porta est instalado, e se
no , ele ir instal-lo para voc. Por exemplo, a tkdesk depende tk. tk depende tcl. Se
voc no tem nenhum deles instalado, e voc tentar construir tkdesk, ele vai de forma recursiva
instalar tk e tcl para voc.

Documentao do pacote
Depois de ter instalado a sua porta, voc vai querer us-lo. Em quase todos os casos, isto
exige documentao. A maioria dos pacotes tem documentao, mas infelizmente no
sempre bvio onde ele est. Em alguns casos, a porta no instala toda a documentao.
Mais geralmente, existem as seguintes possibilidades:

Se a porta inclui pginas de manual, que ser instalado em / Usr/X11R6/man se o


pacote est relacionada com X e / Usr / local / man Se eles no o so. Tipicamente, a instalao
pginas de manual a ltima coisa que acontece durante a instalao, por isso voc deve v-lo
no ecr. Se no, ou se voc quiser conferir, voc pode ter um olhar para a lista de pacotes:
ports.mm, v v4.12 (2003/04/02 06:43:08)

175

Captulo 9: A Coleo de Ports


$
$
/
/
/
/

Cd / var / db / pkg
Pkg_info-L emacs-21.2_1 | grep / homem /
Usr/local/man/man1/ctags.1.gz
Usr/local/man/man1/emacs.1.gz
Usr/local/man/man1/etags.1.gz
Usr/local/man/man1/gfdl.1.gz

Voc no precisa mudar o diretrio para / Var / db / pkg, mas se voc fizer isso, voc pode usar o arquivo
nome completo para terminar o nome do pacote. Usamos / Man / como a busca
string, e no simplesmente homem, porque seno os outros arquivos pode corresponder bem.

Se o pacote inclui GNU Informaes pginas, voc pode usar o mesmo mtodo para procurar
eles:
$ Pkg_info-L emacs-21.2_1 | grep / info /
/ Usr / local / info / ada-mode
/ Usr / local / info / autotype
/ Usr / local / info / ccmode
/ Usr / local / info / cl
(Muitos mais)

Isto normalmente no necessrio, no entanto: se voc estiver usando o GNU info, a pgina ndice
ser atualizado para incluir o pacote.

Se o pacote inclui documentao impressa, que pode ou no ser includo no


a porta. O Emacs documentao tambm inclui um guia do usurio e um programador de
guiar. O guia do usurio, todas as 640 pginas do mesmo, est no diretrio homem do Emacs
construir diretrio, mas ele no construdo durante a instalao. Isto tpico da maioria
portos. Neste caso, voc vai ter que construir a documentao de si mesmo.

Ficando somente binrio software


Um monte de software no precisa ser portado. Por exemplo, se voc quiser Netscape, voc pode
basta fazer o download de ftp.netscape.com. Mas como voc instal-lo? Netscape
procedimentos de instalao esto melhorando, mas ainda deixam muito a desejar.
A resposta simples: pegue a porta! Embora Netscape vem apenas na forma binria, o
porto movimenta obter a verso correta e instal-lo para voc. Outra vantagem
utilizando uma porta em vez de instalar o pacote manualmente que a porta instala o
como um pacote de software FreeBSD, o que o torna muito mais fcil remover o software mais tarde.
Este mtodo pode ser usado para instalar algum outro software, bem como, por exemplo StarOffice.
A moral da histria simples: verifique sempre a coleo de ports antes de obter um pacote de software
a partir da rede.

ports.mm, v v4.12 (2003/04/02 06:43:08)

Ficando somente binrio software

176

Manter as portas
Depois de instalar uma porta, voc pode considerar que seja o fim da histria. Isso raramente
o caso. Por exemplo:

Talvez seja necessrio substituir uma porta com uma nova verso. Como voc faz isso? Vamos
olha isso abaixo.

Um dia, voc pode encontrar o seu disco enche, ento voc vai olhar para os portos antigos que no fazem
usar mais. Ns vamos olhar para alguns comandos utilitrios na pgina 178.

Atualizando as portas
De tempos em tempos, novas verses do software ir aparecer. H um certo nmero de
abordagens para a atualizao:

Voc pode remover a verso antiga do porto e instalar uma nova verso. O problema
aqui que a remoo da verso antiga pode remover todos os arquivos de configurao tambm.

Voc pode instalar uma nova verso sem remover a verso antiga. O problema aqui
que voc acaba com duas entradas no banco de dados de pacotes / Var / db / pkg:
$ Pkg_info | grep emacs
emacs-21.1_5 GNU edio de macros
emacs-21.2_1 GNU edio de macros

claro que voc no precisa emacs-21.1_5 mais. Na verdade, ele no est completo mais,
porque o programa / Usr / local / bin / emacs foi substitudo pela nova verso.
Mas voc no pode remov-lo ou: que iria remover componentes do emacs-21.2_1,
que voc deseja manter. Por outro lado, se voc no remov-lo, voc deixado com
cerca de 50 MB de espao em disco utilizado no diretrio / Usr/local/share/emacs/21.1.

Voc pode usar portupgrade, um programa que faz parte da atualizao automaticamente.
Ns vamos olhar para isso abaixo.

Usando portupgrade
Portupgrade o que mais?-A porta. Instalar-lo da maneira habitual:
# Cd / usr / ports / sysutils / portupgrade
# Make install

Antes de executar a atualizao, voc deve primeiro fazer backup / Var / db / pkg, em seguida, construir uma
banco de dados com as portas pkgdb. A construo tpica pode ter esta aparncia:

ports.mm, v v4.12 (2003/04/02 06:43:08)

177

Captulo 9: A Coleo de Ports

# Cd / var / db
# Tar czvf db.pkg.tar.gz pkg /
#-F pkgdb
[Atualizao do <format:bdb1_btree> pkgdb em / var / db / pkg ... - 181 pacotes
encontrado (-5 +92) (...) ...................................... .. feito]
Verificar a origem do AbiWord 1.0.3Verificar a origem do ImageMagick-5.5.1.1
Verificar a origem da rbita-0.5.17
...
Verificar a origem da xv-3.10a_3
Verificar a origem do zip-2.3_1
Verificao de origem duplicatas
Verificando-AbiWord 1.0.3
Verificando ImageMagick-5.5.1.1
Dependncia Stale: ImageMagick-5.5.1.1 -> ghostscript-gnu-7.05_3:
ghostscript-gnu-6.52_4 (pontuao: 64%)? ([Y] es / [n] o / [a] ll) [no] y
Corrigido. (-> Ghostscript-gnu-6.52_4)
Verificando ORBit-0.5.17
Verificando XFree86-4.2.0_1, 1
...
Verificando bonobo-1.0.21_1
Dependncia Stale: bonobo-1.0.21_1 -> ghostscript-gnu-7.05_3:
ghostscript-gnu-6.52_4? ([Y] es / [n] o / [a] ll) [sim] Entrar prensado
Corrigido. (-> Ghostscript-gnu-6.52_4)
Verificando cdrtools-1.11.a28
...
Verificando xv-3.10a_3
Verificando zip-2.3_1
Regenerao + REQUIRED_BY arquivos
Verificao de dependncias cclicas

Neste exemplo, a porta ghostscript-gnu-7.05_3 tinha sido substitudo pela verso anterior
ghostscript-gnu-6.52_4, desde ghostscript Release 7 tem alguns bugs irritantes. O
dilogo mostra como pkgdb reconhecida a discrepncia, e como ele recuperado a partir dela.
Agora voc pode iniciar o upgrade. Para atualizar uma porta especfica, basta especificar o nome base,
sem o nmero da verso. Este exemplo utiliza o -V opo para mostrar adicional
informaes:
# Portupgrade-v biso
---> Atualizao de desenvolvimento / bison comeou em: Mon, 4 de novembro de 2002 13:20:52 1030
---> Atualizao 'bisonte-1.35_1' para 'bisonte-1.75 "(devel / bisonte)
---> Construir de desenvolvimento / bison comeou em: Mon, 04 de novembro de 2002 13:20:52 1030
... sada normal construir porto
===> Instalao Registrando para bison-1.75
limpais emitido pelo portupgrade
===> Limpeza de libiconv-1.8_2
===> Limpeza de gettext-0.11.5_1
...
---> Remover os arquivos de backup temporrios
---> Instalao de desenvolvimento / bison terminou em: Mon, 4 de novembro de 2002 13:23:00 1,030 (consumir
d 00:00:06)
---> Retirar as dependncias obsoletos
---> Limpeza de bibliotecas compartilhadas obsoletos
---> Atualizao de desenvolvimento / bison terminou em: Mon, 04 de novembro de 2002 13:23:01 1,030 (consumido 00:
2:08)
---> A comunicao dos resultados (+: sucesso / -: ignorado / *: ignorado /: failed)
+ Devel / bison (bisonte-1.35_1)

ports.mm, v v4.12 (2003/04/02 06:43:08)

Atualizando as portas

178

Se a porta j est atualizado, voc ver algo parecido com isto:


# Portupgrade-v perl-5.8.0_3
** No h necessidade de atualizar 'perl-5.8.0_3' (> = perl-5.8.0_3). (Especificar-f para forar)
---> A comunicao dos resultados (+: sucesso / -: ignorado / *: ignorado /: failed)
- Lang/perl5.8 (perl-5.8.0_3)

Para atualizar todas as portas, use o comando:


# Portupgrade-um

Controle de portas instaladas


Ns j vimos o programa pkg_add ao instalar pacotes pr-compilados. L
um nmero de outros pkg_ programas que podem ajud-lo a manter portas instaladas, se
terem sido instalados por pkg_add ou make install a partir da coleo de ports:

pkg_info diz-lhe que as portas esto instaladas. Por exemplo:


$ Pkg_info | menos
AbiWord 1.0.3Um open-source, multi-plataforma WYSIWYG proces palavra
ImageMagick-5.5.1.1
Ferramentas de processamento de imagem (opcional interativo - Misc
ORBit-0.5.17
Alto desempenho CORBA ORB com suporte para a C
XFree86-4.2.0_1, 1
X11/XFree86 distribuio do ncleo (completo, utilizando min
... etc
O GNU Bourne Again Shell
bash-2.05b.004
bison-1.75
Um gerador de parser de FSF, (principalmente) w compatvel
bonobo-1.0.21_1
O componente e sistema de documento composto por GNO
cdrtools-1.11.a28
Cdrecord, mkisofs e vrios outros programas de re
... etc
ELM Mail User Agent
elm-2.4ME 22
elm-2.4ME +32
ELM Mail User Agent

Note-se que as duas ltimas entradas neste exemplo mostram que as duas verses olmo so
instalado. Isso no pode estar certo, isso acontece quando voc instala uma nova verso, sem
remover a verso antiga e sem correr portupgrade. Vamos discutir este assunto
mais abaixo.

Se voc tem a rvore de ports instalado, voc pode usar pkg_version para verificar se o seu
portas so at data. pkg_version um pouco enigmtica em sua sada:
AbiWord-gnome
ImageMagick
ORBit
Wingz
XFree86
...
x2x-1.28

=
<
<
=
<
?

Os smbolos direita os nomes dos pacotes tm os seguintes significados:

ports.mm, v v4.12 (2003/04/02 06:43:08)

179

Captulo 9: A Coleo de Ports

<
>

?
*
!

A verso instalada do pacote atual.


A verso instalada do pacote mais velho do que a verso atual.
A verso instalada do pacote mais recente do que a verso atual.
Esta situao pode surgir com um arquivo de ndice out-of-date, ou quando o teste
novos portos.
O pacote instalado no aparece no ndice. Isto pode ser devido
a um ndice de data ou um pacote que ainda no foi confirmada.
Existem vrias verses de um pacote de software especfico listado na
arquivo de ndice.
O pacote instalado existir no ndice, mas, por algum motivo,
pkg_version foi incapaz de comparar o nmero de verso do instalado
pacote com a entrada correspondente no ndice.

H duas maneiras de remover a porta: se voc tiver construdo a partir da fonte, e voc est no
diretrio de construo, voc pode escrever:
# Make desinstalar

Alternativamente, voc pode remover qualquer pacote instalado com pkg_delete. Por exemplo, a
da lista acima mostra duas verses do olmo Mail User Agent. Para retirar o velho
um, entramos:
# Pkg_delete elm-2.4ME 22
File '/ usr/local/man/man1/answer.1' realmente no existe.
No foi possvel remover completamente o arquivo '/ usr/local/man/man1/answer.1'
File '/ usr/local/man/man1/checkalias.1' realmente no existe.
No foi possvel remover completamente o arquivo '/ usr/local/man/man1/checkalias.1'
... etc
No foi possvel excluir totalmente pacote (talvez a lista de embalagem
especificada incorretamente?)

Neste caso, parece que algum tentou remover os arquivos antes, ento
pkg_delete no poderia faz-lo.
Outro problema com pkg_delete que ele pode apagar arquivos com o mesmo nome que
foram substitudos por novos pacotes. Depois de realizar esta operao, buscamos:
$ Elm
bash: elm: comando no encontrado

Ops! Ns tentamos apagar a verso antiga, mas excluda pelo menos parte do novo
verso. Agora precisamos instal-lo novamente.
A moral desta histria que as coisas no so to simples quanto poderiam ser. Quando voc
instalar uma nova verso de um pacote, voc pode querer test-lo antes de se comprometer com
us-lo o tempo todo. Voc no pode simplesmente ir e apagar a verso antiga. Uma possibilidade
seria instalar o novo pacote, e experiment-lo. Quando voc tiver terminado o teste,
excluir tanto pacotes e re-instalar o que voc deseja manter.

ports.mm, v v4.12 (2003/04/02 06:43:08)

Controle de portas instaladas

180

Manter o controle de atualizaes


A melhor maneira de descobrir sobre as atualizaes assinar o FreeBSD-portas correspondncia
lista. Dessa forma, voc receber notificaes sempre que algo muda. Se voc est acompanhando
a rvore de portas com CVSup, voc tambm ter as atualizaes para a rvore de portas automaticamente.
Caso contrrio, voc ter que baixar o porto. Em ambos os casos, para atualizar o seu instalado
port, basta repetir a construir.

Submeter um novo porto


A Coleo de Ports est em constante crescimento. Dificilmente passa um dia sem uma nova porta
sendo adicionados lista. Talvez voc queira submeter o prximo? Se voc tem algo
interessante que j no est na coleo de ports, voc pode encontrar instrues sobre como
preparar o porto do Manual do FreeBSD Porter. A verso mais recente est disponvel no
Web site do FreeBSD, mas voc tambm vai encontr-lo em seu sistema como / Usr/share/doc/en/portershandbook / index.html.

ports.mm, v v4.12 (2003/04/02 06:43:08)

10

Neste captulo:
Permisses de arquivo
Mandatory Access
Controle
Ligaes
Hierarquia de diretrios
Tipos de sistemas de arquivos
Arquivo de montagem
sistemas
Dispositivos FreeBSD
Terminais virtuais

Sistemas de arquivos e
dispositivos
Um dos conceitos mais revolucionrios do sistema operacional UNIX foi o seu sistema de arquivos,
o modo pelo qual ele armazena os dados. Embora a maioria dos outros sistemas operacionais j copiei
desde ento, incluindo as plataformas da Microsoft, nenhum deles chegou perto de a elegncia com
qual aplicado. Muitos aspectos do sistema de arquivos no so imediatamente bvios,
alguns deles nem mesmo para usurios do UNIX experientes.
J olhou para convenes de nomenclatura de arquivo na pgina 125. Na prxima seo, vamos
olhar para o arquivo de sistema de acesso, estrutura e hierarquia, e na pgina 195 veremos como
o sistema de arquivos trata de dispositivos de hardware como arquivos.

Permisses de arquivo
Um sistema UNIX pode, potencialmente, ser usado por muitas pessoas, por isso UNIX inclui um mtodo de
proteger os dados contra acesso por pessoas no autorizadas. Cada arquivo tem trs itens de
informaes associadas a ele que descrever quem pode acess-lo de que maneira:

O proprietrio do arquivo, o ID de usurio da pessoa que possui o arquivo.

O grupo de arquivos, o ID do grupo do grupo que dono de'''' o arquivo.

A lista do que o proprietrio, o grupo e outras pessoas podem fazer com o arquivo. O
aes possveis so ler, escrever ou executar.

filesys.mm, v v4.17 (2003/04/02 06:43:57)

181

Permisses de arquivo

182

Por exemplo, voc pode ter um programa que acessa dados privados, e voc quer ser
certeza de que s voc pode execut-lo. Voc pode fazer isso definindo as permisses para que somente o
proprietrio pode execut-lo. Ou voc pode ter um documento de texto em desenvolvimento, e voc quer
para ter certeza de que voc a nica pessoa que pode mudar isso. Por outro lado, as pessoas
que trabalham com voc tem a necessidade de ser capaz de se referir ao documento. Voc define o
permisses para que somente o proprietrio pode escrev-lo, que o proprietrio eo grupo pode l-lo, e,
porque ele ainda no est pronto para publicao, voc no permita que outras pessoas acess-lo.
Tradicionalmente, as permisses so representados por trs grupos de rwx: r stands para ler
permisso, w stands para escrever permisso, e x stands para executar permisso. Os trs
grupos representam as permisses para o dono, o grupo e outros, respectivamente. Se o
permisso no for concedida, ela representada por um hfen (-). Assim, as permisses para o
programa eu discutimos acima seria r-x ------ (Eu posso ler e executar o programa,
e ningum pode fazer nada com ele). As permisses para o projecto de documento seria
ser rw-r ----- (Eu posso ler e escrever, o grupo pode ler, e os outros no podem acess-lo).
Permisses tpicas de acesso a arquivos do FreeBSD so rwxr-xr-x para os programas e rw-r - r para outros arquivos do sistema. Em alguns casos, no entanto, voc ver que as outras permisses so
necessria. Por exemplo, o arquivo ~ /. Rhosts, que usado por alguns programas de rede para
validao do usurio, pode conter a senha do usurio de forma legvel. Para ajudar a garantir que
outras pessoas no l-lo, os programas de rede recusar-se a l-lo, a menos que suas permisses
so rw -------. A grande maioria dos problemas no sistema de UNIX pode ser atribuda a
permisses incorretas, ento voc deve prestar ateno especial a eles.
Alm destas permisses de acesso, arquivos executveis tambm pode ter dois bits definidos para especificar o
permisses de acesso do processo quando ele executado. Se o setuid (Definir ID de usurio) bit definido, o
processo sempre corre como se tivesse sido iniciada pelo seu proprietrio. Se o setgid (Set group ID) bit
definido, ele executado como se tivesse sido iniciada por seu grupo. Isto freqentemente usado para iniciar sistema
programas que precisam acessar recursos que o usurio no pode acessar diretamente. Vamos ver um
exemplo disto com o ps comando na pgina 185. ls representa o setuid bit por
definindo a terceira letra da string de permisses para s em vez de x, de forma semelhante, representa
o setgid bit, definindo a sexta letra da string de permisses para s em vez de x.
Alm deste acesso informao, as permisses de conter um personagem que descreve
que tipo de arquivo que ele representa. A primeira letra pode ser um - (Hfen), que designa um
arquivo regular, a carta d para o diretrio ou as letras b ou c para um n de dispositivo. Ns olharemos
ns de dispositivos no captulo 11, pgina 195. Existem tambm uma srie de outras letras que so
menos utilizado. Veja a pgina de manual ls (1) para uma lista completa.
Para listar os arquivos e mostrar as permisses, use o ls comando com o -L opo:
$ Ls-l
total de 2429
-Rw-rw-r 1 grogue
drwxrwxr-x
3 grogue
drwx -----4 grogue
-Rw-rw-r 1 grogue
-Rw-rw-r 1 grogue
-Rw-rw-r 1 grogue
-Rw-rw-r 1 grogue
-Rw-rw-r 1 demnio
-Rwxr-xr-x
1 grogue

roda
roda
roda
roda
roda
roda
roda
roda
roda

28204
512
512
149
108
108

Jan
Outubro
Novembro
Dezembro
Dezembro
Dezembro
0 Dezembro
1474560
Dezembro
100
Dezembro

4 14:17
15:26
17:23
4 14:18
4 00:36
4 00:36
4 00:36
14 17:03
19 15:24
1
25

% De backup% ~
2.1.0-951005-SNAP
Correio
Makefile
Makefile.bak
Makefile ~
depender
deppert.floppy
doio
filesys.mm, v v4.17 (2003/04/02 06:43:57)

183

Captulo 10: Os sistemas de arquivos e dispositivos

-X-rwxrwxr
-X-rwxrwxr
-Rwxr-xr-x
-Rwxr-xr-x
drwxr-xr-x
drwxrwxrwx

1
1
1
1
2
2

grogue
grogue
grogue
grogue
grogue
grogue

roda
roda
roda
roda
roda
roda

204
204
115
114
512
512

Dezembro
Dezembro
Dezembro
Dezembro
Outubro
Jan

19
19
26
19
16

15:25
15:16
08:42
15:30
1994
3 14:07

doiovm
doiovm ~
dovm
dovm ~
emacs
letras

Este formato mostra as seguintes informaes:

Em primeiro lugar, as permisses, o que j discutimos.

Em seguida, o contagem de link. Este o nmero de ligaes diretas para o arquivo. Para um arquivo regular,
isto normalmente 1, mas directrios ter pelo menos 2. Ns olhamos para as ligaes na pgina 186.

Em seguida vm os nomes do proprietrio e do grupo, e o tamanho do ficheiro em bytes.


Voc notar que o arquivo deppert.floppy pertence daemon. Este foi, provavelmente, um
acidente, e que poderia levar a problemas. Alis, olhando para o nome do arquivo
e seu tamanho, bastante bvio que esta uma imagem de 3 "flexvel, isto , um
cpia literal dos dados na disquete completa.

A data normalmente a data em que o arquivo foi modificado pela ltima vez. Com o -U opo ls,
voc pode listar a ltima vez que o arquivo foi acessado.

Finalmente vem o nome do arquivo. Como voc pode ver a partir deste exemplo, os nomes podem
ser bastante variada.

A par das permisses so de interesse. Os diretrios tm todos o x (Executar)


bit de permisso definida. Isso permite acessar arquivos (ou seja, de abertura) no diretrio que o
forma como o termo executar definido para um diretrio. Se eu redefinir a permisso de execuo, eu posso
ainda listar os nomes dos arquivos, mas no consigo acess-los.
Eu sou a nica pessoa que pode acessar o diretrio Mail. Esta a permisso normais
para um diretrio de e-mail.
Alterando permisses de arquivos e proprietrios
Muitas vezes, voc pode querer alterar as permisses de arquivos ou proprietrios. UNIX fornece trs
programas para fazer isso:

Para alterar o dono do arquivo, use chown. Por exemplo, para alterar a propriedade do
arquivo deppert.floppy, que na lista acima pertence daemon, raiz digite:
# Chown grog deppert.floppy

Note-se que somente raiz pode executar esta operao.

Para mudar o grupo de arquivos, use chgrp, que funciona da mesma forma como chown. A
alterar a propriedade do grupo de Lemis, voc deve digitar:
# Chgrp Lemis deppert.floppy

chown Tambm possvel alterar o proprietrio e grupo. Em vez dos dois anteriores
exemplos, voc pode digitar:
filesys.mm, v v4.17 (2003/04/02 06:43:57)

Permisses de arquivo

184

# Chown grog: Lemis deppert.floppy

Isso muda o proprietrio chamote, como antes, e altera tambm o grupo de


Lemis.

Para alterar as permisses, use o chmod programa. chmod tem um nmero de


formatos diferentes, mas, infelizmente, a representao de nove personagem no um dos
eles. Leia a pgina de manual chmod (1) a histria completa, mas voc pode conseguir apenas sobre
qualquer coisa que voc quiser com um dos formatos mostrados na tabela 10-1:
Tabela 10-1: cdigos de permisso chmod
Especificao Efeito
Negar permisso para grupo e outros escrevem

go-w

= Rw, + X

Defina a ler e escrever permisses para os padres habituais, mas mantm


qualquer permisses de execuo que esto atualmente definidas

+ X

Crie um diretrio ou arquivo pesquisvel / executvel por todos, se


j pesquisvel / executvel por qualquer pessoa

u = rwx, go = rx

Faa um arquivo legvel / executvel por todos e escrito pelo


proprietrio s

go =

Limpar todos os bits de modo para o grupo e outros

g = u-w

Definir os bits de grupos iguais aos bits do usurio, mas limpar o bit write grupo

As permisses para novos arquivos


Nada disto nos diz o que as permisses para novos arquivos vo ser. O errado
escolha poderia ser desastroso. Por exemplo, se os arquivos foram criados automaticamente com o
permisses rwxrwxrwx, qualquer um pode acess-los de qualquer forma. Por outro lado,
cri-los com r -------- poderia resultar em muito trabalho coloc-los para o que voc
realmente quer que eles sejam. UNIX resolve esse problema com uma coisa chamada umask (User
mscara). Este um no-permisso padro: especifica quais bits de permisso no permitir.
Como se isso no fosse confuso o suficiente, especificado no sistema de numerao octal, em que
os dgitos vlidos so 0 a 7. Cada dgito octal representa trs bits. Por outro lado, quanto
mais sistema hexadecimal comum usa 16 dgitos, 0 a 9 e um a f. As verses originais de
UNIX correu em mquinas que utilizaram o sistema de numerao octal, e desde que as permisses
vm em grupos de trs, fazia sentido deixar o umask valor em octal.
Um exemplo: por padro, voc deseja criar arquivos que qualquer um pode ler, mas s voc pode
escrever. Voc define a mscara 022. Isto corresponde ao padro binrio bit 000010010.
O lder 0 necessrio especificar que o nmero est em octal, no para fazer a trs dgitos. Se voc
deseja definir as permisses para que por default ningum pode ler, voc configur-lo para 0222. Algumas conchas
automaticamente assumir que o nmero octal, ento voc poder ser capaz de omitir o 0, mas no bom
prtica.

filesys.mm, v v4.17 (2003/04/02 06:43:57)

185

Captulo 10: Os sistemas de arquivos e dispositivos

As permisses so permitidos onde o bit correspondente 0:


rwxrwxrwx
000010010
rwxr-xr-x

Permisses possveis
umask
permisses resultantes

Por padro, os arquivos so criados sem a x pedaos, enquanto os diretrios so criados com o
permitido x bits, assim com este umask, um arquivo ser criado com as permisses rwr - r -.
umask um comando shell. Para configur-lo, basta digitar:
$ Umask 022

prefervel definir isto em seu shell de inicializao arquivo consulte a pgina 135 para mais detalhes.
Cuidado com a criao de uma umask demasiado restritiva. Por exemplo, voc vai entrar em um monte de problemas
com a mscara como 377, que cria arquivos que voc s pode ler, e que ningum mais
pode acessar a todos. Se voc no permitir o x (Executvel) bit, voc no ser capaz de acessar
diretrios que voc criar, e voc no ser capaz de executar programas que voc compilar.
Fazendo um programa executvel
Permisses de arquivo permitir um problema que ocorre com tanta frequncia que vale a pena chamar a ateno
a ele. Muitos sistemas operacionais exigem que um programa executvel ter uma nomenclatura especial
conveno, como COMMAND.COM ou FOO.BAT, em que o MS-DOS indica um
tipo especfico de binrio executvel e um arquivo script, respectivamente. Em UNIX, executvel
programas no precisa de um sufixo especial, mas eles devem ter o x bit definido. s vezes, isso pouco
fica reset (desligado), por exemplo se voc copi-lo em toda a rede com FTP. O resultado
parecido com este:
$ Ps
bash: ps: Permisso negada
$ Ls-l / bin / ps
-R - r - r - 1 bin kmem 163840 06 de maio 06:02 / bin / ps
$ Su
voc precisa ser super-usurio para definir permisso ps
Senha:
senha no ecoa
# Chmod + x / bin / ps
torn-lo executvel
# Ps
agora ele funciona
PID TT STAT
COMANDO DE TEMPO
226 p2 S
0:00.56 su (bash)
239 p2 R +
0:00.02 ps
146 V1 +
0:00.06 / usr / libexec / getty Pc ttyv1
147 v2 +
0:00.05 / usr / libexec / getty Pc ttyv2
# D
sair su
$ Ps
ps: / dev / mem: Permisso negada
hey! ele parou de trabalhar

Huh? Ele s trabalhou sob su, e parou de funcionar quando eu me tornei um mero mortal
de novo? O que est acontecendo aqui?
H um segundo problema com programas como ps: algumas verses precisam ser capazes de acessar
arquivos especiais, neste caso / Dev / mem, um arquivo especial que aborda a memria do sistema. A
fazer isso, preciso definir o setgid bit, s, o que exige cada vez superusurio novamente:
filesys.mm, v v4.17 (2003/04/02 06:43:57)

Permisses de arquivo

186

$ Su
voc precisa ser super-usurio para definir permisso ps
Senha:
senha no ecoa
# Chmod g+ s / bin / ps
definir o bit setgid
# Ls-l / bin / ps
veja o que parece
-R-xr-sr-x 1 bin kmem 163840 06 de maio 06:02 / bin / ps
# D
sair su
$ Ps
agora ele ainda funciona
PID TT STAT
COMANDO DE TEMPO
0:00.56 su (bash)
226 p2 S
239 p2 R +
0:00.02 ps
0:00.06 / usr / libexec / getty Pc ttyv1
146 V1 +
0:00.05 / usr / libexec / getty Pc ttyv2
147 v2 +

Neste exemplo, as permisses no resultado final so realmente as permisses corretas para


ps. impossvel percorrer as permisses para todos os programas padro. Se voc
suspeitar que voc tem o conjunto de permisses incorretamente, use as permisses dos arquivos em
o CD-ROM de sistema de arquivos ao vivo como uma diretriz.
setuid e setgid programas pode ser um problema de segurana. O que acontece se o programa chamado
ps realmente algo mais, um Cavalo de Tria? Temos de definir as permisses para permitir que ele quebrar
para o sistema. Como resultado, o FreeBSD tem encontrado um mtodo alternativo para ps para fazer o seu
trabalho, e no precisa mais ser definidos setgid.

Mandatory Access Control


Para alguns propsitos, as permisses UNIX tradicionais so insuficientes. Verso 5.0 de
FreeBSD introduz Mandatory Access Control, ou MAC, que permite kernel carregvel
mdulos para aumentar a poltica de segurana do sistema. MAC concebida como um conjunto de ferramentas para
desenvolvimento de extenses de segurana locais e vendedor, e inclui um nmero de amostras
mdulos de polticas, incluindo a Segurana Multi-Nvel (MLS) com compartimentos, e um nmero
aumento do nmero de modelos de segurana UNIX, incluindo um firewall de sistema de arquivos. No momento da
escrever ainda considerado software experimental, de modo que este livro no discuti-lo ainda mais.
Veja as pginas de manual para mais detalhes.

Ligaes
No UNIX, os ficheiros so definidos pela inodes, estruturas em disco que voc no pode acessar diretamente.
Eles contm o metadados, todas as informaes sobre o arquivo, como proprietrio, permisses
e data e hora. O que eles no contm so as coisas que voc pensa de como fazer backup de um arquivo:
eles no tm quaisquer dados, e que eles no tm nomes. Em vez disso, o inode contm
informaes sobre o local onde os blocos de dados esto localizados no disco. Ele no sabe
nada sobre o nome: esse o trabalho dos diretrios.
Um diretrio simplesmente um tipo especial de arquivo que contm uma lista de nomes e inode
nmeros: por outras palavras, eles atribuir um nome para um inodo, e, assim, a um ficheiro. Mais do que
um nome pode apontar para o mesmo inode, ento os arquivos podem ter mais de um nome. Este
ligao entre um nome e um inodo chamado link, por vezes, confusa difcil
link. Os nmeros de inode se relacionam com o sistema de arquivos, para que os arquivos devem estar no mesmo
sistema de arquivos
filesys.mm, v v4.17 (2003/04/02 06:43:57)

187

Captulo 10: Os sistemas de arquivos e dispositivos

como o diretrio que se refere a eles.


Entradas de diretrio so independentes um do outro: cada um aponta para o inode, por isso eles so
completamente equivalente. A contm um inodo contagem de links que mantm o controle de quantas
entradas de diretrio apontar para ele: quando voc remove a ltima entrada, o sistema apaga o arquivo
dados e metadados.
Alternativamente, links simblicos, s vezes chamado soft links, no est restrito ao mesmo
sistema de arquivos (nem mesmo para o mesmo sistema!), e referem-se a outro nome de arquivo, e no ao
prprio arquivo. A diferena mais evidente se voc excluir um arquivo: se o arquivo tem sido difcil
ligado, os outros nomes ainda existe e voc pode acessar o arquivo por eles. Se voc excluir um arquivo
nome que tem um link simblico apontando para ele, o arquivo vai embora eo link simblico
no pode encontr-lo mais.
No fcil decidir qual o tipo de ligao a usar para ver UNIX Power Tools (O'Reilly) para
mais detalhes.

Hierarquia de diretrios
Embora as plataformas Microsoft tem uma estrutura de diretrios hierrquica, h pouco
padronizao dos nomes de diretrio: difcil saber onde um determinado programa
ou arquivo de dados pode ser. Sistemas UNIX tm uma hierarquia de diretrios padro, embora cada
vendedor gosta de mud-la um pouco para garantir que eles no so absolutamente compatveis.
No decorrer de sua evoluo, UNIX mudou sua hierarquia de diretrio vrias vezes.
ainda melhor do que a situao no mundo Microsoft. O mais recente e, provavelmente,
mudanas mais profundas, ocorreram mais de dez anos com o Sistema V.4 e 4.4BSD,
ambas feitas alteraes quase idnticos.
Quase todas as verses do UNIX prefere ter pelo menos dois sistemas de arquivos, / (O de arquivos raiz
sistema) e / usr, mesmo que eles s tm um nico disco. Este arranjo considerado
mais confivel do que um nico sistema de arquivos: possvel para um sistema de arquivos para bater tanto que
ele no pode ser montado mais, e voc precisa ler em uma fita de backup, ou usar programas
como fsck ou fsdb para junt-los. Ns j discutimos este assunto na pgina
68, onde eu recomendo ter / Usr no mesmo sistema de arquivos /.

Diretrios padro
O layout fsico dos sistemas de arquivos no afeta os nomes ou os contedos do
diretrios, que so padronizados. Tabela 10-2 fornece uma viso geral do padro
Diretrios do FreeBSD, veja a pgina man hier (7) para mais detalhes.

filesys.mm, v v4.17 (2003/04/02 06:43:57)

Hierarquia de diretrios

188

Tabela 10-2: Hierarquia de diretrios do FreeBSD


Diretrio
nome
/

Uso
Sistema de arquivos raiz. Contm um par de diretrios do sistema e
pontos de montagem para outros sistemas de arquivos. Ele no deve conter
qualquer outra coisa.

/ Bin

Programas executveis de uso geral necessrios na inicializao do sistema


tempo. O nome era originalmente uma abreviao para binrio, mas
muitos dos arquivos aqui so scripts shell.

/ Boot

Arquivos usados durante a inicializao do sistema, incluindo o kernel e sua


ligado klds.

/ Cdrom

Um ponto de montagem para unidades de CD-ROM.

/ Compat

Um link para / Usr / compat: veja abaixo.

/ Dev

Directrio de ns de dispositivos. O nome uma abreviao para


dispositivos. Do FreeBSD 5.0 em diante, esta normalmente uma montagem
ponto de partida para o sistema de arquivos do dispositivo, devfs. Vamos olhar para o contedo
deste diretrio com mais detalhes na pgina 195.

/ Etc

Os arquivos de configurao utilizados na inicializao do sistema. Ao contrrio do System V, / Etc


no contm arquivos de compilao do kernel, que no so necessrios no
inicializao do sistema. Diferentemente das verses anteriores do UNIX, mas tambm no
contm executveis, eles foram transferidos para / Sbin.

/ Home

Por conveno, colocar os arquivos do usurio aqui. Apesar do nome, / Usr para
arquivos do sistema.

/ Mnt

Um ponto de montagem para disquetes e outros sistemas de arquivos temporrios.

/ Proc

O processar sistema de arquivos. Este diretrio contm pseudo-arquivos que


referem-se a memria virtual de processos ativos no momento.

/ Root

O diretrio home do usurio root. No arquivo UNIX tradicional


sistemas, diretrio home do root foi /, Mas isso confuso.

/ Sbin

Executveis do sistema necessrias em tempo de inicializao do sistema. So


arquivos de administrao do sistema que tipicamente usados para ser armazenado em / Etc

/ Sys

Se estiver presente, este geralmente um link simblico para / Usr / src / sys, o
fontes do kernel. Este um derivado de tractor BSD 4.3.

/ Tmp

Um lugar para os arquivos temporrios. Este diretrio um anacronismo:


normalmente sobre o sistema de arquivos raiz, embora seja possvel
mont-lo como um sistema de arquivos separado ou fazer um link simblico para
/ Var / tmp. Ele mantido principalmente para programas que esperam encontrar
lo.

/ Usr

O sistema de arquivos segundo''.'' Veja a discusso acima.


filesys.mm, v v4.17 (2003/04/02 06:43:57)

189

Captulo 10: Os sistemas de arquivos e dispositivos

Diretrio
nome
/ Usr/X11R6

Uso
O Sistema X Window.

/ Usr/X11R6/bin

Programas X11 executvel.

/ Usr/X11R6/include

Arquivos de cabealho para a programao X11.

/ Usr/X11R6/lib

Arquivos de biblioteca para X11.

/ Usr/X11R6/man

Pginas do manual para X11.

/ Usr / bin

Programas executveis padro que no so necessrios na inicializao do sistema.


A maioria dos programas padro que voc usa so armazenadas aqui.

/ Usr / compat

Um cdigo contendo diretrio para sistemas emulados, como o Linux.

/ Usr / games

Jogos.

/ Usr / include

Arquivos de cabealho para programadores.

/ Usr / lib

Arquivos de biblioteca. FreeBSD no tem um diretrio / Lib.

/ Usr / libexec

Arquivos executveis que no so iniciados diretamente pelo usurio, para


exemplo, as fases do compilador C (os quais so iniciados pelos
/ Usr / bin / gcc) ou o getty programa, o qual iniciado por Init.

/ Usr / libdata

Diversos arquivos usados por utilitrios de sistema.

/ Usr / local

Programas adicionais que no fazem parte do sistema operacional. Ele


paralelo ao / Usr diretrio em ter subdiretrios bin incluem
lib, homem, sbin e compartilhar. Este o lugar onde voc pode colocar programas
que voc recebe de outras fontes.

/ Usr / obj

Arquivos objeto criado, quando a construo do sistema. Veja o Captulo 33.

/ Usr / ports

A coleo de ports.

/ Usr / sbin

Programas de administrao de sistemas que no so necessrios ao sistema


inicializao.

/ Usr / share

Diversos arquivos somente leitura, principalmente informativo. Subdiretrios


incluir doc, a documentao do FreeBSD, jogos, informao, o GNU
Informaes documentao, locale, informaes internationization e
homem, as pginas man.

/ Usr / src

Arquivos de origem do sistema.

/ Var

Um sistema de arquivos para dados que muda com freqncia, tais como e-mail, notcias,
e os arquivos de log. Se / Var no um sistema de arquivos separado, voc deve
criar um diretrio em outro sistema de arquivos e links simblicos / Var a ele.

/ Var / log

Diretrio com arquivos de log do sistema

/ Var / mail

E-mails recebidos para os usurios deste sistema

filesys.mm, v v4.17 (2003/04/02 06:43:57)

Hierarquia de diretrios do FreeBSD

Diretrio
nome
/ Var / spool
/ Var / tmp

190

Uso
Dados transitrios, tais como correio de sada, os dados de impresso e annimo
FTP.
Arquivos temporrios.

Tipos de sistemas de arquivos


FreeBSD suporta um nmero de tipos de sistemas de arquivos. Os mais importantes so:

UFS o UNIX Arquivo system.1 Todos os sistemas de arquivos do disco nativas so deste tipo. Desde
FreeBSD 5.0, voc tem uma escolha de duas verses diferentes, UFS 1 e UFS 2. Como
nomes sugerem, UFS 2 o sucessor UFS 1. Ao contrrio UFS 1, UFS dois sistemas de arquivos so
no limitado a 1 TB (1024 GB). UFS 2 relativamente novo, a menos que voc precisa
sistemas de arquivos muito grandes, voc deve manter a UFS 1.

cd9660 9660 o formato de CD-ROM ISO com o assim chamado Rock Ridge Extensions
que permitem que os nomes de arquivo UNIX-like para ser usado. Use este tipo de sistema de arquivos para todos os CDROMs, mesmo se eles no tm as extenses Rock Ridge.

NFS o Network File System, um meio de compartilhar sistemas de arquivos atravs de uma rede.
Vamos olhar para ele no captulo 25.

FreeBSD suporta um nmero de sistemas de arquivos de outros sistemas operacionais populares.


Voc monta os sistemas de arquivos com o montar comando eo -T opo para especificar
o tipo de sistema de arquivos. Por exemplo:
# Mount-t ext2fs / dev/da1s1 / linux
# Mount-t msdos / dev/da2s1 / C:

montar um sistema de arquivos Linux ext2


montar um sistema de arquivos FAT Microsoft

Aqui est uma lista de sistemas de arquivos suportados atualmente:


Tabela 10-3: Suporte ao sistema de arquivos
Sistema de
arquivos
CD-ROM
DVD
Linux ext2
Microsoft MS-DOS
Microsoft NT
Novell Netware
Microsoft CIFS

opo de montar
cd9660
udf
ext2fs
MSDOSFS
ntfs
NWFS
smbfs

1. Paradoxalmente, embora BSD no pode ser chamado de UNIX, seu sistema de arquivo chamado o sistema de arquivos UNIX. O
Grupo sistema Unix, os desenvolvedores do sistema UNIX V.4, adotada UFS como sistema de arquivos padro para SysTEM V e deu-lhe este nome. Anteriormente, ele foi chamado de Berkeley Rpido File System, ou FFS.
filesys.mm, v v4.17 (2003/04/02 06:43:57)

191

Captulo 10: Os sistemas de arquivos e dispositivos

Soft updates
Soft updates mudar a forma como o sistema de arquivos realiza I / O. Eles permitem metadados ser
escrita com menos freqncia. Isso pode dar origem a melhorias de performance em
certas circunstncias, tais como a excluso do arquivo. Especifique soft updates com o -U opo quando
a criao do sistema de arquivos. Por exemplo:
# Newfs-U / dev/da1s2h

Se voc esquecer esta bandeira, voc pode ativ-los mais tarde, com tunefs:
# Tunefs-n enable / dev/da1s2h

Voc no pode executar esta operao em um sistema de arquivos montado.

Snapshots
Um dos problemas com o backup de sistemas de arquivos que voc no tem uma viso consistente
do sistema de arquivos: quando voc copia um arquivo, outros programas podem ser modific-lo, de modo que
voc comea na fita no uma viso precisa do arquivo a qualquer momento. Snapshots so um
mtodo para criar uma viso unificada de um sistema de arquivos. Eles mantm um arquivo relativamente pequeno em
o prprio sistema de arquivos que contm informaes sobre o que mudou desde que o instantneo foi
feita. Quando voc acessa o instantneo, voc obter esses dados, em vez de os dados atuais para
as partes do disco que mudaram, de modo a obter uma viso do sistema de arquivos como era no
o tempo do instantneo.
Criando instantneos
Voc pode criar snapshots com o montar comando eo -O snapshot opo. Para
exemplo, voc pode digitar
# Mount-u-o snapshot / var/snapshot/snap1 / var

Este comando cria um instantneo do / Var sistema de arquivo chamado / Var/snapshot/snap1.


Arquivos de instantneo tem algumas propriedades interessantes:

Voc pode ter vrios instantneos em um sistema de arquivos, at o limite atual de 20.

Snapshots tm o schg sinalizador, o que impede qualquer escrita para eles.

Apesar do schg bandeira, voc ainda pode remov-los.

Eles so atualizados automaticamente quando nada est escrito no sistema de arquivos. O ponto de vista
do sistema de arquivos no muda, mas essa atualizao necessria para manter a
'' Velho'' vista do sistema de arquivos.

Eles se parecem com os sistemas de arquivos normais. Voc pode mont-los com o md motorista. Vamos
olha que na pgina 193.

Provavelmente a coisa mais til que voc pode fazer com um snapshot fazer um backup dele. Vamos
olhar para backups na pgina 253.
filesys.mm, v v4.17 (2003/04/02 06:43:57)

Tipos de sistemas de arquivos

192

No momento da escrita, snapshots ainda esto em desenvolvimento. possvel que voc possa
ainda tenho problemas com eles, em particular, com os impasses que s podem ser apuradas por
reinicializao.
Demora cerca de 30 segundos para criar um instantneo de um sistema de arquivo de 8 GB. Durante os ltimos cinco
segundo, a atividade do sistema de arquivos est suspenso. Se h um monte de atividade de atualizao suave acontecendo
no sistema de arquivos (por exemplo, ao excluir um monte de arquivos), desta vez a suspenso pode
tornar-se muito mais tempo, at vrios minutos. Para remover o mesmo instantneo leva cerca de
dois minutos, mas no suspender a atividade do sistema de arquivos em tudo.

Montagem de sistemas de arquivos


Plataformas Microsoft identificar parties por letras que so atribudos no momento da inicializao. Tem
nenhuma relao bvia entre as parties, e voc tem pouco controle sobre a forma como o
sistema atribui-los. Por outro lado, todas as parties UNIX tm uma relao especfica com o raiz
sistema de arquivos, que chamado simplesmente /. Essa flexibilidade tem um problema: voc tem o
escolha de onde na estrutura do sistema de arquivos em geral que voc colocar seus sistemas de arquivos individuais.
Voc pode especificar o local com o montar de comando. Por exemplo, voc normalmente
montar um CD-ROM no diretrio / Cdrom, mas se voc tem trs unidades de CD-ROM
anexado ao seu controlador SCSI, talvez voc prefira para mont-los nos diretrios / Cd0,
/ Cd1 e / cd2. Para montar um sistema de arquivos, voc precisa especificar o dispositivo a ser montado,
onde ele para ser montado, e do tipo de sistema de ficheiros (a menos que seja ufs). O ponto de montagem,
(O diretrio onde est a ser montado) j deve existir. Para montar o seu segundo CDROM / Cd1, voc entra:
# Mkdir / cd1
# Mount-t cd9660-o ro / dev/cd1a / cd1

somente se no existe

Quando o sistema inicializado, ele chama o script de inicializao / Etc / rc, que entre outras coisas
monta automaticamente os sistemas de arquivos. Tudo que voc precisa fazer fornecer as informaes:
o que para ser montado, e onde? Isto , o arquivo / Etc / fstab. Se voc vem de uma
Ambiente System V, voc vai perceber diferena significativa no formato consulte a pgina man
fstab (5) a histria completa. Um tpico / Etc / fstab pode parecer:
/ Dev/ad0s1a /
/ Dev/ad0s1b nenhum
/ Dev/ad0s1e / usr
/ Dev/da1s1e / src
/ Dev/da2s1 / linux
/ Dev/ad1s1 / C:
proc / proc
linproc / compat / linux / proc
/ Dev/cd0a / cdrom
presto :/ / presto / root
presto :/ usr / presto / usr
presto casa :/ / presto / home
presto :/ S / S
/ / Guest @ samba / public / smb

ufs
trocar
ufs
ufs
ext2fs
msdos
procfs
linprocfs
cd9660
NFS
NFS
NFS
NFS
smbfs

rw 1 1
sw 0 0
rw 2 2
rw 2 2
rw 2 2
rw 2 2
rw 0 0
rw 0 0
ro 0 0
rw 0 0
rw 0 0
rw 0 0
rw 0 0
rw, noauto 0

sistema de arquivos raiz


trocar
Sistema de arquivos / usr
sistema de arquivo adicional
Sistema de arquivos Linux
Sistema de arquivos Microsoft
sistema de pseudo-arquivo proc
CD-ROM
Sistemas de arquivos NFS em outros sistemas

Sistema de arquivos SMB

filesys.mm, v v4.17 (2003/04/02 06:43:57)

193

Captulo 10: Os sistemas de arquivos e dispositivos

O formato do arquivo razoavelmente simples:

A primeira coluna indica o nome do dispositivo (se um sistema de arquivos real), a palavra-chave para
alguns sistemas de arquivos, como proc, ou o nome do sistema de arquivos remoto para montagens NFS.

A segunda coluna especifica o ponto de montagem. Parties swap no tem um monte


ponto, de modo que o ponto de montagem para a partio swap especificado como nenhum.

A terceira coluna especifica o tipo de sistema de arquivos. Sistemas de arquivos locais no disco rgido so
sempre ufs, e sistemas de arquivos em CD-ROM so cd9660. Sistemas de arquivos remotos so
sempre NFS. Especificar as parties de swap com swap, eo proc sistema de arquivo com proc.

A quarta coluna contm rw para sistemas de arquivos que podem ser lidos ou escritos, ro para o arquivo
sistemas (como CD-ROM) que s podem ser lidos e sw para parties swap. Tambm pode
conter opes como o noauto na linha de fundo, que conta a inicializao do sistema
scripts para ignorar a linha. Est l para que voc possa usar a notao abreviada montar
/ Smb quando voc quer montar o sistema de arquivos.

As colunas quinto e sexto so utilizados pelo despejar e fsck programas. Voc no vai
normalmente necessrio alter-los. Entrar 1 para um sistema de arquivos raiz, 2 por outro arquivo UFS
sistemas, e 0 para tudo o resto.

Arquivos de montagem dos sistemas de arquivos


At o momento, nossos arquivos foram todos em dispositivos, tambm chamado arquivos especiais. s vezes, porm,
voc pode querer acessar o contedo de um arquivo como um sistema de arquivos:

s vezes de interesse para acessar o contedo de um instantneo, por exemplo, para verificar
os contedos.

Depois de criar uma imagem ISO para gravar em CD-R, voc deve verificar se ele vlido.
Alm disso, depois de baixar uma imagem ISO a partir da Net, voc pode apenas querer acessar o
contedo, e no criar um CD-R em tudo.

Em cada caso, a soluo a mesma: voc monta os arquivos como um vnode com o dispositivo md
motorista.
O md controlador cria um certo nmero de diferentes tipos de pseudo-dispositivo. Veja a pgina de manual
md (4). Usamos o vnode dispositivo, um arquivo especial que refere-se a apresentar os arquivos do sistema. Suporte para
md est includo no kernel GENERIC, mas se voc construiu um kernel sem a md unidade,
voc pode carreg-lo como um kld. Se voc no tiver certeza, tente carregar o kld de qualquer maneira.
No exemplo a seguir, associamos um dispositivo vnode com a imagem ISO iso-imagem
usando o programa mdconfig:
# Kldload md
kldload: no pode carregar md: O arquivo j existe
# Mdconfig-a-t vnode-f iso-imagem
md0
# Mount-t cd9660 / dev/md0 / mnt

filesys.mm, v v4.17 (2003/04/02 06:43:57)

carregar o mdulo kld se necessrio


j carregado no kernel
e configurar o dispositivo
este o nome atribudo no diretrio / dev
ento mont-lo

Montagem de sistemas de arquivos

194

Depois disso, voc pode acessar a imagem em / Mnt como um sistema de arquivos normal. Voc pode especificar -T
cd9660 neste caso, porque o sistema de arquivos em que a imagem um sistema de arquivos CD9660. Voc
no especificar isso, se voc estiver montando um sistema de arquivos UFS, por exemplo, uma imagem instantnea.
Verses antigas do FreeBSD usou o vn motorista, que usou a sintaxe diferente. Linux usa
montagens de ala, que FreeBSD no suporta.

Desmontando sistemas de arquivos


Quando voc monta um sistema de arquivos, o sistema assume que vai ficar l, e no
questo de eficincia atrasa a gravao de dados de volta para o sistema de arquivos. Este tambm o
razo pela qual voc no pode simplesmente desligue-o quando voc desligar o sistema. Se voc
quero parar de usar um sistema de arquivos, voc deve informar ao sistema sobre ele para que ele possa liberar qualquer
dados restantes. Voc pode fazer isso com o umount de comando. Observe a ortografia deste
comando, no h n no nome do comando.
Voc precisa fazer isso mesmo com uma mdia somente leitura, como CD-ROMs: o sistema assume que
pode acessar os dados de um sistema de arquivos montado, e fica muito infeliz se no puder.
Sempre que possvel, ele bloqueia a mdia removvel para que voc no pode remov-los do dispositivo
at que voc desmont-las.
Utilizao umount simples: basta dizer o que desmontar, ou o nome do dispositivo ou
o nome do diretrio. Por exemplo, para desmontar o CD-ROM montado no exemplo
acima, voc pode digitar um dos seguintes comandos:
# Umount / dev/cd1a
# Umount / cd1

Antes de desmontar um sistema de arquivos, umount cheques que ningum est usando. Se algum
us-lo, ele se recusa a desmont-lo com uma mensagem como umount: / cd1: Dispositivo ocupado.
Esta mensagem ocorre muitas vezes porque voc mudou o diretrio para um diretrio no
sistema de arquivos que voc deseja remover. Por exemplo (que tambm mostra a utilidade de se ter
nomes de diretrio no prompt):
=== Root @ freebie (/ dev/ttyp2)
umount: / cd1: Dispositivo ocupado
=== Root @ freebie (/ dev/ttyp2)
=== Root @ freebie (/ dev/ttyp2)
=== Root @ freebie (/ dev/ttyp2)

/ Cd1 16 -> umount / cd1


/ Cd1 17 -> cd
~ 18 -> umount / cd1
~ 19 ->

Depois de desmontar um sistema de arquivos vnode, no se esquea de desconfigurar o arquivo:


# Umount / mnt
# Mdconfig-d-u 0

O parmetro 0 refere-se a md 0 dispositivo, em outras palavras / Dev/md0.

filesys.mm, v v4.17 (2003/04/02 06:43:57)

195

Captulo 10: Os sistemas de arquivos e dispositivos

Dispositivos FreeBSD
UNIX refere-se a dispositivos da mesma maneira em que se refere aos arquivos normais. Em contraste com
normal ('' normal'') arquivos, eles so chamados arquivos especiais. Eles no so realmente arquivos em tudo:
eles esto informaes sobre o suporte a dispositivos no kernel, eo termo n de dispositivo mais
preciso. Convencionalmente, eles so armazenados no directrio / Dev. Alguns dispositivos no tm
ns de dispositivos, como por exemplo as interfaces Ethernet: eles so tratados de forma diferente pelo ifconfig
programa.
Sistemas UNIX tradicionais distinguir dois tipos de dispositivo, dispositivos de bloco e carter
dispositivos. FreeBSD no tem mais dispositivos de bloco, discutimos as razes para isso na pgina
35.
Em sistemas UNIX tradicionais, incluindo FreeBSD at a verso 4, foi necessrio
criar ns de dispositivos manualmente. Isso causou uma srie de problemas quando eles no correspondem
o que estava no sistema. Release 5 do FreeBSD tem resolvido este problema com o dispositivo
sistema de arquivos, tambm conhecido como devfs. devfs um sistema de pseudo-arquivo que cria dinamicamente
ns de dispositivos para exatamente aqueles dispositivos que esto no kernel, o que torna desnecessrio
para criar manualmente os dispositivos.

Resumo dos dispositivos FreeBSD


Cada sistema UNIX tem suas peculiaridades quando se trata de nomes de dispositivos e uso.
Mesmo se voc est acostumado com UNIX, voc encontrar o seguinte quadro til.
Tabela 10-4: Nomes dos dispositivos FreeBSD
Dispositivo Descrio
acd0

Primeiro ATA (IDE) unidade de CD-ROM.

ad0
bpf0

Primeiro ata unidade de disco (IDE ou similar). Consulte o Captulo 2, pgina 38, para um
lista de nomes de unidade de disco completo.
Berkeley filtro de pacotes.

cd0

Primeira unidade de CD-ROM SCSI.

ch0

SCSI CD-ROM trocador (juke box)

consol
cuaa0

Console do sistema, o dispositivo que recebe mensagens do console. Inicialmente,


/ Dev/ttyv0, mas pode ser alterado.
Primeira porta serial em modo de texto explicativo.

cuaia0

Primeira porta serial em modo de texto explicativo, estado inicial. Observe a letra Eu para inicial.

cuala0

Primeira porta serial em modo de texto explicativo, estado de bloqueio. Observe a letra l para bloquear.

da0

Primeira unidade de disco SCSI. Consulte o Captulo 2, pgina 38, para obter uma lista completa de disco
conduzir nomes.
Primeira unidade de fita SCSI, ejetar o modo perto.

esa0

filesys.mm, v v4.17 (2003/04/02 06:43:57)

Dispositivos FreeBSD

196

Dispositivo Descrio
Descritor de arquivo pseudo-dispositivos: Um diretrio contendo pseudo-dispositivos que,
quando aberto, retornar uma cpia do descritor de arquivo com o mesmo
nmero. Por exemplo, se voc abrir / Dev/fd/0, voc comea uma outra ala
seu stdin fluxo (descritor de arquivo 0).
A primeira unidade de disquete, acessado como um sistema de arquivos.
fd0
fd

kmem

Kernel memria virtual pseudo-dispositivo.

lpt0

Primeira impressora paralela.

mem

Memria virtual fsica pseudo-dispositivo.

nsa0

Primeira unidade de fita SCSI, modo de no-retrocesso.

nulo

O bit bucket''.'' Enviar dados para este dispositivo se voc nunca quer v-lo
novamente.
PS / 2 mouse.

psm0

acaso

Primeiro mestre pseudo-terminal. Mestre pseudo-terminais so nomeados


/ Dev/ptyp0 atravs / Dev / ptypv, / dev/ptyq0 atravs / Dev / ptyqv, / dev/ptyr0
atravs / Dev / ptyrv, / dev/ptys0 atravs / Dev / ptysv, / dev/ptyP0 atravs
/ Dev / ptyPv, / Dev/ptyQ0
atravs / Dev / ptyQv, / Dev/ptyR0
atravs
/ Dev / ptyRv e / Dev/ptyS0 atravs / Dev / ptySv.
Gerador de nmeros aleatrios.

SA0

Primeira unidade de fita SCSI, retroceder no modo de perto.

sysmouse
tty

Sistema de rato, controlada pela moused. Ns vamos olhar para isso de novo na pgina
516.
Terminal de controle atual.

ttyd0

Primeira porta serial no modo chamando.

ttyid0

Primeira porta serial no modo chamando, estado inicial.

ttyld0

Primeira porta serial no modo chamando, estado de bloqueio.

ttyp0

ugen0

Primeiro escravo pseudo-terminal. Slave pseudo-terminais so nomeados / Dev/ttyp0


atravs / Dev / ttypv, / dev/ttyq0 atravs / Dev / ttyqv, / dev/ttyr0 atravs
/ Dev / ttyrv, / dev/ttyS0 atravs / Dev / ttysv, / dev/ttyP0 atravs / Dev / ttyPv,
/ Dev/ttyQ0 atravs / Dev / ttyQv, / dev/ttyR0 atravs / Dev / ttyRv e
/ Dev/ttyS0 atravs / Dev / ttySv. Alguns processos, como o xterm, s olhar
em / Dev/ttyp0 atravs / Dev / ttysv.
Primeiro virtuais tty. Este o mostrador com a qual o sistema iniciado. At 10
ttys virtuais pode ser ativado adicionando o apropriado getty informaes
o arquivo / Etc / ttys. Consulte o Captulo 19, pgina 338, para obter mais detalhes.
Primeiro dispositivo USB genrico.

ukbd0

Primeiro teclado USB.

ulpt0

Primeira impressora USB.

ptyp0

ttyv0

filesys.mm, v v4.17 (2003/04/02 06:43:57)

197

Captulo 10: Os sistemas de arquivos e dispositivos

Dispositivo Descrio
Primeiro dispositivo de armazenamento em massa USB.

umass0
ums0

Primeiro mouse USB.

uscanner0

Primeiro scanner USB.

vinum

Diretrio para ns de dispositivos Vinum. Consulte Captulo 12, para mais detalhes.

zero

Dispositivo fictcio que sempre retorna o valor (binrio) 0 quando lida.

Voc vai notar um nmero de diferentes modos associados com as portas seriais. Ns olharemos
eles novamente no captulo 19.

Terminais virtuais
Como vimos, o UNIX um sistema operacional multitarefa, mas um PC geralmente s tem
uma tela. FreeBSD resolve esse problema com terminais virtuais. Quando em modo texto,
pode variar entre um mximo de 16 diferentes telas com a combinao da Alt chave
e uma tecla de funo. Os dispositivos so nomeados / Dev/ttyv0 atravs / Dev/ttyv15, e
corresponder s teclas Alt-F1 atravs Alt-F16. Por padro, os trs terminais virtuais
so ativos: / Dev/ttyv0 atravs / Dev/ttyv2. O console do sistema o terminal virtual
/ Dev/ttyv0, e isso o que voc v quando voc iniciar a mquina. Para ativar adicional
terminais virtuais, edite o arquivo / Etc / ttys. L voc encontra:
ttyv0
ttyv1
ttyv2
ttyv3

"/ Usr / libexec / getty


"/ Usr / libexec / getty
"/ Usr / libexec / getty
"/ Usr / libexec / getty

Pc
Pc
Pc
Pc

"
"
"
"

cons25
cons25
cons25
cons25

em
em
em
fora

proteger
proteger
proteger
proteger

As palavras-chave em e fora referem-se ao estado do terminal de: permitir que um, para definir o seu estado
diante. Para ativar terminais virtuais extras, adicione uma linha com o nome do
terminal correspondente, em
a gama / Dev/ttyv4 a / Dev/ttyv15. Depois de ter editado o / etc / ttys, voc precisa dizer ao
sistema de rel-lo, a fim de iniciar os terminais. Faa isso como raiz com este comando:
# Kill -1 1

Processo 1 inicializao -Consulte a pgina 524 para mais detalhes.

Pseudo-terminais
Alm de terminais virtuais, FreeBSD oferece uma classe adicional de terminais chamados
pseudo-terminais. Eles vm em pares: um dispositivo mestre, tambm chamado de pta (Pronuncia-se
pena) usado apenas por processos que utilizam a interface, e tem um nome como / dev/ptyp0. O
dispositivo escravo parece um terminal, e tem um nome como / Dev/ttyp0. Qualquer processo pode abrir
isto sem qualquer conhecimento especial da interface. Estes terminais so usados para a rede
ligaes tais como xterm, telnet e rlogin. Voc no precisa de um getty por pseudoterminais. Desde o FreeBSD Verso 5.0, pseudo-terminais so criados conforme necessrio.
filesys.mm, v v4.17 (2003/04/02 06:43:57)

Neste captulo:
Adicionando um disco rgido
Usando sysinstall
Faz-lo da maneira mais difcil
Criando sistemas de arquivos
Movendo sistemas de arquivos
Recuperando-se de disco
erros de dados

11
Discos

Uma das partes mais importantes da gesto de qualquer sistema de computador a manipulao de dados no disco.
J olhou para manipulao de arquivos UNIX no captulo 10. Neste captulo, veremos
em duas maneiras de adicionar outro disco para seu sistema, e que voc deve colocar sobre eles. Em
Alm disso, vamos discutir a recuperao de erros de disco na pgina 218.

Adicionando um disco rgido


Quando voc instalou o FreeBSD, voc criou sistemas de arquivos em pelo menos um disco rgido. Numa
depois ponto, voc pode querer instalar unidades adicionais. H duas maneiras de fazer isso: com
sysinstall e com os tradicionais utilitrios de linha de comando UNIX.
Houve um tempo em que era perigoso usar sysinstall depois de o sistema ter sido
instalado: havia uma chance significativa de tiro no prprio p. H sempre um
oportunidade de fazer algo errado ao inicializar discos, mas sysinstall tornou-se muito
melhor, e agora a ferramenta de escolha. bom saber que as alternativas, no entanto. Neste
seo veremos sysinstall, e na pgina 209, vamos ver como faz-lo manualmente, se
sysinstall no vai cooperar.
Ns j passamos por todos os detalhes do layout do disco e fatias e parties no Captulo 2, para
Eu no vou repeti-las aqui. Basicamente, para adicionar um novo disco para o sistema, voc precisa:

Instale o disco fisicamente. Isso geralmente envolve desligando a mquina.

Mal possivelmente, formatar o disco. Sem exceo, os discos modernos vm prformatado, e voc s precisa formatar um disco se ele tem defeitos ou se antiga. Em
muitos casos, o assim chamado programa'''' formato realmente no formato de todo.

disks.mm, v v4.17 (2003/04/02 06:44:17)

199

Adicionando um disco rgido

200

Se voc deseja compartilhar com outros sistemas operacionais, criar uma tabela de partio no estilo PC
o disco. Olhamos para os conceitos na pgina 63.

Definir uma fatia FreeBSD (que o PC BIOS chama uma partio'''').

Diga o sistema sobre os sistemas de arquivos e onde mont-los.

Criar os sistemas de arquivos.

Definir as parties no slice FreeBSD.

Estas so as mesmas operaes que se realizaram, no Captulo 5.

Instalao de hardware de disco


Antes que voc pode fazer qualquer coisa com o disco, voc tem que instal-lo no sistema. Para fazer isso,
voc deve, normalmente, desligar o sistema e desligar a alimentao, apesar de high-end SCSI
caixas permitem hot-swap, alterando os discos em um sistema em execuo. Se o disco IDE,
e voc j tem um disco IDE no controlador, voc precisa definir o segundo disco como
'' Escravo'' rgido. E voc pode ter que definir o primeiro disco como'' master'' drive: se voc s tem
um carro, voc no definir quaisquer jumpers, mas se voc tiver dois discos, alguns discos exigem que voc
para definir jumpers de ambos os discos. Se voc no fizer isso, o sistema parece travar durante
o power-on self test, e, finalmente, denunciar algum tipo de erro de disco.
Adicionando um disco SCSI mais complicado. Voc pode conectar at 15 dispositivos SCSI a um
Adaptador de hospedeiro, dependendo da interface. Muitos sistemas de restringir o nmero de 7 para
compatibilidade com interfaces de SCSI antigos. Normalmente, o primeiro disco SCSI tero a
SCSI ID 0, eo adaptador de anfitrio ter a SCSI ID 7. Tradicionalmente, o IDs 4, 5 e
6 so reservadas para unidades de fita e CD-ROM, e os IDs de 0 a 3 so reservados para discos,
embora FreeBSD no impor quaisquer restries sobre o que vai onde.
Independentemente do tipo de disco que voc est adicionando, olhe para as mensagens de inicializao, que voc pode recuperar
com a dmesg de comando. Por exemplo, se voc est planejando adicionar um dispositivo SCSI, voc
pode ver:
sym0: <875> porta 0xc400-0xc4ff mem 0xec002000-0xec002fff, 0xec003000-0xec0030ff irq 10
no dispositivo 9.0 em pci0
sym0: Symbios NVRAM, ID 7, Fast-20, SE, SEM paridade
sym0: Open Drain motorista linha de IRQ, usando on-chip SRAM
sym0: usando LOAD / firmware baseado STORE.
sym0: SCAN PARA LUNS desativado para alvos 0.
SYM1: <875> porta 0xc800-0xc8ff mem 0xec001000-0xec001fff, 0xec000000-0xec0000ff irq 9
no dispositivo de 13,0 em pci0
SYM1: No NVRAM, ID 7, Fast-20, SE, verificao de paridade
mais abaixo ...
Aguardar 3 segundos para dispositivos SCSI para resolver
SA0 em sym0 bus 0 target 3 lun 0
SA0: dispositivo <EXABYTE EXB-8505SMBANSH2 0793> removvel de acesso sequencial SCSI-2
SA0: 5.000MB / s transferncias (5.000MHz, offset 11)
sa1 em sym0 bus 0 target 4 lun 0
sa1: <archive Python 28849-XXX 4.CM> dispositivo removvel de acesso sequencial SCSI-2
sa1: transferncias 5.000MB / s (5.000MHz, offset 15)
sa2 em sym0 bus 0 target 5 lun 0
sa2: <TANDBERG TDC 3800 -03:> acesso ao dispositivo removvel sequencial SCSI-CCS
sa2: transferncias 3.300MB / s
pass4 em sym0 bus 0 target 4 lun 1
pass4: dispositivo <archive Python 28849-XXX 4.CM> removvel Changer SCSI-2
disks.mm, v v4.17 (2003/04/02 06:44:17)

201

Captulo 11: Discos

pass4: transferncias 5.000MB / s (5.000MHz, offset 15)


cd0 em sym0 nibus meta de 6 0 lun 0
cd0: dispositivo SCSI-2 <NRC MBR-7 110> removvel CD-ROM
cd0: transferncias 3.300MB / s
cd0: cd presente [322.265 x 2.048 registros de bytes]
da0 em SYM1 bus 0 target 3 lun 0
da0: <SEAGATE ST15230W SUN4.2G 0738> Acesso Direto Fixo dispositivo SCSI-2
da0: 20.000MB transferncias / s (10.000MHz, offset 15, 16 bits), Tagged Filas Ativado
da0: 4095MB (8.386.733 setores de 512 bytes: 255H 63S / T 522C)

Este resultado mostra dois adaptadores SCSI Symbios / dev / (sym0 e / Dev/sym1), trs
unidades de fita / dev / (SA0, / Dev/sa1 e / Dev/sa2), uma unidade de CD-ROM / dev / (cd0), uma fita
Trocador / dev / (pass4), e tambm uma unidade de disco / Dev/da0 em 3 ID, que chamado um alvo em
estas mensagens. O disco ligado ao segundo adaptador de acolhimento, e os outros dispositivos
esto ligados primeira placa de acolhimento.
A instalao de um dispositivo SCSI externo
Dispositivos SCSI externos tm dois conectores de cabo: um vai para o adaptador de host e
outra para o dispositivo seguinte. A ordem dos dispositivos na cadeia no precisa
tem nada a ver com o ID SCSI. Este mtodo chamado encadeamento. No final
da cadeia, o conector extra pode ser conectado com um terminador, um conjunto de resistncias
projetado para manter o rudo fora do nibus. Alguns dispositivos tm terminadores internos, no entanto.
Ao instalar um dispositivo externo, voc ter que fazer o seguinte:

Se voc estiver instalando um primeiro dispositivo externo (um ligado diretamente ao cabo
conector do backplane do adaptador host), voc tem que garantir que o
dispositivo fornece terminao. Se voc j tem pelo menos um dispositivo interno, o anfitrio
adaptador no ser mais em uma extremidade da cadeia, para que voc tambm vai ter que parar de
fornecimento de resciso. Adaptadores host SCSI modernas pode decidir se eles precisam
terminar, mas adaptadores de host mais velhos tm pacotes de resistncia. Neste ltimo caso, a remover estes
pacotes de resistor.

Se voc estiver adicionando um dispositivo externo adicional, voc tem duas opes: voc pode
remover um cabo no meio da cadeia e lig-lo em seu novo dispositivo. Voc
em seguida, conectar um novo cabo do seu dispositivo para o dispositivo a partir do qual voc removeu o
cabo original.
Alternativamente, voc pode adicionar o dispositivo no final da cadeia. Retire o terminator
ou desligar a resciso, e conecte o cabo na tomada de reposio. Insira o
terminator no seu dispositivo (ou rode resciso por diante).

Voc pode adicionar dispositivos SCSI externos para um sistema em execuo, se eles so hot-pluggable. Poderia
funcionar mesmo se eles no so hot-pluggable, mas no estritamente a coisa certa a fazer, e
h o risco de que voc pode danificar alguma coisa, talvez irremediavelmente. Depois de ligar
os dispositivos, alimentando-os e esperando por eles para vir pronto, execute CamControl
nova pesquisa. Por exemplo, se voc adicionar uma segunda unidade de disco para o segundo adaptador de host no
exemplo acima, voc pode ver:

disks.mm, v v4.17 (2003/04/02 06:44:17)

Adicionando um disco rgido

202

# CamControl uma nova pesquisa


da1 em SYM1 bus 0 target 0 lun 0
da1: <SEAGATE ST15230W SUN4.2G 0738> Acesso Direto Fixed SCSI-2 dispositivo
da1: 20.000MB / s transferncias (10.000MHz, offset 15, 16 bits), Tagged colocao em fila Ativado
da1: 4095MB (8.386.733 setores de 512 bytes: 255H 63S / T 522C)
Re-scan de um nibus foi bem sucedida

H um problema com esta abordagem: note que / Dev/da1 Tem ID 0, e o j


apresentar / Dev/da0 tem ID 3. Se agora voc reiniciar o sistema, eles vo vir para cima com a
dispositivo nomeia o contrrio. Vamos olhar para esta questo com mais detalhes na prxima
seco.
A instalao de um dispositivo SCSI interno
A instalao de um dispositivo SCSI interno o mesmo que instalar um dispositivo externo.
Em vez de cadeias de margarida, voc tem um cabo de banda plana, com uma srie de conectores. Encontre um
que lhe convier, e conecte-o ao dispositivo. Novamente, voc precisa pensar sobre o trmino:

Se estiver a instalar o dispositivo no final da cadeia, que deveria ter cessado


ativado. Voc tambm deve desativar resciso do dispositivo que anteriormente era no
extremidade da cadeia. Dependendo do dispositivo, o que pode implicar a remoo fsica
terminadores ou a criao de um jumper.

Se voc estiver instalando o dispositivo no meio da cadeia, certifique-se que no tem


terminao ativada.

Neste captulo, veremos duas formas de instalar uma unidade em uma cadeia SCSI existente. Ns
poderia ser uma surpresa: a identificao do dispositivo temos para a nova unidade depende do que
actualmente na cadeia. Por exemplo, considere o nosso exemplo acima, onde temos uma cadeia
com uma nica unidade em que:
da0 em SYM1 bus 0 target 3 lun 0
da0: <SEAGATE ST15230W SUN4.2G 0738> Acesso Direto Fixo dispositivo SCSI-2
da0: 20.000MB transferncias / s (10.000MHz, offset 15, 16 bits), Tagged Filas Ativado
da0: 4095MB (8.386.733 setores de 512 bytes: 255H 63S / T 522C)

Esta movimentao no alvo (ID) 2. Se colocarmos a nossa nova unidade em 0 alvo e reiniciar, vemos:
da0 em SYM1 bus 0 target 0 lun 0
da0: <SEAGATE ST15230W SUN4.2G 0738> Acesso Direto Fixo
da0: 20.000MB transferncias / s (10.000MHz, offset 15, 16 bits),
da0: 4095MB (8.386.733 setores de 512 bytes: 255H 63S / T 522C)
da1 em SYM1 bus 0 target 3 lun 0
da1: <SEAGATE ST15230W SUN4.2G 0738> Acesso Direto fixo
da1: transferncias 20.000MB / s (10.000MHz, offset 15, 16 bits),
da1: 4095MB (8.386.733 setores de 512 bytes: 255H

Dispositivo SCSI-2
Tagged Filas Ativado
Dispositivo SCSI-2
Tagged Filas Ativado
63S / T 522C)

primeira vista, isso parece razovel, mas isso s porque ambos os discos so da mesma
tipo. Se voc olhar para os nmeros de destino, voc vai perceber que o novo disco / Dev/da0, no
/ Dev/da1. O ID de destino do novo disco inferior ao ID do alvo do disco antigo, de modo que o
sistema reconhece o novo disco como / Dev/da0, e nossa anterior / dev/da0 tornou
/ Dev/da1.

disks.mm, v v4.17 (2003/04/02 06:44:17)

203

Captulo 11: Discos

Esta mudana de ID do disco pode ser um problema. Uma das primeiras coisas que voc faz com um novo disco
a criao de novos rtulos de discos e sistemas de arquivos. Ambos oferecem excelentes oportunidades para atirar
no prprio p se voc escolher o disco errado: o resultado certamente seria o
perda completa de dados sobre esse disco. Mesmo para alm de tais catstrofes, voc vai ter que editar
/ Etc / fstab antes que voc pode montar todos os sistemas de arquivos que esto no disco. As alternativas so
para conectar os nomes de dispositivos, ou para alterar os IDs SCSI. No FreeBSD 5.0, fio
para baixo os nomes de dispositivos e nibus, adicionando entradas no arquivo de configurao de inicializao
/ Boot / device.hints. Veremos que na pgina 568.

A formatao do disco
A formatao o processo de reescrever todos os setores no disco com um padro de dados especfico,
que a eletrnica acha mais difcil de reproduzir: se eles podem ler esse padro, eles
pode ler qualquer coisa. Microsoft chama isso de baixo nvel format.1 Obviamente que destri qualquer
dados existentes, de modo

Se voc tem alguma coisa que voc deseja manter, faa um backup antes
formatao.
A maioria dos discos modernos no precisam de formatao, a menos que eles esto danificados. Em particular,
formatao no vai ajudar se voc est tendo problemas de configurao, se voc no pode ficar de PPP
trabalhar, ou voc est ficando sem espao em disco. Bem, vontade resolver o problema do espao de disco, mas
no da maneira que voc provavelmente deseja.
Se voc precisar formatar um disco SCSI, use CamControl. CamControl um programa de controle
para dispositivos SCSI, e inclui uma srie de funes teis que voc pode ler na
pgina de manual. Para formatar um disco, use a seguinte sintaxe:
# CamControl formato da1

Lembre-se que a formatao de um disco destri todos os dados no disco.


Antes de usar o comando, certifique-se de que voc precisa para faz-lo:
h relativamente poucos casos que exigem a formatao de um disco.
Sobre as nicas razes, se voc quiser mudar o fsico
tamanho do setor do disco, ou se voc est recebendo'' mdio formato
erros'' corrompidos do disco em resposta a ler e escrever
pedidos.
FreeBSD pode formatar apenas disquetes e discos SCSI. Em geral, no mais possvel
ATA discos reformatar (IDE), embora alguns fabricantes tm programas que podem recuperar
a partir de alguns problemas de dados. Na maioria dos casos, no entanto, suficiente para gravar a toda a zeros
disco:
# Dd if = / dev / zero of = / dev/ad1s2 bs = 128k

Se isso no funcionar, voc pode encontrar programas de formatao no site do fabricante.


Voc provavelmente vai precisar execut-los sob a plataforma Microsoft.
1. A Microsoft tambm usa o termo formato de alto nvel para o que chamamos de criao de um sistema de arquivos.
disks.mm, v v4.17 (2003/04/02 06:44:17)

Adicionando um disco rgido

204

Usando sysinstall
Se voc puder, use sysinstall para particionar seu disco. Olhando para o dmesg sada para o nosso
novo disco, vemos:
da1 em SYM1 bus 0 target 0 lun 0
da1: <SEAGATE ST15230W SUN4.2G 0738> Acesso Direto Fixed SCSI-2 dispositivo
da1: 20.000MB / s transferncias (10.000MHz, offset 15, 16 bits), Tagged colocao em fila Ativado
da1: 4095MB (8.386.733 setores de 512 bytes: 255H 63S / T 522C)

Voc ver a tela de instalao padro (ver Captulo 5, pgina 60). Selecionar Index, em seguida,
Partition, e voc ver a seguinte tela:

Figura 11-1: menu de seleo de disco


Neste caso, queremos partio / Dev/da1, por isso posicionar o cursor no da1 (Como mostrado)
e imprensa Enter. Vemos o menu de partio do disco, o que mostra que o disco atualmente
contm trs parties:

A primeira comea no deslocamento de 0, e tem um comprimento de 63. Isto no no utilizado, no importa o que
a descrio diz. a tabela de partio, preenchido com o comprimento de uma faixa''.''

A prxima partio ocupa a maior parte da unidade e uma partio Microsoft.


Finalmente, temos 803 setores que sobraram como resultado de um esquema de particionamento.
s vezes, isso pode ser muito mais valores de maior que eu j vi to altas quanto 35 MB. Isto
o preo que pagamos para compatibilidade com PC BIOS particionamento.

Queremos uma partio FreeBSD, no uma partio Microsoft. Neste ponto, temos um nmero
de opes:

disks.mm, v v4.17 (2003/04/02 06:44:17)

205

Captulo 11: Discos

Figura 11-2: Menu partio de disco

Ns podemos mudar o tipo de partio (chamado'' subtipo'' no menu). atualmente 6,


e seria preciso alter-lo para 165. Faa isso com o t de comando.

Ns poderamos excluir a partio, posicionando o cursor sobre as informaes da partio


e pressionando d, em seguida, criar uma nova partio, ou com um se quisermos uma nica partio,
ou com c se queremos mais de uma partio.

Se estamos usando este disco apenas para FreeBSD, no tem que perder mesmo tanto
espao. Existe uma opo'' usar o disco inteiro para FreeBSD,'' o chamado'' perigosamente
dedicado modo''. Este termo vem parcialmente de superstio e em parte porque
algumas BIOS esperar encontrar uma tabela de partio no primeiro setor de um disco, e eles
no pode acessar o disco, se no encontrar um. Se a sua BIOS tem esse bug, voc vai encontrar este
um muito rapidamente quando voc tenta arrancar. Se no falhar no primeiro boot, ele
no vai falhar, mas quase impossvel que voc pode ter problemas se voc mov-lo para um
sistema com diferentes BIOS. Se voc quiser usar este mtodo, use os indocumentados
f de comando.

Para usar o disco inteiro, primeiro apagar a partio atual: ns pressione o cursor para baixo chave
at que destaca a partio FreeBSD. Depois, pressione d, e as trs parties so
juntou-se uma, marcada no utilizado.

disks.mm, v v4.17 (2003/04/02 06:44:17)

Usando sysinstall

206

O prximo passo o de criar uma nova partio usando todo o disco. Se pressionarmos f, obtemos a
seguinte mensagem:

Ns no receber esta mensagem se usarmos o um comando: ele assume apenas automaticamente Sim.
Neste caso, ns decidimos usar todo o disco, por isso mova o cursor para a direita para No e
imprensa Enter. Isso nos d uma tela de seleo do gerenciador de inicializao:

disks.mm, v v4.17 (2003/04/02 06:44:17)

207

Captulo 11: Discos

Este no um disco de boot, por isso no precisa de nenhum registro de inicializao, e no faz qualquer
diferena que ns selecionamos. mais arrumado, porm, para selecionar Nenhum conforme indicado. Depois, pressione
q para sair do editor de parties, voltar para o ndice de funo e selecione Label. Vemos:

A informao importante sobre este menu olhando um pouco vazia a informao no


superior sobre o espao livre disponvel. Ns queremos criar duas parties: a primeira, uma partio swap
de 512 MB, e, em seguida, um sistema de arquivos ocupando o resto do disco. Ns pressionamos C, e so
mostrado um submenu oferecendo-nos todos 8386733 blocos no disco. Temos que apagar e entrar
512m, o que representa 512 MB. Depois, pressione Enter, e outro submenu aparece,
pedindo-nos que tipo de fatia . Ns mover o cursor para baixo para selecionar Um swap
partio:

disks.mm, v v4.17 (2003/04/02 06:44:17)

Usando sysinstall

208

Em seguida, pressione c novamente para criar uma nova partio. Desta vez, ns aceitamos a oferta do resto
do espao no disco, 7338157 sectores, podemos seleccionar Um sistema de arquivos, e ns somos
presenteado com mais um cardpio pedindo o nome do sistema de arquivos. Entramos no
nome, neste caso / S:

Depois de pressionar Digite, vemos:

disks.mm, v v4.17 (2003/04/02 06:44:17)

209

Captulo 11: Discos

Por fim, pressione W para dizer ao editor rtulo de disco para executar a funo. Ns temos uma
tela de aviso adicional:

Estamos fazendo isso on-line, de modo que OK. Ns selecionamos Sim, e sysinstall cria o arquivo
sistema e monta tanto um como a partio swap. Isso pode demorar um pouco. No tente
para fazer qualquer coisa com a unidade at que seja concludo.

Faz-lo da maneira mais difcil


Infelizmente, s vezes voc pode no ser capaz de usar a sysinstall mtodo. Voc pode
no ter acesso a sysinstall, ou voc pode querer usar as opes que sysinstall no oferece.
Isso nos deixa com a velha maneira de adicionar discos. A nica diferena que desta vez precisamos
usar ferramentas diferentes. Nas sees seguintes, vamos olhar para o que temos que fazer para
instalar este mesmo 4 GB unidade Seagate manualmente. Desta vez, vamos mudar o particionamento de
conter as seguintes parties:

Um sistema de arquivos Microsoft.

O / Newhome sistema de arquivos para o nosso sistema FreeBSD.

Swap adicional para o sistema FreeBSD.

Ns chamamos este sistema de arquivos / Newhome para us-lo como um exemplo de movimento sistemas de arquivos
novos discos. Na pgina 218, vamos ver como mover os dados de dimetro.

disks.mm, v v4.17 (2003/04/02 06:44:17)

Faz-lo da maneira mais difcil

210

Criando uma tabela de partio


A primeira etapa criar uma tabela de partio modelo BIOS do PC no disco. Como na Microsoft, o
o programa de particionamento chamado fdisk. Na discusso a seguir, voc vai encontrar um bolso
indispensvel calculadora.
Se o disco no novo, ele ter os dados existentes de algum tipo sobre ele. Dependendo
a natureza desses dados, fdisk poderia comear suficientemente confuso para no funcionar corretamente. Se voc
No formate o disco, uma boa idia para substituir o incio do disco com dd :
# Dd if = / dev / zero of = / dev/da1 count = 100
100 0 registros em
100 0 registros fora
51.200 bytes transferidos em um segundos (51.200 bytes / seg)

Vamos atribuir 1 GB para a Microsoft e usar o restante, aproximadamente, 3 GB para


FreeBSD. Nossa tabela de partio resultante deve ser parecido:
Master Boot Record
Partition Table
Fatia 1 - Microsoft primrio
/ Dev/da1s1, 1 GB
Slice 2 - FreeBSD
/ Dev/da1s2, 3 GB

Microsoft partio primria


/ Dev/da1s2b: FreeBSD troca
/ Dev/da1s2h: / newhome sistema de arquivos

Slice 3 (no utilizado)


Slice 4 (sem uso)

Figura 11-3: tabela de partio no segundo disco FreeBSD


O Master Boot Record ea tabela de partio ocupam o primeiro setor do disco, mas
muitas das alocaes so trilha orientada, por isso toda a primeira faixa do disco no
disponvel para alocao. O resto, at ao fim do ltimo cilindro inteiro, pode ser dividido
entre as parties. fcil cometer um erro na especificao dos parmetros e
fdisk executa to bom quanto qualquer verificao. Voc pode facilmente criar uma tabela de partio que tem
absolutamente nenhuma relao com a realidade, por isso uma boa idia para calcul-las com antecedncia.
Para cada partio, preciso saber trs coisas:

O tipo de partio que o fdisk chamadas SYSID. Este um nmero que descreve a
partio usado. Parties FreeBSD tem partio do tipo 165, e moderno (MSDOS verso 4 ou posterior) parties Microsoft tem tipo 6.

O iniciar setor, o primeiro setor na partio.


O setor final para a partio.

disks.mm, v v4.17 (2003/04/02 06:44:17)

211

Captulo 11: Discos

Alm disso, precisamos decidir qual partio o ativo partio, a partio


que queremos arrancar. Neste caso, no faz nenhuma diferena, pois no ser
inicializar a partir do disco, mas sempre uma boa idia para configur-lo de qualquer maneira.
Ns especificar quais as parties que no queremos, dando-lhes um tipo, comece sector a sector e final
de 0. Nosso disco tem 8386733 setores, numerados de 0-8386732. Parties deve comear e
terminar em um limite de cilindro, e queremos que a partio Microsoft em cerca de 1 GB. 1 GB
de 1024 MB e 1 MB de 2048 setores de 512 bytes cada um, por isso, teoricamente, queremos que 1024
2.048, ou 2.197.152 setores. Devido exigncia de que as parties comeam e terminam em um
'' Cilindro'' limite, precisamos encontrar o nmero mais prximo de cilindros'''' a este valor.
Primeiro precisamos descobrir como um grande'' cilindro'' . Podemos fazer isso atravs da execuo fdisk
sem opes:
# Fdisk da1
******* Trabalho sobre o dispositivo / dev/da1 *******
parmetros extrados a partir de volume de disco no interior do ncleo :
cilindros = 13.726 cabeas = 13 setores / trilha = 47 (611 blks / cilindro)
As figuras abaixo no funcionar com BIOS para parties no em cilindros 1
parmetros a serem utilizados para os clculos do BIOS so:
cilindros = 13.726 cabeas = 13 setores / trilha = 47 (611 blks / cilindro)
fdisk: tabela de partio fdisk invlido encontrado
Tamanho do setor de mdia de 512
Aviso: BIOS setor numerao comea com o setor 1
Informaes do DOS bootblock :
Os dados para a partio 1 :
<UNUSED>
Os dados para a partio 2 :
<UNUSED>
Os dados relativos a divisria 3 a seguinte:
<UNUSED>
Os dados relativos a partio 4 :
sysid 165, (FreeBSD/NetBSD/386BSD)
comear a 47, tamanho 8.386.539 (4094 Meg), bandeira 80 (ativo)
implorar: cyl 0 / cabea 1 / setor 1;
end: cyl 413 / cabea 12 / setor 47

Voc vai notar que fdisk decidiu que no h uma partio FreeBSD na partio 4. Que
acontece mesmo se o disco novo. Na verdade, esta uma caracterstica menos desejvel de fdisk: ela
'' Sugere'' esta partio, no realmente l, o que pode ser muito confuso. Este
impresso, no entanto, dizem-nos que fdisk acha que existem 611 setores por cilindro, de modo que
2197152 dividir por 611 e obter 3.423,327 cilindros. Ns arredondar para baixo a 3.423 cilindros,
o que prova ser 2091453 setores. Este o comprimento que damos primeira partio.
Usamos o espao restante para a partio FreeBSD. Quanto? Bem, dmesg diz-nos
que existem 8386733 setores, mas se voc olhar para a geometria que fdisk sadas, h
so 13.726 cilindros com 13 cabeas (faixas) por cilindro e 47 setores por trilha. 13726
13 47 8386586. Este arredondamento para baixo a explicao para a falta de dados no
final do disco que vimos na pgina 204. A melhor maneira de se calcular o tamanho da
FreeBSD partio levar o nmero de cilindros e multiplicar pelo nmero de
trilhas por cilindro. A partio do FreeBSD comea atrs da divisria Microsoft, por isso
vai de cilindro para cilindro 13725 3423, inclusive, ou 10303 cilindros. Na 611 setores
por cilindro, temos um total de 6295133 setores da partio. Nosso resultado
informao :
disks.mm, v v4.17 (2003/04/02 06:44:17)

Faz-lo da maneira mais difcil

212

Tabela 11-1: amostra fdisk parmetros


Divisria
nmero
1
2
3
4

Divisria
tipo
6
165
0
0

Comea
Tamanho
r
setor
2091453
1
6295133
2091453
0
0

Em seguida, execute fdisk a srio, especificando a -I opo. Durante este tempo, voc pode ver
mensagens no console:
da1: invlido tabela de partio primria: nenhuma mgica

A mensagem nenhuma mgica no quer dizer que fdisk est fora de fumaa roxa. Refere-se
fato de que ele no encontrou o chamado nmero mgico, que identifica a tabela de partio.
Ns no temos uma tabela de partio, no entanto, assim que esta mensagem no de estranhar. tambm completamente
inofensivo.
fdisk prompts interativamente quando voc especificar o -I bandeira:
# Fdisk-i da1
******* Trabalho sobre o dispositivo / dev/da1 *******
parmetros extrados a partir de volume de disco no interior do ncleo :
cilindros = 13.726 cabeas = 13 setores / trilha = 47 (611 blks / cilindro)
As figuras abaixo no funcionar com BIOS para parties no em cilindros 1
parmetros a serem utilizados para os clculos do BIOS so:
cilindros = 13.726 cabeas = 13 setores / trilha = 47 (611 blks / cilindro)
Voc quer mudar a nossa ideia sobre o que pensa BIOS? [N]
Entrar prensado
Tamanho do setor de mdia de 512
Aviso: BIOS setor numerao comea com o setor 1
Informaes do DOS bootblock :
Os dados para a partio 1 :
sysid 165, (FreeBSD/NetBSD/386BSD)
iniciar 0, tamanho 8.386.733 (4095 Meg), bandeira 80 (ativo)
implorar: cyl 0 / head 0 / setor 1;
end: cyl 522 / cabea 12 / setor 47
Voc quer mudar isso? [N] y
Fornecer um valor decimal para "sysid (165 = FreeBSD)" [0] 6
Fornecer um valor decimal para o "start" [0]
Entrar prensado
Fornecer um valor decimal para o "tamanho" [0] 2091453
Explicitamente especificar o endereo implorar / end? [N]
Entrar prensado
sysid 6 (Primrio 'big' DOS (> 32MB))
iniciar 0, tamanho 2.091.453 (1021 Meg), bandeira 0
implorar: cyl 0 / head 0 / setor 1;
end: cyl 350 / cabea 12 / setor 47
Estamos felizes com essa entrada? [N] y
Os dados para a partio 2 :
<UNUSED>
Voc quer mudar isso? [N] y
Fornecer um valor decimal para "sysid (165 = FreeBSD)" [0] 165
Fornecer um valor decimal para o "start" [0] 2091453
Fornecer um valor decimal para o "tamanho" [0] 6295133
Explicitamente especificar o endereo implorar / end? [N]
Entrar prensado
sysid 165, (FreeBSD/NetBSD/386BSD)
disks.mm, v v4.17 (2003/04/02 06:44:17)

213

Captulo 11: Discos

comear 2091453, 6295133 tamanho (3073 Meg), bandeira 0


implorar: cyl 351 / head 0 / setor 1;
end: cyl 413 / cabea 12 / setor 47
Estamos felizes com essa entrada? [N] y
Os dados relativos a divisria 3 a seguinte:
<UNUSED>
Voc quer mudar isso? [N] Entrar prensado
Os dados relativos a partio 4 :
sysid 165, (FreeBSD/NetBSD/386BSD)
comear a 47, tamanho 8.386.539 (4094 Meg), bandeira 80 (ativo)
implorar: cyl 0 / cabea 1 / setor 1;
end: cyl 413 / cabea 12 / setor 47
Voc quer mudar isso? [N] y
Os dados estticos para a partio DOS 4 foi reinicializado para:
sysid 165, (FreeBSD/NetBSD/386BSD)
comear a 47, tamanho 8.386.539 (4094 Meg), bandeira 80 (ativo)
implorar: cyl 0 / cabea 1 / setor 1;
end: cyl 413 / cabea 12 / setor 47
Fornecer um valor decimal para "sysid (165 = FreeBSD)" [165] 0
Fornecer um valor decimal para o "start" [47] 0
Fornecer um valor decimal para o "tamanho" [8386539] 0
Explicitamente especificar o endereo implorar / end? [N] Entrar prensado
<UNUSED>
Estamos felizes com essa entrada? [N] y
Voc quer mudar a partio ativa? [N] y
Fornecer um valor decimal de "partio ativa" [1] 2
Voc est feliz com essa escolha [n] y
Ns no mudamos a tabela de partio ainda. Esta sua ltima chance.
parmetros extrados a partir de volume de disco no interior do ncleo :
cilindros = 13.726 cabeas = 13 setores / trilha = 47 (611 blks / cilindro)
As figuras abaixo no funcionar com BIOS para parties no em cilindros 1
parmetros a serem utilizados para os clculos do BIOS so:
cilindros = 13.726 cabeas = 13 setores / trilha = 47 (611 blks / cilindro)
Informaes do DOS bootblock :
1: sysid 6 (Primrio 'big' DOS (> 32MB))
iniciar 0, tamanho 2.091.453 (1021 Meg), bandeira 0
implorar: cyl 0 / head 0 / setor 1;
end: cyl 350 / cabea 12 / setor 47
2: sysid 165, (FreeBSD/NetBSD/386BSD)
start 2091453, 6295133 tamanho (3073 Meg), bandeira 80 (ativo)
implorar: cyl 351 / head 0 / setor 1;
end: cyl 413 / cabea 12 / setor 47
3: <UNUSED>
4: <UNUSED>
Deveramos escrever nova tabela de parties? [N] y

Voc vai notar algumas coisas aqui:

Mesmo que criamos parties vlidas 1 e 2, que cobrem toda a unidade, fdisk
nos deu a 4 partio fantasma, que abrangeu todo o disco, e tivemos que remover
lo.

Os nmeros de cilindros no resumo no final no faz qualquer sentido. Temos


j calculou que a partio Microsoft vai do cilindro 0 a cilindro 3422
inclusive, ea partio FreeBSD vai do cilindro 3423 de cilindro 13725. Mas
fdisk diz que a partio da Microsoft vai do cilindro de 0 a 350, inclusive cilindro,
ea partio FreeBSD vai do cilindro 351 no cilindro 413. O que isso tudo
sobre?

disks.mm, v v4.17 (2003/04/02 06:44:17)

Faz-lo da maneira mais difcil

214

O problema aqui overflow: era uma vez, o valor mximo do cilindro foi
1023, e fdisk ainda acha que este o caso. Os nmeros que estamos vendo aqui so os
restante deixado pela diviso do nmero de cilindros reais por 1024.

Rotulagem do disco
Uma vez que temos uma tabela de parties vlida BIOS do PC, preciso criar sistemas de arquivos. Ns
no vai olhar para a partio Microsoft em mais detalhes, mas ainda precisamos fazer alguns
mais trabalho na nossa fatia FreeBSD (fatia ou PC partio BIOS 2). Isso vai facilitar a vida
aqui lembrar algumas coisas:

A partir de agora, estamos apenas olhando para a fatia, o que podemos pensar como um disco lgico.
Nomes como rtulo de disco realmente referem-se a fatia, mas muitos termos padro usar a palavra
disco, por isso vamos continuar a us-los.

Todos os deslocamentos so em relao ao incio da fatia, e no o incio do disco.


Tamanhos tambm se referem fatia e no no disco.

A primeira coisa que precisamos a (fatia) rtulo de disco, que fornece informaes gerais sobre
a fatia:

O fato de que uma fatia FreeBSD.

O tamanho da fatia.

Os tamanhos, tipos e layout dos sistemas de arquivos.

Algumas informaes obsoletas sobre detalhes como a velocidade de rotao do disco ea


Tempo de comutao de caminhos-de-track. Este ainda est aqui apenas por razes histricas. Pode ir
embora logo.

A nica informao que precisa para a entrada o tipo, tamanho e localizao das parties. Em
Neste caso, ns decidimos criar um sistema de arquivos na partio h ( / Dev/da1s2h) e swap
um espao na partio b / Dev / (da1s1b). O espao de troca ser de 512 MB, eo sistema de arquivos
vai ocupar o resto da fatia. Isto principalmente tradio: tradicionalmente discos de dados utilizar o
h e no a partio um partio, por isso vamos manter essa tradio, embora no h nada
para impedi-lo de usar o um partio, se voc preferir. Alm disso, preciso definir o c
de partio, que representa toda a fatia. Em resumo, a fatia FreeBSD queremos
criar se parece com:

/ Dev/da1s2b: troca FreeBSD, 512 MB


/ Dev/da1s2h: / newhome sistema de arquivos, 2,5 GB

Figura 11-4: FreeBSD fatia no segundo disco

disks.mm, v v4.17 (2003/04/02 06:44:17)

215

Captulo 11: Discos

Disklabel
O programa que escreve a etiqueta do disco chamado (esperar por ele) disklabel. No to enrugadas como
fdisk, mas ele ainda pode dar-lhe um prazo para seu dinheiro. Hoje em dia voc pode ignorar a maioria dos
a complexidade, no entanto. Voc pode normalmente criar um rtulo de disco com o nico comando:
# Disklabel-w-r / dev/da1s2 auto

Isto cria o rtulo com uma nica partio, c. Voc pode olhar para o rtulo com disklabel
sem opes:
# Disklabel / dev/da1s2
# / Dev/da0s2:
Tipo: SCSI
disk: SEAGATE
label:
flags:
bytes / setor: 512
setores / trilha: 47
faixas / cilindro: 13
setores / cilindro: 611
Cilindros: 10303
setor / unidade: 6295133
rpm: 3600
intercalam: 1
trackskew: 0
cylinderskew: 0
headswitch: 0
# Milissegundos
caminhos-de-track buscar: 0 # milissegundos
drivedata: 0
8 parties:
# Tamanho
c: 6295133

compensar
0

fstype
[Fsize bsize bps / cpg]
no usado
0
0 # (Cyl.

0-10302)

Somente nos ltimos trs linhas so de interesse. O resto informao histrica que irrelevante
e que pode ser simplesmente errado, como o rpm valor de 3600, um valor tpico de 20 anos atrs.
Hoje em dia at os discos mais baratos correr a 5400 rpm.
Neste momento, a nica partio que voc tem o'' todo'' disco de partio c. Voc ainda precisa
para parties b e h e especificar sua localizao e tamanho. Faa isso com disklabel-e, que
inicia um editor com a sada que voc v acima. Basta adicionar parties adicionais:
8 parties:
# Tamanho
compensar
c: 6295133
0
b: 1048576
0
h: 5246557 1048576

fstype
[Fsize bsize bps / cpg]
no usado
0
0 # (Cyl.
trocar
0
0 # (Cyl.
no usado
0
0 # (Cyl.

0-10302)
0-10302)
0-10302)

Voc no precisa manter qualquer ordem particular, e voc no precisa especificar que
divisria h ser um sistema de arquivos. Na prxima etapa, newfs vai fazer isso por voc
automaticamente.

disks.mm, v v4.17 (2003/04/02 06:44:17)

Faz-lo da maneira mais difcil

216

Problemas de execuo disklabel


s vezes isso no funciona muito bem. Aqui esto alguns dos erros que voc pode
encontrar:

Voc pode encontrar:


# Disklabel-w-r da1s2 auto
disklabel: / dev/da1s2c: Erro indefinido: 0

Esta mensagem pode ser o resultado do kernel ter informaes out-of-date sobre o
fatia na memria. Se este for o caso, uma reinicializao pode ajudar.

No rtulo de disco em disco bastante simples. Voc tentou usar disklabel a


olhar para o rtulo antes de voc ter um rtulo para olhar.

Nmero mgico rtulo ou checksum est errado! diz que disklabel pensa que
tem um rtulo, mas invlido. Isto poderia ser o resultado de uma tentativa anterior incorrecto
para rotular o disco. Pode ser difcil de se livrar de um rtulo incorreto. A melhor coisa a
no reparticionar o disco com a etiqueta em uma posio diferente, e, em seguida, copiar
/ Dev / zero para que o rtulo a ser utilizado. Depois, voc pode reparticionar novamente do jeito que voc
quero t-lo.

Abrir partio moveria ou encolher provavelmente significa que voc tem


especificou valores incorretos em suas definies de fatia. Verificar que a particularmente c
partio corresponde definio na tabela de partio.

escrever: somente leitura do sistema de arquivos significa que voc est tentando fazer algo
invlido com um rtulo de disco vlido. FreeBSD write protege o rtulo do disco, razo pela qual
voc receber essa mensagem.

Alm disso, voc pode receber mensagens do kernel, como:


fixlabel: tamanho da partio RAW> tamanho da fatia
ou
fixlabel: compensar parties brutas = fatia compensar

Os significados dessas mensagens deve ser bvia.

Voc pode receber esta mensagem:


# Disklabel-w-r / dev/da1s2 auto
disklabel: "auto" requer o uso de um nome de disco cannica

Isto forma inimitvel de disklabel de lhe dizer que ela quer que voc digite da1s2, no
/ Dev/da1s2.

Em tempos antigos, disklabel s vezes, no conseguiu criar um sistema de arquivos com o automtico
palavra-chave. Em tal caso, necessrio para descrever a geometria do disco no arquivo
/ Etc / disktab. Este problema no ocorreu durante um longo tempo. Se isso acontece com voc, voc
pode contorn-la, definindo o disco em / Etc / disktab (Veja a pgina man disktab (5)
para mais detalhes) e, em seguida, referenciar a definio na invocao de disklabel:

disks.mm, v v4.17 (2003/04/02 06:44:17)

217

Captulo 11: Discos


# Disklabel-w-r da1s2 definio

onde definio o nome da entrada em / Etc / disktab.

Criando sistemas de arquivos


Uma vez que temos uma etiqueta vlida, precisamos criar os sistemas de arquivos. Neste caso, s h
um sistema de arquivos, em / Dev/da1s2h. Felizmente, isso mais fcil:
# Newfs-U / dev/da1s2h
Aviso: tamanho do bloco e bytes por inode restringir cilindros por grupo de 89.
Warning: 420 sector (s) no ltimo cilindro no alocado
/ Dev/da1s2h: 5246556 setores em 1281 cilindros de um faixas, 4.096 setores
2561.8MB em 15 grupos de cil (89 c / g, 178.00MB / g, 21632 E / g)
backups super-bloco (por fsck-b #) em:
32, 364576, 729120, 1093664, 1458208, 1822752, 2187296, 2551840, 2916384,
3280928, 3645472, 4010016, 4374560, 4739104, 5103648

O -U flag diz newfs para habilitar as atualizaes suaves, que ns olhamos na pgina 191.

Montagem dos sistemas de arquivos


Por fim, o trabalho est feito. Bem, quase. Voc ainda precisa montar o sistema de arquivos, e para dizer
o sistema que tem mais swap. Mas isso no um grande problema:
# Mkdir / newhome
# Mount / dev/da1s2h / newhome
# Swapon / dev/da1s2b
# Df
Filesystem 1024-blocks
Usado
/ Dev/ad0s1a 19966
17426
/ Dev/ad0s1e 1162062
955758
procfs 4
4
presto :/ 15823
6734
presto :/ usr 912271
824927
presto :/ home 1905583 1193721
presto :/ S 4065286 3339635
/ Dev/da1s2h 2582220
2
# Pstat-s
Dispositivo 1K-blocks
Usado
/ Dev/ad0s4b 524160
0
/ Dev/da1s2b 524160
0
Total de 1048320
0

certifique-se que temos um diretrio para montar em


e mont-lo
mostrar sua capacidade, sistemas de arquivos montados
Avail Capacity Mounted on
944
95% /
113340
89% / usr
0
100% / proc
8297
45% / presto / root
41730 95% / presto / usr
521303
70% / presto / home
563039
86% / S
2375642
0%
/ Newhome
mostrar a utilizao de swap
Aproveitar Tipo Capacidade
524160
0%
Intercalado
524160
0%
Intercalado
1048320
0%

Isso parece bom, mas quando voc reiniciar o sistema, / Newhome eo swap adicional ser
ter ido embora. Para garantir que eles so montados aps a inicializao, voc precisa adicionar o seguinte
para linhas / Etc / fstab:
/ Dev/da1s2b
/ Dev/da1s2h

nenhum
/ Newhome

disks.mm, v v4.17 (2003/04/02 06:44:17)

trocar
ufs

sw
rw

0
0

0
0

Criando sistemas de arquivos

218

Movendo sistemas de arquivos


Muito freqentemente, voc adicionar um novo disco para um sistema porque os discos existentes ficaram sem
espao. Vamos considerar o disco que voc acabou de adicionar e assumir que, actualmente, os arquivos
/ Home esto fisicamente localizados na / Usr sistema de arquivos, e que / Home um link simblico para
/ Usr / home. Ns queremos mov-los para o novo sistema de arquivos e, em seguida, renome-lo para / home.
Aqui est o que fazer:

Copie os arquivos:
# Cd / home
# Tar cf -. | (Cd / newhome; tar xvf - 2> / var / tmp / tarerrors)

Este escreve as mensagens de erro para o arquivo / Var / tmp / tarerrors. Se voc no fizer isso, qualquer
erros vai se perder.

Verifique / var / tmp / tarerrors e certifique-se de que os arquivos realmente fez para a direita
lugar!

Remova os arquivos antigos:


# Rm-rf / usr / home

Neste caso, / Home era um link simblico, por isso precisamos de remov-lo e criar um
diretrio chamado / Home:
# Rm / home
# Mkdir / home

Voc no precisa fazer isso se / Home j era um diretrio (por exemplo, se voc estiver
movendo-se de um sistema de arquivo completo).

Modificar / Etc / fstab para conter uma linha como:


/ Dev/da1s2h

/ Home

ufs

rw

Desmonte o / Newhome diretrio e mont-lo como / Home:


# Umount / newhome
# Mount / home

Recuperando-se de erros de dados em disco


Discos rgidos modernos so um milagre em evoluo. Hoje voc pode comprar um disco rgido de 200 para
menos de US $ 200, e vai caber no seu bolso da camisa. Trinta anos atrs, um disco tpico era
o tamanho de uma mquina de lavar roupa e armazenados 20 MB. Voc precisaria de 10 mil deles para
loja de 200 GB.

disks.mm, v v4.17 (2003/04/02 06:44:17)

219

Captulo 11: Discos

Ao mesmo tempo, a fiabilidade foi acima, mas os discos esto ainda relativamente pouco fiveis dispositivos.
Voc pode alcanar a mxima fiabilidade, mantendo-legal, mas mais cedo ou mais tarde voc
vai se deparar com algum tipo de problema. Um tipo devido a irregularidades da superfcie: o disco
no pode ler uma parte especfica da superfcie.
Discos modernos tomar providncias para a recuperao de tais erros, atravs da atribuio de um suplente
setor para os dados. Drives IDE fazer isso automaticamente, mas com drives SCSI voc tem a
opo de ativar ou desativar a realocao. Normalmente realocao ativado quando voc
comprar o disco, mas s vezes no . Ao instalar um novo disco, voc deve verificar se
os parmetros ARRE (Auto Read Realocao Ativar) e AWRE (Auto Escrever
Realocao de Habilitao) esto ligados. Por exemplo, para verificar e definir os valores para disco
/ Dev/da1, voc deve digitar:
# CamControl modepage da1-m 1-e

Este comando ir iniciar o seu editor favorito (seja o especificado no EDITOR


varivel de ambiente, ou vi por padro) com os seguintes dados:
AWRE (Auto Write Realocao Enbld): 0
ARRE (Auto Read Realocao Enbld): 0
TB (transferncia Block): 1
EER (Habilitar recuperao rpida): 0
PER (Mensagem de erro): 1
DTE (Desativar Transferncia em caso de erro): 0
DCR (desativar a correo): 0
Leia Retry Count: 41
Escrever Retry Count: 24

Os valores para AWRE e ARRE Ambos devem ser 1. Se eles no so, como no presente caso, em que
AWRE 0, alterar os dados com o editor, escrev-lo de volta, e sair. CamControl escreve o
dados de volta para o disco e permite a opo.
Observe as duas ltimas linhas neste exemplo. Eles do o nmero de tentativas reais de que este
unidade tem realizado. Voc pode redefinir esses valores tambm se quiser, eles sero atualizados se
a unidade realiza quaisquer tentativas adicionais.

disks.mm, v v4.17 (2003/04/02 06:44:17)

Neste captulo:
Objetos Vinum
Criando Vinum
unidades
Comeando Vinum
Configurando Vinum
Configurao Vinum
banco de dados
Instalando o FreeBSD
em Vinum
Recuperando-se de
falhas no disco
Migrando para um Vinum
nova mquina
Coisas que voc no deve
fazer com Vinum

12
O volume Vinum
Gerente

Vinum um Volume Manager, um driver de disco virtual que aborda estas trs questes:

Os discos podem ser muito pequenas.

Os discos podem ser demasiado lento.

Os discos podem ser muito confivel.

Do ponto de vista do usurio, Vinum parece quase exactamente o mesmo que um disco, mas para alm
os discos existe um programa de manuteno.

Objetos Vinum
Vinum implementa uma hierarquia de quatro nveis de objetos:

O objeto mais visvel o disco virtual, chamado de volume. Volumes tm essencialmente


as mesmas propriedades de uma unidade de disco UNIX, embora haja algumas pequenas diferenas.
Eles no tm limitaes de tamanho.

Volumes so compostos de plexos, cada uma das quais representa o espao de endereo total de
um volume. Este nvel na hierarquia, portanto, fornece a redundncia. Pense em como plexos
Discos individuais de uma matriz espelhada, cada um contendo os mesmos dados.

Vinum existir dentro da estrutura de armazenamento de disco da UNIX, de modo que seria possvel usar
Parties UNIX como o bloco de construo para plexes multi-disco, mas na verdade isso acaba

vinum.mm, v v4.19 (2003/04/09 19:56:42)

221

222

Captulo 12: A Vinum Volume Manager

ser demasiado inflexvel: discos UNIX podem ter apenas um nmero limitado de parties.
Em vez disso, Vinum subdivide uma nica partio UNIX (o dirigir) em reas contguas
chamado subdiscos, que ele usa como blocos de construo para plexos.

Subdiscos residir em Vinum unidades, divisrias atualmente UNIX. Unidades Vinum pode
conter qualquer nmero de subdiscos. Com a excepo de uma pequena rea no incio
da unidade, que usada para armazenar a informao de configurao e de estado, a toda
est disponvel para a unidade de armazenamento de dados.

Plexos pode incluir vrios subdiscos distribudos por todas as unidades na configurao Vinum, para
o tamanho de uma unidade individual no limitar o tamanho de um complexo e, portanto, de um volume.

Espao em disco mapeamento para plexos


A forma como os dados so compartilhados entre as unidades tem uma forte influncia sobre o desempenho.
conveniente pensar no armazenamento de disco como um grande nmero de setores de dados que so
enderevel por nmero, um pouco como as pginas de um livro. O mtodo mais bvio
dividir o disco virtual em grupos de sectores consecutivos, o tamanho do indivduo
discos fsicos e armazen-los desta forma, um pouco como a forma como uma grande enciclopdia
dividido em um certo nmero de volumes. Este mtodo chamado concatenao, e s vezes
JBOD (Just a Bunch Of Disks). Ele funciona bem quando o acesso ao disco virtual
espalhar uniformemente sobre seu espao de endereo. Quando o acesso concentrada em uma rea menor, o
melhoria menos acentuada. Figura 12-1 ilustra a seqncia em que as unidades de armazenamento
so alocados em uma organizao concatenada.
Disco 1

Disco 2

Disco 3

Disco 4

0
1
2
3
4
5

6
7
8
9

10
11

12
13
14
15
16
17

Figura 12-1: organizao concatenada


Um mapeamento alternativa dividir o espao de endereo em pequenos, de tamanho igual
componentes, chamado listras, e armazen-los seqencialmente em diferentes dispositivos. Para
exemplo, a primeira faixa de 292 kB podem ser armazenados no disco em primeiro lugar, a faixa seguinte sobre o
disco seguinte e assim por diante. Aps o enchimento do ltimo disco, o processo repete-se at que os discos esto cheios.
Este mapeamento chamado striping ou RAID-0, 1 embora o ltimo termo um pouco
enganador: ele no fornece nenhuma redundncia. Striping requer um pouco mais de esforo para localizar
os dados, e pode causar I / O adicional de carga, onde a transferncia est espalhada por vrias
discos, mas tambm pode proporcionar uma carga mais constante entre os discos. Figura 12-2
1. RAID stands para Matriz Redundante de Discos Baratos e oferece vrias formas de tolerncia a falhas.
vinum.mm, v v4.19 (2003/04/09 19:56:42)

Objetos Vinum

223

ilustra a seqncia em que as unidades de armazenamento so alocadas em uma


organizao listrado.
Disco 1

Disco 2

Disco 3

Disco 4

0
4
8
12
16
20

1
5
9
13
17
21

2
6
10
14
18
22

3
7
11
15
19
23

Figura 12-2: organizao Listrado

A integridade dos dados


Vinum oferece duas formas de armazenamento de dados redundantes que visa sobreviver falha de hardware:
espelhamento, tambm conhecido como RAID nvel 1 e paridade, tambm conhecido como nveis de RAID 2-5.
Mirroring mantm duas ou mais cpias dos dados em hardware fsico diferente. Qualquer
escrever para o volume escreve para ambos os locais, a leitura pode ser satisfeita a partir de qualquer um, por isso, se um
unidade falhar, os dados ainda esto disponveis na outra unidade. Ela tem dois problemas:

O preo. Exige armazenamento em disco o dobro de uma soluo no-redundante.

O impacto no desempenho. Escreve deve ser realizada para ambas as unidades, de modo que eles ocupam
duas vezes a largura de banda de um volume no espelhado. L no sofrem de um
penalidade de desempenho: voc s precisa ler a partir de um dos discos, por isso, em alguns casos,
eles podem mesmo ser mais rpido.

O mais interessante das solues de paridade o nvel de RAID 5, normalmente chamado RAID-5. O
layout do disco semelhante a organizao listrado, exceto que um bloco em cada faixa contm
a paridade dos restantes blocos. A localizao dos blocos de paridade muda a partir de um
listra para o outro para equilibrar a carga sobre as unidades. Se qualquer uma das unidades falhar, o motorista pode
reconstruir os dados com a ajuda das informaes de paridade. Se uma unidade falhar, a matriz
continua a operar em degradante modo: uma leitura a partir de um dos restantes acessveis
unidades continua normalmente, mas um pedido de leitura da unidade no satisfeita por
recalcular o contedo de todas as unidades restantes. Escreve simplesmente ignorar os mortos
dirigir. Quando a unidade for substitudo, Vinum recalcula o contedo e escreve-los de volta
para a nova unidade.
Na figura a seguir, os nmeros nos blocos de dados indicam o bloco relativo
nmeros.

vinum.mm, v v4.19 (2003/04/09 19:56:42)

224

Captulo 12: A Vinum Volume Manager

Disco 1

Disco 2

Disco 3

Disco 4

0
3
6
Paridade
12
15

1
4
Paridade
9
13
16

2
Paridade
7
10
14
Paridade

Paridade
5
8
11
Paridade
17

Figura 12-3: RAID-5 organizao


Comparado com o espelhamento, RAID-5 tem a vantagem de requerer menos espao de armazenamento significativamente
espao. O acesso de leitura semelhante das organizaes listradas, mas o acesso de gravao
significativamente mais lenta, cerca de 25% do desempenho de leitura.
Vinum tambm oferece RAID-4, uma variante mais simples de RAID-5, que armazena todos os blocos de paridade
sobre um disco. Isso faz com que o disco de paridade um gargalo quando se escreve. RAID-4 no oferece nenhuma
vantagens sobre RAID-5, por isso efetivamente intil.

Que organizao complexa?


Cada organizao complexa tem suas vantagens exclusivas:

Plexos concatenados so os mais flexveis: podem conter qualquer nmero de subdiscos,


e os subdiscos pode ser de comprimento diferente. O complexo pode ser prorrogado por adio
subdiscos adicionais. Eles exigem menos tempo de CPU do que plexes listradas ou RAID-5,
embora a diferena de sobrecarga da CPU de plexos listradas no mensurvel. Eles
so o nico tipo de complexo, que pode ser alargado no tamanho sem perda de dados.

A maior vantagem de listras plexos (RAID-0) que eles reduzem os pontos quentes: por
escolher uma faixa de tamanho ideal (entre 256 e 512 kB), voc pode at mesmo fora do
carregar nas unidades que o compem. A desvantagem dessa abordagem a restrio
subdiscos, que devem ser todos do mesmo tamanho. Estendendo um complexo listrado, adicionando novo
subdiscos to complicado que Vinum atualmente no implement-lo. A listrado
complexo deve ter pelo menos dois subdiscos: caso contrrio, indistinguvel de um
concatenado complexo. Alm disso, h uma interao entre a geometria da UFS
e Vinum que torna aconselhvel no ter um tamanho de faixa que uma potncia de 2: isso
o fundo para a meno de uma kB tamanho da faixa 292 no exemplo acima.

RAID-5 plexos so efetivamente uma extenso de plexos listradas. Comparado com listrado
plexos, que oferecem a vantagem de tolerncia a falhas, mas as desvantagens de um pouco
maior custo de armazenamento e desempenho significativamente pior gravao. Como plexos listradas,
RAID-5 plexos deve ter subdiscos de igual tamanho e atualmente no pode ser prorrogado.
Vinum impe um mnimo de trs subdiscos para um RAID-5 complexo: qualquer nmero menor
no faria qualquer sentido.
vinum.mm, v v4.19 (2003/04/09 19:56:42)

Objetos Vinum

225

Vinum tambm oferece RAID-4, embora esta organizao tem algumas desvantagens e no h
vantagens quando comparado ao RAID-5. A nica razo para incluir este recurso
que era uma adio trivial: necessrio apenas duas linhas de cdigo.

A tabela a seguir resume as vantagens e desvantagens de cada complexo


organizao.
Tabela 12-1: Organizaes complexas Vinum

concatenado

Mnimo
Lata
subdiscos adicionar
subdiscos
1
sim

Deve ser
igual
Aplicao
tamanho
no
Armazenamento de dados grande com o mximo de
flexibilidade de posicionamento e moderada
desempenho.

listrado

no

sim

Alta performance em combinao


com acesso altamente concorrente.

RAID-5

no

sim

Armazenamento altamente confivel, principalmente


acesso de leitura.

Tipo Plex

Criao de unidades Vinum


Antes que voc pode fazer qualquer coisa com Vinum, voc precisa reservar espao em disco para ele. Vinum
objetos da unidade so na verdade um tipo especial de partio do disco, do tipo vinum. Ns vimos como
criar parties de disco na pgina 215. Se nesse exemplo quisssemos criar um Vinum
de volume, em vez de uma partio UFS, que teria criado assim:
8 parties:
# Tamanho
compensar
c: 6295133
0
b: 1048576
0
h: 5246557 1048576

fstype
[Fsize bsize bps / cpg]
no usado
0
0 # (Cyl.
trocar
0
0 # (Cyl.
vinum
0
0 # (Cyl.

0-10302)
0-10302)
0-10302)

Comeando Vinum
Vinum vem com a base do sistema como um kld. Ele ser carregado automaticamente quando voc executa
o vinum de comando. possvel construir um kernel especial que inclui Vinum, mas esta
no recomendada: neste caso, no ser capaz de parar Vinum.

vinum.mm, v v4.19 (2003/04/09 19:56:42)

226

Captulo 12: A Vinum Volume Manager

FreeBSD Release 5 inclui um novo mtodo de partida Vinum. Coloque as seguintes linhas no
/ Boot / loader.conf :
vinum_load = "YES"
vinum.autostart = "YES"

A primeira linha instrui o carregador para carregar o Vinum kld, ea segunda diz-lhe para comear
Vinum durante os testes do dispositivo. Vinum ainda suporta o mtodo mais antigo de definir o
varivel start_vinum em / Etc / rc.conf, mas este mtodo pode ir embora em breve.

Configurando Vinum
Vinum mantm uma base de dados de configurao que descreve os objectos conhecidos para uma
sistema individual. Voc pode criar o banco de dados de configurao de um ou mais configurao
arquivos com o auxlio do vinum programa utilitrio. Vinum armazena uma cpia da sua configurao
banco de dados em cada unidade Vinum. Esta base de dados atualizada a cada mudana de estado, de modo que a
reiniciar restaura com preciso o estado de cada objeto Vinum.

O arquivo de configurao
O arquivo de configurao descreve objetos Vinum individuais. Para definir um volume simples,
voc pode criar um arquivo chamado, por exemplo, config1, contendo as seguintes definies:
dirigir um dev/da1s2h dispositivo /
myvol volume de
complexo org concat
sd comprimento 512m rgido de um

Este arquivo descreve quatro objetos Vinum:

O conduzir linha descreve uma partio de disco (drive) e sua localizao em relao
subjacente de hardware. dado o nome simblico a. Esta separao do
nomes simblicos a partir dos nomes de dispositivo permite que os discos a ser movido de um local
para outro, sem confuso.

O volume A linha descreve um volume. O nico atributo necessrio o nome, neste


caso myvol.

O Plex linha define um complexo. O nico parmetro necessrio a organizao, neste


caso concat. Nenhum nome necessrio: o sistema gera automaticamente um nome de
o nome do volume por adio do sufixo . Px, onde x o nmero de identificao do complexo no
volume. Assim, este complexo ser chamado myvol.p0.

O sd linha descreve um subdisco. As especificaes mnimas so o nome de uma unidade


em que armazen-lo, e o comprimento do subdisco. Tal como acontece com plexos, nenhum nome
necessrio: o sistema atribui automaticamente nomes derivados do nome do complexo por
adio do sufixo . Sx, onde x o nmero do subdisco no complexo. Assim Vinum
d a este subdisco o nome myvol.p0.s0
vinum.mm, v v4.19 (2003/04/09 19:56:42)

Configurando Vinum

227

Aps o processamento desse arquivo, vinum (8) produz o seguinte resultado:


Vinum -> criar config1
1 unidades:
D Estado: at

/ Dev/da1s2h

Volumes de 1:
V myvol

Plexos:

1 Tamanho:

512 MB

Subdiscos:

1 Tamanho:

512 MB

1 plexos:
P myvol.p0
1 subdiscos:
S myvol.p0.s0

Estado: at
Estado C: up
Estado: at

A: 3582/4094 MB (87%)

D: um

Tamanho:

512 MB

Este resultado mostra a breve listagem em formato de vinum. Ela representada graficamente em
Figura 12-4.

0 MB

Subdisco
myvol.p0.s0

volume
endereo
espao
512 MB

Plex 1
myvol.p0

Figura 12-4: Um volume Vinum simples


Esta figura, e os que se seguem, representam um volume, o qual contm os plexos,
que por sua vez, contm as subdiscos. Neste exemplo trivial, o volume compreende um plex
e o complexo contm um subdisco.

Criando um sistema de arquivos


Voc pode criar um sistema de arquivos neste volume, da mesma forma como voc faria para um convencional
disco:
# Newfs-U / dev / vinum / myvol
/ Dev / vinum / myvol: 512.0MB (1.048.576 setores) tamanho do bloco 16384, tamanho do fragmento de 2048
com 4 grupos de cilindros de 128.02MB, 8.193 quadras, 16.512 inodes.
backups super-bloco (por fsck-b #) em:
32, 262208, 524384, 786560

vinum.mm, v v4.19 (2003/04/09 19:56:42)

228

Captulo 12: A Vinum Volume Manager

Este volume especial no tem nenhuma vantagem especfica sobre uma partio de disco convencional. Ele
contm um nico complexo, por isso no redundante. O complexo contm um nico subdisco, ento no
h diferena na alocao de armazenamento a partir de uma partio de disco convencional. A seguir
sees ilustrar vrios mtodos de configurao mais interessantes.

Aumento da resilincia: o espelhamento


A resilincia do volume pode ser aumentado ou por espelhamento ou usando RAID-5
plexos. Ao dispor de um volume espelhado, importante assegurar que as subdiscos
cada complexo esto em unidades diferentes, de modo que uma falha no disco no vai derrubar ambos os plexos.
A seguinte configurao espelha um volume:
unidade b device / dev/da2s2h
espelho de volume
complexo org concat
sd comprimento 512m rgido de um
complexo org concat
sd comprimento 512m unidade b

Neste exemplo, que no era necessrio para especificar uma definio de unidade um de novo, porque
Vinum mantm o controle de todos os objetos em seu banco de dados de configurao. Aps o processamento deste
definio, a configurao semelhante a:
2 unidades:
D um
D b

Estado: at
Estado: at

/ Dev/da1s2h
/ Dev/da2s2h

2 volumes:
V myvol
V espelho

Estado: at
Estado: at

Plexos:
Plexos:

3
P
P
P

plexos:
myvol.p0
mirror.p0
mirror.p1

3
S
S
S

subdiscos:
myvol.p0.s0
mirror.p0.s0
mirror.p1.s0

Estado C: up
Estado C: up
C Estado: inicializar
Estado: at
Estado: at
Estado: vazio

A: 3070/4094 MB (74%)
A: 3582/4094 MB (87%)
1 Tamanho:
2 Tamanho:

512 MB
512 MB

Subdiscos: 1 Tamanho: 512 MB


Subdiscos: 1 Tamanho: 512 MB
Subdiscos: 1 Tamanho: 512 MB
D: um
D: um
D: b

Tamanho:
Tamanho:
Tamanho:

512 MB
512 MB
512 MB

A Figura 12-5 mostra graficamente a estrutura.


Neste exemplo, cada plex contm os totais de 512 MB de espao de endereo. Como no anterior
exemplo, cada complexo possui apenas um nico subdisco.
Note o estado de mirror.p1 e mirror.p1.s0: inicializar e vazio respectivamente.
H um problema quando voc cria dois plexos idnticos: para garantir que eles so idnticos,
voc precisa copiar todo o contedo de um complexo para o outro. Este processo chamado
revivendo, e realiz-la com o incio comando:
Vinum -> start mirror.p1
vinum [278]: reviver mirror.p1.s0
Revivendo mirror.p1.s0 no fundo
Vinum -> vinum [278]: mirror.p1.s0 cabe

vinum.mm, v v4.19 (2003/04/09 19:56:42)

Configurando Vinum

229

0 MB

Subdisco 1
mirror.p0.s0

volume

Subdisco 2

endereo
espao

mirror.p1.s0

512 MB

Plex 1

Plex 2

mirror.p0

mirror.p1

Figura 12-5: Um volume Vinum espelhado


Durante o processo de inicializao, voc pode olhar para o estado para ver o quo longe a reviver tem
progrediu:
Vinum -> lista mirror.p1.s0
S mirror.p1.s0
Estado: R 43%

D: b

Tamanho:

512 MB

Revivendo um volume grande pode levar um tempo muito longo. Quando voc cria um volume, o
contedos no esto definidos. Ser que realmente importa se o contedo de cada complexo so diferentes?
Se voc s vai ler o que voc escreveu em primeiro lugar, voc no precisa se preocupar muito.
Neste caso, voc pode usar o setupstate palavra-chave no arquivo de configurao. Vamos ver um
exemplo disto a seguir.

Adicionando plexos para um volume existente


Em algum momento aps a criao de um volume, voc pode decidir adicionar plexes adicionais. Para
exemplo, voc pode querer adicionar um complexo com o volume myvol vimos acima, colocando o seu
subdisco na unidade b. O arquivo de configurao para esta extenso seria parecido com:
Plex nome myvol.p1 org concat volume de myvol
sd tamanho 1g unidade b

Para ver o que aconteceu, use a opo de listagem recursiva -R pela lista comando:
Vinum -> l-r myvol
V myvol
Estado: at plexos: 2
P myvol.p0
Estado C: up
Subdiscos: 1
P myvol.p1
C Estado: inicializar
Subdiscos:
S myvol.p0.s0
Estado: at D: a
S myvol.p1.s0
Estado: vazia D: b

vinum.mm, v v4.19 (2003/04/09 19:56:42)

Tamanho: 1024 MB
Tamanho: 512 MB
1 Tamanho: 1024 MB
Tamanho:
512 MB
Tamanho: 1024

230

Captulo 12: A Vinum Volume Manager

O comando l sinnimo de lista eo -R opo significa recursiva: ela mostra tudo


objetos subordinados. Neste exemplo, plex myvol.p1 1 GB de tamanho, embora myvol.p0
apenas 512 MB de tamanho. Esta discrepncia permitido, mas no muito til por si s:
apenas a primeira metade do volume est protegido contra falhas. Como veremos na prxima
seo, no entanto, este um trampolim til de aumentar o tamanho de um sistema de arquivos.
Note que voc no pode usar o setupstate palavra-chave aqui. Vinum no possvel saber se o
volume existente contm dados vlidos ou no, ento voc obrigao utilizar o comear comando para
sincronizar os plexos.

Adicionando subdiscos de plexos existentes


Aps a adio de um segundo complexo de myvol, tinha um complexo com 512 MB e outro com 1024
MB. Faz sentido ter os mesmos plexos de tamanho, ento a primeira coisa que devemos fazer adicionar um
segundo subdisco ao complexo myvol.p0.
Se voc adicionar subdiscos para listradas, RAID-4 e RAID-5 plexos, voc vai alterar o mapeamento
dos dados para os discos, o que efectivamente destri o contedo. Como resultado, voc deve usar
o -F opo. Quando voc adiciona subdiscos de plexos concatenados, os dados do existente
subdiscos permanece inalterado. No nosso caso, o complexo concatenado, por isso criar e adicionar
o subdisco assim:
nome sd myvol.p0.s1 complexo myvol.p0 tamanho 512m unidade c

Depois de adicionar este subdisco, o volume parecido com este:

0 MB
myvol.p0.s0

volume
endereo

myvol.p0.s1

myvol.p1.s0

espao
1024

Plex 1

Plex 2

myvol.p0

myvol.p1

Figura 12-6: um volume Vinum estendida

vinum.mm, v v4.19 (2003/04/09 19:56:42)

Configurando Vinum

231

Ele no parece muito feliz, no entanto:


Vinum -> l-r myvol
V myvol
Estado: at plexos: 2
P myvol.p0
C Estado: subdiscos corruptos: 2
P myvol.p1
C Estado: inicializar
S myvol.p0.s0
Estado: at D: a
S myvol.p0.s1
Estado: vazia D: c
S myvol.p1.s0
Estado: velho D: b

Subdiscos:

Tamanho: 1024 MB
Tamanho: 1024 MB
1 Tamanho: 1024 MB
Tamanho:
512 MB
Tamanho:
512 MB
Tamanho: 1024

Na verdade, ele est em to boa forma como sempre tem sido. A primeira metade do myvol ainda contm o
sistema de arquivos que colocamos sobre ele, e o mais acessvel do que nunca. O problema aqui que no
nada nos outros dois subdiscos, que so mostradas sombreadas na figura. Vinum no pode
sei que isso aceitvel, mas o que fazemos. Neste caso, usamos alguma manuteno
comandos para definir os estados de objeto correto:
Vinum -> setstate up myvol.p0.s1 myvol.p0
Vinum -> l-r myvol
V myvol
Estado: plexos at:
P myvol.p0
Estado C: up
Subdiscos:
P myvol.p1
Estado C: com defeito
Subdiscos:
S myvol.p0.s0
Estado: at D: a
S myvol.p0.s1
Estado: at D: c
S myvol.p1.s0
Estado: velho D: b
Vinum -> saveconfig

2 Tamanho:
2 Tamanho:
1 Tamanho:
Tamanho:
Tamanho:
Tamanho:

1024
1024
1024
512
512
1024

MB
MB
MB
MB
MB
MB

O comando setstate altera o estado de objetos individuais sem atualizar os de


objetos relacionados. Por exemplo, voc pode us-lo para mudar o estado de um complexo de para cima mesmo que tudo
os subdiscos so para baixo. Se usado incorretamente, pode pode causar corrupo de dados grave.
Ao contrrio dos comandos normais, ele no salvar as alteraes de configurao, para que voc use
saveconfig para isso, depois voc tem certeza que voc tem os estados corretos. Leia a pgina de manual
antes de us-los para qualquer outra finalidade.
Em seguida, voc iniciar o segundo complexo:
Vinum -> start myvol.p1
Revivendo myvol.p1.s0 no fundo
vinum [446]: reviver myvol.p1.s0
Vinum -> vinum [446]: myvol.p1.s0 cabe
l
Trs unidades:
D Estado: at
D b Estado: at
D c Estado: at

/ Dev/da1s2h A: 3582/4094 MB (87%)


/ Dev/da2s2h A: 3070/4094 MB (74%)
/ Dev/da3s2h A: 3582/4094 MB (87%)

Volumes de 1:
V myvol

Plexos:

2 Tamanho:

1024

Subdiscos:
Subdiscos:

2 Tamanho:
1 Tamanho:

1024
1024

Dois plexos:
P myvol.p0
P myvol.p1
3
S
S
S

subdiscos:
myvol.p0.s0
myvol.p1.s0
myvol.p0.s1

Estado: at
Estado C: up
Estado C: up
Estado: at
Estado: at
Estado: at

vinum.mm, v v4.19 (2003/04/09 19:56:42)

algum tempo depois


para o prompt de comando anterior

D: um
D: b
D: c

Tamanho:
Tamanho:
Tamanho:

512 MB
1024
512 MB

232

Captulo 12: A Vinum Volume Manager

A mensagem dizendo que myvol.p1.s0 se vem aps o alerta, para que a prxima
comando no tem um prompt. Neste ponto, voc tem um totalmente espelhado, funcional
de volume, 1 GB de tamanho. Agora, se voc olhar para o contedo, no entanto, que voc v:
# Df / mnt
Filesystem 1048576-blocos Capacidade Disponvel Usado Montado em
/ Dev / vinum / myvol 503
1 461
0%
/ Mnt

O volume agora 1 GB de tamanho, mas o sistema de arquivos no volume ainda de apenas 512 MB.
Para expandi-lo, use growfs:
# Umount / mnt
# Growfs / dev / vinum / myvol
Ns recomendamos fortemente que voc faa um backup antes de crescer o Sistema de Arquivos
Ser que voc faa backup de seus dados (Sim / No)? Sim
systemsize novo arquivo : 524288 frags
Aviso: 261920 setor (s) no pode ser alocado.
growfs: 896.1MB (1.835.232 setores) Tamanho de bloco 16384, tamanho do fragmento de 2048
usando sete grupos de cilindros de 128.02MB, 8.193 quadras, 16.512 inodes.
backups super-bloco (por fsck-b #) em:
1048736, 1310912, 1573088
# Mount / dev / vinum / myvol / mnt
# Df / mnt
Filesystem 1048576-blocos Capacidade Disponvel Usado Montado em
/ Dev / vinum / myvol 881
1 809
0%
/ Mnt

Otimizar o desempenho
Os volumes espelhados no exemplo anterior so mais resistentes a falhas do que
volumes no espelhado, mas seu desempenho menor: cada gravao para o volume requer um
escrever para ambas as unidades, utilizando-se uma maior proporo da largura de banda total do disco.
Consideraes sobre o desempenho exigem uma abordagem diferente: ao invs de espelhamento, os dados so
distribudos em tantas unidades de disco possvel. A configurao a seguir mostra uma
volume com um complexo distribudos em quatro unidades de disco:
unidade de dispositivo / dev/da3s2h c
conduzir d device / dev/da4s2h
volume stripe
complexo org 480k listrado
sd comprimento unidade de 128m
sd comprimento 128m unidade b
sd comprimento 128m unidade c
sd comprimento 128m unidade d

Ao criar plexos listradas para o sistema de arquivos UFS, verifique se o tamanho do bloco uma
mltipla do sistema de tamanho de bloco (normalmente 16 kB), mas no uma potncia de 2. UFS
freqentemente atribui grupos de cilindros com comprimentos que so uma potncia de 2, e se voc alocar
listras, que tambm so uma potncia de 2, voc pode acabar com todos os inodes na mesma unidade,
que afetaria significativamente o desempenho em algumas circunstncias. Os arquivos so
alocados em blocos, de modo que tem um tamanho de distribuio que no um mltiplo do tamanho do bloco pode
causar fragmentao significativa de pedidos e conseqente queda no desempenho de I / O. Ver
a pgina de manual para mais detalhes.
vinum.mm, v v4.19 (2003/04/09 19:56:42)

Configurando Vinum

233

Vinum requer que um complexo listrado tem um nmero inteiro de listras. Voc no tem que
calcular o tamanho exactamente, embora: se o tamanho do complexo no um mltiplo do tamanho do bloco,
Guarnies Vinum fora da faixa parcial restante e imprime uma mensagem de console:
vinum: remoo 256 blocos de faixa parcial no final do stripe.p0

Como antes, no necessrio para definir as unidades que so j conhecidos para Vinum. Depois
processar esta definio, a configurao semelhante a:
4
D
D
D
D

unidades:
um
b
c
d

Estado:
Estado:
Estado:
Estado:

3
V
V
V

volumes:
myvol
espelho
tira

Estado: at
Estado: at
Estado: at

5 plexos:
P myvol.p0
P mirror.p0

C Estado:
C Estado:

P mirror.p1
P myvol.p1
P stripe.p0

C Estado:
C Estado:
S Estado:

8
S
S
S
S
S
S
S
S
S

subdiscos:
myvol.p0.s0
mirror.p0.s0
mirror.p1.s0
myvol.p1.s0
myvol.p0.s1
stripe.p0.s0
stripe.p0.s1
stripe.p0.s2
stripe.p0.s3

Estado:
Estado:
Estado:
Estado:
Estado:
Estado:
Estado:
Estado:
Estado:

para
cima
para
cima
para
cima
para
cima

para
cima
para
cima
inicializar
para
cima
para
cima
para
cima
para
cima
vazio
para
cima
para
cima
para
cima
para
cima
para
cima
para
cima

/
/
/
/

Dev/da1s2h
Dev/da2s2h
Dev/da3s2h
Dev/da4s2h

A:
A:
A:
A:

2942/4094
2430/4094
3966/4094
3966/4094

MB
MB
MB
MB

(71%)
(59%)
(96%)
(96%)

Plexos:
Plexos:
Plexos:

2 Tamanho:
2 Tamanho:
1 Tamanho:

1024
512 MB
511 MB

Subdiscos:
Subdiscos:

1 Tamanho:
1 Tamanho:

512 MB
512 MB

subdiscos:
Subdiscos:
Subdiscos:

D:
D:
D:
D:
D:
D:
D:
D:
D:

um
um
b
b
c
um
b
c
d

1 Tamanho:
512 MB
1 Tamanho:
1024
4 Tamanho:
511 MB

Tamanho:
Tamanho:
Tamanho:
Tamanho:
Tamanho:
Tamanho:
Tamanho:
Tamanho:
Tamanho:

512
512
512
1024
512
127
127
127
127

MB
MB
MB
MB
MB
MB
MB
MB
MB

Este volume representado na Figura 12-7. O escurecimento das linhas indica o


posio dentro do espao de endereamento complexo: as listras mais claras vm em primeiro lugar, o mais escuro passado.

Resilincia e desempenho
Com hardware suficiente, possvel construir os volumes que mostram tanto aumentada
resilincia e maior desempenho em comparao com parties UNIX padro. Espelhado
discos de sempre dar um melhor desempenho do que o RAID-5, para um arquivo de configurao tpica
poderia ser:
unidade e dispositivo / dev/da5s2h
unidade de dispositivo f / dev/da6s2h
unidade g dispositivo / dev/da7s2h
unidade h dev/da8s2h dispositivo /
conduzir i dev/da9s2h dispositivo /
unidade j dispositivo / dev/da10s2h
volume de RAID10 setupstate
complexo org 480k listrado
sd comprimento unidade 102480k um
sd comprimento 102480k unidade b
vinum.mm, v v4.19 (2003/04/09 19:56:42)

234

Captulo 12: A Vinum Volume Manager

stripe.p0.s0
stripe.p0.s1
stripe.p0.s2
stripe.p0.s3

Plex 1
stripe.p0

Figura 12-7: Um volume Vinum listrado


sd
sd
sd
Plex
sd
sd
sd
sd
sd

comprimento unidade 102480k


comprimento unidade 102480k
comprimento unidade 102480k
480k org listradas
comprimento unidade 102480k
comprimento unidade 102480k
comprimento unidade 102480k
comprimento unidade 102480k
comprimento unidade 102480k

c
d
e
f
g
h
Eu
j

Neste exemplo, ns adicionamos mais cinco discos para o segundo complexo, de modo que o volume
distribudos em dez eixos. Temos tambm utilizado o setupstate palavra-chave de modo a que todos
componentes vm para cima. O volume parecido com este:
Vinum -> l-r RAID10
V RAID10
Estado: at
P raid10.p0
Estado S: up
P raid10.p1
Estado S: up
S raid10.p0.s0
Estado: at
S raid10.p0.s1
Estado: at
S raid10.p0.s2
Estado: at
S raid10.p0.s3
Estado: at
S raid10.p0.s4
Estado: at
S raid10.p1.s0
Estado: at
S raid10.p1.s1
Estado: at
S raid10.p1.s2
Estado: at
S raid10.p1.s3
Estado: at
S raid10.p1.s4
Estado: at

Plexos:
Subdiscos:
Subdiscos:
D: um
D: b
D: c
D: d
D: e
D: f
D: g
D: h
D: i
D: j

2 Tamanho:
5 Tamanho:
5 Tamanho:
Tamanho:
Tamanho:
Tamanho:
Tamanho:
Tamanho:
Tamanho:
Tamanho:
Tamanho:
Tamanho:
Tamanho:

499
499
499
9
9
9
9
9
9
9
9
9
9

MB
MB
MB
MB
MB
MB
MB
MB
MB
MB
MB
MB
MB

Isto pressupe a disponibilidade de dez discos. No essencial ter todos os componentes em


discos diferentes. Voc poderia colocar os subdiscos do segundo complexo nas mesmas unidades como a
subdiscos do primeiro complexo. Se voc fizer isso, voc deve colocar subdiscos correspondentes em
diferentes unidades:

vinum.mm, v v4.19 (2003/04/09 19:56:42)

Configurando Vinum
Plex
sd
sd
sd
sd
sd
Plex
sd
sd
sd
sd
sd

235

480k org listradas


comprimento unidade 102480k
um
comprimento unidade 102480k
b
comprimento unidade 102480k
c
comprimento unidade 102480k
d
comprimento unidade 102480k
e
480k org listradas
c
comprimento unidade 102480k
comprimento unidade 102480k
d
comprimento unidade 102480k
e
comprimento unidade 102480k
um
comprimento unidade 102480k
b

Os subdiscos do segundo complexo so compensadas por duas unidades das do primeiro complexo: isto
ajuda a garantir que a falha de uma unidade no causar a mesma parte de ambos os plexos de
tornar-se inacessvel, o que destruiria o sistema de arquivos.
Figura 12-8 representa a estrutura deste volume.

. P0.s0

. P1.s0

. P0.s1

. P1.s1

. P0.s2

. P1.s2

. P0.s3

. P1.s3

. P0.s4

. P1.s4

Plex 1

Plex 2

raid10.p0

raid10.p1

Figura 12-8: A espelhado, o volume Vinum listrado

Banco de dados de configurao Vinum


Vinum armazena informaes de configurao em cada unidade essencialmente da mesma forma como em
os arquivos de configurao. Voc pode exibi-lo com o dumpconfig de comando. Ao ler
a partir da base de dados de configurao, o Vinum reconhece um certo nmero de palavras-chave que no so
permitidos nos arquivos de configurao, pois poderia comprometer a integridade dos dados. Para
exemplo, aps a adio do segundo complexo de myvol, a configurao do disco deve conter o
o seguinte texto:
vinum.mm, v v4.19 (2003/04/09 19:56:42)

236

Captulo 12: A Vinum Volume Manager

Vinum -> dumpconfig


Dirija um:
Dispositivo / dev/da1s2h
Criado em bumble.example.org a ter 26 nov 2002 14:35:12
Configurao ltima actualizao ter 26 nov 2002 16:12:35
Tamanho: 4293563904 4094 bytes (MB)
volume de Estado myvol up
Plex nome myvol.p0 estado up org concat vol myvol
Plex nome myvol.p1 estado up org concat vol myvol
sd nome myvol.p0.s0 rgido de um complexo myvol.p0 len 1048576s driveoffset estado 265s se ple
xoffset 0s
sd nome myvol.p1.s0 unidade b complexo myvol.p1 len 2097152s driveoffset estado 265s se ple
xoffset 0s
sd nome myvol.p0.s1 unidade c complexo myvol.p0 len 1048576s driveoffset estado 265s se ple
xoffset 1048576s
Drive / dev/da1s2h: 4094 MB (4293563904 bytes)
Unidade b:

Dispositivo / dev/da2s2h
Criado em bumble.example.org a ter 26 nov 2002 14:35:27
Configurao ltima actualizao ter 26 nov 2002 16:12:35
Tamanho: 4293563904 4094 bytes (MB)
volume de Estado myvol up
Plex nome myvol.p0 estado up org concat vol myvol
Plex nome myvol.p1 estado up org concat vol myvol
sd nome myvol.p0.s0 rgido de um complexo myvol.p0 len 1048576s driveoffset estado 265s se ple
xoffset 0s
sd nome myvol.p1.s0 unidade b complexo myvol.p1 len 2097152s driveoffset estado 265s se ple
xoffset 0s
sd nome myvol.p0.s1 unidade c complexo myvol.p0 len 1048576s driveoffset estado 265s se ple
xoffset 1048576s

As diferenas bvias aqui so a presena de informaes sobre a localizao explcita e nomeando


(Ambos os quais tambm so permitidos, mas desencorajado, para utilizao pelo utilizador), e as informaes
nos estados (que no esto disponveis para o usurio). Vinum no armazena informaes
sobre as unidades de informaes de configurao: ele encontra as unidades, verificando o
unidades de disco configurado para parties com uma etiqueta Vinum. Isto permite identificar o Vinum
unidades corretamente, mesmo que tenham sido atribudos diferentes IDs unidade UNIX.
Quando voc comear com a Vinum vinum start comando, Vinum l a configurao
banco de dados a partir de uma das unidades Vinum. Sob circunstncias normais, cada unidade contm
uma cpia idntica do banco de dados de configurao, por isso no importa que carro lido.
Depois de um acidente, no entanto, Vinum deve determinar qual a unidade foi atualizado mais recentemente
e ler a configurao a partir desta unidade. Em seguida, ele actualiza a configurao, se necessrio,
a partir de unidades progressivamente mais velhas.

Instalando FreeBSD em Vinum


Instalando FreeBSD em Vinum complicada pelo fato de que sysinstall eo carregador
no suportam Vinum, por isso no possvel instalar diretamente em um volume Vinum. Em vez disso,
voc precisa instalar um sistema convencional e, em seguida, convert-lo para Vinum. Isso no to
difcil como pode parecer.

vinum.mm, v v4.19 (2003/04/09 19:56:42)

Instalando FreeBSD em Vinum

237

Uma instalao tpica do disco define parties de disco da seguinte maneira:


da0s3a: / sistema de
arquivos
da0s3b: troca
da0s3e: / usr sistema de

disco inteiro: da0s3c

arquivos
da0s3f: / var sistema de
arquivos

Figura 12-9: layout de partio tpica sem Vinum


Este esquema mostra trs parties do sistema de arquivos e uma partio swap, que no o
o layout recomendado na pgina 68. Ns vamos olhar para as razes para esta abaixo.
Cada partio corresponde logicamente a um subdisco Vinum. Voc poderia incluir todos estes
subdiscos em uma unidade Vinum. O nico problema que Vinum armazena sua configurao
informaes no incio do disco, e a que o sistema de arquivos raiz . Um
maneira de resolver este problema colocar a partio swap antes de torn-lo 265 setores mais
do que o necessrio. Voc pode fazer isso a partir de sysinstall simplesmente criando a partio swap
antes de qualquer outra partio. Considere a instalao de FreeBSD em uma unidade de 4 GB. Criar, em
seqncia, uma partio swap de 256 MB, um sistema de 256 MB de arquivos raiz, uma / Usr sistema de arquivo
2 GB, e um / Var sistema de arquivos para pegar o resto. importante criar o swap
partio no incio do disco, de modo a criar o primeiro. Depois da instalao, a sada
de disklabel parecido com este:
8 parties:
# Tamanho
compensar
a: 524288 532480
b: 532,215
265
c: 8386733
0
e: 4194304 1056768
f: 3135661 5251072

fstype
[Fsize bsize bps / cpg]
4.2BSD
2048 16384 94
# (* Cyl. 871 - 1729 *)
trocar
# (Cyl.
0 * - 871 *)
no usado
0
0 # (Cyl. 0-13726 *)
4.2BSD
2048 16384 89
# (Cyl. 1729 * - 8594 *)
4.2BSD
2048 16384 89
# (Cyl. 8594 * - * 13726)

Para converter a Vinum, use disklabel com a -E Opo (rtulo de edio) para criar um volume de
tipo vinum que mapeia o c partio:
h: 8386733

vinum

vinum.mm, v v4.19 (2003/04/09 19:56:42)

# (Cyl.

0-13726 *)

238

Captulo 12: A Vinum Volume Manager

Depois disso, voc tem a seguinte situao:


da0s3b: troca
da0s3a: / sistema de
arquivos
da0s3e: / usr sistema de

disco inteiro: da0s3c

da0s3h: vinum unidade

arquivos
da0s3f: / var sistema de
arquivos

Figura 12-10: layout de partio com Vinum


A rea sombreada na parte superior da partio Vinum representa a configurao
informao, que corta a partio swap. Para corrigir isso, vamos redefinir a troca
partio para iniciar aps as informaes de configurao Vinum e ser 265 setores menores.
Os sistemas de arquivos so relativamente trivial para recriar: ter o tamanho e valores de deslocamento do
disklabel sada acima e us-los em um arquivo de configurao Vinum:
conduzir rootdev dispositivo / dev/da0s2h
troca de volume
complexo org concat
# B:
532215
265
trocar
sd len 532215s driveoffset 265s unidade rootdev
raiz do volume
complexo org concat
# A:
524288
532480
4.2BSD 2048 16384
sd len 524288s driveoffset 532480s unidade rootdev
usr volume de
complexo org concat
# E:
4194304
1056768
4.2BSD 2048 16384
sd len 4194304s driveoffset 1056768s unidade rootdev
var o volume
complexo org concat
# F:
3135661
5251072
4.2BSD 2048 16384
sd len 3135661s driveoffset 5251072s unidade rootdev

94

89

89

Os comentrios so as linhas correspondentes do disklabel sada. Eles mostram a


valores correspondentes para o tamanho e offset. Correr vinum create contra esse arquivo, e confirme
que voc tem os volumes /, / Usr e / Var.
Em seguida, verifique se voc est pronto para iniciar Vinum com o novo mtodo. Voc deve ter
as seguintes linhas no / Boot / loader.conf :
vinum_load = "YES"
vinum.autostart = "YES"

Em seguida, reinicie para o modo single-user, comece Vinum e executar fsck contra os volumes, com o
-N opo para contar fsck no para corrigir eventuais erros que encontra. Voc deve ver algo como
isto:
vinum.mm, v v4.19 (2003/04/09 19:56:42)

Instalando FreeBSD em Vinum

239

# Fsck-n-t ufs / dev / vinum / usr


** / Dev / vinum / usr (sem escrita)
** ltima montado em / usr
** Fase 1 - Verificar Blocks e tamanhos
** Fase 2 - Confira Pathnames
** Fase 3 - Verifique a conectividade
** Fase 4 - Verifique contagens de referncia
** Fase 5 - Confira os grupos Cyl
35.323 matrculas, 314.115 usados, 718.036 livres (4132 frags, 89.238 blocos, a fragmentao 0,4%)

Se houver erros, eles sero provavelmente porque voc calculou mal o tamanho ou
offset. Voc ver algo parecido com isto:
# Fsck-n-t ufs / dev / vinum / usr
** / Dev / vinum / usr (sem escrita)
No foi possvel encontrar o superbloco do sistema de arquivos
/ Dev / vinum / usr: no consigo descobrir o arquivo de sistema PARTITION

Voc precisa fazer isso em modo de usurio nico, porque os volumes so sombreamento sistemas de arquivos,
e normal para sistemas de arquivos abertos a falhar fsck, j que alguns do estado no cache do buffer.
Se tudo estiver bem, remontar o sistema de arquivos raiz de leitura e escrita:
# Mount-u /

Em seguida, edite / Etc / fstab para apontar para os novos dispositivos. Para este exemplo, / Etc / fstab poder
inicialmente conter:
# $ Id: fstab, v 1.3 2002/11/14 06:48:16
# Dispositivo
Mountpoint
/ Dev/da0s4a /
/ Dev/da0s4b nenhum
/ Dev/da0s4e / usr
/ Dev/da0s4f / var

grog Exp
Fstype
ufs
trocar
ufs
ufs

$
Opes
rw
sw
rw
rw

Despejar
1
0
1
1

Passe #
1
0
1
1

grog Exp
Fstype
trocar
ufs
ufs
ufs

$
Opes
sw
rw
rw
rw

Despejar
0
1
1
1

Passe #
0
1
1
1

Mud-lo para refletir os volumes Vinum:


# $ Id: fstab, v 1.3 2002/11/14 06:48:16
# Dispositivo
Mountpoint
/ Dev / vinum / swap nenhum
/ Dev / vinum / root /
/ Dev / vinum / usr / usr
/ Dev / vinum / var / var

Em seguida, reiniciar novamente para montar o sistema de arquivos raiz de / Dev / vinum / root. Voc tambm pode
opcionalmente, remover todas as parties UFS exceto a partio raiz. O carregador no
saber sobre o Vinum, por isso deve iniciar a partir da partio UFS.
Depois de ter chegado a esta fase, voc pode adicionar plexes adicionais aos volumes, ou voc
pode estender os plexos (e, portanto, o tamanho do sistema de arquivos), adicionando subdiscos
plexos, como discutido na pgina 229.

vinum.mm, v v4.19 (2003/04/09 19:56:42)

240

Captulo 12: A Vinum Volume Manager

Recuperando-se de falhas no disco


Um dos propsitos do Vinum para ser capaz de recuperar de problemas de hardware. Se voc
ter escolhido uma configurao de armazenamento redundante, a falha de um nico componente no
parar o volume de trabalho. Em muitos casos, possvel substituir os componentes sem
tempo de inatividade.
Se uma unidade falhar, execute os seguintes passos:
1. Substitua a unidade fsica.
2. Partio a nova unidade. Algumas restries se aplicam:

Se voc tem hot-conectado a unidade, ela deve ter o mesmo ID, o drive Vinum
devem estar na mesma partio, e deve ter o mesmo tamanho.

Se voc teve que parar o sistema para substituir a unidade, a unidade antiga no ser
associado a um nome de dispositivo, e voc pode coloc-lo em qualquer lugar. Criar um Vinum
partio que pelo menos grande o suficiente para tomar todas as subdiscos em seu formato original
posies sobre a unidade. Vinum atualmente no tem espao livre compacto quando
substituio de uma unidade. Uma maneira fcil de garantir isso fazer com que a nova unidade, pelo menos,
grande como a unidade antiga.
Se voc quer ter essa liberdade com uma unidade hot-pluggable, voc deve parar Vinum
e reinici-lo.

3. Se voc tiver reiniciado Vinum, criar uma nova unidade. Por exemplo, se a substituio
conduzir data3 sobre a diviso fsica / Dev/da3s1h, criar um arquivo de configurao, digamos
configfile, com a nica linha
conduzir data3 dispositivo / dev/da3s1h

Em seguida, digite:
# Vinum criar configfile

4. Inicie os plexos que estavam para baixo. Por exemplo, a lista vinum poder exibir:
Vinum - test> l-r
V teste
P test.p0
P test.p1
S test.p0.s0
S test.p1.s0

Estado: at
Estado C: up
Estado C: com defeito
Estado: at
Estado: obsoleto

Plexos: 2
Subdiscos: 1
Subdiscos: 1
PO:
PO:

Vinum -> start test.p1.s0


Revivendo test.p1.s0 em segundo plano
Vinum -> vinum [295]: reviver test.p1.s0
(Algum tempo depois)
vinum [295]: test.p1.s0 cabe

0B
0B

Tamanho:
Tamanho:
Tamanho:
Tamanho:
Tamanho:

30
30
30
30
30

MB
MB
MB
MB
MB

esta mensagem exibida aps o prompt

vinum.mm, v v4.19 (2003/04/09 19:56:42)

Recuperando-se de falhas no disco

241

Disco de inicializao falhou


Se voc estiver executando o seu sistema de arquivos raiz em um volume Vinum, voc pode sobreviver a falha de
o volume de arranque, se for espelhado com pelo menos dois plexos concatenados contendo cada
apenas um subdisco. Em circunstncias normais, voc pode continuar a correr como se nada
tinha acontecido, mas, obviamente, voc no ser mais capaz de reiniciar a partir desse disco. Em vez disso,
inicializar a partir de outro disco.
O sistema de arquivos raiz tambm tem divisrias individuais UFS, ento voc tem uma escolha do que voc
montar. Por exemplo, se o seu sistema de arquivos raiz tem parties UFS / Dev/da0s4a e
/ Dev/da1s4a, voc pode montar uma dessas parties ou / dev / vinum / root. Nunca monte
mais de um deles, caso contrrio voc pode causar corrupo de dados.
Uma forma ainda mais insidioso e corromper seu sistema de arquivos raiz montar / Dev/da0s4a ou
/ Dev/da1s4a e modific-lo. Neste caso, as duas divisrias j no so as mesmas, mas
no h nenhuma maneira para Vinum para saber isso. Se isso acontecer, voc obrigao marcar o outro subdisco
como colidiu com o vinum parada de comando.

Migrando Vinum para uma nova mquina


s vezes, voc pode querer mover um conjunto de discos Vinum para a FreeBSD diferente
mquina. Isto simples, desde que no existem conflitos de nome entre os objectos em
os discos Vinum e quaisquer outros objectos Vinum voc j pode ter no sistema.
Basta conectar os discos e comear a Vinum. Voc no precisa colocar os discos em todo o
determinado local, e voc no precisa correr vinum create: lojas Vinum o
configurao nas prprias unidades, e quando ele comea, ele localiza-lo adequadamente.

Coisas que voc no deve fazer com Vinum


O vinum comando oferece um grande nmero de subcomandos destinado especfico
propsitos. fcil abusar deles. Aqui esto algumas coisas que voc no deve fazer:

No utilize o ResetConfig comando, a menos que voc realmente no quer ver nenhum de
sua configurao novamente. Existem outras alternativas, tais como o rm, que remove
objetos individuais ou grupos de objetos.

No re-executar o criar comando para objetos que j existem. Vinum j


sabe sobre eles, ea comear comando deve encontr-los.

No nomear seus discos aps o dispositivo de disco em que esto localizados. O


propsito de ter nomes de unidade deve ser independente do dispositivo. Por exemplo, se voc tem
duas unidades um e b, e eles encontram-se em dispositivos / dev/da1s1h e / Dev/da2s1h
respectivamente, voc pode remover as unidades, troque suas localizaes e reiniciar Vinum.
Vinum ainda ir localizar corretamente os drives. Se voc tivesse chamado os discos da1 e da2,
Voc, ento, ver algo confuso como este:

vinum.mm, v v4.19 (2003/04/09 19:56:42)

242

Captulo 12: A Vinum Volume Manager


2 unidades:
D da2
D da1

Estado: at
Estado: at

/ Dev/da1s1h
/ Dev/da1s2h

A: 3582/4094 MB (87%)
A: 3582/4094 MB (87%)

Este no claramente til.

No coloque mais de uma unidade em um disco fsico. Cada unidade contm duas cpias de
a configurao Vinum, e tanto a atualizao da configurao e comear Vinum
diminuir como resultado. Se voc quer mais do que um sistema de arquivos para ocupar espao em um
unidade fsica, criar subdiscos, no dirige.

vinum.mm, v v4.19 (2003/04/09 19:56:42)

Neste captulo:
Criao de um
Imagem ISO-9660
Gravar o CD-R
Cpia de CD-ROMs

13
Gravao de CD-Rs

No FreeBSD, os dados armazenados nos discos rgidos convencionais, armazenado na UNIX File System ou
UFS formato. CD-ROM e CD-Rs usar um sistema de arquivos diferente, o ISO 9660 formato,
que seja compatvel com outros sistemas. Isto no um problema quando se montar um CDROM: FreeBSD inclui somente leitura do sistema de arquivos ISO 9660. Quando voc quiser escrever um
CD-R, no entanto, as coisas so um pouco mais complicado: o meio requer que voc escreva
o sistema de arquivo inteiro de uma vez, e uma vez que o sistema de arquivos armazenado em um formato diferente, voc
no pode simplesmente copiar o sistema de arquivos UFS. Em vez disso, voc deve primeiro criar uma imagem do arquivo
sistema que voc deseja colocar no CD-R, e depois copi-lo. Ns vamos olhar para estes passos
em maior detalhe abaixo.

Criando uma imagem ISO-9660


O primeiro passo o de criar o ISO 9660 imagem do sistema de arquivos, muitas vezes chamado simplesmente de uma ISO
imagem. H um nmero de portas disponveis na coleo de ports, aqui veremos
mkisofs, que faz parte do cdrtools port. A instalao no to simples como
voc poderia esperar: voc precisa de uma bandeira especial para instalar mkisofs:
# Cd / usr / ports / sysutils / cdrtools
# Make install-DMKISOFS

mkisofs tem um nmero de parmetros desconcertante. Aqui esto os mais importantes:

O -A opo especifica o aplicao ID, um texto escrito para o cabealho da


sistema de arquivos para descrever a aplicao'''' na imagem. Ele pode ser de at 128 caracteres
longa.

burncd.mm, v V4.13 (2003/04/02 06:46:59)

243

Criando uma imagem ISO-9660

244

Usar -B se voc quer ser capaz de inicializar a partir do CD, como um CD de boot do FreeBSD.
No caso do FreeBSD, use a imagem 2.88 MB disquetes / boot.flp o qual construdo como
parte do processo de liberao. Note que este arquivo obrigao estar em um dos diretrios
includo na imagem, eo nome relativo ao diretrio raiz do CD.

O -F opo diz mkisofs para seguir links simblicos. Se voc no especificar esta opo
e voc tem os links simblicos no diretrio a partir do qual voc cria a imagem, a
imagem de CD-ROM resultante ir conter apenas um link simblico em vez do arquivo em si.
Se o arquivo para o qual o link simblico aponta abaixo do nvel superior (raiz) do diretrio, esta
a melhor maneira de fazer as coisas, porque economiza espao, mas se ele aponta fora do
CD-ROM, o arquivo no aparecer no CD-ROM em tudo. Use esta opo se voc tiver
links simblicos para arquivos fora do diretrio que voc est usando para a raiz do CDSistema de arquivos ROM.

O -J opo faz com que o CD compatvel com Microsoft da Joliet formato. Voc no
precisam para FreeBSD, mas no custa muito, por isso uma boa idia para inclu-lo se
h uma chance de que o CD vai ser usado em um ambiente Microsoft.

Use o -O opo para especificar o nome da imagem ISO resultante. Esta imagem o
tamanho do CD resultante, por isso poderia ser de at 700 MB.

O -P opo especifica o ID preparador, outro campo de cabealho ISO 9660 para especificar
quem fez o CD-ROM.

O -R opo especifica o Rock Ridge Extensions que so usados para armazenar arquivo UNIX
nomes. Ele faz uma srie de suposies sobre as permisses e proprietrios, ver o
pgina de manual para mais detalhes. Ele leva sem parmetros.

O -T opo diz mkisofs para incluir um arquivo de traduo TRANS.TBL em cada diretrio
para uso por sistemas que no suportam as extenses Rock Ridge. Para cada nome de arquivo
no diretrio, TRANS.TBL contm um nome compatvel Microsoft (at oito
caracteres, um ponto (.) e at mais trs caracteres). Os nomes tm uma ligeira
semelhana com os nomes originais.

Se voc no gosta do nome TRANS.TBL, voc pode especificar um nome diferente com o
-Table-name opo, o que implica -T. Por exemplo, se voc escrever-table-name
. MAP voc ir gerar nomes que no vai aparecer com uma normalidade ls de comando.

O -V opo especifica o ID de volume para o sistema de arquivos. Este ser normalmente


mais especfico do que a ID da aplicao, por exemplo, cada CD em um conjunto de CDs pode
tm o mesmo ID do aplicativo e uma ID de volume diferente.

Os parmetros finais so os nomes dos diretrios que sero includos no


imagem. Voc pode especificar vrios diretrios. Em cada caso, todo o diretrio
hierarquia sero includos.

burncd.mm, v V4.13 (2003/04/02 06:46:59)

245

Captulo 13: Escrevendo CD-Rs

Isso um monte de coisas para escrever em todos os tempos. mais fcil escrever um Makefile e usar fazer:
APPLID =
"Aplicativo fictcio"
Boot =
# Para torn-lo inicializvel, coloque algo como isto:
# Note-se que a-b opo existe assim
# Boot =
"-B disquetes / boot.flp"
ISO =
/ Var / tmp / isoimage
PREPARADOR =
"Me"
Volid =
"Volume 0000"
DIR =
.
cdrom:
mkisofs-A APPLID $ {} $ {BOOT}-J-o $ {ISO}-f \
-P $ {} PREPARADOR-r-T-V volid $ {} $ {DIR}

Por exemplo, para fazer um CD-R da liberao FreeBSD, voc deve primeiro realizar
o tornar o mundo e fazer lanamento. Assumindo que o diretrio de liberao / home / release,
voc vai encontrar as rvores de diretrio para o primeiro de dois CD-ROMs em / Home/release/R/cdrom/disc1 e / Home/release/R/cdrom/disc2. Voc pode fazer isso:
# Make cdrom DIR = / home/release/R/cdrom/disc1
mkisofs-A "aplicao Manequim"-J-o .. / iso-table-name. MAP-p "Greg Lehey"-r-T
-V "Volume 0000".
6,40% feito, estimar acabamento Sun 27 agosto 2000 13:34:54
12,79% feito, estimar acabamento Sun 27 agosto 2000 13:35:02
19,19% feito, estimar acabamento Sun 27 agosto 2000 13:35:05
25,57% feito, estimar acabamento Sun 27 agosto 2000 13:35:10
31,97% feito, estimar acabamento Sun 27 agosto 2000 13:35:10
38,36% feito, estimar acabamento Sun 27 agosto 2000 13:35:10
44,75% feito, estimar acabamento Sun Aug 27 13:35:10 2000
51,15% feito, estimar acabamento Sun 27 agosto 2000 13:35:12
57,54% feito, estimar acabamento Sun 27 agosto 2000 13:35:12
63,94% feito, estimar acabamento Sun 27 agosto 2000 13:35:12
70,34% feito, estimar acabamento Sun 27 agosto 2000 13:35:11
76,72% feito, estimar acabamento Sun 27 agosto 2000 13:35:13
83,12% feito, estimar acabamento Sun Aug 27 13:35:12 2000
89,52% feito, estimar acabamento Sun Aug 27 13:35:13 2000
95,90% feito, estimar acabamento Sun 27 agosto 2000 13:35:13
Traduo total tamanho da tabela: 35119
Total de rockridge atributos bytes: 59724
Total de bytes diretrio: 104448
Tamanho da tabela Path (bytes): 256
Max brk espao usado 86224
78.211 extenses escritas (152 Mb)

Os relatrios so bastante chato hoje em dia, tendo em vista que todo o processo s
leva um par de minutos, mas o resumo das informaes na parte inferior pode ser de interesse.

Testando o CD-R
Ento agora voc tem uma imagem ISO. Como que voc sabe que correto? apenas um nico arquivo, e
poderia ter qualquer coisa sobre ele. Voc pode gravar um CD, claro, mas se lixo, voc
tem outra montanha-russa. Se voc no tiver certeza, melhor olhar para dentro primeiro. Voc pode fazer isso por
utilizando-o como a base para uma md vnode dispositivo.
O md controlador cria um certo nmero de diferentes tipos de pseudo-dispositivo. Veja a pgina de manual
md (4) para mais detalhes. Usamos o vnode dispositivo, um arquivo especial que se refere ao sistema de arquivo
arquivos. Suporte para md est includo no kernel GENERIC, mas se voc construiu um kernel
burncd.mm, v V4.13 (2003/04/02 06:46:59)

Criando uma imagem ISO-9660

246

sem o md driver, voc pode carreg-lo como um kld. Se voc no tiver certeza, tente carregar o kld
de qualquer maneira. Ento voc associar um dispositivo vnode com a imagem ISO iso-imagem usando o
programa mdconfig:
# Kldload md
kldload: no pode carregar md: O arquivo j existe
# Mdconfig-a-t vnode-f iso-imagem
md0
# Mount-t cd9660 / dev/md0 / mnt

carregar o mdulo kld se necessrio


j carregado no kernel
configurar o dispositivo
este o nome atribudo
mont-lo

Aps isso, voc ser capaz de acessar a imagem em / Mnt como um sistema de arquivos normal. No
se esquea de desmontar e desconfigurar o arquivo quando terminar:
# Umount / mnt
# Mdconfig-d-u 0

Verses mais antigas do FreeBSD usou o vn motorista, que usou a sintaxe diferente.

Gravar o CD-R
Depois de ter uma imagem ISO criado e testado, voc pode copi-lo para CD-R. Para SCSI
queimadores, voc pode usar cdrecord , ATA (IDE) gravadores de CD-R que voc usa burncd. No seguinte
sees vamos olhar para ambos os programas.

Gravar um CD-R em um queimador de ATA


Para gravar um CD-R em um (ou IDE) queimador ATA, use burncd, que faz parte da base do sistema.
Normalmente, voc s vai ter um gravador de CD-R no sistema, por isso vai ser chamado / Dev/acd0.
Voc vai ter algo parecido com isso em sua dmesg sada:
acd0: CD-RW <RWD RW4224> em ATA1-escravo BIOSPIO

burncd tem duas bandeiras e comandos. Para nossos propsitos, as bandeiras mais importantes so:

O -F dispositivo opo especifica o dispositivo a ser usado para o processo de gravao.

O -M opo diz burncd para fechar o disco no modo multi-sesso.

O -Q opo diz burncd ficar quieto e no para imprimir mensagens de progresso. Na verdade,
no muito detalhado de qualquer maneira.

O -S acelerar opo especifica a velocidade do dispositivo de queimador. O padro 1, de modo


voc vai economizar muito tempo com isso.

O -T opo especifica um teste de escrever: burncd no realmente escrever sobre o meio.


O -V (Verbose) opo imprime algumas mensagens de progresso extras.

burncd.mm, v V4.13 (2003/04/02 06:46:59)

247

Chapter 13: gravao de CD-R

Os comandos mais importantes para escrever ISO 9660 CD-ROMs so:

dados ou mode1 escrever trilhas de dados, tambm conhecido como mode1 faixas, para os arquivos de imagem
chamado na linha de comando.

fixar se fixa o meio, gerando a tabela de contedos. Este deve ser o


ltimo comando para burncd.

Se burncd no reconhece um comando, ele assume que um nome de arquivo. Se isso acontecer, ele assume
no um nome de arquivo. Isso pode ser confuso: existem outros comandos no mencionadas no
da lista acima, por exemplo cru. Se voc tem um arquivo ISO chamado raw, voc vai ter que mudar o nome
lo antes de queim-lo com burncd.
Antes de comear, voc deve decidir sobre a velocidade de gravao. Se a sua mquina rpido
o suficiente, use a velocidade de gravao nominal. No caso do exemplo da mquina, que um 8x
velocidade (ou seja, ele grava a oito vezes a velocidade a que um CD de udio normal tocada).
Antes de fazer isso, porm, voc deve certificar-se de que seu sistema pode manter um nmero suficiente de
taxa de dados de modo a que haja sempre disponveis dados para transferir para o CD-R. Se ele no pode manter-se,
voc vai ter uma encaixe, uma lacuna nos dados, e seu CD-R intil (a montanha-russa).
Para se certificar de que voc no faz coasters, voc deve fazer um teste. O sistema vai
atravs de todos os movimentos, mas no realmente escrever alguma coisa para o CD-R em branco.
No entanto, ele testa todos os aspectos da queimadura, por isso voc deve ter um CD-R em branco vlido no
unidade, caso contrrio, a tentativa falhar. Para testar queimar uma imagem chamada iso, digite:
# Burncd-f / dev/acd0c-t-v-s 8 dados iso fixate
adicionando o tipo 0x08 iso tamanho 184.576 KB 92.288 blocos
prximo gravvel LBA 0
addr = 0 size = 189005824 blocos = 92288
escrever a partir do arquivo iso tamanho 184.576 KB
escrito esta faixa 6880 KB (3%) no total 6.880 KB

Neste ponto, burncd substitui a linha com indicaes de progresso at que esteja terminado.
Finalmente, voc v:
escrito esta faixa 184.576 KB (100%) no total 184.576 KB
fixando CD, por favor aguarde ..
burncd: ioctl (CDRIOCFIXATE): entrada / sada erro

Esta ltima linha aparece um pouco alarmante. No realmente grave, no entanto: o CD no tem
realmente foi escrito, por isso no possvel ler a partir dele. Um certo nmero de unidades de CD-R regresso
condies de erro sob estas circunstncias.
Se estava tudo bem no teste, voc pode repetir o comando sem o -T bandeira:
# Burncd-f / dev/acd0c-v-s 8 dados iso fixate

A sada idntica, mas desta vez voc no deve receber a mensagem de erro.

burncd.mm, v V4.13 (2003/04/02 06:46:59)

Gravar o CD-R

248

Gravar um CD-R em um gravador SCSI


Se voc tiver um gravador SCSI, use cdrecord, que faz parte do cdrtools porto, instalado
na pgina 243. cdrecord tem um hbito bastante estranho de no usar nomes de dispositivos: em vez disso,
acessa o dispositivo diretamente por seus parmetros SCSI (barramento, unidade e LUN). Voc pode obter
estes parmetros do dmesg na sada / Var / run / dmesg.boot, mas no h uma maneira mais fcil
forma:
# Cdrecord-scanbus
Cdrecord 1.9 (i386-unknown-freebsd4.1) Copyright
Usando a verso libscg 'Schily-0.1'
scsibus0:
0,0,0 0) 'MATSHITA' CD-R
cdrecord: Warning: controlador retorna tamanho zero
cdrecord: Warning: controlador retorna tamanho errado
cdrecord: Warning: controlador retorna pgina errada
0,1,0 1) 'TEAC' CD-ROM CD-532S
0,2,0 2) *
0,3,0 3) *
0,4,0 4) "SDT-10000 'SONY'
0,5,0 5) *
0,6,0 6) *
0,7,0 7) *
0,8,0 8) 'QUANTUM' QM318000TD-SW

(C) 1995-2000 Jrg Schilling


CW-7503

''1 .06' Removable CD-ROM


Pgina capacidades CD.
para a pgina de recursos de CD.
0 para a pgina de recursos de CD (2A).
''1 .0 A' CD-ROM removvel
''0101' Fita removvel

Disk 'N491'

Esta sada no dizer exatamente quais os dispositivos so CD-Rs, e tambm no olha para
qualquer, exceto o primeiro barramento SCSI. Alternativamente, voc pode usar o utilitrio padro do sistema
CamControl:
# CamControl devlist
<MATSHITA CD-R
CW-7503 1,06>
<TEAC CD-ROM CD-532S 1.0A>
<SONY SDT-10000 0101>
<QUANTUM QM318000TD-SW N491>
<EXABYTE EXB-8505SMBANSH2 0793>
<Quantum DLT4000 CC1E>
<AIWA GD-8000 0119>
<NRC MBR-7 110>
<NRC MBR-7 110>
<NRC MBR-7 110>
<NRC MBR-7 110>
<NRC MBR-7 110>
<NRC MBR-7 110>
<NRC MBR-7 110>

em
em
em
em
em
em
em
em
em
em
em
em
em
em

scbus0
scbus0
scbus0
scbus0
scbus1
scbus1
scbus1
scbus1
scbus1
scbus1
scbus1
scbus1
scbus1
scbus1

alvo
alvo
alvo
alvo
alvo
alvo
alvo
alvo
alvo
alvo
alvo
alvo
alvo
alvo

0
1
4
8
1
3
4
6
6
6
6
6
6
6

lun
lun
lun
lun
lun
lun
lun
lun
lun
lun
lun
lun
lun
lun

0
0
0
0
0
0
0
0
1
2
3
4
5
6

(Pass0, cd0)
(Pass1, CD1)
(SA0, pass2)
(Pass3, da0)
(Sa1, pass4)
(Sa2, pass5)
(Sa3, pass6)
(Pass7, CD2)
(Pass8, CD3)
(Pass9, CD4)
(Pass10, cd5)
(Pass11, cd6)
(Pass12, CD7)
(Pass13, CD8)

De qualquer forma, preciso reconhecer o dispositivo de CD-R, que neste caso relativamente fcil:
a Matsushita CW-7503 ('' MATSHITA'') no incio de cada lista. cdrecord
refere-se a este dispositivo como 0,0,0 (Bus 0, alvo 0, LUN 0).
A prxima coisa a olhar a velocidade de gravao. Se a sua mquina rpido o suficiente, use o
avaliaram a velocidade de gravao. No caso do exemplo de mquina, que uma velocidade de 8x (ie
registros em 8 vezes a velocidade com que um CD de udio normal tocada). Antes de fazer isso,
porm, voc deve certificar-se de que seu sistema pode manter uma taxa de dados suficientes para que
sempre h dados disponveis quando ir no CD. Se voc no pode manter-se, voc receber um
encaixe, uma lacuna nos dados, e seu CD-R intil (a montanha-russa).

burncd.mm, v V4.13 (2003/04/02 06:46:59)

249

Captulo 13: Escrevendo CD-Rs

Para se certificar de que voc no faz coasters, voc deve fazer uma corrida fictcia. O sistema vai
atravs de todos os movimentos, mas no realmente escrever alguma coisa para o CD-R em branco.
No entanto, ele testa todos os aspectos da queimadura, por isso voc deve ter um CD-R em branco vlido no
unidade, caso contrrio, a tentativa falhar. Para gravar uma imagem chamada iso, digite:
# Cdrecord-dummy-v dev = 0,0,0-speed = 8 iso
Cdrecord 1.9 (i386-unknown-freebsd5.0) Copyright (C) 1995-2000 Jrg Schilling
TOC Tipo: 1 = CD-ROM
scsidev: '0, 0,0 '
SCSIBUS: 0-alvo: 0 lun: 0
Usando a verso libscg 'Schily-0.1'
atapi: 0
Tipo de dispositivo : Removable CD-ROM
Verso: 2
Formato de resposta: 2
Capacidades: SYNC LIGADO
Vendor_info: 'MATSHITA'
Identifikation: 'CD-R
CW-7503 '
Reviso: '1 .06 '
Dispositivo parece ser: MMC genrica CD-R.
Usando genrico SCSI-3/mmc CD-R driver (mmc_cdr).
Bandeiras motorista
: SWABAUDIO
Tamanho FIFO
: 4194304 = 4096 KB
Track 01: Dados 152 MB
Tamanho total:
175 MB (17:22.84) = 78213 setores
Caipira comear:
175 MB (17:24 / 63) = 78213 setores
Secsize atual: 2048
Informaes ATIP do disco:
Indicado poder da escrita: 5
No irrestrito
No apagvel
ATIP incio de liderana em: -11080 (97:34 / 20)
ATIP incio de levar para fora: 335100 (74:30 / 00)
Tipo de disco:
Tipo long estratgia (Cianina, AZO ou similar)
Facturao. ndice: 11
Fabricante: Mitsubishi Chemical Corporation
Blocos total: 335.100 blocos atuais: 335.100 blocos restantes: 256887
Total de RBlocks: 342.460 RBlocks atuais: RBlocks 342.460 restantes: 264247
Comeando a escrever CD / DVD com velocidade 8 no modo simulado para uma nica sesso.
ltima chance de parar de fumar, comear write fictcios em um segundo.
Esperar para o processo leitor para preencher buffer de entrada ... memria intermdia de entrada imediata.
Iniciando uma nova pista no setor: 0
Track 01: 0 de 152 MB por escrito (FIFO 100%).

Neste ponto, cdrecord sobrescreve a ltima linha com indicaes de progresso at que seja
acabado. Se voc est assistindo, manter um olho sobre o fifo informao no final da linha.
Isso lhe d uma idia de quo bem o sistema est acompanhando o queimador. Se o
utilizao cai para 0, voc receber um encaixe, eo branco teria se tornado um
russa se isso fosse de verdade.
Finalmente, voc v:
Track 01: 152 de 152 MB por escrito (FIFO 100%).
Track 01: Total de bytes de leitura / escrita: 160176128/160176128 (78211 setores).
Escrevendo tempo: 136.918s
Fixando ...
AVISO: Algumas unidades no gosta fixao no modo simulado.
Tempo de fixao:
35.963s
cdrecord: fifo tinha 2.523 e 2.523 puts recebe.
cdrecord: fifo era 0 vezes vazio e 2.451 vezes completo, min preenchimento foi de 96%.

burncd.mm, v V4.13 (2003/04/02 06:46:59)

Gravar o CD-R

250

O resumo das informaes no final mostra que em algum momento o fifo caiu abaixo
100% completo, mas isto est longe de ser um problema. Se, por outro lado, houve uma grande quantidade de
atividade do disco, ao mesmo tempo, voc pode encontrar o nvel fifo caindo muito menor.
Quando voc tiver certeza de que voc no ter nenhum problema, voc pode fazer a coisa real: basta
repita o comando sem a -Dummy opo. A sada quase idntica.

Cpia de CD-ROMs
Freqentemente voc vai querer fazer uma cpia exata de um outro CD. H direitos autorais
implicaes aqui, claro, mas muitos CD-ROMs no so restritas. Em particular, voc
pode fazer cpias do FreeBSD CD-ROMs para o seu uso pessoal.
CD-ROMs j esto no formato ISO, claro, de modo a obter um arquivo iso, como nos exemplos
acima, voc pode simplesmente executar uma cpia literal com dd :
# Dd if = / dev/cd0c of = iso bs = 128k

O bs = 128k diz dd copiar em blocos de 128 kB. No estritamente necessrio, mas se voc
omiti-lo, ele ir executar uma transferncia separada para cada setor, e em uma mquina lenta, isso pode
ser muito menos eficiente.
H uma maneira ainda mais fcil, porm, se voc tiver duas unidades de CD-ROM: voc pode freqentemente
copie diretamente de um disco para o outro, sem armazenar em disco em tudo. Para fazer isso,
Claro, voc precisa estar muito certo de que a unidade de CD-ROM rpido o suficiente. Em particular, se
ele gira para baixo durante a cpia, voc quase certamente ter dficits e um intil
copiar. Seja muito certo para fazer uma corrida fictcia primeiro. Vamos supor que o seu segundo CD-ROM
unidade / Dev/cd1c (Uma unidade SCSI). Para drives IDE, escreva:
# Burncd-f / dev/acd0c-t-v-s 8 dados / dev/cd1c fixate

Neste exemplo, a -F indica que a opo / Dev/acd0c o (IDE) de CD-R queimador.


/ Dev/cd1c a unidade de CD-ROM (SCSI) com o CD-ROM original. Voc no precisa
montar / Dev/cd1c, j que ele est sendo acessado como dados brutos, no um sistema de arquivos.
Quando voc tiver certeza de que isso vai funcionar, remova o -T bandeira e repita.
Para dispositivos SCSI, introduzir
# Cdrecord-dummy-v dev = 0,0,0-speed = 8 / dev/cd1c

Quando se completar satisfatoriamente, o remover -Dummy e repetir.

burncd.mm, v V4.13 (2003/04/02 06:46:59)

Neste captulo:
Fazer o backup de seus dados
O uso de disquetes
no FreeBSD

14

Tapes, backups e
disquetes
No captulo 11 ns olhamos para discos rgidos. Neste captulo, vamos considerar como se proteger
contra perda de dados, e como transferir dados de um local para outro. So
funes que UNIX tradicionalmente realiza com as fitas, e ns vamos olh-los na prxima
sees. Porque FreeBSD executado em PCs, no entanto, voc no pode escapar completamente flexvel
discos, apesar de que seria uma excelente ideia. Ns vamos olhar para disquetes na pgina 256.

Fazer o backup de seus dados


No importa como o sistema confivel, voc nunca est completamente protegido contra a perda de
dados. Os motivos mais comuns so falhas de hardware e erro humano. Por comparao,
muito raro que um erro de software faz com que a perda de dados, mas isso tambm pode acontecer.
UNIX fala sobre arquivos, que so cpias de dados do disco em uma forma adequada para escrever sobre
um meio de srie, tais como a fita. Voc pode, no entanto, grav-los em arquivos de disco, bem como, e
isso o que as pessoas fazem quando querem mover uma rvore de cdigo fonte de um sistema para outro.
Voc tambm vai ouvir o termo tarball para um pacote feito pela alcatro programa, que ns
discutir a seguir.

tapes.mm, v v4.10 (2003/04/02 06:47:36)

251

Fazer o backup de seus dados

252

O meio de backup?
Tradicionalmente, os PCs usam disquetes como um meio de armazenamento removvel. Ns olharemos
disquetes abaixo, mas voc pode somar a seo em uma declarao: no utilizar disquetes.
Os disquetes so particularmente inadequadas como um meio de backup para computadores modernos.
Considere ainda um sistema mnimo com um disco rgido de 2. Armazenar 2 GB de dados em disquetes
requer cerca de 1.500 disquetes, que, em 0,30 dlares cada, iria custar-lhe US $ 450. Copiando o
dados para um disquete leva cerca de 50 segundos por disquete, por isso o tempo de backup matria seria
cerca de 21 horas, mais o tempo que voc leva para mudar os disquetes, que poderia facilmente ter
outras trs horas ou mais. Durante esse tempo, voc tem que sentar-se ao computador jogando
disk jockey, um total de trs dias de trabalho durante o qual voc no podia fazer mais nada.
Quando voc tenta ler os dados novamente, h quase uma certeza de que um dos disquetes
tem um erro de dados, especialmente se voc l-los com uma unidade diferente.
Por outro lado, uma nica fita DDS ou Exabyte armazena vrios gigabytes e custa cerca de
US $ 6. O tempo de autonomia para 2 GB de cerca de 90 minutos e a operao pode ser realizada
completamente autnoma.
Um certo nmero de unidades de fita mais baratos tambm esto disponveis, tais como fitas Travan. FreeBSD
apoia-los, mas, por uma razo ou outra, no so populares. FreeBSD usado uma vez para
tem suporte para'' fita flexvel'', fugir um controlador de disquete, mas estas fitas eram muito
confivel, e eles no so mais suportados.
Voc tambm pode usar'' gravvel CD-ROMs'' (CD-Rs) para fins de backup. Por moderno
padres, os meios de comunicao so pequenos (at 700 MB), mas tm a vantagem de ser
prontamente acessveis a outros sistemas. Olhamos para CD-Rs no captulo 13.

Dispositivos de fita
Dispositivos de fita FreeBSD tem nomes como / Dev/nsa0 (Ver pgina 196). Cada letra tem um
significado:

n meios no-retrocesso. Quando o processo que acede a fita fecha-lo, a fita


permanece na mesma posio. Isso inconveniente se voc deseja remover a fita
(Antes que voc deve retroceder), mas a nica forma, se voc deseja manipular
vrios arquivos na fita. O nome do correspondente dispositivo de retrocesso no tem nenhuma n
(Por exemplo, o dispositivo correspondente rebobinagem / Dev/nsa0 / Dev/sa0). Um retrocesso
dispositivo rebobina a fita quando ele fechado.
Verses mais antigas do FreeBSD usou os nomes / Dev/nrsa0 e / Dev/rsa0. r stands para cru, em
outras palavras, um dispositivo de carter. Uma vez que a remoo de dispositivos de bloco, esta carta suprfluo,
mas voc pode v-lo ocasionalmente, em documentos antigos.

SA stands para acesso serial, e sempre SCSI. Voc tambm pode obter as unidades de fita ATAPI,
que so chamados / Dev/ast0 e / Dev/nast0, e as mais velhas fitas QIC-02 interface so
chamado / Dev/wst0 e / Dev/nwst0.

0 o nmero de unidade. Se voc tiver mais de uma fita, o prximo ser chamado
/ Dev/nsa1, e assim por diante.
tapes.mm, v v4.10 (2003/04/02 06:47:36)

253

Captulo 14: Tapes, backups e disquetes

O software de backup
FreeBSD no requer software especial'' backup.'' O sistema operacional de base
fornece todos os programas que voc precisa. O driver de fita faz parte do kernel, eo sistema
inclui uma srie de programas de backup. Os mais populares so:

tar, o archiver fita, tem sido em torno de mais tempo do que qualquer um pode lembrar.
particularmente til para a troca de dados, j que todo mundo tem. H ainda verses
de alcatro para as plataformas da Microsoft. tambm um programa de backup adequada.

cpio um programa de backup alternativa. Sobre a sua nica vantagem sobre alcatro que ele
pode ler cpio formatar arquivos.

pax um outro programa de backup alternativa. Tem a vantagem de que ele pode tambm ler
e escrever alcatro e cpio arquivos.

despejar voltado mais para backups do que para arquivamento. Pode manter
vrios nveis de backup, cada um dos quais faz backup apenas dos arquivos que foram alterados
desde o ltimo backup do prximo mais alto (numericamente inferior) nvel. menos adequado
para o intercmbio de dados, pois seus formatos so muito especficos para BSD. Mesmo mais velho
verses do FreeBSD no consegue ler dumps criados no FreeBSD Release 5.

amanda, na Coleo de Ports, outro programa de backup popular.

Estratgias de backup so frequentemente objecto de guerras religiosas. Eu pessoalmente acho que alcatro
faz tudo o que eu quero, mas voc vai encontrar muitas pessoas que recomendam despejar ou
amanda em vez disso. Na seo seguinte, vamos olhar para os fundamentos do uso tar. Veja o
pgina de manual dump (8) Para mais informaes sobre despejar.

alcatro
tar, o archiver fita, executa as seguintes funes:

Criao de um arquivo, que pode ser um dispositivo de srie, como uma fita, ou um arquivo em disco, a partir de
o contedo de um certo nmero de directrios.

Extrair arquivos de um arquivo.


Listar o contedo de um arquivo.

alcatro no comprimir os dados. O arquivo resultante ligeiramente maior do que a soma de


os ficheiros que contm, uma vez que tambm contm uma determinada quantidade de informao de cabealho.
Voc pode, entretanto, usar o gzip programa para comprimir um alcatro arquivar e alcatro invoca-lo para
automaticamente com o -Z opo. O tamanho do arquivo resultante depende fortemente
sobre os dados que voc colocar neles. As imagens JPEG, por exemplo, dificilmente comprimir a todos, enquanto
texto comprime muito bem e pode ser to elevada quanto 90% menor do que os ficheiros constituintes.

tapes.mm, v v4.10 (2003/04/02 06:47:36)

Fazer o backup de seus dados

254

Criando um arquivo tar


Crie um arquivo com o c opo. Diferentemente da maioria dos programas UNIX,
alcatro no requer um hfen (-) na frente das opes. Por exemplo, para salvar a sua
completa rvore fonte do kernel, voc pode escrever:
# Tar cvf fonte-arquivo.tar / usr / src / sys
tar: Removendo principal / de nomes de caminho absolutos no arquivo.
usr / src / sys /
usr / src / sys / CVS /
usr / src / sys / CVS / Root
usr / src / sys / CVS / Repository
usr / src / sys / CVS / Entries
usr / src / sys / compile /
usr / src / sys / compile / CVS /
(Etc)

Os parmetros tm o seguinte significado:

CVF so as opes. c stands para criar um arquivo, v especifica verboso operao (em
Neste caso, isso causa alcatro para produzir a lista de arquivos que esto sendo arquivados), e f especifica
que o prximo parmetro o nome do arquivo.

fonte-arquivo.tar o nome do arquivo. Neste caso, um arquivo em disco.


/ Usr / src / sys o nome do diretrio para o arquivo. alcatro arquivos de todos os arquivos no
diretrio, incluindo a maioria dos dispositivos. Por razes histricas, alcatro no pode fazer backup de dispositivos
com menores nmeros superiores a 65536, e alterar o formato tornaria
incompatvel com outros sistemas.

A mensagem na primeira linha (Remoo lder / ...) indica que, embora o


nome do diretrio foi especificado como / Usr / src / sys, alcatro trata-o como usr / src / sys. Isto faz
possvel restaurar os arquivos em outro diretrio em um momento posterior.
Voc pode fazer backup em fita no exatamente da mesma maneira:
# Tar cvf / dev/nsa0 / usr / src / sys

Existe uma maneira mais simples, no entanto: se voc no especificar um nome de arquivo, alcatro olha para o
varivel de ambiente TAPE. Se ele encontrar, ele interpreta como o nome da unidade de fita.
Voc pode fazer coisas muito mais fceis, definindo a seguinte linha no arquivo de configurao para
seu shell ( . Perfil para sh,. bashrc para bash,. logon para csh e tcsh):
FITA TAPE = / dev/nsa0 exportao
setenv TAPE / dev/nsa0

para sh e festa
para csh e tcsh

Depois disto, o exemplo anterior simplifica a:


# Tar cv / usr / src / sys

tapes.mm, v v4.10 (2003/04/02 06:47:36)

255

Captulo 14: Tapes, backups e disquetes

Listando um arquivo
Para listar um arquivo, use a opo t:
# Tar t
usr / src / sys /
usr / src / sys / CVS /
usr / src / sys / CVS / Root
usr / src / sys / CVS / Repository
usr / src / sys / CVS / Entries
usr / src / sys / compile /
usr / src / sys / compile / CVS /
usr / src / sys / compile / CVS / Root
(Etc)
# Tar TVF-fonte arquivo.tar
drwxrwxrwx root / bin
0 Outubro 25
drwxrwxrwx root / bin
0 Outubro 25
-Rw-rw-rw-root / wheel
9 Setembro 30
-Rw-rw-rw-root / wheel
17 Setembro 30
-Rw-rw-rw-root / bin
346
Outubro 25
drwxrwxrwx root / bin
0 Outubro 27
drwxrwxrwx root / bin
0 Julho 30
(Etc)

a partir de fita

15:07
15:08
23:13
23:13
15:08
17:11
10:52

a
1997
1997
1996
1996
1997
1997
1997

partir do disco
usr / src /
usr / src /
usr / src /
usr / src /
usr / src /
usr / src /
usr / src /

sys
sys
sys
sys
sys
sys
sys

/
/
/
/
/
/
/

CVS /
CVS / Root
CVS / Repository
CVS / Entries
compile /
compile / CVS /

Este exemplo mostra a utilizao do v Opo (verbose) com t. Se voc no us-lo, alcatro
exibe apenas os nomes dos arquivos (primeiro exemplo, a partir de fita). Se voc us-lo, alcatro tambm
exibe as permisses, posses, tamanhos e data da ltima modificao na forma
lembra ls-l (Segundo exemplo, que a partir do arquivo em disco fonte-arquivo.tar).
Extraindo arquivos
Para extrair um arquivo a partir do arquivo, utilize o x opo:
# Tar xv usr / src / sys / Makefile
usr / src / sys / Makefile

a partir de fita
confirma que o arquivo foi extrado

Tal como acontece com o c opo, se voc no usar o v opo, alcatro no listar os nomes de arquivos. Se
voc omitir os nomes dos arquivos para extrair, alcatro extrai o arquivo completo.
Arquivos compactados
Voc pode combinar gzip com alcatro especificando o z opo. Por exemplo, para criar o
arquivo fonte-archive.tar.gz em formato comprimido, escreva para:
# Tar czf fonte-archive.tar.gz / usr / src / sys

Voc obrigao especificar a z opo ao listar ou extrair arquivos compactados, e voc


no deve faz-lo quando a lista ou extrair arquivos no-comprimido. Caso contrrio, voc recebe
mensagens como:
# Tar tzvf fonte-arquivo.tar
gzip: stdin: no em formato gzip
tar: criana retornou estado de um
# Tar TVF-fonte archive.tar.gz
tar: s ler 2302 bytes a partir do arquivo-fonte archive.tar.gz

tapes.mm, v v4.10 (2003/04/02 06:47:36)

Fazer o backup de seus dados

256

O uso de disquetes no FreeBSD


Eu no gosto de disquetes. UNIX no gosta de disquetes. Provavelmente voc no gosta de disquete
discos de qualquer um, mas ocasionalmente tm de viver com eles.
FreeBSD usa disquetes para apenas uma coisa: para, inicialmente, a inicializao do sistema em sistemas
que no pode iniciar a partir de CD-ROM. Ns j vimos que eles so inadequados para arquivo
armazenamento de dados e transferncia de dados. Para isso, o FreeBSD usa fitas e CD-ROMs,
que so muito mais confiveis, e para os volumes de dados envolvidos em computadores modernos,
eles so mais baratos e mais rpidos.
Ento, por que usar disquetes? As nicas boas razes so:

Voc tem uma unidade de disquete. Voc no pode ter uma unidade de fita. Antes de voc sair e comprar
todos os disquetes, porm, considerar que poderia ser mais barato comprar uma unidade de fita e
algumas fitas em vez.

Voc precisa trocar dados com as pessoas que utilizam as plataformas da Microsoft, ou com pessoas
que no tm o mesmo tipo de fita, como voc faz.

Nas sees seguintes, veremos como lidar com disquetes no FreeBSD, com
nomeadamente em matria de coexistncia com a Microsoft. Aqui est um resumo:

Formate disquetes antes de us-los em seu sistema pela primeira vez, mesmo se
eles foram formatados antes. Veremos isso na prxima seo.

Apenas ocasionalmente, voc precisa criar um sistema de arquivos UNIX em disquete. Veremos que
na pgina 257.

Ao trocar com os usurios da Microsoft, voc precisa criar um sistema de arquivos Microsoft.
Veremos que na pgina 259.

Ao trocar com outros usurios do UNIX, seja FreeBSD ou no, use alcatro ou cpio.
Veremos como fazer isso na pgina 259.

A formatao de um disquete
Mesmo se voc comprar disquetes pr-formatados, uma boa idia para reformat-las. Seguir
alinhamento pode variar significativamente entre os disquetes individuais, e o resultado pode ser
que a unidade no escreve muito em cima das faixas pr-escritas. Eu vi ler
taxas to altas quanto 2% em disquetes pr-formatados de falha: em outras palavras, depois de escrever 100
disquetes com dados valiosos, as chances so de que dois deles tm erros de leitura. Voc pode
reduzir este problema formatando o disquete no drive em que est a ser escrito, mas
voc no pode elimin-lo.
Nas plataformas da Microsoft, voc formatar disquetes com a FORMAT programa, que
desempenha duas funes diferentes quando invocadas em disquetes: ele executa tanto a de baixo nvel
formato, que reescreve a informao do sector fsico, e, em seguida, ele realiza o que chama de
um de alto nvel formato, que grava as informaes necessrias para as plataformas da Microsoft para
us-lo como um sistema de arquivos. UNIX chama a segunda operao de criao de um sistema de arquivos. No
sempre necessrio ter um sistema de arquivos no disquete, de fato, como veremos, pode ser um
tapes.mm, v v4.10 (2003/04/02 06:47:36)

257

Captulo 14: Tapes, backups e disquetes

desvantagem. Alm disso, o FreeBSD oferece diferentes tipos de sistema de arquivos, por isso realiza
as duas funes de diferentes programas. Nesta seo, veremos fdformat, que
executa a formatao de baixo nvel. Veremos como criar um UFS ou arquivo Microsoft
sistema na prxima seo.
Para formatar um disquete no primeiro drive de disquete, / Dev/fd0, voc deve digitar:
$ Fdformat / dev/fd0
Formato 1440k floppy '/ dev/fd0'? (Y / n): y
Processamento ----------------------------------------

Cada caractere hfen (-) representa duas faixas. Como o formato de produto, os hfens
mudar individualmente a um F (Formato) e depois V (Verificar), por sua vez, por isso no final da linha
l
Processamento VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV feito.

Sistemas de arquivos em disquete


possvel usar os disquetes como sistemas de arquivos no FreeBSD. Voc pode criar uma UFS arquivo
sistema em um disquete como em um disco rgido. Isso no necessariamente uma boa idia: o UFS
sistema de arquivos foi projetada para desempenho, capacidade no mximo. Por padro, ele no
usar o ltimo 8% de espao em disco, e inclui uma srie de informaes de estrutura que mais
reduz o espao disponvel no disco. Aqui est um exemplo de criao de um sistema de arquivos,
mont-lo no diretrio / A, e listar o restante espao disponvel em um vazio
3 "floppy. Usamos o disktab abordagem para rotular o disco, como vimos na pgina 216.
/ Etc / disktab tem etiquetas para disquetes: use fd1440 para a 3 "1,44 MB disquete,
e fd1200 para a 5 "1.2 MB floppy:
# Disklabel-w-r / dev/fd0 fd1440
rotular o disquete
# Disklabel-r / dev/fd0
e listar as informaes
# / Dev/fd0:
Tipo: desconhecido
disk: fd1440
label:
flags:
bytes / setor: 512
setores / trilha: 18
faixas / cilindro: 2
setores / cilindro: 36
cilindros: 80
setores / unidades: 2880
rpm: 300
intercalam: 1
trackskew: 0
cylinderskew: 0
headswitch: 0
# Milissegundos
caminhos-de-track buscar: 0 # milissegundos
drivedata: 0
3 parties:
# Tamanho
compensar
fstype [fsize bsize bps / cpg]
um: 2880
0 no utilizado # 512 4096 (Cyl. 0-79)
b: 2880
0 no utilizado # 512 4096 (Cyl. 0-79)
c: 2880
0 no utilizado # 512 4096 (Cyl. 0-79)
# Newfs / dev/fd0
criar um novo sistema de arquivos
Aviso: Tamanho do bloco restringe cilindros por grupo de 6.
tapes.mm, v v4.10 (2003/04/02 06:47:36)

O uso de disquetes no FreeBSD

258

Aviso: 1,216 setor (s) no ltimo cilindro no alocado


/ Dev/fd0.1440: 2.880 setores em um cilindros de 1 faixas, 4.096 setores
1.4 em 1 grupos cyl (6 c / g, 12.00MB / g, 736 i / g)
backups super-bloco (por fsck-b #) em:
32,
# Mount / dev/fd0 / A
montar o disquete no / A
# DF / D
exibir o espao disponvel
Filesystem 1024-blocks
Usado Capacidade Disponvel Montado em
/ Dev/fd0 1319
0 1213
0%
/ Mnt

Vejamos isso em um pouco mais de detalhes:

A primeira chamada de volume de disco, com a -W opo, escreve um volume de disco para o disquete,
que fornece informao suficiente para newfs para criar um UFS sistema de arquivos nele.

A segunda chamada de disklabel, apenas com a -R opo, lista as informaes


escrito pela primeira invocao. Isto no necessrio para a criao do sistema de ficheiros, mas
ajuda a assegurar que o disco est etiquetado correctamente.

newfs cria o UFS sistema de arquivos no disquete.

Ns j vimos montar , na pgina 192. Neste caso, podemos us-lo para montar o disquete
no sistema de arquivos / A.
O df programa mostra o espao mximo e disponvel em um sistema de arquivos. Por
padro, df exibe o uso em blocos de 512 bytes, um tamanho inconveniente. Neste
exemplo, o ambiente varivel BLOCKSIZE foi criado em 1024 para exibir o uso de
em 1 KB (1024 byte) blocos. Consulte a pgina 128 para mais detalhes sobre variveis de ambiente.

A sada do df parece terrvel! Nosso disquete s tem 1.213 kB deixadas para os dados do usurio normais,
mesmo que no haja nada sobre ele e at mesmo df alegaes de que ele realmente pode armazenar 1.319 kb.
Isto porque UFS mantm um padro de 8% do espao livre por razes de desempenho.
Voc pode mudar isso, no entanto, com tunefs, o programa de ajuste do sistema de arquivos: 1
# Umount / A
primeiro desmontar o disquete
# Tunefs-m 0 / dev/fd0
e mudar o mnimo livre a 0
tunefs: percentual mnimo de mudanas de espao livre de 8% para 0%
tunefs: deve otimizar o espao com minfree <8%
# Mount / dev/fd0 / A
montar o sistema de arquivo novamente
# DF / D
e ter um outro olhar
Filesystem 1024-blocks
Usado Capacidade Disponvel Montado em
/ Dev/fd0 1319
0 1319
0%
/ D

Ainda assim, isso est muito longe do armazenamento de um disco de dados do Microsoft afirmou. Na verdade, o Microsoft
discos no pode armazenar o total de 1,4 MB ou: eles tambm precisam de espao para armazenar os diretrios e
tabelas de alocao. A moral da histria: use apenas sistemas de arquivos em disquete, se voc no
tem alguma alternativa.

1. Para citar a pgina de man: Voc pode ajustar um sistema de arquivos, mas voc no pode ajustar um peixe.
tapes.mm, v v4.10 (2003/04/02 06:47:36)

259

Captulo 14: Tapes, backups e disquetes

Sistemas de arquivo do Microsoft


Para criar um sistema de arquivos MS-DOS, use o newfs_msdos comando:
$ Newfs_msdos-f 1440 / dev/fd0

A especificao -F 1440 diz newfs_msdos que este um MB de disquete 1.4. Alternativamente,


voc pode usar o mformat comando:
$ Mformat A:

Voc pode especificar o nmero de faixas com a -T opo, eo nmero de setores com
o -S opo. Para especificar explicitamente um disquete com 80 trilhas e 18 setores (norma
3 "1,44 MB disquete), voc pode digitar:
$ Mformat-t-s 80 18 A:

mformat um dos mtools que ns olhamos na prxima seo.

Outros usos de disquetes


Bem, voc pode levar os discos para fora da tampa e us-los como uma espcie de Frisbee. Mas
h uma outra coisa til que voc pode fazer com disquetes: como um meio de arquivo, eles no
precisa de um sistema de arquivos nelas. Eles s precisam de ser de baixo nvel formatado. Por exemplo, a
escrever o contedo do diretrio atual em um disquete, voc pode digitar:
$ Tar CVFM / dev/fd0.
. /
. Xfmrc
. X6530modkey
. Uwmrc
. Twmrc
. Rnsoft
. Rnlast
Etc ...
Prepare volume # 2 para / dev/fd0 e bateu de retorno:

Note-se tambm o ponto solitrio (.) No fim da linha de comando. Esse o nome do
diretrio atual, e isso que voc est fazendo backup. Note-se tambm a opo M, o que
abreviado para - Multi-volume. H uma boa chance de que voc vai ficar sem espao em um
disquete, e esta opo diz que voc tem uma quantidade suficiente de disquetes para realizar a
completar backup.
Para extrair os dados novamente, utilizar alcatro com a x opo:
$ Tar xvfM / dev/fd0
. /
. Xfmrc
. X6530modkey
. Uwmrc
Etc ...

Veja a pgina de manual tar (1) para outras coisas que voc pode fazer com tar.
tapes.mm, v v4.10 (2003/04/02 06:47:36)

O uso de disquetes no FreeBSD

260

Acessando disquetes Microsoft


Claro que, na maioria das vezes voc recebe os dados em um disquete, ele no est em alcatro formato: tem um
Sistema de arquivos Microsoft nele. Ns j vimos o tipo de sistema de arquivos Microsoft na pgina
190, mas isso um pouco de exagero, se voc s quer copiar os arquivos do disquete. Neste caso, usar
o mtools pacote a partir da coleo de ports. mtools uma implementao da MSProgramas DOS ATTRIB, CD, COPY, DEL, DIR, formato, LABEL, MD, RD, LEIA,
REN e TIPO sob UNIX. Para evitar confuso com utilitrios existentes, o UNIX
verses desses comandos comeam com a letra m. Eles tambm so escritos em letras minsculas.
Por exemplo, para listar o contedo de um disquete e copiar um dos arquivos para o atual
(FreeBSD) diretrio, voc pode digitar:
$ Mdir
Volume na unidade A confuso OS
Directory para um :/

listar o diretrio atual em A:

IO SYS 33430
4-09-91 05:00 a
MSDOS SYS
37394 4-09-91
05:00 um
COMANDO COM
47845 12-23-92 5:22 p
NFS <DIR>
12-24-92 11:03 de
DOSEDIT COM
1728 10-07-83 07:40 a
CONFIG SYS
792 10-07-94 7:31 p
AUTOEXEC BAT
191 12-24-92 11:10 a
MOUSE <DIR>
12-24-92 11:09 de
12 arquivo (s)
82.944 bytes livres
mudar para o diretrio A: \ NFS
$ Mcd nfs
$ Mdir
e listar o diretrio
Volume na unidade A confuso OS
Directory para um :/ NFS
. <DIR>
12-24-92 11:03 de
.. <DIR>
12-24-92 11:03 de
HOSTS 5985
10-07-94 07:34 p
BAT NETWORK
103 12-24-92 0:28 p
DRIVES BAT
98 11-07-94 05:24 p
E muitos mais ...
82.944 bytes livres
51 arquivo (s)
$ Mtype drives.bat
Digite o contedo do DRIVES.BAT
net use c: presto :/ usr / dos
c:
cd \ nfs
Use # net f: porsche :/ dos
# Net use g: porsche :/ usr
$ Mcopy a: anfitries.
copy a: HOSTS para o diretrio UNIX local
Copiando HOSTS
e list-la
$ Ls-l anfitries
-Rw-rw-rw-1 root wheel
5985 28 de janeiro anfitries 18:04

Voc deve especificar a letra da unidade para mcopy, porque usa esta indicao para decidir
se o nome do arquivo um nome de arquivo Microsoft um UNIX ou. Voc pode copiar arquivos de
FreeBSD para o disquete, bem como, claro.
Uma palavra de advertncia. UNIX usa um formato diferente de texto de dados da Microsoft: em UNIX,
linhas de fundo com um nico personagem, chamado Newline, e representado pelos personagens \ N em
a linguagem de programao C. Corresponde ao carter ASCII Line Feed
(Representado por J). Microsoft usa dois personagens, um Retorno de carro (M), seguido pela
um Line Feed. Esta diferena infeliz provoca uma srie de compatibilidade inesperada
problemas, uma vez que ambos os caracteres so geralmente invisvel na tela.
tapes.mm, v v4.10 (2003/04/02 06:47:36)

261

Captulo 14: Tapes, backups e disquetes

No FreeBSD, voc normalmente no ir ter muitos problemas. Ocasionalmente, um programa


reclama de caracteres no-imprimveis em uma linha de entrada. Alguns, como Emacs, mostr-los.
Por exemplo, o Emacs mostra o nosso ltimo arquivo, drives.bat, como este:
net use c: usr / DOSM presto :/
c: M
cd \ nfsM
Use # net f: porsche DOSM :/
# Net use g: porsche :/ usrM

Isto pode parecer relativamente inofensiva, mas confunde alguns programas, incluindo o C
compilador e pagers como mais, o qual pode reagir de forma confusa. Voc pode remover
os com a -T opo de mcopy:
$ Mcopy-t a: drives.bat.

Transferncia de arquivos na outra direo mais provvel a causar problemas. Por exemplo, a
voc pode editar esse arquivo no FreeBSD e depois copi-lo de volta para o disquete. Os resultados
dependem do editor, mas assumindo que mudou todas as ocorrncias da palavra porsche a
liberdade, e, em seguida, copiou o arquivo de volta para o disquete, a Microsoft
pode, em seguida, encontrar:
C:> digite drives.bat
net use c: presto :/ usr / dos
c:
cd \ nfs
Use # net f: a liberdade dos :/
# Net use g: liberdade :/ usr

Este um resultado tpico de remover o Retorno de carro caracteres. O -T opo


mcopy pode ajudar tambm. Se voc us-lo para copiar a um sistema de arquivos da Microsoft, ele
reinsere os Retorno de carro caracteres.

tapes.mm, v v4.10 (2003/04/02 06:47:36)

Neste captulo:
Configurao da impressora
Iniciando o spooler
Testando o spooler
Soluo de problemas
Usando o spooler
PostScript
PDF

15
Impressoras

Neste captulo, vamos olhar para alguns aspectos do uso de impressoras com FreeBSD. Como usurio, voc
no acessar impressoras diretamente. Em vez disso, uma srie de processos, a chamada colectivamente
spooler, gerenciar dados de impresso. Um processo, lpr, grava os dados de impresso do usurio para o disco,
e outro,
LPD, copia os dados de impresso para as impressoras. Este mtodo permite que os processos de impresso para
escrever
dados, mesmo se as impressoras esto ocupados e garante a disponibilidade ideal da impressora.
Nesta seo, vamos olhar brevemente para o que voc precisa fazer para configurar impressoras. Para mais
detalhes, consulte a seo de ajuda online em impresso.
lpd o processo spooler central. responsvel por uma srie de coisas:

Ele controla o acesso a impressoras conectadas e impressoras ligadas a outros hosts na


rede.

Ele permite que os usurios enviem arquivos para serem impressos. Estas observaes so conhecidos como empregos.

Ele pode imprimir as pginas de cabealho, tambm conhecida como banner ou pginas de ruptura, assim os usurios podem

Ele impede que vrios usurios acessem uma impressora ao mesmo tempo, mantendo uma
fila para cada impressora.
facilmente
encontrar empregos que foram impressas em uma pilha de impresses.
Ela cuida de parmetros de comunicao para impressoras conectadas em portas seriais.
Ele pode enviar trabalhos atravs da rede para outro spooler em outro host.
Ele pode executar filtros especiais para trabalhos de formato a ser impresso para vrias linguagens de impressora ou
recursos da impressora.

printers.mm, v v4.17 (2003/04/02 06:48:05)

263

O FreeBSD completo

264

Ele pode explicar o uso da impressora.

Atravs de um arquivo de configurao, e fornecendo os programas especiais de filtro, voc pode ativar
o spooler de fazer tudo ou algum subconjunto do acima para uma grande variedade de hardware da impressora.
Isto pode soar como um exagero, se voc for o nico usurio do sistema. Ele possvel
acessar a impressora diretamente, mas no uma boa idia:

O spooler imprime trabalhos no fundo. Voc no tem que esperar por dados a serem
copiado para a impressora.

O spooler pode convenientemente executar um trabalho a ser impresso atravs de filtros para adicionar cabealhos ou
converter formatos especiais (como PostScript) em um formato que a impressora vai entender.

A maioria dos programas que proporcionam um recurso de impresso de esperar para falar com o spooler em seu
sistema.

Configurao da impressora
H trs maneiras utilizadas para conectar uma impressora a um computador:

Sistemas UNIX mais velhos freqentemente usado impressoras seriais, mas eles no esto mais em
uso comum. Impressoras seriais raramente transmitir mais de 1.920 caracteres por segundo,
o que demasiado lento para impressoras modernas.

A maioria das impressoras ainda esto ligados por uma porta paralela. As portas paralelas permitir mais rpido
comunicao com a impressora, de at cerca de 100.000 bytes por segundo. Tais velocidades
pode ainda no ser suficiente para PostScript ou bit-mapped imagens complexas. A maioria paralelo
portos exigem interveno da CPU atravs de uma interrupo para cada caractere transmitido, e
100 mil interrupes por segundo pode usar todo o poder de processamento de uma mquina rpida.

Impressoras mais modernas possuem interfaces USB ou Ethernet, que permitem que eles se conectem
para vrias mquinas ao mesmo tempo a velocidades muito mais elevadas. A carga sobre o computador host
tambm muito menor.

muito simples para conectar uma impressora paralela. Voc no precisa fazer nada
especial para configurar o driver de impressora de linha lpt: no kernel por padro. Tudo que voc precisa
a fazer ligar o cabo entre a impressora eo computador. Se voc tiver mais de
uma interface paralela, claro, voc ter que decidir qual usar. Impressora paralela
dispositivos so chamados / dev / LPTn, onde n o nmero, a comear 0. Dispositivos USB tm
nomes como / Dev / ulptn. Consulte a Tabela 10-4 na pgina 195 para mais detalhes.
Configurando uma impressora Ethernet conectada mais complicado. Voc, obviamente, precisa de um
Endereo IP, o que configura a impressora. A maioria das impressoras modernas ento aparecer como um
computador remoto para o spooler. Ns olhamos para o spool para computadores remotos na pgina 266.

printers.mm, v v4.17 (2003/04/02 06:48:05)

265

Captulo 15: Impressoras

Testando a impressora
Quando voc tiver conectado e ligado uma impressora de porta paralela, execute o teste built-in se
um fornecido: normalmente h uma funo que produz uma impresso que descreve o
recursos da impressora. Depois disso, verificar a comunicao entre o computador eo
impressora.
# Lptest> / dev/lpt0

Se voc tiver uma impressora PostScript puro, aquele que no pode imprimir mais nada, voc no vai conseguir
qualquer sada. Mesmo aqui, no entanto, voc deve ver alguma reao na tela de status.

Configurando o / etc / printcap


O prximo passo configurar o arquivo de configurao central, / Etc / printcap. Este arquivo no
o mais fcil de ler, mas depois de um tempo voc vai se acostumar com isso. Aqui esto algumas entradas tpicas:
lp | lj | ps | locais LaserJet 6MP: \
: Lp = / dev/lpt0: sd = / var / spool / output / lpd: lf = / var / log / LPD-erra: sh: mx # 0: \
: If = / usr / local / libexec / lpfilter:
RLP | impressora remota amostra: \
: Rm = freebie: sd = / var / spool / output / brinde: lf = / var / log / LPD-erra: \
: Rp = lp:

Vejamos isso em detalhes:

Todos os campos so delimitados por dois pontos (:).

Linhas de continuao requerem uma barra invertida (\). Observe particularmente que
necessita pontos no final de uma linha contnua, e outra no incio do
seguindo a linha.

A primeira linha de cada entrada especifica uma srie de nomes que voc pode usar para especificar
esta impressora quando se fala de lpr ou LPD. Os nomes so separados por barras verticais
smbolos |. Por tradio, o ltimo nome uma descrio mais detalhada, e voc
normalmente no us-lo para conversar com os programas.

Os campos a seguir descrevem capacidades, descries de como fazer algo.


Capacidades so descritas por uma de duas letras de palavras-chave e, opcionalmente, um parmetro, que
separado por um delimitador indicando o tipo do parmetro. Se o campo recebe uma string
parmetro, o delimitador =, E se ele tem um valor numrico, o delimitador #. Voc vai
encontrar uma descrio completa na pgina man.

A primeira entrada define uma impressora local, chamado lp, lj, ps e LaserJet locais 6MP
impressora. Por que tantos nomes? lp o padro, ento voc deve t-lo em algum lugar.
lj freqentemente usado para conversar com as impressoras que entendem linguagem LaserJet da HP (hoje
PCL), e ps pode ser usado para falar com uma impressora que compreende PostScript. A final
nome mais do que uma descrio.

printers.mm, v v4.17 (2003/04/02 06:48:05)

Configurao da impressora

266

A entrada lp = / dev/lpt0 informa o spooler o nome do dispositivo fsico ao qual


a impressora est conectada. Impressoras remotas no tm dispositivos fsicos.

sd diz o spooler o diretrio no qual deseja armazenar trabalhos aguardando impresso. Este
diretrio deve existir, o spooler no cri-lo.

lf = / var / log / LPD-erra especifica o nome de um arquivo no qual o log de erros.

O parmetro mx diz lpd o tamanho mximo de um trabalho carretel em kilobytes. Se o trabalho for
maior do que este valor, lpd recusa-se a imprimir. No nosso caso, no queremos limitar a
tamanho. Fazemos isso atravs da criao mx a 0.

se diz lpd para aplicar um filtrar para o trabalho antes de imprimir. Ns vamos olhar para isso abaixo.

Na entrada de impressora remota, rp = lp diz lpd o nome da impressora no controle remoto


mquina. Isso no tem que ser o mesmo nome como o nome da mquina local.

sh uma bandeira dizendo lpd omitir uma pgina de cabealho. Se voc no tem isso, cada trabalho ser
ser precedida por uma pgina descritor. Em um ambiente pequeno, isso no faz sentido
e apenas um desperdcio de papel.

Na entrada de impressora remota, rm = freebie diz lpd para enviar os dados para o aparelho
chamado freebie. Este poderia ser um nome de domnio totalmente qualificado, claro.

Impresso remota
Em uma rede, voc no precisa ter uma impressora em cada mquina, voc pode imprimir em outro
mquina (que pode ser uma impressora) na mesma rede. H um par de coisas para
considerar:

Existem duas mquinas envolvidas na impresso remoto, o cliente ('' local'') e mquina
o servidor (remoto'''') mquina.

No cliente, voc pode especificar o nome da mquina do servidor com o rm capacidade e


especificar o nome da impressora com o rp capacidade. Voc no especificar qualquer lp
(Nome do dispositivo) de capacidade. Uma entrada tpica pode ter esta aparncia:
lp | HP LaserJet 6MP em freebie: \
: Rm = freebie: sd = / var / spool / output / brinde: lf = / var / log / LPD-erra: mx # 0:

Na mquina cliente, voc tambm deve criar o diretrio de spool, / Var/spool/outcolocar / freebie no exemplo acima.

Na mquina do servidor, voc no precisa fazer nada especial com o / Etc / printcap
arquivo. Voc precisa de uma entrada para a impressora especificada na mquina do cliente rp entrada, da
curso.

Na mquina do servidor voc deve permitir o acesso spooler da mquina cliente. Para um
Mquina BSD, voc adiciona o nome da mquina para o arquivo / Etc / hosts.lpd em uma linha
si.

printers.mm, v v4.17 (2003/04/02 06:48:05)

267

Captulo 15: Impressoras

Filtros Spooler
Provavelmente a entrada menos inteligvel no arquivo de configurao na pgina 265 foi o se entrada.
Ele especifica o nome de um filtro de entrada, um programa atravs do qual o lpd passa o completo
imprimir dados antes de imprimir.
O que isso? Pode haver uma srie de razes. Talvez voc tenha dados em um
formato que no est apto para imprimir. Por exemplo, pode ser PostScript, e sua impressora pode
No entendo PostScript. Ou poderia ser o contrrio: sua impressora entende
apenas PostScript, ea entrada no PostScript.
H uma razo mais provvel para exigir um filtro, porm: a maioria das impressoras ainda emular o antigo
teletypes, para que eles exigem um caractere de retorno de carro (Ctrl-M ou M) para iniciar a
incio da linha, e um caractere de nova linha (Ctrl-J ou J) para avanar para a prxima linha.
UNIX usa apenas J, ento se voc copiar os dados a ele, voc est sujeito a ver um
efeito escada. Para
exemplo, ps pode dizer-lhe:
$ Ps
PID
2252
2287
2346

TT
p1
p1
p1

STAT
Ss
IW
R +

TEMPO
0:01.35
0:04.77
0:00.05

COMANDO
/ Bin / bash
e / etc / printcap
ps

Ao tentar imprimi-lo, no entanto, voc tem:


PID TT STAT

COMANDO DE TEMPO
2252 p1 Ss

0:01.35 / bin / bash


2287 p1 IW

O resto da pgina est vazia: voc passou ao largo da margem direita.


H um certo nmero de maneiras de resolver este problema:

Voc pode ser capaz de configurar a impressora para interpretar Ctrl-J tanto como nova linha e
voltar, e ignorar Ctrl-M. Verifique seu manual da impressora.

Voc pode ser capaz de emitir uma seqncia de controle para a impressora para cont-la para interpretar CtrlJ tanto como nova linha e voltar ao incio da linha, e para ignorar Ctrl-M. Para
exemplo, LaserJets e compatveis HP vai fazer isso se voc enviar-lhes o controle
seqncia ESC & K2G.

Voc pode escrever um filtro de entrada que transforma o trabalho de impresso para um formato que a impressora
entende. Ns vamos olhar para essa opo abaixo.

printers.mm, v v4.17 (2003/04/02 06:48:05)

Configurao da impressora

268

H um par de opes para o filtro de impresso. Uma delas, a partir da linha


manual, envia uma seqncia de controle LaserJet antes de cada trabalho. Coloque o seguinte shell
script / Usr / local / libexec / lpfilter:
#! / Bin / sh
printf "\ 033 & K2G" && cat && printf "\ f" && exit 0
exit 2

Figura 15-1: filtro de impresso simples


Esta abordagem no funciona bem com algumas impressoras, como o meu HP LaserJet 6MP,
que pode imprimir tanto PostScript e LaserJet (natural) formatos de forma aleatria. Eles fazem isso
atravs do reconhecimento do texto no incio do trabalho. Este filtro especial confunde-los
o envio de um cdigo de comando LaserJet, para que a impressora imprime o PostScript como se fosse simples
texto.
Neste tipo de situao, os filtros normais no so mais suficientes. Voc pode resolver o
problema com a porta apsfilter, que est na Coleo de Ports.

Iniciando o spooler
Como vimos acima, o daemon de impressora de linha lpd responsvel por imprimir os trabalhos em spool.
Por padro, ele no iniciado no momento da inicializao. Se voc raiz, voc pode inici-lo pelo nome:
# Lpd

Normalmente, no entanto, voc vai querer que ele seja iniciado automaticamente quando o sistema iniciado
up. Voc pode fazer isso definindo a varivel lpd_enable em / Etc / rc.conf :
lpd_enable = "YES"

# Execute o daemon de impressora de linha

Consulte a pgina 546 para mais detalhes sobre / Etc / rc.conf.


Voc tambm pode adicionar uma outra linha referindo-se ao daemon de impressora de linha para / Etc / rc.conf :
lpd_flags = ""

# Flags para o lpd (se habilitado).

Voc normalmente no precisa desta linha. Veja a pgina de manual para lpd para obter detalhes sobre as bandeiras.

Testando o spooler
Para testar o spooler, voc pode executar o lptest programa novamente. Desta vez, contudo, em vez de
envi-la diretamente para a impressora, voc envi-lo para o spooler:

printers.mm, v v4.17 (2003/04/02 06:48:05)

269

Captulo 15: Impressoras

Lptest $ 80 5 | lpr

O resultado deve ser parecido:


"# $% & '() * +, -./0123456789:;? <=> @ ABCDEFGHIJKLMNOPQRSTUVWXYZ [\] _'abcdefghijklmnop
"# $% & '() * +, -./0123456789:;? <=> @ ABCDEFGHIJKLMNOPQRSTUVWXYZ [\] _'abcdefghijklmnopq
# $% & '() * +, -./0123456789:;? <=> @ ABCDEFGHIJKLMNOPQRSTUVWXYZ [\] _'abcdefghijklmnopqr
$% & '() * +, -./0123456789:;? <=> @ ABCDEFGHIJKLMNOPQRSTUVWXYZ [\] _'abcdefghijklmnopqrs
% & '() * +, -./0123456789:;? <=> @ ABCDEFGHIJKLMNOPQRSTUVWXYZ [\] _'abcdefghijklmnopqrst

Soluo de problemas
Aqui est uma lista dos problemas mais comuns e como resolv-los.
Tabela 15-1: Problemas comuns da impressora
Problema
A impressora imprime, mas o ltimo
pgina no aparecer. O estado
mostra que a impressora ainda tem
dados no buffer. Depois de vrias
minutos, a ltima pgina pode
aparecer.

Causar
Seus dados de sada no ejetar a ltima pgina. O
impressora est configurada para esperar por uma explcita
pedido de ejeo (o ASCII Avano de personagem, CtrlL) ou para ejectar depois de um certo perodo de tempo.

As linhas de vagar direita


borda do papel e nunca so
visto novamente.

Este o efeito escada. Consulte a pgina 268 para uma


par de solues.

Caracteres individuais ou integrais


sees de texto esto faltando.

Este problema ocorre quase exclusivamente em impressoras seriais.


um resultado incorreto pgina aperto de mo-see 330
eo manual on-line para obter mais detalhes.

A sada completamente contido


caracteres aleatrios ininteligvel.

Em uma impressora serial, se os personagens aparecem lentamente,


e h uma predominncia dos personagens {|} ~,
isso provavelmente significa que voc configurou o
parmetros de comunicao incorretamente. Verifique a
manual on-line para uma soluo. Certifique-se de
no confunda este problema com o seguinte.

printers.mm, v v4.17 (2003/04/02 06:48:05)

Voc tem uma escolha quanto ao que fazer em relao a isso.


Normalmente, voc pode configurar a impressora, ou voc pode
tirar o filtro de impresso para imprimir um caractere de alimentao de forma a
o fim do trabalho. Figura 15-1 j faz isso,
esse o printf "\ f".

Soluo de problemas

Problema
O texto era legvel, mas deu
nenhuma relao com o que voc
quer,
ed para imprimir.

O visor da impressora mostra


que os dados esto a chegar, mas o
impressora no imprime nada.

270

Causar
Uma possibilidade que voc est enviando PostScript
sada para a sua impressora. Veja a discusso na pgina
271 para verificar se ele PostScript. Se for, a sua impressora
no interpret-lo corretamente, ou porque ele
no entende PostScript, ou porque tem
sido confundido (veja a discusso na pgina 268 para
uma razo).
Voc pode estar enviando um texto normal para um PostScript
impressora que no entende o texto normal. Neste
caso, tambm, voc vai precisar de um filtro para converter o texto em
PostScript o oposto do problema anterior.
Alternativamente, sua porta de impressora podem no ser interrupting corretamente. Isso no vai parar a impressora
impresso, mas pode demorar at 20 minutos para imprimir uma
pgina. Voc pode corrigir isso emitindo o seguinte
de comando, o qual coloca a impressora / Dev/lpt0 em
modo de polling:
# Lptcontrol-p

Voc recebe a mensagem LPR: canno criar freebie / .seq

Voc esqueceu de criar o diretrio de spool


/ Var / spool / output / brinde.

Usando o spooler
Usando o spooler relativamente simples. Em vez de enviar dados diretamente para a impressora,
voc tubo para o spooler lpr de comando. Por exemplo, aqui o mesmo comando de impresso,
Primeira impresso diretamente para a impressora, e em segundo lugar atravs do spooler:
# Ps Waux> / dev/lpt0
$ Ps Waux | lpr

Observe a diferena de prompt: voc tem que ser raiz escrever diretamente para a impressora, mas
normalmente, qualquer um pode escrever para o spooler. O spooler cria um trabalho a partir destes dados. Voc
pode olhar para a fila de impresso atual com o lpq programa:
$ Lpq
espera de lp para ficar pronto (offline?)
Posio
Arquivos de Trabalho
Proprietrio
313 (entrada padro)
1 grog
30 (entrada padro)
2 grog
31 (entrada padro)
3 yvonne
0 (entrada padro)
4 raiz

Tamanho Total
9151 bytes
3319 bytes
3395 bytes
2611 bytes

printers.mm, v v4.17 (2003/04/02 06:48:05)

271

Captulo 15: Impressoras

A primeira linha um aviso de que lpd atualmente no possvel imprimir. Levar a srio. Neste
exemplo, a impressora foi deliberadamente desligado para que a fila no mudar de um
exemplo para o outro.
Normalmente, os nmeros das tarefas aumentar sequencialmente: Neste exemplo particular veio de trs
mquinas diferentes. Voc pode obter mais detalhes com o -L opo:
$ Lpq-l
espera de lp para ficar pronto (offline?)
grog: 1
(Entrada padro)

[Trabalho 313freebie.example.org]
9151 bytes

(Entrada padro)

[Trabalho 030presto.example.org]
3319 bytes

Yvonne: 3
(Entrada padro)

[Trabalho 031presto.example.org]
3395 bytes

root: 4

[Trabalho 000bumble.example.org]
2611 bytes

grog: 2

(Entrada padro)

Remover trabalhos de impresso


s vezes, voc pode querer excluir sada carretel sem imprimi-lo. Voc no precisa fazer
isso por causa de um erro de configurao da impressora: basta desligar a impressora, corrigir a configurao do
erro, e ligue a impressora novamente. O trabalho deve ser impresso corretamente. Mas se voc
descobrir que o trabalho de impresso em si contm lixo, voc pode remov-lo com o lprm
programa. Primeiro, porm, voc precisa saber o nmero da tarefa. Supondo que a lista que temos
acima, pode querer remover a tarefa 30:
# Lprm 30
dfA030presto.example.org dequeued
cfA030presto.example.org dequeued
# Lpq
espera de lp para ficar pronto (offline?)
Posio
Arquivos de Trabalho
Proprietrio
313 (entrada padro)
1 grog
31 (entrada padro)
2 yvonne
0 (entrada padro)
3 raiz

Tamanho Total
9151 bytes
3395 bytes
2611 bytes

Se a impressora estiver desligada, pode demorar algum tempo para o lprm para ser concludo.

PostScript
Ns encontramos o termo PostScript vrias vezes. uma Descrio da pgina
Linguagem. Com ele, voc pode transmitir documentos detalhados como este livro eletrnico
e imprimi-los exatamente da mesma forma elsewhere.1 PostScript muito popular
formato da World Wide Web, e web browsers como Netscape geralmente imprimir em
Formato PostScript.
1. Esta , de facto, a forma como este livro foi enviado para as impressoras.
printers.mm, v v4.17 (2003/04/02 06:48:05)

PostScript

272

A maioria dos outros formatos de documentos descrevem os recursos de impresso especiais com seqncias de escape,
comandos especiais que comeam com um caractere especial. Por exemplo, a HP LaserJet e
Formatos PCL usar o ASCII ESC personagem (0x1b) para indicar o incio de uma fuga
seqncia. PostScript usa a abordagem oposta: a menos que definido em contrrio, o contedo
de um arquivo PostScript so comandos, e os dados de impresso est entre parnteses.
Documentos PostScript comear com algo como:
% PS-Adobe-3.0
%% Creator: groff verso 1.10
%% CreationDate: Sex Out 31 18:36:45 1997
%% DocumentNeededResources: Smbolo da fonte
%% + Fonte Courier
%% + Fonte Times-Roman
%% DocumentSuppliedResources: imagens de arquivo / vipw.ps
%% Pages: 32
%% PageOrder: Ascend
%% Orientao: Retrato
%% EndComments
%% BeginProlog

Este o prlogo (O incio) da sada PostScript para este captulo. O


prlogo de um programa desse tipo pode ser vrias centenas de kilobytes longa se inclui
fontes ou imagens embutidas. Um tamanho mais comum de cerca de 500 linhas.
Voc pode fazer uma srie de coisas com PostScript:

Voc pode olhar para ele com gv, que est na Coleo de Ports. Ns vamos olhar para esta opo
abaixo.

Muitas impressoras entender PostScript e imprimi-lo diretamente. Se isso acontecer, voc provavelmente
sabe sobre ele, j que uma opo cara. Em caso de dvida, consulte a sua impressora
manual.

Se a impressora no entende PostScript, voc pode imprimir com a ajuda de


ghostscript. O apsfilter porto faz isso para voc.

Exibir com gv
gv parte do porto estao de trabalho imediato que discutimos na pgina 93. Para visualizar um arquivo
com gv, basta inici-lo:
Gv $ filename &

Se voc no especificar um nome de arquivo, voc recebe uma tela em branco. Voc pode abrir um arquivo
janela pressionando o, aps o qual voc pode selecionar os arquivos e exibi-los. Figura 15-2
mostra a exibio de uma verso preliminar desta pgina com uma janela aberta sobreposta no topo
direita. O Abrir Arquivo janela contm um campo na parte superior na qual voc pode digitar o nome
de um arquivo. Alternativamente, as colunas abaixo, com barras de rolagem, permite que voc navegue na
diretrio atual e os diretrios pais.
A janela abaixo mostra o texto da pgina anterior (aproximadamente) no lado direito.
Em vez das barras de rolagem, existe uma zona de deslocamento abaixo do texto Salvar Marcado. Voc pode rolar
a imagem em todas as direes, marcando a caixa com o boto esquerdo do mouse e movendo
printers.mm, v v4.17 (2003/04/02 06:48:05)

273

Captulo 15: Impressoras

ao redor. No canto superior esquerdo esto os botes de menu que voc pode selecionar com o boto esquerdo do mouse. Nota
Tambm o boto 1.414 na parte superior da janela de: esta a ampliao da imagem.
Voc pode mud-lo, selecionando este boto: um menu aparece e lhe d uma gama de
ampliaes para escolher.
A coluna direita destes botes uma lista de nmeros de pgina. Voc pode selecionar uma pgina
nmero com o boto do meio do mouse. Voc tambm pode obter uma exibio alargamento da
rea de texto ao redor do cursor do mouse, pressionando o boto esquerdo.

Figura 15-2: gv exibio

Impresso com ghostscript


Se a impressora no suporta PostScript, voc ainda pode imprimir alguma semelhana do
texto pretendido com a ajuda de ghostscript. Os resultados so muito aceitvel com moderna
impressoras a laser e jato de tinta, menos com impressoras matriciais mais velhos.
Para imprimir em uma impressora especial, voc primeiro precisa encontrar um motorista para ele em ghostscript. Em
Neste contexto, o termo motorista significa que algum cdigo dentro ghostscript que converte os dados
em algo que a impressora possa imprimir.
Ns j vimos como usar / Etc / printcap. Neste caso, vamos precisar de um filtro de entrada, um
script ou programa que transforma os dados PostScript em uma forma que a impressora
entende. A entrada em / Etc / printcap praticamente o mesmo para todas as impressoras:
printers.mm, v v4.17 (2003/04/02 06:48:05)

PostScript

274

ps | HP OfficeJet 725 com PostScript: \


: Lp = / dev/lpt0: sd = / var / spool / output / color: lf = / var / log / LPD-erra: sh: mx # 0: \
: If = / usr / local / libexec / psfilter:

Esta entrada define uma impressora chamada ps. O comentrio afirma que uma HP OfficeJet, mas
isso s um comentrio. Obviamente, voc deve escolher um comentrio que corresponda impressora
voc realmente tem.
A impressora est conectada a / Dev/lpt0, a primeira impressora paralela. Spool dados so coletados em
o diretrio / Var / spool / output / cor. Voc deve criar esse diretrio, ou a impresso
falhar, e dependendo do que voc usar para imprimir, voc no pode mesmo ver as mensagens de erro.
Eles tambm no aparecem no arquivo de log, que neste caso / Var / log / LPD-erra.
A entrada importante na ltima linha, que se refere entrada do filtro / Usr/local/libexec/psfiltrar. Este arquivo contm as instrues para converter o PostScript em algo que o
impressora pode entender. Por exemplo, para a HP OfficeJet que estamos falando aqui,
contm:
#! / Bin / sh
/ Usr / local / bin / gs-sDEVICE = PCL3-q-sPaperSize = a4-dNOPAUSE-sOutputFile = -

Estas opes de estado:

Usar ghostscript dispositivo PCL3. Este o driver para escolher para mais Hewlett Packard
impressoras jato de tinta. Vamos ver alternativas para outras impressoras abaixo.

O arquivo de sada stdin (Ver pgina 127). Por conveno, uma srie de programas de utilizar o
carter - para representar o stdout stream.

-Q meios silencioso. Normalmente ghostscript gera uma mensagem no arranque, e que muitas vezes
sadas de outras mensagens informativas tambm. Neste caso, estamos usando-o como um filtro, para
ns no queremos qualquer sada, exceto o que ns imprimimos.

No faa pausas entre as pginas. Se voc no especificar este parmetro, ghostscript espera
para uma tecla no final de cada pgina.

O tamanho do papel o formato A4 internacional. Por padro, o ghostscript produz


sada para o padro americano 8,5 10 polegadas'' letra'' papel.

O personagem - por si s informa ghostscript que a entrada de stdin. Juntamente com


a sada para stdout, isso faz com que ghostscript funcionar como um filtro.

Qual driver?
O exemplo anterior usou o driver para a HP DeskJet. Bem, para ser mais preciso,
utilizado um de uma infinidade de drivers disponveis. Voc pode encontrar mais informaes no HTML
documentao do driver em / Usr/local/share/ghostscript/7.05/doc/Devices.htm. A 7.05 em
o nome refere-se liberao de ghostscript, que vai mudar.
A documentao no o mais fcil de ler. Provavelmente mais velha do que sua impressora, assim
h uma boa chance de que ele no vai mencionar o seu modelo de impressora especfica. Voc pode precisar
experimentar um pouco antes de fazer as coisas funcionarem do jeito que voc quiser.
printers.mm, v v4.17 (2003/04/02 06:48:05)

275

Captulo 15: Impressoras

Drivers de impressora para DeskJets


H pelo menos seis conjuntos de drivers para DeskJets HP. Eles esto todos descritos em
Devices.htm, mas o resumo a seguir podem ajudar:

Hewlett Packard fornecer seus prprios drivers. Alm de ghostscript, eles requerem
software de servidor que voc pode instalar a partir da coleo de ports (/ usr / ports / impresso / hpijs).

Em seguida, vm trs pilotos independentemente escritas diferentes para modelos especficos de


DeskJet, provavelmente tudo agora obsoleto. Se voc reconhecer a sua impressora ou algo
similar em um deles, que uma boa primeira escolha.

Em seguida, vem o genrico PCL3 condutor que foi usado no exemplo acima. No
mencionadas na documentao.

Finalmente, UniPrint uma estrutura completamente diferente para o condutor de um nmero de diferentes
marcas de impressora. Ela exige uma linha de comando ligeiramente diferente, e vamos olhar para ele
separadamente abaixo.

Se voc estiver usando uma DeskJet, voc tem a escolha. Infelizmente, no h nenhuma maneira de saber
o que melhor at que tentei todos eles. Consideraes semelhantes se aplicam a outras marcas de
impressora.
motoristas UniPrint
O UniPrint motoristas tm um tipo um pouco diferente da interface. Eles esto descritos
para o fim da mesma Devices.htm arquivo. Para us-los, mudar o driver
especificao como no exemplo a seguir, que se refere a uma impressora Epson
#! / Bin / sh
/ Usr / local / bin / gs @ stc500ph.upp-q-sPaperSize = a4-dNOPAUSE-sOutputFile = --- c quit

As diferenas aqui so:

O nome do driver (stc500ph.upp) especificado de forma diferente.

A linha termina com um comando para o prprio (-c sair) condutor. O significado exato
no documentadas, embora seja fcil de adivinhar.

Quais drivers?
Outro problema que voc pode encontrar que possvel especificar os controladores que deseja
na sua ghostscript executvel quando voc construir o porto. bem possvel que o
condutores descritos Devices.htm no existem em seu sistema. Para descobrir, correr ghostscript
interativamente com o -H (Ajuda) opo:
$ Gs-h
GNU Ghostscript 7,05 (2002-04-22)
Copyright (C) 2002 artofcode LLC, Benicia, CA. Todos os direitos reservados.
Uso: gs [opes] [file1.ps file2.ps ...]
Mais frequentemente utilizados parmetros: (voc pode usar # no lugar de =)
-DNOPAUSE sem pausa aps pgina
|-Q
'Tranquilos', menos mensagens
-G <width> x <height> tamanho da pgina em pixels
|-R <res> pixels / polegada resoluo
-SDEVICE = <devname> dispositivo select | exit-dBATCH aps o ltimo arquivo
-SOutputFile = <file> selecione o arquivo de sada: - para stdout, | comando para tubo,
printers.mm, v v4.17 (2003/04/02 06:48:05)

PostScript

276

inserir% d ou% ld para pgina #


Formatos de entrada: PostScript PostScriptLevel1 PostScriptLevel2 PDF
Dispositivos disponveis:
x11 x11alpha x11cmyk x11gray2 x11gray4 x11mono x11rg16x x11rg32x md2k
md5k md50Mono md50Eco md1xMono bj10e bj10v bj10vh bj200 bjc600 bjc800
lips2p lips3 lips4 bjc880j lips4v UniPrint dmprt epag escpage lp2000
alc8600 alc8500 alc2000 alc4000 lp8800c lp8300c lp8500c lp3000c lp8200c
lp8000c epl5900 epl5800 epl2050 epl2050p epl2120 lp7500 lp2400 lp2200
lp9400 lp8900 lp8700 lp8100 lp7700 lp8600f lp8400f lp8300f lp1900 lp9600s
lp9300 lp9600 lp8600 lp1800 mjc180 mjc360 mjc720 mj500c deskjet djet500
cdeskjet cdjcolor cdjmono cdj550 cdj670 cdj850 cdj880 cdj890 cdj1600
cdj970 laserjet ljetplus ljet2p ljet3 ljet3d ljet4 ljet4d cljet5 cljet5c
cljet5pr lj5mono lj5gray pj pjxl pjxl300 pxlmono pxlcolor PCL3 hpdj ijs
NPDL RPDL gdi bmpmono bmpgray bmp16 bmp256 bmp16m bmp32b bmpsep1 bmpsep8
faxg3 faxg32d faxg4 jpeg jpeggray pcxmono pcxgray pcx16 pcx256 pcx24b
pcxcmyk pdfwrite bit bitrgb bitcmyk pbm pbmraw pgm pgmraw pgnm pgnmraw
pnm pnmraw ppm ppmraw pkm pkmraw pksm pksmraw pngmono pnggray png16
png256 png16m psmono psgray psrgb pswrite epswrite tiffcrle tiffg3
tiffg32d tiffg4 tiff12nc tiff24nc tifflzw tiffpack nullpage
Pesquisa caminho:
. : / Opt / lib / ghostscript: / opt / lib / ghostscript / fonts:
/ Opt / lib / ghostscript / Garamond: / usr/local/share/ghostscript/7.05/lib:
/ Usr / local / share / ghostscript / fonts
Para mais informaes, consulte / usr/local/share/ghostscript/7.05/doc/Use.htm.
Reportar bugs para bug-gs@ghostscript.com, utilizando o formulrio do Bug-form.htm.

PDF
PDF, ou descrio de pgina Format, um formato mais recente para a transferncia de documentos de impresso.
Como PostScript, se trata da Adobe, e est se tornando cada vez mais importante como um
formato de intercmbio de documentos na Internet.
H duas maneiras de lidar com PDF:

Usar Acrobat Reader, disponvel na Coleo de Ports como / usr/src/print/acroread5.


O 5 refere-se verso do Acrobat Reader e pode mudar. Acrobat Reader
proprietrio, mas ele est disponvel de graa, infelizmente, apenas na forma binria. uma
maneira conveniente de visualizar documentos PDF, e pode imprimi-los em PostScript.
Isso significa que voc tambm pode us-lo para converter PDF para PostScript.

ghostscript tambm compreende PDF, e capaz de converter entre PostScript


PDF e em ambas as direes. ghostscript fornece dois scripts, pdf2ps e ps2pdf,
que funcionam como um front-end para ghostscript para tornar o trabalho mais fcil.

Ao contrrio de PostScript, um editor est disponvel para PDF (Acrobat, o irmo mais velho do Acrobat
Reader). Infelizmente, proprietria e no livre, e pior ainda, ele no est disponvel para
FreeBSD.

printers.mm, v v4.17 (2003/04/02 06:48:05)

Neste captulo:
Rede de camadas
A rede fsica
conexo
Ethernet
LANs sem fio
A referncia
rede

16
Redes e os
Internet

Nesta parte do livro vamos olhar para a parte de mais rpido crescimento da indstria: redes,
e, nomeadamente, o Internet.
A indstria tem visto muitos tipos diferentes de software de rede:

Anos atrs, a CCITT iniciou um grupo de recomendaes para protocolos individuais.


O CCITT agora chamado a ITU-T, e suas recomendaes de comunicao de dados
no ter sido um sucesso estrondoso. O mais conhecido provavelmente recomendao X.25,
, que ainda tem uma grande seguinte em algumas partes do mundo. Um pacote foi X.25
disponvel para FreeBSD, mas morreu por falta de amor. Se voc precisar, voc vai precisar
investir muito trabalho para faz-lo funcionar.

IBM introduziu seu Systems Network Architecture, SNA, dcadas atrs. ainda
continua forte em lojas da IBM. FreeBSD tem suporte mnimo para ele no Token Ring
pacote que est sendo desenvolvido no FreeBSD-CURRENT.

Mquinas UNIX incio tinha uma espcie primitiva de rede chamado UUCP, para UNIX para
UNIX Copy. Ele correu atravs de linhas telefnicas discadas ou conexes seriais dedicadas. Sistema
V ainda chama este sistema Utilitrios de Rede Bsica, ou BNU. Apesar de sua primitividade e, apesar da Internet, ainda existem algumas aplicaes onde UUCP
faz sentido, mas este livro discute-lo mais longe.

O Protocolos de Internet foram desenvolvidos por os EUA Defesa de Pesquisa Avanada


Agncia de Projetos (DARPA) para a sua ARPANET rede. O software foi originalmente
desenvolvido no incio dos anos 80 por BBN eo CSRG na Universidade da Califrnia em
Berkeley. O primeiro lanamento foi generalizada com o sistema operacional 4.2BSD-o

netintro.mm, v v4.16 (2003/04/02 06:48:55)

277

O FreeBSD completo

278

av de FreeBSD. Aps a introduo de IP, a ARPANET gradualmente


mudou seu nome para Internet.
O Internet Protocol geralmente abreviado para IP. Muitas vezes as pessoas se referem a ele como TCP / IP,
que significa Transmission Control Protocol / Internet Protocol. Na verdade, o TCP
apenas um dos muitos outros protocolos que rodam em cima de IP. Neste livro, refiro-me ao IP
protocolo, mas claro que o FreeBSD inclui todos os outros protocolos TCP e padro.
A implementao IP fornecido com o FreeBSD a tecnologia mais madura voc
pode encontrar em qualquer lugar, a qualquer preo.
Nesta parte do livro, vamos olhar apenas para os protocolos da Internet. Graas sua
fundo, FreeBSD particularmente poderoso concorrente nesta rea, e ns vamos entrar em
um monte de detalhes sobre como configurar e operar as redes e servios de rede. No
captulos seguintes, vamos dar uma olhada em:

Como a Internet funciona, o que veremos no restante deste captulo.

Como configurar conexes de rede local no captulo 17, Configurando o local de


rede.

Como selecionar um Provedor de Servios de Internet no Captulo 18, Conexo Internet.

Como usar PPP no Captulo 20, Configurando o PPP.

Como configurar os servios de nome de domnio no captulo 21, O Servio de Nome de Domnio.

Como se proteger contra intrusos no Captulo 22, Firewalls, aliasing IP e


proxies. Este captulo descreve tambm os servidores proxy e Network Address Translation.

Como resolver problemas de rede no Captulo 23, Depurao de rede.

No captulo 25, Acesso rede bsica: servidores vamos dar uma olhada no final do servidor da mesma
servios. Alm disso, veremos Samba, um servidor de Internet comum da Microsoft
File System, ou CIFS.

O correio eletrnico to importante que ns dedicamos dois captulos a ele, Captulo 26,
Correio eletrnico: clientes e do captulo 27, Correio eletrnico: servidores.

Como usar o hardware no Captulo 19, Comunicao serial.

A maioria dos servios de rede vm em pares, um cliente que solicita o servio, e um servidor
que fornece. No captulo 24, Acesso rede bsica: clientes vamos olhar para o cliente
lado da World Wide Web ('' navegador''), a execuo do comando sobre a rede,
incluindo ssh e telnet, copiar arquivos atravs da rede, e montagem de arquivos remoto
sistemas com NFS.

O restante deste captulo aborda o referencial terico dos Protocolos de Internet e


Ethernet. Voc pode configurar a rede sem entender nada disso, contanto que voc e
seu hardware no cometer erros. Esta a abordagem a maioria dos sistemas comerciais
tomar. mais ou menos como atravessar um lago em um conjunto de degraus, com os olhos vendados. Neste livro,
Eu ter uma abordagem diferente: em discusso a seguir, voc vai estar dentro com a ao,
no no exterior olhando atravs de uma janela. Pode parecer estranho no incio, mas uma vez
voc se acostumar com isso, voc vai encontr-lo muito menos frustrante.
netintro.mm, v v4.16 (2003/04/02 06:48:55)

279

Captulo 16: Redes e Internet

Rede de camadas
Um dos problemas com as redes que elas podem ser olhados a partir de um nmero de
diferentes nveis. Os usurios finais de PCs acessar a World Wide Web (WWW), e muitas vezes
suficiente que eles chamam de Internet. Isso simplesmente errado. No outro extremo da escala est
o Link Layer, o ponto de vista que voc vai ter quando voc cria uma conexo para outro
mquina.
Anos atrs, a International Standards Organization surgiu com a idia de uma criana de sete
modelo de camadas de redes, muitas vezes chamado de Modelo de referncia OSI. Por OSI e no ISO?
OSI stands para Interconexo de sistemas abertos. Desde o seu lanamento, tornou-se claro
que no mapeia muito bem para redes modernas. W. Richard Stevens apresenta melhor
camadas em TCP / IP Illustrated, Volume 1, pgina 6, mostrado aqui na Figura 16-1.
Camada de aplicao
Camada de transporte
Camada de rede
Camada de enlace

Figura 16-1: modelo de rede Four-layer


Ns vamos olhar para essas camadas de baixo para cima:

O Camada de enlace responsvel por mais baixo nvel de comunicao, entre


mquinas que esto fisicamente conectados. Os tipos mais comuns de conexo so
Ethernet e linhas telefnicas. Esta a nica camada associada com o hardware.

O Camada de rede responsvel pela comunicao entre mquinas que no sejam


fisicamente ligado. Para esta funo, os dados devem passar por outras mquinas
que no esto directamente envolvidas na dados. Esta funo chamada roteamento. Veremos
a forma como ele funciona no Captulo 17.

O Transport Layer responsvel pela comunicao entre quaisquer dois processos,


independentemente das mquinas em que so executados.

O Camada de Aplicao define o formato usado por aplicaes especficas, tais como e-mail
ou na web.

netintro.mm, v v4.16 (2003/04/02 06:48:55)

Rede de camadas

280

A camada de enlace
Os dados sobre a Internet dividido em pacotes, tambm chamados datagramas, que pode ser
transmitida de forma independente um do outro. O camada de enlace responsvel por obter pacotes
entre dois sistemas que esto ligados uns aos outros. O caso mais trivial, um ponto-arede de pontos, uma conexo fsica, onde todos os dados enviados pela linha chega ao
outra extremidade. Mais geralmente, no entanto, vrios sistemas esto ligados rede, como em
uma rede Ethernet. Isso causa um problema: como que cada sistema sabe o que destinado para isso?
IP resolve este problema atravs da incluso de um cabealho do pacote em cada pacote IP. Considere o
cabealho algo como a informao que voc escreve do lado de fora de um envelope:
endereo para enviar, endereo de retorno, instrues de entrega. No caso de IP, os endereos
so dgitos de 32 bits, que so convencionalmente representados decimal notao: o valor
de cada byte convertido em decimal. Os quatro valores so escritos separados por pontos.
Assim, o endereo hexadecimal 0xdf932501 seria normalmente representada como
223.147.37.1.
UNIX usa a notao 0x num nmero que representa um nmero hexadecimal. O uso vem
da linguagem de programao C.

Como veremos no captulo 23, que torna a depurao muito mais fcil se entendermos o
estrutura dos datagramas, ento vou mostrar algumas das mais comuns neste captulo.
A Figura 16-2 mostra a estrutura de um cabealho de IP.
0
0
4
8
12
16

31
Verso

Cabealho
Tipo de servio
IP
comprim
identificao
ento

Tempo para viver

Comprimento total em bytes


flags

compensar fragmento

Protocolo

Header Checksum

Endereo IP de origem
Endereo IP de destino

Figura 16-2: Cabealho IP


Ns s vamos olhar para alguns desses campos, para o resto, ver TCP / IP Illustrated, Volume 1.

O Verso campo especifica a verso atual do IP. Esta atualmente 4. A mais recente
padro IPv6, Nmero da verso 6, que est atualmente em uma rpida implementao
fase. Cabealhos IPv6 so muito diferentes das mostradas aqui.

O tempo para viver campo especifica quantas vezes o pacote pode ser transmitido de uma
sistema para o outro. Cada vez que passada para um outro sistema, este valor
decrementado. Se chegar a 0, o pacote descartado. Isto evita que os pacotes
circulante no lquido para sempre como o resultado de um lacete de encaminhamento.
netintro.mm, v v4.16 (2003/04/02 06:48:55)

281

Captulo 16: Redes e Internet

O protocolo especifica o tipo de pacote. Os protocolos mais comuns so TCP


e UDP, o que veremos na seo sobre a camada de rede.

Finalmente chegou o endereo de origem, o endereo do remetente e do destino


de endereos, o endereo do destinatrio.

A camada de rede
A principal finalidade da camada de rede o de assegurar que os pacotes so entregues ao
corrigir receptor quando no est directamente ligado ao remetente. Esta funo geralmente
chamado roteamento.
Imagine-roteamento para ser semelhante a um sistema postal: se voc quiser enviar uma carta a algum
voc no v muitas vezes, voc coloca a carta em uma caixa de correio. As pessoas ou mquinas que lidam
a letra olhar para o endereo e quer entreg-la pessoalmente ou encaminh-lo para algum
outra pessoa que est mais prxima do receptor, at que, finalmente, algum entrega.
Alguma vez voc j recebeu uma carta que foi postado meses atrs? Ser que voc quer saber onde
eles esconderam todo esse tempo? As chances so de que tem sido enviado em crculos algumas vezes.
Isso o que pode acontecer na Internet, se a informao de roteamento incorreta, e isso
por isso todos os pacotes tm um tempo para viver campo. Se ele no pode entregar um pacote, o Internet Protocol
simplesmente cai (esquece-la). Voc pode encontrar paralelos com correio fsico tambm.
Geralmente no aceitvel a perda de dados. Vamos ver como podemos evitar faz-lo na prxima
seco.

A camada de transporte
O camada de transporte responsvel pela comunicao end-to-end. O endereo IP apenas
identifica a interface para o qual os dados so enviados. O que acontece quando chega l? L
pode haver um grande nmero de processos que utilizam a ligao. O cabealho de IP no contm
informaes suficientes para entregar mensagens para usurios especficos dentro de um sistema, por isso dois
protocolos adicionais foram implementadas para lidar com os detalhes de comunicao
entre os usurios finais''.'' 1 Esses usurios finais se conectam rede atravs de portos, ou
Os pontos finais de comunicaes, no interior de mquinas individuais.
TCP
O Transmission Control Protocol ou TCP, o chamado protocolo confivel: garante
que os dados chega a seu destino, e se isso no acontecer, ele envia outra cpia. Se ele no pode ficar
por meio depois de um grande nmero de pases (14 tentativas e cerca de 10 minutos), d-se, mas
no tem a pretenso de dados consegui. Para executar este servio, o TCP tambm conexo
orientado : Antes que voc possa enviar dados com TCP, voc deve estabelecer uma conexo, que
conceitualmente semelhante a abrir um arquivo.
Para implementar este protocolo, os pacotes TCP incluem um Cabealho TCP aps o cabealho de IP, conforme
mostrado na Figura 16-3. Este nmero ignora as possveis opes que seguem o cabealho IP.
O deslocamento do cabealho do TCP, mostrado como 20, realmente especificado pelo valor do PI
1. Na prtica, esses usurios finais so processos.
netintro.mm, v v4.16 (2003/04/02 06:48:55)

Rede de camadas

282

Comprimento do campo de cabealho, no primeiro byte do pacote. Este apenas um campo de 4 bits, por isso
contados em palavras de 32 bits: para um cabealho de 20 bytes, que tem o valor de 5.
0
0

31
Verso

4
8

Cabealho
Tipo de servio
IP
comprim
identificao
ento

Tempo para viver

compensar fragmento
Header Checksum

Endereo IP de origem
Endereo IP de destino

16
porta de origem

20

porto de destino
nmero de seqncia

24

nmero de confirmao

28

36

flags

Protocolo

12

32

Comprimento total em bytes

TCP Header

comprim
ento

reservado
Checksum TCP

flags

tamanho da janela
ponteiro urgente

Figura 16-3: cabealho TCP com o cabealho IP


Um nmero de campos so de interesse ao depurar as conexes de rede:

O nmero de seqncia deslocado do ltimo byte o byte que foi enviado para o outro
lado.

O nmero de confirmao a posio de byte do ltimo byte que recebeu


do outro lado.

O tamanho da janela o nmero de bytes que podem ser enviados antes um reconhecimento
necessria.

Estes trs valores so utilizados para assegurar a transmisso eficiente e confivel de dados. Para cada
conexo, o TCP mantm uma cpia do nmero de reconhecimento recebido maior
do outro lado, e uma cpia de todos os dados que o outro lado ainda no reconhecido receptora.
Ele no envia mais de tamanho da janela bytes de dados para alm deste valor. Se isso no acontecer
receber uma confirmao dos dados transmitidos dentro de um perodo de tempo predeterminado, normalmente um
segundo, ele envia todos os dados no reconhecidos e outra vez em cada vez maior
intervalos. Se ele no pode transmitir os dados aps cerca de dez minutos, ele desiste e fecha a
ligao.

netintro.mm, v v4.16 (2003/04/02 06:48:55)

283

Captulo 16: Redes e Internet

UDP
O User Datagram Protocol, ou UDP, diferente: um protocolo no confivel. Ele envia
dados para fora e nunca se importa se ele chega ao seu destino ou no. Ento, por que us-lo se
confivel? mais rpido e, portanto, mais baratos. Consider-lo um lixo Mail Delivery Agent: quem
se importa se voc tem CD-ROM junk AOL desta semana ou no? Haver outro em
correio da prxima semana. Uma vez que no precisa responder, UDP sem conexo: voc pode apenas
enviar uma mensagem off com UDP sem se preocupar em estabelecer uma conexo pela primeira vez. Para
exemplo, a rwhod daemon transmisses de informaes resumidas sobre um sistema na
LAN a cada poucos minutos. No caso improvvel de que uma mensagem se perde, no grave:
outro vir em breve.
0
0
4
8

31
Verso

Cabealho
Tipo de servio
IP
comprim
identificao
ento

Tempo para viver

Comprimento total em bytes


flags

Protocolo

compensar fragmento
Header Checksum

Endereo IP de origem

12

Endereo IP de destino

16
20

porta de origem

porto de destino

24

nmero de seqncia

verificao

Figura 16-4: Cabealho UDP com o cabealho IP

Atribuio de portas e servios de Internet


A porto simplesmente um nmero de 16 bits atribudo a processos especficos e que representa o
origem e de destino pontos finais de uma conexo especfica. Um processo pode solicitar
para ser conectado a uma porta especfica, ou o sistema pode atribuir um que no est em uso.
RFC 1700 define uma srie de portas conhecidas que so utilizados para solicitar os servios especficos
a partir de uma mquina. Em uma mquina UNIX, estes so fornecidos por daemons que ouvir nesta
nmero de porta-em outras palavras, quando uma mensagem chega a este nmero da porta, o IP
software passa para eles, e process-la. Estas portas esto definidos no arquivo
/ Etc / services. Aqui est um trecho:

netintro.mm, v v4.16 (2003/04/02 06:48:55)

Rede de camadas

284

Os servios de rede #, estilo Internet


#
Os nmeros de porta # conhecida
#
ftp 21/tcp
# File Transfer [Control]
ssh 22/tcp
# Secure Shell Entrar
ssh 22/udp
# Secure Shell Entrar
telnet 23/tcp
mail # Simples de Transferncia de Correio
smtp 25/tcp
smtp 25/udp
mail # Simples de Transferncia de Correio
domnio 53/tcp
# Domain Name Server
domnio 53/udp
# Domain Name Server
...
http 80/tcp
www www-http
# World Wide Web HTTP
http 80/udp
www www-http
# World Wide Web HTTP

Este ficheiro tem um formato relativamente simples: a primeira coluna um nome de servio, e o segundo
coluna contm o nmero da porta e o nome do servio (quer tcp ou UDP).
Opcionalmente, nomes alternativos para o servio podem seguir. Neste exemplo, smtp pode tambm
ser chamado mail e http tambm pode ser chamado www.
Quando o sistema iniciado, ele inicia os daemons especficos. Por exemplo, se voc estiver executando
e-mail, voc pode comear a se sendmail como um daemon. Quaisquer pedidos de correio chegando na porta 25
(SMTP) ser, ento, encaminhado para sendmail para processamento.

As conexes de rede
Voc pode identificar uma conexo TCP com exclusividade por cinco parmetros:

O endereo IP de origem.

O nmero da porta de origem. Estes dois parmetros so necessrios de modo que a outra extremidade
a conexo pode enviar respostas de volta.

O endereo IP de destino.

O protocolo (TCP).

O nmero da porta de destino.

Quando voc configura uma conexo, voc especificar o endereo IP de destino eo nmero da porta,
e implicitamente tambm o protocolo. Seu sistema fornece o endereo IP de origem, que
bastante bvio. Mas onde que o nmero da porta de origem vem? O sistema
literalmente pega um fora de um chapu, que escolhe um nmero de porta no utilizado em algum lugar acima do
'' Mgica'' valor de 1024. Voc pode olhar para esta informao com netstat:
$ Netstat
Proto Recv-Q Send-Q Local Address
tcp4 0
0 presto.smtp
tcp4 0
0 presto.3312
tcp4 0
0 presto.2593
tcp4 0
0 presto.smtp

Endereo estrangeiro
203.130.236.50.1825
andante.ssh
hub.freebsd.org.ssh
www.auug.org.au.3691

(Estado)
ESTABELECIDO
ESTABELECIDO
ESTABELECIDO
ESTABELECIDO

Como voc pode ver, esta a viso de um sistema chamado presto. Vamos ver presto novamente na nossa
rede exemplo abaixo. Normalmente voc vai ver um monte mais conexes aqui. Para cada
conexo, o protocolo tcp4 (TCP sobre IPv4). A primeira linha mostra a ligao ao
porto smtp em presto a partir da porta 1825 em uma mquina com o endereo IP 203.130.236.50.
netintro.mm, v v4.16 (2003/04/02 06:48:55)

285

Captulo 16: Redes e Internet

netstat mostra o endereo IP neste caso, porque a mquina em questo no tem


reverter mapeamento DNS. Esta mquina o envio de uma mensagem de correio para presto. O segundo
e terceira linhas mostram as conexes de sada de presto portar ssh nos sistemas
andante e hub.freebsd.org. A ltima uma outra mensagem de e-mails recebidos de
www.auug.org.au. Graficamente, voc pode exibir a conexo entre presto e
www.auug.org.au assim:
presto

IP 223.147.37.2
Porto 25

TCP

IP 150.101.248.57
Porto 3691

www

Note-se que o nmero da porta smtp 25.


Por vrias razes, nem sempre possvel conectar-se diretamente da seguinte maneira:

Os padres da Internet definir uma srie de blocos de endereos IP como no roteveis. Nestes
casos, teremos que traduzir pelo menos os endereos IP para estabelecer a conexo. Este
tcnica , portanto, chamado Network Address Translation ou NAT E veremos
para ele no Captulo 22, na pgina 393.

Por razes de segurana, no pode ser aconselhvel fazer ligaes diretas para os servidores atravs
a Internet. Em vez disso, o nico acesso pode ser via uma sesso criptografada em um diferente
port. Esta tcnica chamado tunelamento, e vamos olhar para isso no Captulo 24, na pgina
422.

A conexo de rede fsica


A coisa mais bvia sobre a sua conexo de rede o que parece. Geralmente
envolve algum tipo de cabo de sair do seu computador, mas h uma similaridade nas extremidades.
O FreeBSD suporta interfaces de rede mais modernas:

A escolha mais popular para Redes Locais Ethernet, que transfere dados
entre uma srie de computadores a uma velocidade de 10 Mb / s, 100 Mb / s ou 1000 Mb / s (1
Gb / s). Veremos na seo seguinte.

Uma alternativa cada vez mais popular para Ethernet rede sem fio, especificamente
redes locais baseadas no padro IEEE 802.11. Vamos olh-los na pgina 291.

FDDI stands para Fiber Distributed Data Interface, e foi originalmente atropelado vidro
fibras. Em contraste com a Ethernet, ele correu a 100 Mb / s em vez de 10 Mb / s. Hoje em dia
Ethernet funciona a 100 Mb / s, bem como, e FDDI corre sobre o fio de cobre, de modo que o maior
diferena o protocolo. FreeBSD suporta FDDI, mas ns no vamos olhar para isso aqui.

Token Ring mais uma variedade de LAN, introduzido pela IBM. Nunca foi muito
popular no mundo UNIX. FreeBSD tem algum suporte para ele, mas um pouco
desigual, e no vamos olhar para ele neste livro.

1. Talvez ele no vai. Por exemplo, voc pode usar sem fio Ethernet, que transmite no rdio microondas
espectro.
netintro.mm, v v4.16 (2003/04/02 06:48:55)

A conexo de rede fsica

286

Provavelmente a conexo mais comum para a Wide Area Network atravs de um telefone
com um modem ou com DSL. Modems tm a vantagem de que voc tambm pode us-los
para conexes no-IP, tais como UUCP e com ligao directa (consulte a pgina 338), mas eles so
muito mais lento do que o DSL. Se voc usar um modem para se conectar Internet, voc quase
certamente usar o Protocolo Ponto a Ponto, PPP, que ns olhamos na pgina 339. Em
alguns casos obscuros que voc pode precisar usar o Serial Line Internet Protocol, SLIP, mas
realmente obsoleto.

Uma alternativa ao ADSL ou modem linhas rede de cabo, que usa cabo
servios de fornecimento de conectividade com a Internet. Em muitos aspectos, parece que Ethernet.

Em algumas reas, Redes Digitais de Servios Integrados (RDIS) so um atrativo


alternativa aos modems. Eles so muito mais rpido que os modems, tanto no tempo de configurao de chamada
e na capacidade de transmisso de dados, e so tambm muito mais fivel. FreeBSD
inclui o isdn4bsd embalagem, o qual foi desenvolvido na Alemanha e permite que o
conexo direta de baixo custo placas ISDN alems para FreeBSD. Em outras partes da
mundo, ISDN no rentvel, e tambm muito mais lento do que o ADSL e cabo.

Em algumas partes do mundo, links de satlite so de interesse. Na maioria dos casos, eles so
unidirecional: eles transferir dados a partir da Internet para o seu sistema (o downlink) e
exigir alguma outra conexo para obter dados de volta para a Internet (o uplink).

Se voc tem uma grande exigncia de Internet, voc pode encontr-lo adequado para se conectar
Internet atravs de um Linha dedicada, uma linha telefnica que fica permanentemente conectado. Este um
opo relativamente caro, claro, e no vamos discutir isso aqui, especialmente no que
As opes variam muito de pas para pas e de regio para regio.

A deciso sobre qual conexo WAN voc usar depende principalmente do sistema que voc
est se conectando, em muitos casos, uma Provedor de Servios de Internet ou ISP. Ns vamos olhar para ISPs
no Captulo 18.

Ethernet
No incio de 1970, a Xerox empresa fretou um grupo de pesquisadores em seu Palo Alto
Research Center (PARC) para debater o Office of the Future. Este grupo inovador
criou o mouse, a metfora da interface de janela e um sistema integrado, orientado a objeto
ambiente de programao chamada Smalltalk. Alm disso, um jovem engenheiro do MIT no
grupo chamado Bob Metcalfe surgiu com o conceito de que a base da moderna locais
rede de rea, o Ethernet. O protocolo Ethernet um pacote de difuso de baixo nvel
sistema de entrega que empregou a idia revolucionria que era mais fcil para reenviar os pacotes
que no chegou do que era para se certificar de todos os pacotes chegaram. H outra rede
sistemas de hardware l fora, a arquitetura do IBM Token Ring e Fiber Channel, para
exemplo, mas, de longe, o mais popular o sistema Ethernet em seus vrios hardware
encarnaes. Ethernet , de longe, a forma de rede de rea local mais comum. Tem
trs tipos:

netintro.mm, v v4.16 (2003/04/02 06:48:55)

287

Captulo 16: Redes e Internet

1. Originalmente, a Ethernet passou a 10 Mb / s em um nico cabo coaxial grosso, geralmente brilhante


de cor amarela. Este tipo de Ethernet muitas vezes referida como espesso Ethernet, tambm
chamado 10b5, e a interface de linha chamada AUI. Voc tambm pode ouvir o amarelo prazo
corda (Para amarrar computadores em conjunto), embora este termo no est limitado a Ethernet de espessura.
Thick Ethernet agora obsoleto: caro, difcil de colocar, e relativamente
no confivel. Exige 50 resistncias em cada extremidade do cabo para transmitir sinais
corretamente. Se voc deix-los fora, voc no vai ter um desempenho degradado: a rede
No ir funcionar em todos.
2. Como o nome sugere, thin Ethernet fino cabo coaxial, e de outra forma gosto bastante
espesso Ethernet. significativamente mais barato (assim, o termo Cheapernet), e a nica
desvantagem de espessura sobre Ethernet que os condutores no podem ser to longo. O cabo
chamado RG58, e os conectores dos cabos so chamados de BNC. Ambos os termos so freqentemente
utilizado para se referir a este tipo de ligao, como 10 Base 2. Voc ainda vai ver thin Ethernet
ao redor, mas uma vez que efetivamente obsoleto. Desempenho ruim, e no barato
de 100 Mb / s Ethernet. Como a espessura de Ethernet, todas as mquinas so ligadas por uma nica
cabo com terminadores em cada extremidade.
3. Ethernets modernos correr a at 1000 Mb / s atravs de cabos multi-pares chamados UTP, para
Par tranado no blindado. Par tranado significa que cada par de fios so torcidos para
minimizar externos eltricos influncia, afinal, as frequncias em um 1000 Mb / s
Ethernet esto subindo na faixa de UHF. Ao contrrio das ligaes coaxiais, onde todos
mquinas esto ligadas a um nico cabo, UTP conecta mquinas individuais para uma cubo
ou mudar, uma caixa que distribui os sinais. Vamos discutir a diferena entre um
hub e um switch na pgina 288. Voc tambm ouvir os termos 10BaseTP, 100BaseTP e
1000BaseTP.
Comparado com coaxial Ethernet, os cabos UTP so muito mais baratos, e so mais
fivel. Se voc danificar ou desconectar um cabo coaxial, toda a rede cai.
Se voc danificar um cabo UTP, voc s perde a uma mquina conectada a ele. No
para baixo lateral, UTP exige switches ou hubs, que custam dinheiro, mas o preo tem
diminuiu para o ponto onde mais barato comprar um switch barato e cabos UTP vez
que s o cabo RG58. UTP sistemas empregam uma arquitectura em estrela em vez de o
cadeia de estaes de coaxiais com terminadores. Voc pode conectar vrios switches
simplesmente invertendo as conexes em uma extremidade de uma ligao switch-interruptor. Em
Alm disso, UTP o nico meio atualmente disponvel que suporta 100 Mb / s
Ethernet.

Como Ethernet funciona


Um grande nmero de sistemas pode ser ligado a uma rede Ethernet. Cada sistema tem uma 48
endereo de bit, o chamado Endereo Ethernet. Endereos Ethernet so geralmente escritos em
bytes separados por dois pontos (:), por exemplo 0: a0: 24:37:0 d: 2b. Todos os dados enviados pela
Ethernet contm dois endereos: o endereo Ethernet do remetente e do Ethernet
endereo do destinatrio. Normalmente, cada sistema apenas responde a mensagens enviadas para ele ou para
um endereo de broadcast especial.
netintro.mm, v v4.16 (2003/04/02 06:48:55)

Ethernet

288

Voc tambm freqentemente ouvimos o termo Endereo MAC. MAC stands para Media Access
Controle e significa, portanto, o endereo usado para acessar a camada de enlace de rede. Para redes Ethernet I
preferem usar o termo mais exato Endereo Ethernet.
O facto de vrias mquinas so na mesma rede d origem a um problema:
obviamente apenas um nico sistema pode transmitir em qualquer momento, ou os dados iro ser ilegvel. Mas
como voc sincronizar os sistemas? Em redes Ethernet tradicionais, a resposta simples, mas
possivelmente surpreendente: tentativa e erro. Antes de qualquer interface transmite, ele verifica que o
rede inactivo in a especificao de Ethernet, isto chamado Carrier Sense.
Infelizmente, isto no suficiente: dois sistemas pode comear a enviar ao mesmo tempo. A
resolver este problema, ao mesmo tempo que envia, cada sistema verifica em seguida se pode ainda reconhecer o que
envio. Se ele no pode, ele assume que outro sistema comeou a enviar ao mesmo tempo
este denominado coliso. Quando ocorre uma coliso, ambos os sistemas parar de enviar, espere um
perodo de tempo aleatrio e tente novamente. Voc ver este mtodo conhecido como CSMA / CD
(Carrier Sense Acesso / Coliso mltipla Detect).
H um certo nmero de problemas com esta abordagem:

A interface precisa ouvir durante o envio, por isso no pode receber coisa alguma, embora seja
envio: ele est funcionando em half-duplex modo. Se pudesse enviar e receber ao mesmo
tempo (modo full-duplex), o throughput da rede poderia ser o dobro.

Quanto mais ativo da rede, as colises mais provvel ser. Isto atrasa as coisas
para baixo tambm, por vezes, at um ponto em que a rede transmite quase nenhum trfego.

Os sistemas mais na rede, menos a largura de banda disponvel para cada sistema.

Com as conexes ponto-a-ponto em uma rede baseada em UTP, voc pensaria que seria
ser possvel mudar um pouco isso. Afinal de contas, as conexes se parecem muito com o
mesmo fio que une dois modems juntos, e modems no tm colises, e eles
so executados em modo full-duplex. O problema o hub: se voc enviar um pacote para um hub, ele
no sabe qual conector para envi-lo para baixo, para que ele envia para todos eles, assim
imitando o antigo Ethernet. Para envi-lo apenas para o destino, seria necessrio analisar a
Endereo Ethernet em todos os pacotes e saber para onde envi-lo.
Isto o que um switch faz: ele aprende os endereos Ethernet de cada interface no
rede e utiliza esta informao para enviar pacotes para apenas a linha para a qual a interface
est ligado. No poderia ser mais do que um, se interruptores so em cascata. Isto significa tambm
que a linha pode ser executado em modo full-duplex.
Hoje em dia a diferena de preo entre os switches e hubs muito pequena; entrar em um
mercado de computadores e voc ver que os preos se sobrepem. Se possvel, compre um switch.
Transmisso de dados da Internet atravs de uma rede Ethernet tem um outro problema. Ethernet evoluiu
independentemente dos padres da Internet. Como resultado, a Ethernet podem transportar diferentes tipos
de trfego. Em particular, a Microsoft usa um protocolo chamado NetBIOS e Novell usa um
protocolo chamado IPX. Alm disso, endereos Internet so apenas 32 bits e seria
impossvel mape-los para endereos Ethernet, mesmo se eles eram do mesmo comprimento. O
resultar? Voc adivinhou, outro cabealho. A Figura 16-5 mostra um pacote de Ethernet levando um
Datagrama IP.
netintro.mm, v v4.16 (2003/04/02 06:48:55)

289

Captulo 16: Redes e Internet

Encontrar endereos Ethernet


Ento, ns enviar mensagens para interfaces Ethernet, definindo o endereo Ethernet correto no
cabealho. Mas como que vamos encontrar o endereo Ethernet? Todos os nossos pacotes IP usar endereos IP.
E no uma boa soluo para apenas estaticamente atribuir endereos Ethernet para endereos IP:
em primeiro lugar, no haveria problemas se uma placa de interface ou um endereo de IP foi mudado, e
em segundo lugar, vrias placas podem ter o mesmo endereo IP.
Endereo de destino superior
Resto do endereo de destino
Endereo de origem superior
Resto do endereo de origem
Verso

Cabealho IP
comprimento

Tipo de quadro

Tipo de servio

identificao
Tempo para viver

Comprimento total em bytes


flags

Protocolo

compensar fragmento
Header Checksum

Endereo IP de origem
Endereo IP de destino
porta de
origem

porto de destino
nmero de seqncia
nmero de confirmao

TCP Header

comprimento

reservado

flags

tamanho da janela

Checksum TCP

ponteiro urgente
Dados

Figura 16-5: quadro Ethernet com TCP datagrama


A soluo escolhida a Address Resolution Protocol, normalmente chamado ARP. ARP envia
uma mensagem no endereo de broadcast Ethernet dizendo efetivamente'' que tem um endereo IP
223.147.37.1? Diga-me o seu endereo Ethernet.'' A mensagem enviada na transmisso
endereo, de modo que cada sistema na rede recebe. Em cada mquina, o protocolo ARP verifica
o endereo IP especificado com o endereo IP da interface que recebeu o pacote. Se
forem iguais, as respostas da mquina com a mensagem'' Eu sou IP 223.147.37.1, meu Ethernet
endereo 00: a0: 24:37:0 d: 2b''
netintro.mm, v v4.16 (2003/04/02 06:48:55)

Ethernet

290

Quais so os sistemas em que Ethernet?


Mltiplos sistemas podem ser acessados atravs de uma Ethernet, ento deve haver algum meio de um
sistema para determinar quais outros sistemas esto presentes na rede. Pode haver uma
muitas delas, vrias centenas, por exemplo. Voc poderia manter uma lista, mas o sistema tem que
determinar a interface para cada pacote, e uma longa lista que poderia retardar as coisas
para baixo. O mtodo preferido o de especificar uma alcance de endereos IP que pode ser alcanado atravs
uma interface especfica. O computador funciona em binrio, para uma das funes mais fceis de
executar um lgico e. Como resultado, voc especificar o intervalo por uma mscara de rede: o
sistema considera todos os endereos em que um conjunto especfico de bits tm um valor especial para ser
acessvel atravs da interface. O conjunto especfico de bits chamado endereo de interface.
Por exemplo, vamos olhar para a frente para a rede de referncia na pgina 294 e considerar a
rede local, que tem o endereo de rede 223.147.37.0 ea mscara de rede
255.255.255.0. O valor de 255 significa que cada bit do byte definido. A lgica e
funo diz'' se um pouco especfica definida em ambos os operadores, definir o bit de resultado para um, caso contrrio, definir
para 0.'' Figura 16-6 mostra como o sistema cria um endereo de rede do IP
endereo 223.147.37.5 ea mscara de rede 255.255.255.0.
11 0 11111

1 00 1 00 11

00 1 00 1 0 1

00000101

Endereo IP

11 1 11111

1 11 1 11 11

11 1 11 1 1 1

00000000

Mscara de rede

11 0 11111

1 00 1 00 11

00 1 00 1 0 1

00000000

Endereo Net

Figura 16-6: Mscara Net


O resultado o mesmo que o endereo de IP para os primeiros trs bytes, mas o ltimo byte 0:
223.147.37.0.
Isto pode parecer desnecessariamente complicado. Uma maneira mais fcil de olhar para ele para dizer que o 1
bits da mscara de rede descrever qual parte do endereo a parte de rede ea 0 pedaos
descrever qual parte representa os hosts da rede.
Teoricamente voc poderia escolher sua rede bits da mscara de forma aleatria. Na prtica, claro
que faz mais sentido fazer mscaras de rede uma sequncia de binrios bits 1 seguidos por
uma sequncia de binrios 0 bits. Tornou-se tpica para abreviar a mscara de rede para o
nmero de bits 1. Assim, a mscara de rede 255.255.255.0, com 24 bits de conjunto e 8 bits no
definido, abreviado para / 24. O / personagem sempre parte da abreviatura.

Classes de endereos
Quando os protocolos da Internet foram introduzidas pela primeira vez, incluram o conceito de um padro
mscara de rede. Estas categorias de endereo foram chamados classes de endereos. As seguintes classes
so definidos no RFC 1375:

netintro.mm, v v4.16 (2003/04/02 06:48:55)

291

Captulo 16: Redes e Internet

Tabela 16-1: Classes de endereos


Endereo Rede
Classe alcance mscara
255.0.0.0
A 0-127
255.255.0.0
B 128-191
255.255.255.0
C 192-207
255.255.255.240
F 208-215
G
H
K
D
E

216-219
220-221
222-223
224-239
240-255

(Reservado)
255.255.255.248
255.255.255.254
(Multicast)
(Reservado)

Rede
Hospedeiro
endereo endereo Nmero de
pedaos peda sistemas
os
/8
16777216
24
/ 16
65536
/ 24
16
256
/ 28
8
16
4
/ 29
/ 31

3
1

8
2

Este mtodo no mais utilizado para especificar mscaras lquidas, apesar de o software ainda defaults
estes valores, mas utilizado para alocar redes. Alm disso, voc vai ouvir com frequncia
o termo Rede de classe C para se referir a uma rede com 256 endereos no intervalo de 192-223.
Este uso remonta a antes RFC 1375.

Endereos roteado
Na ocasio, voc pode querer ter endereos que no so visveis na Internet global,
ou por razes de segurana ou porque voc quer correr Network Address Translation (ver
pgina 393). RFC 1918 prev trs faixas de endereos que no devem ser encaminhados:
10.0.0.0 / 8 (Com ltimo endereo 10.255.255.255), 172.16.0.0/12 (Com ltimo endereo
172.31.255.255) e 192.168.0.0/16 (com ltimo endereo
192.168.255.255).

LANs sem fio


Um problema bvio com Ethernet que voc precisa de um cabo. medida que mais e mais mquinas
estiverem instalados, o cabeamento pode se tornar um pesadelo. particularmente inconveniente para
laptops: o cabo de rede restringe onde voc pode usar a mquina.
Placas de rede sem fio tm sido em torno de algum tempo, mas nos ltimos anos eles
tornaram-se particularmente popular. Placas modernas so construdas em torno da srie IEEE 802.11
de normas.
A srie 802 de normas abrangem quase todos os dispositivos de rede, no deixe que o nmero 802 sugerem
redes sem fio. 802.3 Ethernet , por exemplo.

Eles so geralmente cartes PCMCIA (PC Card), apesar de algumas placas PCI tambm esto disponveis.
Atualmente voc est sujeito a se deparar com os seguintes tipos de cartes:

netintro.mm, v v4.16 (2003/04/02 06:48:55)

LANs sem fio

292

802.11 FHSS Cartes (Frequency Hopping Spread Spectrum), que funcionam em at 2


Mb / s. Estes so agora obsoletas, mas ainda FreeBSD suporta a placa Aviator WebGear
com a raio motorista.

802.11 DSSS Cartes (Discrete Sequence Spread Spectrum), que tambm so executados em at 2
Mb / s. Estes tambm so obsoletos.

802.11b DSSS cartes, que so executados em at 11 Mb / s. Eles podem interagir com o


lentas 802,11 cartes de DSSS, mas no com cartes de FHSS.

802.11a cartes, que so executados em 54 Mb / s. Eles usam uma modulao chamada Ortogonal
Frequency Division Multiplexing ou OFDM, e correr na banda de 5 GHz. Eles no so
compatvel com cartes antigos. No momento da escrita, eles no tm conseguido
penetrao de mercado significativo. FreeBSD no apoi-los, no entanto, apesar de que pode
ter mudado com o tempo voc ler isto.

802.11g cartes so os mais novos. Como 802.11a, os que correm em 54 Mb / s, e eles so


no suportado. Novamente, isso pode ter mudado no momento em que voc l este. Como
802.11b, eles correm na banda de 2,4 GHz.

A maioria das placas atuais so 802.11be funciona at 11 Mb / s. Vamos concentrar-los em


o resto desta seo. Eles operam na faixa de 2,4 GHz, que compartilhado com um nmero
de outros servios, incluindo alguns telefones portteis e fornos de microondas. Este tipo de
telefone porttil pode interromper completamente uma rede sem fio. Interferncia e gama so
problemas graves: redes sem fio geralmente no so to confiveis quanto as redes cabeadas.
Placas wireless podem operar em at trs modos diferentes:

Normalmente, eles interagir com um ponto de acesso, tambm chamado de uma estao de base. A base
estao normalmente conectado a uma rede externa, de modo que tambm funciona como um gateway.
Ao contrrio de redes Ethernet, no entanto, todo o trfego na rede passa atravs da estao de base. Este
arranjo chamado Basic Service Set ou BSS.
As redes podem ter vrias estaes de base que so normalmente ligados entre si por um
Ethernet com fio. Se a mquina com o fio se move em torno do carto, as estaes de base
negociar com a mquina para decidir qual estao base controla o carto. Neste
maneira, as mquinas podem cobrir grandes distncias sem perder conexo de rede.
Este arranjo chamado de Estendida Basic Service Set ou EBSS.
Este modo de operao, com ou sem um EBSS, chamado modo gerenciado,
modo de infra-estrutura ou Modo BSS.

Em redes menores, os cartes podem interagir diretamente. Este modo de operao chamada
-ponto a ponto, modo ad-hoc ou Modo IBSS (Por Independent Basic Service Set).

Finalmente, alguns cartes de suportar um mtodo chamado Modo ad-hoc demonstrao Lucent, que alguns
Implementaes BSD usados para chamar modo ad-hoc. Mas no o mesmo que o anterior
mtodo, e que o princpio o mesmo, eles no podem interoperar. Este modo
no padronizada, e h problemas significativos de interoperabilidade com ele, por isso mesmo, se
disponvel, voc deve usar o modo IBSS.
netintro.mm, v v4.16 (2003/04/02 06:48:55)

293

Captulo 16: Redes e Internet

Como as redes sem fio coexistem


As redes sem fio tm uma srie de questes que no afetam redes Ethernet. Em particular,
vrias redes podem compartilhar o mesmo espao geogrfico. Na maioria das grandes cidades voc encontrar
que praticamente toda a rea compartilhada por vrias redes. Isto levanta uma srie de
questes:

H apenas tanta largura de banda disponvel. Como o nmero de aumento de redes, o


gotas de transferncia.
No h nenhuma soluo completa para este problema, mas feito um pouco mais fcil pela
disponibilidade de vrias frequncias de operao. Dependendo do pas, 802.11b
cartes podem ter entre 11 e 14 canais de frequncia. Se a sua rea tem um monte de trfego
sobre a freqncia que voc est usando, voc pode ser capaz de resolver o problema mudando-se para
outra frequncia. Isso no quer dizer que isso muitas redes podem coexistir no
mesmo espao: como o nome espectro de disperso indica, o sinal de divagar, quer
lado da frequncia base, e na prtica, voc pode usar apenas trs ou quatro distintas
canais.

Cartes em uma determinada rede precisa ter uma maneira de identificar o outro.
802.11 resolve esta questo, exigindo uma identificao de rede, chamado de Service Set
Identificador ou SSID. Todas as redes tm um SSID, estaes de base vai embora freqentemente
aceitar conexes de cartes que fornecem um SSID em branco. SSIDs no oferecem qualquer
melhoria na segurana: seu nico propsito a identificao da rede.

Cartes em uma determinada rede precisam se proteger contra a espionagem por pessoas que
no pertencem rede.
O padro 802.11 oferece uma soluo parcial para este problema, opcionalmente, criptografar o
pacotes. Vamos olhar para esta questo abaixo.

Encryption
Como mencionado acima, a segurana um grande problema em redes sem fio. A criptografia
fornecida chamado Wired Equivalent Privacy ou WEP, e no muito bom. Todo o mundo
conexo com a rede precisa saber a chave WEP, por isso, se algum perde a permisso para
acessar a rede (por exemplo, quando mudar de emprego), as chaves WEP precisa ser
alteradas, o que constitui um srio problema administrativo. Em alguns casos, completamente
impraticvel: se voc quiser acessar uma rede sem fio em um aeroporto ou um caf (onde
eles esto se tornando cada vez mais comum), no prtico usar uma chave WEP. Na verdade,
quase todas essas redes de acesso pblico no usar a criptografia em tudo.
Como se isso no fosse ruim o suficiente, o algoritmo WEP falho. Dependendo do
circunstncias, pode levar menos de 10 minutos para quebr-la. No confiar nele.
Ento, como voc se proteger? A melhor soluo , evidentemente, no usar wireless
redes para o trabalho confidencial. Se voc tem que usar uma rede sem fio, certifique-se de que
nada confidenciais so criptografados end-to-end, por exemplo, com um ssh tnel, que
veremos na pgina 422.
netintro.mm, v v4.16 (2003/04/02 06:48:55)

LANs sem fio

294

A rede de referncia
Um dos problemas em falar sobre as redes que existem tantos tipos diferentes de
conexo de rede. Para simplificar as coisas, este livro baseia em uma das mais freqentes
ambientes: um nmero de computadores ligados entre si por uma LAN Ethernet com um
nica porta de entrada para a Internet. Figura 16-7 mostra o layout da rede para que
se referir no resto deste livro.
Rede sem fio 802.11b

acessar
ponto

andante
laptop

wi0 192.168.27.17

xl0 192.168.27.1

freebie

bumble

presto

rl0 223.147.37.1

dc0 223.147.37.2

Ethernet local
Endereo 223.147.37.0
Domnio example.org

xl0 223.147.37.3

esperar

fxp0 223.147.37.4

dc0 223.147.37.5

gw
Router

modem

tun0 139.130.136.133

Conexo rede
223.147.38.0

modem

ppp0 139.130.136.9

modem

PPP link, net 139.130.136.0

ppp3 139.130.136.129

router
free-gw

rl0 139.130.237.117

Ethernet do ISP
Endereo 139.130.237.0
Domnio example.net

xl0 139.130.237.65

de entrada
porta
igw

xl0 139.130.237.3

ns

fddi0 139.130.249.201

a Internet

Figura 16-7: Rede de Referncia

netintro.mm, v v4.16 (2003/04/02 06:48:55)

295

Captulo 16: Redes e Internet

Esta figura contm uma grande quantidade de informaes, que vamos examinar em detalhe no curso de
o texto:

As caixas na linha superior representam os sistemas na rede local example.org:


freebie, presto, bumble, e esperar.

A linha de baixo a Ethernet local.


A rede tem o endereo
223.147.37.0. Tem um total de 256 endereos (Classe'' C''), assim que a mscara de
rede
255.255.255.0.

As mquinas deste Ethernet pertencem ao domnio example.org. Assim, uma plena


nome bumble bumble.example.org. Ns vamos olhar para esses nomes no captulo 21.

As ligaes dos sistemas para a Ethernet so identificadas por dois valores de: a
esquerda o nome de interface, e direita o endereo associado com a interface
nome.

Mais abaixo, o diagrama o roteador, gw. Ele tem duas interfaces: DC0 interfaces para
a Ethernet, e tun0 interfaces para a linha de PPP para o ISP. Cada interface tem um
endereos diferentes.

A metade inferior do diagrama mostra parte da rede do ISP. Tem tambm um


Ethernet, e seu roteador muito parecido com o nosso. Por outro lado, ela
interfaces para uma terceira rede atravs da mquina igw. A julgar pelo nome do
interface, um FDDI conexo consulte a pgina 285 para mais detalhes.

O ISP executado um servidor de nomes na mquina ns, abordar 139.130.237.3.

presto tem um ponto de acesso sem fio conectado a ele. O diagrama mostra um laptop,
andante, ligado atravs de uma interface de NAT.

As extremidades das redes Ethernet so endurecidas. Isto representa o terminadores necessria no


no final de uma Ethernet coaxial. Ns conversamos sobre eles na pgina 287. Na verdade, esta
uma rede comutada de 100 Mb / s, mas eles ainda so convencionalmente representados
desta forma. Voc pode pensar nas redes Ethernet como os interruptores que controlam cada
rede.

netintro.mm, v v4.16 (2003/04/02 06:48:55)

Neste captulo:
Rede
com configurao
sysinstall
Manual da rede
configurao
Automtico
com configurao
DHCP
Configurando o PC Card
placas de rede
Configurando wireless
networking
Roteamento
Configurao de rota do
ISP
Olhando para o
tabelas de roteamento
Encaminhamento de
pacotes
Configurao
resumo

17
Configurando o local de
rede

No captulo 16 vimos os conceitos bsicos que cercam networking BSD. Neste


captulo e os dois seguintes, vamos olhar para o que precisa fazer para configurar uma rede,
primeiro manualmente, automaticamente. Configurando PPP ainda muito mais difcil
de configurar uma rede Ethernet, e eles exigem mais pr-requisitos, por isso vamos dedicar
Captulo 20, para essa questo.
Neste captulo, vamos olhar primeiro para example.org na rede de referncia, na pgina 294, desde
o mais fcil de configurar. Depois disso, vamos olhar para o que necessria informao adicional para
configurar as mquinas em example.net.

Configurao de rede com sysinstall


Para configurar uma rede, voc deve descrever a sua configurao para o sistema. O sistema
rotinas de inicializao que discutimos na pgina 524 incluem uma parcela significativa que define
se o ambiente de rede. Alm disso, o sistema contm um nmero de padro IP
arquivos de configurao que definem a viso da rede do seu sistema. Se voc no configurar
a rede quando instalou seu sistema, voc ainda pode faz-lo agora. Entrar como raiz e
comear sysinstall. Selecione o ndice, interfaces de rede. Voc vai ver o menu
da Figura 17-1, que o mesmo como mostrado na Figura 6-4, na pgina 97. Em um padro de 80x25
exibi-lo requer rolagem para ver o menu inteiro. A nica placa de rede real sobre esta
lista xl0, a placa Ethernet. Os outros so hardware padro que tambm pode ser utilizado como
interfaces de rede.
netsetup.mm, v v4.15 (2003/04/02 06:50:16)

297

Configurao de rede com sysinstall

298

Figura 17-1: menu de configurao de rede


Escolha a placa Ethernet, xl0 Voc fica com uma pergunta sobre se voc quiser usar o IPv6
configurao. Este livro que no discute IPv6, assim responder No. Em seguida, voc obter uma pergunta
sobre a configurao DHCP. Discutimos configurao DHCP na pgina 302. Se voc j
tenho um servidor DHCP configurado, voc pode preferir responder Sim a esta questo, que tudo
voc precisa fazer. Se voc responder No, o prximo menu nos pede para definir os parmetros de
internet.
Figura 17-2 mostra o menu de configurao de rede aps preencher os valores.

Figura 17-2: menu de configurao de rede

netsetup.mm, v v4.15 (2003/04/02 06:50:16)

299

Captulo 17: Configurar a rede local

Especifique o nome do host local totalmente qualificado. Quando voc guia para a Domnio: campo, o
domnio preenchido automaticamente. Optamos por chamar essa mquina presto, eo
domnio example.org. Em outras palavras, o nome completo da mquina -presto.exam
ple.org. O endereo IP 223.147.37.2. Nesta configurao, todo o acesso parte externa
mundo passa por gw.example.org, que tem o endereo IP 223.147.37.5. O nome
servidor est localizado no mesmo hospedeiro, presto.example.org. Se o nome do servidor no est em execuo
quando esta informao necessria, preciso especificar todos os endereos em formato numrico, como
mostrado.
O que acontece se voc no tem um nome de domnio? Se voc est se conectando ao global
Internet, voc deve sair e comear uma pgina 318. Mas, entretanto, no falso
lo. Basta deixar os campos em branco. Se voc no est se conectando Internet, claro,
no faz muita diferena o nome que voc escolher.
Como habitual para uma rede classe C, a mscara de rede 255.255.255.0. Voc no precisa preencher
nesta informao, se voc deixar este campo sem preencher-lo, sysinstall insere-lo para
voc. Normalmente, como neste caso, voc no precisa de quaisquer opes adicionais para ifconfig.
sysinstall salva as informaes de configurao no / Etc / rc.conf. Quando o sistema iniciado, a
scripts de inicializao usar esta informao para configurar a rede. Tambm, opcionalmente, o inicia
I