Você está na página 1de 33

CURSO FREEBSD

MDULO 1

Saulo Porto
saulo@webredes.com.br

UM POUCO DE HISTRIA
o FreeBSD um sistema operacional livre do tipo Unix descendente do BSD desenvolvido pela Universidade de Berkeley e est disponvel para as plataformas Intel x86, DEC Alpha, Sparc, PowerPC e PC-98 assim como para as arquiteturas baseadas em processadores de 64bits IA-64 e AMD64. considerado como robusto e estvel, geralmente utilizado em servidores, como de Internet ou Proxy, mas tambm pode ser utilizado como estao de trabalho, um sistema operacional multiusurio, capaz de executar em multitarefa. Ainda que o FreeBSD no possa ser chamado apropriadamente de Unix por no estar sob a licena do The Open Group, ele foi desenvolvido para ser compatvel com a norma Posix assim como outros clones do Unix.

ONDE PODE SER UTILIZADO


Servios de internet Educao Pesquisa Rede Estao de trabalho Desenvolvimento de software QUEM USA O FREEBSD
Yahoo! Apache Blue Mountain Arts Pair Networks Sony do Japo Netcraft Weathernews TELEHOUSE America Anti-Vrus Sophos Entre outras que utilizam parte do cdigo, como Microsoft, Apple e outras

OBJETIVOS DO PROJETO Os objetivos do Projeto FreeBSD so de oferecer software que podem ser utilizados para qualquer propsito, sem restries impeditivas. Muitos investem significantemente no cdigo (e no projeto) e certamente no seria uma surpresa se de vez em quando recebessem uma pequena compensao financeira (doao para o projeto). Acreditam que a primeira e principal misso oferecer cdigo para qualquer usurio, e para qualquer propsito, de forma que o cdigo em questo chegue o mais longe que puder e que traga os maiores benefcios que forem possveis.
Este , acreditamos, ser um dos principais fundamentos do projeto e do Software Livre, e um dos quais ns apoiamos de forma entusiasmada. Palavras

da equipe de desenvolvimento

OBJETIVOS DO PROJETO
O cdigo fonte sob a Licena Pblica Geral GNU (GPL) ou Licena Pblica Menos Geral GNU (LGPL) contm consideravelmente mais restries impeditivas, contudo, mais pelo lado de forar o acesso irrestrito ao cdigo do que o oposto. Devido s complexidades adicionais que podem envolver o uso comercial de software GPL, h uma preferncia pelos programas lanados sob a licena de direito autoral BSD sempre que possvel, por ser uma licena consideravelmente mais flexvel. O desenvolvimento do FreeBSD um processo muito aberto e flexvel, literalmente composto pela contribuio de centenas de pessoas ao redor do mundo, como pode ser visto na lista de colaboradores (www.freebsd.org). A infraestrutura de desenvolvimento do FreeBSD permite que estas centenas de desenvolvedores colaborem mutuamente pela Internet.

FAMILIA BSD OPENBSD NETBSD DRAGONFLY PCBSD

SISTEMAS DESENVOLVIDOS
ASKOZIA (central voip) FREENAS (storage) PFSENSE (firewall e outros)

PC BSD
Baseado no FreeBSD, o PC-BSD voltado para desktops, possuindo um sistema de instalao grfico sem muitas complicaes. O PC-BSD conta com vrios pacotes nativos na midia de instalao, entre eles esto ambientes como Gnome, KDE, XFCE, LXDE, Open Box e outros. O PC-BSD tem um manual quase completo e bem organizado para dar suporte imediato ao usurio. Alm disso Forum e Wikis so bem abundantes na web e o suporte bem mais tranquilo, rpido e eficiente que o suporte de sistemas pagos. Como o sistema FreeBSD prima pela segurana, o back-up fundamental. Um aplicativo bem importante e interessante o Life-Preserver que automatiza as cpias de segurana e pode sincronizar facilmente com um servidor tipo FreeNAS

PC BSD

CERTIFICAES Existem 2 certificaes : BSDA : Nvel bsico, prova tem entre 110 e 120 questes, toda em ingls, voc tem 2 horas pra realizar a prova, feita em papel e a folha de resposta em lpis, empresas fora do Brasil realizam a prova em computador

BSDP : Nvel profissional, possui as mesmas caractersticas da BSDA

VAMOS AOS TRABALHOS


ACESSEM O LABORATRIO

COMANDO BSICOS ls Lista os arquivos e diretrios


freebsd# ls .cshrc .k5login .login .profile

freebsd# ls /bin [ df cat domainname chflags echo chio ed chmod expr cp getfacl csh hostname date kenv dd kill

link ln ls mkdir mv pax pgrep pkill ps

pwait pwd rcp realpath red rm rmail rmdir setfacl

sh sleep stty sync tcsh test unlink uuidgen

freebsd# ls -la /root/ total 24 drwxr-xr-x 2 root wheel 512 Jan 3 drwxr-xr-x 18 root wheel 1024 Jan 3 -rw-r--r-2 root wheel 793 Jan -rw-r--r-1 root wheel 151 Jan -rw-r--r-1 root wheel 299 Jan -rw-r--r-2 root wheel 256 Jan

2012 . 2012 .. 3 2012 3 2012 3 2012 3 2012

.cshrc .k5login .login .profile

COMANDO BSICOS cd (change dir) Muda de diretrio, acessa os diretrios


freebsd# cd /tmp freebsd# cd /etc freebsd# cd /usr/local/etc /usr/local/etc: No such file or directory. freebsd# cd /var/log freebsd#

pwd Exibe o diretrio onde atual, onde voc est


freebsd# pwd /root freebsd# cd /etc freebsd# pwd /etc freebsd# cd /tmp freebsd# pwd /tmp freebsd# cd /var/log freebsd# pwd /var/log freebsd# cd /usr/local/etc /usr/local/etc: No such file or directory. freebsd# pwd /var/log freebsd#

COMANDO BSICOS rm Remove arquivos rm rf Remove arquivos e diretrios de forma recursiva, ou seja apaga tudo rmdir Remove diretrios (eu nunca uso, prefiro usar o rm rf)
freebsd# ls .cshrc .login aluno11 .k5login .profile aluno20 freebsd# rm aluno11 rm: aluno11: is a directory freebsd# ls .cshrc .login aluno11 .k5login .profile aluno20 freebsd# rm -rf aluno11 freebsd# ls .cshrc .k5login .login freebsd# rmdir aluno20 rmdir: aluno20: Directory not empty freebsd# rmdir -rf aluno20 rmdir: illegal option -- r usage: rmdir [-pv] directory ... freebsd# rm -rf aluno20 freebsd# ls .cshrc .k5login .login freebsd#

.profile

aluno20

.profile

COMANDO BSICOS touch - Cria arquivos ou atualiza a data de criao cp Copia arquivos cp r Copia arquivos e diretrios
freebsd# ls .cshrc .k5login .login freebsd# touch arquivo1 freebsd# touch arquivo2 freebsd# ls .cshrc .login arquivo1 .k5login .profile arquivo2 freebsd# mkdir dir01 freebsd# ls .cshrc .login arquivo1 .k5login .profile arquivo2 freebsd# ls dir01/ freebsd# cp arquivo01 dir01/ cp: arquivo01: No such file or directory freebsd# cp arquivo1 dir01/ freebsd# ls dir01/ arquivo1 freebsd# mkdir dir02 freebsd# ls .cshrc .login arquivo1 .k5login .profile arquivo2 freebsd# cp -r dir02 dir01/ freebsd# ls dir01 arquivo1 dir02 freebsd# .profile

dir01

dir01 dir02

COMANDO BSICOS mv Move arquivos e diretrios


freebsd# .cshrc .k5login freebsd# freebsd# .cshrc .k5login freebsd# arquivo1 freebsd# freebsd# arquivo1 freebsd# .cshrc .k5login freebsd# ls .login .profile mv arquivo1 dir02 ls .login .profile ls dir02 mv dir01 dir02/ ls dir02 dir01 ls .login .profile arquivo1 arquivo2 arquivo2 dir01 dir01 dir02 dir02

arquivo2 dir02

man programa Manual dos principais executveis e arquivos de configurao


freebsd# man pwd PWD(1) NAME pwd -- return working directory name SYNOPSIS pwd [-L | -P] FreeBSD General Commands Manual PWD(1)

TRABALHANDO COM ARQUIVOS cat Exibe o contedo de um arquivo tail Exibe as ltimas 10 linhas de um arquivo head Exibe as primeiras 10 linhas de um arquivo
freebsd# ls .cshrc .k5login freebsd# cat alunos 1 - andre 2 - adriano 3 - daniel 4 - flavio 5 - joao 6 - jose 7 - luis 8 - luciano 9 - maria 10 - mario 11 - pedro freebsd# tail alunos 2 - adriano 3 - daniel 4 - flavio 5 - joao 6 - jose 7 - luis 8 - luciano 9 - maria 10 - mario 11 - pedro freebsd# .login .profile alunos

Cad o 1 ?

TRABALHANDO COM ARQUIVOS more Exibe o contedo de um arquivo pginado less Exibe o contedo de um arquivo pginado
freebsd# more alunos 1 - andre 2 - adriano 3 - daniel 4 - flavio 5 - joao 6 - jose 7 - luis 8 - luciano 9 - maria 10 - mario 11 - pedro freebsd# less alunos 1 - andre 2 - adriano 3 - daniel 4 - flavio 5 - joao 6 - jose 7 - luis 8 - luciano 9 - maria 10 - mario 11 - pedro alunos (END)

TRABALHANDO COM ARQUIVOS


Pesquisem sobre as diferenas entre:

cat more less tac

MANIPULANDO ARQUIVOS ee Editor de texto padro no FreeBSD vi Editor de texto padro Unix/Linux, difcil uso, mas todo administrador de sistema deve conhecer e saber us-lo pico Editor de texto simples (precisa ser instalado)
freebsd# ee exercicio

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
^[ (escape) menu ^o ascii code ^u end of file ^t top of text ^c command =====line 1 col 0 ^y search prompt ^k delete line ^p prev li ^g prev page ^x search ^l undelete line ^n next li ^v next page ^a begin of line ^w delete word ^b back 1 char ^e end of line ^r restore word ^f forward 1 char ^d delete char ^j undelete char ^z next word lines from top 1 ============================================

Digite aqui o contedo do arquivo

new file "exercicio"

MANIPULANDO ARQUIVOS ee Digite/Altere o contedo do arquivo. Para sair e salvar pressione a tecla ESC no teclado e escolha a opo a) leave editor em seguida ENTER, na prxima tela escolha a) save changes e em seguida ENTER

MANIPULANDO ARQUIVOS ee Confirmando a incluso/alterao no arquivo exercicio usando o comando cat


freebsd# ls .cshrc .k5login freebsd# cat exercicio Exercicio de editores de texto freebsd# freebsd# .login .profile exercicio

MANIPULANDO ARQUIVOS vi Para alterar ou incluir o texto tem que digitar a tecla i para que o editor entre em modo de alterao. E para sair e salvar pressione a tecla ESC, aparecer no canto inferior esquerdo o : em seguida digite x!
freebsd# vi exercicio ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Exercicio de editores de texto ~ ~ ~ ~ ~ ~ ~ Para inserir ou alterar o ~ contedo tem que digitar a ~ ~ tecla i (insert) ~ ~ exercicio: unmodified: line 1

MANIPULANDO ARQUIVOS vi Salvando e saindo do editor vi


freebsd# vi exercicio ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Testando o editor VI Exercicio de editores de texto ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ :x!

exercicio: 2 lines, 52 characters. freebsd# cat exercicio Testando o editor VI Exercicio de editores de texto freebsd#

MANIPULANDO ARQUIVOS pico Simples editor, digite pico nomedoarquivo altere e para sair salvando aperte CRTL + x
freebsd# pico exercicio

CRTL + x

Digite y para confirmar

sysinstall Editor de configuraes do sistema, aqui h a possibilidade de realizar quase todas as tarefas de administrao do sistema como: adicionar usurios, configurar as placas de rede, servios de inicializao entre outros.
freebsd# sysinstall

sysinstall (opo configure) Neste menu podemos configurar itens como: pacotes, senha de root, fdisk, mouse, network ... etc

COMANDOS DE AJUDA E DOCUMENTAO apropos: Localiza comandos por pesquisa de palavra-chave: apropos ls find: Localizar arquivos, como por exemplo: find . -name *.txt print , para pesquisa de arquivos de texto do diretrio atual info: Abre o explorador de informaes : info pwd man: Manual muito completo, pesquisa informao acerca de todos os comandos que necessitemos de saber, como por exemplo: man find whatis: Descreve o que um determinado comando /faz: whatis pwd whereis: Localizar a pgina de ajuda (man page), cdigo fonte, ou arquivos binrios, de um determinado programa: whereis cd

CONHECENDO O RC.CONF rc.conf Arquivo de configurao dos principais servios do sistema Para alterar use qualquer editor de texto conforme figura abaixo
freebsd# pico /etc/rc.conf

Para acessar o arquivo de exemplo do rc.conf


freebsd# pico /etc/defaults/rc.conf

CONHECENDO O RC.CONF rc.conf Arquivo de exemplo

CONHECENDO O RC.CONF Linhas importantes no arquivo rc.conf hostname Nome do sistema (definido na instalao)
hostname="freebsd.webredes.com.br"

keymap Mapa do teclado (definido na instalao)


keymap="br275.iso.acc.kbd"

lfconfig_em0 Endereo ip da placa de rede (definido na instalao)


ifconfig_em0=" inet 192.168.1.124 netmask 255.255.255.0"

defaultrouter Ip do gateway (definido na instalao)


defaultrouter="192.168.1.1"

sshd_enable Habilita o servio de acesso remoto ssh


sshd_enable="YES"

CONHECENDO O RC.CONF Para habilitar um servio usando o rc.conf crie uma linha com o nome do servio + _enable e permita com YES ou no permita com NO.
(ATENO, ISTO NO UMA REGRA VERIFIQUE EM CADA SERVIO QUAL NOME ESPECIFICO PARA INICIALIZAR O SERVIO)

apache22_enable=YES ou NO Permite ou no a inicializao do apache


apache22_enable=YES mysql_enable=YES sshd_enable=YES sendmail_enable=NO dhcpd_enable=YES gateway_enable=YES

CONHECENDO O RC.CONF Para criar um alias na placa de rede em0 utilize conforme o comando abaixo. (ATENO, VERIFIQUE QUAL O NOME EXATO DA PLACA DE REDE E
ADICIONE O NMERO PARA CADA NOVO ALIAS. alias0, alias1, alias2 ... etc)

ifconfig_em0_alias0=inet 10.0.0.1 netmask 255.255.255.252


apache22_enable=YES mysql_enable=YES sshd_enable=YES sendmail_enable=NO dhcpd_enable=YES gateway_enable=YES

Verifique no arquivo /etc/defaults/rc.conf outras configuraes

FIM

Você também pode gostar