Escolar Documentos
Profissional Documentos
Cultura Documentos
Linux do zero
www.mentebinaria.com.br
Linuxdozero porFernandoMercs
EstematerialestlicensiadosobaCreativeCommons3.0(BY).Vocpodedistribuireusareste
materiallivremente,desdequemantidososcrditosdoautororiginal.Maisdetalhesem
http://creativecommons.org/licenses/by/3.0/br/
Autor:FernandoMercs(fernandoemmentebinaria.com.br)
Primeiraverso:setembrode2008
Verso:1.1(publicadaemoutubrode2008)
Linuxdozero porFernandoMercs
ndice
Captulo1
1.1Opapeldosistemaoperacional................................................................................................1
1.2BrevehistriadoLinux..................................................................................................................1
1.3Opapeldokernel........................................................................................................................2
1.4DistribuiesGNU/Linux...............................................................................................................2
Captulo2
2.1Planejamentoeinstalao.........................................................................................................3
2.2Particionamento...........................................................................................................................3
2.3Sistemasdearquivos....................................................................................................................4
2.4Gerenciadoresdeincializao..................................................................................................6
2.5Pacotes..........................................................................................................................................7
Captulo3
3.1Obsicodosistema....................................................................................................................8
3.2Estruturadediretrios..................................................................................................................8
3.3Nveisdeoperao.....................................................................................................................8
3.4Operaesbsicasdoshell.......................................................................................................9
Captulo4
Hardwareedrivers...........................................................................................................................15
4.1Comandosdegerenciamentodehardware.........................................................................15
4.2Osistema/proc..........................................................................................................................17
4.3Mdulos.......................................................................................................................................19
Captulo5
Gerenciamentodepacotes...........................................................................................................20
5.1DPKG............................................................................................................................................20
5.2RPM..............................................................................................................................................21
5.3APT................................................................................................................................................21
5.4YUM..............................................................................................................................................23
5.5Tarballs.........................................................................................................................................23
Captulo6
Controledeacesso.........................................................................................................................25
6.1Usuriosegrupos.......................................................................................................................25
6.2Arquivosediretrios...................................................................................................................27
Captulo7
Montagemeformataodemdias.............................................................................................29
7.1Partiesdedisco......................................................................................................................29
7.2Disquetes.....................................................................................................................................30
7.3Cds/DVDs....................................................................................................................................30
7.4MdiasUSB...................................................................................................................................30
Captulo8
Configuraoderede....................................................................................................................31
8.1Comandosdeconfigurao...................................................................................................31
8.2Arquivosdeconfigurao.......................................................................................................32
Linuxdozero porFernandoMercs
Captulo9
Ambientegrfico............................................................................................................................34
9.1ServidoresX................................................................................................................................34
9.2Gerenciadoresgrficos...........................................................................................................34
Smboloseconvenesutilizadosnaapostila
Paraotimizarotextodaapostila,algunssmboloseconvenesforamutilizados:
negritoUsadoparachamaraatenoparadeterminadapalavra.
ItlicoUsadoparanomesdecomandos,pacotesearquivosemgeral.
#Evidenciaumcomandoquedeveseriniciadopelousurioroot(administradordosistema).
$Evidenciaumcomandoquepodeseriniciadoporumusuriocomum.
Exibeumadicaouinformaotilsobreoassuntoemcontexto.
Linuxdozero porFernandoMercs
Captulo1OPapeldosistemaoperacional
O sistemaoperacional(SO)detmumpapelbsiconoconceitodoscomputadores:criaruma
interfaceentreohardwareeousurio.Seupropsitoestabelecerumambienteparaqueo
usuriopossaexecutarprogramas(software).OSOprecisaoferecerumambienteconveniente
paraousodoPCe,emsegundoplano,eficiente.
Umsistemacomputacionaldivididoemquatropartesbsicas,ordenadasdonvelmais
altoparaomaisbaixo:ousurio,ossoftwares,oSOeohardware.
oSOquemgerenciaohardwaredoPCealocaseusrecursosparaqueosprogramasos
utilizem.Porsuavez,osprogramasfornecemumainterfaceparaquensosutilizemos.
ProgramarumSOsignificaescreverumsoftware(porqueoSOnodeixadeserum
software)emlinguagemqueohardwareentenda.Essalinguagemalinguagemdemquinaeo
hardwarequedeveentendlaomicroprocessador.
AinteraoLinguagemdemquinaxMicroprocessador
Oprocessador(oumicroprocessador)umcomponenteeletrnico.Ecomotodosos
outroscomponenteseletrnicos,elesentendepulsoseltricos.Portanto,alinguagemque
capazdedizeralgoaomicroprocessadorobinrio,quetemapenasdoiscomandos:0e1,ou
seja,ausnciaoupresenadeenergiaeltrica.
Claroquehumanamenteinvivelcriarumprogramasomentecomzeroseuns.Porisso,o
sistemahexadecimalfoiutilizadoparaprogramaromicroprocessador(jquequalquernmero
hexapodeserconvertidoembinrio)eposteriormente,umalinguagemdeprogramao
chamadaAssembly(oulinguagemdemontagem).Todososcomandosdestalinguagempossuem
equivalentesemhexadecimal,queporsuavez,possuemequivalentesembinrio,queenfim,
tornampossvelacompreensoporpartedomicroprocessador(lembreseque,nestecontexto,
binrionadamaisqueausnciaoupresenadeenergia).
1.1BrevehistriadoLinux
HalgunsanosumsistemaoperacionalchamadoUNIXfaziamuitosucesso,masera
proprietrio(ecaro).Umprofessoruniversitriodesenvolveuumaversoreduzida,masde
cdigoabertodestepotentesistemaechamouadeMINIX.Comoonomesugere,um
miniUNIX.EsteSOdeveriaserutilizadoemfaculdadesparafinsdeestudo,somente.Foiento
queumdosuniversitriosusuriosdoMINIXresolveucriarseuprprioSO,combasenoMINIXena
tentativadeimplementarasmelhoresfunesdoUNIX,squegratuitamente,surgiuoFreeUNIX.
EsteestudanteeraLinusTorvaldsquelogoapsdedivulgarseuFreeUNIXrecebeuumaordem
judicialporcausadonomeescolhido(lembresequeoUNIXproprietrio),masissonoera
problema.Bastavamudaronome.SurgeentooLinux1.0.
Eosprogramas?EledesenvolveuoncleodoSO(conhecidotambmcomokernel),que
sabiagerenciarohardwaremasquesoftwareexistianapocaparaLinux?Arespostanenhum,
claro.Eleentoresolveuportar(adaptarocdigofonteerecompilar)pequenossoftwaresquej
funcionavamnoUNIXenoMINIX.Umdelesfoiobash(uminterpretadordecomandos)eooutro
foiogcc(ocompiladorCdoUNIX).
1
Linuxdozero porFernandoMercs
1.2Opapeldokernel
Comomencionadoanteriormente,oLinuxumkernelenoumSO.Lembresequepor
definioumSOdeveinteragircomohardwareeousuriomassemnenhumprograma,comoo
usuriointerage?Nomnimonecessriouminterpretadordecomandos,comoo
COMMAND.COMdoantigoMSDOSeobash,quefoiportadoparaoLinux.Seexistemformasde
seinteragircomestekernel,porviadeprogramas,asimnomeamosoconjuntodeSistema
Operacional.
1.3DistribuiesGNU/Linux
LinusTorvaldsusoumuitosprogramasdeumaempresachamadaFreeSoftware
Foundation,quesonhavaemdesenvolverumsistemaoperacional,mascomeouo
desenvolvimentopelosprogramasenopelokernel.AFSFiniciouumprojetochamadoGNU,
ondedesenvolveuvriosaplicativosgratuitoseLinusosusouparadistribuirjuntocomoseukernel
Linux.DesdeentoelejtinhaumSO,masemtroca,onomefoiGNU/Linux.EsteoSO.Linuxo
kernel,puramente.
Rapidamenteempresas,universidadesegruposdeprogramadorescomearamaanexar
seusprpriosprogramasaokerneledistribuiroconjunto.SurgementoasdistribuiesGNU/Linux,
queavanamathoje.Em2006ositeDistroWatch(http://distrowatch.com)japontavamaisde
350distribuiesLinuxativas.ExemplosdetradicionaisdistribuiesLinuxsooSlackware,oRed
Hat,oDebianeoSUSE.
AbaixoumalistacomasprincipaisdistribuiesLinuxeseusrespectivossitesoficiais.
ArchLinuxwww.archlinux.org
DebianGNU/Linuxwww.debian.org
DamnSmallLinuxwww.damnsmalllinux.org
FedoraCorefedoraproject.org
Gentoowww.gentoo.org
Knoppixwww.knoppix.de
Kuruminwww.guiadohardware.net/kuruminlinux
LinuxMintwww.linuxmint.com
Mandrivawww.mandriva.com
OpenSUSEwww.opensuse.org
RedHatwww.redhat.com
Slackwarewww.slackware.com
SUSEwww.novell.com/linux
Ubuntuwww.ubuntu.com
2
Linuxdozero porFernandoMercs
Captulo2Planejamentoeinstalao
P araummelhoraproveitamentodosistema,essencialplanejarsuaimplementao.OLinux
provumsistemamuitoflexvelquepodeserinstaladoemvriasarquiteturasfacilmentemas,
sefeitoumplanejamentoantesdaimplementao,podeficaraindamelhor.Umbomexemplo
dissooesquemadeparticionamentoeconsumodememria,quepodemgerarresultados
desagradveissemalplanejadosouignorados.
2.1Particionamento
Naimplementaodetodosossistemasoperacionais,raramenterecomendvelque
utilizemossomenteumapartioe,sedesejarmaissegurana,altamenterecomendvelque
usemosmaisdeumdiscorgido.NoLinuxnodiferente,inclusive,criarumapartioextrapara
amemriavirtual(swap)obrigatrio.
Swapfile(ouarquivodetroca)oarquivousadoparasimularmemriaRAM.NoWindows
2000esuperiores,eleficanoraizdapartiodosistemaechamasePagefile.sys.Emverses
antigasdoWindows,eleficanodiretriodeinstalaodoWindowsechamaseWin386.swp.J
noLinux,todaumapartioutilizadacomoreadetrocaeestapartiochamaseswap.
UmdetalheinteressantequeoWindowsusaoarquivodepaginao(umoutronome
paraoarquivodetroca/memriavirtual)desdeainicializaodosistema.Suaotimizao
baseadanaregradeprioridadedeusodosdados,ouseja,sehumdadoemmemriaqueno
utilizadopormuitotempo,estevaiparaoswap,paraliberarmemriafsica.Oproblemaque
quandoestedadoprecisarseracessado,elevaiterdeserrecuperadodoswap,queestnoHD,
paraamemriaRAMnovamente.ComooHDmuitomaislentoqueamemriaRAM,huma
grandeperdadeperformance.JoLinux,sutilizaoswapseamemriafsicaestivertotalmente
cheia.Comodesvantagem,amemriapodeficarcheiadedadosquevocnovaimaisutilizar
nasessoatual(porescolhasua,poisolixosempreremovido).
OLinuxgerenciaosdispositivosdearmazenamentonomeandoosnoformato/dev/xdy,
ondexsubstitudopelotipododispositivo(sparadispositivosSATA,SCSIoumemriasflashe
hparadispositivosIDE).Oysubstitudoporumaletraquevariaalfabeticamentedeacordo
comaposiododispositivonaplacame(IDEprimria,secundria,slave,master,portaSATA0,
1,etc).Porexemplo,umHDIDE,conectadoIDEprimriadaplacameserreconhecido
como/dev/hda.SefosseumdispositivoSATAconectadoportaSATA0,esteseriao/dev/sda.
Aspartiessoacessadasnoformato/dev/xdyn,ondenonmerodapartio,de
acordocomsuaposionoHDeseutipo.Parapartiesprimrias,osnmerosvariamde1a4,j
queosHDsspodemterquatropartiesprimrias.Paraaslgicas,de5emdiante.
Porexemplo,asegundapartioprimriadeumHDIDEqueestconectadoIDE
secundriaser/dev/hdb2.JaprimeirapartiolgicadeumHDSATA,naportaSATA0sera
/dev/sda5.Ospendrivesseguemamesmalgica,maselesgeralmentetmumaspartioe
sosemprereconhecidoscomodispositivosSATA/SCSI.SevoctiverumHDSATAcomduas
partiesprimrias(/dev/sda1e/dev/sda2),apartiodoseupendrivesera/dev/sdb1.
Asmdiaspticas(CDROM,DVD,etc)nopodemserparticionadas.Portanto,seuacesso
sdependedobarramentoaoqualestconectado(IDE,SATAouSCSI).Porexemplo,umdrive
DVDRWnaposioslavedaIDEprimriaseracessadopor/dev/hdb.
Abaixo,umatabelaquerelacionaosHDsesuasparties:
3
Linuxdozero porFernandoMercs
Agoraquejsabemoscomoosdispositivossonomeados,podemosdefinirasparties
paraainstalaodosistema.OmnimoqueoLinuxexigeparaserinstaladosoduasparties
(umaparaosistemaraizeoutraparaoswap).Massevocquiserqueseusarquivospessoais
fiquemnumapartioseparada(oquepodesermuitotil),bastacriarumapartioamaise
montarnelaodiretrio/home.Nosepreocupesevocnosouberoqueo/home,muito
menosoquemontagem.Veremosissomaisadiante.
Nestecursobsico,noabordaremosoparticionamentomaiscomplexo,quepodeexigir
maisdecincopartiesnodisco.Esseesquematilparaservidoresesistemasdealto
desempenhoeconfiabilidademasfogedonossoescopo.
2.2Sistemasdearquivos
NomundoLinux,sistemasdearquivospodemaparecerdeduasmaneiras:oconjuntode
regrasparaarmazenardadosnumapartioouosdiretriosmontveisnestasparties(como
o/eo/home).Nestaseo,trataremosdoprimeirocaso.
Voccertamentejouviufalaremformatao.Estapalavravemdaidiadecriarum
formato,ouseja,definirumsistemadearquivosenodeapagar.
Hdoistiposdeformatao:algicaeafsica.Aextintaformataofsicaserviapara
preenchertodosossetoresdeumdiscorgidocomzeros,incluindoseuMBR(MasterBootRecord
ouSetorprincipaldeinicializao)erecalculararelaoCHS,querelacionacilindros,cabease
4
Linuxdozero porFernandoMercs
setores.Jalgica,queaquemaisusamos,somenteaplicvelsparties(enoaodisco)
eserveparacriarumfilesystemnapartiodesejada.Sehouverarquivosnestapartio,elesno
seroapagados,masficaroinacessveisporqueforamgravadosutilizandoofilesystemanteriore
onovonoosconhece.
porestemotivoquedadosdeumapartioformatadoslogicamente
podemserrecuperados:Osdadosnosoapagados.Aformataos
defineumfilesystemeestaoperaofeitanoinciododiscoenono
discointeiro.
OLinuxpodeserinstaladoemmuitossistemasdearquivosdiferentes.Algunsexemplosso
ext2,ext3,ReiserFS,XFSeJFS.Abordaremosaquiosfilesystemext3eoReiserFS,porseremosmais
comuns.
OReiserFSmaisrpidoqueoext3namaioriadoscasosetambmfazcomquearquivos
pequenosocupemmenosespaodoqueocupariamnumsistemaext3.Ambospossuemuma
tecnologiaderecuperaodearquivosemcasodefaltadeenergiachamadajournaling,que
consisteemcriarumtipodelog(registrodeocorrncias)parapoderrecuperaroarquivodepois
deumafalhaeltricaoudesligamentorepentinoporqualqueroutromotivo.
Estesfilesystemssobaseadoseminodes,quesopequenosarquivosquearmazenam
informaessobrecadaarquivonosistema.Essasinformaessochamadasdemetadados.
Oinodedeumarquivoumconjuntodemetadadosquedefine,porexemplo,osatributos
doarquivo,quemodono,ahoradesualtimamodificao,aspermissesdeacessoaeste
arquivo,dentreoutrasinformaes.
Agoraimaginequevocdigitouumtextoemandousalvar.Nesteexatomomento,o
fornecimentodeenergiafoiinterrompido.Oarquivonofoisalvomasseuinodesim.Issogerar
umainconsistncianoseufilesystem.
Ojournalingconsisteemfazeratualizaesdosmetadadoseregistrlasemumlog,antes
queosdadossejamsalvos.Ouseja,aoclicaremSalvar,primeirooinodefoicriado,depoiso
journalingentrouemaoeregistrounologqueosmetadadosdoarquivoforamalteradoseque
asituaoanteriorquetaismetadadosnemexistiam.Quandoaenergiaforrestabelecida,a
condioanteriordoarquivo(inexistente)serrestaurada.Vocperdeuoquesalvou.Fato.Mas
manteveofilesystemconsistente.
Oext3fazjournalingnosmetadadosenosdados.JoReiserFS,somentenosmetadados.
Oext3reserva5%doespaototaldapartioparacontrole,enquantooReiserFSreserva
aproximadamente33MB,independentedotamanhodapartio.
Pararesolverinconsistncias,umcomandotilofsck(filesystem
checker),equivalenteaochkdsk/scandiskdoWindows.Eledeveser
rodadocomorootecomapartiodedestinodesmontada.Sua
sintaxe#fsck<partio>(noformato/dev/xdyn).
5
Linuxdozero porFernandoMercs
2.3Gerenciadoresdeinicializao
AlgumtemquedizerparaoBIOS(BasicInput/OutputSystem)queexisteumkerneldeSO
numapartioespecficaeestealgumumgerenciadordeboot.NomundoLinux,hdois
gerenciadoresamplamenteutilizados:oLILO(LinuxLoader)eoGRUB(GRantedUnified
Bootloader).Ambostambmpossuemacapacidadedeinicializaroutrossistemasoperacionais
taiscomoWindows,FreeBSDeoutros.
EstesbootloaderspodemserinstaladosnoMBR(MasterBootRecord)ounoprimeirosetor
deumapartioprimria.
OLILOconsisteemtrspartes:ogerenciadordebootemsi,umarquivodeconfigurao
(/etc/lilo.conf),umarquivodemapeamento(/boot/map)quecontmalocalizaodokernel,e
ocomandolilo,queloarquivodeconfiguraeseutilizaestasinformaesparaatualizaro
arquivodemapeamentoe/ou(re)instalarogerenciadordeboot.
OGRUBtemalgumasvantagensemrelaoaoLILO.Umadelasquesevocinstalar
umanovaversodekernel,noprecisarreinstalarogerenciadordeboot.Outraqueem
desastresoGRUBofereceumainterfacedetexto,queaceitacomandosdemanuteno.Estes
somuitoteispararecuperarogerenciadordebootemcasodefalhas.
AssimcomooLILO,oGRUBtambmdivididoempartes.Soelas:
stage1parteexecutvelqueresidenoMBRounoprimeirosetordapartio.Estaparte
necessriaporqueaparteprincipaldoGRUBmuitograndeparacabernumsetors.Este
estgio1usadoparatransferiraexecuoparaoestgio1.5ou2.
stage1.5carregadosomenteseosistemaexigir.Esteestgioespecficoparacadasistemade
arquivosqueoGRUBpodecarregar.Porexemplo,oarquivo/boot/grub/reiserfs_stage1_5o
executveldoestgio1.5paraofilesystemReiserFS.
stage2esteexecutvelaparteprincipaldogerenciadordeboot.Elequemexibeomenu,
chamaoinitrd,carregaokernel,etc.
AbaixoomenudoGRUBinstaladonumPCsomentecomoDebianGNU/Linux:
UmpontoimportantetratandosedoGRUBqueeletemsuaprpriaconvenoe
6
Linuxdozero porFernandoMercs
nomenclaturaparaasparties,ondedizqueoprimeirodiscorgidohd0(independentedo
discoserIDE,SATAouSCSI).Osegundoserohd1eassimpordiante.
Paraasparties,bastaacrescentarumavrgulaseguidadeumnmeroeportudoentre
parnteses.Assim,aprimeirapartiodoprimeiroHDa(hd0,0).Asegundapartiodeste
mesmoHDa(hd0,1)eassimpordiante.Seguindoestalgica,vocseriacapazdedefinircomo
oGRUBchamaaterceirapartiodeumsegundoHD?Sevocrespondeu(hd1,2),parabns!Se
errou,releiaotrechoacimaporqueesteconceitoessencialparausaroGRUB.
OarquivodeconfiguraodoGRUBficaem/boot/grub/menu.lsteseuarquivodemapas
o/boot/grub/device.map.
Emnossocurso,adotaremosoGRUBcomogerenciadordeboot.Parasabermaissobreele,
consulteoartigoTudosobreoGRUBnoendereowww.mentebinaria.com.br/index.php?
option=com_content&task=view&id=62&Itemid=5
2.4Pacotes
NomundoLinux,aformanaqualbaixamososprogramasebibliotecassoarquivos
especiais,chamadosdepacotes.OsdoistiposdepacotesexistentessooDEBeoRPM.O
primeirofoicriadoparaoDebianeosegundo,paraoRedHat.Noentanto,imensaa
quantidadededistribuiesqueosutilizamjquetudoqueseguealicenaGNU/GPLpodeser
reutilizadolivremente.
Porexemplo,parabaixarosoftwareWireshark,paraLinux,umadasopesbaixaro
pacoteDEB(seestivermosusandoumadistribuiobaseadanoDebian).Outraopobaixaro
pacoteRPM(nocasodedistribuiesbaseadasnoRadHatouSlackware).Depoisdisso,basta
instalaropacotecomogerenciadordepacotes,queveremosnocaptulo5.
UmaopomaisavanadabaixarocdigofontedoWiresharkecompillo.Todosesses
mtodosserovistosnocaptulo5masacompilaodeprogramasexigeconhecimentosforado
escopobsicodesteSO.
7
Linuxdozero porFernandoMercs
Captulo3Obsicodosistema
O Linuxpossuimuitasparticularidadesteisesuaoperaoconscienteessencialparaa
seguranadosistema.Nestecaptuloveremosoquechamodebsicotcnico.Preste
bastanteatenonelepoisapartirdaquivocvaiprecisardetodososconceitosbemslidosem
suamente.
3.1Estruturadediretrios
ArvoredediretriosdoLinux,assimcomotodarvoredomundo,temorigemnaraiz.Este
diretrioraizrepresentadopelocaractere/.
Cadadiretriopossuiumafunoespecfica,queveremosagora:
/raizdosistema.Todososdiretriosabaixososubdiretriosdeste.
/binArmazenaarquivosexecutveis(tambmconhecidoscomobinrios).
/bootContmokerneleosarquivosquegerenciamoboot.
/cdromumlink(atalho)paraodiretrio/media/cdrom.
/devMantmosarquivosusadosparaconexocomosdispositivosdehardware.
/etcCentraliza(quase)todasasconfiguraesdosprogramas.
/homeArmazenaosarquivospessoaisdousurio.comooMeusdocumentosdoWindows.
/initrdCriaumramdiskparacarregarokernel.
/libArmazenaasbibliotecas,conhecidascomolibs,quesoequivalentessDLLsdoWindows.
/lost+foundMantmarquivosrecuperadosapsfalhas.Equivalentesaos.CHKdoWindows.
/mediaPontodemontagensparamdiasremovveis,somente(disquetes,pendrives,CDROM...)
/mntPontodemontagensparaHDs.
/optArmazenaprogramasquenosonativosdadistribuio.
/procNoarmazenaarquivosesimrefernciasinformaesqueokernelproduzemtempo
real.
/rootO/homedousurioroot.Mantmseusarquivospessoaisseparadosdosdeoutrosusurios.
/sbinArmazenaosexecutveisquesorootpodeutilizar.
/srvArmazenaarquivoscompartilhados,dewebsites,servidoresFTP,etc.
/sysNestediretriomontadoumfilesystemchamadosysfs,queokernelutiliza.
/tmpContmarquivostemporrios.Estetemseucontedoexcludoacadainicializao.
/usrMantmamaioriadosdadosdosistema,emmodosomenteleitura.
/varArmazenadadosvariveis,comologsespooldeimpresso.
LembresequevocdeveconhecercadadiretriodaestruturadediretriosdoLinux.Este
umassuntomuitoimportantequeoacompanharemtodaajornadadeaprendizado.
3.3Nveisdeoperao(runlevels)
NoLinuxexistem7runlevels,quevode0a6.Soeles:
0desligado
1monousurio
2multiusurio
3multiusuriocomrede
4reservadolocal
5multiusuriocomambientegrfico
6reinicializao
Orunlevel0oestadodesligado.Assim,sevocmandarseusistemaoperarnorunlevel0,
eledesligar.Parecebobo,masnecessrioparaodesligamentodosistema.
8
Linuxdozero porFernandoMercs
Orunlevel1paramanutenonosistemaessuportaqueumusurioefetueloginno
sistema.Logicamente,esteusuriooroot,oadministradoretodopoderosodomundoLinux.
Orunlevel2permitequeoutrosusuriostambmfaamlogin,massomenteloginlocal.
Orunlevel3diferedo2porquetambmpermiteologinremotoeacessorede.
Orunlevel4ummodoondesoadministradorlocaldosistemapodeinteragir.Eledifere
sedorunlevel1empoucosdetalhes.
Orunlevel5usadoquandoseestusandooambientegrfico.
Orunlevel6reiniciaosistemaesegueamesmalgicadeimportnciaqueorunlevel0.
Ocomandoquealteraorunlevelatualoinit.Esuasintaxe:
#init<runlevel>
Experimentealternarentreosrunlevelsmassaibamassaibaqueas
distribuiesDebianbasednorespeitamestepadro.NoDebian,os
runlevelsde2a4soidnticosao5.
3.4Operaesbsicasnoshell
Antescomear,vamosdefiniroqueumshell.Esteumsoftwareinterpretadorde
comandosquerodasobreokernelLinux.ummeiodecomunicaoentrevoceokernel.Um
dosshellsmaisusadosnomundoLinuxatualmenteoBASH(BourneAgainSHell)eneleque
concentraremosnossosestudos.Esteexecutvelestlocalizadoem/bin/bash.Umalistacom
todososshellsdisponveisemsuadistribuiomantidaem/etc/shells.Senoestiversatisfeito
vocpodeinstalarouremovermaisshells,deacordocomseugostoounecessidade.
Jsabemosoqueumshell,agoravamosexplorarascaractersticasinternasdoBASHque
otornamumapoderosalinguagemdeprogramaoeeternoaliadoaoadministradorouusurio
dosistemaLinux.
OBASHpossuicomandosinternos(tambmchamadosdebuiltins),comorotinasdeloop,
seleoecondio.Nestecurso,abordaremososcomandosbsicosenoabordaremosobash
scripting(programaodescriptscomBASH).
Asintaxepadrodoshell:
$comando<parmetros>
Percebaoespaoentreosdois.Primeirodigitamosocomandoedepoissuasopes
(tambmchamadasdeparmetros).Porexemplo,paralistarocontedodeumdiretrio
podemoscomandar:
$ls
Massequisermosumalistadetalhada,temosqueinformaralgumparmetroqueo
comandolspermita.Oparmetrolpodeserusadoassim:
9
Linuxdozero porFernandoMercs
$lsl
Outroimportanteassuntosoosmetacaracteres(*,?e[]).Seelesestiverempresentesna
linhadecomando,oshellosinterpretadaseguinteforma:
*ocorrnciadequalquercaractereemqualquerquantidade.
?ocorrnciaqualquercaracterenico.
[]ocorrnciadeumintervalopersonalizado.
Porexemplo,paralistartodososarquivosquecomecemcomapalavramente,usamos:
$lsmente*
Sequisssemossomenteosarquivosqueterminamemmente,usamos:
$ls*mente
Agora,osquecontenhamapalavramente:
$ls*mente*
Paralistarosarquivosqueterminamemmenteseguidodeumnicocaracterequalquer:
$lsmente?
Paralistaosarquivosquetenhamseunomenoformato<nmero>mente,usamos:
$ls[09]mente
Agoravamosveralgunsdosprincipaiscomandos,queusaremosbastante:
cat
Estecomandoequivalenteaotype,doMSDOS.Elerecebecomoentradaumarquivoeexibe
seucontedonasadapadro(stdout)que,pordefinio,ateladomonitor.
Noexemploacima,ocontedodoarquivoperlprint.pl,queestnodiretrio
/home/fernando/scriptsexibidonatela.
ls
Estecomandolargamenteutilizado.Elelistaocontedodeumdiretrio.
10
Linuxdozero porFernandoMercs
Noexemploacima,mostreiousodolscomosparmetrosmaiscomuns:
lexibeumalistadetalhada.
aexibetambmosarquivosocultos.
hformatomaisamigvelnostamanhosdosarquivos.
mkdir
Criadiretrios.
11
Linuxdozero porFernandoMercs
rmdir
Removediretrios.
cp
Copiaarquivosetambmdiretriosinteiros(comoparmetroR).
rm
Removearquivosoudiretriosinteiros(comoparmetroR).
12
Linuxdozero porFernandoMercs
tail
Exibeasltimas10linhasdeumarquivo(muitotilparachecarlogs).
df
Exibeestatsticasdautilizaodosdiscosrgidos.Oparmetrohorientaocomandoaexibir
unidadesdegrandezamaisamigveis(Kparaquilobytes,Mparamegabyteseassimpordiante).
free
Exibeestatsticasdautilizaodememria.Oparmetromexibeasadaemmegabytes.
halt
Desligaosistema.
13
Linuxdozero porFernandoMercs
reboot
Reiniciaosistema.
fgrep
Esteumfiltrorpido,quepodeserutilizadoparafiltrarocontedodeumarquivo,deacordo
comumaocorrncia.
cd
Entranumdiretrio.
echo
Usadoparaexibirumtextoestticoouocontedodeumavarivel.
AvarivelPATHnoLinux,assimcomonoWindowsumavarivelde
ambientequearmazenaoscaminhosconhecidosparaosprogramas
executveis.Graasaela,podemosdigitarumcomandousando
somenteseunomeaoinvsdocaminhocompleto.Semela,o
comandolsdeveriasercomandadonaformacompleta:/bin/ls.
ExistemcentenasdecomandosnoLinux,cadaumcomdezenasdeopes.Umalista
bemcompletapodeserencontradaemwww.oreillynet.com/linux/cmd
14
Linuxdozero porFernandoMercs
Captulo4Hardwareedrivers
U madasgrandesvantagensdesteSOterumgerenciamentodehardwaremuitobem
definido,oquefacilitaaconsultasinformaesdosdispositivosdehardware.ParaoLinux,
tudoumdispositivo(device,emingls).Paraverocontedoatualdamemria,porexemplo,
bastacomandar#cat/dev/mem.Snoespereentender,porquenohtextopurona
memria.
Analiseocontedododiretrio/devetenteidentificaroutrositensdehardware.
4.1Comandosdegerenciamentodehardware
Jfalamosdoscomandosdfefree,masexistemoutrosquefacilitamavidanahoradeconsultar
informaesouconfiguraritensdehardware.Soeles:
lspci
FamosocomandoquelistatodososdispositivosconectadosaobarramentoPCIdoPC.
ObarramentoPCIocentronervosodosmicrocomputadoresatuais.
Neleestoconectadosquasetodososdispositivos.Noconfunda
barramentoPCIcomslotsPCI.Asplacasnessesslotstambmesto
conectadasestebarramento,maselejexistedentrodoPC.
15
Linuxdozero porFernandoMercs
lsusb
ListaosdispositivosconectadosaobarramentoUSB.
dmidecode
Ofereceumaextensalista,comdetalhadasinformaessobrecadaitemdehardwarenoPC.Esta
listatograndequeseuusomaiscomumespecificandooitemdesejadocomoparmetro
t.
16
Linuxdozero porFernandoMercs
4.2Osistema/proc
Almdestescomandos,temosumaoutrafontedeinformaoqueosistemadearquivos
/proc.EstepodenosfornecerpreciosasinformaessobreohardwaredoPC.Vejaalguns
exemplos:
Informaessobreomicroprocessador:
Informaesdeusodasinterrupes(IRQs):
17
Linuxdozero porFernandoMercs
InformaesdeusodosendereosdeE/S:
Informaessobreaspartiesdosistema:
Algunsprogramasnonativoscomoolshw,hwinfoeomemtest86+
tambmpodemserteisnagernciadehardware.EmsistemasDebian,
elespodemserinstaladofacilmentepelosrepositriosAPTcomo
comando#aptgetinstalllshwhwinfomemtest86+.
18
Linuxdozero porFernandoMercs
4.3Mdulos
Osdrivers,noLinux,sousadosatravsdemdulos.Naverdade,podemosdizerqueos
driverssochamadosdemdulos.Namaioriadoscasos,oLinuxjvemcomosmdulos
necessriosparareconheceregerenciargrandepartedosdispositivosdehardwaremaspode
acontecerdeumdispositivonotermdulonativonosistemaparaseufuncionamento.Neste
caso,htrsalternativas:
Algunsfabricantesoferecemmdulosprcompilados(emformadepacote)para
download.Bastabaixloeinstallo(vocvercomoinstalarpacotesnocaptulo5).
Seosfabricantes,ouatmesmoterceiros,ofereceremocdigofontedomdulopara
download,vocterquebaixarotarball(cdigofontecompactado),descompactar,
compilarestemduloecarregloemmemria.
OutraopousarodriverdeWindowsparaestedispositivo,comalgumsoftwareLinux
quepermitaesterecurso(ndiswrapperumdeles,massparaplacasderede).
Novamosabordaracompilaodemdulospoisumassuntomaiscomplexoenose
encaixaemumcontextodecursobsicodeLinux.Nosepreocupecomissoporagorapoisa
maioriadoshardwareexistentesjsosuportadospeloLinuxnativamenteeatendncia
aumentarcadavezmaisestalistadehardwarescompatveis.;o)
19
Linuxdozero porFernandoMercs
Captulo5Gerenciamentodepacotes
C onformeditoantes,umpacoteprcompiladopodeserdotipoDEBouRPM.Asformasde
gerenciamentodestesdoistiposdepacotessodiferentes.Oprimeirogerenciadoporum
programachamadoDPKG.Osegundo,porumprogramaquetemomesmonomedotipo,ou
seja,RPM.
5.1DPKG(DebianPacKaGe)
EsteogerenciadordepacotesnativodoDebian,queutilizamosparainstalaros
pacotes.debbaixadosdainternetouadquiridoatravsdeoutrosmeios(CDROM,etc).Sua
sintaxe:
#dpkg<opes>nomedopacote.deb
AsopesmaiscomunsdoDPKGso:
PpacoteRemoveumpacoteinstaladoetodososseusarquivosdeconfigurao.
LpacoteMostraquaissoeondeestotodososarquivosqueopacotecriounosistema.
lListatodosospacotesinstaladosedesinstalados.
ipacoteInstalaumpacote.deb.
IpacoteExibeinformaessobreumpacote.
cpacoteExibeoquesercriadopelopacote.tilparasaberoqueseralteradoemseu
sistema,antesdainstalaodopacote.
importantelembrardasbibliotecas(libraries)nestemomento,umavezquemuitos
pacotesnecessitamdebibliotecasparasereminstalados.Porexemplo,opacotevi,umclssico
editordetextos,dependedeumabibliotecachamadalibdl.so.2.Seelanoestiverinstalada,no
serpossvelinstalarovi.Essarelaochamasedependnciadepacotes.Emnossoexemplo,
pararesolveresteproblema,bastabaixaropacotelibdl.so.2.debeinstalloantesdovi.Masese
opacotelibdl.so.2.debdependerdeoutralib,quenoestinstalada?Bem,nestecasovocter
queinstalla.
Adependnciadepacotespodegerarumtrabalhorduoeainda,seumalibraryfor
removida,ospacotesquedependemdelairoparardefuncionar.Porisso,gerenciarbemas
dependnciasumatarefaimportantssimanomundoLinuxeessatarefacabiavoc,ata
chegadadoAPT,queveremosmaisadiante.
Algunspacotesaosereminstaladosexibemtelasdeconfiguraoondeousurioseta
vriasopesparaofuncionamentodopacoteemquesto.Todavia,depoisqueaconfigurao
finalizadavocpodedesejarvoltarnelaparamudaralgo.ParaissoexisteumvariantedoDPKG
chamadodedkpgreconfigureesuasintaxe:
#dpkgreconfigure<nomedopacote>
Lembresesemprequeeleexiste!
20
Linuxdozero porFernandoMercs
5.2RPM(RedHatPackageManager)
EsteogerenciadordepacotesnativodoRedHatmasfoiadotadoemmuitas
distribuiescomoSlackwareeSUSE.
Suasintaxe:
#rpm<opes>nomedopacote.rpmOUnomedopacote
AsopesdoRPMmaiscomunsso:
ipacoteinstalaumpacoteRPM.
qamostraospacotesinstalados.
epacoteremoveumpacote.
Fpacoteatualizaumpacoteinstalado.
Upacoteatualizaumpacoteinstalado.Seestenoestiverinstalado,instalao.
OexemploabaixoinstalaopacotedoJavanosistema:
Percebaqueadicioneioparmetrovnestecomando.Elecolocao
RPMemmodoverbose(detalhado)eseuusoencorajadoemtodasas
operaesenosnainstalaodepacotes.
5.3APT(AdvancedPackageTool)
EstaameninadosolhosnoquedizrespeitoaogerenciamentodepacotesnoDebian.
EleumfrontendparaoDPKGmastambmtemfunesprprias.Asprincipaisfacilidadesque
eleofereceso:
OAPTseconectaaosservidoresdesuadistribuio,baixaopacoteparavoceoinstala.
Issotudocomumalinhadecomando.Issoeliminaotrabalhodeprocurarumpacote.deb
nainternet,baixareinstalarviaDPKG.
Resolveasdependnciasautomaticamente.Assim,nocasodainstalaodovi
apresentadaquandofalamosdoDPKG,alibdl.so.2seriainstaladaautomaticamenteao
instalarovi,assimcomotodasasoutrasdependncias.
Mantmumalistalocalcomtodosospacotesdisponveisparadownloadqueconstamnos
repositriosdesuadistribuio,oquepermiteumabuscamuitootimizada.
Poderemoverospacotesporcompleto,semcomprometeraestabilidadedosistema,uma
21
Linuxdozero porFernandoMercs
vezqueasdependnciassogerenciadas.
Comtodosessesrecursos,snosrestavercomooAPTfaztudoisso.Paracomear,emum
sistemaquetenhaoAPTinstalado,existeumarquivo/etc/apt/sources.list.Esteoarquivode
fontes,ondeficamosendereoseopesdosrepositrios(sitesHTTPeFTPquemantmos
pacotesdesuadistribuioparadownload).Umexemplodeumsources.listsegueabaixo:
AsintaxegeraldoAPT:
#aptget/cache<ao><nomedopacote>
Seguealistadecomandosmaisusados:
aptgetupdateAtualizaalistalocaldepacotesdisponveis.Estecomandoloseusources.listem
buscadeendereosderepositriosdepacotes.Entoelebaixaumarquivocompactadoque
contmumalistaemtextocomosnomes,versesedescriodetodosospacotesquecada
repositriopossui,paraarmazenaremcachelocal.
aptgetupgradeAtualizaospacotesinstaladosnosistema,combasenoseucachelocal.Isso
querfizerqueseumpacotepresentenoseusistemaestnumaversoanterioraomesmopacote
listadonocachelocal,estecomandoirbaixaronovopacoteeinstallo,substituindooantigo.
aptgetdistupgradeAtualizaosistemaemsi,instalandonovasversesdekernel(sedisponveis)
eoutroscomponentescrticos.
aptgetinstall<pacote>Instalaumpacoteetodasassuasdependncias.
aptgetremove<pacote>Removeumpacoteinstalado.
aptgetremovepurge<pacote>Removeumpacoteinstaladoetodososseusarquivosde
configurao.
aptcachesearch<expresso>procuraporumpacoteondeonomeouadescriocasecom
aexpressoinformada.Porexemplo,paraprocurarprogramasqueeditemimagensvocpode
usar$aptcachesearchimageeditor.Vejaoexemplodeumabuscapelapalavrawireshark:
aptcacheshow<pacote>Exibeinformaessobreopacoteemquesto.
22
Linuxdozero porFernandoMercs
aptcachedepends<pacote>Exibeasdependnciasdopacote.
Sempreatualizeseucachelocaldepacotescomocomandoaptget
updateantesdeinstalarumnovopacoteparacertificarsedequeest
usandoaltimaversodisponvelnorepositriodesuadistribuio.
5.4YUM(YellowDogUpdaterModified)
Estegerenciadordepacotestambmgerenciaasdependnciasautomaticamenteeseu
funcionamentobemsimilaraodoAPT.Omotivodeeucitlonestaapostilaqueele
largamenteutilizadopeloFedoraCore.
Suasintaxe:
#yum<ao><pacote>
Aes:
listMostraospacotesdisponveisnosrepositrios.
search<expresso>procuraporumpacoteondeonomeouadescriocasecomaexpresso
informada.
install<pacote>instalaumpacote.
updateAtualizaosistema.
info<pacote>Exibedetalhessobreopacote.
5.4Tarballs
Umtarballumarquivocompactadoeempacotadoquecontmumcdigofontedeum
programa,umMakefileealgumadocumentao.Umadasvantagensdesedistribuirumsoftware
nesteformatoqueelepodeserutilizadoemqualquerdistribuio(diferentedeumpacoteDEB
ouRPM,quenecessitaserusadonadistribuiocorretaparaoqualfoifeito).Essavantagemexiste
porqueocdigofontedosoftwareestnotarball.Adesavantagemprtica,logicamente,ter
decompilarestecdigoparacomearausaroprograma.
Muitosadministradoresdesistemapreferemcompilartodosossoftwares
deseussistemasparaobterummelhordesempenhoeremoverou
adicionaropesealteraesnocdigofonteantesdacompilao.
Geralmenteaextensodotarball(apesardeoLinuxignorarextenses).tar.gzou.tgz.
AextensousadaparadizeraousurioqueumarquivoempacotadocomoTARe
compactadocomoGZip.umaestticatil.
Paradescompactaredesempacotarumtarball,geralmenteusamosoprprioprograma
tar,daseguintemaneira:
$tarxvzf<tarball.tar.gz>
Estecomandovaicriarumdiretriocomomesmonomedotarball,queconteros
arquivosdescompactadosenodecorrerdadescompactao,ocaminhocompletodecada
23
Linuxdozero porFernandoMercs
arquivocriadoexibidonatela.
Abaixoumexemplodedescompactaodeumtarball:
Aofinaldadescompactao,voctertodoocdigofontedoprogramaepoder
compilloparauso.Noentanto,antesdisto,vocdeveterinstaladosocompiladornecessrioe
todasasdependnciasqueestecdigofonteexige.Estaumatarefaminuciosa,queno
abordaremosnestecursobsico,massaibaquepossvel.;o)
24
Linuxdozero porFernandoMercs
Captulo6Controledeacesso
EsteumassuntoprazerosodomundoLinux.graasssuaspermissesquevrusemambientes
Linuxsoinviveis,queaseguranareforadaequeaestabilidadedosistemagarantida.
Cadaarquivoediretriopossuiumconjuntodepermisses(leitura,escritaeexecuo)
quecontrolamoseuacessoapartirdetrsfontes(dono,grupoeoutros).Entenderesses
conceitosessencial.
6.1Usuriosegrupos
OsusuriosdoLinuxsoarmazenados,porpadro,noarquivo/etc/passwdenquantoos
grupos,em/etc/group.
Umtrechoexemplodeumarquivopasswdmostradoabaixo.
Paraentenderaestruturadessearquivo,precisamossaberoquecadavalorseparadospor
doispontossignifica.Analiseabaixo:
login:senha:UID:GID:Informaesdiversas:diretrioinicial:shellinicial
Ocampologin,comoonomesugere,onomequeousuriodigitaparaentrarnosistema.O
camposenhasegueamesmalgica,masobviamenteexisteumacriptografiaparaproteoda
senhadousurio.UID(UserIDentifier)eGID(GroupIDentifier)sonmerosqueosistemausapara
identificarosusuriosegrupos.OndeestInformaesdiversas,podemaparecerinformaes
queforamatribudasaousurionomomentodesuacriao,comoonomecompleto,nmeros
detelefone,etc.Odiretrioinicialdefineocaminhoondeousurioestarquandofizerlogin
(geralmenteseudiretriopessoalem/home).Eporfim,oshellinicialdefinequalshellousurio
vaireceber,porpadro,logoapslogarsenosistema.
Vocdeveterpercebidoquealgunsusuriostmumshellparalogin
definidocomo/bin/false.Esteumshellespecial,queimpedequalquer
loginnele.Issosignificaqueousurioqueestivercomesteshellpadro
setadonoconseguirlogarnosistema.
25
Linuxdozero porFernandoMercs
Oscomandosmaiscomunsparasegerenciarusuriosegruposso:
adduser<usurio>
Adicionausuriosaosistema.
useradd<usurio>
Similaraoadduser,masnopedesenhaparaousurio,nemcriadiretriohomeparaomesmo.
userdel<usurio>
Removeumusurio.
passwd<usurio>
Alteraasenhadeumusurio.Oprpriousuriopodeusarestecomando,seoadministradordo
sistemapermitir,paraalterarsuaprpriasenha.
su<usurio>
Trocaseuusurioatualparaousurioespecificado.necessriosaberasenhadousuriode
destino.
sudo
Qualquercomandoprecedidodesteexecutadocomoroot.Parafuncionar,ousurioatualdeve
estarconfiguradonoarquivo/etc/sudoers.
w
Mostraquaisusuriosestologadosnosistema.
addgroup<grupo>
Adicionaumgrupovazioaosistema.
groupdel<grupo>
Removeumgrupomasnoremoveosusurriosquepertencemaele.
26
Linuxdozero porFernandoMercs
6.2Arquvosediretrios
Depoisdeconhecersobreosusuriosegrupos,agoraestudaremosefetivamenteas
permissesdearquivos.Cadaarquivooudiretriopossuitrsconjuntosdepermissesque
relacionamseaodono,grupoeoutros,respectivamente.Essesconjuntossoconstitudosdetrs
permissesquesoadeler,deescreveredeexecutarepodemsercombinadas.Paraentender
melhor,acompanheoexemploabaixo:
Concentresenalinhareferenteaoarquivofirst.c.Acolunadepermissesaprimeirae
mostraoseguinteconjuntodecaracteres:rwrr.Essassoaspermissesdoarquivoeesses
caracteresdizemtudoqueprecisamossabersobreelas.Depoistemosonomedodonodo
arquivo,quenestecasofernando.Logoaps,onomedogrupodestearquivo,quenestecaso
users.
Oprimeiroconjuntodetrscaracteresdepoisdohfeninicialrepresentaaspermissesdo
donodoarquivo.Osprximostrscaracteresrepresentamaspermissesdogrupoeosltimastrs,
dosoutrosusurios.
Apermissorsignificaleitura(read).
Apermissowsignificaescrita(write).
Apermissoxsignificaexecuo(execute).
Aausnciadealgumapermissoindicadaporumhfen().
Assim,aspermissesdestearquivopodemserrepresentadasnatabelaabaixo:
Oformatosemprerwx,nestaordem.Destaforma,volteimagemeanaliseaspermisses
doarquivoarping2.06.tar.gz.Vocdevesercapazdeinterpretlas.
Umaoutraformaderepresentaodaspermissesdeumarquivousandoanotao
27
Linuxdozero porFernandoMercs
octal(quevaide07).Paraestarepresentao,aspermissesr,wexpossuemvalores
correspondentes,dasegundamaneira:
r w x
4 2 1
Pararepresentaraspermissesnesteformado,somamososvalorescorrespondentes.Por
exemplo,noarquivofirst.cquefoiusadonoexemploanterior,aspermissessorw(dono),r
(grupo)er(outros).Sesomarmosestesvaloresseparadamenteparadono,grupoeoutrostemos:
r+w=2+4=6
r=4
r=4
Agoraconcatenamososresultados,oquenosdonmero644.Portanto,podemosdizer
queaspermissesdestearquivoso644.Paratreinar,obtenhaapermissoemoctaldoarquivo
arping2.06.tar.gz.
Ocomandoquemudaaspermissesdeumarquivooudiretrioochmod:
$chmod<permisses>arquivo
Porexemplo:
$chmod440meuarquivo
Ocomandoacimadefinirqueodonodoarquivopodesomenteler(4),assimcomoo
dono.Josoutros,nopodemnada(0).
Voctambmpodealteraraspermissesdeumdiretrioetodooseucontedocoma
opoR:
#chmodR763scripts/
Ocomandoacimafazcomquetodososarquivosdodiretrioscriptseseussubdiretrios
recebamaspermissesabaixo:
Onmero7defineleitura(4),escrita(2)eexecuo(1)paraodono.
Onmero6defineleitura(4)eescrita(2)paraogrupo.
Onmero3defineescrita(2)eexecuo(1)paraoutros.
Altimapermisso(3ouwx)noscolocanumasituaointeressante.Osoutrospodem
escrevereexecutarosarquivosmasnopodemllos.Serqueissodcerto?Bom,naverdade
dcertosim.Destejeito,outrospoderoapagararquivosmassemverseucontedoeno
poderoexecutloporqueaexecuoprecisadepermissodeleitura.
Acostumesecomaspermissesnoformatooctalpoissolargamente
utilizadasedepoisquevocseacostumar,ficarfcilutilizlas.
Haindacomandosparasealterarodonoeogrupodosarquivosediretriosquesoo
chowneochgrp,respectivamente.
28
Linuxdozero porFernandoMercs
Captulo7Montagemeformataodemdias
T odamdiadearmazenamentoprecisasermontadanosistemaoperacionalparaserutilizada.
Montarsignificaatribuirumpontodemontagem(umdiretrio)paraqueosdadosdamdia
possamseracessadosatravsdele.Assim,sevoccriarumdiretriochamado/minha_partioe
montarasuasegundapartionele,bastaentrarnestediretrioparaverosdadosdasua
partio.
Amontagemfeitacomocomandomount.Suasintaxe:
#mountt<filesystem><mdia><ponto_de_montagem>
7.1Partiesdedisco
Paramontarumapartio/dev/sdb1FAT32nodiretrio/mnt/sdb1,fazemos:
#mkdir/mnt/sdb1
#mounttvfat/dev/sdb1/mnt/sdb1
Oprimeirocomandoscriouodiretrioenquantoosegundorealizouamontagemno
diretriocriado.Agorasuapartiodeveestaracessvelnestediretrio.
Algumasopesdefilesystemsparaoparmetrotsovfat,reiserfs,ext3,ntfs,iso9660,
dentreoutras.Comande#manmountparaverumalistacompleta.
NOTA:Vocpodeusarocomandomanprecedendoqualquercomandoquetiverdvidapara
lerseumanual.
Inversamente,temosumcomandoparadesmontagemdemdiasqueoumount:
#umount/dev/sdb1
Ocomandoacimadesmontarapartio/dev/sdb1(independentedopontoondeela
estmontada).
29
Linuxdozero porFernandoMercs
7.2Disquetes
OsdisquetessoformatadosnosistemasdearquivosFAT12,oriundodoMSDOSesua
sintaxeparamontagem:
#mounttmsdos/dev/fd0/media/floppy
Nocasoacima,monteioprimeirodrivededisquete(/dev/fd0)nodiretrio/media/floppy.Seeste
diretrionoexistir,ocomandomountretornarumerroeamontagemnoserrealizada.
Aformataofsicadedisquetespodeserfeitacomocomandofdformat,assim:
#fdformat/dev/fd0
Vocpodeinstalaropacotedosfstoolsparaterdisponveisoscomandos
mkfs.vfatemkfs.msdos,quetambmformatamdisquetesdemaneira
lgica.
7.3CDs/DVDs
ParamontarCDROMouDVDROM,vocpodeusaroatalho/media/cdromdireto:
#mount/media/cdrom
Sepreferirusarasintaxegeraldocomandomount,useofilesystemqueestetipodemdia
utiliza,chamadoISO9660,destejeito:
#mounttiso9660/dev/cdrom/media/cdrom
7.4MdiasUSB
Conformecitadonoinciodocaptulo,asmdiasdearmazenamentoUSBso
reconhecidaspelosistemadamesmaformaqueosdiscosSATA/SCSI.Portanto,seuformatoser
/dev/sdxn,ondexumaletraapsoseultimodiscoSATA/SCSI(senohouverdiscodestetipo,
seraletraa)enonmerodapartiodoseupendrive,quegeralmente1.Logo,se
houverdoisHDsSATAnamquina,oacessoaopendriveservia/dev/sdc1.
Ofilesystemusadonaopotdomountvaidependerdotipodepartiodopendrive,
assimcomonaspartiesdeHDs.Porpadro,estesdispositivosvmdefbricacomuma
partioFAT32porquestesdecompatibilidadecomSOsdiferentes,utilizandotodooseu
espaodisponvelenovejorazoparaalterarisso.Nestecasoamontagemser:
#mounttvfat/dev/sdc1/media/pendrive
Logicamente,odiretrio/media/pendrivedeveexistir.
30
Linuxdozero porFernandoMercs
Captulo8Configuraoderede
O Linuxmuitopoderosoquandoestemrede.Suasferramentasderedenosajudama
diagnosticarproblemasemambientesmistosoupuramentedeoutrossistemasoperacionais.
OLinuxreconheceasplacasderedeethernetcomoeth0,eth1eassimpordiante.Jas
semfio,sochamadasdeath0(ouwlan0)eassimsucessivamente.
8.1Comandosdeconfigurao
Parachecarsuasconfiguraesderedeocomandoidealoifconfig.Apesardesua
semelhanaemnomecomoipconfigdossistemasWindows,oifconfigcapazdealteraras
configuraesdeIPdaplaca,desabilitla,adicionarmaisdeumIPnamesmaplaca(aliasdeIP),
alterardemaneiralgicaseuendereoMAC,dentreoutraspoderosasfunes.Algunsexemplos
deutilizaosoexibidosabaixo:
Noexemploacima,primeiroconfigureiainterfaceeth0comoIP192.168.0.2emscarade
24bits(255.255.255.0),usandoocomando#ifconfigeth0192.168.0.2/24.Depois,listeia
configuraodainterfaceeth0paracertificarmedequeestcomoIPquecoloquei
anteriormente.
Maisabaixo,configureiaeth0comoIP192.168.0.2emscarade8bits(255.0.0.0),utilizando
comando#ifconfigeth0192.168.0.2netmask255.0.0.0.Novamentelisteiaconfiguraodaeth0
paraveroresultado.
NotetambmqueoutrasinformaestaiscomoHWaddr(endereoMAC)eBcast
(endereodebroadcast)tambmsolistadascomocomandoifconfig.
Umoutrocomandomuitoutilizadoodhclient,queatualizaosendereosobtidosdeum
31
Linuxdozero porFernandoMercs
servidorDHCP(DynamicHostControlProtocol)presentenarede.Secomandadosemparmetros,
odhclientvairequisitarendereosparatodasasinterfacesderedeconfiguradascomoDHCP.Sua
sintaxepararenovaroIPdeumainterfaceespecfica:
#dhcpclient<interface>
Algumasdistribuiesnousamocomandodhclient.Nestecasovoc
podeusaroscomandospumpoudhcpcd.
8.2Arquivosdeconfigurao
AoalteraroIPououtraconfiguraocomoifconfig,taisalteraessserovlidasparaa
sessoatualdousurio,ouseja,sevocdeslogarerelogar,suasalteraesseroperdidas.Para
fazeralteraesdeformafixa,necessrioescrevernumarquivo.Seunomevaidependerda
distribuioutilizada.
NoDebianeseusderivados(Ubuntu,Kurumin,Knoppix,etc),oarquivoquemantmessas
configuraeso/etc/network/interfaces.Segueumexemplopraticamenteautoexplicativo,
abaixo:
JemsistemasbaseadosnoRedHat,osarquivosficamseparados.Existeumarquivopara
32
Linuxdozero porFernandoMercs
cadainterfacederede,todosnodiretrio/etc/sysconfig/network/.Nocasodaeth0,sero
/etc/sysconfig/network/ifcfgeth0.Segueumexemplo:
Comandostradicionaisderedecomoping,route,netstatenslookuptambmesto
presentes.
33
Linuxdozero porFernandoMercs
Captulo9Ambientegrfico
E mnossoltimocaptulo,abordaremosoambientegrfico,essencialmentenecessrioquando
setratadousodomsticodoLinux.
OambientegrficodoLinuxumacombinaoentreumservidor,umgerenciadorde
sesseseumgerenciador(oucliente)grfico.Parautilizarumambientegrficonecessrio
instalartodosessescomponentes.
9.1ServidoresX
Oservidorgrficoosoftwareresponsvelporcontrolarohardwaredemonitor,placade
vdeo,mouse,tecladoetodososdispositivosbsicosdeusonumambientegrfico.Configuraes
maisavanadascomofreqnciadevibraohorizontal,taxaderepetiodetecladoou
resoluesdeponteirosdemousetambmsodesuaresponsabilidade.
OsservidoresgrficosmaisconhecidossooXWindoweoX.Org.Estesegundouma
variaodoprimeiro,maselessoquaseidnticos.Visualmente,elesnopassamdeumatela
cinza,semconesoujanelas.Essasfunessoprovidaspelosgerenciadoresgrficos,que
veremosadiante.
9.2Gerenciadoresgrficos
OsgerenciadoresgrficosmaisfamosossooGnomeeoKDE.AmbosrodamsobreoX
WindowouX.Org.Masantesqueosgerenciadoresgrficossejamefetivamenteinicializados,
necessrioumgerenciadordesesso,quepodeseroXDM,oKDM,dentreoutros.Emresumo,um
ambientegrficonoLinuxformadopor:Servidorgrfico+Gerenciadordesesso+Gerenciador
grfico.
EmsistemasDebianbased,podemosinstalaroXWindowcomoseguintecomando:
#aptgetinstallxwindowsystem
Parainstalarogerenciadorgrfico(oqueincluiumgerenciadordesesso),use:
#aptgetinstallxfce4
EstecomandoinstalaroXFCE,umgerenciadormuitomaislevequeoGnomeouKDE,mas
commenosrecursos.
Feitaainstalaoeconfigurao,inicieoXcom:
$startx
34
Linuxdozero porFernandoMercs
Referncias
SistemasOperacionaisModernosAndrewS.Tanenbaum
DescobrindooLinux,NOVATECEribertoMotaFilho
LinuxinaNutshellO'Reilly
35