2. ● Conceitos Básicos
História, Modelo de Desenvolvimento, Licença e Família BSD
● Instalação do FreeBSD
Hardware, Imagem de Instalação e Sysinstall
● Primeiros Passos
Usuários e Grupos, Pacotes, Networking, Código Fonte e Ports
● Customização Inicial
Recompilação do Sistema e Kernel
● Modificação do Ambiente
Performance, Portabilidade e Ambientes Desktop
● Documentação
● Suporte ao Projeto
Instalação e Configuração de um Ambiente FreeBSD – Vinícius Zavam – Universidade de Fortaleza
3. Conceitos Básicos
● História
○ 1969 – 1974
AT&T Bell Labs, Multics, Ken Thompson e UNIX
Universidade da Califórnia – Berkeley
● 1975 – 1993
Bill Jolitz, Jordan Hubbard, Nate Williams e Rod Grimes (386BSD)
David Greenman & FreeBSD
Walnut Creek CD-ROM (FreeBSD 1.0 ~ Net/2 4.3BSD)
● 1994 – 1999
Novell, Berkeley, FreeBSD 2.0 ~ 4.4BSD-Lite e RELENG_2_2
Internet Service Providers, Yahoo!, Warner Bros e Estúdios Manex
Apple, MAC OSX, 3.5.1-STABLE e Série 4
● 2000 – 2003
Core Team, Matt Dilon e Maiores Transformações no Código
UFS2, Marshall Kirk McKusick, Packet Filter e 5.1-RELEASE
● 2004 – 2010
FreeBSD 6 e Série 7, 7.3-STABLE
Otimizações de Performance Significativas, ULE2/SMP & ZFS
8.0-RC3, 8.0-RELEASE, DNSSEC e 9.0-CURRENT (HEAD) .
Instalação e Configuração de um Ambiente FreeBSD – Vinícius Zavam – Universidade de Fortaleza
4. Conceitos Básicos
● Modelo de Desenvolvimento
○ Core Team e Engenharia de Releases
○ Source Commiters, Ports Commiters e Colaboradores
● Licença
○ Regentes da Universidade da Califórnia – Berkeley
○ Inicialmente Composta de 4 Cláusulas
○ Cláusula de Propaganda
○ Guerras Tolas e Compatibilidade Entre Licenças
○ FreeBSD e Licença BSD de 2 Cláusulas
Instalação e Configuração de um Ambiente FreeBSD – Vinícius Zavam – Universidade de Fortaleza
5. Conceitos Básicos
● “The FreeBSD Copyright”
Copyright 1994-2009 The FreeBSD Project. All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided
that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice, this list of conditions and the
following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the
following disclaimer in the documentation and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY THE FREEBSD PROJECT ``AS IS'' AND ANY EXPRESS OR
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
EVENT SHALL THE FREEBSD PROJECT OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
OF THE POSSIBILITY OF SUCH DAMAGE.
The views and conclusions contained in the software and documentation are those of the authors and
should not be interpreted as representing official policies, either expressed or http://www.freebsd.org/copyright/freebsd-licens
implied, of the FreeBSD
html
Project. Instalação e Configuração de um Ambiente FreeBSD – Vinícius Zavam – Universidade de Fortaleza
6. Conceitos Básicos
● Família BSD
○ Sistemas Considerados “Populares”
NetBSD, OpenBSD e FreeBSD
Apple OSX
PC-BSD
● Outros Membros da Família
Dragonfly BSD
Comixwall, pfSense e FreeNAS
Askozia PBX
Olive, FreeSBIE, DarwinOS, DesktopBSD e etc.
Instalação e Configuração de um Ambiente FreeBSD – Vinícius Zavam – Universidade de Fortaleza
7. Instalação do FreeBSD
● Requisitos de Hardware
○ Notas de Instalação
Arquiteturas Suportadas
Requisitos Mínimos – FreeBSD x86 – CPU=486, RAM=24Mb, HD=150Mb
Pré-requisitos da Instalação
● Providenciar Imagem de Instalação
○ Images ISO Bootaveis para CD/DVD
○ Imagens “Bootonly” e “Lifefs”
Gnome Baker, K3B, IMGBurn, CD Paranoia e etc.
● Imagens de Disquetes ou Dispositivos USB
UNetBootin, dd, cp e etc.
● Servidores de Instalação e Espelhos
FTP, HTTP, NFS, AFS, Rsync e etc.
Instalação e Configuração de um Ambiente FreeBSD – Vinícius Zavam – Universidade de Fortaleza
8. Instalação do FreeBSD
● Boot Inicial do FreeBSD
○ Imagem i386 de um CD para Instalação do Sistema
Booting from CD-Rom...
CD Loader 1.2
Building the boot loader arguments
Looking up /BOOT/LOADER... Found
Relocating the loader and the BTX
Starting the BTX loader
BTX loader 1.00 BTX version is 1.01
Console: internal video/keyboard
BIOS CD is cd0
BIOS drive C: is disk0
BIOS drive D: is disk1
BIOS 639kB/261120kB available memory
FreeBSD/i386 bootstrap loader, Revision 1.1
Loading /boot/defaults/loader.conf
/boot/kernel/kernel text=0x64daa0 data=0xa4e80+0xa9e40 syms=[0x4+0x6cac0+0x4+0x88e9d]
-
Instalação e Configuração de um Ambiente FreeBSD – Vinícius Zavam – Universidade de Fortaleza
9. Instalação do FreeBSD
● FreeBSD Boot Loader
Instalação e Configuração de um Ambiente FreeBSD – Vinícius Zavam – Universidade de Fortaleza
10. Instalação do FreeBSD
● Sysinstall
○ Especificação de Localidade
○ Configuração de Layout do Teclado
○ Consulta a Documentação da Release
○ Configuração Inicial de Opções do Sistema
○ Instalação Standard, Express ou Custom
○ Partição de Dispositivos de Discos Rígidos
○ Configuração da Rede
○ Habilitação e Configuração Inicial de Serviços de Rede
○ Configurações de Console e Mouse
○ Especificação de Fuso Horário
○ Instalação de Pacotes
○ Adição de Grupos e Usuários
etc.
Instalação e Configuração de um Ambiente FreeBSD – Vinícius Zavam – Universidade de Fortaleza
11. Instalação do FreeBSD
Instalação e Configuração de um Ambiente FreeBSD – Vinícius Zavam – Universidade de Fortaleza
12. Instalação do FreeBSD
Instalação e Configuração de um Ambiente FreeBSD – Vinícius Zavam – Universidade de Fortaleza
13. Instalação do FreeBSD
Instalação e Configuração de um Ambiente FreeBSD – Vinícius Zavam – Universidade de Fortaleza
14. Instalação do FreeBSD
Instalação e Configuração de um Ambiente FreeBSD – Vinícius Zavam – Universidade de Fortaleza
15. Instalação do FreeBSD
Instalação e Configuração de um Ambiente FreeBSD – Vinícius Zavam – Universidade de Fortaleza
16. Instalação do FreeBSD
Instalação e Configuração de um Ambiente FreeBSD – Vinícius Zavam – Universidade de Fortaleza
17. Instalação do FreeBSD
Instalação e Configuração de um Ambiente FreeBSD – Vinícius Zavam – Universidade de Fortaleza
18. Instalação do FreeBSD
Instalação e Configuração de um Ambiente FreeBSD – Vinícius Zavam – Universidade de Fortaleza
19. Instalação do FreeBSD
Instalação e Configuração de um Ambiente FreeBSD – Vinícius Zavam – Universidade de Fortaleza
20. Instalação do FreeBSD
Instalação e Configuração de um Ambiente FreeBSD – Vinícius Zavam – Universidade de Fortaleza
21. Instalação do FreeBSD
Instalação e Configuração de um Ambiente FreeBSD – Vinícius Zavam – Universidade de Fortaleza
22. Instalação do FreeBSD
Instalação e Configuração de um Ambiente FreeBSD – Vinícius Zavam – Universidade de Fortaleza
23. Instalação do FreeBSD
Instalação e Configuração de um Ambiente FreeBSD – Vinícius Zavam – Universidade de Fortaleza
24. Instalação do FreeBSD
Instalação e Configuração de um Ambiente FreeBSD – Vinícius Zavam – Universidade de Fortaleza
25. Instalação do FreeBSD
Instalação e Configuração de um Ambiente FreeBSD – Vinícius Zavam – Universidade de Fortaleza
26. Instalação do FreeBSD
Instalação e Configuração de um Ambiente FreeBSD – Vinícius Zavam – Universidade de Fortaleza
27. Instalação do FreeBSD
Instalação e Configuração de um Ambiente FreeBSD – Vinícius Zavam – Universidade de Fortaleza
28. Instalação do FreeBSD
Instalação e Configuração de um Ambiente FreeBSD – Vinícius Zavam – Universidade de Fortaleza
29. Instalação do FreeBSD
Instalação e Configuração de um Ambiente FreeBSD – Vinícius Zavam – Universidade de Fortaleza
30. Instalação do FreeBSD
Instalação e Configuração de um Ambiente FreeBSD – Vinícius Zavam – Universidade de Fortaleza
31. Instalação do FreeBSD
Instalação e Configuração de um Ambiente FreeBSD – Vinícius Zavam – Universidade de Fortaleza
32. Instalação do FreeBSD
Instalação e Configuração de um Ambiente FreeBSD – Vinícius Zavam – Universidade de Fortaleza
33. Instalação do FreeBSD
Instalação e Configuração de um Ambiente FreeBSD – Vinícius Zavam – Universidade de Fortaleza
34. Instalação do FreeBSD
Instalação e Configuração de um Ambiente FreeBSD – Vinícius Zavam – Universidade de Fortaleza
35. Instalação do FreeBSD
Instalação e Configuração de um Ambiente FreeBSD – Vinícius Zavam – Universidade de Fortaleza
36. Instalação do FreeBSD
Instalação e Configuração de um Ambiente FreeBSD – Vinícius Zavam – Universidade de Fortaleza
37. Instalação do FreeBSD
Instalação e Configuração de um Ambiente FreeBSD – Vinícius Zavam – Universidade de Fortaleza
38. Instalação do FreeBSD
Instalação e Configuração de um Ambiente FreeBSD – Vinícius Zavam – Universidade de Fortaleza
39. Primeiros Passos
● Serviços e Networking
○ /etc/defaults/rc.conf
Arquivo de Referência
● /etc/rc.conf
serviço_enable=“yes”
serviço_program=“/caminho/para/executavel”
serviço_flags=“-4 -u usuário -g grupo”
● Filtro de Pacotes e Firewall com FreeBSD
IPF – IP Filter
IPFW – IP Firewall
PF – Packet Filter
● Controle de Tráfego, Redundância e “Failover”
ALTQ
DummyNet
CARP
● Monitoramento de Dados e Tráfego
SNMPd, Nagios, OCS Inventory, NTop e Wireshark
NGrep, tcpdump, trafshow, iftop e etc.
Instalação e Configuração de um Ambiente FreeBSD – Vinícius Zavam – Universidade de Fortaleza
40. Primeiros Passos
● Instalação de Pacotes
○ Instalação, Deleção ou Listagem de Pacotes Instalados
Sysinstall
pkg_add, pkg_delete, pkg_info e pkg_version
● Meios e Mídias para Instalação
FTP, HTTP, NFS, AFS, RSync
CD/DVD, Disquete ou Dispositivo USB
● Configuração e Utilização das Ferramentas
Variáveis de Ambiente
Variáveis de Sistema
# setenv PACKAGEROOT ftp://ftp4.br.freebsd.org
Parâmetros Fornecidos
# pkg_add -r nome_do_pacote
Instalação e Configuração de um Ambiente FreeBSD – Vinícius Zavam – Universidade de Fortaleza
41. Primeiros Passos
● Atualização do Sistema
○ FreeBSD RELEASE, STABLE ou CURRENT
/usr/src/UPDATING
Stable vs. Current
● Ferramentas do Sistema
Sysinstall
CSup ou SVN
FreeBSD-UPDATE
Binários para x86 e amd64
Não é Possível Atualização de Stable e Current
Instalação e Configuração de um Ambiente FreeBSD – Vinícius Zavam – Universidade de Fortaleza
42. Primeiros Passos
● Coleção de Ports
○ Atualizar Coleção de Ports
/usr/src/UPDATING
CSup ou SVN, NFS, FTP, HTTP e etc.
PortSnap
● Ferramentas Específicas para Lidar com Ports
Portmanager, Portmaster, Portupgrade e Portsnap
VuXML e Portaudit
● Configuração e Utilização de Algumas Ferramentas
Variáveis Utilizadas
MASTER_SITE_OVERRIDE
PREFIX e WRKDIRPREFIX
Atualização da Coleção de Ports
# portsnap fetch
# portsnap extract
Instalação de um Port
# portmanager categoria/nome
Limpeza de Diretório
# portsclean -C
# portsclean -D
Instalação e Configuração de um Ambiente FreeBSD – Vinícius Zavam – Universidade de Fortaleza
43. Customização Inicial
● Compilação do Código Fonte
○ Procedimento de Atualização
# cd /usr/src
# make buildworld
# make buildkernel
# make installkernel
# mergemaster -p
# make installworld
# mergemaster
# reboot
Instalação e Configuração de um Ambiente FreeBSD – Vinícius Zavam – Universidade de Fortaleza
44. Customização Inicial
● Configuração e Instalação de Kernel
○ /usr/src/sys/ “arquitetura” /conf
Local das Configurações GENERIC
Arquivo NOTES Contém Configurações de Dispositivos, Módulos e Opções
● /usr/src/sys/ “arquitetura” /compile/ GENERIC
Diretório das Dependências do Kernel GENERIC
● Procedimento de Configuração e Instalação de Kernel Personalizado
# cd /usr/src/sys/i386/conf && cp GENERIC LAURA
# config LAURA
# ee LAURA
Configurar Arquivo LAURA
# cd /usr/src/sys/i386/compile/LAURA
# make depend
# cd /usr/src
# make KERNCONF=LAURA kernel
# reboot
Instalação e Configuração de um Ambiente FreeBSD – Vinícius Zavam – Universidade de Fortaleza
45. Modificação do Ambiente
● Performance e Portabilidade
○ /etc/make.conf
NO_FEATURE = “yes|no”
KERNCONF = “nome_do_kernel”
CPUTYPE ?= “pentium3|athlon|prescott|nocona|core2|etc.”
CFLAGS = “-O, -O2, -pipe, -march=‘cputype’, -fomit-frame-pointer, etc.”
CXXFLAGS +=
etc.
● /etc/src.conf
WITHOUT_FEATURE = “true|false”
● Ambiente Desktop
○ Ambientes Desktop Populares
Gnome, KDE, XFCE, Fluxbox, Openbox, WindowMaker, LXDE
● Navegadores Web, Clientes de Mensagens Instantâneas, Editores de
Texto e etc.
Chromium, Pidgin, XChat, OpenOffice3, Firefox, Opera, Emacs, Thunderbird, ...
● Efeitos 3D
Compiz e etc.
Instalação e Configuração de um Ambiente FreeBSD – Vinícius Zavam – Universidade de Fortaleza
46. Documentação
● “The FreeBSD Handbook”
○ Handbook Online
http://www.freebsd.org/handbook
● Fórums e Grupos de Usuários
○ Grupo Brasileiro de Usuários de FreeBSD
http://www.fug.com.br
● Fórum Oficial do Projeto FreeBSD
http://forum.freebsd.org
● BSD Forums e BSD Foren
http://www.bsdforums.org
http://www.bsdforen.de
● OnLamp BSD Developers Center
http://www.onlamp.com/bsd
● BSD Group Deutschland
http://portal.bsdgroup.de
Instalação e Configuração de um Ambiente FreeBSD – Vinícius Zavam – Universidade de Fortaleza
47. Documentação
● Listas de Discurssão
○ FUG-BR-CE
https://fug.com.br/mailman/listinfo/freebsd-ce
● FreeBSD Mailing Lists
http://lists.freebsd.org
● Grupo de Usuários de FreeBSD no Google Groups
http://groups.google.com/group/freebsd
● Gnome & KDE
○ Projeto Gnome no FreeBSD
http://www.freebsd.org/gnome
● Projeto KDE no FreeBSD
http://freebsd.kde.org
● Google
○ Sites, Fórums e Listas Indexadas Sobre BSD
http://www.google.com/bsd
Instalação e Configuração de um Ambiente FreeBSD – Vinícius Zavam – Universidade de Fortaleza
48. Documentação
● Livros em Inglês
○ Absolute BSD, The Ultimate Guide to FreeBSD
○ FreeBSD Unleashed
○ Teach Yourself FreeBSD in 24Hours
○ The Complete FreeBSD
○ The FreeBSD Networker’s Guide
● Livros Nacionais
○ BSD Absoluto
○ Compartilhando a Internet Utilizando FreeBSD e Squid
○ FreeBSD, O Poder dos Servidores em suas Mãos
● Revistas
○ BSD Magazine
http://www.bsdmag.org
Instalação e Configuração de um Ambiente FreeBSD – Vinícius Zavam – Universidade de Fortaleza
49. Suporte ao Projeto
● Projeto Brasileiro de Documentação do
FreeBSD
○ http://doc.fug.com.br
● Consultas para Desenvolvedores
○ Developers’ Handbook
http://www.freebsd.org/doc/en_US.ISO8859-1/books/developers-handbook/
● Porter’s Handbook
http://www.freebsd.org/doc/en_US.ISO8859-1/books/porters-handbook/
● Colaboração com o Projeto
○ Doações
Financiamento das Atividades
Hardwares
Serviços de Conectividade
● Desenvolvimento de Código
Bug Reports
Send-PR
Adoção de Ports Órfãos
Instalação e Configuração de um Ambiente FreeBSD – Vinícius Zavam – Universidade de Fortaleza
50. Instalação e
Configuração
Instalação e Configuração de um Ambiente FreeBSD – Vinícius Zavam – Universidade de Fortaleza