aboutsummaryrefslogtreecommitdiff
path: root/pt_BR.ISO8859-1/books
diff options
context:
space:
mode:
authorEdson Brandi <ebrandi@FreeBSD.org>2019-05-16 06:52:47 +0000
committerEdson Brandi <ebrandi@FreeBSD.org>2019-05-16 06:52:47 +0000
commit06db5bcf1da7739f2f8d310a8d5d2ade672483c5 (patch)
tree95c668ee8dd8216d131e19c95af877a67ef73b91 /pt_BR.ISO8859-1/books
parentde9b6b65ceddd82be2bde1522f3a37775c245134 (diff)
downloaddoc-06db5bcf1da7739f2f8d310a8d5d2ade672483c5.tar.gz
doc-06db5bcf1da7739f2f8d310a8d5d2ade672483c5.zip
pt_BR.ISO8859-1/books/handbook: New pt_BR translation into .po format
* content synchronized with en_US document (r52873) * book.xml converted to .po * .po file was translated to pt_BR * .po and .xml file has been set to UTF-8 encoding * information about volunteers who translated and/or revised the document was added to the header of the .po file. Obtained from: The FreeBSD Brazilian Portuguese Documentation Project
Notes
Notes: svn path=/head/; revision=53035
Diffstat (limited to 'pt_BR.ISO8859-1/books')
-rw-r--r--pt_BR.ISO8859-1/books/Makefile1
-rw-r--r--pt_BR.ISO8859-1/books/handbook/Makefile4
-rw-r--r--pt_BR.ISO8859-1/books/handbook/book.xml45798
-rw-r--r--pt_BR.ISO8859-1/books/handbook/pt_BR.po130950
4 files changed, 176647 insertions, 106 deletions
diff --git a/pt_BR.ISO8859-1/books/Makefile b/pt_BR.ISO8859-1/books/Makefile
index ff49856435..29db4d639f 100644
--- a/pt_BR.ISO8859-1/books/Makefile
+++ b/pt_BR.ISO8859-1/books/Makefile
@@ -8,6 +8,7 @@
SUBDIR+= dev-model
SUBDIR+= faq
SUBDIR+= fdp-primer
+SUBDIR+= handbook
SUBDIR+= porters-handbook
DOC_PREFIX?= ${.CURDIR}/../..
diff --git a/pt_BR.ISO8859-1/books/handbook/Makefile b/pt_BR.ISO8859-1/books/handbook/Makefile
index 49531ae1b6..4b1ebb5a49 100644
--- a/pt_BR.ISO8859-1/books/handbook/Makefile
+++ b/pt_BR.ISO8859-1/books/handbook/Makefile
@@ -6,10 +6,10 @@
# The FreeBSD Documentation Project
# The FreeBSD Brazilian Portuguese Documentation Project
#
-# Original revision: 1.53
+# Original revision: r52873
#
-MAINTAINER=lioux@FreeBSD.org
+MAINTAINER=ebrandi@FreeBSD.org
DOC?= book
diff --git a/pt_BR.ISO8859-1/books/handbook/book.xml b/pt_BR.ISO8859-1/books/handbook/book.xml
index 08d5d5c751..31bb090b0f 100644
--- a/pt_BR.ISO8859-1/books/handbook/book.xml
+++ b/pt_BR.ISO8859-1/books/handbook/book.xml
@@ -1,156 +1,45746 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!DOCTYPE book PUBLIC "-//FreeBSD//DTD DocBook XML V5.0-Based Extension//EN"
- "http://www.FreeBSD.org/XML/share/xml/freebsd50.dtd" [
-<!ENTITY % chapters SYSTEM "chapters.ent"> %chapters;
-]>
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE book PUBLIC "-//FreeBSD//DTD DocBook XML V5.0-Based Extension//EN" "http://www.FreeBSD.org/XML/share/xml/freebsd50.dtd" [
<!--
The FreeBSD Documentation Project
- The FreeBSD Brazilian Portuguese Documentation Project
- Original revision: 1.120
$FreeBSD$
--->
-<book xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" version="5.0" xml:lang="pt_br">
+--><!ENTITY % chapters SYSTEM "chapters.ent">
+<!--
+ Creates entities for each chapter in the FreeBSD Handbook. Each entity
+ is named chap.foo, where foo is the value of the id attribute on that
+ chapter, and corresponds to the name of the directory in which that
+ chapter's .xml file is stored.
+
+ Chapters should be listed in the order in which they are referenced.
+
+ $FreeBSD$
+--><!ENTITY chap.preface SYSTEM "preface/preface.xml">
+<!ENTITY % pgpkeys SYSTEM "../../../share/pgpkeys/pgpkeys.ent">
+<!-- $FreeBSD$ --><!-- PGP keyblocks --><!ENTITY pgpkey.0mp SYSTEM "0mp.key">
+<!ENTITY pgpkey.aaron SYSTEM "aaron.key">
+<!ENTITY pgpkey.ache SYSTEM "ache.key">
+<!ENTITY pgpkey.achim SYSTEM "achim.key">
+<!ENTITY pgpkey.acm SYSTEM "acm.key">
+<!ENTITY pgpkey.adamw SYSTEM "adamw.key">
+<!ENTITY pgpkey.adrian SYSTEM "adrian.key">
+<!ENTITY pgpkey.adridg SYSTEM "adridg.key">
+<!ENTITY pgpkey.ae SYSTEM "ae.key">
+<!ENTITY pgpkey.ahze SYSTEM "ahze.key">
+<!ENTITY pgpkey.ak SYSTEM "ak.key">
+<!ENTITY pgpkey.alc SYSTEM "alc.key">
+<!ENTITY pgpkey.ale SYSTEM "ale.key">
+<!ENTITY pgpkey.alepulver SYSTEM "alepulver.key">
+<!ENTITY pgpkey.alex SYSTEM "alex.key">
+<!ENTITY pgpkey.alexbl SYSTEM "alexbl.key">
+<!ENTITY pgpkey.alexey SYSTEM "alexey.key">
+<!ENTITY pgpkey.allanjude SYSTEM "allanjude.key">
+<!ENTITY pgpkey.alonso SYSTEM "alonso.key">
+<!ENTITY pgpkey.amdmi3 SYSTEM "amdmi3.key">
+<!ENTITY pgpkey.anchie SYSTEM "anchie.key">
+<!ENTITY pgpkey.anders SYSTEM "anders.key">
+<!ENTITY pgpkey.andreas SYSTEM "andreas.key">
+<!ENTITY pgpkey.andrew SYSTEM "andrew.key">
+<!ENTITY pgpkey.anholt SYSTEM "anholt.key">
+<!ENTITY pgpkey.anish SYSTEM "anish.key">
+<!ENTITY pgpkey.anray SYSTEM "anray.key">
+<!ENTITY pgpkey.antoine SYSTEM "antoine.key">
+<!ENTITY pgpkey.araujo SYSTEM "araujo.key">
+<!ENTITY pgpkey.arichardson SYSTEM "arichardson.key">
+<!ENTITY pgpkey.ariff SYSTEM "ariff.key">
+<!ENTITY pgpkey.arrowd SYSTEM "arrowd.key">
+<!ENTITY pgpkey.art SYSTEM "art.key">
+<!ENTITY pgpkey.arun SYSTEM "arun.key">
+<!ENTITY pgpkey.arundel SYSTEM "arundel.key">
+<!ENTITY pgpkey.arved SYSTEM "arved.key">
+<!ENTITY pgpkey.arybchik SYSTEM "arybchik.key">
+<!ENTITY pgpkey.asami SYSTEM "asami.key">
+<!ENTITY pgpkey.ashish SYSTEM "ashish.key">
+<!ENTITY pgpkey.asomers SYSTEM "asomers.key">
+<!ENTITY pgpkey.avatar SYSTEM "avatar.key">
+<!ENTITY pgpkey.avg SYSTEM "avg.key">
+<!ENTITY pgpkey.avilla SYSTEM "avilla.key">
+<!ENTITY pgpkey.avl SYSTEM "avl.key">
+<!ENTITY pgpkey.avos SYSTEM "avos.key">
+<!ENTITY pgpkey.badger SYSTEM "badger.key">
+<!ENTITY pgpkey.bakul SYSTEM "bakul.key">
+<!ENTITY pgpkey.bapt SYSTEM "bapt.key">
+<!ENTITY pgpkey.bar SYSTEM "bar.key">
+<!ENTITY pgpkey.barner SYSTEM "barner.key">
+<!ENTITY pgpkey.bcr SYSTEM "bcr.key">
+<!ENTITY pgpkey.bcran SYSTEM "bcran.key">
+<!ENTITY pgpkey.bdrewery SYSTEM "bdrewery.key">
+<!ENTITY pgpkey.beat SYSTEM "beat.key">
+<!ENTITY pgpkey.beech SYSTEM "beech.key">
+<!ENTITY pgpkey.ben SYSTEM "ben.key">
+<!ENTITY pgpkey.benjsc SYSTEM "benjsc.key">
+<!ENTITY pgpkey.benno SYSTEM "benno.key">
+<!ENTITY pgpkey.bf SYSTEM "bf.key">
+<!ENTITY pgpkey.bhaga SYSTEM "bhaga.key">
+<!ENTITY pgpkey.bhd SYSTEM "bhd.key">
+<!ENTITY pgpkey.bhughes SYSTEM "bhughes.key">
+<!ENTITY pgpkey.billf SYSTEM "billf.key">
+<!ENTITY pgpkey.bjk SYSTEM "bjk.key">
+<!ENTITY pgpkey.bk SYSTEM "bk.key">
+<!ENTITY pgpkey.blackend SYSTEM "blackend.key">
+<!ENTITY pgpkey.bland SYSTEM "bland.key">
+<!ENTITY pgpkey.bmah SYSTEM "bmah.key">
+<!ENTITY pgpkey.bms SYSTEM "bms.key">
+<!ENTITY pgpkey.bofh SYSTEM "bofh.key">
+<!ENTITY pgpkey.br SYSTEM "br.key">
+<!ENTITY pgpkey.brd SYSTEM "brd.key">
+<!ENTITY pgpkey.brian SYSTEM "brian.key">
+<!ENTITY pgpkey.brix SYSTEM "brix.key">
+<!ENTITY pgpkey.brnrd SYSTEM "brnrd.key">
+<!ENTITY pgpkey.brooks SYSTEM "brooks.key">
+<!ENTITY pgpkey.brueffer SYSTEM "brueffer.key">
+<!ENTITY pgpkey.bruno SYSTEM "bruno.key">
+<!ENTITY pgpkey.bryanv SYSTEM "bryanv.key">
+<!ENTITY pgpkey.bsam SYSTEM "bsam.key">
+<!ENTITY pgpkey.bschmidt SYSTEM "bschmidt.key">
+<!ENTITY pgpkey.bsd SYSTEM "bsd.key">
+<!ENTITY pgpkey.bushman SYSTEM "bushman.key">
+<!ENTITY pgpkey.bvs SYSTEM "bvs.key">
+<!ENTITY pgpkey.bwidawsk SYSTEM "bwidawsk.key">
+<!ENTITY pgpkey.bz SYSTEM "bz.key">
+<!ENTITY pgpkey.carl SYSTEM "carl.key">
+<!ENTITY pgpkey.cel SYSTEM "cel.key">
+<!ENTITY pgpkey.ceri SYSTEM "ceri.key">
+<!ENTITY pgpkey.cherry SYSTEM "cherry.key">
+<!ENTITY pgpkey.chinsan SYSTEM "chinsan.key">
+<!ENTITY pgpkey.chuck SYSTEM "chuck.key">
+<!ENTITY pgpkey.cjc SYSTEM "cjc.key">
+<!ENTITY pgpkey.cjh SYSTEM "cjh.key">
+<!ENTITY pgpkey.clement SYSTEM "clement.key">
+<!ENTITY pgpkey.clive SYSTEM "clive.key">
+<!ENTITY pgpkey.clsung SYSTEM "clsung.key">
+<!ENTITY pgpkey.cmt SYSTEM "cmt.key">
+<!ENTITY pgpkey.cokane SYSTEM "cokane.key">
+<!ENTITY pgpkey.core-secretary SYSTEM "core-secretary.key">
+<!ENTITY pgpkey.cperciva SYSTEM "cperciva.key">
+<!ENTITY pgpkey.cpm SYSTEM "cpm.key">
+<!ENTITY pgpkey.crees SYSTEM "crees.key">
+<!ENTITY pgpkey.cs SYSTEM "cs.key">
+<!ENTITY pgpkey.cshumway SYSTEM "cshumway.key">
+<!ENTITY pgpkey.csjp SYSTEM "csjp.key">
+<!ENTITY pgpkey.culot SYSTEM "culot.key">
+<!ENTITY pgpkey.cy SYSTEM "cy.key">
+<!ENTITY pgpkey.dab SYSTEM "dab.key">
+<!ENTITY pgpkey.daichi SYSTEM "daichi.key">
+<!ENTITY pgpkey.damien SYSTEM "damien.key">
+<!ENTITY pgpkey.danfe SYSTEM "danfe.key">
+<!ENTITY pgpkey.danger SYSTEM "danger.key">
+<!ENTITY pgpkey.danilo SYSTEM "danilo.key">
+<!ENTITY pgpkey.dannyboy SYSTEM "dannyboy.key">
+<!ENTITY pgpkey.das SYSTEM "das.key">
+<!ENTITY pgpkey.davidch SYSTEM "davidch.key">
+<!ENTITY pgpkey.davide SYSTEM "davide.key">
+<!ENTITY pgpkey.davidxu SYSTEM "davidxu.key">
+<!ENTITY pgpkey.db SYSTEM "db.key">
+<!ENTITY pgpkey.dbaio SYSTEM "dbaio.key">
+<!ENTITY pgpkey.dbn SYSTEM "dbn.key">
+<!ENTITY pgpkey.dch SYSTEM "dch.key">
+<!ENTITY pgpkey.dchagin SYSTEM "dchagin.key">
+<!ENTITY pgpkey.dcs SYSTEM "dcs.key">
+<!ENTITY pgpkey.dd SYSTEM "dd.key">
+<!ENTITY pgpkey.deb SYSTEM "deb.key">
+<!ENTITY pgpkey.decke SYSTEM "decke.key">
+<!ENTITY pgpkey.def SYSTEM "def.key">
+<!ENTITY pgpkey.deischen SYSTEM "deischen.key">
+<!ENTITY pgpkey.delphij SYSTEM "delphij.key">
+<!ENTITY pgpkey.demon SYSTEM "demon.key">
+<!ENTITY pgpkey.den SYSTEM "den.key">
+<!ENTITY pgpkey.des SYSTEM "des.key">
+<!ENTITY pgpkey.dfr SYSTEM "dfr.key">
+<!ENTITY pgpkey.dhartmei SYSTEM "dhartmei.key">
+<!ENTITY pgpkey.dhn SYSTEM "dhn.key">
+<!ENTITY pgpkey.dhw SYSTEM "dhw.key">
+<!ENTITY pgpkey.dim SYSTEM "dim.key">
+<!ENTITY pgpkey.dinoex SYSTEM "dinoex.key">
+<!ENTITY pgpkey.dru SYSTEM "dru.key">
+<!ENTITY pgpkey.dryice SYSTEM "dryice.key">
+<!ENTITY pgpkey.dteske SYSTEM "dteske.key">
+<!ENTITY pgpkey.dumbbell SYSTEM "dumbbell.key">
+<!ENTITY pgpkey.dutchdaemon SYSTEM "dutchdaemon.key">
+<!ENTITY pgpkey.dvl SYSTEM "dvl.key">
+<!ENTITY pgpkey.dwmalone SYSTEM "dwmalone.key">
+<!ENTITY pgpkey.eadler SYSTEM "eadler.key">
+<!ENTITY pgpkey.ebrandi SYSTEM "ebrandi.key">
+<!ENTITY pgpkey.ed SYSTEM "ed.key">
+<!ENTITY pgpkey.edavis SYSTEM "edavis.key">
+<!ENTITY pgpkey.edwin SYSTEM "edwin.key">
+<!ENTITY pgpkey.egypcio SYSTEM "egypcio.key">
+<!ENTITY pgpkey.ehaupt SYSTEM "ehaupt.key">
+<!ENTITY pgpkey.emaste SYSTEM "emaste.key">
+<!ENTITY pgpkey.emax SYSTEM "emax.key">
+<!ENTITY pgpkey.ericbsd SYSTEM "ericbsd.key">
+<!ENTITY pgpkey.erj SYSTEM "erj.key">
+<!ENTITY pgpkey.erwin SYSTEM "erwin.key">
+<!ENTITY pgpkey.eugen SYSTEM "eugen.key">
+<!ENTITY pgpkey.fabient SYSTEM "fabient.key">
+<!ENTITY pgpkey.fanf SYSTEM "fanf.key">
+<!ENTITY pgpkey.farrokhi SYSTEM "farrokhi.key">
+<!ENTITY pgpkey.feld SYSTEM "feld.key">
+<!ENTITY pgpkey.fernape SYSTEM "fernape.key">
+<!ENTITY pgpkey.fjoe SYSTEM "fjoe.key">
+<!ENTITY pgpkey.flo SYSTEM "flo.key">
+<!ENTITY pgpkey.fluffy SYSTEM "fluffy.key">
+<!ENTITY pgpkey.flz SYSTEM "flz.key">
+<!ENTITY pgpkey.foxfair SYSTEM "foxfair.key">
+<!ENTITY pgpkey.fsu SYSTEM "fsu.key">
+<!ENTITY pgpkey.gabor SYSTEM "gabor.key">
+<!ENTITY pgpkey.gad SYSTEM "gad.key">
+<!ENTITY pgpkey.gahr SYSTEM "gahr.key">
+<!ENTITY pgpkey.ganbold SYSTEM "ganbold.key">
+<!ENTITY pgpkey.garga SYSTEM "garga.key">
+<!ENTITY pgpkey.garys SYSTEM "garys.key">
+<!ENTITY pgpkey.gavin SYSTEM "gavin.key">
+<!ENTITY pgpkey.gblach SYSTEM "gblach.key">
+<!ENTITY pgpkey.gerald SYSTEM "gerald.key">
+<!ENTITY pgpkey.ghelmer SYSTEM "ghelmer.key">
+<!ENTITY pgpkey.gibbs SYSTEM "gibbs.key">
+<!ENTITY pgpkey.girgen SYSTEM "girgen.key">
+<!ENTITY pgpkey.gjb SYSTEM "gjb.key">
+<!ENTITY pgpkey.glarkin SYSTEM "glarkin.key">
+<!ENTITY pgpkey.gleb SYSTEM "gleb.key">
+<!ENTITY pgpkey.glebius SYSTEM "glebius.key">
+<!ENTITY pgpkey.glewis SYSTEM "glewis.key">
+<!ENTITY pgpkey.gnn SYSTEM "gnn.key">
+<!ENTITY pgpkey.gonzo SYSTEM "gonzo.key">
+<!ENTITY pgpkey.gordon SYSTEM "gordon.key">
+<!ENTITY pgpkey.green SYSTEM "green.key">
+<!ENTITY pgpkey.grehan SYSTEM "grehan.key">
+<!ENTITY pgpkey.grembo SYSTEM "grembo.key">
+<!ENTITY pgpkey.grog SYSTEM "grog.key">
+<!ENTITY pgpkey.gshapiro SYSTEM "gshapiro.key">
+<!ENTITY pgpkey.gsutter SYSTEM "gsutter.key">
+<!ENTITY pgpkey.guido SYSTEM "guido.key">
+<!ENTITY pgpkey.harti SYSTEM "harti.key">
+<!ENTITY pgpkey.hiren SYSTEM "hiren.key">
+<!ENTITY pgpkey.hmp SYSTEM "hmp.key">
+<!ENTITY pgpkey.hq SYSTEM "hq.key">
+<!ENTITY pgpkey.hrs SYSTEM "hrs.key">
+<!ENTITY pgpkey.ijliao SYSTEM "ijliao.key">
+<!ENTITY pgpkey.imp SYSTEM "imp.key">
+<!ENTITY pgpkey.issyl0 SYSTEM "issyl0.key">
+<!ENTITY pgpkey.itetcu SYSTEM "itetcu.key">
+<!ENTITY pgpkey.ivadasz SYSTEM "ivadasz.key">
+<!ENTITY pgpkey.ivoras SYSTEM "ivoras.key">
+<!ENTITY pgpkey.jacula SYSTEM "jacula.key">
+<!ENTITY pgpkey.jadawin SYSTEM "jadawin.key">
+<!ENTITY pgpkey.jah SYSTEM "jah.key">
+<!ENTITY pgpkey.jamie SYSTEM "jamie.key">
+<!ENTITY pgpkey.jase SYSTEM "jase.key">
+<!ENTITY pgpkey.jbeich SYSTEM "jbeich.key">
+<!ENTITY pgpkey.jcamou SYSTEM "jcamou.key">
+<!ENTITY pgpkey.jceel SYSTEM "jceel.key">
+<!ENTITY pgpkey.jch SYSTEM "jch.key">
+<!ENTITY pgpkey.jchandra SYSTEM "jchandra.key">
+<!ENTITY pgpkey.jdp SYSTEM "jdp.key">
+<!ENTITY pgpkey.jeb SYSTEM "jeb.key">
+<!ENTITY pgpkey.jedgar SYSTEM "jedgar.key">
+<!ENTITY pgpkey.jesper SYSTEM "jesper.key">
+<!ENTITY pgpkey.jgh SYSTEM "jgh.key">
+<!ENTITY pgpkey.jh SYSTEM "jh.key">
+<!ENTITY pgpkey.jhale SYSTEM "jhale.key">
+<!ENTITY pgpkey.jhay SYSTEM "jhay.key">
+<!ENTITY pgpkey.jhb SYSTEM "jhb.key">
+<!ENTITY pgpkey.jhibbits SYSTEM "jhibbits.key">
+<!ENTITY pgpkey.jhixson SYSTEM "jhixson.key">
+<!ENTITY pgpkey.jilles SYSTEM "jilles.key">
+<!ENTITY pgpkey.jim SYSTEM "jim.key">
+<!ENTITY pgpkey.jinmei SYSTEM "jinmei.key">
+<!ENTITY pgpkey.jkh SYSTEM "jkh.key">
+<!ENTITY pgpkey.jkim SYSTEM "jkim.key">
+<!ENTITY pgpkey.jkois SYSTEM "jkois.key">
+<!ENTITY pgpkey.jkoshy SYSTEM "jkoshy.key">
+<!ENTITY pgpkey.jlaffaye SYSTEM "jlaffaye.key">
+<!ENTITY pgpkey.jlh SYSTEM "jlh.key">
+<!ENTITY pgpkey.jmb SYSTEM "jmb.key">
+<!ENTITY pgpkey.jmcneill SYSTEM "jmcneill.key">
+<!ENTITY pgpkey.jmd SYSTEM "jmd.key">
+<!ENTITY pgpkey.jmelo SYSTEM "jmelo.key">
+<!ENTITY pgpkey.jmg SYSTEM "jmg.key">
+<!ENTITY pgpkey.jmmv SYSTEM "jmmv.key">
+<!ENTITY pgpkey.joe SYSTEM "joe.key">
+<!ENTITY pgpkey.joerg SYSTEM "joerg.key">
+<!ENTITY pgpkey.johalun SYSTEM "johalun.key">
+<!ENTITY pgpkey.johans SYSTEM "johans.key">
+<!ENTITY pgpkey.jon SYSTEM "jon.key">
+<!ENTITY pgpkey.jonathan SYSTEM "jonathan.key">
+<!ENTITY pgpkey.joneum SYSTEM "joneum.key">
+<!ENTITY pgpkey.josef SYSTEM "josef.key">
+<!ENTITY pgpkey.jpaetzel SYSTEM "jpaetzel.key">
+<!ENTITY pgpkey.jrm SYSTEM "jrm.key">
+<!ENTITY pgpkey.jsa SYSTEM "jsa.key">
+<!ENTITY pgpkey.jsm SYSTEM "jsm.key">
+<!ENTITY pgpkey.jtl SYSTEM "jtl.key">
+<!ENTITY pgpkey.junovitch SYSTEM "junovitch.key">
+<!ENTITY pgpkey.jwb SYSTEM "jwb.key">
+<!ENTITY pgpkey.jylefort SYSTEM "jylefort.key">
+<!ENTITY pgpkey.kadesai SYSTEM "kadesai.key">
+<!ENTITY pgpkey.kai SYSTEM "kai.key">
+<!ENTITY pgpkey.kaiw SYSTEM "kaiw.key">
+<!ENTITY pgpkey.kami SYSTEM "kami.key">
+<!ENTITY pgpkey.kan SYSTEM "kan.key">
+<!ENTITY pgpkey.karels SYSTEM "karels.key">
+<!ENTITY pgpkey.kato SYSTEM "kato.key">
+<!ENTITY pgpkey.kbowling SYSTEM "kbowling.key">
+<!ENTITY pgpkey.ken SYSTEM "ken.key">
+<!ENTITY pgpkey.kensmith SYSTEM "kensmith.key">
+<!ENTITY pgpkey.keramida SYSTEM "keramida.key">
+<!ENTITY pgpkey.kevans SYSTEM "kevans.key">
+<!ENTITY pgpkey.kevlo SYSTEM "kevlo.key">
+<!ENTITY pgpkey.keymaster SYSTEM "keymaster.key">
+<!ENTITY pgpkey.kib SYSTEM "kib.key">
+<!ENTITY pgpkey.kibab SYSTEM "kibab.key">
+<!ENTITY pgpkey.kmoore SYSTEM "kmoore.key">
+<!ENTITY pgpkey.knu SYSTEM "knu.key">
+<!ENTITY pgpkey.koitsu SYSTEM "koitsu.key">
+<!ENTITY pgpkey.kp SYSTEM "kp.key">
+<!ENTITY pgpkey.krion SYSTEM "krion.key">
+<!ENTITY pgpkey.kris SYSTEM "kris.key">
+<!ENTITY pgpkey.kuriyama SYSTEM "kuriyama.key">
+<!ENTITY pgpkey.kwm SYSTEM "kwm.key">
+<!ENTITY pgpkey.landonf SYSTEM "landonf.key">
+<!ENTITY pgpkey.laszlof SYSTEM "laszlof.key">
+<!ENTITY pgpkey.lawrance SYSTEM "lawrance.key">
+<!ENTITY pgpkey.lbr SYSTEM "lbr.key">
+<!ENTITY pgpkey.le SYSTEM "le.key">
+<!ENTITY pgpkey.leeym SYSTEM "leeym.key">
+<!ENTITY pgpkey.leitao SYSTEM "leitao.key">
+<!ENTITY pgpkey.ler SYSTEM "ler.key">
+<!ENTITY pgpkey.leres SYSTEM "leres.key">
+<!ENTITY pgpkey.lesi SYSTEM "lesi.key">
+<!ENTITY pgpkey.lev SYSTEM "lev.key">
+<!ENTITY pgpkey.lidl SYSTEM "lidl.key">
+<!ENTITY pgpkey.lifanov SYSTEM "lifanov.key">
+<!ENTITY pgpkey.linimon SYSTEM "linimon.key">
+<!ENTITY pgpkey.lioux SYSTEM "lioux.key">
+<!ENTITY pgpkey.lippe SYSTEM "lippe.key">
+<!ENTITY pgpkey.lme SYSTEM "lme.key">
+<!ENTITY pgpkey.loader SYSTEM "loader.key">
+<!ENTITY pgpkey.lofi SYSTEM "lofi.key">
+<!ENTITY pgpkey.loos SYSTEM "loos.key">
+<!ENTITY pgpkey.lstewart SYSTEM "lstewart.key">
+<!ENTITY pgpkey.lth SYSTEM "lth.key">
+<!ENTITY pgpkey.lulf SYSTEM "lulf.key">
+<!ENTITY pgpkey.luoqi SYSTEM "luoqi.key">
+<!ENTITY pgpkey.luporl SYSTEM "luporl.key">
+<!ENTITY pgpkey.lwhsu SYSTEM "lwhsu.key">
+<!ENTITY pgpkey.lx SYSTEM "lx.key">
+<!ENTITY pgpkey.madpilot SYSTEM "madpilot.key">
+<!ENTITY pgpkey.maho SYSTEM "maho.key">
+<!ENTITY pgpkey.mahrens SYSTEM "mahrens.key">
+<!ENTITY pgpkey.makc SYSTEM "makc.key">
+<!ENTITY pgpkey.mandree SYSTEM "mandree.key">
+<!ENTITY pgpkey.manolis SYSTEM "manolis.key">
+<!ENTITY pgpkey.manu SYSTEM "manu.key">
+<!ENTITY pgpkey.marcel SYSTEM "marcel.key">
+<!ENTITY pgpkey.marck SYSTEM "marck.key">
+<!ENTITY pgpkey.marcus SYSTEM "marcus.key">
+<!ENTITY pgpkey.marino SYSTEM "marino.key">
+<!ENTITY pgpkey.marius SYSTEM "marius.key">
+<!ENTITY pgpkey.markj SYSTEM "markj.key">
+<!ENTITY pgpkey.markm SYSTEM "markm.key">
+<!ENTITY pgpkey.markp SYSTEM "markp.key">
+<!ENTITY pgpkey.marks SYSTEM "marks.key">
+<!ENTITY pgpkey.markus SYSTEM "markus.key">
+<!ENTITY pgpkey.martymac SYSTEM "martymac.key">
+<!ENTITY pgpkey.mat SYSTEM "mat.key">
+<!ENTITY pgpkey.matteo SYSTEM "matteo.key">
+<!ENTITY pgpkey.matthew SYSTEM "matthew.key">
+<!ENTITY pgpkey.matusita SYSTEM "matusita.key">
+<!ENTITY pgpkey.mav SYSTEM "mav.key">
+<!ENTITY pgpkey.max SYSTEM "max.key">
+<!ENTITY pgpkey.maxim SYSTEM "maxim.key">
+<!ENTITY pgpkey.mbr SYSTEM "mbr.key">
+<!ENTITY pgpkey.mckay SYSTEM "mckay.key">
+<!ENTITY pgpkey.mckusick SYSTEM "mckusick.key">
+<!ENTITY pgpkey.mdf SYSTEM "mdf.key">
+<!ENTITY pgpkey.melifaro SYSTEM "melifaro.key">
+<!ENTITY pgpkey.meta SYSTEM "meta.key">
+<!ENTITY pgpkey.metal SYSTEM "metal.key">
+<!ENTITY pgpkey.mfechner SYSTEM "mfechner.key">
+<!ENTITY pgpkey.mheinen SYSTEM "mheinen.key">
+<!ENTITY pgpkey.mhorne SYSTEM "mhorne.key">
+<!ENTITY pgpkey.mi SYSTEM "mi.key">
+<!ENTITY pgpkey.mich SYSTEM "mich.key">
+<!ENTITY pgpkey.mikeh SYSTEM "mikeh.key">
+<!ENTITY pgpkey.milki SYSTEM "milki.key">
+<!ENTITY pgpkey.misha SYSTEM "misha.key">
+<!ENTITY pgpkey.miwi SYSTEM "miwi.key">
+<!ENTITY pgpkey.mizhka SYSTEM "mizhka.key">
+<!ENTITY pgpkey.mjg SYSTEM "mjg.key">
+<!ENTITY pgpkey.mjoras SYSTEM "mjoras.key">
+<!ENTITY pgpkey.mlaier SYSTEM "mlaier.key">
+<!ENTITY pgpkey.mm SYSTEM "mm.key">
+<!ENTITY pgpkey.mmel SYSTEM "mmel.key">
+<!ENTITY pgpkey.mmokhi SYSTEM "mmokhi.key">
+<!ENTITY pgpkey.mmoll SYSTEM "mmoll.key">
+<!ENTITY pgpkey.mnag SYSTEM "mnag.key">
+<!ENTITY pgpkey.mp SYSTEM "mp.key">
+<!ENTITY pgpkey.mr SYSTEM "mr.key">
+<!ENTITY pgpkey.mtm SYSTEM "mtm.key">
+<!ENTITY pgpkey.murray SYSTEM "murray.key">
+<!ENTITY pgpkey.mux SYSTEM "mux.key">
+<!ENTITY pgpkey.mva SYSTEM "mva.key">
+<!ENTITY pgpkey.mw SYSTEM "mw.key">
+<!ENTITY pgpkey.mwlucas SYSTEM "mwlucas.key">
+<!ENTITY pgpkey.naddy SYSTEM "naddy.key">
+<!ENTITY pgpkey.nate SYSTEM "nate.key">
+<!ENTITY pgpkey.nectar SYSTEM "nectar.key">
+<!ENTITY pgpkey.neel SYSTEM "neel.key">
+<!ENTITY pgpkey.nemoliu SYSTEM "nemoliu.key">
+<!ENTITY pgpkey.nemysis SYSTEM "nemysis.key">
+<!ENTITY pgpkey.netchild SYSTEM "netchild.key">
+<!ENTITY pgpkey.ngie SYSTEM "ngie.key">
+<!ENTITY pgpkey.niels SYSTEM "niels.key">
+<!ENTITY pgpkey.nik SYSTEM "nik.key">
+<!ENTITY pgpkey.niklas SYSTEM "niklas.key">
+<!ENTITY pgpkey.nivit SYSTEM "nivit.key">
+<!ENTITY pgpkey.njl SYSTEM "njl.key">
+<!ENTITY pgpkey.nork SYSTEM "nork.key">
+<!ENTITY pgpkey.novel SYSTEM "novel.key">
+<!ENTITY pgpkey.nox SYSTEM "nox.key">
+<!ENTITY pgpkey.np SYSTEM "np.key">
+<!ENTITY pgpkey.nsouch SYSTEM "nsouch.key">
+<!ENTITY pgpkey.nwhitehorn SYSTEM "nwhitehorn.key">
+<!ENTITY pgpkey.nyan SYSTEM "nyan.key">
+<!ENTITY pgpkey.obraun SYSTEM "obraun.key">
+<!ENTITY pgpkey.obrien SYSTEM "obrien.key">
+<!ENTITY pgpkey.ohauer SYSTEM "ohauer.key">
+<!ENTITY pgpkey.oleg SYSTEM "oleg.key">
+<!ENTITY pgpkey.olgeni SYSTEM "olgeni.key">
+<!ENTITY pgpkey.oliver SYSTEM "oliver.key">
+<!ENTITY pgpkey.olivier SYSTEM "olivier.key">
+<!ENTITY pgpkey.olivierd SYSTEM "olivierd.key">
+<!ENTITY pgpkey.oshogbo SYSTEM "oshogbo.key">
+<!ENTITY pgpkey.patrick SYSTEM "patrick.key">
+<!ENTITY pgpkey.paul SYSTEM "paul.key">
+<!ENTITY pgpkey.pav SYSTEM "pav.key">
+<!ENTITY pgpkey.pclin SYSTEM "pclin.key">
+<!ENTITY pgpkey.peadar SYSTEM "peadar.key">
+<!ENTITY pgpkey.perky SYSTEM "perky.key">
+<!ENTITY pgpkey.petef SYSTEM "petef.key">
+<!ENTITY pgpkey.peter SYSTEM "peter.key">
+<!ENTITY pgpkey.peterj SYSTEM "peterj.key">
+<!ENTITY pgpkey.pfg SYSTEM "pfg.key">
+<!ENTITY pgpkey.pgj SYSTEM "pgj.key">
+<!ENTITY pgpkey.pgollucci SYSTEM "pgollucci.key">
+<!ENTITY pgpkey.phantom SYSTEM "phantom.key">
+<!ENTITY pgpkey.phil SYSTEM "phil.key">
+<!ENTITY pgpkey.philip SYSTEM "philip.key">
+<!ENTITY pgpkey.phk SYSTEM "phk.key">
+<!ENTITY pgpkey.pho SYSTEM "pho.key">
+<!ENTITY pgpkey.pi SYSTEM "pi.key">
+<!ENTITY pgpkey.pirzyk SYSTEM "pirzyk.key">
+<!ENTITY pgpkey.pizzamig SYSTEM "pizzamig.key">
+<!ENTITY pgpkey.pjd SYSTEM "pjd.key">
+<!ENTITY pgpkey.pkelsey SYSTEM "pkelsey.key">
+<!ENTITY pgpkey.pkubaj SYSTEM "pkubaj.key">
+<!ENTITY pgpkey.plosher SYSTEM "plosher.key">
+<!ENTITY pgpkey.pluknet SYSTEM "pluknet.key">
+<!ENTITY pgpkey.portmgr-secretary SYSTEM "portmgr-secretary.key">
+<!ENTITY pgpkey.pstef SYSTEM "pstef.key">
+<!ENTITY pgpkey.qingli SYSTEM "qingli.key">
+<!ENTITY pgpkey.rafan SYSTEM "rafan.key">
+<!ENTITY pgpkey.rakuco SYSTEM "rakuco.key">
+<!ENTITY pgpkey.ram SYSTEM "ram.key">
+<!ENTITY pgpkey.ray SYSTEM "ray.key">
+<!ENTITY pgpkey.rcyu SYSTEM "rcyu.key">
+<!ENTITY pgpkey.rdivacky SYSTEM "rdivacky.key">
+<!ENTITY pgpkey.rea SYSTEM "rea.key">
+<!ENTITY pgpkey.rees SYSTEM "rees.key">
+<!ENTITY pgpkey.remko SYSTEM "remko.key">
+<!ENTITY pgpkey.rene SYSTEM "rene.key">
+<!ENTITY pgpkey.rezny SYSTEM "rezny.key">
+<!ENTITY pgpkey.rgrimes SYSTEM "rgrimes.key">
+<!ENTITY pgpkey.rich SYSTEM "rich.key">
+<!ENTITY pgpkey.riggs SYSTEM "riggs.key">
+<!ENTITY pgpkey.rigoletto SYSTEM "rigoletto.key">
+<!ENTITY pgpkey.rik SYSTEM "rik.key">
+<!ENTITY pgpkey.rink SYSTEM "rink.key">
+<!ENTITY pgpkey.rlibby SYSTEM "rlibby.key">
+<!ENTITY pgpkey.rm SYSTEM "rm.key">
+<!ENTITY pgpkey.rmacklem SYSTEM "rmacklem.key">
+<!ENTITY pgpkey.rmh SYSTEM "rmh.key">
+<!ENTITY pgpkey.rnoland SYSTEM "rnoland.key">
+<!ENTITY pgpkey.roam SYSTEM "roam.key">
+<!ENTITY pgpkey.robak SYSTEM "robak.key">
+<!ENTITY pgpkey.roberto SYSTEM "roberto.key">
+<!ENTITY pgpkey.rodrigc SYSTEM "rodrigc.key">
+<!ENTITY pgpkey.rodrigo SYSTEM "rodrigo.key">
+<!ENTITY pgpkey.romain SYSTEM "romain.key">
+<!ENTITY pgpkey.royger SYSTEM "royger.key">
+<!ENTITY pgpkey.rpaulo SYSTEM "rpaulo.key">
+<!ENTITY pgpkey.rpokala SYSTEM "rpokala.key">
+<!ENTITY pgpkey.rrs SYSTEM "rrs.key">
+<!ENTITY pgpkey.rstone SYSTEM "rstone.key">
+<!ENTITY pgpkey.ru SYSTEM "ru.key">
+<!ENTITY pgpkey.rushani SYSTEM "rushani.key">
+<!ENTITY pgpkey.ryusuke SYSTEM "ryusuke.key">
+<!ENTITY pgpkey.sahil SYSTEM "sahil.key">
+<!ENTITY pgpkey.sam SYSTEM "sam.key">
+<!ENTITY pgpkey.sanpei SYSTEM "sanpei.key">
+<!ENTITY pgpkey.sat SYSTEM "sat.key">
+<!ENTITY pgpkey.sbruno SYSTEM "sbruno.key">
+<!ENTITY pgpkey.sbz SYSTEM "sbz.key">
+<!ENTITY pgpkey.scheidell SYSTEM "scheidell.key">
+<!ENTITY pgpkey.schweikh SYSTEM "schweikh.key">
+<!ENTITY pgpkey.scop SYSTEM "scop.key">
+<!ENTITY pgpkey.scottl SYSTEM "scottl.key">
+<!ENTITY pgpkey.se SYSTEM "se.key">
+<!ENTITY pgpkey.seanc SYSTEM "seanc.key">
+<!ENTITY pgpkey.secteam-secretary SYSTEM "secteam-secretary.key">
+<!ENTITY pgpkey.security-officer SYSTEM "security-officer.key">
+<!ENTITY pgpkey.sef SYSTEM "sef.key">
+<!ENTITY pgpkey.sem SYSTEM "sem.key">
+<!ENTITY pgpkey.sephe SYSTEM "sephe.key">
+<!ENTITY pgpkey.sepotvin SYSTEM "sepotvin.key">
+<!ENTITY pgpkey.sergei SYSTEM "sergei.key">
+<!ENTITY pgpkey.sevan SYSTEM "sevan.key">
+<!ENTITY pgpkey.sgalabov SYSTEM "sgalabov.key">
+<!ENTITY pgpkey.shaun SYSTEM "shaun.key">
+<!ENTITY pgpkey.sheldonh SYSTEM "sheldonh.key">
+<!ENTITY pgpkey.shurd SYSTEM "shurd.key">
+<!ENTITY pgpkey.simon SYSTEM "simon.key">
+<!ENTITY pgpkey.sjg SYSTEM "sjg.key">
+<!ENTITY pgpkey.skra SYSTEM "skra.key">
+<!ENTITY pgpkey.skreuzer SYSTEM "skreuzer.key">
+<!ENTITY pgpkey.slavash SYSTEM "slavash.key">
+<!ENTITY pgpkey.slm SYSTEM "slm.key">
+<!ENTITY pgpkey.snb SYSTEM "snb.key">
+<!ENTITY pgpkey.sobomax SYSTEM "sobomax.key">
+<!ENTITY pgpkey.sson SYSTEM "sson.key">
+<!ENTITY pgpkey.ssouhlal SYSTEM "ssouhlal.key">
+<!ENTITY pgpkey.stas SYSTEM "stas.key">
+<!ENTITY pgpkey.stefan SYSTEM "stefan.key">
+<!ENTITY pgpkey.stefanf SYSTEM "stefanf.key">
+<!ENTITY pgpkey.stephane SYSTEM "stephane.key">
+<!ENTITY pgpkey.stephen SYSTEM "stephen.key">
+<!ENTITY pgpkey.stevek SYSTEM "stevek.key">
+<!ENTITY pgpkey.sunpoet SYSTEM "sunpoet.key">
+<!ENTITY pgpkey.swills SYSTEM "swills.key">
+<!ENTITY pgpkey.sylvio SYSTEM "sylvio.key">
+<!ENTITY pgpkey.syrinx SYSTEM "syrinx.key">
+<!ENTITY pgpkey.syuu SYSTEM "syuu.key">
+<!ENTITY pgpkey.tabthorpe SYSTEM "tabthorpe.key">
+<!ENTITY pgpkey.taras SYSTEM "taras.key">
+<!ENTITY pgpkey.tcberner SYSTEM "tcberner.key">
+<!ENTITY pgpkey.tdb SYSTEM "tdb.key">
+<!ENTITY pgpkey.theraven SYSTEM "theraven.key">
+<!ENTITY pgpkey.thierry SYSTEM "thierry.key">
+<!ENTITY pgpkey.thj SYSTEM "thj.key">
+<!ENTITY pgpkey.thomas SYSTEM "thomas.key">
+<!ENTITY pgpkey.thompsa SYSTEM "thompsa.key">
+<!ENTITY pgpkey.tijl SYSTEM "tijl.key">
+<!ENTITY pgpkey.timur SYSTEM "timur.key">
+<!ENTITY pgpkey.tj SYSTEM "tj.key">
+<!ENTITY pgpkey.tmclaugh SYSTEM "tmclaugh.key">
+<!ENTITY pgpkey.tmm SYSTEM "tmm.key">
+<!ENTITY pgpkey.tmseck SYSTEM "tmseck.key">
+<!ENTITY pgpkey.tmunro SYSTEM "tmunro.key">
+<!ENTITY pgpkey.tobez SYSTEM "tobez.key">
+<!ENTITY pgpkey.tobik SYSTEM "tobik.key">
+<!ENTITY pgpkey.tota SYSTEM "tota.key">
+<!ENTITY pgpkey.trasz SYSTEM "trasz.key">
+<!ENTITY pgpkey.trevor SYSTEM "trevor.key">
+<!ENTITY pgpkey.trhodes SYSTEM "trhodes.key">
+<!ENTITY pgpkey.trociny SYSTEM "trociny.key">
+<!ENTITY pgpkey.truckman SYSTEM "truckman.key">
+<!ENTITY pgpkey.tsoome SYSTEM "tsoome.key">
+<!ENTITY pgpkey.tuexen SYSTEM "tuexen.key">
+<!ENTITY pgpkey.twinterg SYSTEM "twinterg.key">
+<!ENTITY pgpkey.tz SYSTEM "tz.key">
+<!ENTITY pgpkey.ue SYSTEM "ue.key">
+<!ENTITY pgpkey.ultima SYSTEM "ultima.key">
+<!ENTITY pgpkey.ume SYSTEM "ume.key">
+<!ENTITY pgpkey.ups SYSTEM "ups.key">
+<!ENTITY pgpkey.uqs SYSTEM "uqs.key">
+<!ENTITY pgpkey.vangyzen SYSTEM "vangyzen.key">
+<!ENTITY pgpkey.vanilla SYSTEM "vanilla.key">
+<!ENTITY pgpkey.vd SYSTEM "vd.key">
+<!ENTITY pgpkey.versus SYSTEM "versus.key">
+<!ENTITY pgpkey.vg SYSTEM "vg.key">
+<!ENTITY pgpkey.viny SYSTEM "viny.key">
+<!ENTITY pgpkey.vkashyap SYSTEM "vkashyap.key">
+<!ENTITY pgpkey.vmaffione SYSTEM "vmaffione.key">
+<!ENTITY pgpkey.vs SYSTEM "vs.key">
+<!ENTITY pgpkey.vsevolod SYSTEM "vsevolod.key">
+<!ENTITY pgpkey.wblock SYSTEM "wblock.key">
+<!ENTITY pgpkey.wen SYSTEM "wen.key">
+<!ENTITY pgpkey.weongyo SYSTEM "weongyo.key">
+<!ENTITY pgpkey.wes SYSTEM "wes.key">
+<!ENTITY pgpkey.wg SYSTEM "wg.key">
+<!ENTITY pgpkey.whu SYSTEM "whu.key">
+<!ENTITY pgpkey.wilko SYSTEM "wilko.key">
+<!ENTITY pgpkey.will SYSTEM "will.key">
+<!ENTITY pgpkey.wkoszek SYSTEM "wkoszek.key">
+<!ENTITY pgpkey.wma SYSTEM "wma.key">
+<!ENTITY pgpkey.wollman SYSTEM "wollman.key">
+<!ENTITY pgpkey.woodsb02 SYSTEM "woodsb02.key">
+<!ENTITY pgpkey.wosch SYSTEM "wosch.key">
+<!ENTITY pgpkey.wulf SYSTEM "wulf.key">
+<!ENTITY pgpkey.wxs SYSTEM "wxs.key">
+<!ENTITY pgpkey.xmj SYSTEM "xmj.key">
+<!ENTITY pgpkey.xride SYSTEM "xride.key">
+<!ENTITY pgpkey.ygy SYSTEM "ygy.key">
+<!ENTITY pgpkey.yoichi SYSTEM "yoichi.key">
+<!ENTITY pgpkey.yongari SYSTEM "yongari.key">
+<!ENTITY pgpkey.yuri SYSTEM "yuri.key">
+<!ENTITY pgpkey.yuripv SYSTEM "yuripv.key">
+<!ENTITY pgpkey.yzlin SYSTEM "yzlin.key">
+<!ENTITY pgpkey.zack SYSTEM "zack.key">
+<!ENTITY pgpkey.zbb SYSTEM "zbb.key">
+<!ENTITY pgpkey.zeising SYSTEM "zeising.key">
+<!ENTITY pgpkey.zi SYSTEM "zi.key">
+<!ENTITY pgpkey.zml SYSTEM "zml.key">
+<!ENTITY pgpkey.zont SYSTEM "zont.key">
+<!ENTITY section.pgpkeys-core SYSTEM "pgpkeys-core.xml">
+<!ENTITY section.pgpkeys-developers SYSTEM "pgpkeys-developers.xml">
+<!ENTITY section.pgpkeys-officers SYSTEM "pgpkeys-officers.xml">
+<!ENTITY section.pgpkeys-other SYSTEM "pgpkeys-other.xml">
+<!-- Part One --><!ENTITY chap.introduction SYSTEM "introduction/chapter.xml">
+<!ENTITY chap.bsdinstall SYSTEM "bsdinstall/chapter.xml">
+<!ENTITY chap.basics SYSTEM "basics/chapter.xml">
+<!ENTITY chap.ports SYSTEM "ports/chapter.xml">
+<!ENTITY chap.x11 SYSTEM "x11/chapter.xml">
+<!-- Part Two --><!ENTITY chap.desktop SYSTEM "desktop/chapter.xml">
+<!ENTITY chap.multimedia SYSTEM "multimedia/chapter.xml">
+<!ENTITY chap.kernelconfig SYSTEM "kernelconfig/chapter.xml">
+<!ENTITY chap.printing SYSTEM "printing/chapter.xml">
+<!ENTITY chap.linuxemu SYSTEM "linuxemu/chapter.xml">
+<!-- Part Three --><!ENTITY chap.config SYSTEM "config/chapter.xml">
+<!ENTITY chap.boot SYSTEM "boot/chapter.xml">
+<!ENTITY chap.security SYSTEM "security/chapter.xml">
+<!ENTITY chap.jails SYSTEM "jails/chapter.xml">
+<!ENTITY chap.mac SYSTEM "mac/chapter.xml">
+<!ENTITY chap.audit SYSTEM "audit/chapter.xml">
+<!ENTITY chap.disks SYSTEM "disks/chapter.xml">
+<!ENTITY chap.geom SYSTEM "geom/chapter.xml">
+<!ENTITY chap.zfs SYSTEM "zfs/chapter.xml">
+<!ENTITY chap.filesystems SYSTEM "filesystems/chapter.xml">
+<!ENTITY chap.virtualization SYSTEM "virtualization/chapter.xml">
+<!ENTITY chap.l10n SYSTEM "l10n/chapter.xml">
+<!ENTITY chap.cutting-edge SYSTEM "cutting-edge/chapter.xml">
+<!ENTITY chap.dtrace SYSTEM "dtrace/chapter.xml">
+<!ENTITY chap.usb-device-mode SYSTEM "usb-device-mode/chapter.xml">
+<!-- Part Four --><!ENTITY chap.serialcomms SYSTEM "serialcomms/chapter.xml">
+<!ENTITY chap.ppp-and-slip SYSTEM "ppp-and-slip/chapter.xml">
+<!ENTITY chap.mail SYSTEM "mail/chapter.xml">
+<!ENTITY chap.network-servers SYSTEM "network-servers/chapter.xml">
+<!ENTITY chap.firewalls SYSTEM "firewalls/chapter.xml">
+<!ENTITY chap.advanced-networking SYSTEM "advanced-networking/chapter.xml">
+<!-- Part Five (appendices) --><!ENTITY chap.mirrors SYSTEM "mirrors/chapter.xml">
+<!ENTITY chap.mirrors.lastmod.inc SYSTEM "mirrors.lastmod.inc">
+<!ENTITY chap.mirrors.ftp.index.inc SYSTEM "mirrors.xml.ftp.index.inc">
+<!ENTITY chap.mirrors.ftp.inc SYSTEM "mirrors.xml.ftp.inc">
+<!ENTITY chap.bibliography SYSTEM "bibliography/chapter.xml">
+<!ENTITY chap.eresources SYSTEM "eresources/chapter.xml">
+<!ENTITY chap.eresources.www.index.inc SYSTEM "eresources.xml.www.index.inc">
+<!ENTITY chap.eresources.www.inc SYSTEM "eresources.xml.www.inc">
+<!ENTITY chap.pgpkeys SYSTEM "pgpkeys/chapter.xml">
+<!ENTITY chap.freebsd-glossary SYSTEM "../../share/xml/glossary.ent">
+<!ENTITY chap.index "<index xmlns='http://docbook.org/ns/docbook'/>">
+<!ENTITY chap.colophon SYSTEM "colophon.xml">
+<!ENTITY % txtfiles SYSTEM "txtfiles.ent">
+<!--
+ Creates entities for each .txt screenshot that is included in the
+ Handbook.
+
+ Each entity is named txt.dir.foo, where dir is the directory in
+ which it is stored, and foo is its filename, without the '.txt'
+ extension.
+
+ Entities should be listed in alphabetical order.
+
+ $FreeBSD$
+-->]>
+<book xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:its="http://www.w3.org/2005/11/its" version="5.0" xml:lang="pt_BR">
+
+ <info>
+ <its:rules xmlns:db="http://docbook.org/ns/docbook" version="1.0">
+
+ <its:translateRule translate="no" selector="//db:programlisting[@role='pgpfingerprint']"/>
+
+ <its:translateRule translate="no" selector="//db:programlisting[@role='pgpkey']"/>
+
+ <its:translateRule translate="no" selector="//db:sect2[starts-with(@xml:id,'pgpkey-')]"/>
+ </its:rules>
- <!-- Brazilian Portuguese Localization-->
+ <title>FreeBSD Handbook</title>
+
+ <author><orgname>Projeto de Documentação do FreeBSD</orgname></author>
+
+ <pubdate its:translate="no">$FreeBSD$</pubdate>
+
+ <releaseinfo its:translate="no">$FreeBSD$</releaseinfo>
+
+ <copyright><year>1995</year> <year>1996</year> <year>1997</year> <year>1998</year> <year>1999</year> <year>2000</year> <year>2001</year> <year>2002</year> <year>2003</year> <year>2004</year> <year>2005</year> <year>2006</year> <year>2007</year> <year>2008</year> <year>2009</year> <year>2010</year> <year>2011</year> <year>2012</year> <year>2013</year> <year>2014</year> <year>2015</year> <year>2016</year> <year>2017</year> <year>2018</year> <year>2019</year> <holder>The FreeBSD Documentation Project</holder></copyright>
- <info><title>Manual do FreeBSD</title>
+<legalnotice xml:id="legalnotice">
+ <title>Copyright</title>
- <author><orgname>Projeto de Documentao do FreeBSD</orgname></author>
+ <para>Redistribution and use in source (XML DocBook) and 'compiled' forms (XML, HTML, PDF, PostScript, RTF and so forth) with or without modification, are permitted provided that the following conditions are met:</para>
- <pubdate>Fevereiro 1999</pubdate>
+ <orderedlist>
+ <listitem>
+ <para>Redistributions of source code (XML DocBook) must retain the above copyright notice, this list of conditions and the following disclaimer as the first lines of this file unmodified.</para>
+ </listitem>
- <releaseinfo>$FreeBSD$</releaseinfo>
+ <listitem>
+ <para>Redistributions in compiled form (transformed to other DTDs, converted to PDF, PostScript, RTF and other formats) 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.</para>
+ </listitem>
+ </orderedlist>
- <copyright>
- <year>1995</year>
- <year>1996</year>
- <year>1997</year>
- <year>1998</year>
- <year>1999</year>
- <year>2000</year>
- <year>2001</year>
- <year>2002</year>
- <holder>Projeto de Documentao do FreeBSD</holder>
- </copyright>
+ <important>
+ <para>THIS DOCUMENTATION IS PROVIDED BY THE FREEBSD DOCUMENTATION 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 DOCUMENTATION PROJECT 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 DOCUMENTATION, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</para>
+ </important>
+</legalnotice>
- &legalnotice;
+
+ <legalnotice xml:id="trademarks" role="trademarks">
+ <para>FreeBSD is a registered trademark of the FreeBSD Foundation.</para>
+ <para>3Com and HomeConnect are registered trademarks of 3Com Corporation.</para>
+ <para>3ware is a registered trademark of 3ware Inc.</para>
+ <para>ARM is a registered trademark of ARM Limited.</para>
+ <para>Adaptec is a registered trademark of Adaptec, Inc.</para>
+ <para>Adobe, Acrobat, Acrobat Reader, Flash and PostScript are either registered trademarks or trademarks of Adobe Systems Incorporated in the United States and/or other countries.</para>
+ <para>Apple, AirPort, FireWire, iMac, iPhone, iPad, Mac, Macintosh, Mac OS, Quicktime, and TrueType are trademarks of Apple Inc., registered in the U.S. and other countries.</para>
+ <para>Android is a trademark of Google Inc.</para>
+ <para>Heidelberg, Helvetica, Palatino, and Times Roman are either registered trademarks or trademarks of Heidelberger Druckmaschinen AG in the U.S. and other countries.</para>
+ <para>IBM, AIX, OS/2, PowerPC, PS/2, S/390, and ThinkPad are trademarks of International Business Machines Corporation in the United States, other countries, or both.</para>
+ <para>IEEE, POSIX, and 802 are registered trademarks of Institute of Electrical and Electronics Engineers, Inc. in the United States.</para>
+ <para>Intel, Celeron, Centrino, Core, EtherExpress, i386, i486, Itanium, Pentium, and Xeon are trademarks or registered trademarks of Intel Corporation or its subsidiaries in the United States and other countries.</para>
+ <para>Intuit and Quicken are registered trademarks and/or registered service marks of Intuit Inc., or one of its subsidiaries, in the United States and other countries.</para>
+ <para>Linux is a registered trademark of Linus Torvalds.</para>
+ <para>LSI Logic, AcceleRAID, eXtremeRAID, MegaRAID and Mylex are trademarks or registered trademarks of LSI Logic Corp.</para>
+ <para>Microsoft, IntelliMouse, MS-DOS, Outlook, Windows, Windows Media and Windows NT are either registered trademarks or trademarks of Microsoft Corporation in the United States and/or other countries.</para>
+ <para>Motif, OSF/1, and UNIX are registered trademarks and IT DialTone and The Open Group are trademarks of The Open Group in the United States and other countries.</para>
+ <para>Oracle is a registered trademark of Oracle Corporation.</para>
+ <para>RealNetworks, RealPlayer, and RealAudio are the registered trademarks of RealNetworks, Inc.</para>
+ <para>Red Hat, RPM, are trademarks or registered trademarks of Red Hat, Inc. in the United States and other countries.</para>
+ <para>Sun, Sun Microsystems, Java, Java Virtual Machine, JDK, JRE, JSP, JVM, Netra, OpenJDK, Solaris, StarOffice, SunOS and VirtualBox are trademarks or registered trademarks of Sun Microsystems, Inc. in the United States and other countries.</para>
+ <para>MATLAB is a registered trademark of The MathWorks, Inc.</para>
+ <para>SpeedTouch is a trademark of Thomson.</para>
+ <para>VMware is a trademark of VMware, Inc.</para>
+ <para>Mathematica is a registered trademark of Wolfram Research, Inc.</para>
+ <para>XFree86 is a trademark of The XFree86 Project, Inc.</para>
+ <para>Ogg Vorbis and Xiph.Org are trademarks of Xiph.Org.</para>
+ <para>Many of the designations used by manufacturers and sellers to distinguish their products are claimed as trademarks. Where those designations appear in this document, and the FreeBSD Project was aware of the trademark claim, the designations have been followed by the <quote>™</quote> or the <quote>®</quote> symbol.</para>
+ </legalnotice>
<abstract>
- <para>Bem vindo ao FreeBSD! Este manual cobre a
- instalao e a utilizao no
- dia a dia do <emphasis>FreeBSD &rel.current;-RELEASE</emphasis>.
- Este manual um <emphasis>trabalho em andamento</emphasis>
- e representa o trabalho de muitos indivduos. Muitas
- sees no existem ainda e algumas das
- existentes precisam ser atualizadas. Se voc estiver
- interessado em ajudar este projeto, envie e-mail para
- &a.doc;. A verso mais atualizada deste documento
- est sempre disponvel no <link xlink:href="../../../../index.html">stio WWW do FreeBSD</link>.
- Tambm pode ser obtida em uma variedade de formatos
- e opes de compresso no <link xlink:href="ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/">servidor FTP
- do FreeBSD</link> ou em um dos inmeros <link linkend="mirrors-ftp">stios espelhos</link>. Se
- voc preferir possuir uma cpia impressa do
- manual, voc pode comprar uma no <link xlink:href="http://www.freebsdmall.com/">FreeBSD Mall</link>.
- Voc tambm pode querer <link xlink:href="../../../../search/index.html">realizar uma busca no
- manual</link>.</para>
+ <para>Bem vindo ao FreeBSD! Este manual cobre a instalação e o uso diário do <emphasis>FreeBSD 12.0-RELEASE</emphasis> e do <emphasis>FreeBSD 11.2-RELEASE</emphasis>. Este livro é o resultado do trabalho contínuo de muitas pessoas. Algumas seções podem estar desatualizadas. Os interessados em ajudar a atualizar e expandir este documento devem enviar e-mails para a <link xlink:href="http://lists.FreeBSD.org/mailman/listinfo/freebsd-doc">lista de discussão do projeto de documentação do FreeBSD</link>.</para>
+
+ <para>A última versão deste livro está disponível no <link xlink:href="https://www.FreeBSD.org/">site do FreeBSD</link>. Versões anteriores podem ser obtidas em <uri xlink:href="https://docs.FreeBSD.org/doc/">https://docs.FreeBSD.org/doc/</uri>. O livro pode ser baixado em uma variedade de formatos e opções de compressão do <link xlink:href="https://download.freebsd.org/ftp/doc/">servidor FTP do FreeBSD</link> ou de um dos inúmeros <link linkend="mirrors-ftp">sites espelho</link>. Cópias impressas podem ser adquiridas da <link xlink:href="http://www.freebsdmall.com/">FreeBSD Mall</link>. As pesquisas podem ser realizadas no manual e em outros documentos na <link xlink:href="@@URL_RELPREFIX@@/search/index.html">página de busca</link>.</para>
</abstract>
</info>
- &chap.preface;
+
+<!--
+ $FreeBSD$
+-->
+<preface version="5.0" xml:id="book-preface">
+ <title>Prefácio</title>
+
+ <bridgehead xml:id="preface-audience" renderas="sect1">Audiência Pretendida</bridgehead>
+
+ <para>O novato no FreeBSD descobrirá que a primeira seção deste livro guia o usuário através do processo de instalação do FreeBSD e gentilmente apresenta os conceitos e convenções que sustentam o <trademark class="registered">UNIX</trademark>. Trabalhar através desta seção exige pouco mais do que o desejo de explorar, e a capacidade de incorporar novos conceitos à medida que eles são introduzidos.</para>
+
+ <para>Uma vez que você chegou até aqui, a segunda seção do Handbook, muito maior, é uma referência abrangente a todos os tópicos de interesse para administradores de sistemas FreeBSD. Alguns destes capítulos podem recomendar que você faça alguma leitura prévia, e isto é destacado na sinopse no início de cada capítulo.</para>
+
+ <para>Para uma lista de fontes adicionais de informação, por favor veja o <xref linkend="bibliography"/>.</para>
+
+ <bridgehead xml:id="preface-changes-from3" renderas="sect1">Mudanças desde a Terceira Edição</bridgehead>
+
+ <para>A versão online atual do Handbook representa o esforço cumulativo de muitas centenas de contribuidores nos últimos 10 anos. A seguir estão algumas das mudanças significativas desde a publicação da terceira edição do volume em 2004:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para><xref linkend="dtrace"/> foi adicionado com informações sobre a poderosa ferramenta de análise de desempenho DTrace.</para>
+ </listitem>
+
+ <listitem>
+ <para><xref linkend="filesystems"/> foi adicionado com informações sobre sistemas de arquivos não-nativos no FreeBSD, como o ZFS da <trademark>Sun</trademark>.</para>
+ </listitem>
+
+ <listitem>
+ <para><xref linkend="audit"/> foi adicionado para cobrir os novos recursos de auditoria no FreeBSD e explicar seu uso.</para>
+ </listitem>
+
+ <listitem>
+ <para><xref linkend="virtualization"/> foi adicionado com informações sobre a instalação do FreeBSD em ambientes virtualizados.</para>
+ </listitem>
+
+ <listitem>
+ <para><xref linkend="bsdinstall"/> foi adicionado para cobrir a instalação do FreeBSD usando o novo utilitário de instalação, <application>bsdinstall</application>.</para>
+ </listitem>
+ </itemizedlist>
+
+ <bridgehead xml:id="preface-changes-from2" renderas="sect1">Mudanças desde a Segunda Edição (2004)</bridgehead>
+
+ <para>A terceira edição foi o culminar de mais de dois anos de trabalho pelos membros dedicados do Projeto de Documentação do FreeBSD. A edição impressa cresceu a tal tamanho que foi necessário publicar como dois volumes separados. A seguir estão as principais mudanças nesta nova edição:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para><xref linkend="config-tuning"/> foi expandido com novas informações sobre o gerenciamento de recursos e energia da ACPI, o utilitário de sistema <command>cron</command> e mais opções para ajuste do kernel.</para>
+ </listitem>
+
+ <listitem>
+ <para><xref linkend="security"/> foi expandido com novas informações sobre redes virtuais privadas (VPNs), listas de controle de acesso (ACLs) do sistema de arquivos e avisos de segurança.</para>
+ </listitem>
+
+ <listitem>
+ <para><xref linkend="mac"/> é um novo capítulo desta edição. Ele explica o que é MAC e como esse mecanismo pode ser usado para proteger um sistema FreeBSD.</para>
+ </listitem>
+
+ <listitem>
+ <para><xref linkend="disks"/> foi expandido com novas informações sobre dispositivos de armazenamento USB, snapshots do sistema de arquivos, cotas do sistema de arquivos, arquivos e sistemas de arquivos com suporte de rede e partições de disco criptografadas.</para>
+ </listitem>
+
+ <listitem>
+ <para>Uma seção de solução de problemas foi adicionada ao <xref linkend="ppp-and-slip"/>.</para>
+ </listitem>
+
+ <listitem>
+ <para><xref linkend="mail"/> foi expandido com novas informações sobre o uso de agentes de transporte alternativos, autenticação SMTP, UUCP, <application>fetchmail</application>, <application>procmail</application> e outros tópicos avançados.</para>
+ </listitem>
+
+ <listitem>
+ <para><xref linkend="network-servers"/> é novidade nesta edição. Este capítulo inclui informações sobre a configuração do <application>Servidor HTTP Apache</application>, <application>ftpd</application> e a configuração de um servidor para clientes <trademark class="registered">Microsoft</trademark> <trademark class="registered">Windows</trademark> com <application>Samba</application>. Algumas seções do <xref linkend="advanced-networking"/> foram movidas para cá para melhorar a apresentação.</para>
+ </listitem>
+
+ <listitem>
+ <para><xref linkend="advanced-networking"/> foi expandido com novas informações sobre o uso de dispositivos <trademark class="registered">Bluetooth</trademark> com o FreeBSD, configuração de redes sem fio e redes ATM (Asynchronous Transfer Mode).</para>
+ </listitem>
+
+ <listitem>
+ <para>Um glossário foi adicionado para fornecer um local central para as definições de termos técnicos utilizados ​​ao longo do livro.</para>
+ </listitem>
+
+ <listitem>
+ <para>Uma série de melhorias estéticas foram feitas nas tabelas e figuras ao longo do livro.</para>
+ </listitem>
+ </itemizedlist>
+
+ <bridgehead xml:id="preface-changes" renderas="sect1">Mudanças desde a Primeira Edição (2001)</bridgehead>
+
+ <para>A segunda edição foi o culminar de mais de dois anos de trabalho pelos membros dedicados do Projeto de Documentação do FreeBSD. A seguir, as principais mudanças nesta edição:</para>
+
+<!-- Talk a little about justification and other stylesheet changes? -->
+
+ <itemizedlist>
+ <listitem>
+ <para>Um índice completo foi adicionado.</para>
+ </listitem>
+
+ <listitem>
+ <para>Todas as figuras ASCII foram substituídas por diagramas gráficos.</para>
+ </listitem>
+
+ <listitem>
+ <para>Uma sinopse padrão foi adicionada a cada capítulo para fornecer um resumo rápido de quais informações o capítulo contém e o que se espera que o leitor saiba.</para>
+ </listitem>
+
+ <listitem>
+ <para>O conteúdo foi logicamente reorganizado em três partes: <quote>Introdução</quote>, <quote>Administração do Sistema</quote> e <quote>Apêndices</quote>.</para>
+ </listitem>
+
+ <listitem>
+ <para><xref linkend="basics"/> foi expandido para conter informações adicionais sobre processos, daemons e sinais.</para>
+ </listitem>
+
+ <listitem>
+ <para><xref linkend="ports"/> foi expandido para conter informações adicionais sobre o gerenciamento de pacotes binários.</para>
+ </listitem>
+
+ <listitem>
+ <para><xref linkend="x11"/> foi completamente reescrito com ênfase no uso de tecnologias de desktop modernas como <application>KDE</application> e <application>GNOME</application> sobre o <trademark>XFree86</trademark> 4.X.</para>
+ </listitem>
+
+ <listitem>
+ <para><xref linkend="boot"/> foi expandido.</para>
+ </listitem>
+
+ <listitem>
+ <para><xref linkend="disks"/> foi escrito a partir do que costumava ser dois capítulos separados em <quote>Discos</quote> e <quote>Backups</quote>. Sentimos que os tópicos são mais fáceis de compreender quando apresentados como um único capítulo. Uma seção sobre RAID (hardware e software) também foi adicionada.</para>
+ </listitem>
+
+ <listitem>
+ <para><xref linkend="serialcomms"/> foi completamente reorganizado e atualizado para o FreeBSD 4.X/5.X.</para>
+ </listitem>
+
+ <listitem>
+ <para><xref linkend="ppp-and-slip"/> foi substancialmente atualizado.</para>
+ </listitem>
+
+ <listitem>
+ <para>Muitas novas seções foram adicionadas ao <xref linkend="advanced-networking"/>.</para>
+ </listitem>
+
+ <listitem>
+ <para><xref linkend="mail"/> foi expandido para incluir mais informações sobre a configuração do <application>sendmail</application>.</para>
+ </listitem>
+
+ <listitem>
+ <para><xref linkend="linuxemu"/> foi expandido para incluir informações sobre como instalar o <application><trademark class="registered">Oracle</trademark></application> e o <application><trademark class="registered">SAP</trademark> <trademark class="registered">R/3</trademark></application>.</para>
+ </listitem>
+
+ <listitem>
+ <para>Os novos tópicos a seguir são abordados nesta segunda edição:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para><xref linkend="config-tuning"/>.</para>
+ </listitem>
+
+ <listitem>
+ <para><xref linkend="multimedia"/>.</para>
+ </listitem>
+ </itemizedlist>
+ </listitem>
+ </itemizedlist>
+
+ <bridgehead xml:id="preface-overview" renderas="sect1">Organização deste Livro</bridgehead>
+
+ <para>Este livro é dividido em cinco seções logicamente distintas. A primeira seção, <emphasis>Introdução</emphasis>, cobre a instalação e o uso básico do FreeBSD. Espera-se que o leitor siga estes capítulos em sequência, possivelmente ignorando capítulos que abordam tópicos familiares. A segunda seção, <emphasis>Tarefas Comuns</emphasis>, cobre alguns dos recursos mais usados ​​do FreeBSD. Esta seção e todas as seções subsequentes podem ser lidas fora de ordem. Cada capítulo começa com uma sinopse sucinta que descreve o que o capítulo cobre e o que se espera que o leitor já conheça. Isso permite que o leitor casual pule para encontrar capítulos de interesse. A terceira seção, <emphasis>Administração do Sistema</emphasis>, cobre tópicos de administração. A quarta seção, <emphasis>Comunicação de Rede</emphasis>, aborda tópicos sobre redes e servidores. A quinta seção contém apêndices de informações de referência.</para>
+
+ <variablelist>
+
+<!-- Part I - Introduction -->
+
+ <varlistentry>
+ <term><emphasis><xref linkend="introduction"/></emphasis></term>
+
+ <listitem>
+ <para>Introduz o FreeBSD para um novo usuário. Descreve a história do projeto FreeBSD, seus objetivos e modelo de desenvolvimento.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><emphasis><xref linkend="bsdinstall"/></emphasis></term>
+
+ <listitem>
+ <para>Guia o usuário durante todo o processo de instalação do FreeBSD 9.<replaceable>x</replaceable> usando o <application>bsdinstall</application>.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><emphasis><xref linkend="basics"/></emphasis></term>
+
+ <listitem>
+ <para>Cobre os comandos básicos e a funcionalidade do sistema operacional FreeBSD. Se você está familiarizado com <trademark class="registered">Linux</trademark> ou outro tipo de <trademark class="registered">UNIX</trademark>, provavelmente você pode pular este capítulo.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><emphasis><xref linkend="ports"/></emphasis></term>
+
+ <listitem>
+ <para>Cobre a instalação de softwares de terceiros com a inovadora <quote>Coleção de Ports</quote> do FreeBSD, e com pacotes binários tradicionais.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><emphasis><xref linkend="x11"/></emphasis></term>
+
+ <listitem>
+ <para>Descreve o Sistema X Window em geral e usa o X11 no FreeBSD em particular. Também descreve ambientes comuns de desktop, como o <application>KDE</application> e <application>GNOME</application>.</para>
+ </listitem>
+ </varlistentry>
+
+<!-- Part II Common Tasks -->
+
+ <varlistentry>
+ <term><emphasis><xref linkend="desktop"/></emphasis></term>
+
+ <listitem>
+ <para>Lista alguns aplicativos comuns de desktop, como navegadores web e pacotes de produtividade, e descreve como instalá-los no FreeBSD.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><emphasis><xref linkend="multimedia"/></emphasis></term>
+ <listitem>
+ <para>Mostra como configurar o suporte a reprodução de som e vídeo para o seu sistema. Também descreve alguns exemplos de aplicativos de áudio e vídeo.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><emphasis><xref linkend="kernelconfig"/></emphasis></term>
+
+ <listitem>
+ <para>Explica o porque que você pode precisar configurar um novo kernel e fornece instruções detalhadas para configurar, compilar e instalar um kernel personalizado.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><emphasis><xref linkend="printing"/></emphasis></term>
+
+ <listitem>
+ <para>Descreve o gerenciamento de impressoras no FreeBSD, incluindo informações sobre páginas de banner, contabilidade de impressoras e configuração inicial.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><emphasis><xref linkend="linuxemu"/></emphasis></term>
+
+ <listitem>
+ <para>Descreve os recursos de compatibilidade <trademark class="registered">Linux</trademark> do FreeBSD. Também fornece instruções detalhadas de instalação para muitos aplicativos <trademark class="registered">Linux</trademark> populares, como o <application><trademark class="registered">Oracle</trademark></application> e o <application><trademark class="registered">Mathematica</trademark></application>.</para>
+ </listitem>
+ </varlistentry>
+
+<!-- Part III - System Administration -->
+
+ <varlistentry>
+ <term><emphasis><xref linkend="config-tuning"/></emphasis></term>
+
+ <listitem>
+ <para>Descreve os parâmetros disponíveis para os administradores do sistema ajustarem um sistema FreeBSD para um ótimo desempenho. Também descreve os vários arquivos de configuração usados ​​no FreeBSD e onde encontrá-los.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><emphasis><xref linkend="boot"/></emphasis></term>
+
+ <listitem>
+ <para>Descreve o processo de inicialização do FreeBSD e explica como controlar este processo com opções de configuração.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><emphasis><xref linkend="security"/></emphasis></term>
+
+ <listitem>
+ <para>Descreve muitas ferramentas diferentes disponíveis para ajudar a manter seu sistema FreeBSD seguro, incluindo Kerberos, IPsec e OpenSSH.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><emphasis><xref linkend="jails"/></emphasis></term>
+
+ <listitem>
+ <para>Descreve o framework do jail e as suas vantagens sobre o chroot tradicional do FreeBSD.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><emphasis><xref linkend="mac"/></emphasis></term>
+
+ <listitem>
+ <para>Explica o que é o Mandatory Access Control (MAC) e como esse mecanismo pode ser usado para proteger um sistema FreeBSD.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><emphasis><xref linkend="audit"/></emphasis></term>
+
+ <listitem>
+ <para>Descreve o que é a Auditoria de Eventos do FreeBSD, como ela pode ser instalada, configurada e como as trilhas de auditoria podem ser inspecionadas ou monitoradas.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><emphasis><xref linkend="disks"/></emphasis></term>
+
+ <listitem>
+ <para>Descreve como gerenciar mídias de armazenamento e sistemas de arquivos com o FreeBSD. Isto inclui discos físicos, matrizes RAID, mídias óticas e de fita, discos com suporte de memória e sistemas de arquivos de rede.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><emphasis><xref linkend="geom"/></emphasis></term>
+
+ <listitem>
+ <para>Descreve o que é o framework GEOM do FreeBSD e como configurar os vários níveis suportados de RAID.</para>
+ </listitem>
+ </varlistentry>
- <part>
- <title>Comeando a usar</title>
+ <varlistentry>
+ <term><emphasis><xref linkend="filesystems"/></emphasis></term>
+
+ <listitem>
+ <para>Examina o suporte a sistemas de arquivos não-nativos no FreeBSD, como o Z File System da <trademark>Sun</trademark>.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><emphasis><xref linkend="virtualization"/></emphasis></term>
+
+ <listitem>
+ <para>Descreve o que os sistemas de virtualização oferecem e como eles podem ser usados ​​com o FreeBSD.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><emphasis><xref linkend="l10n"/></emphasis></term>
+
+ <listitem>
+ <para>Descreve como usar o FreeBSD em outros idiomas além do inglês. Abrange a localização tanto em nível de sistema como em nível de aplicativo.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><emphasis><xref linkend="updating-upgrading"/></emphasis></term>
+
+ <listitem>
+ <para>Explica as diferenças entre FreeBSD-STABLE, FreeBSD-CURRENT e FreeBSD releases. Descreve quais usuários se beneficiariam do uso de um sistema em desenvolvimento e descreve este processo. Cobre os métodos que os usuários podem usar para atualizar seu sistema para a última release de segurança.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><emphasis><xref linkend="dtrace"/></emphasis></term>
+
+ <listitem>
+ <para>Descreve como configurar e usar a ferramenta DTrace da <trademark>Sun</trademark> no FreeBSD. O rastreamento dinâmico pode ajudar a localizar problemas de desempenho, realizando a análise do sistema em tempo real.</para>
+ </listitem>
+ </varlistentry>
+
+<!-- Part IV - Network Communications -->
+
+ <varlistentry>
+ <term><emphasis><xref linkend="serialcomms"/></emphasis></term>
+
+ <listitem>
+ <para>Explica como conectar terminais e modems ao seu sistema FreeBSD para conexões de discagem de entrada e de saída.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><emphasis><xref linkend="ppp-and-slip"/></emphasis></term>
+
+ <listitem>
+ <para>Descreve como usar o PPP para se conectar a sistemas remotos com o FreeBSD.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><emphasis><xref linkend="mail"/></emphasis></term>
+
+ <listitem>
+ <para>Explica os diferentes componentes de um servidor de e-mail e mergulha em tópicos simples de configuração do software mais popular de servidor de e-mails: o <application>sendmail</application>.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><emphasis><xref linkend="network-servers"/></emphasis></term>
+
+ <listitem>
+ <para>Fornece instruções detalhadas e exemplos de arquivos de configuração para configurar sua máquina FreeBSD como um servidor de sistema de arquivos de rede, servidor de nome de domínio, servidor de sistema de informações de rede ou servidor de sincronização de horário.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><emphasis><xref linkend="firewalls"/></emphasis></term>
+
+ <listitem>
+ <para>Explica a filosofia por trás dos firewalls baseados em software e fornece informações detalhadas sobre a configuração dos diferentes firewalls disponíveis para o FreeBSD.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><emphasis><xref linkend="advanced-networking"/></emphasis></term>
+
+ <listitem>
+ <para>Descreve muitos tópicos de rede, incluindo o compartilhamento de uma conexão à Internet com outros computadores em sua LAN, tópicos avançados de roteamento, rede sem fio, <trademark class="registered">Bluetooth</trademark>, ATM, IPv6 e muito mais.</para>
+ </listitem>
+ </varlistentry>
+
+<!-- Part V - Appendices -->
+
+ <varlistentry>
+ <term><emphasis><xref linkend="mirrors"/></emphasis></term>
+
+ <listitem>
+ <para>Lista diferentes fontes para obter a mídia de instalação do FreeBSD em CD-ROM ou DVD, bem como diferentes sites na Internet que permitem que você baixe e instale o FreeBSD.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><emphasis><xref linkend="bibliography"/></emphasis></term>
+
+ <listitem>
+ <para>Este livro aborda muitos assuntos diferentes que podem deixá-lo com a curiosidade de uma explicação mais detalhada. A bibliografia lista muitos livros excelentes que são referenciados no texto.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><emphasis><xref linkend="eresources"/></emphasis></term>
+
+ <listitem>
+ <para>Descreve os muitos fóruns disponíveis para usuários do FreeBSD postarem perguntas e se engajarem em conversas técnicas sobre o FreeBSD.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><emphasis><xref linkend="pgpkeys"/></emphasis></term>
+
+ <listitem>
+ <para>Lista as fingerprints PGP de vários desenvolvedores do FreeBSD.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+
+ <bridgehead xml:id="preface-conv" renderas="sect1">Convenções utilizadas neste livro</bridgehead>
+
+ <para>Para fornecer um texto consistente e fácil de ler, várias convenções são seguidas ao longo do livro.</para>
+
+ <bridgehead xml:id="preface-conv-typographic" renderas="sect2">Convenções Tipográficas</bridgehead>
+
+ <variablelist>
+ <varlistentry>
+ <term><emphasis>Itálico</emphasis></term>
+
+ <listitem>
+ <para>Uma fonte <emphasis>itálica</emphasis> é usada para nomes de arquivos, URLs, textos enfatizados e o primeiro uso de termos técnicos.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><literal>Monospace</literal></term>
+
+ <listitem>
+ <para>Uma fonte <literal>monoespaçada</literal> é usada para mensagens de erro, comandos, variáveis ​​de ambiente, nomes de ports, nomes de host, nomes de usuários, nomes de grupos, nomes de dispositivos, variáveis ​​e fragmentos de código.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><application>Negrito</application></term>
+
+ <listitem>
+ <para>Uma fonte <keycap>negrita</keycap> é usada para aplicativos, comandos e chaves.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+
+<!-- Var list -->
+ <bridgehead xml:id="preface-conv-commands" renderas="sect2">Entrada do Usuário</bridgehead>
+
+ <para>As teclas são mostradas em <keycap>negrito</keycap> para se destacar do restante do texto. As combinações de teclas que devem ser digitadas simultaneamente são mostradas com `<literal>+</literal>' entre as teclas, como:</para>
+
+ <para><keycombo action="simul"> <keycap>Ctrl</keycap> <keycap>Alt</keycap> <keycap>Del</keycap></keycombo></para>
+
+ <para>Isso significa que o usuário deve digitar as teclas <keycap>Ctrl</keycap>, <keycap>Alt</keycap> e <keycap>Del</keycap> ao mesmo tempo.</para>
+
+ <para>As teclas que devem ser digitadas em sequência serão separadas por vírgulas, por exemplo:</para>
+
+ <para><keycombo action="simul"> <keycap>Ctrl</keycap> <keycap>X</keycap> </keycombo>, <keycombo action="simul"> <keycap>Ctrl</keycap> <keycap>S</keycap></keycombo></para>
+
+ <para>Significaria que o usuário deve digitar as teclas <keycap>Ctrl</keycap> e <keycap>X</keycap> simultaneamente e, em seguida, digitar as teclas <keycap>Ctrl</keycap> e <keycap>S</keycap> simultaneamente.</para>
+
+<!-- How to type in key stokes, etc.. -->
+ <bridgehead xml:id="preface-conv-examples" renderas="sect2">Exemplos</bridgehead>
+
+ <para>Exemplos começando com <filename>C:\&gt;</filename> indicam um comando <trademark class="registered">MS-DOS</trademark>. Salvo indicação em contrário, estes comandos podem ser executados a partir de uma janela de <quote>Prompt de Comando</quote> em um ambiente <trademark class="registered">Microsoft</trademark> <trademark class="registered">Windows</trademark>.</para>
+
+ <screen><prompt>E:\&gt;</prompt> <userinput>tools\fdimage floppies\kern.flp A:</userinput></screen>
+
+ <para>Exemplos começando com <prompt>#</prompt> indicam um comando que deve ser executado como superusuário no FreeBSD. Você pode logar como <systemitem class="username">root</systemitem> para digitar o comando, ou logar como sua conta normal e usar o comando <citerefentry><refentrytitle>su</refentrytitle><manvolnum>1</manvolnum> </citerefentry> para obter privilégios de superusuário.</para>
+
+ <screen><prompt>#</prompt> <userinput>dd if=kern.flp of=/dev/fd0</userinput></screen>
+
+ <para>Exemplos começando com <prompt>%</prompt> indicam um comando que deve ser chamado a partir de uma conta de usuário normal. Salvo indicação em contrário, a sintaxe C-shell é usada para definir variáveis ​​de ambiente e outros comandos do shell.</para>
+
+ <screen><prompt>%</prompt> <userinput>top</userinput></screen>
+
+ <bridgehead xml:id="preface-acknowledgements" renderas="sect1">Agradecimentos</bridgehead>
+
+ <para>O livro que você está segurando representa os esforços de muitas centenas de pessoas em todo o mundo. Não importa se eles enviaram correções para erros de digitação ou submeteram capítulos completos, todas as contribuições foram úteis.</para>
+
+ <para>Várias empresas têm apoiado o desenvolvimento deste documento, pagando aos autores para trabalhar em tempo integral, pagando pela publicação, etc. Em particular, a BSDi (posteriormente adquirida pela <link xlink:href="http://www.windriver.com">Wind River Systems</link>) pagou membros do Projeto de Documentação do FreeBSD para trabalhar na melhoria deste livro em tempo integral, levando à publicação da primeira edição impressa em março de 2000 (ISBN 1-57176-241-8). A Wind River Systems pagou vários autores adicionais para fazer uma série de melhorias na infraestrutura de impressão e adicionar capítulos adicionais ao texto. Este trabalho culminou com a publicação da segunda edição impressa em novembro de 2001 (ISBN 1-57176-303-1). Em 2003-2004, a <link xlink:href="http://www.freebsdmall.com">FreeBSD Mall, Inc.</link> pagou a vários contribuidores para melhorar o Handbook em preparação para a terceira edição impressa.</para>
+
+</preface>
+
+
+ <part xml:id="getting-started">
+ <title>Primeiros Passos </title>
<partintro>
- <para>Essa parte do Manual do FreeBSD para
- usurios e administradores novos no FreeBSD. Estes
- captulos:</para>
+ <para>Esta parte do handbook é destinada aos usuários e administradores que são novos no FreeBSD. Estes capítulos:</para>
<itemizedlist>
<listitem>
- <para>Apresentam-lhe ao FreeBSD.</para>
+ <para>Apresentam o FreeBSD.</para>
</listitem>
<listitem>
- <para>Guiam-lhe atravs do processo de instalao.</para>
+ <para>Guiam os leitores através do processo de instalação.</para>
</listitem>
<listitem>
- <para>Ensinam-lhe alguns princpios de Unix.</para>
+ <para>Ensinam conceitos básicos e fundamentais do <trademark class="registered">UNIX</trademark>.</para>
</listitem>
<listitem>
- <para>Mostram-lhe como instalar a riqueza de
- aplicaes disponveis para
- FreeBSD.</para>
+ <para>Mostram como instalar a grande variedade de aplicativos de terceiros disponíveis para o FreeBSD.</para>
</listitem>
<listitem>
- <para>Apresentam-lhe ao X, o sistema de interface
- grfica do sistema Unix, e a detalhes de como
- configurar um ambiente de trabalho que o torne mais
- produtivo.</para>
+ <para>Apresenta o X, o sistema de janelas <trademark class="registered">UNIX</trademark> e detalha como configurar um ambiente de desktop para tornar os usuários mais produtivos.</para>
</listitem>
</itemizedlist>
- <para>Ns tentamos minimizar o nmero de
- referncias no texto de modo que essa seo
- do Manual possa ser lida do incio ao fim sem folhear
- muito.</para>
+ <para>O número de referências a tópicos futuros no texto foi mantido no mínimo, para que uma seção possa ser lida do começo ao fim com o mínimo de avanço desnecessário de páginas.</para>
</partintro>
- &chap.introduction;
- &chap.install;
- &chap.basics;
- &chap.ports;
- &chap.x11;
+
+<!--
+ The FreeBSD Documentation Project
+
+ $FreeBSD$
+-->
+<chapter version="5.0" xml:id="introduction">
+
+ <info>
+ <title>Introdução</title>
+
+ <authorgroup>
+ <author><personname> <firstname>Jim</firstname> <surname>Mock</surname> </personname> <contrib>Reestruturado, reorganizado e com partes reescritas por </contrib></author>
+ </authorgroup>
+ </info>
+
+ <sect1 xml:id="introduction-synopsis">
+ <title>Sinopse</title>
+
+ <para>Obrigado pelo seu interesse no FreeBSD! O capítulo seguinte cobre vários aspectos do Projeto FreeBSD, como seu histórico, objetivos, modelo de desenvolvimento e assim por diante.</para>
+
+ <para>Depois de ler este capítulo, você saberá:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>Como o FreeBSD se relaciona com outros sistemas operacionais de computadores.</para>
+ </listitem>
+
+ <listitem>
+ <para>A história do projeto FreeBSD.</para>
+ </listitem>
+
+ <listitem>
+ <para>Os objetivos do projeto FreeBSD.</para>
+ </listitem>
+
+ <listitem>
+ <para>O básico do modelo de desenvolvimento de código aberto do FreeBSD.</para>
+ </listitem>
+
+ <listitem>
+ <para>E claro: de onde o nome <quote>FreeBSD</quote> vem.</para>
+ </listitem>
+ </itemizedlist>
+ </sect1>
+
+ <sect1 xml:id="nutshell">
+ <title>Bem vindo ao FreeBSD!</title>
+
+ <indexterm><primary>4.4BSD-Lite</primary></indexterm>
+
+ <para>O FreeBSD é um Sistema Operacional de código aberto nos padrões Unix-Like para computadores de arquitetura x86 (32 and 64 bits), <trademark class="registered">ARM</trademark>, AArch64, <trademark class="registered">RISC-V</trademark>, <trademark class="registered">MIPS</trademark>, <trademark class="registered">POWER</trademark>, <trademark class="registered">PowerPC</trademark>, and Sun <trademark class="registered">UltraSPARC</trademark>. Ele fornece todos os recursos que são considerados comuns hoje em dia, como multitarefa preemptiva, proteção de memória, memória virtual, recursos para múltiplos usuários, suporte a SMP, todas as ferramentas de desenvolvimento de código aberto para diferentes linguagens e estruturas e recursos de área de trabalho centralizados no Sistema X Window, KDE ou GNOME. Seus pontos fortes são:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para><emphasis>Licença Liberal Open Source</emphasis>, que concede a você o direito de modificar e estender livremente seu código-fonte e incorporá-lo em projetos Open Source e produtos fechados, sem impor restrições típicas às licenças copyleft, bem como evita potenciais problemas de incompatibilidade de licença.</para>
+ </listitem>
+
+ <listitem>
+ <para><emphasis>Rede TCP/IP forte</emphasis> <indexterm> <primary>TCP/IP
+ networking</primary></indexterm> - O FreeBSD implementa protocolos padrões da indústria com desempenho e escalabilidade crescentes. Isso faz com que seja uma boa combinação tanto em funções de servidor quanto de roteamento/firewall - e, de fato, muitas empresas e fornecedores o utilizam precisamente para essa finalidade.</para>
+ </listitem>
+
+ <listitem>
+ <para><emphasis>Suporte totalmente integrado ao OpenZFS</emphasis>, incluindo root-on-ZFS, ZFS Boot Environments, gerenciamento de falhas, delegação administrativa, suporte a jails, documentação específica ao FreeBSD e suporte ao instalador do sistema.</para>
+ </listitem>
+
+ <listitem>
+ <para><emphasis>Extensivos recursos de segurança</emphasis>, do Mandatory Access Control ao Capsicum e mecanismos de sandbox.</para>
+ </listitem>
+
+ <listitem>
+ <para><emphasis>Mais de 30 mil pacotes pré-compilados</emphasis> para todas as arquiteturas suportadas, e a Coleção de Ports, que facilita a compilação de seus próprios pacotes personalizados.</para>
+ </listitem>
+
+ <listitem>
+ <para><emphasis>Documentação</emphasis> - além do Handbook e livros de diferentes autores que cobrem tópicos que vão da administração do sistema aos internals do kernel, há também as páginas <citerefentry><refentrytitle>man</refentrytitle><manvolnum/></citerefentry>, não apenas para daemons do userspace, utilitários e arquivos de configuração, mas também para APIs do driver do kernel (seção 9) e drivers individuais (seção 4).</para>
+ </listitem>
+
+ <listitem>
+ <para><emphasis>Estrutura de repositório simples e consistente e sistema de compilação</emphasis> - O FreeBSD usa um único repositório para todos os seus componentes, tanto para o kernel quanto para o userspace. Isso, juntamente com um sistema de compilação unificado, fácil de personalizar e um processo de desenvolvimento bem pensado, facilita a integração do FreeBSD com a infraestrutura de compilação do seu próprio produto.</para>
+ </listitem>
+
+ <listitem>
+ <para><emphasis>Mantem-se fiel à filosofia do Unix</emphasis>, preferindo heterogeneidade ao invés de deamons monolíticos <quote>all in one</quote> com comportamento codificado (hardcoded).</para>
+ </listitem>
+
+ <listitem>
+ <para><indexterm> <primary>binary compatibility</primary>
+ <secondary>Linux</secondary></indexterm> <emphasis>Compatibilidade binária</emphasis> com o Linux, o que torna possível executar muitos binários do Linux sem a necessidade de virtualização.</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>O FreeBSD é baseado na release 4.4BSD-Lite<indexterm>
+ <primary>4.4BSD-Lite</primary>
+ </indexterm> do Computer Systems Research Group (CSRG)<indexterm>
+ <primary>Computer Systems Research Group (CSRG)</primary>
+ </indexterm> da Universidade da Califórnia em Berkeley, e mantém a tradição distinta do desenvolvimento de sistemas BSD. Além do bom trabalho fornecido pelo CSRG, o Projeto FreeBSD colocou milhares de horas-homem para estender a funcionalidade e ajustar o sistema para o máximo desempenho e confiabilidade em situações de carga reais. O FreeBSD oferece desempenho e confiabilidade a altura de outras ofertas de código aberto e comerciais, combinadas com recursos de ponta não disponíveis em nenhum outro lugar.</para>
+
+ <sect2 xml:id="os-overview">
+ <title>O que o FreeBSD Pode Fazer?</title>
+
+ <para>As aplicações para as quais o FreeBSD pode ser colocado são verdadeiramente limitadas apenas pela sua própria imaginação. Do desenvolvimento de software à automação de fábrica, do controle de estoque à correção de azimute de antenas de satélite remotas; Se isso puder ser feito com um produto comercial <trademark class="registered">UNIX</trademark>, é mais do que provável que você também possa fazê-lo com o FreeBSD! O FreeBSD também se beneficia significativamente de milhares de aplicativos de alta qualidade desenvolvidos por centros de pesquisa e universidades em todo o mundo, muitas vezes disponíveis com pouco ou nenhum custo.</para>
+
+ <para>Como o código-fonte do FreeBSD está geralmente disponível, o sistema também pode ser customizado em um grau quase inédito para aplicações ou projetos especiais, e de maneiras que geralmente não são possíveis com a maioria do sistemas operacionais dos principais fornecedores comerciais. Aqui está apenas uma amostra de algumas das aplicações em que as pessoas estão atualmente usando o FreeBSD:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para><emphasis>Serviços de Internet:</emphasis> A robusta rede TCP/IP incorporada ao FreeBSD torna-o uma plataforma ideal para uma variedade de serviços de Internet, tais como:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>Servidores WEB</para>
+ </listitem>
+
+ <listitem>
+ <para>Roteamento IPv4 e IPv6</para>
+ </listitem>
+
+ <listitem>
+ <para>Firewalls <indexterm>
+ <primary>firewall</primary>
+ </indexterm> e Gateways NAT <indexterm>
+ <primary>NAT</primary>
+ </indexterm> (<quote>IP masquerading</quote>)</para>
+ </listitem>
+
+ <listitem>
+ <para>Servidores FTP<indexterm>
+ <primary>FTP servers</primary>
+ </indexterm></para>
+ </listitem>
+
+ <listitem>
+ <para><indexterm>
+ <primary>electronic mail</primary>
+ <see>email</see>
+ </indexterm> <indexterm>
+ <primary>email</primary>
+ </indexterm>Servidores de Email</para>
+ </listitem>
+
+ <listitem>
+ <para>E mais...</para>
+ </listitem>
+ </itemizedlist>
+ </listitem>
+
+ <listitem>
+ <para><emphasis>Educação:</emphasis> Você é estudante de ciências da computação ou de engenharia relacionada? Não há melhor maneira de aprender sobre sistemas operacionais, arquitetura de computadores e redes do que colocar as mãos no sistema, uma experiência que o FreeBSD pode oferecer. Os vários pacotes CAD, matemáticos e de design gráfico disponíveis gratuitamente também o tornam altamente útil para aqueles cujo principal interesse em um computador é fazer com que <emphasis>outro</emphasis> trabalho seja feito!</para>
+ </listitem>
+
+ <listitem>
+ <para><emphasis>Pesquisa:</emphasis> Com o código-fonte de todo o sistema disponível, o FreeBSD é uma excelente plataforma para pesquisa em sistemas operacionais, assim como em outros ramos da ciência da computação. A natureza livremente disponível do FreeBSD também possibilita que grupos remotos colaborem em ideias ou desenvolvimento compartilhado sem ter que se preocupar com acordos de licenciamento especiais ou limitações sobre o que pode ser discutido em fóruns abertos.</para>
+ </listitem>
+
+ <listitem>
+ <para><emphasis>Rede:</emphasis> Precisa de um novo roteador? <indexterm>
+ <primary>router</primary>
+ </indexterm>Um servidor de nomes (DNS)?<indexterm>
+ <primary>DNS Server</primary>
+ </indexterm> Um firewall para manter as pessoas fora de sua rede interna? O FreeBSD pode facilmente transformar esse PC não utilizado que está encostado em algum canto em um roteador avançado com recursos sofisticados de filtragem de pacotes.</para>
+ </listitem>
+
+ <listitem>
+ <para><emphasis>Embarcado:</emphasis> O FreeBSD é uma excelente plataforma para construir sistemas embarcados. <indexterm>
+ <primary>embedded</primary>
+ </indexterm> Com suporte para plataformas <trademark class="registered">ARM</trademark>, <trademark class="registered">MIPS</trademark> e <trademark class="registered">PowerPC</trademark>, juntamente com uma pilha de rede robusta, recursos de ponta e a permissiva <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/faq/introduction.html#bsd-license-restrictions">Licença BSD</link> o FreeBSD é uma excelente base para a criação de roteadores embarcados, firewalls e outros dispositivos.</para>
+ </listitem>
+
+ <listitem>
+ <para><indexterm>
+ <primary>X Window System</primary>
+ </indexterm> <indexterm>
+ <primary>GNOME</primary>
+ </indexterm> <indexterm>
+ <primary>KDE</primary>
+ </indexterm> <emphasis>Desktop:</emphasis> O FreeBSD é uma ótima opção para uma solução de desktop barata usando o servidor X11 disponível gratuitamente. O FreeBSD oferece várias opções de ambientes de desktop de código aberto, incluindo as interfaces gráficas de usuário padrão do <application>GNOME</application> e do <application>KDE</application>. O FreeBSD pode até inicializar <quote>diskless</quote> a partir de um servidor central, tornando as estações de trabalho individuais ainda mais baratas e fáceis de administrar.</para>
+ </listitem>
+
+ <listitem>
+ <para><emphasis>Desenvolvimento de Software:</emphasis> O sistema básico do FreeBSD vem com um conjunto completo de ferramentas de desenvolvimento, incluindo um completo compilador e depurador C/C++ <indexterm>
+ <primary>Compiler</primary>
+ </indexterm>. O suporte para muitas outras linguagens também está disponível por meio da coleção de ports e dos pacotes.</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>O FreeBSD está disponível para download gratuito, ou pode ser obtido em CD-ROM ou DVD. Por favor, consulte <xref linkend="mirrors"/> para maiores informações sobre como obter o FreeBSD.</para>
+ </sect2>
+
+ <sect2 xml:id="introduction-nutshell-users">
+ <title>Quem Usa o FreeBSD?</title>
+
+ <indexterm><primary>usuários</primary> <secondary>grandes sites que executam o FreeBSD</secondary></indexterm>
+
+ <para>O FreeBSD é conhecido por seus recursos de serviço web - sites que rodam no FreeBSD incluem <link xlink:href="https://news.ycombinator.com/">Hacker News</link>, <link xlink:href="http://www.netcraft.com/">Netcraft</link>, <link xlink:href="http://www.163.com/">NetEase</link>, <link xlink:href="https://signup.netflix.com/openconnect">Netflix</link>, <link xlink:href="http://www.sina.com/">Sina</link>, <link xlink:href="http://www.sony.co.jp/">Sony Japan</link>, <link xlink:href="http://www.rambler.ru/">Rambler</link>, <link xlink:href="http://www.yahoo.com/">Yahoo!</link>, e <link xlink:href="http://www.yandex.ru/">Yandex</link>.</para>
+
+ <para>Os recursos avançados do FreeBSD, a segurança comprovada, o ciclo de release previsível e a licença permissiva levaram à sua utilização como plataforma para a construção de muitos appliances, dispositivos e produtos tanto comerciais quanto de código aberto. Muitas das maiores empresas de TI do mundo usam o FreeBSD:</para>
+
+ <itemizedlist>
+ <listitem>
+
+ <para><link xlink:href="http://www.apache.org/">Apache</link> <indexterm>
+ <primary>Apache</primary>
+ </indexterm> - A Apache Software Foundation executa a maior parte de sua infraestrutura voltada para o público, incluindo possivelmente um dos maiores repositórios SVN do mundo, com mais de 1.4 milhões de commits, no FreeBSD.</para>
+ </listitem>
+
+ <listitem>
+ <para><link xlink:href="http://www.apple.com/">Apple</link> <indexterm>
+ <primary>Apple</primary>
+ </indexterm> - OS X utiliza muito do FreeBSD na sua pilha de rede, no seu sistema de arquivos virtuais e em muitos componentes userland. O Apple iOS também contém elementos emprestados do FreeBSD.</para>
+ </listitem>
+
+ <listitem>
+ <para><link xlink:href="http://www.cisco.com/">Cisco</link> <indexterm>
+ <primary>Cisco</primary>
+ </indexterm> - Os appliances de segurança de rede e anti-spam IronPort executam um kernel modificado do FreeBSD.</para>
+ </listitem>
+
+ <listitem>
+ <para><link xlink:href="http://www.citrix.com/">Citrix</link> <indexterm>
+ <primary>Citrix</primary>
+ </indexterm> - A linha NetScaler de dispositivos de segurança fornece balanceamento de carga nas camadas 4-7, cache de conteúdo, firewall de aplicativos, VPN segura e acesso móvel à rede em nuvem, juntamente com o poder de um shell do FreeBSD.</para>
+ </listitem>
+
+ <listitem>
+ <para><link xlink:href="https://www.emc.com/isilon">Dell EMC Isilon</link> <indexterm>
+ <primary>Isilon</primary>
+ </indexterm> - Os dispositivos de armazenamento corporativo da Isilon são baseados no FreeBSD. A licença extremamente liberal do FreeBSD permitiu que a Isilon integrasse sua propriedade intelectual ao kernel e se concentrasse em construir seu produto ao invés de um sistema operacional.</para>
+ </listitem>
+
+ <listitem>
+ <para><link xlink:href="http://www.dell.com/KACE">Dell KACE</link> <indexterm>
+ <primary>Dell KACE</primary>
+ </indexterm> - Os appliances de gerenciamento de sistemas KACE executam o FreeBSD devido à sua confiabilidade, escalabilidade e a comunidade que apoia seu desenvolvimento contínuo.</para>
+ </listitem>
+
+ <listitem>
+ <para><link xlink:href="http://www.ixsystems.com/">iXsystems</link> <indexterm>
+ <primary>iXsystems</primary>
+ </indexterm> - A linha TrueNAS de dispositivos de armazenamento unificado é baseada no FreeBSD. Além de seus produtos comerciais, a iXsystems também gerencia o desenvolvimento dos projetos de código aberto TrueOS e FreeNAS.</para>
+ </listitem>
+
+ <listitem>
+ <para><link xlink:href="http://www.juniper.net/">Juniper</link> <indexterm>
+ <primary>Juniper</primary>
+ </indexterm> - O sistema operacional JunOS que roda em todos os equipamentos de rede da Juniper (incluindo roteadores, switches, firewalls e dispositivos de rede) é baseado no FreeBSD. A Juniper é um dos muitos fornecedores que mostra a relação simbiótica entre o projeto e os fornecedores de produtos comerciais. Melhorias geradas na Juniper são enviadas para o FreeBSD para reduzir a complexidade de integrar novos recursos do FreeBSD ao JunOS no futuro.</para>
+ </listitem>
+
+ <listitem>
+ <para><link xlink:href="http://www.mcafee.com/">McAfee</link> <indexterm>
+ <primary>McAfee</primary>
+ </indexterm> - O SecurOS, a base dos produtos de firewall corporativo da McAfee, incluindo o Sidewinder, é baseado no FreeBSD.</para>
+ </listitem>
+
+ <listitem>
+ <para><link xlink:href="http://www.netapp.com/">NetApp</link> <indexterm>
+ <primary>NetApp</primary>
+ </indexterm> - A linha de dispositivos de armazenamento Data ONTAP GX é baseada no FreeBSD. Além disso, a NetApp contribuiu com muitos recursos, incluindo o novo hipervisor licenciado pelo BSD, bhyve.</para>
+ </listitem>
+
+ <listitem>
+ <para><link xlink:href="http://www.netflix.com/">Netflix</link> <indexterm>
+ <primary>Netflix</primary>
+ </indexterm> - O appliance OpenConnect que a Netflix usa para transmitir filmes para seus clientes é baseado no FreeBSD. A Netflix fez extensas contribuições para a base de código e trabalha para manter um delta zero a partir do FreeBSD mainline. Os appliances Netflix OpenConnect são responsáveis ​​por entregar mais de 32% de todo o tráfego de Internet na América do Norte.</para>
+ </listitem>
+
+ <listitem>
+ <para><link xlink:href="http://www.sandvine.com/">Sandvine</link> <indexterm>
+ <primary>Sandvine</primary>
+ </indexterm> - A Sandvine usa o FreeBSD como base de suas plataformas de processamento de rede em tempo real de alto desempenho que compõem seus produtos inteligentes de controle de política de rede.</para>
+ </listitem>
+
+ <listitem>
+ <para><link xlink:href="http://www.sony.com/">Sony</link> <indexterm>
+ <primary>Sony</primary>
+ </indexterm> - O console de videogame PlayStation 4 executa uma versão modificada do FreeBSD.</para>
+ </listitem>
+
+ <listitem>
+ <para><link xlink:href="http://www.sophos.com/">Sophos</link> <indexterm>
+ <primary>Sophos</primary>
+ </indexterm> - O produto Sophos Email Appliance é baseado em uma versão modificada (hardened) do FreeBSD e varre as mensagens de entrada em busca por spam e vírus, ao mesmo tempo em que monitora as mensagens de saída quanto a malware, bem como a perda acidental de informações confidenciais.</para>
+ </listitem>
+
+ <listitem>
+ <para><link xlink:href="http://www.spectralogic.com/">Spectra Logic</link> <indexterm>
+ <primary>Spectra Logic</primary>
+ </indexterm> - A linha nTier de dispositivos de armazenamento de dados de arquivamento executa o FreeBSD e o OpenZFS.</para>
+ </listitem>
+
+ <listitem>
+ <para><link xlink:href="https://www.stormshield.eu">Stormshield</link> <indexterm>
+ <primary>Stormshield</primary>
+
+ </indexterm> - Os dispositivos Stormshield Network Security são baseados em uma versão modificada do FreeBSD. A licença BSD permite que eles integrem sua própria propriedade intelectual ao sistema enquanto retornam uma grande quantidade de desenvolvimento interessante para a comunidade.</para>
+ </listitem>
+
+ <listitem>
+ <para><link xlink:href="http://www.weather.com/">The Weather Channel</link> <indexterm>
+ <primary>The Weather Channel</primary>
+
+ </indexterm> - O appliance IntelliStar que é instalado na central de cada provedor de cabo local e é responsável por injetar previsões meteorológicas locais na programação da rede de TV a cabo, executa o FreeBSD.</para>
+ </listitem>
+
+ <listitem>
+ <para><link xlink:href="http://www.verisign.com/">Verisign</link> <indexterm>
+ <primary>Verisign</primary>
+
+ </indexterm> - A Verisign é responsável por operar os registros de domínio raiz .com e .net, bem como a infra-estrutura de DNS que a acompanha. Eles contam com diversos sistemas operacionais de rede, incluindo o FreeBSD, para garantir que não haja um ponto comum de falha em sua infraestrutura.</para>
+ </listitem>
+
+ <listitem>
+ <para><link xlink:href="http://www.voxer.com/">Voxer</link> <indexterm>
+ <primary>Voxer</primary>
+
+ </indexterm> - A Voxer suporta sua plataforma de mensagem de voz móvel com o ZFS no FreeBSD. A Voxer mudou de um derivativo do Solaris para o FreeBSD por causa da sua documentação superior, comunidade maior e mais ativa e ao ambiente mais favorável ao desenvolvedor. Além de recursos críticos como o <acronym>ZFS</acronym> e o DTrace, o FreeBSD também oferece suporte a TRIM no <acronym>ZFS</acronym>.</para>
+ </listitem>
+
+ <listitem>
+ <para><link xlink:href="http://www.whatsapp.com/">WhatsApp</link> <indexterm>
+ <primary>WhatsApp</primary>
+ </indexterm> - Quando o WhatsApp precisava de uma plataforma que pudesse lidar com mais de 1 milhão de conexões TCP por servidor, eles escolheram o FreeBSD. Eles então passaram a escalar para mais de 2.5 milhões de conexões por servidor.</para>
+ </listitem>
+
+ <listitem>
+ <para><link xlink:href="http://wheelsystems.com/">Wheel Systems</link> <indexterm>
+ <primary>Wheel Systems</primary>
+
+ </indexterm> - O dispositivo de segurança FUDO permite que as empresas monitorem, controlem, registrem e façam auditoria de contratados e administradores que trabalham em seus sistemas. Baseado em todos os melhores recursos de segurança do FreeBSD, incluindo ZFS, GELI, Capsicum, HAST e auditdistd.</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>O FreeBSD também gerou vários projetos de código aberto relacionados:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para><link xlink:href="http://bsdrp.net/">BSD Router</link><indexterm>
+ <primary>BSD Router</primary>
+ </indexterm> - Um substituto baseado em FreeBSD para grandes roteadores corporativos projetados para rodar em hardware PC padrão.</para>
+ </listitem>
+
+ <listitem>
+ <para><link xlink:href="http://www.freenas.org/">FreeNAS</link><indexterm>
+ <primary>FreeNAS</primary>
+ </indexterm> - Um FreeBSD personalizado projetado para ser usado como um dispositivo de servidor de arquivos de rede. Fornece uma interface web baseada em Python para simplificar o gerenciamento dos sistemas de arquivos UFS e ZFS. Inclui suporte para NFS, SMB/CIFS, AFP, FTP e iSCSI. Inclui um sistema extensível de plugins baseado em jails do FreeBSD.</para>
+ </listitem>
+
+ <listitem>
+ <para><link xlink:href="http://www.ghostbsd.org/">GhostBSD</link> <indexterm>
+ <primary>GhostBSD</primary>
+ </indexterm> - Uma distribuição FreeBSD orientada a desktop com o ambiente de desktop Gnome.</para>
+ </listitem>
+
+ <listitem>
+ <para><link xlink:href="http://mfsbsd.vx.sk/">mfsBSD</link> <indexterm>
+ <primary>mfsBSD</primary>
+ </indexterm> - Um kit de ferramentas para compilar uma imagem do sistema FreeBSD que roda inteiramente da memória.</para>
+ </listitem>
+
+ <listitem>
+ <para><link xlink:href="http://www.nas4free.org/">NAS4Free</link><indexterm>
+ <primary>NAS4Free</primary>
+ </indexterm> - Uma distribuição de servidor de arquivos baseada no FreeBSD com uma interface web PHP.</para>
+ </listitem>
+
+ <listitem>
+ <para><link xlink:href="http://www.opnsense.org/">OPNSense</link> <indexterm>
+ <primary>OPNsense</primary>
+ </indexterm> - OPNsense é um firewall e uma plataforma de roteamento open source, baseado em FreeBSD, fácil-de-usar e fácil-de-compilar. O OPNsense inclui a maioria dos recursos disponíveis em firewalls comerciais caros e, em muitos casos, muito mais. Ele traz o rico conjunto de recursos de ofertas comerciais com os benefícios de códigos fonte abertos e verificáveis.</para>
+ </listitem>
+
+ <listitem>
+ <para><link xlink:href="https://www.trueos.org">TrueOS</link> <indexterm>
+ <primary>TrueOS</primary>
+ </indexterm> - Uma versão personalizada do FreeBSD voltada para usuários de desktop com utilitários gráficos para expor o poder do FreeBSD para todos os usuários. Projetado para facilitar a transição de usuários do Windows e do OS X.</para>
+ </listitem>
+
+ <listitem>
+ <para><link xlink:href="http://www.pfsense.org/">pfSense</link><indexterm>
+ <primary>pfSense</primary>
+ </indexterm> - Uma distribuição de firewall baseada no FreeBSD com uma enorme variedade de recursos e amplo suporte a IPv6.</para>
+ </listitem>
+
+ <listitem>
+ <para><link xlink:href="http://zrouter.org/">ZRouter</link> <indexterm>
+ <primary>ZRouter</primary>
+ </indexterm> - Um firmware alternativo de código aberto para dispositivos embarcados baseado no FreeBSD. Projetado para substituir o firmware proprietário em roteadores prontos para uso.</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>Uma lista de <link xlink:href="https://www.freebsdfoundation.org/about/testimonials/">depoimentos de empresas que baseiam seus produtos e serviços no FreeBSD</link> pode ser encontrada no site da Fundação FreeBSD. A Wikipedia também mantém uma <link xlink:href="https://en.wikipedia.org/wiki/List_of_products_based_on_FreeBSD">lista de produtos baseados no FreeBSD</link>.</para>
+
+ </sect2>
+ </sect1>
+
+ <sect1 xml:id="history">
+ <title>Sobre o Projeto FreeBSD</title>
+
+ <para>A seção a seguir fornece algumas informações básicas sobre o projeto, incluindo um breve histórico, metas do projeto e o modelo de desenvolvimento do projeto.</para>
+
+ <sect2 xml:id="intro-history">
+ <title>Uma Breve História do FreeBSD</title>
+
+ <indexterm><primary>386BSD Patchkit</primary></indexterm>
+ <indexterm><primary>Hubbard, Jordan</primary></indexterm>
+ <indexterm><primary>Williams, Nate</primary></indexterm>
+ <indexterm><primary>Grimes, Rod</primary></indexterm>
+ <indexterm><primary>FreeBSD Project</primary> <secondary>history</secondary></indexterm>
+
+ <para>O Projeto FreeBSD teve sua gênese no início de 1993, parcialmente como uma evolução natural do Unofficial 386BSD Patchkit por parte dos três últimos coordenadores do patchkit: Nate Williams, Rod Grimes e Jordan Hubbard.</para>
+
+ <indexterm><primary>386BSD</primary></indexterm>
+ <para>O objetivo original era produzir um snapshot intermediário do 386BSD, a fim de corrigir um grande número de problemas com ele que o mecanismo do patchkit simplesmente não era capaz de resolver. O título inicial do projeto foi 386BSD 0.5 ou 386BSD Interim em referência a esse fato.</para>
+
+ <indexterm><primary>Jolitz, Bill</primary></indexterm>
+ <para>O 386BSD era o sistema operacional do Bill Jolitz, que havia até então sofrido bastante com quase um ano de negligência. Como o patchkit inchava cada vez mais desconfortavelmente a cada dia que passava, eles decidiram ajudar o Bill fornecendo este snapshot <quote>limpo</quote>. Esses planos foram interrompidos quando, de repente, Bill Jolitz decidiu retirar sua sanção do projeto sem qualquer indicação clara do que seria feito em seu lugar.</para>
+
+ <indexterm><primary>Greenman, David</primary></indexterm>
+ <indexterm><primary>Walnut Creek CDROM</primary></indexterm>
+
+ <para>O trio achou que a meta continuava valendo a pena, mesmo sem o apoio de Bill, e então adotaram o nome "FreeBSD" cunhado por David Greenman. Os objetivos iniciais foram definidos após consultar os usuários atuais do sistema e, uma vez que ficou claro que o projeto estava em vias de se tornar realidade, Jordan entrou em contato com a Walnut Creek CDROM com o objetivo de melhorar os canais de distribuição do FreeBSD para aqueles desafortunados sem acesso fácil à Internet. O Walnut Creek CDROM não apenas apoiou a ideia de distribuir o FreeBSD em CD, mas também chegou a fornecer ao projeto uma máquina para trabalhar e uma conexão rápida à Internet. Sem o grau de fé quase sem precedentes da Walnut Creek CDROM no que era, na época, um projeto completamente desconhecido, é bastante improvável que o FreeBSD tivesse chegado tão longe, tão rápido, como hoje.</para>
+
+ <indexterm><primary>4.3BSD-Lite</primary></indexterm>
+ <indexterm><primary>Net/2</primary></indexterm>
+ <indexterm><primary>U.C. Berkeley</primary></indexterm>
+ <indexterm><primary>386BSD</primary></indexterm>
+ <indexterm><primary>Free Software Foundation</primary></indexterm>
+ <para>A primeira distribuição em CD-ROM (e amplo pela rede) foi o FreeBSD 1.0, lançado em dezembro de 1993. Isto foi baseado na fita 4.3BSD-Lite (<quote>Net/2</quote>) da U.C. Berkeley, com muitos componentes também fornecidos pelo 386BSD e pela Free Software Foundation. Foi um sucesso bastante razoável para uma primeira oferta, e e eles seguiram com o bem-sucedido FreeBSD 1.1 em maio de 1994.</para>
+
+ <indexterm><primary>Novell</primary></indexterm>
+ <indexterm><primary>U.C. Berkeley</primary></indexterm>
+ <indexterm><primary>Net/2</primary></indexterm>
+ <indexterm><primary>AT&amp;T</primary></indexterm>
+ <para>Por esta altura, algumas nuvens de tempestade inesperadas formaram-se no horizonte, como a Novell e U.C. Berkeley resolveram seu longo processo judicial sobre o status legal da fita do Berkeley Net/2. Uma condição desse acordo foi a concessão da U.C. Berkeley de que grande parte do código Net/2 foi <quote>onerado</quote> e era de propriedade da Novell, que por sua vez o adquiriu da AT&amp;T algum tempo antes. O que a Berkeley recebeu em troca foi a <quote>bênção</quote> da Novell de que o lançamento do 4.4BSD-Lite, quando finalmente fosse lançado, seria declarado livre e todos os atuais usuários do Net/2 seriam fortemente encorajados a mudar. Isso incluiu o FreeBSD, e foi dado ao projeto o tempo para interromper o envio de seu próprio produto baseado em Net/2 até o final de julho de 1994. Sob os termos desse acordo, o projeto recebeu um último lançamento antes do prazo final, sendo esse lançamento o FreeBSD 1.1.5.1.</para>
+
+ <para>O FreeBSD então começou a tarefa árdua de literalmente se reinventar de um conjunto completamente novo e incompleto de bits do 4.4BSD-Lite. As versões <quote>Lite</quote> foram leves em parte porque o CSRG da Berkeley removeu grandes pedaços de código necessários para realmente compilar um sistema inicializável (devido a vários requisitos legais) e o fato de que a port Intel do 4.4 era altamente incompleto. O projeto levou até novembro de 1994 para fazer essa transição, e em dezembro lançou o FreeBSD 2.0 para o mundo. Apesar de ainda ser um pouco mais difícil, o lançamento foi um sucesso significativo e foi seguido pela versão mais robusta e fácil de instalar o FreeBSD 2.0.5 em junho de 1995.</para>
+
+ <para>Desde aquela época, o FreeBSD fez uma série de lançamentos cada vez melhorando a estabilidade, a velocidade e o conjunto de recursos da versão anterior.</para>
+
+ <para>Por enquanto, os projetos de desenvolvimento de longo prazo continuam a ocorrer no ramo 10.X-CURRENT (trunk), e os snapshots de release 10.X são continuamente disponibilizados a partir do <link xlink:href="ftp://ftp.FreeBSD.org/pub/FreeBSD/snapshots/">servidor de snapshots</link> à medida que o trabalho progride.</para>
+ </sect2>
+
+ <sect2 xml:id="goals">
+ <info>
+ <title>Objetivos do Projeto FreeBSD</title>
+
+ <authorgroup>
+ <author><personname> <firstname>Jordan</firstname> <surname> Hubbard </surname> </personname> <contrib>Contribuído por</contrib></author>
+ </authorgroup>
+ </info>
+
+ <indexterm><primary>FreeBSD Project</primary> <secondary>goals</secondary></indexterm>
+ <para>Os objetivos do Projeto FreeBSD são fornecer software que possa ser usado para qualquer propósito e sem amarras. Muitos de nós temos um investimento significativo no código (e projeto) e certamente não nos importaríamos com uma pequena compensação financeira de vez em quando, mas definitivamente não estamos preparados para insistir nisso. Acreditamos que a nossa primeira e principal <quote>missão</quote> é fornecer código a todos os participantes, e para qualquer finalidade, para que o código obtenha o maior uso possível e forneça o maior benefício possível. Este é, acredito, um dos objetivos mais fundamentais do Software Livre e um dos que apoiamos entusiasticamente.</para>
+
+ <indexterm><primary>GNU General Public License (GPL)</primary></indexterm>
+ <indexterm><primary>GNU Lesser General Public License (LGPL)</primary></indexterm>
+ <indexterm><primary>BSD Copyright</primary></indexterm>
+ <para>O código em nossa árvore de código-fonte que se enquadra na GNU General Public License (GPL) ou na Library General Public License (LGPL) vem com um pouco mais de amarras, embora pelo menos do lado do acesso imposto, em vez do oposto usual. Devido às complexidades adicionais que podem evoluir no uso comercial de software GPL, no entanto, preferimos software submetido sob os direitos autorais BSD mais relaxados quando é uma opção razoável fazê-lo.</para>
+ </sect2>
+
+ <sect2 xml:id="development">
+ <info>
+ <title>O Modelo de Desenvolvimento do FreeBSD</title>
+
+ <authorgroup>
+ <author><personname> <firstname>Satoshi</firstname> <surname>Asami</surname> </personname> <contrib>Contribuído por </contrib></author>
+ </authorgroup>
+ </info>
+
+ <indexterm><primary>FreeBSD Project</primary> <secondary>development model</secondary></indexterm>
+
+ <para>O desenvolvimento do FreeBSD é um processo muito aberto e flexível, sendo construído literalmente a partir das contribuições de milhares de pessoas ao redor do mundo, como pode ser visto na nossa <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/articles/contributors/article.html">lista de contribuidores</link>. A infraestrutura de desenvolvimento do FreeBSD permite que milhares de colaboradores colaborem pela Internet. Estamos constantemente à procura de novos desenvolvedores e ideias, e os interessados ​​em se envolver mais estreitamente com o projeto precisam simplesmente entrar em contato conosco pelas <link xlink:href="http://lists.FreeBSD.org/mailman/listinfo/freebsd-hackers">lista de discussões técnicas do FreeBSD</link>. A <link xlink:href="http://lists.FreeBSD.org/mailman/listinfo/freebsd-announce">lista de discussão de anúncios do FreeBSD</link> também está disponível para aqueles que desejam fazer com que outros usuários do FreeBSD conheçam as principais áreas de trabalho.</para>
+
+ <para>Coisas úteis para saber sobre o Projeto FreeBSD e seu processo de desenvolvimento, seja trabalhando independentemente ou em estreita cooperação:</para>
+
+ <variablelist>
+ <varlistentry>
+ <term>Os repositórios SVN<anchor xml:id="development-cvs-repository"/></term>
+
+ <listitem>
+ <para><indexterm>
+ <primary>CVS</primary>
+ </indexterm> <indexterm>
+ <primary>CVS Repository</primary>
+ </indexterm> <indexterm>
+ <primary>Concurrent Versions System</primary>
+ <see>CVS</see>
+ </indexterm> <indexterm>
+ <primary>Subversion</primary>
+ </indexterm> <indexterm>
+ <primary>Subversion Repository</primary>
+ </indexterm> <indexterm>
+ <primary>SVN</primary>
+ <see>Subversion</see>
+ </indexterm>Por vários anos, a árvore de código-fonte central do FreeBSD foi mantida pelo <link xlink:href="http://www.nongnu.org/cvs/">CVS</link> (Concurrent Versions Systems), uma ferramenta de controle de código-fonte disponível gratuitamente. Em junho de 2008, o Projeto mudou para o <link xlink:href="http://subversion.tigris.org">SVN</link> (Subversion). A troca foi considerada necessária, pois as limitações técnicas impostas pelo <application>CVS</application> estavam se tornando óbvias devido à rápida expansão da árvore de código-fonte e à quantidade de histórico já armazenada. Os repositórios do Projeto de Documentação e da Coleção de Ports também foram movidos do <application>CVS</application> para o <application>SVN</application> em maio de 2012 e julho de 2012, respectivamente. Por favor, consulte a seção <link linkend="synching">Sincronizando sua árvore de código-fonte</link> para maiores informações sobre como obter o repositório <literal>src/</literal> do FreeBSD e <link linkend="ports-using">Usando a Coleção de Ports</link> para detalhes sobre como obter a coleção de ports do FreeBSD.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>A lista de committers<anchor xml:id="development-committers"/></term>
+
+ <listitem>
+ <para>Os <firstterm>committers</firstterm> <indexterm>
+ <primary>committers</primary>
+ </indexterm> são as pessoas que têm acesso de <emphasis>escrita</emphasis> na árvore do Subversion, e estão autorizados a fazer modificações no código fonte do FreeBSD (o termo <quote>committer</quote> vem de <command>commit</command>, o comando de controle de código-fonte que é usado para trazer novas mudanças para o repositório). Qualquer um pode enviar um relatório de bug para o <link xlink:href="https://bugs.FreeBSD.org/submit/">Banco de Dados de Bugs</link>. Antes de enviar um relatório de bug, as listas de discussão, canais de IRC ou fóruns do FreeBSD podem ser usados ​​para ajudar a verificar se um problema é realmente um bug.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>O FreeBSD core team<anchor xml:id="development-core"/></term>
+
+ <listitem>
+ <para>O <firstterm>FreeBSD core team</firstterm> <indexterm>
+ <primary>core team</primary>
+ </indexterm> seria equivalente a um conselho de diretores se o Projeto FreeBSD fosse uma empresa. A principal tarefa do core team é garantir que o projeto, como um todo, esteja saudável e seguindo na direção certa. Convidar desenvolvedores dedicados e responsáveis a ingressar em nosso grupo de committers é uma das funções do core team, assim como o recrutamento de novos membros do core team à medida que os outros saiam. O core team atual foi eleito a partir de um grupo de committers candidatos em julho de 2018. As eleições são realizadas a cada dois anos.</para>
+
+ <note>
+ <para>Como a maioria dos desenvolvedores, a maioria dos membros do core team também são voluntários quando se trata de desenvolvimento do FreeBSD e não se beneficiam financeiramente do projeto, então o <quote>compromisso</quote> também não deve ser interpretado erroneamente como significando <quote>suporte garantido</quote>. A analogia do <quote>quadro de diretores</quote> da diretriz acima não é muito precisa, e pode ser mais apropriado dizer que estas são as pessoas que deram suas vidas em favor do FreeBSD contra o seu melhor julgamento!</para>
+ </note>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>Contribuidores externos</term>
+
+ <listitem>
+ <para>Por último, mas definitivamente não menos importante, o maior grupo de desenvolvedores são os próprios usuários que fornecem feedback e correções de bugs para nós em uma base quase constante. A principal maneira de manter contato com o desenvolvimento não-centralizado do FreeBSD é inscrever-se nas <link xlink:href="http://lists.FreeBSD.org/mailman/listinfo/freebsd-hackers">listas de discussões técnicas sobre o FreeBSD</link> onde essas coisas são discutidas. Veja <xref linkend="eresources"/> para maiores informações sobre as várias listas de discussão do FreeBSD.</para>
+
+ <para>A <citetitle><link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/articles/contributors/article.html">Lista de Colaboradores do FreeBSD</link> </citetitle><indexterm>
+ <primary>contributors</primary>
+ </indexterm> é extensa e crescente, então por que não se juntar a ela contribuindo com algo para o FreeBSD hoje?</para>
+
+ <para>Fornecer código não é a única maneira de contribuir para o projeto; para uma lista mais completa de coisas que precisam ser feitas, por favor consulte o <link xlink:href="@@URL_RELPREFIX@@/index.html">web site do Projeto FreeBSD</link>.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+
+ <para>Em resumo, nosso modelo de desenvolvimento é organizado como um conjunto solto de círculos concêntricos. O modelo centralizado é projetado para a conveniência dos <emphasis>usuários</emphasis> do FreeBSD, que são providos com uma maneira fácil de rastrear uma base de código central, e não para manter potenciais colaboradores fora! Nosso desejo é apresentar um sistema operacional estável com um grande conjunto de <link linkend="ports">aplicações</link> coerentes que os usuários possam facilmente instalar e usar - este modelo funciona muito bem em realizar isso.</para>
+
+ <para>Tudo o que pedimos para aqueles que se juntarem a nós como desenvolvedores do FreeBSD é a mesma dedicação que o pessoal atual tem para o seu sucesso contínuo!</para>
+ </sect2>
+
+ <sect2 xml:id="third-party-programs">
+ <title>Programas de Terceiros</title>
+
+ <para>Além das distribuições básicas, o FreeBSD oferece uma coleção de software portada com milhares de programas comumente procurados. No momento da redação deste texto, havia mais de 24.000 ports! A lista de ports varia de servidores http, a jogos, linguagens, editores e quase tudo no meio. Toda a coleção de ports requer aproximadamente 500 MB. Para compilar um port, simplesmente mude para o diretório do programa que você deseja instalar, digite <command>make install</command> e deixe o sistema fazer o resto. A distribuição original completa para cada port que você cria é baixada dinamicamente, para que você precise apenas de espaço em disco suficiente para compilar os ports desejados. Quase todos os ports também são fornecidos como um pacote <quote>pré-compilado</quote>, que pode ser instalado com um comando simples (<command>pkg install</command>) por aqueles que não desejam compilar seus próprios ports pelo código fonte. Maiores informações sobre pacotes e ports podem ser encontradas em <xref linkend="ports"/>.</para>
+ </sect2>
+
+ <sect2>
+ <title>Documentação Adicional</title>
+
+ <para>Todas as versões suportadas do FreeBSD fornecem uma opção no instalador para instalar documentação adicional em <filename>/usr/local/shar/doc/freebsd</filename> durante a configuração inicial do sistema. A documentação também pode ser instalada posteriormente, usando os pacotes descritos em <xref linkend="doc-ports-install-package"/>. Você pode ver os manuais instalados localmente com qualquer navegador compatível com HTML usando as seguintes URLs:</para>
+
+ <variablelist>
+ <varlistentry>
+ <term>O Handbook do FreeBSD</term>
+
+ <listitem>
+ <para><link xlink:href="file://localhost/usr/local/share/doc/freebsd/handbook/index.html"><filename>/usr/local/share/doc/freebsd/handbook/index.html</filename></link></para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>O FAQ do FreeBSD</term>
+
+ <listitem>
+ <para><link xlink:href="file://localhost/usr/local/share/doc/freebsd/faq/index.html"><filename>/usr/local/share/doc/freebsd/faq/index.html</filename></link></para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+
+ <para>Você também pode visualizar as cópias principais (e atualizadas com mais frequência) em <uri xlink:href="https://www.FreeBSD.org/">https://www.FreeBSD.org/</uri>.</para>
+ </sect2>
+ </sect1>
+</chapter>
+
+
+<!--
+ The FreeBSD Documentation Project
+
+ $FreeBSD$
+-->
+
+<chapter version="5.0" xml:id="bsdinstall">
+
+ <info>
+ <title>Instalando o FreeBSD</title>
+
+ <authorgroup>
+ <author><personname> <firstname>Jim</firstname> <surname>Mock</surname> </personname> <contrib>Reestruturado, reorganizado e com partes reescritas por </contrib></author>
+ </authorgroup>
+
+ <!---
+ <authorgroup>
+ <author>
+ <personname>
+ <firstname>Randy</firstname>
+ <surname>Pratt</surname>
+ </personname>
+ <contrib>The sysinstall walkthrough, screenshots, and
+ general copy by </contrib>
+ </author>
+ </authorgroup>
+ -->
+
+ <authorgroup>
+ <author><personname> <firstname>Gavin</firstname> <surname>Atkinson</surname> </personname> <contrib>Atualizado para o bsdinstall por </contrib></author>
+
+ <author><personname> <firstname>Warren</firstname> <surname>Block</surname> </personname></author>
+ </authorgroup>
+
+ <authorgroup>
+ <author><personname> <firstname>Allan</firstname> <surname>Jude</surname> </personname> <contrib>Atualizado para root-on-ZFS por </contrib></author>
+ </authorgroup>
+ </info>
+
+ <sect1 xml:id="bsdinstall-synopsis">
+ <title>Sinopse</title>
+
+ <indexterm><primary>installation</primary></indexterm>
+
+ <para>Existem diversos modos diferentes de colocar o FreeBSD para rodar, dependendo do ambiente. São eles:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>Imagens de Máquinas Virtuais, para baixar e importar em um ambiente virtual da sua escolha. Elas podem ser baixadas da página de <link xlink:href="https://www.freebsd.org/where.html">Download do FreeBSD</link>. Existem imagens para KVM (<quote>qcow2</quote>), VMWare (<quote>vmdk</quote>), Hyper-V (<quote>vhd</quote>) e imagens de dispositivos brutos (raw device) que são universalmente suportadas . Estas não são imagens de instalação, mas sim as instâncias pré-configuradas (<quote>já instaladas</quote>), prontas para executar e realizar tarefas de pós-instalação.</para>
+ </listitem>
+
+ <listitem>
+ <para>Imagens de máquinas virtuais disponíveis no <link xlink:href="https://aws.amazon.com/mp/solutions/freebsd/">Amazon AWS Marketplace</link>, no <link xlink:href="https://azuremarketplace.microsoft.com/en-us/marketplace/apps?search=freebsd&amp;page=1">Microsoft Azure Marketplace</link>, e na <link xlink:href="https://console.cloud.google.com/launcher/details/freebsd-cloud/freebsd-11">Plataforma Google Cloud</link>, para executar em seus respectivos serviços de hospedagem. Para obter maiores informações sobre como implantar o FreeBSD no Azure, consulte o capítulo relevante na <link xlink:href="https://docs.microsoft.com/en-us/azure/virtual-machines/linux/freebsd-intro-on-azure">Documentação do Azure</link>.</para>
+ </listitem>
+
+ <listitem>
+ <para>Imagens de cartão SD, para sistemas embarcados, como Raspberry Pi ou BeagleBone Black. Eles podem ser baixados da página de <link xlink:href="https://www.freebsd.org/where.html">Download do FreeBSD</link>. Esses arquivos devem ser descompactados e gravados como uma imagem bruta para um cartão SD, a partir do qual a placa será inicializada.</para>
+ </listitem>
+
+ <listitem>
+ <para>Imagens de instalação, para instalar o FreeBSD no disco rígido de um desktop padrão, laptop ou servidor.</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>O resto deste capítulo descreve o quarto caso, explicando como instalar o FreeBSD usando o programa de instalação baseado em texto chamado <application>bsdinstall</application>.</para>
+
+ <para>Em geral, as instruções de instalação neste capítulo foram escritas para as arquiteturas <trademark>i386</trademark> e <acronym>AMD64</acronym>. Onde aplicável, instruções específicas para outras plataformas serão listadas. Pode haver pequenas diferenças entre o instalador e o que é mostrado aqui, portanto, use este capítulo como um guia geral, e não como um conjunto de instruções literais.</para>
+
+ <note>
+ <para>Usuários que preferem instalar o FreeBSD usando um instalador gráfico podem estar interessados ​​no <application> pc-sysinstall </application>, o instalador usado pelo Projeto TrueOS. Ele pode ser usado para instalar um desktop gráfico (TrueOS) ou uma versão de linha de comando do FreeBSD. Consulte o Manual do Usuário do TrueOS para obter detalhes (<link xlink:href="https://www.trueos.org/handbook/trueos.html">https://www.trueos.org/handbook/trueos.html</link>).</para>
+ </note>
+
+ <para>Depois de ler este capítulo, você saberá:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>Quais os requisitos mínimos de hardware e as arquiteturas suportadas pelo FreeBSD.</para>
+ </listitem>
+
+ <listitem>
+ <para>Como criar a mídia de instalação do FreeBSD.</para>
+ </listitem>
+
+ <listitem>
+ <para>Como iniciar o <application>bsdinstall</application>.</para>
+ </listitem>
+
+ <listitem>
+ <para>As perguntas que o <application>bsdinstall</application> fará, o que elas significam e como respondê-las.</para>
+ </listitem>
+
+ <listitem>
+ <para>Como solucionar problemas de uma instalação com falha</para>
+ </listitem>
+
+ <listitem>
+ <para>Como acessar uma versão live do FreeBSD antes de se comprometer com uma instalação.</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>Antes de ler este capítulo, você deve:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>Ler a lista de hardware suportado que acompanha a versão do FreeBSD que será instalada e verificar se o hardware do sistema é suportado.</para>
+ </listitem>
+ </itemizedlist>
+ </sect1>
+
+ <sect1 xml:id="bsdinstall-hardware">
+ <title>Requisitos mínimos de hardware</title>
+
+ <para>Os requisitos de hardware para instalar o FreeBSD variam por arquitetura. Arquiteturas de hardware e dispositivos suportados por uma release do FreeBSD estão listados na página <link xlink:href="@@URL_RELPREFIX@@/releases/index.html">Informação de Release do FreeBSD</link>. A <link xlink:href="@@URL_RELPREFIX@@/where.html">página de download do FreeBSD</link> também tem recomendações para escolha a imagem correta para as diferentes arquiteturas.</para>
+
+ <para>Uma instalação do FreeBSD requer um mínimo de 96 MB de <acronym>RAM</acronym> e 1,5 GB de espaço livre no disco rígido. No entanto, essas pequenas quantidades de memória e espaço em disco são realmente adequadas apenas para aplicativos personalizados, como dispositivos embarcados. Os sistemas de desktop de uso geral precisam de mais recursos. De 2 a 4 GB de RAM e pelo menos 8 GB de espaço no disco rígido é um bom ponto de partida.</para>
+
+ <para>Estes são os requisitos do processador para cada arquitetura:</para>
+
+ <variablelist>
+ <varlistentry>
+ <term>amd64</term>
+ <listitem>
+ <para>Esse é o tipo de processador de desktop e laptop mais comum, usado na maioria dos sistemas modernos. A <trademark class="registered">Intel </trademark> chama ele de <acronym>Intel64</acronym>. Outros fabricantes às vezes o chamam de <acronym>x86-64</acronym>.</para>
+
+ <para>Exemplos de processadores compatíveis com AMD64 incluem: <trademark>AMD Athlon</trademark> 64, <trademark>AMD Opteron</trademark>, multi-core <trademark class="registered">Intel</trademark> <trademark>Xeon</trademark> e processadores <trademark class="registered">Intel</trademark> <trademark>Core</trademark> 2 e posteriores.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>i386</term>
+ <listitem>
+ <para>Desktops e laptops mais antigos geralmente usam essa arquitetura x86 de 32 bits.</para>
+
+ <para>Quase todos os processadores compatíveis com i386 com uma unidade de ponto flutuante são suportados. Todos os processadores <trademark class="registered">Intel</trademark> 486 ou superior são suportados.</para>
+
+ <para>O FreeBSD irá aproveitar o suporte a Extensões de Endereços Físicos (<acronym>PAE</acronym>) em <acronym>CPU</acronym>s com este recurso. Um kernel com o recurso <acronym>PAE</acronym> ativado detectará memória acima de 4 GB e permitirá que ela seja usada pelo sistema. No entanto, o uso do <acronym>PAE</acronym> coloca restrições em drivers de dispositivos e outros recursos do FreeBSD. Consulte <citerefentry><refentrytitle>pae</refentrytitle><manvolnum>4</manvolnum></citerefentry> para detalhes.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>ia64</term>
+ <listitem>
+ <para>Os processadores suportados atualmente são <trademark class="registered">Itanium</trademark> e <trademark class="registered">Itanium</trademark> 2. Os chipsets suportados incluem o HP zx1, <trademark class="registered">Intel</trademark> 460GX e <trademark class="registered">Intel</trademark> E8870. Ambas as configurações Uniprocessor (<acronym>UP</acronym>) e Symmetric Multi-processor (<acronym>SMP</acronym>) são suportadas.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>powerpc</term>
+ <listitem>
+ <para>Todos os sistemas New World <acronym>ROM</acronym> <trademark class="registered">Apple</trademark> <trademark class="registered">Mac</trademark> com <acronym>USB</acronym> incorporados são suportados. O <acronym>SMP</acronym> é suportado em máquinas com vários <acronym>CPU</acronym>s.</para>
+
+ <para>Um kernel de 32 bits só pode usar os primeiros 2 GB de <acronym>RAM</acronym>.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>sparc64</term>
+ <listitem>
+ <para>Os sistemas suportados pelo FreeBSD/sparc64 estão listados no <link xlink:href="@@URL_RELPREFIX@@/platforms/sparc.html">Projeto FreeBSD/sparc64</link>.</para>
+
+ <para>O <acronym>SMP</acronym> é suportado em todos os sistemas com mais de 1 processador. Um disco dedicado é necessário, pois não é possível compartilhar um disco com outro sistema operacional neste momento.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </sect1>
+
+ <sect1 xml:id="bsdinstall-pre">
+ <title>Tarefas de Pré-instalação</title>
+
+ <para>Uma vez determinado que o sistema atende aos requisitos mínimos de hardware para instalar o FreeBSD, o arquivo de instalação deve ser baixado e a mídia de instalação preparada. Antes de fazer isso, verifique se o sistema está pronto para uma instalação, verificando os itens nesta lista de controle:</para>
+
+ <procedure>
+ <step>
+ <title>Faça backup dos dados importantes</title>
+
+ <para>Antes de instalar qualquer sistema operacional, <emphasis>sempre</emphasis> faça backup de todos os dados importantes primeiro. Não armazene o backup no sistema que está sendo instalado. Em vez disso, salve os dados em um disco removível, como uma unidade <acronym>USB</acronym>, outro sistema na rede ou um serviço de backup online. Teste o backup antes de iniciar a instalação para garantir que ele contenha todos os arquivos necessários. Depois que o instalador formatar o disco do sistema, todos os dados armazenados nesse disco serão perdidos.</para>
+ </step>
+
+ <step>
+ <title>Decida onde instalar o FreeBSD</title>
+
+ <para>Se o FreeBSD for o único sistema operacional instalado, esta etapa pode ser ignorada. Mas se o FreeBSD compartilhar o disco com outro sistema operacional, decida qual disco ou partição será usado para o FreeBSD.</para>
+
+ <para>Nas arquiteturas i386 e amd64, os discos podem ser divididos em várias partições usando um dos dois esquemas de particionamento. Um <firstterm>registro de inicialização mestre</firstterm> tradicional (<acronym>MBR</acronym>) contém uma tabela de partição que define até quatro <firstterm>partições primárias</firstterm>. Por razões históricas, o FreeBSD chama essas partições primárias de <firstterm>slices</firstterm>. Uma dessas partições primárias pode ser transformada em uma <firstterm>partição estendida</firstterm> contendo várias <firstterm>partições lógicas</firstterm>. A <firstterm>Tabela de Partição GUID</firstterm> (<acronym>GPT</acronym>) é um método mais novo e mais simples de particionar um disco. Implementações comuns de <acronym>GPT</acronym> permitem até 128 partições por disco, eliminando a necessidade de partições lógicas.</para>
+
+ <warning>
+ <para>Alguns sistemas operacionais mais antigos, como o <trademark class="registered">Windows</trademark> XP, não são compatíveis com o esquema de partição <acronym>GPT</acronym>. Se o FreeBSD estiver compartilhando um disco com esse sistema operacional, o particionamento <acronym>MBR</acronym> será necessário.</para>
+ </warning>
+
+ <para>O boot loader do FreeBSD requer uma partição primária ou <acronym>GPT</acronym>. Se todas as partições primárias ou <acronym>GPT</acronym> já estiverem em uso, uma deve ser liberada para o FreeBSD. Para criar uma partição sem excluir dados existentes, use uma ferramenta de redimensionamento de partição para reduzir uma partição existente e criar uma nova partição usando o espaço liberado.</para>
+
+ <para>Uma variedade de ferramentas de redimensionamento de partições comerciais e gratuitas estão listadas em <link xlink:href="http://en.wikipedia.org/wiki/List_of_disk_partitioning_software"> http://en.wikipedia.org/wiki/List_of_disk_partitioning_software</link>. O <application>GParted Live</application> (<link xlink:href="http://gparted.sourceforge.net/livecd.php">http://gparted.sourceforge.net/livecd.php</link>) é um live <acronym>CD</acronym> que inclui o editor de partições <application>GParted</application>. O <application>GParted</application> também está incluído em muitas outras distribuições live <acronym>CD</acronym> do Linux.</para>
+
+ <warning>
+ <para>Quando usados ​​corretamente, os utilitários de encolhimento de disco podem criar espaço com segurança para criar uma nova partição. Como existe a possibilidade de selecionar a partição errada, sempre faça backup de todos os dados importantes e verifique a integridade do backup antes de modificar as partições do disco.</para>
+ </warning>
+
+ <para>Partições de disco contendo diferentes sistemas operacionais tornam possível instalar vários sistemas operacionais em um computador. Uma alternativa é usar virtualização (<xref linkend="virtualization"/>) o que permite que vários sistemas operacionais sejam executados ao mesmo tempo sem modificar nenhuma partição de disco.</para>
+ </step>
+
+ <step>
+ <title>Colete informações de rede</title>
+
+ <para>Alguns métodos de instalação do FreeBSD requerem uma conexão de rede para baixar os arquivos de instalação. Após qualquer instalação, o instalador oferecerá a configuração das interfaces de rede do sistema.</para>
+
+ <para>Se a rede tiver um servidor <acronym>DHCP</acronym>, ele poderá ser usado para fornecer configuração de rede automática. Se o <acronym>DHCP</acronym> não estiver disponível, as seguintes informações de rede para o sistema devem ser obtidas com o administrador de rede local ou com o provedor de serviços de Internet:</para>
+
+ <orderedlist xml:id="bsdinstall-collect-network-information">
+ <title>Informações de rede necessárias</title>
+
+ <listitem>
+ <para>Endereço <acronym>IP</acronym></para>
+ </listitem>
+
+ <listitem>
+ <para>Máscara de sub-rede</para>
+ </listitem>
+
+ <listitem>
+ <para>Endereço do <acronym>IP</acronym> do gateway padrão</para>
+ </listitem>
+
+ <listitem>
+ <para>Nome de domínio da rede</para>
+ </listitem>
+
+ <listitem>
+ <para>Endereços <acronym>IP</acronym> dos servidores <acronym>DNS</acronym> da rede</para>
+ </listitem>
+ </orderedlist>
+ </step>
+
+ <step>
+ <title>Verifique a Errata do FreeBSD</title>
+
+ <para>Embora o Projeto FreeBSD se esforce para garantir que cada versão do FreeBSD seja o mais estável possível, ocasionalmente, os bugs aparecem no processo. Em raras ocasiões, esses erros afetam o processo de instalação. A medida que esses problemas são descobertos e corrigidos, eles são anotados na Errata do FreeBSD (<link xlink:href="@@URL_RELPREFIX@@/releases/12.0R/errata.html">https://www.freebsd.org/releases/12.0R/errata.html</link>) no site do FreeBSD. Verifique a errata antes de instalar para certificar-se de que não existem problemas que possam afetar a instalação.</para>
+
+ <para>Informações e erratas para todos os releases podem ser encontradas na seção de informações de release do site do FreeBSD (<link xlink:href="@@URL_RELPREFIX@@/releases/index.html">https://www.freebsd.org /releases/index.html</link>).</para>
+ </step>
+ </procedure>
+
+ <sect2 xml:id="bsdinstall-installation-media">
+ <title>Prepare a mídia de instalação</title>
+
+ <para>O instalador do FreeBSD não é um aplicativo que pode ser executado dentro de outro sistema operacional. Em vez disso, baixe um arquivo de instalação do FreeBSD, grave-o na mídia associada ao seu tipo e tamanho (<acronym>CD</acronym>, <acronym>DVD</acronym>, ou <acronym>USB</acronym>), e inicialize o sistema para instalar a partir da mídia inserida.</para>
+
+ <para>Os arquivos de instalação do FreeBSD estão disponíveis em <link xlink:href="@@URL_RELPREFIX@@/where.html#download"> www.freebsd.org/where.html#download</link>. O nome de cada arquivo de instalação inclui a versão de Release do FreeBSD, a arquitetura e o tipo de arquivo. Por exemplo, para instalar o FreeBSD 10.2 em um sistema amd64 de um <acronym>DVD</acronym>, baixe o <filename>FreeBSD-10.2-RELEASE-amd64-dvd1.iso</filename>, grave este arquivo em um <acronym>DVD</acronym>, e inicialize o sistema com o <acronym>DVD</acronym> inserido.</para>
+
+ <para>Os arquivos de instalação estão disponíveis em vários formatos. Os formatos variam dependendo da arquitetura do computador e do tipo de mídia.</para>
+
+ <para xml:id="bsdinstall-installation-media-uefi">Arquivos de instalação adicionais são incluídos para computadores que inicializam com <acronym>UEFI</acronym> (Interface de Firmware Extensível Unificada). Os nomes desses arquivos incluem a string <filename>uefi</filename>.</para>
+
+ <para>Tipos de arquivo:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para><literal>-bootonly.iso</literal>: Este é o menor arquivo de instalação, pois contém apenas o instalador. É necessária uma conexão de Internet em funcionamento durante a instalação, pois o instalador fará o download dos arquivos necessários para concluir a instalação do FreeBSD. Este arquivo deve ser gravado em um <acronym>CD</acronym> usando um aplicativo de gravação <acronym>CD</acronym>.</para>
+ </listitem>
+
+ <listitem>
+ <para><literal>-disc1.iso</literal>: Este arquivo contém todos os arquivos necessários para instalar o FreeBSD, seu código-fonte e a coleção de ports. Ele deve ser gravado em um <acronym>CD</acronym> usando um aplicativo de gravação <acronym>CD</acronym>.</para>
+ </listitem>
+
+ <listitem>
+ <para><literal>-dvd1.iso</literal>: Este arquivo contém todos os arquivos necessários para instalar o FreeBSD, seu código-fonte e a coleção de ports. Ele também contém um conjunto de pacotes binários populares para instalar um gerenciador de janelas e alguns aplicativos para que um sistema completo possa ser instalado a partir da mídia sem a necessidade de uma conexão com a Internet. Este arquivo deve ser gravado em um <acronym>DVD</acronym> usando um aplicativo de gravação <acronym>DVD</acronym>.</para>
+ </listitem>
+
+ <listitem>
+ <para><literal>-memstick.img</literal>: Este arquivo contém todos os arquivos necessários para instalar o FreeBSD, seu código-fonte e a coleção de ports. Ele deve ser gravado em um pendrive <acronym>USB</acronym> usando as instruções abaixo.</para>
+ </listitem>
+
+ <listitem>
+ <para><literal>-mini-memstick.img</literal>: Como <literal> -bootonly.iso </literal>, não inclui arquivos de instalação, mas faz o download conforme necessário. É necessária uma conexão de internet em funcionamento durante a instalação. Grave este arquivo para um pendrive <acronym>USB</acronym> como mostrado em <xref linkend="bsdinstall-usb"/>.</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>Depois de baixar o arquivo de imagem, baixe o <filename>CHECKSUM.SHA256</filename> do mesmo diretório. Calcule o <firstterm>checksum</firstterm> para o arquivo de imagem. O FreeBSD fornece o <citerefentry><refentrytitle>sha256</refentrytitle><manvolnum>1</manvolnum></citerefentry> para isso, usado como <command>sha256 <replaceable>imagefilename</replaceable></command>. Outros sistemas operacionais possuem programas semelhantes.</para>
+
+ <para>Compare o checksum calculado com a mostrado em <filename>CHECKSUM.SHA256</filename>. Os checksum devem corresponder exatamente. Se os checksums não corresponderem, o arquivo de imagem está corrompido e deve ser baixado novamente.</para>
+
+ <sect3 xml:id="bsdinstall-usb">
+ <title>Gravando um arquivo de imagem para um pendrive <acronym>USB</acronym></title>
+
+ <para>O arquivo <filename>*. Img</filename> é uma <emphasis>imagem</emphasis> do conteúdo completo de um cartão de memória. Ele <emphasis>não pode</emphasis> ser copiado para o dispositivo de destino como um arquivo. Várias aplicações estão disponíveis para escrever o <filename>*. Img</filename> para um pendrive <acronym>USB</acronym>. Esta seção descreve dois destes utilitários.</para>
+
+ <important>
+ <para>Antes de continuar, faça backup de todos os dados importantes do pendrive <acronym>USB</acronym>. Este procedimento irá apagar todos os dados existentes no mesmo.</para>
+ </important>
+
+ <procedure xml:id="bsdinstall-usb-dd">
+ <title>Usando o <command>dd</command> para gravar a imagem</title>
+
+ <warning>
+ <para>Este exemplo usa <filename>/dev/da0</filename> como o dispositivo de destino em que a imagem será gravada. Seja <emphasis>muito cuidadoso</emphasis> para que o dispositivo correto seja usado, pois esse comando destruirá os dados existentes no dispositivo de destino especificado.</para>
+ </warning>
+
+ <step>
+ <para>O utilitário de linha de comando <citerefentry><refentrytitle>dd</refentrytitle><manvolnum>1</manvolnum></citerefentry> está disponível no BSD, no <trademark class="registered">Linux</trademark> e no <trademark class="registered">Mac OS</trademark>. Para gravar a imagem usando o <command>dd</command>, insira o pendrive <acronym>USB</acronym> e determine o nome do dispositivo. Em seguida, especifique o nome do arquivo de instalação baixado e o nome do dispositivo para o pendrive <acronym>USB</acronym>. Este exemplo grava a imagem de instalação amd64 no primeiro dispositivo <acronym>USB</acronym> em um sistema FreeBSD existente.</para>
+
+ <screen><prompt>#</prompt> <userinput>dd if=<replaceable>FreeBSD-10.2-RELEASE-amd64-memstick.img</replaceable> of=/dev/<replaceable>da0</replaceable> bs=1M conv=sync</userinput></screen>
+
+ <para>Se este comando falhar, verifique se o pendrive <acronym>USB</acronym> não está montado e se o nome do dispositivo aponta para o disco, não para uma partição. Alguns sistemas operacionais podem requerer que este comando seja executado com o <citerefentry><refentrytitle>sudo</refentrytitle><manvolnum>8</manvolnum></citerefentry>. A sintaxe do <citerefentry><refentrytitle>dd</refentrytitle><manvolnum>1</manvolnum></citerefentry> varia ligeiramente em diferentes plataformas; por exemplo, o <trademark class="registered">Mac OS</trademark> requer um <option>bs=1m</option> em minúsculas. Sistemas como o <trademark class="registered">Linux</trademark> podem gravar em buffer. Para forçar todas as gravações a serem concluídas, use o comando <citerefentry><refentrytitle>sync</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
+ </step>
+ </procedure>
+
+ <procedure>
+ <title>Usando o <trademark class="registered">Windows</trademark> para gravar a imagem</title>
+
+ <warning>
+ <para>Certifique-se de fornecer a letra da unidade correta, pois os dados existentes na unidade especificada serão sobrescritos e destruídos.</para>
+ </warning>
+
+ <step>
+ <title>Obtendo o <application>Image Writer para <trademark class="registered">Windows</trademark></application></title>
+
+ <para>O <application>Image Writer para <trademark class="registered">Windows</trademark></application> é um aplicativo gratuito que pode gravar corretamente um arquivo de imagem em um cartão de memória. Faça o download a partir de <uri xlink:href="https://sourceforge.net/projects/win32diskimager/">https://sourceforge.net/projects/win32diskimager/</uri> e extraia-o em uma pasta.</para>
+ </step>
+
+ <step>
+ <title>Escrevendo a imagem com o Image Writer</title>
+
+ <para>Clique duas vezes no ícone <application>Win32DiskImager</application> para iniciar o programa. Verifique se a letra da unidade mostrada em <computeroutput>Device</computeroutput> é a unidade com o cartão de memória. Clique no ícone da pasta e selecione a imagem a ser gravada no cartão de memória. Clique em <guibutton>[ Save ]</guibutton> para aceitar o nome do arquivo de imagem. Verifique se tudo está correto e se nenhuma pasta do cartão de memória está aberta em outras janelas. Quando tudo estiver pronto, clique em <guibutton>[Write]</guibutton> para gravar o arquivo de imagem no cartão de memória.</para>
+ </step>
+ </procedure>
+
+ <para>Agora você está pronto para começar a instalar o FreeBSD.</para>
+ </sect3>
+ </sect2>
+ </sect1>
+
+ <sect1 xml:id="bsdinstall-start">
+ <title>Iniciando a instalação</title>
+
+ <important>
+ <para>Por padrão, a instalação não fará alterações no(s) disco(s) antes da seguinte mensagem:</para>
+
+ <programlisting>Your changes will now be written to disk. If you
+have chosen to overwrite existing data, it will
+be PERMANENTLY ERASED. Are you sure you want to
+commit your changes?</programlisting>
+
+ <para>A instalação pode ser encerrada a qualquer momento antes deste aviso. Se houver uma preocupação de que algo esteja configurado incorretamente, basta desligar o computador antes desse ponto e nenhuma alteração será feita nos discos do sistema.</para>
+ </important>
+
+ <para>Esta seção descreve como inicializar o sistema a partir da mídia de instalação que foi preparada usando as instruções em <xref linkend="bsdinstall-installation-media"/>. Ao usar um dispositivo USB inicializável, conecte o dispositivo <acronym>USB</acronym> antes de ligar o computador. Ao inicializar a partir do <acronym>CD</acronym> ou do <acronym>DVD</acronym>, ligue o computador e insira a mídia na primeira oportunidade. O procedimento para configurar o sistema para inicializar a partir da mídia inserida depende da arquitetura.</para>
+
+ <sect2 xml:id="bsdinstall-starting-i386">
+ <title>Inicializando em <trademark>i386</trademark> e amd64</title>
+
+ <para>Estas arquiteturas fornecem um menu <acronym>BIOS</acronym> para selecionar o dispositivo de inicialização. Dependendo da mídia de instalação usada, selecione o dispositivo de <acronym>CD</acronym>/<acronym>DVD</acronym> ou o <acronym>USB</acronym> como o primeiro dispositivo de inicialização. A maioria dos sistemas também fornece uma chave para selecionar o dispositivo durante a inicialização sem ter que entrar no <acronym>BIOS</acronym>. Normalmente, a chave é <keycap>F10</keycap>, <keycap>F11</keycap>, <keycap>F12</keycap> ou <keycap>Escape</keycap>.</para>
+
+ <para>Se o computador carregar o sistema operacional existente em vez do instalador do FreeBSD, então:</para>
+
+ <orderedlist>
+ <listitem>
+ <para>A mídia de instalação não foi inserida cedo o suficiente no processo de inicialização. Deixe a mídia inserida e tente reiniciar o computador.</para>
+ </listitem>
+
+ <listitem>
+ <para>As alterações do <acronym>BIOS</acronym> estavam incorretas ou não foram salvas. Verifique novamente se o dispositivo de inicialização correto está selecionado como o primeiro dispositivo de inicialização.</para>
+ </listitem>
+
+ <listitem>
+ <para>Este sistema é muito antigo para suportar a inicialização a partir da mídia escolhida. Neste caso, o <application>Plop Boot Manager</application> (<link xlink:href="http://www.plop.at/en/bootmanagers.html"/>) pode ser usado para inicializar o sistema a partir da mídia selecionada.</para>
+ </listitem>
+ </orderedlist>
+ </sect2>
+
+ <sect2>
+ <title>Inicializando no <trademark class="registered">PowerPC</trademark></title>
+
+ <para>Na maioria das máquinas, manter pressionado o <keycap>C</keycap> no teclado durante a inicialização irá inicializar a partir do <acronym>CD</acronym>. Caso contrário, mantenha pressionados <keycombo action="simul"> <keycap>Command</keycap> <keycap>Option</keycap> <keycap>O</keycap> <keycap>F</keycap> </keycombo>, ou <keycombo action="simul"> <keycap>Windows</keycap> <keycap>Alt</keycap> <keycap>O</keycap> <keycap>F</keycap> </keycombo> em teclados não-<trademark class="registered">Apple</trademark>. No prompt <prompt>0 &gt;</prompt>, digite</para>
+
+ <screen><userinput>boot cd:,\ppc\loader cd:0</userinput></screen>
+ </sect2>
+
+ <sect2>
+ <title>Inicializando no <trademark class="registered"> SPARC64 </trademark></title>
+
+ <para>A maioria dos sistemas <trademark class="registered">SPARC64</trademark> são configurados para inicializar automaticamente a partir do disco. Para instalar o FreeBSD de um <acronym>CD</acronym>, requer uma pausa no <acronym>PROM</acronym>.</para>
+
+ <para>Para fazer isso, reinicialize o sistema e aguarde até que a mensagem de inicialização apareça. A mensagem depende do modelo, mas deve ser algo como isto:</para>
+
+ <screen>Sun Blade 100 (UltraSPARC-IIe), Keyboard Present
+Copyright 1998-2001 Sun Microsystems, Inc. All rights reserved.
+OpenBoot 4.2, 128 MB memory installed, Serial #51090132.
+Ethernet address 0:3:ba:b:92:d4, Host ID: 830b92d4.</screen>
+
+ <para>Se o sistema passar a inicializar a partir do disco neste ponto, pressione <keycombo action="simul"><keycap>L1</keycap><keycap>A</keycap></keycombo> ou <keycombo action="simul"><keycap>Stop</keycap><keycap>A</keycap></keycombo> no teclado, ou envie um <command>BREAK</command> pelo console serial. Ao usar o <application>tip</application> ou o <application>cu</application>, <command>~#</command> irá emitir um BREAK. O prompt <acronym>PROM</acronym> será <prompt>ok</prompt> em sistemas com uma <acronym>CPU</acronym> e <prompt>ok {0} </prompt> em sistemas <acronym>SMP</acronym>, onde o dígito indica o número da <acronym>CPU</acronym> ativa.</para>
+
+ <para>Neste ponto, coloque o <acronym>CD</acronym> na unidade e digite <command>boot cdrom</command> no prompt <acronym>PROM</acronym>.</para>
+ </sect2>
+
+ <sect2 xml:id="bsdinstall-view-probe">
+ <title>Menu de inicialização do FreeBSD</title>
+
+ <para>Quando o sistema inicializar a partir da mídia de instalação, um menu semelhante ao seguinte será exibido:</para>
+
+ <figure xml:id="bsdinstall-newboot-loader-menu">
+ <title>Menu do FreeBSD Boot Loader</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="bsdinstall/bsdinstall-newboot-loader-menu"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Por padrão, o menu irá esperar dez segundos por uma ação do usuário antes de inicializar no instalador do FreeBSD ou, se o FreeBSD já estiver instalado, antes de inicializar no FreeBSD. Para pausar o cronômetro de inicialização para rever as seleções, pressione <keycap>Espaço</keycap>. Para selecionar uma opção, pressione seu número, caractere ou tecla destacada. As seguintes opções estão disponíveis.</para>
+
+ <itemizedlist>
+ <listitem>
+ <para><literal>Boot Multi User</literal>: Isto irá continuar o processo de inicialização do FreeBSD. Se o temporizador de boot tiver sido pausado, pressione <keycap>1</keycap>, <keycap>B</keycap> maiúsculo ou minúsculo ou <keycap>Enter</keycap>.</para>
+ </listitem>
+
+ <listitem>
+ <para><literal>Boot Single User</literal>: Este modo pode ser usado para corrigir uma instalação existente do FreeBSD como descrito em <xref linkend="boot-singleuser"/>. Pressione <keycap>2</keycap> ou <keycap>S</keycap> maiúsculo ou minúsculo para entrar neste modo.</para>
+ </listitem>
+
+ <listitem>
+ <para><literal>Escape to loader prompt</literal>: Isso inicializará o sistema em um prompt de reparo que contém um número limitado de comandos de baixo nível. Este prompt é descrito em <xref linkend="boot-loader"/>. Pressione <keycap>3</keycap> ou <keycap>Esc</keycap> para inicializar neste prompt.</para>
+ </listitem>
+
+ <listitem>
+ <para><literal>Reboot</literal>: Reinicia o sistema.</para>
+ </listitem>
+
+ <listitem>
+ <para><literal>Configure Boot Options</literal>: Abre o menu mostrado e descrito em <xref linkend="bsdinstall-boot-options-menu"/>.</para>
+ </listitem>
+ </itemizedlist>
+
+ <figure xml:id="bsdinstall-boot-options-menu">
+ <title>Menu de Opções de Inicialização do FreeBSD</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="bsdinstall/bsdinstall-boot-options-menu"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>O menu de opções de inicialização é dividido em duas seções. A primeira seção pode ser usada para retornar ao menu de inicialização principal ou para redefinir quaisquer opções que tenham sido alteradas de volta para seus valores padrões.</para>
+
+ <para>A próxima seção é usada para alternar as opções disponíveis para <literal>On</literal> ou <literal>Off</literal> pressionando o número ou caractere realçado da opção. O sistema sempre inicializará usando as configurações dessas opções até serem modificadas. Várias opções podem ser alternadas usando este menu:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para><literal>ACPI Support</literal>: Se o sistema travar durante a inicialização, tente alternar essa opção para <literal>Off</literal>.</para>
+ </listitem>
+
+ <listitem>
+ <para><literal>Safe Mode</literal>: Se o sistema ainda travar durante a inicialização, mesmo com <literal>Suporte a ACPI</literal> definido como <literal>Off</literal>, tente definir esta opção como <literal>On</literal>.</para>
+ </listitem>
+
+ <listitem>
+ <para><literal>Single User</literal>: Alterne esta opção para <literal>On</literal> para corrigir uma instalação existente do FreeBSD como descrito em <xref linkend="boot-singleuser"/>. Depois que o problema for corrigido, configure-o de volta para <literal>Off</literal>.</para>
+ </listitem>
+
+ <listitem>
+ <para><literal>Verbose</literal>: Alterne esta opção para <literal>On</literal> para ver mensagens mais detalhadas durante o processo de inicialização. Isso pode ser útil ao solucionar problemas de hardware.</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>Depois de fazer as seleções necessárias, pressione <keycap>1</keycap> ou <keycap>Backspace</keycap> para retornar ao menu de boot principal, então pressione <keycap>Enter</keycap> para continuar a inicialização no FreeBSD. Uma série de mensagens de inicialização irão aparecer enquanto o FreeBSD executa seus testes de dispositivos de hardware e carrega o programa de instalação. Quando a inicialização estiver concluída, o menu de boas-vindas mostrado em <xref linkend="bsdinstall-choose-mode"/> será exibido.</para>
+
+ <figure xml:id="bsdinstall-choose-mode">
+ <title>Menu de boas-vindas</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="bsdinstall/bsdinstall-choose-mode"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Pressione <keycap>Enter</keycap> para selecionar o padrão de <guibutton>[Install]</guibutton> para entrar no instalador. O restante deste capítulo descreve como usar este instalador. Caso contrário, use as setas para a direita ou para a esquerda ou a letra colorida para selecionar o item de menu desejado. A opção <guibutton>[Shell]</guibutton> pode ser usada para acessar um shell do FreeBSD, a fim de usar utilitários de linha de comando para preparar os discos antes da instalação. A opção <guibutton>[Live CD]</guibutton> pode ser usada para testar o FreeBSD antes de instalá-lo. A versão live é descrita em <xref linkend="using-live-cd"/>.</para>
+
+ <tip>
+ <para>Para revisar as mensagens de inicialização, incluindo o probe do dispositivo de hardware, pressione a tecla <keycap>S</keycap> maiúscula ou minúscula e, em seguida, <keycap>Enter</keycap> para acessar um shell. No prompt do shell, digite <command>more /var/run/dmesg.boot</command> e use a barra de espaço para rolar pelas mensagens. Quando terminar, digite <command>exit</command> para retornar ao menu de boas-vindas.</para>
+ </tip>
+ </sect2>
+ </sect1>
+
+ <sect1 xml:id="using-bsdinstall">
+ <title>Usando o <application>bsdinstall</application></title>
+
+ <para>Esta seção mostra a ordem dos menus do <application>bsdinstall</application> e o tipo de informação que será solicitada antes que o sistema seja instalado. Use as teclas de seta para realçar uma opção de menu e, em seguida, a barra de <keycap>Espaço</keycap> para selecionar ou desmarcar esse item de menu. Quando terminar, pressione <keycap>Enter</keycap> para salvar a seleção e passar para a próxima tela.</para>
+
+ <sect2 xml:id="bsdinstall-keymap">
+ <title>Selecionando o menu do Keymap (Mapa de teclas)</title>
+
+ <para>Dependendo do console do sistema que está sendo usado, o <application>bsdinstall</application> pode inicialmente exibir o menu mostrado em <xref linkend="bsdinstall-keymap-select-default"/>.</para>
+
+ <figure xml:id="bsdinstall-keymap-select-default">
+ <title>Seleção de Keymap</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="bsdinstall/bsdinstall-keymap-select-default"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Para configurar o layout do teclado, pressione <keycap>Enter</keycap> com <guibutton>[YES]</guibutton> selecionado, o que exibirá o menu mostrado em <xref linkend="bsdinstall-config-keymap"/>. Para usar o layout padrão, use a tecla de seta para selecionar <guibutton>[NO]</guibutton> e pressione <keycap>Enter</keycap> para pular esta tela de menu.</para>
+
+ <figure xml:id="bsdinstall-config-keymap">
+ <title>Menu de seleção do teclado</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="bsdinstall/bsdinstall-config-keymap"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Ao configurar o layout do teclado, use as setas para cima e para baixo para selecionar o mapa de teclas que mais representa o mapeamento do teclado conectado ao sistema. Pressione <keycap>Enter</keycap> para salvar a seleção.</para>
+
+ <note>
+ <para>Pressionar <keycap>Esc</keycap> sairá deste menu e usará o mapa de teclas padrão. Se a escolha do mapa de teclado não for clara, a opção <guimenuitem>United States of America ISO-8859-1</guimenuitem> é uma opção segura.</para>
+ </note>
+
+ <para>No FreeBSD 10.0-RELEASE e posteriormente, este menu foi aprimorado. A seleção completa de mapas de teclado é mostrada, com o padrão pré-selecionado. Além disso, ao selecionar um mapa de teclado diferente, é exibido um diálogo que permite ao usuário experimentar o mapa de teclas e garantir que esteja correto antes de continuar.</para>
+
+ <figure xml:id="bsdinstall-keymap-10">
+ <title>Menu de keymaps aprimorado</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="bsdinstall/bsdinstall-keymap-10"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ </sect2>
+
+ <sect2 xml:id="bsdinstall-hostname">
+ <title>Configurando o nome do host</title>
+
+ <para>O próximo menu do <application>bsdinstall</application> é usado para definir o nome do host para o sistema recém-instalado.</para>
+
+ <figure xml:id="bsdinstall-config-hostname">
+ <title>Configurando o nome do host</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="bsdinstall/bsdinstall-config-hostname"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Digite um nome de host exclusivo para a rede. Ele deve ser um nome de host totalmente qualificado, como <systemitem class="fqdomainname">machine3.example.com</systemitem>.</para>
+ </sect2>
+
+ <sect2 xml:id="bsdinstall-components">
+ <title>Selecionando Componentes para Instalar</title>
+
+ <para>Em seguida, o <application>bsdinstall</application> solicitará a seleção de componentes opcionais para instalação.</para>
+
+ <figure xml:id="bsdinstall-config-components">
+ <title>Selecionando Componentes para Instalar</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="bsdinstall/bsdinstall-config-components"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Decidir quais componentes instalar dependerá em grande parte do uso pretendido para o sistema e da quantidade de espaço em disco disponível. O kernel do FreeBSD e o userland, coletivamente conhecidos como o <firstterm>sistema base</firstterm>, são sempre instalados. Dependendo da arquitetura, alguns desses componentes podem não aparecer:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para><literal>doc</literal> - Documentação adicional, principalmente de interesse histórico, para instalar em <filename>/usr/share/doc</filename>. A documentação fornecida pelo Projeto de Documentação do FreeBSD pode ser instalada posteriormente usando as instruções em <xref linkend="updating-upgrading-documentation"/>.</para>
+ </listitem>
+
+ <listitem>
+ <para><literal>games</literal> - Vários jogos tradicionais do <acronym>BSD</acronym>, incluindo <application>fortune</application>, <application>rot13</application> e outros.</para>
+ </listitem>
+
+ <listitem>
+ <para><literal>lib32</literal> - Bibliotecas de compatibilidade para executar aplicativos de 32 bits em uma versão de 64 bits do FreeBSD.</para>
+ </listitem>
+
+ <listitem>
+ <para><literal>ports</literal> - A Coleção de Ports do FreeBSD é uma coleção de arquivos que automatiza o download, a compilação e a instalação de pacotes de software de terceiros. <xref linkend="ports"/> discute como usar a coleção de ports.</para>
+
+ <warning>
+ <para>O programa de instalação não verifica o espaço em disco adequado. Selecione esta opção apenas se houver espaço suficiente no disco rígido. A Coleção de Ports do FreeBSD ocupa cerca de 500 MB de espaço em disco.</para>
+ </warning>
+ </listitem>
+
+ <listitem>
+ <para><literal>src</literal> - O código-fonte completo do FreeBSD para o kernel e para o userland. Embora não seja necessário para a maioria dos aplicativos, pode ser necessário para compilar drivers de dispositivo, módulos do kernel ou alguns aplicativos da Coleção de Ports. Ele também é usado para desenvolver o próprio FreeBSD. A árvore de código-fonte completa requer 1 GB de espaço em disco e a recompilação de todo o sistema FreeBSD requer 5 GB adicionais de espaço.</para>
+ </listitem>
+ </itemizedlist>
+ </sect2>
+
+ <sect2 xml:id="bsdinstall-netinstall">
+ <title>Instalando a partir da rede</title>
+
+ <para>O menu mostrado em <xref linkend="bsdinstall-netinstall-notify"/> só aparece ao instalar a partir de um <acronym>CD</acronym> <filename>-bootonly.iso</filename> pois esta mídia de instalação não possui uma cópias dos arquivos de instalação. Como os arquivos de instalação devem ser recuperados através de uma conexão de rede, esse menu indica que a interface de rede deve ser configurada primeiro.</para>
+
+ <figure xml:id="bsdinstall-netinstall-notify">
+ <title>Instalando a partir da rede</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="bsdinstall/bsdinstall-netinstall-files"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Para configurar a conexão de rede, pressione <keycap>Enter</keycap> e siga as instruções em <xref linkend="bsdinstall-config-network-dev"/>. Quando a interface estiver configurada, selecione um site espelho localizado na mesma região do mundo que o computador no qual o FreeBSD está sendo instalado. Os arquivos podem ser recuperados mais rapidamente quando o espelho está próximo ao computador de destino, reduzindo o tempo de instalação.</para>
+
+ <figure xml:id="bsdinstall-netinstall-mirror">
+ <title>Escolhendo um Site Espelho</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="bsdinstall/bsdinstall-netinstall-mirrorselect"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>A instalação continuará como se os arquivos de instalação estivessem localizados na mídia de instalação local.</para>
+ </sect2>
+ </sect1>
+
+ <sect1 xml:id="bsdinstall-partitioning">
+ <title>Alocando o espaço em disco</title>
+
+ <para>O próximo menu é usado para determinar o método de alocação de espaço em disco. As opções disponíveis no menu dependem da versão do FreeBSD sendo instalada.</para>
+
+ <figure xml:id="bsdinstall-part-guided-manual">
+ <title>Opções de particionamento no FreeBSD 9.x</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="bsdinstall/bsdinstall-part-guided-manual"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <figure xml:id="bsdinstall-zfs-partmenu">
+ <title>Opções de particionamento no FreeBSD 10.x e superior</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="bsdinstall/bsdinstall-zfs-partmenu"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>O particionamento <literal>Guided</literal> configura automaticamente as partições de disco, o particionamento <literal>Manual</literal> permite que usuários avançados criem partições personalizadas a partir das opções de menu, e o <literal>Shell</literal> abre um prompt de shell onde usuários avançados podem criar partições personalizadas usando utilitários de linha de comando como <citerefentry><refentrytitle>gpart</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>fdisk</refentrytitle><manvolnum>8</manvolnum></citerefentry>, e <citerefentry><refentrytitle>bsdlabel</refentrytitle><manvolnum>8</manvolnum></citerefentry>. O particionamento do <literal>ZFS</literal>, disponível somente no FreeBSD 10 e versões posteriores, cria um sistema root-on-ZFS opcionalmente criptografado com suporte para <firstterm>ambientes de inicialização</firstterm>.</para>
+
+ <para>Esta seção descreve o que considerar ao definir as partições de disco. Em seguida, demonstra como usar os diferentes métodos de particionamento.</para>
+
+ <sect2 xml:id="configtuning-initial">
+ <title>Criando o layout da partição</title>
+
+ <indexterm><primary>partition layout</primary></indexterm>
+ <indexterm><primary><filename>/etc</filename></primary></indexterm>
+ <indexterm><primary><filename>/var</filename></primary></indexterm>
+ <indexterm><primary><filename>/usr</filename></primary></indexterm>
+
+ <para>Ao criar os sistemas de arquivos, lembre-se de que os discos rígidos transferem dados mais rapidamente das trilhas externas para as internas. Assim, sistemas de arquivos menores e mais acessados ​​devem estar mais próximos da parte externa da unidade, enquanto partições maiores, como <filename>/usr</filename>, devem ser colocadas em direção às partes internas do disco. É uma boa idéia criar partições em uma ordem similar a: <filename>/</filename>, swap, <filename>/var</filename> e <filename>/usr</filename>.</para>
+
+ <para>O tamanho da partição <filename>/var</filename> reflete o uso pretendido para a máquina. Esta partição é usada para armazenar caixas de correio, arquivos de log e spools de impressora. Caixas de correio e arquivos de log podem crescer até tamanhos inesperados, dependendo do número de usuários e de quanto tempo os arquivos de log são mantidos. Na média, a maioria dos usuários raramente precisa de mais do que cerca de um gigabyte de espaço livre em disco no <filename>/var</filename>.</para>
+
+ <note>
+ <para>Às vezes, é necessário muito espaço em disco no <filename>/var/tmp</filename>. Quando um novo software é instalado, as ferramentas de empacotamento extraem uma cópia temporária dos pacotes no <filename>/var/tmp</filename>. Grandes pacotes de software, como o <application>Firefox</application>, o <application>Apache OpenOffice</application> ou <application>LibreOffice</application> podem ser difíceis de instalar se não houver espaço em disco suficiente no <filename>/var/tmp</filename>.</para>
+ </note>
+
+ <para>A partição <filename>/usr</filename> contém muitos dos arquivos que suportam o sistema, incluindo o a Coleção de Ports do FreeBSD e o código-fonte do sistema. Pelo menos 2 gigabytes de espaço são recomendados para esta partição.</para>
+
+ <para>Ao selecionar os tamanhos das partições, lembre-se dos requisitos de espaço. Ficar sem espaço em uma partição enquanto mal usa outra pode ser um aborrecimento.</para>
+
+ <indexterm><primary>swap sizing</primary></indexterm>
+ <indexterm><primary>swap partition</primary></indexterm>
+
+ <para>Como regra geral, a partição swap deve ter o dobro do tamanho da memória física (<acronym>RAM</acronym>). Sistemas com pouca memória <acronym>RAM</acronym> podem ter um melhor desempenho com mais swap. Configurar um swap pequeno pode levar a ineficiências no código de verificação de página da <acronym>VM</acronym> e pode criar problemas mais tarde, se mais memória for adicionada.</para>
+
+ <para>Em sistemas maiores com vários discos <acronym>SCSI</acronym> ou vários discos <acronym>IDE</acronym> operando em diferentes controladoras, é recomendável que uma area de swap seja configurada em cada unidade, até quatro unidades. As partições de swap devem ter aproximadamente o mesmo tamanho. O kernel pode manipular tamanhos arbitrários, mas as estruturas internas de dados podem ser dimensionadas para 4 vezes a maior partição de swap. Manter as partições de swap próximas do mesmo tamanho permitirá que o kernel otimize o espaço de swap entre discos. Partições grandes de swap são uma coisa boa, mesmo se o swap não for muito usado. Pode ser mais fácil de se recuperar de um programa devorador de memória antes de ser forçado a reinicializar.</para>
+
+ <para>Ao particionar adequadamente um sistema, a fragmentação introduzida nas partições menores e intensas em gravação não vai prejudicar as partições que são maioritariamente de leitura. Manter as partições com maior carga de gravação mais próximas da borda do disco aumentará o desempenho de <acronym>I/O</acronym> nas partições onde ela é mais necessária. Embora o desempenho de <acronym>I/O</acronym> nas partições maiores possa ser necessário, mudá-las mais para a borda do disco não levará a uma melhoria de desempenho significativa em relação à movimentação de <filename>/var</filename> para a borda.</para>
+ </sect2>
+
+ <sect2 xml:id="bsdinstall-part-guided">
+ <title>Particionamento Guiado</title>
+
+ <para>Quando este método é selecionado, um menu exibirá o(s) disco(s) disponível(s). Se vários discos estiverem conectados, escolha aquele em que o FreeBSD deve ser instalado.</para>
+
+ <figure xml:id="bsdinstall-part-guided-disk">
+ <title>Selecionando a partir de vários discos</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="bsdinstall/bsdinstall-part-guided-disk"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Depois que o disco é selecionado, o próximo menu solicita a instalação no disco inteiro ou a criação de uma partição usando o espaço livre. Se <guibutton>[ Entire Disk ]</guibutton> for escolhido, um layout de partição geral que preenche todo o disco é criado automaticamente. Selecionar <guibutton> [Partition] </guibutton> cria um layout de partição do espaço não utilizado no disco.</para>
+
+ <figure xml:id="bsdinstall-part-entire-part">
+ <title>Selecionando todo o disco ou partição</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="bsdinstall/bsdinstall-part-entire-part"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Depois que o layout da partição tiver sido criado, revise-o para garantir que ele atenda às necessidades da instalação. Selecionar <guibutton>[ Revert ]</guibutton> redefinirá as partições para seus valores originais e pressionar <guibutton>[Auto]</guibutton> recriará as partições automáticas do FreeBSD. As partições também podem ser criadas, modificadas ou excluídas manualmente. Quando o particionamento estiver correto, selecione <guibutton>[Finish]</guibutton> para continuar com a instalação.</para>
+
+ <figure xml:id="bsdinstall-part-review">
+ <title>Revise as partições criadas</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="bsdinstall/bsdinstall-part-review"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </sect2>
+
+ <sect2 xml:id="bsdinstall-part-manual">
+ <title>Particionamento Manual</title>
+
+ <para>Selecionar este método abre o editor de partições:</para>
+
+ <figure xml:id="bsdinstall-part-manual-create">
+ <title>Criar partições manualmente </title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="bsdinstall/bsdinstall-part-manual-create"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Realce a unidade de instalação (<filename>ada0</filename> neste exemplo) e selecione <guibutton>[ Create ]</guibutton> para exibir um menu dos esquemas de partição disponíveis:</para>
+
+ <figure xml:id="bsdinstall-part-manual-partscheme">
+ <title>Criar partições manualmente </title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="bsdinstall/bsdinstall-part-manual-partscheme"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>O <acronym>GPT</acronym> é geralmente a opção mais apropriada para computadores amd64. Computadores mais antigos que não são compatíveis com o <acronym>GPT</acronym> devem usar o <acronym>MBR</acronym>. Os outros esquemas de partição são geralmente usados ​​para computadores incomuns ou antigos.</para>
+
+ <table frame="none" rowsep="1" pgwide="1">
+ <title>Esquemas de Particionamento</title>
+
+ <tgroup cols="2" align="left">
+ <thead>
+ <row>
+ <entry align="left">Abreviação</entry>
+ <entry align="left">Descrição</entry>
+ </row>
+ </thead>
+
+ <tbody>
+ <row>
+ <entry>APM</entry>
+ <entry>Apple Partition Map, usado no <trademark class="registered">PowerPC</trademark>.</entry>
+ </row>
+
+ <row>
+ <entry>BSD</entry>
+ <entry>O Label <acronym>BSD</acronym> sem um <acronym>MBR</acronym>, às vezes chamado de <firstterm>modo perigosamente dedicado</firstterm> porque os utilitários de discos não <acronym>BSD</acronym> podem não reconhecê-lo.</entry>
+ </row>
+
+ <row>
+ <entry>GPT</entry>
+ <entry>Tabela de Partição GUID (<link xlink:href="http://en.wikipedia.org/wiki/GUID_Partition_Table"> http://en.wikipedia.org/wiki/GUID_Partition_Table </link>).</entry>
+ </row>
+
+ <row>
+ <entry>MBR</entry>
+ <entry>Registro mestre de inicialização ou MBR (<link xlink:href="http://en.wikipedia.org/wiki/Master_boot_record"> http://en.wikipedia.org/wiki/Master_boot_record </link>).</entry>
+ </row>
+
+ <row>
+ <entry>PC98</entry>
+ <entry>Variante do <acronym>MBR</acronym> utilizada pelos computadores NEC PC-98 (<link xlink:href="http://en.wikipedia.org/wiki/Pc9801">http://en.wikipedia.org/wiki /Pc9801</link>).</entry>
+ </row>
+
+ <row>
+ <entry>VTOC8</entry>
+ <entry>Tabela de Volume do Conteúdo usado pelos computadores Sun SPARC64 e UltraSPARC.</entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table>
+
+ <para>Depois que o esquema de particionamento for selecionado e criado, selecione <guibutton>[Create]</guibutton> novamente para criar as partições.</para>
+
+ <figure xml:id="bsdinstall-part-manual-addpart">
+ <title>Criar partições manualmente </title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="bsdinstall/bsdinstall-part-manual-addpart"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Uma instalação padrão do FreeBSD <acronym>GPT</acronym> usa pelo menos três partições:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para><literal>freebsd-boot</literal> - Mantém o código de inicialização do FreeBSD.</para>
+ </listitem>
+
+ <listitem>
+ <para><literal>freebsd-ufs</literal> - Um sistema de arquivos <acronym>UFS</acronym> do FreeBSD.</para>
+ </listitem>
+
+ <listitem>
+ <para><literal>freebsd-swap</literal> - Espaço de swap do FreeBSD.</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>Outro tipo de partição que vale a pena mencionar é a <literal>freebsd-zfs</literal>, usado para partições que conterão um sistema de arquivos FreeBSD <acronym>ZFS</acronym> (<xref linkend="zfs"/>). Consulte <citerefentry><refentrytitle>gpart</refentrytitle><manvolnum>8</manvolnum></citerefentry> para obter descrições dos tipos de partição <acronym>GPT</acronym> disponíveis.</para>
+
+ <para>Várias partições do sistema de arquivos podem ser criadas e algumas pessoas preferem um layout tradicional com partições separadas para <filename>/</filename>, <filename>/var</filename>, <filename>/tmp</filename> e <filename>/usr</filename>. Veja <xref linkend="bsdinstall-part-manual-splitfs"/> para um exemplo.</para>
+
+ <para>O <literal>tamanho</literal> pode ser digitado com abreviações comuns: <emphasis>K</emphasis> para kilobytes, <emphasis>M</emphasis> para megabytes, ou <emphasis>G</emphasis> para gigabytes.</para>
+
+ <tip>
+ <para>O alinhamento adequado do setor fornece o melhor desempenho, e ao definir os tamanhos das partições em múltiplos de 4K bytes ajuda a garantir o alinhamento em discos com setores de 512 ou 4 bytes. Geralmente, usar tamanhos de partições que são múltiplos de 1M ou 1G é a maneira mais fácil de garantir que cada partição comece em um múltiplo par de 4K. Há uma exceção: a partição <emphasis>freebsd-boot</emphasis> não deve ser maior que 512K devido às limitações atuais do código de inicialização.</para>
+ </tip>
+
+ <para>Um <literal>Mountpoint</literal> é necessário se a partição contiver um sistema de arquivos. Se apenas uma única partição <acronym>UFS</acronym> for criada, o ponto de montagem deve ser <filename>/</filename>.</para>
+
+ <para>O <literal>Label</literal> é um nome pelo qual a partição será conhecida. Nomes ou números de unidades podem mudar se a unidade estiver conectada a um controlador ou porta diferente, mas a etiqueta da partição não muda. Referir-se a rótulos em vez de nomes de unidade e números de partição em arquivos como o <filename>/etc/fstab</filename> torna o sistema mais tolerante a alterações de hardware. Os rótulos <acronym>GPT</acronym> aparecem em <filename>/dev/gpt/</filename> quando um disco é anexado. Outros esquemas de particionamento têm diferentes capacidades de rótulos e seus rótulos aparecem em diferentes diretórios no <filename>/dev/</filename>.</para>
+
+ <tip>
+ <para>Use um rótulo único e exclusivo para cada uma das partições para evitar conflitos de rótulos idênticos. Algumas letras do nome, uso ou localização do computador podem ser adicionadas ao rótulo. Por exemplo, use <literal>labroot</literal> ou <literal>rootfslab</literal> para a partição raiz <acronym>UFS</acronym> no computador chamado <literal>lab</literal>.</para>
+ </tip>
+
+ <example xml:id="bsdinstall-part-manual-splitfs">
+ <title>Criando partições tradicionais para um sistema de arquivos dividido</title>
+
+ <para>Para um layout de partição tradicional em que os diretórios <filename>/</filename>, <filename>/var</filename>, <filename>/tmp</filename> e <filename>/usr</filename> são sistemas de arquivos separados em suas próprias partições, crie um esquema de particionamento <acronym>GPT</acronym> e crie as partições conforme mostrado. Os tamanhos de partição mostrados são típicos para um disco de destino de 20G. Se houver mais espaço disponível no disco de destino, partições maiores de swap ou <filename>/var</filename> podem ser úteis. Os rótulos mostrados aqui são prefixados com <literal>ex</literal> para <quote>exemplo</quote>, mas os leitores devem usar outros valores de rótulo exclusivos, conforme descrito acima.</para>
+
+ <para>Por padrão, o <filename>gptboot</filename> do FreeBSD espera que a primeira partição <acronym>UFS</acronym> seja a partição <filename>/</filename>.</para>
+
+ <informaltable frame="none">
+ <tgroup cols="4">
+ <thead>
+ <row>
+ <entry>Tipo de Partição</entry>
+ <entry>Tamanho</entry>
+ <entry>Ponto de montagem</entry>
+ <entry>Rótulo</entry>
+ </row>
+ </thead>
+
+ <tbody>
+ <row>
+ <entry><literal>freebsd-boot</literal></entry>
+ <entry><literal>512K</literal></entry>
+ </row>
+
+ <row>
+ <entry><literal>freebsd-ufs</literal></entry>
+ <entry><literal>2G</literal></entry>
+ <entry><filename>/</filename></entry>
+ <entry><literal>exrootfs</literal></entry>
+ </row>
+
+ <row>
+ <entry><literal>freebsd-swap</literal></entry>
+ <entry><literal>4G</literal></entry>
+ <entry/>
+ <entry><literal>exswap</literal></entry>
+ </row>
+
+ <row>
+ <entry><literal>freebsd-ufs</literal></entry>
+ <entry><literal>2G</literal></entry>
+ <entry><filename>/var</filename></entry>
+ <entry><literal>exvarfs</literal></entry>
+ </row>
+
+ <row>
+ <entry><literal>freebsd-ufs</literal></entry>
+ <entry><literal>1G</literal></entry>
+ <entry><filename>/tmp</filename></entry>
+ <entry><literal>extmpfs</literal></entry>
+ </row>
+
+ <row>
+ <entry><literal>freebsd-ufs</literal></entry>
+ <entry>aceite o padrão (restante do disco)</entry>
+ <entry><filename>/usr</filename></entry>
+ <entry><literal>exusrfs</literal></entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </informaltable>
+ </example>
+
+ <para>Depois que as partições personalizadas forem criadas, selecione <guibutton>[Finish]</guibutton> para continuar com a instalação.</para>
+ </sect2>
+
+ <sect2 xml:id="bsdinstall-part-zfs">
+ <title>Particionamento Automático Root-on-ZFS</title>
+
+ <para>O suporte para criação automática de instalações root-on-ZFS foi adicionado no FreeBSD 10.0-RELEASE. Este modo de particionamento só funciona com discos inteiros e apaga o conteúdo de todo o disco. O instalador criará automaticamente partições alinhadas a limites de 4k e forçará o <acronym>ZFS</acronym> a usar setores 4k. Isso é seguro mesmo com discos de setor de 512 bytes e tem o benefício adicional de garantir que os pools criados em discos de 512 bytes possam ter discos de setor de 4k adicionados no futuro, como espaço de armazenamento adicional ou como substitutos para discos com falha. O instalador também pode opcionalmente empregar a criptografia de disco <acronym>GELI</acronym> conforme descrito em <xref linkend="disks-encrypting-geli"/>. Se a criptografia estiver ativada, um conjunto de inicialização não criptografado de 2 GB contendo o diretório <filename>/boot</filename> será criado. Ele contém o kernel e outros arquivos necessários para inicializar o sistema. Uma partição swap de um tamanho selecionável pelo usuário também é criada, e todo o espaço restante é usado para o pool do <acronym>ZFS</acronym>.</para>
+
+ <para>O menu de configuração principal do <acronym>ZFS</acronym> oferece várias opções para controlar a criação do pool.</para>
+
+ <figure xml:id="bsdinstall-zfs-menu">
+ <title>Menu de particionamento do <acronym>ZFS</acronym></title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="bsdinstall/bsdinstall-zfs-menu"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Selecione <keycap>T</keycap> para configurar o <literal>Pool Type</literal> e o(s) disco(s) que constituirão o pool. O instalador automático do <acronym>ZFS</acronym> atualmente suporta apenas a criação de um único vdev de nível superior, exceto no modo de stripe. Para criar conjuntos mais complexos, use as instruções em <xref linkend="bsdinstall-part-shell"/> para criar o pool. O instalador suporta a criação de vários tipos de conjuntos, incluindo stripe (não recomendada, sem redundância), mirror (melhor desempenho, menos espaço utilizável) e RAID-Z 1, 2 e 3 (com capacidade para suportar a falha simultânea de 1, 2 e 3 discos, respectivamente). Ao selecionar o tipo de pool, uma dica é exibida na parte inferior da tela com conselhos sobre o número de discos necessários e, no caso de RAID-Z, o número ideal de discos para cada configuração.</para>
+
+ <figure xml:id="bsdinstall-zfs-vdev_type">
+ <title>Tipo de pool <acronym>ZFS</acronym></title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="bsdinstall/bsdinstall-zfs-vdev_type"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Quando um <literal>Tipo de pool</literal> tiver sido selecionado, uma lista de discos disponíveis será exibida e o usuário será solicitado a selecionar um ou mais discos para compor o pool. A configuração é validada para garantir que discos suficientes sejam selecionados. Caso contrário, selecione <guibutton>&lt;Change Selection&gt;</guibutton> para retornar à lista de discos ou <guibutton>&lt;Cancel&gt;</guibutton> para alterar o tipo de conjunto.</para>
+
+ <figure xml:id="bsdinstall-zfs-disk_select">
+ <title>Seleção de disco</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="bsdinstall/bsdinstall-zfs-disk_select"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <figure xml:id="bsdinstall-zfs-vdev_invalid">
+ <title>Seleção inválida</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="bsdinstall/bsdinstall-zfs-vdev_invalid"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Se um ou mais discos estiverem faltando na lista, ou se os discos foram anexados depois que o instalador foi iniciado, selecione <guibutton>- Rescan Devices</guibutton> para preencher novamente a lista de discos disponíveis. Para evitar apagar acidentalmente o disco errado, o menu <guibutton>- Disk Info</guibutton> pode ser usado para inspecionar cada disco, incluindo sua tabela de partição e várias outras informações, como o número do modelo do dispositivo e o número de série, se disponíveis.</para>
+
+ <figure xml:id="bsdinstall-zfs-disk_info">
+ <title>Analisando um disco</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="bsdinstall/bsdinstall-zfs-disk_info"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>O principal menu de configuração do <acronym>ZFS</acronym> também permite que o usuário insira um nome de pool, desabilite a opção que força setores 4k, habilite ou desabilite a criptografia, alterne entre os tipos de tabela de partições<acronym>GPT</acronym> (recomendado) ou <acronym>MBR</acronym> e selecione a quantidade de espaço de swap. Quando todas as opções tiverem sido definidas para os valores desejados, selecione o <guibutton>&gt;&gt;&gt; Install</guibutton> no topo do menu.</para>
+
+ <para>Se a criptografia de disco <acronym>GELI</acronym> foi ativada, o instalador solicitará duas vezes que a frase secreta seja usada para criptografar os discos.</para>
+
+ <figure xml:id="bsdinstall-zfs-geli_password">
+ <title>Senha de criptografia de disco</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="bsdinstall/bsdinstall-zfs-geli_password"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>O instalador oferece uma última chance de cancelar antes que o conteúdo das unidades selecionadas seja destruído para criar o pool do <acronym>ZFS</acronym>.</para>
+
+ <figure xml:id="bsdinstall-zfs-warning">
+ <title>Última chance</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="bsdinstall/bsdinstall-zfs-warning"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>A instalação prossegue normalmente.</para>
+
+ </sect2>
+
+ <sect2 xml:id="bsdinstall-part-shell">
+ <title>Particionamento do modo shell</title>
+
+ <para>Ao criar instalações avançadas, os menus de particionamento do <application>bsdinstall</application> podem não fornecer o nível de flexibilidade necessário. Usuários avançados podem selecionar a opção <guibutton>Shell</guibutton> no menu de particionamento para particionar manualmente as unidades, criar o(s) sistema(s) de arquivos, preencher o <filename>/tmp/bsdinstall_etc/fstab</filename> e montar os sistemas de arquivos em <filename>/mnt</filename>. Feito isso, digite <command>exit</command> para retornar ao <application>bsdinstall</application> e continue com a instalação.</para>
+ </sect2>
+ </sect1>
+
+ <sect1 xml:id="bsdinstall-final-warning">
+ <title>Comprometendo-se com a instalação</title>
+
+ <para>Depois que os discos são configurados, o próximo menu fornece a última chance de fazer alterações antes que os discos rígidos selecionados sejam formatados. Se for necessário fazer alterações, selecione <guibutton>[Back]</guibutton> para retornar ao menu principal de particionamento. <guibutton>[ Revert &amp; Exit ]</guibutton> sairá do instalador sem fazer alterações no disco rígido.</para>
+
+ <figure xml:id="bsdinstall-final-confirmation">
+ <title>Confirmação final</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="bsdinstall/bsdinstall-final-confirmation"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Para iniciar a instalação atual, selecione <guibutton>[Commit]</guibutton> e pressione <keycap>Enter</keycap>.</para>
+
+ <para>O tempo de instalação irá variar dependendo das distribuições escolhidas, mídia de instalação e velocidade do computador. Uma série de mensagens indicará o progresso.</para>
+
+ <para>Primeiro, o instalador formata o(s) disco(s) selecionado(s) e inicializa as partições. Em seguida, no caso de uma mídia de bootonly, ele faz o download dos componentes selecionados:</para>
+
+ <figure xml:id="bsdinstall-distfile-fetching">
+ <title>Fazendo o download dos arquivos de distribuição</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="bsdinstall/bsdinstall-distfile-fetching"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Em seguida, a integridade dos arquivos de distribuição é verificada para garantir que eles não tenham sido corrompidos durante o download ou mal interpretados da mídia de instalação:</para>
+
+ <figure xml:id="bsdinstall-distfile-verify">
+ <title>Verificando arquivos de distribuição</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="bsdinstall/bsdinstall-distfile-verifying"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Finalmente, os arquivos de distribuição verificados são extraídos para o disco:</para>
+
+ <figure xml:id="bsdinstall-distfile-extract">
+ <title>Extraindo arquivos de distribuição</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="bsdinstall/bsdinstall-distfile-extracting"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Depois que todos os arquivos de distribuição solicitados tiverem sido extraídos, o <application>bsdinstall</application> exibirá a primeira tela de configuração pós-instalação. As opções de configuração pós-instalação disponíveis estão descritas na próxima seção.</para>
+ </sect1>
+
+ <sect1 xml:id="bsdinstall-post">
+ <title>Pós-instalação</title>
+
+ <para>Uma vez instalado o FreeBSD, o <application>bsdinstall</application> solicitará a configuração de várias opções antes de inicializar o sistema recém-instalado. Esta seção descreve essas opções de configuração.</para>
+
+ <tip>
+ <para>Depois que o sistema inicializa, o <command>bsdconfig</command> fornece um método orientado por menus para configurar o sistema usando essas e outras opções.</para>
+ </tip>
+
+ <sect2 xml:id="bsdinstall-post-root">
+ <title>Configurando a senha do <systemitem class="username"> root</systemitem>.</title>
+
+ <para>Primeiro, a senha do <systemitem class="username">root</systemitem> deve ser definida. Ao digitar a senha, os caracteres digitados não são exibidos na tela. Depois que a senha for digitada, ela deve ser digitada novamente. Isso ajuda a evitar erros de digitação.</para>
+
+ <figure xml:id="bsdinstall-post-set-root-passwd">
+ <title>Configurando a senha do <systemitem class="username"> root</systemitem>.</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="bsdinstall/bsdinstall-post-root-passwd"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </sect2>
+
+ <sect2 xml:id="bsdinstall-config-network-dev">
+ <title>Configurando as Interfaces de Rede</title>
+
+ <para>Em seguida, é mostrada uma lista das interfaces de rede encontradas no computador. Selecione a interface para configurar.</para>
+
+ <note>
+ <para>Os menus de configuração de rede serão ignorados se a rede tiver sido previamente configurada como parte de uma instalação <emphasis>bootonly</emphasis>.</para>
+ </note>
+
+ <figure xml:id="bsdinstall-configure-net-interface">
+ <title>Escolha uma interface de rede</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="bsdinstall/bsdinstall-configure-network-interface"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Se uma interface Ethernet for selecionada, o instalador irá pular para o menu mostrado em <xref linkend="bsdinstall-configure-net-ipv4"/>. Se uma interface de rede sem fio for escolhida, o sistema procurará pontos de acesso sem fio:</para>
+
+ <figure xml:id="bsdinstall-wireless-scan">
+ <title>Buscando por pontos de acesso sem fio</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="bsdinstall/bsdinstall-configure-wireless-scan"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>As redes sem fio são identificadas por um identificador de conjunto de serviços (<acronym>SSID</acronym>), um nome curto e exclusivo dado a cada rede. Os <acronym>SSIDs</acronym> encontrados durante a busca serão listados, seguidos por uma descrição dos tipos de criptografia disponíveis para essa rede. Se o <acronym>SSID</acronym> desejado não aparecer na lista, selecione <guibutton>[Rescan]</guibutton> para buscar novamente. Se a rede desejada ainda não aparecer, verifique se há problemas com as conexões da antena ou tente mover o computador para mais perto do ponto de acesso. refaça a busca após cada alteração ser feita.</para>
+
+ <figure xml:id="bsdinstall-wireless-accesspoints">
+ <title>Escolhendo uma rede sem fio</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="bsdinstall/bsdinstall-configure-wireless-accesspoints"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Em seguida, insira as informações de criptografia para se conectar à rede sem fio selecionada. A encriptação <acronym>WPA2</acronym> é fortemente recomendada, pois os tipos de encriptação mais antigos, como o <acronym>WEP</acronym>, oferecem pouca segurança. Se a rede usar <acronym>WPA2</acronym>, insira a senha, também conhecida como Chave Pré-Compartilhada (<acronym>PSK</acronym>). Por motivos de segurança, os caracteres digitados na caixa de entrada são exibidos como asteriscos.</para>
+
+ <figure xml:id="bsdinstall-wireless-wpa2">
+ <title>Configuração WPA2</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="bsdinstall/bsdinstall-configure-wireless-wpa2setup"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Em seguida, escolha se um endereço <acronym>IPv4</acronym> deve ou não ser configurado na interface Ethernet ou na interface sem fio:</para>
+
+ <figure xml:id="bsdinstall-configure-net-ipv4">
+ <title>Escolha a rede <acronym>IPv4</acronym></title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="bsdinstall/bsdinstall-configure-network-interface-ipv4"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Existem dois métodos de configuração de <acronym>IPv4</acronym>. O <acronym>DHCP</acronym> configurará automaticamente a interface de rede da forma correta e deverá ser usado se a rede fornecer um servidor <acronym>DHCP</acronym>. Caso contrário, as informações de endereçamento precisam ser inseridas manualmente como em uma configuração estática.</para>
+
+ <note>
+ <para>Não insira informações de rede aleatórias, pois isso não funcionará. Se um servidor <acronym>DHCP</acronym> não estiver disponível, obtenha as informações listadas em <xref linkend="bsdinstall-collect-network-information"/> do administrador da rede ou do provedor de serviços de Internet.</para>
+ </note>
+
+ <para>Se um servidor <acronym>DHCP</acronym> estiver disponível, selecione <guibutton>[Yes]</guibutton> no próximo menu para configurar automaticamente a interface de rede. O instalador parecerá pausar por um minuto ou mais enquanto encontra o servidor <acronym>DHCP</acronym> e obtém as informações de endereçamento do sistema.</para>
+
+ <figure xml:id="bsdinstall-net-ipv4-dhcp">
+ <title>Escolha a configuração <acronym>IPv4</acronym> <acronym>DHCP</acronym></title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="bsdinstall/bsdinstall-configure-network-interface-ipv4-dhcp"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Se um servidor <acronym>DHCP</acronym> não estiver disponível, selecione <guibutton>[No]</guibutton> e insira as seguintes informações de endereçamento neste menu:</para>
+
+ <figure xml:id="bsdinstall-net-ipv4-static">
+ <title>Configuração <acronym>IPv4</acronym> estática</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="bsdinstall/bsdinstall-configure-network-interface-ipv4-static"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <itemizedlist>
+ <listitem>
+ <para><literal>Endereço IP</literal> - O endereço <acronym>IPv4</acronym> atribuído a este computador. O endereço deve ser único e não estar em uso por outro equipamento na rede local.</para>
+ </listitem>
+
+ <listitem>
+ <para><literal>Subnet Mask</literal> - A máscara de sub-rede da rede.</para>
+ </listitem>
+
+ <listitem>
+ <para><literal>Default Router</literal> - O endereço <acronym>IP</acronym> do gateway padrão da rede.</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>A próxima tela perguntará se a interface deve ser configurada para <acronym>IPv6</acronym>. Se <acronym>IPv6</acronym> estiver disponível e for desejado, escolha <guibutton>[Yes]</guibutton> para selecioná-lo.</para>
+
+ <figure xml:id="bsdinstall-net-ipv6">
+ <title>Escolha a rede IPv6</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="bsdinstall/bsdinstall-configure-network-interface-ipv6"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>O <acronym> IPv6 </acronym> também possui dois métodos de configuração. A configuração automática de endereços sem estado (<acronym>SLAAC</acronym>) solicitará automaticamente as informações de configuração corretas de um roteador local. Consulte <link xlink:href="http://tools.ietf.org/html/rfc4862">http://tools.ietf.org/html/rfc4862</link> para maiores informações. A configuração estática requer entrada manual das informações da rede.</para>
+
+ <para>Se um roteador <acronym>IPv6</acronym> estiver disponível, selecione <guibutton>[Yes]</guibutton> no próximo menu para configurar automaticamente a interface de rede. O instalador parecerá pausar por um minuto ou mais enquanto localiza o roteador e obtém as informações de endereçamento do sistema.</para>
+
+ <figure xml:id="bsdinstall-net-ipv6-slaac">
+ <title>Escolha a configuração do SLAAC do IPv6</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="bsdinstall/bsdinstall-configure-network-interface-slaac"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Se um roteador <acronym>IPv6</acronym> não estiver disponível, selecione <guibutton>[No]</guibutton> e insira as seguintes informações de endereçamento neste menu:</para>
+
+ <figure xml:id="bsdinstall-net-ipv6-static">
+ <title>Configuração Estática do IPv6</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="bsdinstall/bsdinstall-configure-network-interface-ipv6-static"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <itemizedlist>
+ <listitem>
+ <para><literal>Endereço IPv6</literal> - O endereço <acronym>IPv6</acronym> atribuído a este computador. O endereço deve ser único e não estar em uso por outro equipamento na rede local.</para>
+ </listitem>
+
+ <listitem>
+ <para><literal>Default Router</literal> - O endereço <acronym>IPv6</acronym> do gateway padrão da rede.</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>O último menu de configuração de rede é usado para configurar o resolvedor do Sistema de Nomes de Domínio (<acronym>DNS</acronym>), que converte nomes de host de e para endereços de rede. Se o <acronym>DHCP</acronym> ou <acronym>SLAAC</acronym> foi usado para autoconfigurar a interface de rede, os valores do <literal>Resolver Configuration</literal> podem já estar preenchidos. Caso contrário, insira o domínio da rede local nome no campo <literal>Search</literal>. <literal>DNS # 1</literal> e <literal>DNS # 2</literal> são os endereços <acronym>IPv4</acronym> e/ou <acronym>IPv6</acronym> dos servidores de <acronym>DNS</acronym>. Pelo menos um servidor <acronym>DNS</acronym> é necessário.</para>
+
+ <figure xml:id="bsdinstall-net-dns-config">
+ <title>Configuração do DNS</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="bsdinstall/bsdinstall-configure-network-ipv4-dns"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </sect2>
+
+ <sect2 xml:id="bsdinstall-timezone">
+ <title>Defina o fuso horário</title>
+
+ <para>O próximo menu pergunta se o relógio do sistema usa o <acronym>UTC</acronym> ou a hora local. Em caso de dúvida, selecione <guibutton>[No]</guibutton> para escolher o horário local mais usado.</para>
+
+ <figure xml:id="bsdinstall-local-utc">
+ <title>Selecione o relógio local ou UTC</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="bsdinstall/bsdinstall-set-clock-local-utc"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>A próxima série de menus é usada para determinar a hora local correta, selecionando a região geográfica, o país e o fuso horário. Definir o fuso horário permite que o sistema corrija automaticamente as alterações de horário regionais, como horário de verão, e execute outras funções relacionadas ao fuso horário corretamente.</para>
+
+ <para>O exemplo mostrado aqui é para uma máquina localizada no fuso horário do leste dos Estados Unidos. As seleções variam de acordo com a localização geográfica.</para>
+
+ <figure xml:id="bsdinstall-timezone-region">
+ <title>Selecione uma região</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="bsdinstall/bsdinstall-timezone-region"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>A região apropriada é selecionada usando as teclas de seta e depois pressionando <keycap>Enter</keycap>.</para>
+
+ <figure xml:id="bsdinstall-timezone-country">
+ <title>Selecione um pais</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="bsdinstall/bsdinstall-timezone-country"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Selecione o país apropriado usando as teclas de seta e pressione <keycap>Enter</keycap>.</para>
+
+ <figure xml:id="bsdinstall-timezone-zone">
+ <title>Selecione um fuso horário</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="bsdinstall/bsdinstall-timezone-zone"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>O fuso horário apropriado é selecionado usando as teclas de seta e pressionando <keycap>Enter</keycap>.</para>
+
+ <figure xml:id="bsdinstall-timezone-confirmation">
+ <title>Confirme o fuso horário</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="bsdinstall/bsdinstall-timezone-confirm"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Confirme se a abreviação do fuso horário está correta. Se estiver, pressione <keycap>Enter</keycap> para continuar com a configuração pós-instalação.</para>
+ </sect2>
+
+ <sect2 xml:id="bsdinstall-sysconf">
+ <title>Ativando Serviços</title>
+
+ <para>O próximo menu é usado para configurar quais serviços do sistema serão iniciados sempre que o sistema for inicializado. Todos esses serviços são opcionais. Inicie apenas os serviços necessários para o funcionamento do sistema.</para>
+
+ <figure xml:id="bsdinstall-config-serv">
+ <title>Selecionando Serviços Adicionais para Ativar</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="bsdinstall/bsdinstall-config-services"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Aqui está um resumo dos serviços que podem ser ativados neste menu:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para><literal>sshd</literal> - O daemon Secure Shell (<acronym>SSH</acronym>) é usado para acessar remotamente um sistema através de uma conexão criptografada. Ative este serviço somente se o sistema estiver disponível para logins remotos.</para>
+ </listitem>
+
+ <listitem>
+ <para><literal>moused</literal> - Ative este serviço se o mouse for usado a partir do console do sistema de linha de comando.</para>
+ </listitem>
+
+ <listitem>
+ <para><literal>ntpd</literal> - O daemon do Network Time Protocol (<acronym>NTP</acronym>) para sincronização automática do relógio. Ative este serviço se houver um servidor <trademark class="registered">Windows</trademark>, Kerberos ou <acronym>LDAP</acronym> na rede.</para>
+ </listitem>
+
+ <listitem>
+ <para><literal>powerd</literal> - Utilitário de controle de energia do sistema para controle de energia e economia de energia.</para>
+ </listitem>
+ </itemizedlist>
+ </sect2>
+
+ <sect2 xml:id="bsdinstall-crashdump">
+ <title>Habilitando Crash Dumps</title>
+
+ <para>O próximo menu é usado para configurar se os despejos de memória devem ou não ser ativados. A ativação de despejos de memória pode ser útil na depuração de problemas com o sistema, portanto, os usuários são incentivados a ativar os despejos de memória.</para>
+
+ <figure xml:id="bsdinstall-config-crashdump">
+ <title>Habilitando Crash Dumps</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="bsdinstall/bsdinstall-config-crashdump"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </sect2>
+
+ <sect2 xml:id="bsdinstall-addusers">
+ <title>Adicione usuários</title>
+
+ <para>O próximo menu pede para criar pelo menos uma conta de usuário. Recomenda-se fazer login no sistema usando uma conta de usuário em vez de utilizar diretamente o <systemitem class="username">root</systemitem>. Quando logado como <systemitem class="username">root</systemitem>, essencialmente não há limites ou proteção sobre o que pode ser feito. Fazer o login como um usuário normal é mais seguro.</para>
+
+ <para>Selecione <guibutton>[Yes]</guibutton> para adicionar novos usuários.</para>
+
+ <figure xml:id="bsdinstall-add-user1">
+ <title>Adicione contas de usuário</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="bsdinstall/bsdinstall-adduser1"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Siga os prompts e insira as informações solicitadas para a conta do usuário. O exemplo mostrado em <xref linkend="bsdinstall-add-user2"/> cria a conta de usuário <systemitem class="username">asample</systemitem>.</para>
+
+ <figure xml:id="bsdinstall-add-user2">
+ <title>Insira as informações do usuário</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="bsdinstall/bsdinstall-adduser2"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Aqui está um resumo das informações para solicitadas:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para><literal>Username</literal> - O nome que o usuário digitará para efetuar login. Uma convenção comum é usar a primeira letra do primeiro nome combinada com o sobrenome, desde que cada nome de usuário seja exclusivo para o sistema. O nome de usuário faz distinção entre maiúsculas e minúsculas e não deve conter espaços.</para>
+ </listitem>
+
+ <listitem>
+ <para><literal>Username</literal> - O nome completo do usuário. Este campo pode conter espaços e é usado como uma descrição para a conta do usuário.</para>
+ </listitem>
+
+ <listitem>
+ <para><literal>Uid</literal> - <acronym>ID</acronym> do Usuário. Normalmente, isso é deixado em branco para que o sistema atribua um valor.</para>
+ </listitem>
+
+ <listitem>
+ <para><literal>Login group</literal> - O grupo do usuário. Normalmente, isso é deixado em branco para aceitar o padrão.</para>
+ </listitem>
+
+ <listitem>
+ <para><literal>Invite <replaceable>user</replaceable> into other groups?</literal> - Grupos adicionais aos quais o usuário será adicionado como membro. Se o usuário precisar de acesso administrativo, digite <literal>wheel</literal> aqui.</para>
+ </listitem>
+
+ <listitem>
+ <para><literal>Login class</literal> - normalmente deixado em branco para seguir com o padrão.</para>
+ </listitem>
+
+ <listitem>
+ <para><literal>Shell</literal> - Digite um dos valores listados para definir o shell interativo para o usuário. Consulte <xref linkend="shells"/> para maiores informações sobre shells.</para>
+ </listitem>
+
+ <listitem>
+ <para><literal>Home directory</literal> - O diretório inicial do usuário. O padrão geralmente está correto.</para>
+ </listitem>
+
+ <listitem>
+ <para><literal>Home directory permissions</literal> - Permissões no diretório inicial do usuário. O padrão geralmente está correto.</para>
+ </listitem>
+
+ <listitem>
+ <para><literal>Use password-based authentication?</literal> A resposta deve ser <literal>Yes</literal> para que o usuário seja solicitado a inserir sua senha no login.</para>
+ </listitem>
+
+ <listitem>
+ <para><literal>Use an empty password?</literal> - Normalmente a resposta será <literal>No</literal>, pois é inseguro ter uma senha em branco.</para>
+ </listitem>
+
+ <listitem>
+ <para><literal>Use a random password?</literal> - Normalmente a resposta será <literal>No</literal> para que o usuário possa definir sua própria senha no próximo prompt.</para>
+ </listitem>
+
+ <listitem>
+ <para><literal>Enter password</literal> - Escolha a senha para este usuário. Caracteres digitados não serão exibidos na tela.</para>
+ </listitem>
+
+ <listitem>
+ <para><literal>Enter password again</literal> - A senha deve ser digitada novamente para verificação.</para>
+ </listitem>
+
+ <listitem>
+ <para><literal>Lock out the account after creation?</literal> - A reposta normalmente será <literal>No</literal> para que o usuário possa fazer o login.</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>Depois de inserir tudo, um resumo será exibido para revisão. Se algum erro foi cometido, digite <literal>no</literal> e tente novamente. Se tudo estiver correto, digite <literal>yes</literal> para criar o novo usuário.</para>
+
+ <figure xml:id="bsdinstall-add-user3">
+ <title>Saia do gerenciamento de usuários e grupos</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="bsdinstall/bsdinstall-adduser3"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Se houver mais usuários para adicionar, responda a pergunta <literal>Add another user?</literal> com <literal>yes</literal>. Digite <literal>no</literal> para concluir a adição de usuários e continuar a instalação.</para>
+
+ <para>Para obter maiores informações sobre como adicionar usuários e sobre como gerenciá-los de usuários, consulte <xref linkend="users-synopsis"/>.</para>
+ </sect2>
+
+ <sect2 xml:id="bsdinstall-final-conf">
+ <title>Configuração final</title>
+
+ <para>Depois que tudo tiver sido instalado e configurado, você terá uma chance final para modificar as configurações.</para>
+
+ <figure xml:id="bsdinstall-final-config">
+ <title>Configuração final</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="bsdinstall/bsdinstall-finalconfiguration"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Use este menu para fazer alterações ou fazer qualquer configuração adicional antes de concluir a instalação.</para>
+
+ <itemizedlist>
+ <listitem>
+ <para><literal>Add User</literal> - Descrito em <xref linkend="bsdinstall-addusers"/>.</para>
+ </listitem>
+
+ <listitem>
+ <para><literal>Root Password</literal> - Descrito em <xref linkend="bsdinstall-post-root"/>.</para>
+ </listitem>
+
+ <listitem>
+ <para><literal>Hostname</literal> - Descrito em <xref linkend="bsdinstall-hostname"/>.</para>
+ </listitem>
+
+ <listitem>
+ <para><literal>Network</literal> - Descrito em <xref linkend="bsdinstall-config-network-dev"/>.</para>
+ </listitem>
+
+ <listitem>
+ <para><literal>Services</literal> - Descrito em <xref linkend="bsdinstall-sysconf"/>.</para>
+ </listitem>
+
+ <listitem>
+ <para><literal>Time Zone</literal> - Descrito em <xref linkend="bsdinstall-timezone"/>.</para>
+ </listitem>
+
+ <listitem>
+ <para><literal>Handbook</literal> - Faça o download e instale o FreeBSD Handbook.</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>Depois que completar qualquer configuração final que tenha faltado, selecione <guibutton>Exit</guibutton>.</para>
+
+ <figure xml:id="bsdinstall-final-modification-shell">
+ <title>Configuração manual</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="bsdinstall/bsdinstall-final-modification-shell"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>O <application>bsdinstall</application> perguntará se há alguma configuração adicional que precise ser feita antes de reinicializar o novo sistema. Selecione <guibutton>[Yes]</guibutton> para sair para um shell dentro do novo sistema ou <guibutton>[No]</guibutton> para prosseguir para a última etapa da instalação.</para>
+
+ <figure xml:id="bsdinstall-final-main">
+ <title>Conclua a instalação</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="bsdinstall/bsdinstall-mainexit"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Se outras configurações ou configurações especiais forem necessárias, selecione <guibutton>[Live CD]</guibutton> para inicializar a mídia de instalação no modo Live <acronym>CD</acronym>.</para>
+
+ <para>Se a instalação estiver completa, selecione <guibutton>[Reboot]</guibutton> para reiniciar o computador e iniciar o novo sistema FreeBSD. Não se esqueça de remover a mídia de instalação do FreeBSD ou o computador poderá inicializar novamente a partir dela.</para>
+
+ <para>Quando o FreeBSD inicializa, mensagens informativas são exibidas. Depois que o sistema concluir a inicialização, um prompt de login será exibido. No <prompt>login:</prompt>, insira o nome de usuário adicionado durante a instalação. Evite efetuar login como <systemitem class="username">root</systemitem>. Consulte <xref linkend="users-superuser"/> para instruções sobre como se tornar o superusuário quando o acesso administrativo for necessário.</para>
+
+ <para>As mensagens que apareceram durante a inicialização podem ser revisadas pressionando <keycap>Scroll-Lock</keycap> para ativar o buffer de rolagem para trás. As teclas <keycap>PgUp</keycap>, <keycap>PgDn</keycap> e setas podem ser usadas para rolar pelas mensagens. Quando terminar, pressione <keycap>Scroll-Lock</keycap> novamente para desbloquear o visor e retornar ao console. Para revisar essas mensagens depois que o sistema estiver ativo por algum tempo, digite <command>less /var/run/dmesg.boot</command> em um prompt de comando. Pressione <keycap>q</keycap> para retornar à linha de comando após a visualização.</para>
+
+ <para>Se o <application>sshd</application> foi habilitado em <xref linkend="bsdinstall-config-serv"/>, a primeira inicialização pode ser um pouco mais lenta, pois o sistema gerará as chaves <acronym>RSA</acronym> e <acronym>DSA</acronym>. As inicializações subseqüentes serão mais rápidas. As impressões digitais das chaves serão exibidas, conforme mostrado neste exemplo:</para>
+
+ <screen>Generating public/private rsa1 key pair.
+Your identification has been saved in /etc/ssh/ssh_host_key.
+Your public key has been saved in /etc/ssh/ssh_host_key.pub.
+The key fingerprint is:
+10:a0:f5:af:93:ae:a3:1a:b2:bb:3c:35:d9:5a:b3:f3 root@machine3.example.com
+The key's randomart image is:
++--[RSA1 1024]----+
+| o.. |
+| o . . |
+| . o |
+| o |
+| o S |
+| + + o |
+|o . + * |
+|o+ ..+ . |
+|==o..o+E |
++-----------------+
+Generating public/private dsa key pair.
+Your identification has been saved in /etc/ssh/ssh_host_dsa_key.
+Your public key has been saved in /etc/ssh/ssh_host_dsa_key.pub.
+The key fingerprint is:
+7e:1c:ce:dc:8a:3a:18:13:5b:34:b5:cf:d9:d1:47:b2 root@machine3.example.com
+The key's randomart image is:
++--[ DSA 1024]----+
+| .. . .|
+| o . . + |
+| . .. . E .|
+| . . o o . . |
+| + S = . |
+| + . = o |
+| + . * . |
+| . . o . |
+| .o. . |
++-----------------+
+Starting sshd.</screen>
+
+ <para>Consulte <xref linkend="openssh"/> para maiores informações sobre fingerprints e o <acronym>SSH</acronym>.</para>
+
+ <para>O FreeBSD não instala um ambiente gráfico por padrão. Consulte <xref linkend="x11"/> para maiores informações sobre como instalar e configurar um gerenciador gráfico de janelas.</para>
+
+ <para>O desligamento adequado de um computador FreeBSD ajuda a proteger os dados e o hardware contra danos. <emphasis>Não desligue a energia antes do sistema ter sido desligado corretamente!</emphasis> Se o usuário for membro do grupo <systemitem class="groupname">wheel</systemitem>, torne-se o superusuário digitando <command>su</command> na linha de comando e inserindo a senha do usuário <systemitem class="username">root</systemitem>. Em seguida, digite <command>shutdown -p now</command> e o sistema será desligado corretamente e, se o hardware suportar, irá se desliga-se.</para>
+ </sect2>
+ </sect1>
+
+ <sect1 xml:id="bsdinstall-install-trouble">
+ <title>Solução de problemas</title>
+
+ <indexterm><primary>installation</primary> <secondary>troubleshooting</secondary></indexterm>
+ <para>Esta seção aborda a solução de problemas básicos de instalação, tais como problemas comuns que as pessoas relataram.</para>
+
+ <para>Verifique o documento Notas de Hardware (<link xlink:href="@@URL_RELPREFIX@@/releases/index.html">https://www.freebsd.org/releases/index.html</link>) para a versão do FreeBSD para garantir que o hardware é suportado. Se o hardware for suportado e houver travamentos ou outros problemas, compile um kernel personalizado usando as instruções em <xref linkend="kernelconfig"/> para adicionar suporte a dispositivos que não estão presentes no kernel <filename>GENERIC</filename>. O kernel padrão assume que a maioria dos dispositivos de hardware está na configuração padrão de fábrica em termos de <acronym>IRQ</acronym>s, endereços de <acronym>I/O</acronym> e canais <acronym>DMA</acronym>. Se o hardware foi reconfigurado, um arquivo de configuração personalizado do kernel pode dizer ao FreeBSD onde encontrar os dispositivos.</para>
+
+ <note>
+ <para>Alguns problemas de instalação podem ser evitados ou aliviados com a atualização do firmware em vários componentes de hardware, principalmente na placa-mãe. O firmware da placa-mãe é geralmente chamado de <acronym>BIOS</acronym>. A maioria dos fabricantes de placas-mãe e computadores tem um site para atualizações e para informações sobre as atualizações.</para>
+
+ <para>Os fabricantes geralmente desaconselham a atualização da <acronym>BIOS</acronym> da placa-mãe, a menos que haja uma boa razão para isso, como uma atualização crítica. O processo de atualização <emphasis>pode</emphasis> dar errado, deixando o <acronym>BIOS</acronym> incompleto e o computador inoperante.</para>
+ </note>
+
+ <para>Se o sistema trava enquanto verifica o hardware durante a inicialização ou se comporta de maneira estranha durante a instalação, o <acronym>ACPI</acronym> pode ser o culpado. O FreeBSD faz uso extensivo do sistema <acronym>ACPI</acronym> nas plataformas i386, amd64 e ia64 para ajudar na configuração do sistema, caso seja detectado durante a inicialização. Infelizmente, alguns bugs ainda existem tanto no driver <acronym>ACPI</acronym> como nas placas-mãe do sistema e no firmware <acronym>BIOS</acronym>. O <acronym>ACPI</acronym> pode ser desativado configurando a opção <literal>hint.acpi.0.disabled</literal> no terceiro estágio do boot loader:</para>
+
+ <screen><userinput>set hint.acpi.0.disabled="1"</userinput></screen>
+
+ <para>Isso é redefinido toda vez que o sistema é inicializado, portanto é necessário adicionar <literal>hint.acpi.0.disabled="1"</literal> ao arquivo <filename>/boot/loader.conf</filename> . Maiores informações sobre o boot loader podem ser encontradas em <xref linkend="boot-synopsis"/>.</para>
+ </sect1>
+
+ <sect1 xml:id="using-live-cd">
+ <title>Usando o Live <acronym>CD</acronym></title>
+
+ <para>O menu de boas-vindas do <application>bsdinstall</application>, mostrado em <xref linkend="bsdinstall-choose-mode"/>, fornece uma opção <guibutton>[Live CD]</guibutton>. Isto é útil para aqueles que ainda estão se perguntando se o FreeBSD é o sistema operacional correto para eles e quer testar alguns dos recursos antes de instalar.</para>
+
+ <para>Os seguintes pontos devem ser observados antes de usar o <guibutton>[Live CD]</guibutton>:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>Para obter acesso ao sistema, a autenticação é necessária. O nome de usuário é <systemitem class="username">root</systemitem> e a senha está em branco.</para>
+ </listitem>
+
+ <listitem>
+ <para>Como o sistema é executado diretamente da mídia de instalação, o desempenho será significativamente mais lento do que o de um sistema instalado em um disco rígido.</para>
+ </listitem>
+
+ <listitem>
+ <para>Essa opção fornece apenas um prompt de comando e não uma interface gráfica.</para>
+ </listitem>
+ </itemizedlist>
+ </sect1>
+</chapter>
+
+
+<!--
+ The FreeBSD Documentation Project
+
+ $FreeBSD$
+-->
+<chapter version="5.0" xml:id="basics">
+ <!--
+ <chapterinfo>
+ <authorgroup>
+ <author>
+ <firstname>Chris</firstname>
+ <surname>Shumway</surname>
+ <contrib>Rewritten by in Mar 2000</contrib>
+ </author>
+ </authorgroup>
+ </chapterinfo>
+ -->
+ <title>Fundamentos do FreeBSD</title>
+
+ <sect1 xml:id="basics-synopsis">
+ <title>Sinopse</title>
+
+ <para>Este capítulo cobre os comandos básicos e as funcionalidades do sistema operacional FreeBSD. Grande parte deste material é relevante para qualquer sistema operacional do tipo <trademark class="registered">UNIX</trademark>. Novos usuários do FreeBSD são encorajados a ler este capítulo cuidadosamente.</para>
+
+ <para>Depois de ler este capítulo, você saberá:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>Como usar e configurar consoles virtuais.</para>
+ </listitem>
+
+ <listitem>
+ <para>Como criar e gerenciar usuários e grupos no FreeBSD.</para>
+ </listitem>
+
+ <listitem>
+ <para>Como funcionam as permissões de arquivo <trademark class="registered">UNIX</trademark> e as flags de arquivos do FreeBSD.</para>
+ </listitem>
+
+ <listitem>
+ <para>O layout padrão do sistema de arquivos do FreeBSD.</para>
+ </listitem>
+
+ <listitem>
+ <para>A organização do disco no FreeBSD.</para>
+ </listitem>
+
+ <listitem>
+ <para>Como montar e desmontar sistemas de arquivos.</para>
+ </listitem>
+
+ <listitem>
+ <para>O que são processos, daemons e sinais.</para>
+ </listitem>
+
+ <listitem>
+ <para>O que é um shell e como alterar o ambiente de login padrão.</para>
+ </listitem>
+
+ <listitem>
+ <para>Como usar editores de texto básicos.</para>
+ </listitem>
+
+ <listitem>
+ <para>O que são devices e device nodes.</para>
+ </listitem>
+
+ <listitem>
+ <para>Como ler páginas de manual para obter maiores informações.</para>
+ </listitem>
+ </itemizedlist>
+ </sect1>
+
+ <sect1 xml:id="consoles">
+ <title>Consoles e Terminais Virtuais</title>
+
+ <indexterm><primary>virtual consoles</primary></indexterm>
+ <indexterm><primary>terminals</primary></indexterm>
+ <indexterm><primary>console</primary></indexterm>
+
+ <para>A menos que o FreeBSD tenha sido configurado para iniciar automaticamente um ambiente gráfico durante a inicialização, o sistema inicializará em um prompt de login da linha de comando, como visto neste exemplo:</para>
+
+ <screen>FreeBSD/amd64 (pc3.example.org) (ttyv0)
+
+login:</screen>
+
+ <para>A primeira linha contém algumas informações sobre o sistema. O <literal>amd64</literal> indica que o sistema neste exemplo está executando uma versão de 64 bits do FreeBSD. O nome do host é <systemitem>pc3.example.org</systemitem>, e <filename>ttyv0</filename> indica que este é o <quote>console do sistema</quote>. A segunda linha é o prompt de login.</para>
+
+ <para>Como o FreeBSD é um sistema multiusuário, ele precisa de alguma maneira distinguir entre usuários diferentes. Isso é feito exigindo que todos os usuários façam login no sistema antes de obter acesso aos programas no sistema. Cada usuário tem um <quote>nome de usuário</quote> único e uma <quote>senha</quote> pessoal.</para>
+
+ <para>Para efetuar login no console do sistema, digite o nome de usuário que foi configurado durante a instalação do sistema, conforme descrito em <xref linkend="bsdinstall-addusers"/> e pressione <keycap>Enter</keycap>. Em seguida, insira a senha associada ao nome de usuário e pressione <keycap>Enter</keycap>. A senha não é <emphasis>ecoada</emphasis> por razões de segurança.</para>
+
+ <para>Uma vez que a senha correta é inserida, a mensagem do dia (<acronym>MOTD</acronym>) será exibida, seguida de um prompt de comando. Dependendo do shell que foi selecionado quando o usuário foi criado, este prompt será um caractere <literal>#</literal>, <literal>$</literal> ou <literal>%</literal>. O prompt indica que o usuário está logado no console do sistema FreeBSD e pronto para testar os comandos disponíveis.</para>
+
+ <sect2 xml:id="consoles-virtual">
+ <title>Consoles Virtuais</title>
+
+ <para>Enquanto o console do sistema pode ser usado para interagir com o sistema, um usuário trabalhando a partir da linha de comando no teclado de um sistema FreeBSD normalmente irá efetuar login em um console virtual. Isso ocorre porque as mensagens do sistema são configuradas por padrão para serem exibidas no console do sistema. Essas mensagens serão exibidas por cima do comando ou arquivo em que o usuário estiver trabalhando, dificultando a concentração no trabalho em questão.</para>
+
+ <para>Por padrão, o FreeBSD é configurado para fornecer vários consoles virtuais para a entrada de comandos. Cada console virtual tem seu próprio prompt de login e shell e é fácil alternar entre os consoles virtuais. Isso essencialmente fornece a linha de comando equivalente a ter várias janelas abertas ao mesmo tempo em um ambiente gráfico.</para>
+
+ <para>As combinações de teclas <keycombo><keycap>Alt</keycap><keycap>F1</keycap> </keycombo> até a <keycombo><keycap>Alt</keycap><keycap>F8</keycap></keycombo> foram reservadas pelo FreeBSD para alternar entre os consoles virtuais. Use <keycombo><keycap>Alt</keycap><keycap>F1</keycap></keycombo> para alternar para o console do sistema (<filename>ttyv0</filename>), <keycombo><keycap>Alt</keycap><keycap>F2</keycap></keycombo> para acessar o primeiro console virtual (<filename>ttyv1</filename>), <keycombo><keycap>Alt</keycap> <keycap>F3</keycap></keycombo> para acessar o segundo console virtual (<filename>ttyv2</filename>) e assim por diante.</para>
+
+ <para>Ao mudar de um console para o próximo, o FreeBSD gerencia a saída da tela. O resultado é uma ilusão de ter várias telas virtuais e teclados que podem ser usados ​​para digitar comandos para o FreeBSD rodar. Os programas executados em um console virtual não param de ser executados quando o usuário alterna para um console virtual diferente.</para>
+
+ <para>Consulte <citerefentry><refentrytitle>kbdcontrol</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>vidcontrol</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>atkbd</refentrytitle><manvolnum>4</manvolnum></citerefentry>, <citerefentry><refentrytitle>syscons</refentrytitle><manvolnum>4</manvolnum></citerefentry>, e <citerefentry><refentrytitle>vt</refentrytitle><manvolnum>4</manvolnum></citerefentry> para uma descrição mais técnica do console do FreeBSD e seus drivers de teclado.</para>
+
+ <para>No FreeBSD, o número de consoles virtuais disponíveis é configurado nesta seção do <filename>/etc/ttys</filename>:</para>
+
+ <programlisting># name getty type status comments
+#
+ttyv0 "/usr/libexec/getty Pc" xterm on secure
+# Virtual terminals
+ttyv1 "/usr/libexec/getty Pc" xterm on secure
+ttyv2 "/usr/libexec/getty Pc" xterm on secure
+ttyv3 "/usr/libexec/getty Pc" xterm on secure
+ttyv4 "/usr/libexec/getty Pc" xterm on secure
+ttyv5 "/usr/libexec/getty Pc" xterm on secure
+ttyv6 "/usr/libexec/getty Pc" xterm on secure
+ttyv7 "/usr/libexec/getty Pc" xterm on secure
+ttyv8 "/usr/X11R6/bin/xdm -nodaemon" xterm off secure</programlisting>
+
+
+ <para>Para desativar um console virtual, coloque um símbolo de comentário (<literal>#</literal>) no início da linha que representa esse console virtual. Por exemplo, para reduzir o número de consoles virtuais disponíveis de oito para quatro, coloque um <literal>#</literal> na frente das últimas quatro linhas que representam os consoles virtuais de <filename>ttyv5</filename> até <filename>ttyv8</filename>. <emphasis>Não</emphasis> comente a linha do console do sistema <filename>ttyv0</filename>. Note que o último console virtual (<filename>ttyv8</filename>) é usado para acessar o ambiente gráfico se o <application>Xorg</application> tiver sido instalado e configurado conforme descrito em <xref linkend="x11"/>.</para>
+
+ <para>Para uma descrição detalhada de cada coluna neste arquivo e as opções disponíveis para os consoles virtuais, consulte <citerefentry><refentrytitle>ttys</refentrytitle><manvolnum>5</manvolnum></citerefentry>.</para>
+ </sect2>
+
+ <sect2 xml:id="consoles-singleuser">
+ <title>Modo "Single User"</title>
+
+ <para>O menu de inicialização do FreeBSD fornece uma opção chamada <quote>Boot Single User</quote>. Se esta opção for selecionada, o sistema inicializará em um modo especial conhecido como <quote>single user mode</quote>. Esse modo é normalmente usado para reparar um sistema que não inicializa ou para redefinir a senha de <systemitem class="username">root</systemitem> quando ela é desconhecida. Quando em modo single user, a rede e outros consoles virtuais não estão disponíveis. No entanto, haverá acesso completo de <systemitem class="username">root</systemitem> ao sistema e, por padrão, a senha de <systemitem class="username">root</systemitem> não é necessária. Por estas razões, o acesso físico ao teclado é necessário para iniciar neste modo e determinar quem tem acesso físico ao teclado é algo a considerar ao proteger um sistema FreeBSD.</para>
+
+ <para>As configurações que controlam o modo de single user são encontradas nesta seção do <filename>/etc/ttys</filename>:</para>
+
+ <programlisting># name getty type status comments
+#
+# If console is marked "insecure", then init will ask for the root password
+# when going to single-user mode.
+console none unknown off secure</programlisting>
+
+ <para>Por padrão, o status é definido como <literal>secure</literal>. Isso pressupõe que quem tem acesso físico ao teclado não é importante ou é controlado por uma política de segurança física. Se essa configuração for alterada para <literal>insecure</literal>, a suposição é que o ambiente em si é inseguro porque qualquer pessoa pode acessar o teclado. Quando esta linha é alterada para <literal>insecure</literal>, o FreeBSD irá solicitar a senha do <systemitem class="username">root</systemitem> quando um usuário selecionar inicializar no modo single user.</para>
+
+ <note>
+ <para><emphasis>Tenha cuidado ao alterar esta configuração para <literal>inseguro</literal></emphasis>! Se a senha do <systemitem class="username">root</systemitem> for esquecida, a inicialização no modo single user ainda é possível, mas pode ser difícil para alguém que não esteja familiarizado com o processo de inicialização do FreeBSD.</para>
+ </note>
+ </sect2>
+
+ <sect2 xml:id="consoles-vidcontrol">
+ <title>Alterar os modos de vídeo do console</title>
+
+ <para>O modo de vídeo padrão do console do FreeBSD pode ser ajustado para 1024x768, 1280x1024 ou qualquer outro tamanho suportado pelo chip gráfico e monitor. Para usar um modo de vídeo diferente, carregue o módulo <literal>VESA</literal>:</para>
+
+ <screen><prompt>#</prompt> <userinput>kldload vesa</userinput></screen>
+
+ <para>Para determinar quais modos de vídeo são suportados pelo hardware, use <citerefentry><refentrytitle>vidcontrol</refentrytitle><manvolnum>1</manvolnum></citerefentry>. Para obter uma lista de modos de vídeo suportados, execute o seguinte:</para>
+
+ <screen><prompt>#</prompt> <userinput>vidcontrol -i mode</userinput></screen>
+
+ <para>A saída deste comando lista os modos de vídeo suportados pelo hardware. Para selecionar um novo modo de vídeo, especifique o modo usando <citerefentry><refentrytitle>vidcontrol</refentrytitle><manvolnum>1</manvolnum></citerefentry> como o usuário <systemitem class="username">root</systemitem> :</para>
+
+ <screen><prompt>#</prompt> <userinput>vidcontrol MODE_279</userinput></screen>
+
+ <para>Se o novo modo de vídeo for aceitável, ele pode ser definido permanentemente na inicialização, adicionando-o ao <filename>/etc/rc.conf</filename>:</para>
+
+ <programlisting>allscreens_flags="MODE_279"</programlisting>
+ </sect2>
+ </sect1>
+
+ <!--
+ <chapterinfo>
+ <authorgroup>
+ <author>
+ <firstname>Neil</firstname>
+ <surname>Blakey-Milner</surname>
+ <contrib>Contributed by in Feb 2000</contrib>
+ </author>
+ </authorgroup>
+ </chapterinfo>
+ -->
+
+ <sect1 xml:id="users-synopsis">
+ <title>Usuários e Gerenciamento Básico de Contas</title>
+
+ <para>O FreeBSD permite que múltiplos usuários usem o computador ao mesmo tempo. Enquanto apenas um usuário pode se sentar em frente à tela e usar o teclado a qualquer momento, qualquer número de usuários pode efetuar o login no sistema através da rede. Para usar o sistema, cada usuário deve ter sua própria conta de usuário.</para>
+
+ <para>Este capítulo descreve:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>Os diferentes tipos de contas de usuários em um sistema FreeBSD.</para>
+ </listitem>
+
+ <listitem>
+ <para>Como adicionar, remover e modificar contas de usuários.</para>
+ </listitem>
+
+ <listitem>
+ <para>Como definir limites para controlar os recursos que usuários e grupos podem acessar.</para>
+ </listitem>
+
+ <listitem>
+ <para>Como criar grupos e adicionar usuários como membros de um grupo.</para>
+ </listitem>
+ </itemizedlist>
+
+ <sect2 xml:id="users-introduction">
+ <title>Tipos de conta</title>
+
+ <para>Como todo acesso ao sistema FreeBSD é obtido usando contas e todos os processos são executados por usuários, o gerenciamento de usuários e contas é importante.</para>
+
+ <para>Existem três tipos principais de contas: contas do sistema, contas de usuário e a conta de superusuário.</para>
+
+ <sect3 xml:id="users-system">
+ <title>Contas do sistema</title>
+
+ <indexterm><primary>accounts</primary> <secondary>system</secondary></indexterm>
+
+ <para>As contas do sistema são usadas para executar serviços como DNS, correio e servidores web. A razão para isso é a segurança; se todos os serviços fossem executados como superusuário, eles poderiam agir sem restrições.</para>
+
+ <indexterm><primary>accounts</primary> <secondary><systemitem class="username">daemon</systemitem></secondary></indexterm>
+ <indexterm><primary>accounts</primary> <secondary><systemitem class="username">operator</systemitem></secondary></indexterm>
+
+ <para>Exemplos de contas do sistema são <systemitem class="username">daemon</systemitem>, <systemitem class="username">operador</systemitem>, <systemitem class="username">bind</systemitem>, <systemitem class="username">news</systemitem>, e <systemitem class="username">www</systemitem>.</para>
+
+ <indexterm><primary>accounts</primary> <secondary><systemitem class="username">nobody</systemitem></secondary></indexterm>
+
+ <para>A <systemitem class="username">nobody</systemitem> é uma conta genérica sem privilégios do sistema. No entanto, quanto mais serviços usarem <systemitem class="username">nobody</systemitem>, a mais arquivos e processos esse usuário será associado e, portanto, mais privilegiado esse usuário se tornará.</para>
+ </sect3>
+
+ <sect3 xml:id="users-user">
+ <title>Contas de usuário</title>
+
+ <indexterm><primary>accounts</primary> <secondary>user</secondary></indexterm>
+
+ <para>As contas de usuários são atribuídas a pessoas reais e são usadas para efetuar login e usar o sistema. Todas as pessoas que acessam o sistema devem ter uma conta de usuário exclusiva. Isso permite que o administrador descubra quem está fazendo o que e impede que usuários alterem as configurações de outros usuários.</para>
+
+ <para>Cada usuário pode configurar seu próprio ambiente para adequar o sistema ao seu uso, utilizando suas opções padrão para o shell, editor, atalhos de teclado e idioma.</para>
+
+ <para>Cada conta de usuário em um sistema FreeBSD tem certas informações associadas:</para>
+
+ <variablelist>
+ <varlistentry>
+ <term>Nome de usuário</term>
+
+ <listitem>
+ <para>O nome do usuário é digitado no prompt <prompt>login:</prompt>. Cada usuário deve ter um nome de usuário exclusivo. Existem diversas regras para criar nomes de usuário válidos que estão documentadas em <citerefentry><refentrytitle>passwd</refentrytitle><manvolnum>5</manvolnum></citerefentry>. Recomenda-se usar nomes de usuário que tenham oito ou menos caracteres, todos os caracteres devem ser minúsculos para manter a compatibilidade com aplicativos legados.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>Senha</term>
+
+ <listitem>
+ <para>Cada conta tem uma senha associada.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>ID do usuário (<acronym>UID</acronym>)</term>
+
+ <listitem>
+ <para>O ID do Usuário (<acronym>UID</acronym>) é um número usado para identificar unicamente o usuário no sistema FreeBSD. Comandos que permitem que um nome de usuário seja especificado o converterão para o <acronym>UID</acronym>. Recomenda-se usar um UID menor que 65535, já que valores mais altos podem causar problemas de compatibilidade com alguns softwares.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>ID do grupo (<acronym>GID</acronym>)</term>
+
+ <listitem>
+ <para>O ID do grupo (<acronym>GID</acronym>) é um número usado para identificar unicamente o grupo principal ao qual o usuário pertence. Os grupos são um mecanismo para controlar o acesso a recursos com base no <acronym>GID</acronym> de um usuário, em vez de no seu <acronym>UID</acronym>. Isso pode reduzir significativamente o tamanho de alguns arquivos de configuração e permite que os usuários sejam membros de mais de um grupo. Recomenda-se usar um GID de 65535 ou inferior, pois GIDs mais altos podem não funcionar com alguns softwares.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>Classe de login</term>
+
+ <listitem>
+ <para>As classes de login são uma extensão do mecanismo de grupo que fornece flexibilidade adicional ao configurar o sistema para diferentes usuários. As classes de login são discutidas em <xref linkend="users-limiting"/>.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>Tempo para mudança de senha</term>
+
+ <listitem>
+ <para>Por padrão as senhas não expiram. No entanto, a expiração de senha pode ser ativada por usuário, forçando alguns ou todos os usuários a alterar suas senhas após um determinado período de tempo.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>Tempo de expiração da conta</term>
+
+ <listitem>
+ <para>Por padrão o FreeBSD não expira contas. Ao criar contas que precisam de uma vida útil limitada, como contas de alunos em uma escola, especifique a data de expiração da conta usando o <citerefentry><refentrytitle>pw</refentrytitle><manvolnum>8</manvolnum></citerefentry>. Após o tempo de expiração, a conta não poderá ser usada para efetuar login no sistema, embora os diretórios e arquivos da conta permaneçam no servidor.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>Nome completo do usuário</term>
+
+ <listitem>
+ <para>O nome de usuário identifica a conta de forma única para o FreeBSD, mas não reflete necessariamente o nome real do usuário. Semelhante a um comentário, essas informações podem conter espaços, caracteres maiúsculos e ter mais de oito caracteres.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>Diretório Inicial (home)</term>
+
+ <listitem>
+ <para>O diretório "home" é um caminho completo para um diretório no sistema. Este é o diretório inicial do usuário quando o usuário faz o login. Uma convenção comum é colocar todos os diretórios home dos usuários em <filename><replaceable>/home/username</replaceable></filename> ou <filename><replaceable>/usr/home/username</replaceable></filename>. Cada usuário armazena seus arquivos e subdiretórios pessoais em seu próprio diretório home.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>Shell do usuário</term>
+
+ <listitem>
+ <para>O shell fornece o ambiente padrão do usuário para interagir com o sistema. Existem muitos tipos diferentes de shells e usuários experientes terão suas próprias preferências, que podem ser refletidas nas suas configurações da conta.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </sect3>
+
+ <sect3 xml:id="users-superuser">
+ <title>A conta de superusuário</title>
+
+ <indexterm><primary>accounts</primary> <secondary>superuser (root)</secondary></indexterm>
+
+ <para>A conta de superusuário, geralmente chamada de <systemitem class="username">root</systemitem>, é usada para gerenciar o sistema sem limitações de privilégios. Por este motivo, não deve ser usado para tarefas do dia-a-dia, como enviar e receber e-mail, exploração geral do sistema ou programação.</para>
+
+ <para>O superusuário, ao contrário de outras contas de usuário, pode operar sem limites, e o uso indevido da conta de superusuário pode resultar em desastres espetaculares. As contas de usuário não podem destruir o sistema operacional por engano, por isso é recomendável fazer o login como uma conta de usuário e se tornar o superusuário somente quando um comando exigir privilégios extras.</para>
+
+ <para>Sempre cheque duas ou três vezes todos os comandos emitidos como superusuário, pois um espaço extra ou um caractere ausente pode causar uma perda de dados irreparável.</para>
+
+ <para>Existem várias maneiras de obter privilégios de superusuário. Embora seja possível efetuar login como <systemitem class="username">root</systemitem>, isso é altamente desencorajado.</para>
+
+ <para>Em vez disso, use <citerefentry><refentrytitle>su</refentrytitle><manvolnum>1</manvolnum></citerefentry> para se tornar o superusuário. Se <literal>-</literal> for especificado ao executar este comando, o usuário também herdará o ambiente do usuário root. O usuário que executa este comando deve estar no grupo <systemitem class="groupname">wheel</systemitem> ou o comando falhará. O usuário também deve saber a senha da conta de usuário <systemitem class="username">root</systemitem>.</para>
+
+ <para>Neste exemplo, o usuário só se torna superusuário para executar <command>make install</command>, pois isso requer privilégios de superusuário. Quando o comando é concluído, o usuário digita <command>exit</command> para deixar a conta de superusuário e retornar à sua conta de usuário.</para>
+
+ <example>
+ <title>Instalar um programa como superusuário</title>
+
+ <screen><prompt>%</prompt> <userinput>configure</userinput>
+<prompt>%</prompt> <userinput>make</userinput>
+<prompt>%</prompt> <userinput>su -</userinput>
+Password:
+<prompt>#</prompt> <userinput>make install</userinput>
+<prompt>#</prompt> <userinput>exit</userinput>
+<prompt>%</prompt></screen>
+ </example>
+
+ <para>O framework integrado <citerefentry><refentrytitle>su</refentrytitle><manvolnum>1</manvolnum></citerefentry> funciona bem para sistemas isolados ou redes pequenas com apenas um administrador. Uma alternativa é instalar o pacote ou port <package>security/sudo</package>. Este software fornece registro de atividades e permite ao administrador configurar quais usuários podem executar quais comandos como superusuário.</para>
+ </sect3>
+ </sect2>
+
+ <sect2 xml:id="users-modifying">
+ <title>Gerenciando Contas</title>
+
+ <indexterm><primary>accounts</primary> <secondary>modifying</secondary></indexterm>
+
+ <para>O FreeBSD fornece uma variedade de diferentes comandos para gerenciar contas de usuários. Os comandos mais comuns são descritos em <xref linkend="users-modifying-utilities"/>, seguidos por alguns exemplos de seu uso. Veja a página de manual para cada utilitário para maiores detalhes e exemplos de uso.</para>
+
+ <table frame="none" pgwide="1" xml:id="users-modifying-utilities">
+ <title>Utilitários para gerenciar contas de usuários</title>
+
+ <tgroup cols="2">
+ <colspec colwidth="1*"/>
+ <colspec colwidth="2*"/>
+
+ <thead>
+ <row>
+ <entry>Comando</entry>
+ <entry>Resumo</entry>
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry><citerefentry><refentrytitle>adduser</refentrytitle><manvolnum>8</manvolnum></citerefentry></entry>
+ <entry>Aplicativo de linha de comando recomendado para adicionar novos usuários.</entry>
+ </row>
+
+ <row>
+ <entry><citerefentry><refentrytitle>rmuser</refentrytitle><manvolnum>8</manvolnum></citerefentry></entry>
+ <entry>Aplicativo de linha de comando recomendado para remover usuários.</entry>
+ </row>
+
+ <row>
+ <entry><citerefentry><refentrytitle>chpass</refentrytitle><manvolnum>1</manvolnum></citerefentry></entry>
+ <entry>Uma ferramenta flexível para alterar as informações do usuário.</entry>
+ </row>
+
+ <row>
+ <entry><citerefentry><refentrytitle>passwd</refentrytitle><manvolnum>1</manvolnum></citerefentry></entry>
+ <entry>Ferramenta de linha de comando para alterar senhas de usuários.</entry>
+ </row>
+
+ <row>
+ <entry><citerefentry><refentrytitle>pw</refentrytitle><manvolnum>8</manvolnum></citerefentry></entry>
+ <entry>Uma ferramenta poderosa e flexível para modificar todos os aspectos das contas de usuário.</entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table>
+
+ <sect3 xml:id="users-adduser">
+ <title><command>adduser</command></title>
+
+ <indexterm><primary>accounts</primary> <secondary>adding</secondary></indexterm>
+ <indexterm><primary><command>adduser</command></primary></indexterm>
+ <indexterm><primary><filename>/usr/share/skel</filename></primary></indexterm>
+ <indexterm><primary>skeleton directory</primary></indexterm>
+
+ <para>O programa recomendado para adicionar novos usuários é o <citerefentry><refentrytitle>adduser</refentrytitle><manvolnum>8</manvolnum></citerefentry>. Quando um novo usuário é adicionado, este programa atualiza automaticamente o <filename>/etc/passwd</filename> e o <filename>/etc/group</filename>. Ele também cria um diretório inicial para o novo usuário, copia os arquivos de configuração padrão de <filename>/usr/share/skel</filename> e pode, opcionalmente, enviar uma nova mensagem de boas-vindas ao novo usuário. Este utilitário deve ser executado como o superusuário.</para>
+
+ <para>O utilitário <citerefentry><refentrytitle>adduser</refentrytitle><manvolnum>8</manvolnum></citerefentry> é interativo e percorre as etapas para criar uma nova conta de usuário. Como visto em <xref linkend="users-modifying-adduser"/>, insira as informações necessárias ou pressione <keycap>Enter</keycap> para aceitar o valor padrão mostrado entre colchetes. Neste exemplo, o usuário foi convidado para o grupo <systemitem class="groupname">wheel</systemitem>, permitindo que ele se tornasse o superusuário com o uso do <citerefentry><refentrytitle>su</refentrytitle><manvolnum>1</manvolnum></citerefentry>. Quando terminar, o utilitário perguntará se deseja criar outro usuário ou finalizar o comando.</para>
+
+ <example xml:id="users-modifying-adduser">
+ <title>Adicionando um usuário no FreeBSD</title>
+
+ <screen><prompt>#</prompt> <userinput>adduser</userinput>
+Username: <userinput>jru</userinput>
+Full name: <userinput>J. Random User</userinput>
+Uid (Leave empty for default):
+Login group [jru]:
+Login group is jru. Invite jru into other groups? []: <userinput>wheel</userinput>
+Login class [default]:
+Shell (sh csh tcsh zsh nologin) [sh]: <userinput>zsh</userinput>
+Home directory [/home/jru]:
+Home directory permissions (Leave empty for default):
+Use password-based authentication? [yes]:
+Use an empty password? (yes/no) [no]:
+Use a random password? (yes/no) [no]:
+Enter password:
+Enter password again:
+Lock out the account after creation? [no]:
+Username : jru
+Password : ****
+Full Name : J. Random User
+Uid : 1001
+Class :
+Groups : jru wheel
+Home : /home/jru
+Shell : /usr/local/bin/zsh
+Locked : no
+OK? (yes/no): <userinput>yes</userinput>
+adduser: INFO: Successfully added (jru) to the user database.
+Add another user? (yes/no): <userinput>no</userinput>
+Goodbye!
+<prompt>#</prompt></screen>
+ </example>
+
+ <note>
+ <para>Como a senha não é mostrada quando digitada, tenha cuidado para não digitar a senha incorretamente ao criar a conta do usuário.</para>
+ </note>
+ </sect3>
+
+ <sect3 xml:id="users-rmuser">
+ <title><command>rmuser</command></title>
+
+ <indexterm><primary><command>rmuser</command></primary></indexterm>
+ <indexterm><primary>accounts</primary> <secondary>removing</secondary></indexterm>
+
+ <para>Para remover completamente um usuário do sistema, execute o <citerefentry><refentrytitle>rmuser</refentrytitle><manvolnum>8</manvolnum></citerefentry> como o superusuário. Este comando executa as seguintes etapas:</para>
+
+ <procedure>
+ <step>
+ <para>Remove a entrada <citerefentry><refentrytitle>crontab</refentrytitle><manvolnum>1</manvolnum></citerefentry> do usuário, se existir.</para>
+ </step>
+
+ <step>
+ <para>Remove todas as tarefas <citerefentry><refentrytitle>at</refentrytitle><manvolnum>1</manvolnum></citerefentry> pertencentes ao usuário.</para>
+ </step>
+
+ <step>
+ <para>Elimina todos os processos pertencentes ao usuário.</para>
+ </step>
+
+ <step>
+ <para>Remove o usuário do arquivo de senhas do sistema.</para>
+ </step>
+
+ <step>
+ <para>Opcionalmente, remove o diretório pessoal do usuário, se ele for de propriedade do usuário.</para>
+ </step>
+
+ <step>
+ <para>Remove os arquivos de mensagens recebidas pertencentes ao usuário de <filename>/var/mail</filename>.</para>
+ </step>
+
+ <step>
+ <para>Remove todos os arquivos pertencentes ao usuário das áreas de armazenamento de arquivos temporários, como <filename>/tmp</filename>.</para>
+ </step>
+
+ <step>
+ <para>Finalmente, remove o nome de usuário de todos os grupos aos quais ele pertence em <filename>/etc/group</filename>. Se um grupo ficar vazio e o nome do grupo for o mesmo que o nome de usuário, o grupo será removido. Isso complementa os grupos exclusivos por usuário criados por <citerefentry><refentrytitle>adduser</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
+ </step>
+ </procedure>
+
+ <para>O <citerefentry><refentrytitle>rmuser</refentrytitle><manvolnum>8</manvolnum></citerefentry> não pode ser usado para remover contas de superusuário, pois isso quase sempre ocasiona uma de destruição em massa.</para>
+
+ <para>Por padrão, um modo interativo é usado, conforme mostrado no exemplo a seguir.</para>
+
+ <example>
+ <title>Remoção de contas interativas com o <command>rmuser</command></title>
+
+ <screen><prompt>#</prompt> <userinput>rmuser jru</userinput>
+Matching password entry:
+jru:*:1001:1001::0:0:J. Random User:/home/jru:/usr/local/bin/zsh
+Is this the entry you wish to remove? <userinput>y</userinput>
+Remove user's home directory (/home/jru)? <userinput>y</userinput>
+Removing user (jru): mailspool home passwd.
+<prompt>#</prompt></screen>
+ </example>
+ </sect3>
+
+ <sect3 xml:id="users-chpass">
+ <title><command>chpass</command></title>
+
+ <indexterm><primary><command>chpass</command></primary></indexterm>
+
+ <para>Qualquer usuário pode usar o <citerefentry><refentrytitle>chpass</refentrytitle><manvolnum>1</manvolnum></citerefentry> para alterar seu shell padrão e informações pessoais associadas à sua conta de usuário. O superusuário pode usar esse utilitário para alterar informações adicionais da conta de qualquer usuário.</para>
+
+ <para>Quando não há opções, além de um nome de usuário opcional, o <citerefentry><refentrytitle>chpass</refentrytitle><manvolnum>1</manvolnum></citerefentry> exibe um editor contendo informações do usuário. Quando o usuário sai do editor, o banco de dados do usuário é atualizado com as novas informações.</para>
+
+ <note>
+ <para>Este utilitário solicitará a senha do usuário ao sair do editor, a menos que o utilitário seja executado como superusuário.</para>
+ </note>
+
+ <para>Em <xref linkend="users-modifying-chpass-su"/>, o superusuário digitou <command>chpass jru</command> e agora está visualizando os campos que podem ser alterados para este usuário. Se <systemitem class="username">jru</systemitem> executar este comando, apenas os últimos seis campos serão exibidos e estarão disponíveis para edição. Isso é mostrado em <xref linkend="users-modifying-chpass-ru"/>.</para>
+
+ <example xml:id="users-modifying-chpass-su">
+ <title>Usando o <command>chpass</command> como superusuário</title>
+
+ <screen>#Changing user database information for jru.
+Login: jru
+Password: *
+Uid [#]: 1001
+Gid [# or name]: 1001
+Change [month day year]:
+Expire [month day year]:
+Class:
+Home directory: /home/jru
+Shell: /usr/local/bin/zsh
+Full Name: J. Random User
+Office Location:
+Office Phone:
+Home Phone:
+Other information:</screen>
+ </example>
+
+ <example xml:id="users-modifying-chpass-ru">
+ <title>Usando o <command>chpass</command> como usuário regular</title>
+
+ <screen>#Changing user database information for jru.
+Shell: /usr/local/bin/zsh
+Full Name: J. Random User
+Office Location:
+Office Phone:
+Home Phone:
+Other information:</screen>
+ </example>
+
+ <note>
+ <para>Os comandos <citerefentry><refentrytitle>chfn</refentrytitle><manvolnum>1</manvolnum></citerefentry> e <citerefentry><refentrytitle>chsh</refentrytitle><manvolnum>1</manvolnum></citerefentry> são links para <citerefentry><refentrytitle>chpass</refentrytitle><manvolnum>1</manvolnum></citerefentry>, como são <citerefentry><refentrytitle>ypchpass</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>ypchfn</refentrytitle><manvolnum>1</manvolnum></citerefentry>e<citerefentry><refentrytitle>ypchsh</refentrytitle><manvolnum>1</manvolnum></citerefentry>. Já que o suporte ao <acronym>NIS</acronym> é automático, colocar o <literal>yp</literal> antes do comando não é necessário. Os procedimentos para configurar o NIS está documentado em <xref linkend="network-servers"/>.</para>
+ </note>
+ </sect3>
+
+ <sect3 xml:id="users-passwd">
+ <title><command>passwd</command></title>
+
+ <indexterm><primary><command>passwd</command></primary></indexterm>
+ <indexterm><primary>accounts</primary> <secondary>changing password</secondary></indexterm>
+
+ <para>Qualquer usuário pode alterar facilmente sua senha usando o <citerefentry><refentrytitle>passwd</refentrytitle><manvolnum>1</manvolnum></citerefentry>. Para prevenir alterações acidentais ou não autorizadas, este comando irá solicitar a senha atual ao usuário antes de configurar uma nova senha:</para>
+
+ <example>
+ <title>Alterando Sua Senha</title>
+
+ <screen><prompt>%</prompt> <userinput>passwd</userinput>
+Changing local password for jru.
+Old password:
+New password:
+Retype new password:
+passwd: updating the database...
+passwd: done</screen>
+ </example>
+
+ <para>O superusuário pode alterar a senha de qualquer usuário especificando o nome de usuário ao executar o <citerefentry><refentrytitle>passwd</refentrytitle><manvolnum>1</manvolnum></citerefentry>. Quando este utilitário é executado como superusuário, ele não solicita a senha atual do usuário. Isso permite que a senha seja alterada quando um usuário não consegue lembrar a senha original.</para>
+
+ <example>
+ <title>Mudando a senha de outro usuário como superusuário</title>
+
+ <screen><prompt>#</prompt> <userinput>passwd jru</userinput>
+Changing local password for jru.
+New password:
+Retype new password:
+passwd: updating the database...
+passwd: done</screen>
+ </example>
+
+ <note>
+ <para>Como com o <citerefentry><refentrytitle>chpass</refentrytitle><manvolnum>1</manvolnum></citerefentry>, o <citerefentry><refentrytitle>yppasswd</refentrytitle><manvolnum>1</manvolnum></citerefentry> é um link para <citerefentry><refentrytitle>passwd</refentrytitle><manvolnum>1</manvolnum></citerefentry>, então o <acronym>NIS</acronym> funciona com ambos os comandos.</para>
+ </note>
+ </sect3>
+
+ <sect3 xml:id="users-pw">
+ <title><command>pw</command></title>
+
+ <indexterm><primary><command>pw</command></primary></indexterm>
+
+ <para>O utilitário <citerefentry><refentrytitle>pw</refentrytitle><manvolnum>8</manvolnum></citerefentry> pode criar, remover, modificar e exibir usuários e grupos. Funciona como um front-end para o usuário do sistema e para os arquivos de grupo. O <citerefentry><refentrytitle>pw</refentrytitle><manvolnum>8</manvolnum></citerefentry> tem um conjunto muito poderoso de opções de linha de comando que o torna adequado para uso em shell scripts, mas novos usuários podem achar isso mais complicado que os outros comandos apresentados nesta seção.</para>
+ </sect3>
+ </sect2>
+
+ <sect2 xml:id="users-groups">
+ <title>Gerenciando Grupos</title>
+
+ <indexterm><primary>groups</primary></indexterm>
+ <indexterm><primary><filename>/etc/groups</filename></primary></indexterm>
+ <indexterm><primary>accounts</primary> <secondary>groups</secondary></indexterm>
+
+ <para>Um grupo é uma lista de usuários. Um grupo é identificado pelo nome do grupo e pelo <acronym>GID</acronym>. No FreeBSD, o kernel usa o <acronym>UID</acronym> de um processo, e a lista de grupos a que pertence, para determinar o que o processo pode fazer. Na maioria das vezes, o <acronym>GID</acronym> de um usuário ou processo geralmente significa o primeiro grupo na lista.</para>
+
+ <para>O mapeamento do nome do grupo para o <acronym>GID</acronym> está listado em <filename>/etc/group</filename>. Este é um arquivo de texto simples com quatro campos delimitados por dois pontos. O primeiro campo é o nome do grupo, o segundo é a senha criptografada, o terceiro é o <acronym>GID</acronym> e o quarto é a lista de membros delimitados por vírgulas. Para uma descrição mais completa da sintaxe, consulte <citerefentry><refentrytitle>group</refentrytitle><manvolnum>5</manvolnum></citerefentry>.</para>
+
+ <para>O superusuário pode modificar o <filename>/etc/group</filename> usando um editor de texto. Alternativamente, o <citerefentry><refentrytitle>pw</refentrytitle><manvolnum>8</manvolnum></citerefentry> pode ser usado para adicionar e editar grupos. Por exemplo, para adicionar um grupo chamado <systemitem class="groupname">teamtwo</systemitem> e confirmar se ele existe:</para>
+
+ <example>
+ <title>Adicionando um grupo usando o <citerefentry><refentrytitle>pw</refentrytitle><manvolnum>8</manvolnum></citerefentry></title>
+
+ <screen><prompt>#</prompt> <userinput>pw groupadd teamtwo</userinput>
+<prompt>#</prompt> <userinput>pw groupshow teamtwo</userinput>
+teamtwo:*:1100:</screen>
+ </example>
+
+ <para>Neste exemplo, <literal>1100</literal> é o <acronym>GID</acronym> de <systemitem class="groupname">teamtwo</systemitem>. No momento, <systemitem class="groupname">teamtwo</systemitem> não possui membros. Este comando adicionará <systemitem class="username">jru</systemitem> como um membro de <systemitem class="groupname">teamtwo</systemitem>.</para>
+
+ <example>
+ <title>Adicionando contas de usuários a um novo grupo usando o <citerefentry><refentrytitle>pw</refentrytitle><manvolnum>8</manvolnum></citerefentry></title>
+
+ <screen><prompt>#</prompt> <userinput>pw groupmod teamtwo -M jru</userinput>
+<prompt>#</prompt> <userinput>pw groupshow teamtwo</userinput>
+teamtwo:*:1100:jru</screen>
+ </example>
+
+ <para>O argumento para a opção <option>-M</option> é uma lista de usuários, delimitada por vírgulas, a serem adicionados a um novo grupo (vazio) ou para substituir os membros de um grupo existente. Para o usuário, essa associação ao grupo é diferente (e adicional ao) do grupo principal do usuário listado no arquivo de senha. Isso significa que o usuário não aparecerá como membro ao usar a opção <option>groupshow</option> com o <citerefentry><refentrytitle>pw</refentrytitle><manvolnum>8</manvolnum></citerefentry>, mas mostrará quando a informação é consultada via <citerefentry><refentrytitle>id</refentrytitle><manvolnum>1</manvolnum></citerefentry> ou uma ferramenta similar. Quando o <citerefentry><refentrytitle>pw</refentrytitle><manvolnum>8</manvolnum></citerefentry> é usado para adicionar um usuário a um grupo, ele apenas manipula o <filename>/etc/group</filename> e não tenta ler dados adicionais do <filename>/etc/passwd</filename>.</para>
+
+ <example>
+ <title>Adicionando um novo membro a um grupo usando o <citerefentry><refentrytitle>pw</refentrytitle><manvolnum>8</manvolnum></citerefentry></title>
+
+ <screen><prompt>#</prompt> <userinput>pw groupmod teamtwo -m db</userinput>
+<prompt>#</prompt> <userinput>pw groupshow teamtwo</userinput>
+teamtwo:*:1100:jru,db</screen>
+ </example>
+
+ <para>Neste exemplo, o argumento para <option>-m</option> é uma lista delimitada por vírgulas de usuários que devem ser adicionados ao grupo. Ao contrário do exemplo anterior, esses usuários são adicionados ao grupo e não substituem usuários existentes no grupo.</para>
+
+ <example>
+ <title>Usando o <citerefentry><refentrytitle>id</refentrytitle><manvolnum>1</manvolnum></citerefentry> para determinar a associação ao grupo</title>
+
+ <screen><prompt>%</prompt> <userinput>id jru</userinput>
+uid=1001(jru) gid=1001(jru) groups=1001(jru), 1100(teamtwo)</screen>
+ </example>
+
+ <para>Neste exemplo, <systemitem class="username">jru</systemitem> é um membro dos grupos <systemitem class="groupname">jru</systemitem> e <systemitem class="groupname">teamtwo</systemitem>.</para>
+
+ <para>Para obter mais informações sobre este comando e o formato do <filename>/etc/group</filename>, consulte <citerefentry><refentrytitle>pw</refentrytitle><manvolnum>8</manvolnum></citerefentry> e <citerefentry><refentrytitle>group</refentrytitle><manvolnum>5</manvolnum></citerefentry>.</para>
+ </sect2>
+ </sect1>
+
+ <sect1 xml:id="permissions">
+ <title>Permissões</title>
+
+ <indexterm><primary>UNIX</primary></indexterm>
+
+ <para>No FreeBSD, todo arquivo e diretório tem um conjunto associado de permissões e vários utilitários estão disponíveis para visualizar e modificar essas permissões. É necessário entender como as permissões funcionam para garantir que os usuários consigam acessar os arquivos que precisam e não consigam acessar os arquivos usados ​​pelo sistema operacional ou de propriedade de outros usuários.</para>
+
+ <para>Esta seção discute as permissões <trademark class="registered">UNIX</trademark> tradicionais usadas no FreeBSD. Para um controle de acesso ao sistema de arquivos mais refinado, consulte <xref linkend="fs-acl"/>.</para>
+
+ <para>No <trademark class="registered">UNIX</trademark>, as permissões básicas são atribuídas usando três tipos de acesso: ler, escrever e executar. Esses tipos de acesso são usados ​​para determinar o acesso do arquivo ao proprietário, ao grupo e a outros usuários do arquivo (todos os outros). As permissões de leitura, gravação e execução podem ser representadas como as letras <literal>r</literal>, <literal>w</literal> e <literal>x</literal>. Elas também podem ser representados como números binários, pois cada permissão está ativada ou desativada (<literal>0</literal>). Quando representada como um número, a ordem é sempre lida como <literal>rwx</literal>, onde <literal>r</literal> é ativado com o valor <literal>4</literal>, <literal>w</literal> é ativado com o valor <literal>2</literal> e <literal>x</literal> é ativado com o valor <literal>1</literal>.</para>
+
+ <para>A Tabela 4.1 resume as possíveis possibilidades numéricas e alfabéticas. Ao ler a coluna <quote>Listagem do Diretório</quote>, um <literal>-</literal> é usado para representar uma permissão que está desativada.</para>
+
+ <indexterm><primary>permissions</primary></indexterm>
+ <indexterm><primary>file permissions</primary></indexterm>
+
+ <table frame="none" pgwide="1">
+ <title>Permissões <trademark class="registered">UNIX</trademark></title>
+
+ <tgroup cols="3">
+ <thead>
+ <row>
+ <entry>Valor</entry>
+ <entry>Permissão</entry>
+ <entry>Listagem de diretório</entry>
+ </row>
+ </thead>
+
+ <tbody>
+ <row>
+ <entry>0</entry>
+ <entry>Sem leitura, sem escrita, sem execução</entry>
+ <entry><literal>---</literal></entry>
+ </row>
+
+ <row>
+ <entry>1</entry>
+ <entry>Sem leitura, sem escrita, execução</entry>
+ <entry><literal>--x</literal></entry>
+ </row>
+
+ <row>
+ <entry>2</entry>
+ <entry>Sem leitura, escrita, sem execução</entry>
+ <entry><literal>-w-</literal></entry>
+ </row>
+
+ <row>
+ <entry>3</entry>
+ <entry>Sem leitura, escrita, execução</entry>
+ <entry><literal>-wx</literal></entry>
+ </row>
+
+ <row>
+ <entry>4</entry>
+ <entry>Leitura, sem escrita, sem execução</entry>
+ <entry><literal>r--</literal></entry>
+ </row>
+
+ <row>
+ <entry>5</entry>
+ <entry>Leitura, sem escrita, execução</entry>
+ <entry><literal>r-x</literal></entry>
+ </row>
+
+ <row>
+ <entry>6</entry>
+ <entry>Leitura, escrita, sem execução</entry>
+ <entry><literal>rw-</literal></entry>
+ </row>
+
+ <row>
+ <entry>7</entry>
+ <entry>Leitura, escrita, execução</entry>
+ <entry><literal>rwx</literal></entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table>
+
+ <indexterm><primary><citerefentry><refentrytitle>ls</refentrytitle><manvolnum>1</manvolnum></citerefentry></primary></indexterm>
+ <indexterm><primary>directories</primary></indexterm>
+
+ <para>Use o argumento <option>-l</option> com o <citerefentry><refentrytitle>ls</refentrytitle><manvolnum>1</manvolnum></citerefentry> para exibir uma lista longa de diretórios que inclua uma coluna de informações sobre um permissões do arquivo para o proprietário, grupo e outros. Por exemplo, um <command>ls -l</command> em um diretório arbitrário pode mostrar:</para>
+
+ <screen><prompt>%</prompt> <userinput>ls -l</userinput>
+total 530
+-rw-r--r-- 1 root wheel 512 Sep 5 12:31 myfile
+-rw-r--r-- 1 root wheel 512 Sep 5 12:31 otherfile
+-rw-r--r-- 1 root wheel 7680 Sep 5 12:31 email.txt</screen>
+
+ <para>O primeiro caractere (mais à esquerda) da primeira coluna indica se esse arquivo é um arquivo normal, um diretório, um dispositivo de caractere especial, um soquete ou qualquer outro dispositivo especial de pseudo-arquivo. Neste exemplo, o <literal>-</literal> indica um arquivo regular. Os próximos três caracteres, <literal>rw-</literal> neste exemplo, fornecem as permissões para o proprietário do arquivo. Os próximos três caracteres, <literal>r--</literal>, fornecem as permissões para o grupo ao qual o arquivo pertence. Os três últimos caracteres, <literal>r--</literal>, dão as permissões para o resto do mundo. Um traço significa que a permissão está desativada. Neste exemplo, as permissões são definidas para que o proprietário possa ler e gravar no arquivo, o grupo possa ler o arquivo e o resto do mundo só possa ler o arquivo. De acordo com a tabela acima, as permissões para este arquivo seriam <literal>644</literal>, onde cada dígito representa uma das três partes da permissão do arquivo.</para>
+
+ <para>Como o sistema controla as permissões nos dispositivos? O FreeBSD trata a maioria dos dispositivos de hardware como um arquivo nos quais os programas podem abrir, ler e gravar dados. Esses arquivos de dispositivos especiais são armazenados em <filename>/dev/</filename>.</para>
+
+ <para>Diretórios também são tratados como arquivos. Eles tem permissões de leitura, gravação e execução. O bit executável de um diretório tem um significado ligeiramente diferente que nos arquivos. Quando um diretório é marcado como executável, isso significa que é possível mudar para esse diretório usando <citerefentry><refentrytitle>cd</refentrytitle><manvolnum>1</manvolnum></citerefentry>. Isso também significa que é possível acessar os arquivos dentro desse diretório, sujeito às permissões dos próprios arquivos.</para>
+
+ <para>Para executar uma listagem de diretórios, a permissão de leitura deve estar ativada no diretório. Para deletar um arquivo que se conhece o nome, é necessário ter permissões de escrita <emphasis>e</emphasis> execução no diretório que contém o arquivo.</para>
+
+ <para>Há mais bits de permissão, mas eles são usados ​​principalmente em circunstâncias especiais, como binários setuid e diretórios fixos. Para obter mais informações sobre permissões de arquivos e como configurá-las, consulte <citerefentry><refentrytitle>chmod</refentrytitle><manvolnum>1</manvolnum></citerefentry>.</para>
+
+ <sect2>
+ <info>
+ <title>Permissões simbólicas</title>
+
+ <authorgroup>
+ <author><personname> <firstname>Tom</firstname> <surname>Rhodes</surname> </personname> <contrib>Contribuído por </contrib></author>
+ </authorgroup>
+ </info>
+
+ <indexterm><primary>permissions</primary> <secondary>symbolic</secondary></indexterm>
+
+ <para>Permissões simbólicas usam caracteres em vez de valores octais para atribuir permissões a arquivos ou diretórios. Permissões simbólicas usam a sintaxe de (quem) (ação) (permissões), onde os seguintes valores estão disponíveis:</para>
+
+ <informaltable frame="none" pgwide="1">
+ <tgroup cols="3">
+ <thead>
+ <row>
+ <entry>Opção</entry>
+ <entry>Letra</entry>
+ <entry>Representa</entry>
+ </row>
+ </thead>
+
+ <tbody>
+ <row>
+ <entry>(quem)</entry>
+ <entry>u</entry>
+ <entry>Usuário</entry>
+ </row>
+
+ <row>
+ <entry>(quem)</entry>
+ <entry>g</entry>
+ <entry>Grupo</entry>
+ </row>
+
+ <row>
+ <entry>(quem)</entry>
+ <entry>o</entry>
+ <entry>Outros</entry>
+ </row>
+
+ <row>
+ <entry>(quem)</entry>
+ <entry>a</entry>
+ <entry>Todos (<quote>resto do mundo</quote>)</entry>
+ </row>
+
+ <row>
+ <entry>(açao)</entry>
+ <entry>+</entry>
+ <entry>Adiciona permissões</entry>
+ </row>
+
+ <row>
+ <entry>(açao)</entry>
+ <entry>-</entry>
+ <entry>Remove permissões</entry>
+ </row>
+
+ <row>
+ <entry>(açao)</entry>
+ <entry>=</entry>
+ <entry>Permissões definidas explicitamente</entry>
+ </row>
+
+ <row>
+ <entry>(permissões)</entry>
+ <entry>r</entry>
+ <entry>Leitura</entry>
+ </row>
+
+ <row>
+ <entry>(permissões)</entry>
+ <entry>w</entry>
+ <entry>Escrita</entry>
+ </row>
+
+ <row>
+ <entry>(permissões)</entry>
+ <entry>x</entry>
+ <entry>Execução</entry>
+ </row>
+
+ <row>
+ <entry>(permissões)</entry>
+ <entry>t</entry>
+ <entry>bit fixador</entry>
+ </row>
+
+ <row>
+ <entry>(permissões)</entry>
+ <entry>s</entry>
+ <entry>Set UID ou GID</entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </informaltable>
+
+ <para>Esses valores são usados ​​com o <citerefentry><refentrytitle>chmod</refentrytitle><manvolnum>1</manvolnum></citerefentry>, mas com letras em vez de números. Por exemplo, o comando a seguir impediria que outros usuários acessassem <replaceable>FILE</replaceable>:</para>
+
+ <screen><prompt>%</prompt> <userinput>chmod go= FILE</userinput></screen>
+
+ <para>Uma lista separada por vírgula pode ser fornecida quando mais de um conjunto de alterações em um arquivo precisar ser feito. Por exemplo, o comando a seguir remove as permissões de gravação do grupo e <quote>resto do mundo</quote> no <replaceable>FILE</replaceable> e adiciona as permissões de execução para todos:</para>
+
+ <screen><prompt>%</prompt> <userinput>chmod go-w,a+x <replaceable>FILE</replaceable></userinput></screen>
+
+<!--
+ <para>Most users will not notice this, but it should be pointed
+ out that using the octal method will only set or assign
+ permissions to a file; it does not add or delete them.</para>
+-->
+ </sect2>
+
+ <sect2>
+ <info>
+ <title>Flags de arquivos no FreeBSD</title>
+
+ <authorgroup>
+ <author><personname> <firstname>Tom</firstname> <surname>Rhodes</surname> </personname> <contrib>Contribuído por </contrib></author>
+ </authorgroup>
+ </info>
+
+ <para>Além das permissões de arquivo, o FreeBSD suporta o uso de <quote>flags de arquivo</quote>. Esses sinalizadores adicionam um nível a mais de segurança e controle sobre os arquivos, mas não nos diretórios. Com flags de arquivos, mesmo o <systemitem class="username">root</systemitem> pode ser impedido de remover ou alterar arquivos.</para>
+
+ <para>Os sinalizadores de arquivo são modificados usando o <citerefentry><refentrytitle>chflags</refentrytitle><manvolnum>1</manvolnum></citerefentry>. Por exemplo, para ativar o sinalizador undeletable do sistema no arquivo <filename>file1</filename>, use o seguinte comando:</para>
+
+ <screen><prompt>#</prompt> <userinput>chflags sunlink file1</userinput></screen>
+
+ <para>Para desabilitar o sinalizador undeletable do sistema, coloque um <quote>no</quote> na frente do <option>sunlink</option>:</para>
+
+ <screen><prompt>#</prompt> <userinput>chflags nosunlink file1</userinput></screen>
+
+ <para>Para visualizar os sinalizadores de um arquivo, use <option>-lo</option> com o <citerefentry><refentrytitle>ls</refentrytitle><manvolnum>1</manvolnum></citerefentry>:</para>
+
+ <screen><prompt>#</prompt> <userinput>ls -lo file1</userinput></screen>
+
+ <programlisting>-rw-r--r-- 1 trhodes trhodes sunlnk 0 Mar 1 05:54 file1</programlisting>
+
+ <para>Vários flags de arquivo só podem ser adicionados ou removidos pelo usuário <systemitem class="username">root</systemitem>. Em outros casos, o proprietário do arquivo pode definir seus sinalizadores. Consulte <citerefentry><refentrytitle>chflags</refentrytitle><manvolnum>1</manvolnum></citerefentry> e <citerefentry><refentrytitle>chflags</refentrytitle><manvolnum>2</manvolnum></citerefentry> para maiores informações.</para>
+ </sect2>
+
+ <sect2>
+ <info>
+ <title>As permissões <literal>setuid</literal>, <literal>setgid</literal> e <literal>sticky</literal></title>
+
+ <authorgroup>
+ <author><personname> <firstname>Tom</firstname> <surname>Rhodes</surname> </personname> <contrib>Contribuído por </contrib></author>
+ </authorgroup>
+ </info>
+
+ <para>Além das permissões já discutidas, existem três outras configurações específicas que todos os administradores devem conhecer. Eles são as permissões <literal>setuid</literal>, <literal>setgid</literal> e <literal>sticky</literal>.</para>
+
+ <para>Essas configurações são importantes para algumas operações <trademark class="registered">UNIX</trademark>, pois fornecem funcionalidades normalmente não concedidas a usuários normais. Para compreendê-los, a diferença entre o ID real de usuário e o ID efetivo de usuário deve ser explicada.</para>
+
+ <para>O ID de usuário real é o <acronym>UID</acronym> que inicia ou é o dono do processo. O ID de usuário efetivo é o <acronym>UID</acronym> do usuário com o qual o processo é executado. Por exemplo, o <citerefentry><refentrytitle>passwd</refentrytitle><manvolnum>1</manvolnum></citerefentry> é executado com o ID do usuário real quando um usuário altera sua senha. No entanto, para atualizar o banco de dados de senhas, o comando é executado como o ID efetivo do usuário <systemitem class="username">root</systemitem>. Isso permite que os usuários alterem suas senhas sem ver um erro <errorname>Permission Denied</errorname>.</para>
+
+ <para>A permissão setuid pode ser definida prefixando um conjunto de permissões com o número quatro (4), conforme mostrado no exemplo a seguir:</para>
+
+ <screen><prompt>#</prompt> <userinput>chmod 4755 suidexample.sh</userinput></screen>
+
+ <para>As permissões em <filename><replaceable>suidexample.sh</replaceable></filename> agora se parecem com o seguinte:</para>
+
+ <programlisting>-rwsr-xr-x 1 trhodes trhodes 63 Aug 29 06:36 suidexample.sh</programlisting>
+
+ <para>Observe que um <literal>s</literal> agora faz parte do conjunto de permissões designado para o proprietário do arquivo, substituindo o bit executável. Isso viabiliza utilitários que precisam de permissões elevadas, como o <citerefentry><refentrytitle>passwd</refentrytitle><manvolnum>1</manvolnum></citerefentry>.</para>
+
+ <note>
+ <para>A opção <literal>nosuid</literal> <citerefentry><refentrytitle>mount</refentrytitle><manvolnum>8</manvolnum></citerefentry> fará com que esses binários falhem silenciosamente sem alertar o usuário. Essa opção não é totalmente confiável, já que um wrapper <literal>nosuid</literal> pode contorná-la.</para>
+ </note>
+
+ <para>Para ver isso em tempo real, abra dois terminais. Em um deles, digite <command>passwd</command> como um usuário normal. Enquanto aguarda uma nova senha, verifique a tabela de processos e observe as informações de usuário do <citerefentry><refentrytitle>passwd</refentrytitle><manvolnum>1</manvolnum></citerefentry>:</para>
+
+ <para>No terminal A:</para>
+
+ <screen>Changing local password for trhodes
+Old Password:</screen>
+
+ <para>No terminal B:</para>
+
+ <screen><prompt>#</prompt> <userinput>ps aux | grep passwd</userinput></screen>
+
+ <screen>trhodes 5232 0.0 0.2 3420 1608 0 R+ 2:10AM 0:00.00 grep passwd
+root 5211 0.0 0.2 3620 1724 2 I+ 2:09AM 0:00.01 passwd</screen>
+
+ <para>Embora <citerefentry><refentrytitle>passwd</refentrytitle><manvolnum>1</manvolnum></citerefentry> seja executado como um usuário normal, ele está usando o <acronym>UID</acronym> do <systemitem class="username">root</systemitem>.</para>
+
+ <para>A permissão <literal>setgid</literal> executa a mesma função que a permissão <literal>setuid</literal>; exceto que altera as configurações do grupo. Quando um aplicativo ou utilitário é executado com essa configuração, ele recebe as permissões com base no grupo do arquivo, não no usuário que iniciou o processo.</para>
+
+ <para>Para definir a permissão <literal>setgid</literal> em um arquivo, execute o <citerefentry><refentrytitle>chmod</refentrytitle><manvolnum>1</manvolnum></citerefentry> com dois (2) no início:</para>
+
+ <screen><prompt>#</prompt> <userinput>chmod 2755 sgidexample.sh</userinput></screen>
+
+ <para>Na listagem a seguir, observe que o <literal>s</literal> está agora no campo designado para as configurações de permissão do grupo:</para>
+
+ <screen>-rwxr-sr-x 1 trhodes trhodes 44 Aug 31 01:49 sgidexample.sh</screen>
+
+ <note>
+ <para>Nestes exemplos, mesmo que o shell script em questão seja um arquivo executável, ele não será executado com um <acronym>EUID</acronym> diferente ou um ID de usuário efetivo. Isso ocorre porque os shell scripts podem não acessar as chamadas de sistema <citerefentry><refentrytitle>setuid</refentrytitle><manvolnum>2</manvolnum></citerefentry>.</para>
+ </note>
+
+ <para>Os bits de permissão <literal>setuid</literal> e <literal>setgid</literal> podem diminuir a segurança do sistema, permitindo permissões elevadas. A terceira permissão especial, o <literal>sticky bit</literal>, pode fortalecer a segurança de um sistema.</para>
+
+ <para>Quando o <literal>sticky bit</literal> é definido em um diretório, ele permite a exclusão de arquivos apenas pelo proprietário do arquivo. Isso é útil para impedir a exclusão de arquivos em diretórios públicos, como <filename>/tmp</filename>, por usuários que não possuem o arquivo. Para utilizar essa permissão, use o um (1) no início das permissões:</para>
+
+ <screen><prompt>#</prompt> <userinput>chmod 1777 /tmp</userinput></screen>
+
+ <para>A permissão <literal>sticky bit</literal> será exibida como um <literal>t</literal> no final do conjunto de permissões:</para>
+
+ <screen><prompt>#</prompt> <userinput>ls -al / | grep tmp</userinput></screen>
+
+ <screen>drwxrwxrwt 10 root wheel 512 Aug 31 01:49 tmp</screen>
+
+ </sect2>
+ </sect1>
+
+ <sect1 xml:id="dirstructure">
+ <title>Estrutura de Diretórios</title>
+
+ <indexterm><primary>directory hierarchy</primary></indexterm>
+
+ <para>Entender a hierarquia de diretórios do FreeBSD é fundamental para obter uma compreensão geral do sistema. O diretório mais importante é o root ou raiz ou <quote>/</quote>. Esse diretório é o primeiro montado no momento da inicialização e contém a base do sistema necessária para preparar o sistema operacional para a operação multi-usuário. O diretório raiz também contém pontos de montagem para outros sistemas de arquivos que são montados durante a transição para a operação multi-usuário.</para>
+
+ <para>Um ponto de montagem é um diretório no qual sistemas de arquivos adicionais podem ser disponibilizados em um sistema de arquivos principal (geralmente o sistema de arquivos raiz). Isso é descrito em <xref linkend="disk-organization"/>. Os pontos de montagem padrão incluem <filename>/usr/</filename>, <filename>/var/</filename>, <filename>/tmp/</filename>, <filename>/mnt/</filename> e <filename>/cdrom/</filename>. Esses diretórios são geralmente associados a entradas em <filename>/etc/fstab</filename>. Este arquivo é uma tabela de vários sistemas de arquivos e pontos de montagem e é lido pelo sistema. A maioria dos sistemas de arquivos em <filename>/etc/fstab</filename> é montada automaticamente no momento da inicialização do script <citerefentry><refentrytitle>rc</refentrytitle><manvolnum>8</manvolnum></citerefentry> a não ser que haja a opção <option>noauto</option>. Maiores detalhes em <xref linkend="disks-fstab"/>.</para>
+
+ <para>Uma descrição completa da hierarquia do sistema de arquivos está disponível em <citerefentry><refentrytitle>hier</refentrytitle><manvolnum>7</manvolnum></citerefentry>. A tabela a seguir fornece uma visão geral dos diretórios mais comuns.</para>
+
+ <para>
+ <informaltable frame="none" pgwide="1">
+ <tgroup cols="2">
+ <thead>
+ <row>
+ <entry>Diretório</entry>
+ <entry>Descrição</entry>
+ </row>
+ </thead>
+ <tbody valign="top">
+ <row>
+ <entry><filename>/</filename></entry>
+ <entry>Diretório raiz do sistema de arquivos.</entry>
+ </row>
+
+ <row>
+ <entry><filename>/bin/</filename></entry>
+ <entry>Utilitários de usuário fundamentais para ambientes mono e multi-usuário.</entry>
+ </row>
+
+ <row>
+ <entry><filename>/boot/</filename></entry>
+ <entry>Programas e arquivos de configuração usados ​​durante o bootstrap do sistema operacional.</entry>
+ </row>
+
+ <row>
+ <entry><filename>/boot/defaults/</filename></entry>
+ <entry>Arquivos de configuração de inicialização padrão. Consulte <citerefentry><refentrytitle>loader.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry> para maiores detalhes.</entry>
+ </row>
+
+ <row>
+ <entry><filename>/dev/</filename></entry>
+ <entry>Nós de dispositivo (device nodes). Consulte <citerefentry><refentrytitle>intro</refentrytitle><manvolnum>4</manvolnum></citerefentry> para detalhes.</entry>
+ </row>
+
+ <row>
+ <entry><filename>/etc/</filename></entry>
+ <entry>Arquivos de configuração do sistema e scripts.</entry>
+ </row>
+
+ <row>
+ <entry><filename>/etc/defaults/</filename></entry>
+ <entry>Arquivos padrão de configuração do sistema. Consulte <citerefentry><refentrytitle>rc</refentrytitle><manvolnum>8</manvolnum></citerefentry> para maiores detalhes.</entry>
+ </row>
+
+ <row>
+ <entry><filename>/etc/mail/</filename></entry>
+ <entry>Arquivos de configuração para agentes de transporte de mensagens, como o <citerefentry><refentrytitle>sendmail</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</entry>
+ </row>
+
+ <row>
+ <entry><filename>/etc/periodic/</filename></entry>
+ <entry>Scripts que são executados diariamente, semanalmente e mensalmente, por meio do <citerefentry><refentrytitle>cron</refentrytitle><manvolnum>8</manvolnum></citerefentry>. Consulte <citerefentry><refentrytitle>periodic</refentrytitle><manvolnum>8</manvolnum></citerefentry> para maiores detalhes.</entry>
+ </row>
+
+ <row>
+ <entry><filename>/etc/ppp/</filename></entry>
+ <entry>Arquivos de configuração do <citerefentry><refentrytitle>ppp</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</entry>
+ </row>
+
+ <row>
+ <entry><filename>/mnt/</filename></entry>
+ <entry>Diretório vazio comumente usado pelos administradores do sistema como um ponto de montagem temporário.</entry>
+ </row>
+
+ <row>
+ <entry><filename>/proc/</filename></entry>
+ <entry>Sistema de arquivos de processos. Consulte <citerefentry><refentrytitle>procfs</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>mount_procfs</refentrytitle><manvolnum>8</manvolnum></citerefentry> para detalhes.</entry>
+ </row>
+
+ <row>
+ <entry><filename>/rescue/</filename></entry>
+ <entry>Programas vinculados estaticamente para recuperação de emergência, conforme descrito em <citerefentry><refentrytitle>rescue</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</entry>
+ </row>
+
+ <row>
+ <entry><filename>/root/</filename></entry>
+ <entry>Diretório da conta <systemitem class="username">root</systemitem>.</entry>
+ </row>
+
+ <row>
+ <entry><filename>/sbin/</filename></entry>
+ <entry>Programas do sistema e utilitários de administração fundamentais para ambientes mono e multi-usuário.</entry>
+ </row>
+
+ <row>
+ <entry><filename>/tmp/</filename></entry>
+ <entry>Arquivos temporários que normalmente <emphasis>não</emphasis> são preservados em uma reinicialização do sistema. Um sistema de arquivos baseado em memória é frequentemente montado em <filename>/tmp</filename>. Isso pode ser automatizado usando as variáveis ​​relacionadas ao tmpmfs do <citerefentry><refentrytitle>rc.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry> ou com uma entrada em <filename>/etc/fstab</filename>; consulte <citerefentry><refentrytitle>mdmfs</refentrytitle><manvolnum>8</manvolnum></citerefentry> para maiores detalhes.</entry>
+ </row>
+
+ <row>
+ <entry><filename>/usr/</filename></entry>
+ <entry>A maioria dos utilitários e aplicativos do usuário.</entry>
+ </row>
+
+ <row>
+ <entry><filename>/usr/bin/</filename></entry>
+ <entry>Utilitários comuns, ferramentas de programação e aplicativos.</entry>
+ </row>
+
+ <row>
+ <entry><filename>/usr/include/</filename></entry>
+ <entry>Arquivos para "include" do C padrão.</entry>
+ </row>
+
+ <row>
+ <entry><filename>/usr/lib/</filename></entry>
+ <entry>Arquivos de biblioteca.</entry>
+ </row>
+
+
+ <row>
+ <entry><filename>/usr/libdata/</filename></entry>
+ <entry>Diversos arquivos de dados de utilitários.</entry>
+ </row>
+
+ <row>
+ <entry><filename>/usr/libexec/</filename></entry>
+ <entry>Daemons do sistema e utilitários do sistema executados por outros programas.</entry>
+ </row>
+
+ <row>
+ <entry><filename>/usr/local/</filename></entry>
+ <entry>Executáveis ​​e bibliotecas locais. Também é usado como o destino padrão para o framework do ports do FreeBSD. Dentro do <filename>/usr/local</filename>, o layout geral esboçado por <citerefentry><refentrytitle>hier</refentrytitle><manvolnum>7</manvolnum></citerefentry> para <filename>/usr</filename> deve ser usado. Exceções são o diretório man, que está diretamente sob <filename>/usr/local</filename> em vez de sob <filename>/usr/local/share</filename>, e a documentação do ports está em <filename>share/doc/<replaceable>port</replaceable></filename>.</entry>
+ </row>
+
+ <row>
+ <entry><filename>/usr/obj/</filename></entry>
+ <entry>Árvore de destino específica da arquitetura produzida pela construção da árvore <filename>/usr/src</filename>.</entry>
+ </row>
+
+ <row>
+ <entry><filename>/usr/ports/</filename></entry>
+ <entry>A Coleção de Ports do FreeBSD (opcional).</entry>
+ </row>
+
+ <row>
+ <entry><filename>/usr/sbin/</filename></entry>
+ <entry>Daemons do sistema e utilitários do sistema executados pelos usuários.</entry>
+ </row>
+
+ <row>
+ <entry><filename>/usr/share/</filename></entry>
+ <entry>Arquivos independentes de arquitetura.</entry>
+ </row>
+
+ <row>
+ <entry><filename>/usr/src/</filename></entry>
+ <entry>Arquivos do código-fonte do BSD.</entry>
+ </row>
+
+ <row>
+ <entry><filename>/var/</filename></entry>
+ <entry>Arquivos de log de múltiplos propósitos, temporários, transientes e de spool. Um sistema de arquivos baseado em memória às vezes é montado em <filename>/var</filename>. Isso pode ser automatizado usando as variáveis ​​relacionadas ao varmfs em <citerefentry><refentrytitle>rc.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry> ou com uma entrada em <filename>/etc/fstab</filename>; consulte <citerefentry><refentrytitle>mdmfs</refentrytitle><manvolnum>8</manvolnum></citerefentry> para maiores detalhes.</entry>
+ </row>
+
+ <row>
+ <entry><filename>/var/log/</filename></entry>
+ <entry>Diversos arquivos de log do sistema.</entry>
+ </row>
+
+ <row>
+ <entry><filename>/var/mail/</filename></entry>
+ <entry>Arquivos de caixa de correio do usuário.</entry>
+ </row>
+
+ <row>
+ <entry><filename>/var/spool/</filename></entry>
+ <entry>Diretórios de spooling de impressoras e sistemas de email.</entry>
+ </row>
+
+ <row>
+ <entry><filename>/var/tmp/</filename></entry>
+ <entry>Arquivos temporários que geralmente são preservados em uma reinicialização do sistema, a menos que <filename>/var</filename> seja um sistema de arquivos baseado em memória.</entry>
+ </row>
+
+ <row>
+ <entry><filename>/var/yp/</filename></entry>
+ <entry>Mapas de NIS.</entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </informaltable></para>
+ </sect1>
+
+ <sect1 xml:id="disk-organization">
+ <title>Organização dos Discos</title>
+
+ <para>A menor unidade de organização que o FreeBSD usa para encontrar arquivos é o nome do arquivo. Os nomes dos arquivos diferenciam maiúsculas de minúsculas, o que significa que <filename>readme.txt</filename> e <filename>README.TXT</filename> são dois arquivos distintos. O FreeBSD não usa a extensão de um arquivo para determinar se é um programa, documento ou alguma outra forma de dados.</para>
+
+ <para>Os arquivos são armazenados em diretórios. Um diretório pode não conter arquivos ou pode conter centenas deles. Um diretório também pode conter outros diretórios, permitindo uma hierarquia de diretórios entre si para organizar os dados.</para>
+
+ <para>Arquivos e diretórios são referenciados por meio de um nome, seguido por uma barra, <literal>/</literal>, seguido por qualquer outro nome de diretório que seja necessário. Por exemplo, se o diretório <filename>foo</filename> contiver um diretório <filename>bar</filename> que contenha o arquivo <filename>readme.txt</filename>, o nome completo ou <firstterm>caminho</firstterm>, para o arquivo é <filename>foo/bar/readme.txt</filename>. Observe que isso é diferente do <trademark class="registered">Windows</trademark> que usa <literal>\</literal> para separar nomes de arquivos e diretórios. O FreeBSD não usa letras de unidades ou outros nomes de unidades no caminho. Por exemplo, não se deve digitar <filename>c:\foo\bar\readme.txt</filename> no FreeBSD.</para>
+
+ <para>Diretórios e arquivos são armazenados em um sistema de arquivos. Cada sistema de arquivos contém exatamente um diretório no nível superior, chamado de <firstterm>diretório raiz</firstterm> para esse sistema de arquivos. Este diretório raiz pode conter outros diretórios. Um sistema de arquivos é designado como <firstterm>sistema de arquivos raiz</firstterm> ou <literal>/</literal>. Todos os outros sistemas de arquivos são <firstterm>montados</firstterm> no sistema de arquivos raiz. Não importa quantos discos estejam no sistema FreeBSD, cada diretório parece fazer parte do mesmo disco.</para>
+
+ <para>Considere três sistemas de arquivos, chamados <literal>A</literal>, <literal>B</literal> e <literal>C</literal>. Cada sistema de arquivos tem um diretório raiz, que contém dois outros diretórios, chamados <literal>A1</literal>, <literal>A2</literal> (e da mesma forma <literal>B1</literal>, <literal>B2</literal> e <literal>C1</literal>, <literal>C2</literal>).</para>
+
+ <para>Chame <literal>A</literal> de sistema de arquivos raiz. Se <citerefentry><refentrytitle>ls</refentrytitle><manvolnum>1</manvolnum></citerefentry> for usado para visualizar o conteúdo deste diretório, ele mostrará dois subdiretórios, <literal>A1</literal> e <literal>A2</literal>. A árvore de diretórios tem esta aparência:</para>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="basics/example-dir1"/>
+ </imageobject>
+
+ <textobject>
+ <literallayout class="monospaced"> /
+ |
+ +--- A1
+ |
+ `--- A2</literallayout>
+ </textobject>
+ </mediaobject>
+
+ <para>Um sistema de arquivos deve ser montado em um diretório em outro sistema de arquivos. Ao montar o sistema de arquivos <literal>B</literal> no diretório <literal>A1</literal>, o diretório raiz de <literal>B</literal> substitui <literal>A1</literal> e os diretórios em <literal>B</literal> aparecem de acordo:</para>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="basics/example-dir2"/>
+ </imageobject>
+
+ <textobject>
+ <literallayout class="monospaced"> /
+ |
+ +--- A1
+ | |
+ | +--- B1
+ | |
+ | `--- B2
+ |
+ `--- A2</literallayout>
+ </textobject>
+ </mediaobject>
+
+ <para>Todos os arquivos que estão nos diretórios <literal>B1</literal> ou <literal>B2</literal> podem ser alcançados com o caminho <filename>/A1/B1</filename> ou <filename>/A1/B2</filename>, conforme necessário. Todos os arquivos que estavam em <filename>/A1</filename> foram temporariamente ocultados. Eles reaparecerão se <literal>B</literal> for <firstterm> desmontado </firstterm> de <literal>A</literal>.</para>
+
+ <para>Se <literal>B</literal> tivesse sido montado em <literal>A2</literal>, o diagrama ficaria assim:</para>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="basics/example-dir3"/>
+ </imageobject>
+
+ <textobject>
+ <literallayout class="monospaced"> /
+ |
+ +--- A1
+ |
+ `--- A2
+ |
+ +--- B1
+ |
+ `--- B2</literallayout>
+ </textobject>
+ </mediaobject>
+
+ <para>e os caminhos seriam <filename>/A2/B1</filename> e <filename>/A2/B2</filename> respectivamente.</para>
+
+ <para>Os sistemas de arquivos podem ser montados uns em cima dos outros. Continuando o último exemplo, o sistema de arquivos <literal>C</literal> pode ser montado no topo do diretório <literal>B1</literal> no sistema de arquivos <literal>B</literal>, levando a esta disposição:</para>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="basics/example-dir4"/>
+ </imageobject>
+
+ <textobject>
+ <literallayout class="monospaced"> /
+ |
+ +--- A1
+ |
+ `--- A2
+ |
+ +--- B1
+ | |
+ | +--- C1
+ | |
+ | `--- C2
+ |
+ `--- B2</literallayout>
+ </textobject>
+ </mediaobject>
+
+ <para>Ou <literal>C</literal> poderia ser montado diretamente no sistema de arquivos <literal>A</literal>, sob o diretório <literal>A1</literal>:</para>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="basics/example-dir5"/>
+ </imageobject>
+
+ <textobject>
+ <literallayout class="monospaced"> /
+ |
+ +--- A1
+ | |
+ | +--- C1
+ | |
+ | `--- C2
+ |
+ `--- A2
+ |
+ +--- B1
+ |
+ `--- B2</literallayout>
+ </textobject>
+ </mediaobject>
+
+ <para>É perfeitamente possível ter um sistema de arquivos raiz grande e não precisar criar nenhum outro. Existem algumas desvantagens nessa abordagem e uma vantagem.</para>
+
+ <itemizedlist>
+ <title>Benefícios de vários sistemas de arquivos</title>
+
+ <listitem>
+ <para>Sistemas de arquivos diferentes podem ter diferentes <firstterm>opções de montagem</firstterm>. Por exemplo, o sistema de arquivos raiz pode ser montado somente para leitura, impossibilitando que os usuários excluam ou editem inadvertidamente um arquivo crítico. Separar sistemas de arquivos graváveis ​​pelo usuário, como <filename>/home</filename>, de outros sistemas de arquivos permite que eles sejam montados como <firstterm>nosuid</firstterm>. Essa opção impede que os bits <firstterm>suid</firstterm>/<firstterm>guid</firstterm> dos executáveis ​​armazenados no sistema de arquivos entrem em vigor, possivelmente melhorando a segurança.</para>
+ </listitem>
+
+ <listitem>
+ <para>O FreeBSD otimiza automaticamente o layout dos arquivos em um sistema de arquivos, dependendo de como o sistema de arquivos está sendo usado. Portanto, um sistema de arquivos que contém muitos arquivos pequenos que são gravados com freqüência terá uma otimização diferente para um que contenha menos arquivos maiores. Ao ter um sistema de arquivos maior, essa otimização é quebrada.</para>
+ </listitem>
+
+ <listitem>
+ <para>Os sistemas de arquivos do FreeBSD são robustos se a energia for perdida. No entanto, uma perda de energia em um ponto crítico ainda pode danificar a estrutura do sistema de arquivos. Ao dividir dados em vários sistemas de arquivos, é mais provável que o sistema ainda inicialize, facilitando a restauração do backup conforme necessário.</para>
+ </listitem>
+ </itemizedlist>
+
+ <itemizedlist>
+ <title>Benefício de um sistema de arquivos único</title>
+
+ <listitem>
+ <para>Os sistemas de arquivos são de tamanho fixo. Se você cria um sistema de arquivos quando instala o FreeBSD e dá a ele um tamanho específico, você pode descobrir mais tarde que precisa aumentar a partição. Isso não é facilmente realizado sem um backup, recriando o sistema de arquivos com o novo tamanho e, em seguida, restaurando os dados de backup.</para>
+
+ <important>
+ <para>O FreeBSD possui o comando <citerefentry><refentrytitle>growfs</refentrytitle><manvolnum>8</manvolnum></citerefentry>, que torna possível aumentar o tamanho do sistema de arquivos enquanto montado, removendo essa limitação.</para>
+ </important>
+ </listitem>
+ </itemizedlist>
+
+ <para>Os sistemas de arquivos estão contidos em partições. Isto não tem o mesmo significado que o uso comum do termo partição (por exemplo, a partição <trademark class="registered">MS-DOS</trademark>), por causa da herança <trademark class="registered">UNIX</trademark> do FreeBSD. Cada partição é identificada por uma letra de <literal>a</literal> até <literal>h</literal>. Cada partição pode conter apenas um sistema de arquivos, o que significa que os sistemas de arquivos geralmente são descritos por seu ponto de montagem típico na hierarquia do sistema de arquivos ou pela letra da partição em que estão contidos.</para>
+
+ <para>O FreeBSD também usa espaço em disco para <firstterm>espaço de swap</firstterm> para fornecer <firstterm>memória virtual</firstterm>. Isso permite que o seu computador se comporte como se tivesse muito mais memória do que realmente tem. Quando o FreeBSD fica sem memória, ele move alguns dos dados que não estão sendo usados ​​atualmente para o espaço de swap, e os move de volta (removendo alguma outra coisa) quando precisa.</para>
+
+ <para>Algumas partições possuem certas convenções associadas a elas.</para>
+
+ <informaltable frame="none" pgwide="1">
+ <tgroup cols="2">
+ <colspec colwidth="1*"/>
+ <colspec colwidth="5*"/>
+
+ <thead>
+ <row>
+ <entry>Partição</entry>
+ <entry>Convenção</entry>
+ </row>
+ </thead>
+
+ <tbody valign="top">
+ <row>
+ <entry><literal>a</literal></entry>
+ <entry>Normalmente contém o sistema de arquivos raiz.</entry>
+ </row>
+
+ <row>
+ <entry><literal>b</literal></entry>
+ <entry>Normalmente contém espaço de swap.</entry>
+ </row>
+
+ <row>
+ <entry><literal>c</literal></entry>
+ <entry>Normalmente o mesmo tamanho da slice que a envolve. Isso permite que os programas que precisem trabalhar na slice inteira, como um scanner de bloco defeituoso, trabalhem na partição <literal>c</literal>. Um sistema de arquivos normalmente não seria criado nessa partição.</entry>
+ </row>
+
+ <row>
+ <entry><literal>d</literal></entry>
+ <entry>A partição <literal>d</literal> costumava ter um significado especial associado a ela, mas isso foi descontinuado e <literal>d</literal> pode funcionar como qualquer partição normal.</entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </informaltable>
+
+ <para>Os discos no FreeBSD são divididos em slices, referidas no <trademark class="registered">Windows</trademark> como partições, numeradas de 1 a 4. Estas são então divididas em partições, que contêm sistemas de arquivos, e são rotuladas usando letras.</para>
+
+ <indexterm><primary>slices</primary></indexterm>
+ <indexterm><primary>partitions</primary></indexterm>
+ <indexterm><primary>dangerously dedicated</primary></indexterm>
+
+ <para>Os números das slices seguem o nome do dispositivo, prefixado com um <literal>s</literal>, começando em 1. Então <quote>da0<emphasis>s1</emphasis></quote> é a primeira slice na primeira unidade SCSI. Pode haver apenas quatro slices físicas em um disco, mas pode haver slices lógicas dentro de slices físicas do tipo apropriado. Essas slices estendidas são numeradas a partir de 5, então <quote>ada0<emphasis>s5</emphasis></quote> é a primeira slice estendida no primeiro disco SATA. Esses dispositivos são usados ​​por sistemas de arquivos que esperam ocupar uma slice.</para>
+
+ <para>Slices, unidades físicas <quote>perigosamente dedicadas</quote> e outras unidades contêm <firstterm>partições </firstterm>, que são representadas como letras de <literal>a</literal> até <literal>h</literal>. Esta letra é adicionada ao nome do dispositivo, então <quote>da0<emphasis>a</emphasis></quote> é a partição <literal>a</literal> na primeira unidade <literal>da</literal>, que é <quote>perigosamente dedicada</quote>. A <quote>ada1s3<emphasis>e</emphasis></quote> é a quinta partição na terceira slice da segunda unidade de disco SATA.</para>
+
+ <para>Finalmente, cada disco no sistema é identificado. Um nome de disco começa com um código que indica o tipo de disco e, em seguida, um número, indicando qual é o disco. Ao contrário das slices, a numeração de discos começa em 0. Códigos usuais são listados em <xref linkend="disks-naming"/>.</para>
+
+ <para>Ao se referir a uma partição, inclua o nome do disco, <literal>s</literal>, o número da slice, em seguida, a letra da partição. Exemplos são mostrados em <xref linkend="basics-disk-slice-part"/>.</para>
+
+ <para><xref linkend="basics-concept-disk-model"/> mostra um modelo conceitual de um layout de disco.</para>
+
+ <para>Ao instalar o FreeBSD, configure as slices de disco, crie partições dentro da slice a ser usada para o FreeBSD, crie um sistema de arquivos ou espaço de swap em cada partição e decida onde cada sistema de arquivos será montado.</para>
+
+ <table frame="none" pgwide="1" xml:id="disks-naming">
+ <title>Nomes de dispositivos de disco</title>
+
+ <tgroup cols="2">
+ <colspec colwidth="1*"/>
+ <colspec colwidth="5*"/>
+
+ <thead>
+ <row>
+ <entry>Tipo de drive</entry>
+ <entry>Nome do drive</entry>
+ </row>
+ </thead>
+
+ <tbody>
+ <row>
+ <entry>discos rígidos <acronym>SATA</acronym> e <acronym>IDE</acronym></entry>
+ <entry><literal>ada</literal> ou <literal>ad</literal></entry>
+ </row>
+
+ <row>
+ <entry>Discos rígidos <acronym>SCSI</acronym> e dispositivos de armazenamento <acronym>USB</acronym></entry>
+ <entry><literal>da</literal></entry>
+ </row>
+
+ <row>
+ <entry>drives de <acronym>CD-ROM</acronym> <acronym>SATA</acronym> e <acronym>IDE</acronym></entry>
+ <entry><literal>cd</literal> ou <literal>acd</literal></entry>
+ </row>
+
+ <row>
+ <entry>Unidades <acronym>SCSI</acronym> <acronym>CD-ROM</acronym></entry>
+ <entry><literal>cd</literal></entry>
+ </row>
+
+ <row>
+ <entry>Unidades de disquete</entry>
+ <entry><literal>fd</literal></entry>
+ </row>
+
+ <row>
+ <entry>Unidades de <acronym>CD-ROM</acronym> não-padrão variadas</entry>
+ <entry><literal>mcd</literal> para <acronym>CD-ROM</acronym> Mitsumi e <literal>scd</literal> para dispositivos de <acronym>CD-ROM</acronym> Sony</entry>
+ </row>
+
+ <row>
+ <entry>Unidades de fita <acronym>SCSI</acronym></entry>
+ <entry><literal>sa</literal></entry>
+ </row>
+
+ <row>
+ <entry>Unidades de fita <acronym>IDE</acronym></entry>
+ <entry><literal>ast</literal></entry>
+ </row>
+
+ <row>
+ <entry>Drives RAID</entry>
+ <entry>Exemplos incluem <literal>aacd</literal> para <trademark class="registered">Adaptec</trademark> AdvancedRAID, <literal>mlxd</literal> e <literal>mlyd</literal> para <trademark class="registered">Mylex</trademark>, <literal>amrd</literal> para AMI <trademark class="registered">MegaRAID</trademark>, <literal>idad</literal> para Compaq Smart RAID, <literal>twed</literal> para <trademark class="registered">3ware</trademark> RAID.</entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table>
+
+ <example xml:id="basics-disk-slice-part">
+ <title>Exemplo de Nomes de Disco, Slice e Partição</title>
+
+ <informaltable frame="none" pgwide="1">
+ <tgroup cols="2">
+ <colspec colwidth="1*"/>
+ <colspec colwidth="5*"/>
+
+ <thead>
+ <row>
+ <entry>Nome</entry>
+ <entry>Significado</entry>
+ </row>
+ </thead>
+
+ <tbody>
+ <row>
+ <entry><literal>ada0s1a</literal></entry>
+ <entry>A primeira partição (<literal>a</literal>) na primeira slice (<literal>s1</literal>) no primeiro disco <acronym>SATA</acronym> (<literal>ada0</literal>).</entry>
+ </row>
+
+ <row>
+ <entry><literal>da1s2e</literal></entry>
+ <entry>A quinta partição (<literal>e</literal>) na segunda slice (<literal>s2</literal>) no segundo disco SCSI (<literal>da1</literal>).</entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </informaltable>
+ </example>
+
+ <example xml:id="basics-concept-disk-model">
+ <title>Modelo conceitual de um disco</title>
+
+ <para>Este diagrama mostra a visão do FreeBSD do primeiro disco <acronym>SATA</acronym> conectado ao sistema. Suponha que o disco tenha 250 GB de tamanho e contenha uma slice de 80 GB e uma slice de 170 GB (partições <trademark class="registered">MS-DOS</trademark>). A primeira slice contém um sistema de arquivos <trademark class="registered">Windows</trademark> <acronym>NTFS</acronym>, <filename>C:</filename>, e a segunda fatia contém uma instalação do FreeBSD. Este exemplo de instalação do FreeBSD possui quatro partições de dados e uma partição swap.</para>
+
+ <para>Cada uma das quatro partições contém um sistema de arquivos. A partição <literal>a</literal> é usada para o sistema de arquivos raiz, <literal>d</literal> para <filename>/var/</filename>, <literal>e</literal> para <filename>/tmp/</filename> e <literal>f</literal> para <filename>/usr/</filename>. A letra de partição <literal>c</literal> refere-se à fatia inteira e, portanto, não é usada para partições comuns.</para>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="basics/disk-layout"/>
+ </imageobject>
+ </mediaobject>
+ </example>
+ </sect1>
+
+ <sect1 xml:id="mount-unmount">
+ <title>Montando e Desmontando Sistemas de Arquivos</title>
+
+ <para>O sistema de arquivos é melhor visualizado como uma árvore, enraizada, por assim dizer, em <filename>/</filename>. O <filename>/dev</filename>, <filename>/usr</filename>, e os outros diretórios no diretório raiz são ramos, que podem ter suas próprias ramificações, como <filename>/usr/local</filename> e assim por diante.</para>
+
+ <indexterm><primary>root file system</primary></indexterm>
+
+ <para>Existem várias razões para abrigar alguns desses diretórios em sistemas de arquivos separados. O <filename>/var</filename> contém os diretórios <filename>log/</filename>, <filename>spool/</filename> e vários tipos de arquivos temporários e, como tal, podem encher. Encher completamente o sistema de arquivos raiz não é uma boa ideia, então separar o <filename>/var</filename> do <filename>/</filename> geralmente é vantajoso.</para>
+
+ <para>Outro motivo comum para colocar determinadas árvores de diretório em outros sistemas de arquivos é se elas forem ser armazenadas em discos físicos separados ou se são discos virtuais separados, tal como montagens de NFS (Network File System), descritas em <xref linkend="network-nfs"/> ou unidades de CD-ROM.</para>
+
+ <sect2 xml:id="disks-fstab">
+ <title>O arquivo <filename>fstab</filename></title>
+
+ <indexterm><primary>file systems</primary> <secondary>mounted with fstab</secondary></indexterm>
+
+ <para>Durante o processo de inicialização (<xref linkend="boot"/>), os sistemas de arquivos listados em <filename>/etc/fstab</filename> são automaticamente montados, exceto pelas entradas que contêm <option>noauto</option>. Este arquivo contém entradas no seguinte formato:</para>
+
+ <programlisting><replaceable>device</replaceable> <replaceable>/mount-point</replaceable> <replaceable>fstype</replaceable> <replaceable>options</replaceable> <replaceable>dumpfreq</replaceable> <replaceable>passno</replaceable></programlisting>
+
+ <variablelist>
+ <varlistentry>
+ <term><literal>device</literal></term>
+ <listitem>
+ <para>Um nome de dispositivo existente, conforme explicado em <xref linkend="disks-naming"/>.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><literal>mount-point</literal></term>
+
+ <listitem>
+ <para>Um diretório existente no qual montar o sistema de arquivos.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><literal>fstype</literal></term>
+
+ <listitem>
+ <para>O tipo de sistema de arquivos para passar para o <citerefentry><refentrytitle>mount</refentrytitle><manvolnum>8</manvolnum></citerefentry>. O sistema de arquivos padrão do FreeBSD é o <literal>ufs</literal>.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><literal>options</literal></term>
+
+ <listitem>
+ <para><option>rw</option> para sistemas de arquivos de leitura/gravação, ou <option>ro</option> para sistemas de arquivos somente de leitura, seguidos por quaisquer outras opções que possam ser necessárias. Uma opção comum é <option>noauto</option> para sistemas de arquivos normalmente não montados durante a seqüência de inicialização. Outras opções estão listadas em <citerefentry><refentrytitle>mount</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><literal>dumpfreq</literal></term>
+
+ <listitem>
+ <para>Usado pelo <citerefentry><refentrytitle>dump</refentrytitle><manvolnum>8</manvolnum></citerefentry> para determinar quais sistemas de arquivos requerem o dump. Se o campo estiver faltando, um valor zero será assumido.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><literal>passno</literal></term>
+
+ <listitem>
+ <para>Determina a ordem em que os sistemas de arquivos devem ser verificados. Os sistemas de arquivos que devem ser ignorados devem ter seu <literal>passno</literal> definido como zero. O sistema de arquivos raiz precisa ser verificado antes de todo o restante e deve ter seu <literal>passno</literal> definido como um. Os outros sistemas de arquivos devem ser configurados para valores maiores que um. Se mais de um sistema de arquivos tiver o mesmo <literal>passno</literal>, o <citerefentry><refentrytitle>fsck</refentrytitle><manvolnum>8</manvolnum></citerefentry> tentará verificar os sistemas de arquivos em paralelo, se possível.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+
+ <para>Consulte <citerefentry><refentrytitle>fstab</refentrytitle><manvolnum>5</manvolnum></citerefentry> para obter maiores informações sobre o formato do <filename>/etc/fstab</filename> e suas opções.</para>
+ </sect2>
+
+ <sect2 xml:id="disks-mount">
+ <title>Usando o <citerefentry><refentrytitle>mount</refentrytitle><manvolnum>8</manvolnum></citerefentry></title>
+
+ <indexterm><primary>file systems</primary> <secondary>mounting</secondary></indexterm>
+
+ <para>Os sistemas de arquivos são montados usando o comando <citerefentry><refentrytitle>mount</refentrytitle><manvolnum>8</manvolnum></citerefentry>. A sintaxe mais básica é a seguinte:</para>
+
+ <informalexample>
+ <screen><prompt>#</prompt> <userinput>mount <replaceable>device</replaceable> <replaceable>mountpoint</replaceable></userinput></screen>
+ </informalexample>
+
+ <para>Este comando fornece muitas opções que são descritas em <citerefentry><refentrytitle>mount</refentrytitle><manvolnum>8</manvolnum></citerefentry>. As opções mais usadas incluem:</para>
+
+ <variablelist>
+ <title>Opções de montagem</title>
+
+ <varlistentry>
+ <term><option>-a</option></term>
+
+ <listitem>
+ <para>Monte todos os sistemas de arquivos listados em <filename>/etc/fstab</filename>, exceto aqueles marcados como <quote>noauto</quote>, excluídos pela opção <option>-t</option>, ou aqueles que já estão montados.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>-d</option></term>
+
+ <listitem>
+
+ <para>Faz tudo, exceto a chamada real do sistema de montagem. Esta opção é útil em conjunto com a opção <option>-v</option> para determinar o que o <citerefentry><refentrytitle>mount</refentrytitle><manvolnum>8</manvolnum></citerefentry> está realmente tentando fazer.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>-f</option></term>
+
+ <listitem>
+ <para>Força a montagem de um sistema de arquivos sujo (perigoso) ou a revogação do acesso de gravação ao fazer o downgrade do status de montagem de um sistema de arquivos de leitura/gravação para somente leitura.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>-r</option></term>
+
+ <listitem>
+ <para>Monta o sistema de arquivos somente para leitura. Isso é idêntico ao uso de <option>-o ro</option>.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>-t</option> <replaceable>fstype</replaceable></term>
+
+ <listitem>
+ <para>Monta o tipo de sistema de arquivos especificado ou monta somente sistemas de arquivos do tipo especificado, se <option>-a</option>estiver incluído. <quote>ufs</quote> é o tipo de sistema de arquivos padrão.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>-u</option></term>
+
+ <listitem>
+ <para>Atualiza as opções de montagem no sistema de arquivos.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>-v</option></term>
+
+ <listitem>
+ <para>Fica verboso (mostra mais informações).</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>-w</option></term>
+
+ <listitem>
+ <para>Monta o sistema de arquivos para leitura/gravação.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+
+ <para>As seguintes opções podem ser passadas para <option>-o</option> como uma lista separada por vírgula:</para>
+
+ <variablelist>
+ <varlistentry>
+ <term>nosuid</term>
+
+ <listitem>
+ <para>Não interprete flags setuid ou setgid no sistema de arquivos. Essa também é uma opção de segurança útil.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </sect2>
+
+ <sect2 xml:id="disks-umount">
+ <title>Usando o <citerefentry><refentrytitle>umount</refentrytitle><manvolnum>8</manvolnum></citerefentry></title>
+
+ <indexterm><primary>file systems</primary> <secondary>unmounting</secondary></indexterm>
+
+ <para>Para desmontar um sistema de arquivos use <citerefentry><refentrytitle>umount</refentrytitle><manvolnum>8</manvolnum></citerefentry>. Esse comando usa um parâmetro que pode ser um ponto de montagem, um nome do dispositivo, <option>-a</option> ou <option>-A</option>.</para>
+
+ <para>Todos os usos aceitam <option>-f</option> para forçar a desmontagem e <option>-v</option> para ver mais informações. Atenção, em geral <option>-f</option> não é uma boa opção, pois pode travar o computador ou danificar os dados no sistema de arquivos.</para>
+
+ <para>Para desmontar todos os sistemas de arquivos montados, ou apenas os tipos de sistema de arquivos listados após <option>-t</option>, use <option>-a</option> ou <option>-A</option>. Note que <option>-A</option> não tenta desmontar o sistema de arquivos raiz.</para>
+ </sect2>
+ </sect1>
+
+ <sect1 xml:id="basics-processes">
+ <title>Processos e Daemons</title>
+
+ <para>O FreeBSD é um sistema operacional multitarefa. Cada programa em execução a qualquer momento é chamado de <firstterm>processo</firstterm>. Todo comando em execução inicia pelo menos um novo processo e há vários processos de sistema que são executados pelo FreeBSD.</para>
+
+ <para>Cada processo é identificado exclusivamente por um número chamado <firstterm>ID do processo</firstterm> (<acronym>PID</acronym>). Semelhante aos arquivos, cada processo tem um proprietário e um grupo, e as permissões de proprietário e grupo são usadas para determinar quais arquivos e dispositivos o processo pode abrir. A maioria dos processos também possui um processo pai que os iniciou. Por exemplo, o shell é um processo e qualquer comando iniciado no shell é um processo que tem o shell como seu processo pai. A exceção é um processo especial chamado <citerefentry><refentrytitle>init</refentrytitle><manvolnum>8</manvolnum></citerefentry> que é sempre o primeiro processo a rodar na inicialização e que sempre possui um <acronym>PID</acronym> de <literal>1</literal>.</para>
+
+ <para>Alguns programas não são projetados para serem executados com a entrada contínua do usuário e desconectam do terminal na primeira oportunidade. Por exemplo, um servidor da Web responde a solicitações da Web, em vez de entradas do usuário. Servidores de email são outro exemplo desse tipo de aplicativo. Esses tipos de programas são conhecidos como <firstterm>daemons</firstterm>. O termo daemon vem da mitologia grega e representa uma entidade que não é boa nem má, e que invisivelmente realiza tarefas úteis. É por isso que o mascote do BSD é o daemon de aparência alegre com tênis e um tridente.</para>
+
+ <para>Existe uma convenção para nomear programas que normalmente são executados como daemons com um <quote>d</quote> à direita. Por exemplo, <application>BIND</application> é o Berkeley Internet Name Domain, mas o programa real que é executado é <command>named</command>. O programa do servidor da web <application>Apache</application> é o <command>httpd</command> e o daemon de spooling da impressora de linha é o <command>lpd</command>. Esta é apenas uma convenção de nomenclatura. Por exemplo, o daemon de correio principal para o aplicativo <application>Sendmail</application> é o <command>sendmail</command> e não <literal>maild</literal>.</para>
+
+ <sect2>
+ <title>Visualizando Processos</title>
+
+ <para>Para ver os processos em execução no sistema, use o <citerefentry><refentrytitle>ps</refentrytitle><manvolnum>1</manvolnum></citerefentry> ou o <citerefentry><refentrytitle>top</refentrytitle><manvolnum>1</manvolnum></citerefentry>. Para exibir uma lista estática dos processos em execução no momento, seus <acronym>PID</acronym>s, quanta memória eles estão usando e o comando com o qual eles foram iniciados, use o <citerefentry><refentrytitle>ps</refentrytitle><manvolnum>1</manvolnum></citerefentry>. Para exibir todos os processos em execução e atualizar a exibição a cada poucos segundos para ver interativamente o que o computador está fazendo, use o <citerefentry><refentrytitle>top</refentrytitle><manvolnum>1</manvolnum></citerefentry>.</para>
+
+ <para>Por padrão, o <citerefentry><refentrytitle>ps</refentrytitle><manvolnum>1</manvolnum></citerefentry> mostra apenas os comandos que estão em execução e que são de propriedade do usuário. Por exemplo:</para>
+
+ <screen><prompt>%</prompt> <userinput>ps</userinput>
+ PID TT STAT TIME COMMAND
+8203 0 Ss 0:00.59 /bin/csh
+8895 0 R+ 0:00.00 ps</screen>
+
+ <para>A saída do <citerefentry><refentrytitle>ps</refentrytitle><manvolnum>1</manvolnum></citerefentry> é organizada em várias colunas. A coluna <literal>PID</literal> exibe o ID do processo. Os <acronym>PID</acronym>s são atribuídos a partir de 1, vão até 99999, e depois retornam ao início. No entanto, um <acronym>PID</acronym> não é reatribuído se já estiver em uso. A coluna <literal>TT</literal> mostra o tty em que o programa está sendo executado e <literal>STAT</literal> mostra o estado do programa. <literal>TIME</literal> é a quantidade de tempo que o programa foi executado na CPU. Normalmente, esse não é o tempo decorrido desde que o programa foi iniciado, pois a maioria dos programas gasta muito tempo esperando que as coisas aconteçam antes que precisem gastar tempo na CPU. Finalmente, <literal>COMMAND</literal> é o comando que foi usado para iniciar o programa.</para>
+
+ <para>Várias opções diferentes estão disponíveis para alterar as informações exibidas. Um dos conjuntos mais úteis é <literal>auxww</literal>, onde <option>a</option> exibe informações sobre todos os processos em execução de todos os usuários, <option>u</option> exibe o nome de usuário e o uso de memória do proprietário do processo, <option>x</option> exibe informações sobre os processos do daemon e <option>ww</option> faz com que o <citerefentry><refentrytitle>ps</refentrytitle><manvolnum>1</manvolnum></citerefentry> exiba a linha de comando completa para cada processo, em vez de truncá-la para caber na tela quando é muito longa.</para>
+
+ <para>A saída do <citerefentry><refentrytitle>top</refentrytitle><manvolnum>1</manvolnum></citerefentry> é semelhante a abaixo:</para>
+
+ <screen><prompt>%</prompt> <userinput>top</userinput>
+last pid: 9609; load averages: 0.56, 0.45, 0.36 up 0+00:20:03 10:21:46
+107 processes: 2 running, 104 sleeping, 1 zombie
+CPU: 6.2% user, 0.1% nice, 8.2% system, 0.4% interrupt, 85.1% idle
+Mem: 541M Active, 450M Inact, 1333M Wired, 4064K Cache, 1498M Free
+ARC: 992M Total, 377M MFU, 589M MRU, 250K Anon, 5280K Header, 21M Other
+Swap: 2048M Total, 2048M Free
+
+ PID USERNAME THR PRI NICE SIZE RES STATE C TIME WCPU COMMAND
+ 557 root 1 -21 r31 136M 42296K select 0 2:20 9.96% Xorg
+ 8198 dru 2 52 0 449M 82736K select 3 0:08 5.96% kdeinit4
+ 8311 dru 27 30 0 1150M 187M uwait 1 1:37 0.98% firefox
+ 431 root 1 20 0 14268K 1728K select 0 0:06 0.98% moused
+ 9551 dru 1 21 0 16600K 2660K CPU3 3 0:01 0.98% top
+ 2357 dru 4 37 0 718M 141M select 0 0:21 0.00% kdeinit4
+ 8705 dru 4 35 0 480M 98M select 2 0:20 0.00% kdeinit4
+ 8076 dru 6 20 0 552M 113M uwait 0 0:12 0.00% soffice.bin
+ 2623 root 1 30 10 12088K 1636K select 3 0:09 0.00% powerd
+ 2338 dru 1 20 0 440M 84532K select 1 0:06 0.00% kwin
+ 1427 dru 5 22 0 605M 86412K select 1 0:05 0.00% kdeinit4</screen>
+
+ <para>A saída é dividida em duas seções. O cabeçalho (as primeiras cinco ou seis linhas) mostra o <acronym>PID</acronym> do último processo executado, as médias de carga do sistema (que são uma medida de quão ocupado o sistema está), o tempo de atividade do sistema desde a última reinicialização) e a hora atual. As outras informações no cabeçalho se relacionam com quantos processos estão sendo executados, quanta memória e swap estão em uso ​​e quanto tempo o sistema está gastando em diferentes estados da CPU. Se o módulo do sistema de arquivos <acronym>ZFS</acronym> foi carregado, uma linha <literal>ARC</literal> indica a quantidade de dados que foram lidos do cache de memória, e não do disco.</para>
+
+ <para>Abaixo do cabeçalho há uma série de colunas contendo informações semelhantes à saída do <citerefentry><refentrytitle>ps</refentrytitle><manvolnum>1</manvolnum></citerefentry>, como o <acronym>PID</acronym>, nome de usuário, quantidade de tempo de CPU e o comando que iniciou o processo. Por padrão, o <citerefentry><refentrytitle>top</refentrytitle><manvolnum>1</manvolnum></citerefentry> também exibe a quantidade de espaço de memória ocupada pelo processo. Isso é dividido em duas colunas: uma para o tamanho total e outra para o tamanho do residente. O tamanho total é a quantidade de memória que o aplicativo precisa e o tamanho de residente é o quanto ele está realmente usando agora.</para>
+
+ <para>O <citerefentry><refentrytitle>top</refentrytitle><manvolnum>1</manvolnum></citerefentry> atualiza automaticamente a exibição a cada dois segundos. Um intervalo diferente pode ser especificado com <option>-s</option>.</para>
+ </sect2>
+
+ <sect2 xml:id="basics-daemons">
+ <title>Matando Processos</title>
+
+ <para>Uma maneira de se comunicar com qualquer processo ou daemon em execução é enviar um <firstterm>sinal</firstterm> usando o <citerefentry><refentrytitle>kill</refentrytitle><manvolnum>1</manvolnum></citerefentry>. Existem vários sinais diferentes; alguns têm um significado específico, enquanto outros são descritos na documentação do comando. Um usuário só pode enviar um sinal para um processo que seja seu. Enviar um sinal para o processo de outra pessoa resultará em um erro de permissão negada. A exceção é o usuário <systemitem class="username">root</systemitem>, que pode enviar sinais para os processos de qualquer pessoa.</para>
+
+ <para>O sistema operacional também pode enviar um sinal para um processo. Se um aplicativo estiver mal escrito e tentar acessar a memória que não deveria, o FreeBSD enviará ao processo o sinal de <quote>Segmentation Violation</quote> (<literal>SIGSEGV</literal>). Se uma aplicação foi escrita para usar a chamada de sistema <citerefentry><refentrytitle>alarm</refentrytitle><manvolnum>3</manvolnum></citerefentry> para ser alertada após um período de tempo, será enviado o sinal <quote>Alarm</quote> (<literal>SIGALRM</literal>).</para>
+
+ <para>Dois sinais podem ser usados ​​para interromper um processo: <literal>SIGTERM</literal> e <literal>SIGKILL</literal>. <literal>SIGTERM</literal> é a maneira educada de eliminar um processo, pois o processo pode ler o sinal, fechar quaisquer arquivos de log que possam estar abertos e tentar terminar o que está fazendo antes de desligar. Em alguns casos, um processo pode ignorar <literal>SIGTERM</literal> se estiver no meio de alguma tarefa que não pode ser interrompida.</para>
+
+ <para><literal>SIGKILL</literal> não pode ser ignorado por um processo. Enviar um <literal>SIGKILL</literal> para um processo geralmente interromperá esse processo de uma vez por todas. <footnote><para>Existem algumas tarefas que não podem ser interrompidas. Por exemplo, se o processo estiver tentando ler de um arquivo que está em outro computador na rede e o outro estiver indisponível, o processo é considerado não <quote>interrompível</quote>. Eventualmente, o processo expirará, normalmente após dois minutos. Assim que esse tempo limite ocorrer, o processo será eliminado.</para></footnote>.</para>
+
+ <para>Outros sinais comumente usados ​​são <literal>SIGHUP</literal>, <literal>SIGUSR1</literal> e <literal>SIGUSR2</literal>. Como esses são sinais de finalidade geral, diferentes aplicativos responderão de maneira diferente.</para>
+
+ <para>Por exemplo, depois de alterar o arquivo de configuração de um servidor da Web, o servidor da Web precisa ser instruído a reler sua configuração. Reiniciar o <command>httpd</command> resultaria em um breve período de interrupção no servidor da web. Em vez disso, envie ao daemon o sinal <literal>SIGHUP</literal>. Esteja ciente de que diferentes daemons terão um comportamento diferente, então consulte a documentação do daemon para determinar se <literal>SIGHUP</literal> terá os resultados desejados.</para>
+
+ <procedure>
+ <title>Enviando um sinal para um processo</title>
+
+ <para>Este exemplo mostra como enviar um sinal para o <citerefentry><refentrytitle>inetd</refentrytitle><manvolnum>8</manvolnum></citerefentry>. O arquivo de configuração do <citerefentry><refentrytitle>inetd</refentrytitle><manvolnum>8</manvolnum></citerefentry> é o <filename>/etc/inetd.conf</filename> e o <citerefentry><refentrytitle>inetd</refentrytitle><manvolnum>8</manvolnum></citerefentry> irá reler este arquivo de configuração quando for enviado um <literal>SIGHUP</literal>.</para>
+
+ <step>
+ <para>Encontre o <acronym>PID</acronym> do processo para enviar o sinal usando <citerefentry><refentrytitle>pgrep</refentrytitle><manvolnum>1</manvolnum></citerefentry>. Neste exemplo, o <acronym>PID</acronym> do <citerefentry><refentrytitle>inetd</refentrytitle><manvolnum>8</manvolnum></citerefentry> é 198:</para>
+
+ <screen><prompt>%</prompt> <userinput>pgrep -l inetd</userinput>
+198 inetd -wW</screen>
+
+ </step>
+
+ <step>
+ <para>Use o <citerefentry><refentrytitle>kill</refentrytitle><manvolnum>1</manvolnum></citerefentry> para enviar o sinal. Como o <citerefentry><refentrytitle>inetd</refentrytitle><manvolnum>8</manvolnum></citerefentry> é de propriedade do <systemitem class="username">root</systemitem>, use o <citerefentry><refentrytitle>su</refentrytitle><manvolnum>1</manvolnum></citerefentry> para se tornar <systemitem class="username">root</systemitem> primeiro.</para>
+
+ <screen><prompt>%</prompt> <userinput>su</userinput>
+<prompt>Password:</prompt>
+<prompt>#</prompt> <userinput>/bin/kill -s HUP 198</userinput></screen>
+
+ <para>Como a maioria dos comandos <trademark class="registered">UNIX</trademark>, o <citerefentry><refentrytitle>kill</refentrytitle><manvolnum>1</manvolnum></citerefentry> não imprimirá nenhuma saída se for bem-sucedido. Se um sinal for enviado para um processo que não pertence ao usuário, a mensagem <errorname>kill: <replaceable>PID</replaceable>: Operation not permitted</errorname> será exibida. Errar o <acronym>PID</acronym> irá enviar o sinal para o processo errado, o que poderia ter resultados negativos, ou enviará o sinal para um <acronym>PID</acronym> que não esteja em uso no momento, resultando em o erro <errorname>kill: <replaceable>PID</replaceable>: No such process</errorname>.</para>
+
+ <note>
+ <title>Por que usar o <command>/bin/kill</command>?</title>
+
+ <para>Muitos shells fornecem o <command>kill</command> como um comando interno, o que significa que o shell enviará o sinal diretamente, em vez de executar o <filename>/bin/kill</filename>. Esteja ciente de que diferentes shells possuem uma sintaxe diferente para especificar o nome do sinal a ser enviado. Em vez de tentar aprender todos eles, pode ser mais simples especificar explicitamente o uso do <command>/bin/kill</command>.</para>
+ </note>
+ </step>
+ </procedure>
+
+ <para>Ao enviar outros sinais, substitua <literal>TERM</literal> ou <literal>KILL</literal> pelo nome do sinal.</para>
+
+ <important>
+ <para>Matar um processo aleatório no sistema é uma má ideia. Em particular, o <citerefentry><refentrytitle>init</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <acronym>PID</acronym> 1, é especial. Executar <command>/bin/kill -s KILL 1</command> é uma maneira rápida e não recomendada de desligar o sistema. <emphasis>Sempre</emphasis> verifique os argumentos do <citerefentry><refentrytitle>kill</refentrytitle><manvolnum>1</manvolnum></citerefentry> <emphasis>antes</emphasis> de pressionar a tecla <keycap>Enter</keycap>.</para>
+ </important>
+ </sect2>
+ </sect1>
+
+ <sect1 xml:id="shells">
+ <title>Shells</title>
+
+ <indexterm><primary>shells</primary></indexterm>
+ <indexterm><primary>command line</primary></indexterm>
+
+ <para>Um <firstterm>shell</firstterm> fornece uma interface de linha de comandos para interagir com o sistema operacional. Um shell recebe comandos do canal de entrada e os executa. Muitos shells fornecem funções incorporadas para ajudar nas tarefas diárias, como gerenciamento de arquivos, referenciamento de arquivos, edição de linha de comando, macros de comando e variáveis ​​de ambiente. O FreeBSD vem com vários shells, incluindo o shell Bourne (<citerefentry><refentrytitle>sh</refentrytitle><manvolnum>1</manvolnum></citerefentry>) e o shell C estendido (<citerefentry><refentrytitle>tcsh</refentrytitle><manvolnum>1</manvolnum></citerefentry>). Outros shells estão disponíveis na Coleção de Ports do FreeBSD, como o <command>zsh</command> e o <command>bash</command>.</para>
+
+ <para>O shell usado é realmente uma questão de gosto. Um programador C pode se sentir mais confortável com um shell semelhante ao C, como o <citerefentry><refentrytitle>tcsh</refentrytitle><manvolnum>1</manvolnum></citerefentry>. Um usuário <trademark class="registered">Linux</trademark> pode preferir o <command>bash</command>. Cada shell tem propriedades únicas que podem ou não funcionar com o ambiente de trabalho preferido de um usuário, e é por isso que existe a opção de qual shell usar.</para>
+
+ <para>Um recurso de shell comum é a conclusão do nome do arquivo. Depois que um usuário digita as primeiras letras de um comando ou nome de arquivo e pressiona a tecla <keycap>Tab</keycap>, o shell completa o restante do comando ou nome do arquivo. Considere dois arquivos chamados <filename>foobar</filename> e <filename>football</filename>. Para excluir <filename>foobar</filename>, o usuário pode digitar <command>rm foo</command> e pressionar a tecla <keycap>Tab</keycap> para completar o nome do arquivo.</para>
+
+ <para>Mas se o shell mostrar apenas <command>rm foo</command>. Não foi possível completar o nome do arquivo porque ambos <filename>foobar</filename> e <filename>football</filename> começam com <literal>foo</literal>. Algumas shells emitem um sinal sonoro ou mostram todas as opções se houver mais de um nome. O usuário deve digitar mais caracteres para identificar o nome do arquivo desejado. Digitar um <literal>t</literal> e pressionar a tecla <keycap>Tab</keycap> novamente é suficiente para permitir que o shell determine qual nome de arquivo é desejado e preencha o resto.</para>
+
+ <indexterm><primary>environment variables</primary></indexterm>
+
+ <para>Outra característica do shell é o uso de variáveis ​​de ambiente. As variáveis ​​de ambiente são um par de variável​​/chave armazenado no ambiente do shell. Esse ambiente pode ser lido por qualquer programa chamado pela shell e, portanto, contém muitas configurações de programas. <xref linkend="shell-env-vars"/> fornece uma lista de variáveis ​​de ambiente comuns e seus significados. Observe que os nomes das variáveis ​​de ambiente estão sempre em maiúsculas.</para>
+
+ <table xml:id="shell-env-vars" frame="none" pgwide="1">
+ <title>Variáveis ​​de Ambiente Comuns</title>
+
+ <tgroup cols="2">
+ <thead>
+ <row>
+ <entry>Variável</entry>
+ <entry>Descrição</entry>
+ </row>
+ </thead>
+
+ <tbody>
+ <row>
+ <entry><envar>USER</envar></entry>
+ <entry>Nome do usuário atual.</entry>
+ </row>
+
+ <row>
+ <entry><envar>PATH</envar></entry>
+ <entry>Lista de diretórios separados por dois pontos para pesquisa de binários (progamas).</entry>
+ </row>
+
+ <row>
+ <entry><envar>DISPLAY</envar></entry>
+ <entry>Nome de rede do display do <application>Xorg</application> para conexão, se disponível.</entry>
+ </row>
+
+ <row>
+ <entry><envar>SHELL</envar></entry>
+ <entry>O shell atual.</entry>
+ </row>
+
+ <row>
+ <entry><envar>TERM</envar></entry>
+
+ <entry>O nome do tipo de terminal do usuário. Usado para determinar os recursos do terminal.</entry>
+ </row>
+
+ <row>
+ <entry><envar>TERMCAP</envar></entry>
+
+ <entry>Acesso à base de dados dos códigos de escape do terminal para executar várias funções do terminal.</entry>
+ </row>
+
+ <row>
+ <entry><envar>OSTYPE</envar></entry>
+ <entry>Tipo de sistema operacional.</entry>
+ </row>
+
+ <row>
+ <entry><envar>MACHTYPE</envar></entry>
+ <entry>A arquitetura da CPU do sistema.</entry>
+ </row>
+
+ <row>
+ <entry><envar>EDITOR</envar></entry>
+ <entry>O editor de texto preferencial do usuário.</entry>
+ </row>
+
+ <row>
+ <entry><envar>PAGER</envar></entry>
+ <entry>O utilitário preferencial do usuário para visualização de texto página à página.</entry>
+ </row>
+
+ <row>
+ <entry><envar>MANPATH</envar></entry>
+ <entry>Lista de diretórios separados por dois pontos para pesquisar páginas de manual.</entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table>
+
+ <indexterm><primary>Bourne shells</primary></indexterm>
+
+ <para>O processo para definir uma variável de ambiente difere entre as shells. Em <citerefentry><refentrytitle>tcsh</refentrytitle><manvolnum>1</manvolnum></citerefentry> e <citerefentry><refentrytitle>csh</refentrytitle><manvolnum>1</manvolnum></citerefentry>, use <command>setenv</command> para definir variáveis ​​de ambiente. Em <citerefentry><refentrytitle>sh</refentrytitle><manvolnum>1</manvolnum></citerefentry> e no <command>bash</command>, use <command>export</command> para definir as variáveis ​​de ambiente atuais. Este exemplo define o <envar>EDITOR</envar> padrão para <filename>/usr/local/bin/emacs</filename> para a shell <citerefentry><refentrytitle>tcsh</refentrytitle><manvolnum>1</manvolnum></citerefentry>:</para>
+
+ <screen><prompt>%</prompt> <userinput>setenv EDITOR /usr/local/bin/emacs</userinput></screen>
+
+ <para>O comando equivalente para <command>bash</command> seria:</para>
+
+ <screen><prompt>%</prompt> <userinput>export EDITOR="/usr/local/bin/emacs"</userinput></screen>
+
+ <para>Para expandir uma variável de ambiente para ver sua configuração atual, digite um caracter <literal>$</literal> na frente de seu nome na linha de comando. Por exemplo, <command>echo $TERM</command> exibe a configuração atual do <envar>$TERM</envar>.</para>
+
+ <para>Shells tratam caracteres especiais, conhecidos como meta-caracteres, como representações especiais de dados. O meta-caracter mais comum é <literal>*</literal>, que representa qualquer número de caracteres em um nome de arquivo. Meta-caracteres podem ser usados ​​para executar a globalização de nomes de arquivos. Por exemplo, <command>echo *</command> é equivalente a <command>ls</command> porque a shell pega todos os arquivos que correspondem ao <literal>*</literal> e <command>echo</command> os lista na linha de comando.</para>
+
+ <para>Para evitar que a shell interprete um caractere especial, escape-o a partir da shell, iniciando-o com uma barra invertida (<literal>\</literal>). Por exemplo, <command>echo $TERM</command> imprime a configuração do terminal, enquanto <command>echo \$TERM</command> imprime literalmente a string <literal>$TERM</literal>.</para>
+
+ <sect2 xml:id="changing-shells">
+ <title>Alterando a Shell</title>
+
+ <para>A maneira mais fácil de alterar permanentemente a shell padrão é usar o <command>chsh</command>. A execução desse comando abrirá o editor que está configurado na variável de ambiente <envar>EDITOR</envar>, que por padrão é definido como o <citerefentry><refentrytitle>vi</refentrytitle><manvolnum>1</manvolnum></citerefentry>. Altere a linha <literal>Shell:</literal> para o caminho completo da nova shell.</para>
+
+ <para>Como alternativa, use <command>chsh -s</command>, que irá definir a shell especificada sem abrir um editor. Por exemplo, para alterar a shell para <command>bash</command>:</para>
+
+ <screen><prompt>%</prompt> <userinput>chsh -s /usr/local/bin/bash</userinput></screen>
+
+ <note>
+ <para>A nova shell <emphasis>deve</emphasis> estar presente no arquivo <filename>/etc/shells</filename>. Se a shell foi instalada a partir da coleção de ports do FreeBSD, como descrito em <xref linkend="ports"/>, ela deve ser adicionada automaticamente a este arquivo. Se estiver faltando, adicione-a usando este comando, substituindo o caminho pelo caminho da shell:</para>
+
+ <screen><prompt>#</prompt> <userinput>echo <replaceable>/usr/local/bin/bash</replaceable> &gt;&gt; /etc/shells</userinput></screen>
+
+ <para>Em seguida, execute novamente o <citerefentry><refentrytitle>chsh</refentrytitle><manvolnum>1</manvolnum></citerefentry>.</para>
+ </note>
+ </sect2>
+
+ <sect2>
+ <info>
+ <title>Técnicas Avançadas de Shell</title>
+
+ <authorgroup>
+ <author><personname><firstname>Tom</firstname> <surname>Rhodes</surname></personname><contrib>Escrito por</contrib></author>
+ </authorgroup>
+ </info>
+
+ <para>A shell <trademark class="registered">UNIX</trademark> não é apenas um interpretador de comandos, ela atua como uma ferramenta poderosa que permite aos usuários executar comandos, redirecionar sua saída, redirecionar
+ sua entrada e encadear comandos para melhorar o resultado final. Quando essa funcionalidade é mesclada com comandos incorporados, é fornecido ao usuário um ambiente que pode maximizar a eficiência.</para>
+
+ <para>O redirecionamento de shell é a ação de enviar a saída ou a entrada de um comando para outro comando ou para um arquivo. Para capturar a saída do comando <citerefentry><refentrytitle>ls</refentrytitle> <manvolnum>1</manvolnum></citerefentry>, por exemplo, em um arquivo, redirecione a saída:</para>
+
+ <screen><prompt>%</prompt> <userinput>ls &gt; directory_listing.txt</userinput></screen>
+
+ <para>O conteúdo do diretório agora será listado em <filename>directory_listing.txt</filename>. Alguns comandos podem ser usados ​​para ler entradas, como <citerefentry><refentrytitle>sort</refentrytitle><manvolnum>1</manvolnum></citerefentry>. Para classificar esta listagem, redirecione a entrada:</para>
+
+ <screen><prompt>%</prompt> <userinput>sort &lt; directory_listing.txt</userinput></screen>
+
+ <para>A entrada será classificada e colocada na tela. Para redirecionar essa entrada para outro arquivo, pode-se redirecionar a saída de <citerefentry><refentrytitle>sort</refentrytitle><manvolnum>1</manvolnum></citerefentry> misturando a direção:</para>
+
+ <screen><prompt>%</prompt> <userinput>sort &lt; directory_listing.txt &gt; sorted.txt</userinput></screen>
+
+ <para>Em todos os exemplos anteriores, os comandos estão executando o redirecionamento usando descritores de arquivos. Todo sistema <trademark class="registered">UNIX</trademark> possui descritores de arquivos, que incluem entrada padrão (stdin), saída padrão (stdout) e erro padrão (stderr). Cada um tem um propósito, onde a entrada pode ser um teclado ou um mouse, algo que fornece entrada. A saída pode ser uma tela ou papel em uma impressora. E erro seria tudo o que pode ser usado para mensagens de diagnóstico ou erro. Todos os três são considerados descritores de arquivos baseados em <acronym>I/O</acronym> e, às vezes, considerados fluxos.</para>
+
+ <para>Através do uso desses descritores, a shell permite que a saída e a entrada sejam passadas por vários comandos e redirecionadas para/ou a partir de um arquivo. Outro método de redirecionamento é o operador de pipe.</para>
+
+ <para>O operador pipe <trademark class="registered">UNIX</trademark>, <quote>|</quote> permite que a saída de um comando seja transmitida diretamente ou direcionada para outro programa. Basicamente, um pipe permite que a saída padrão de um comando seja passada como entrada padrão para outro comando, por exemplo:</para>
+
+ <screen><prompt>%</prompt> <userinput>cat directory_listing.txt | sort | less</userinput></screen>
+
+ <para>Nesse exemplo, o conteúdo de <filename>directory_listing.txt</filename> será classificado e a saída será transmitida para <citerefentry><refentrytitle>less</refentrytitle><manvolnum>1</manvolnum></citerefentry>. Isso permite que o usuário role pela saída em seu próprio ritmo e evite que ela role para fora da tela.</para>
+ </sect2>
+ </sect1>
+
+ <sect1 xml:id="editors">
+ <title>Editores de Texto</title>
+
+ <indexterm><primary>text editors</primary></indexterm>
+ <indexterm><primary>editors</primary></indexterm>
+
+ <para>A maioria das configurações do FreeBSD é feita através da edição de arquivos de texto. Por isso, é uma boa ideia familiarizar-se com um editor de texto. O FreeBSD vem com alguns como parte do sistema base, e muitos outros estão disponíveis na coleção do ports.</para>
+
+ <indexterm><primary><command>ee</command></primary></indexterm>
+ <indexterm><primary>editors</primary> <secondary><citerefentry><refentrytitle>ee</refentrytitle><manvolnum>1</manvolnum></citerefentry></secondary></indexterm>
+
+ <para>Um editor simples para aprender é o <citerefentry><refentrytitle>ee</refentrytitle><manvolnum>1</manvolnum></citerefentry>, que significa editor fácil (Ease Editor). Para iniciar este editor, digite <command>ee<replaceable>filename</replaceable></command> em que <replaceable>filename</replaceable> é o nome do arquivo a ser editado. Uma vez dentro do editor, todos os comandos para manipular as funções do editor são listados no topo da tela. O cursor (<literal>^</literal>) representa <keycap>Ctrl</keycap>, então <literal>^e</literal> expande para <keycombo action="simul"><keycap>Ctrl</keycap><keycap>e</keycap></keycombo>. Para sair do <citerefentry><refentrytitle>ee</refentrytitle><manvolnum>1</manvolnum></citerefentry>, pressione <keycap>Esc</keycap> e escolha a opção <quote>leave editor</quote> no menu principal. O editor pedirá para salvar as alterações, caso o arquivo tenha sido modificado.</para>
+
+ <indexterm><primary><command>vi</command></primary></indexterm>
+ <indexterm><primary>editors</primary></indexterm>
+ <indexterm><primary><command>emacs</command></primary></indexterm>
+
+ <para>O FreeBSD também vem com editores de texto mais poderosos, como o <citerefentry><refentrytitle>vi</refentrytitle><manvolnum>1</manvolnum></citerefentry>, como parte do sistema base. Outros editores, como <package>editors/emacs</package> e <package>editors/vim</package>, fazem parte da coleção do ports do FreeBSD. Esses editores oferecem mais funcionalidade às custas de serem mais complicados de aprender. Aprender um editor mais poderoso como o <application>vim</application> ou o <application>Emacs</application> pode economizar mais tempo a longo prazo.</para>
+
+ <para>Muitos aplicativos que modificam arquivos ou exigem entrada digitada abrirão automaticamente um editor de texto. Para alterar o editor padrão, defina a variável de ambiente <envar>EDITOR</envar> conforme descrito em <xref linkend="shells"/>.</para>
+ </sect1>
+
+ <sect1 xml:id="basics-devices">
+ <title>Dispositivos e nós de dispositivos</title>
+
+ <para>Um dispositivo é um termo usado principalmente para atividades relacionadas a hardware em um sistema, incluindo discos, impressoras, placas gráficas e teclados. Quando o FreeBSD inicializa, a maioria das mensagens de inicialização se refere aos dispositivos sendo detectados. Uma cópia das mensagens de inicialização é salva em <filename>/var/run/dmesg.boot</filename>.</para>
+
+ <para>Cada dispositivo tem um nome e um número de dispositivo. Por exemplo, <filename>ada0</filename> é o primeiro disco rígido SATA, enquanto <filename>kbd0</filename> representa o teclado.</para>
+
+ <para>A maioria dos dispositivos no FreeBSD deve ser acessada através de arquivos especiais chamados nós de dispositivos (device nodes), que estão localizados em <filename>/dev</filename>.</para>
+ </sect1>
+
+ <sect1 xml:id="basics-more-information">
+ <title>Páginas de Manual</title>
+
+ <indexterm><primary>manual pages</primary></indexterm>
+
+ <para>A documentação mais abrangente sobre o FreeBSD está na forma de páginas de manual. Quase todos os programas do sistema vêm com um breve manual de referência explicando a operação básica e os argumentos disponíveis. Estes manuais podem ser visualizados usando o <command>man</command>:</para>
+
+ <screen><prompt>%</prompt> <userinput>man <replaceable>command</replaceable></userinput></screen>
+
+ <para>onde <replaceable>command</replaceable> é o nome do comando para aprender. Por exemplo, para saber mais sobre o <citerefentry><refentrytitle>ls</refentrytitle><manvolnum>1</manvolnum></citerefentry>, digite:</para>
+
+ <screen><prompt>%</prompt> <userinput>man ls</userinput></screen>
+
+ <para>As páginas de manual são divididas em seções que representam o tipo de tópico. No FreeBSD, as seguintes seções estão disponíveis:</para>
+
+ <orderedlist>
+ <listitem>
+ <para>Comandos de usuário.</para>
+ </listitem>
+
+ <listitem>
+ <para>Chamadas do sistema e números de erro.</para>
+ </listitem>
+
+ <listitem>
+ <para>Funções nas bibliotecas C.</para>
+ </listitem>
+
+ <listitem>
+ <para>Drivers de dispositivos.</para>
+ </listitem>
+
+ <listitem>
+ <para>Formatos de arquivo.</para>
+ </listitem>
+
+ <listitem>
+ <para>Jogos e outras diversões.</para>
+ </listitem>
+
+ <listitem>
+ <para>Informações diversas.</para>
+ </listitem>
+
+ <listitem>
+ <para>Comandos de manutenção e operação do sistema.</para>
+ </listitem>
+
+ <listitem>
+ <para>Interfaces do kernel do sistema.</para>
+ </listitem>
+ </orderedlist>
+
+ <para>Em alguns casos, o mesmo tópico pode aparecer em mais de uma seção do manual online. Por exemplo, existe um comando de usuário <command>chmod</command> e uma chamada de sistema <function>chmod()</function>. Para informar ao <citerefentry><refentrytitle>man</refentrytitle><manvolnum>1</manvolnum></citerefentry> qual seção exibir, especifique o número da seção:</para>
+
+ <screen><prompt>%</prompt> <userinput>man 1 chmod</userinput></screen>
+
+ <para>Isto irá mostrar a página de manual do comando <citerefentry><refentrytitle>chmod</refentrytitle><manvolnum>1</manvolnum></citerefentry>. Referências a uma seção em particular do manual online são tradicionalmente colocadas entre parênteses na documentação escrita, então <citerefentry><refentrytitle>chmod</refentrytitle><manvolnum>1</manvolnum></citerefentry> refere-se ao comando do usuário e <citerefentry><refentrytitle>chmod</refentrytitle><manvolnum>2</manvolnum></citerefentry> refere-se à chamada do sistema.</para>
+
+ <para>Se o nome da página de manual for desconhecido, use <command>man -k</command> para procurar por palavras-chave nas descrições da página de manual:</para>
+
+ <screen><prompt>%</prompt> <userinput>man -k <replaceable>mail</replaceable></userinput></screen>
+
+ <para>Este comando exibe uma lista de comandos que possuem a palavra-chave <quote>mail</quote> em suas descrições. Isso é equivalente a usar o <citerefentry><refentrytitle>apropos</refentrytitle><manvolnum>1</manvolnum></citerefentry>.</para>
+
+ <para>Para ler as descrições de todos os comandos em <filename>/usr/bin</filename>, digite:</para>
+
+ <screen><prompt>%</prompt> <userinput>cd /usr/bin</userinput>
+<prompt>%</prompt> <userinput>man -f * | more</userinput></screen>
+
+ <para>ou</para>
+
+ <screen><prompt>%</prompt> <userinput>cd /usr/bin</userinput>
+<prompt>%</prompt> <userinput>whatis * |more</userinput></screen>
+
+ <sect2 xml:id="basics-info">
+ <title>Arquivos GNU Info</title>
+
+ <indexterm><primary>Free Software Foundation</primary></indexterm>
+
+ <para>O FreeBSD inclui vários aplicativos e utilitários produzidos pela Free Software Foundation (FSF). Além das páginas de manual, esses programas podem incluir documentos de hipertexto chamados arquivos <literal>info</literal>. Elas podem ser visualizadas usando <citerefentry><refentrytitle>info</refentrytitle><manvolnum>1</manvolnum></citerefentry> ou, se o <package>editors/emacs</package> estiver instalado, o modo info do <application>emacs</application>.</para>
+
+ <para>Para usar o <citerefentry><refentrytitle>info</refentrytitle><manvolnum>1</manvolnum></citerefentry>, digite:</para>
+
+ <screen><prompt>%</prompt> <userinput>info</userinput></screen>
+
+ <para>Para uma breve introdução, digite <literal>h</literal>. Para uma referência rápida de comandos, digite <literal>?</literal>.</para>
+ </sect2>
+ </sect1>
+</chapter>
+
+
+<!--
+ The FreeBSD Documentation Project
+
+ $FreeBSD$
+-->
+<chapter version="5.0" xml:id="ports">
+
+ <title>Instalando Aplicativos: Pacotes e Ports</title>
+
+ <sect1 xml:id="ports-synopsis">
+ <title>Sinopse</title>
+
+ <indexterm><primary>ports</primary></indexterm>
+ <indexterm><primary>packages</primary></indexterm>
+ <para>O FreeBSD tem uma grande coleção de ferramentas dentro do sistema base. Além disso, o FreeBSD fornece duas ferramentas complementares para a instalação de software de terceiros: o a Coleção de Ports do FreeBSD, para instalação a partir do código-fonte, e pacotes, para instalação de binários pré-compilados. Qualquer um dos métodos pode ser usado para instalar um software de uma mídia local ou da rede.</para>
+
+ <para>Depois de ler este capítulo, você saberá:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>A diferença entre pacotes binários e ports.</para>
+ </listitem>
+
+ <listitem>
+ <para>Como encontrar softwares de terceiros que tenham sido portados para o FreeBSD.</para>
+ </listitem>
+
+ <listitem>
+ <para>Como gerenciar pacotes binários usando o <application>pkg</application>.</para>
+ </listitem>
+
+ <listitem>
+ <para>Como compilar software de terceiros a partir do código-fonte usando a coleção de ports.</para>
+ </listitem>
+
+ <listitem>
+ <para>Como encontrar os arquivos instalados do aplicativo para configuração pós-instalação.</para>
+ </listitem>
+
+ <listitem>
+ <para>O que fazer se a instalação do software falhar.</para>
+ </listitem>
+ </itemizedlist>
+ </sect1>
+
+ <sect1 xml:id="ports-overview">
+ <title>Visão geral sobre a Instalação de Software</title>
+
+ <para>As etapas típicas para instalar um software de terceiros em um sistema <trademark class="registered">UNIX</trademark> incluem:</para>
+
+ <procedure>
+ <step>
+ <para>Encontre e baixe o software, que pode ser distribuído no formato de código-fonte ou como um binário.</para>
+ </step>
+
+ <step>
+ <para>Desempacote o software a partir do seu formato de distribuição. Tipicamente é um arquivo tarball compactado com um programa como <citerefentry><refentrytitle>compress</refentrytitle><manvolnum>1</manvolnum></citerefentry>,<citerefentry><refentrytitle>gzip</refentrytitle><manvolnum>1</manvolnum> </citerefentry>, <citerefentry><refentrytitle>bzip2</refentrytitle> <manvolnum>1</manvolnum></citerefentry> ou <citerefentry> <refentrytitle>xz</refentrytitle><manvolnum>1</manvolnum></citerefentry>.</para>
+ </step>
+
+ <step>
+ <para>Localize a documentação em <filename>INSTALL</filename>, <filename> README </filename> ou algum arquivo em um subdiretório <filename>doc/</filename> e leia sobre como instalar o software.</para>
+ </step>
+
+ <step>
+ <para>Se o software foi distribuído como código-fonte, compile-o. Isso pode envolver a edição de um <filename>Makefile</filename> ou a execução de um script <command>configure</command>.</para>
+ </step>
+
+ <step>
+ <para>Teste e instale o software.</para>
+ </step>
+ </procedure>
+
+ <para>Um <emphasis>port</emphasis> do FreeBSD é uma coleção de arquivos projetados para automatizar o processo de compilação de um aplicativo a partir do código-fonte. Os arquivos que compõem um port contêm todas as informações necessárias para baixar, extrair, corrigir, compilar e instalar automaticamente o aplicativo.</para>
+
+ <para>Se o software ainda não foi adaptado e testado no FreeBSD, o código-fonte pode precisar ser editado para que seja instalado e executado corretamente.</para>
+
+ <para>No entanto, mais de <link xlink:href="@@URL_RELPREFIX@@/ports/index.html">24.000</link> aplicativos de terceiros já foram portados para o FreeBSD. Quando possível, esses aplicativos são disponibilizados para download como <emphasis>pacotes</emphasis> pré-compilados.</para>
+
+ <para>Pacotes podem ser manipulados com os comandos de gerenciamento de pacotes do FreeBSD.</para>
+
+ <para>Ambos, pacotes e ports, entendem dependências. Se um pacote ou port for usado para instalar um aplicativo, e uma biblioteca dependente ainda não estiver instalada, a biblioteca será instalada automaticamente primeiro.</para>
+
+ <para>Um pacote do FreeBSD contém cópias pré-compiladas de todos os comandos para uma aplicação, assim como quaisquer arquivos de configuração e documentação. Um pacote pode ser manipulado com os comandos <citerefentry><refentrytitle>pkg</refentrytitle><manvolnum>8</manvolnum></citerefentry>, como <command>pkg install</command>.</para>
+
+ <para>Mesmo as duas tecnologias sendo semelhantes, os pacotes e os ports têm seus próprios pontos fortes. Selecione a tecnologia que melhor atenda aos seus requisitos para instalar um aplicativo específico.</para>
+
+ <itemizedlist>
+ <title>Benefícios dos Pacotes</title>
+
+ <listitem>
+ <para>Um tarball compactado de um pacote geralmente é menor que o tarball compactado que contém o código-fonte do aplicativo.</para>
+ </listitem>
+
+ <listitem>
+ <para>Pacotes não requerem tempo de compilação. Para aplicativos grandes, como o <application>Mozilla</application>, <application>KDE</application> ou <application>GNOME</application>, isso pode ser importante em um sistema lento.</para>
+ </listitem>
+
+ <listitem>
+ <para>Pacotes não requerem nenhum entendimento do processo envolvido na compilação de software no FreeBSD.</para>
+ </listitem>
+ </itemizedlist>
+
+ <itemizedlist>
+ <title>Benefícios dos Ports</title>
+
+ <listitem>
+ <para>Os pacotes são normalmente compilados com opções conservadoras porque eles precisam ser executados no número máximo de sistemas. Ao compilar a partir do port, podem-se alterar as opções de compilação.</para>
+ </listitem>
+
+ <listitem>
+ <para>Alguns aplicativos têm opções em tempo de compilação relacionadas a quais recursos estão instalados. Por exemplo, o <application>Apache</application> pode ser configurado com uma ampla variedade de diferentes opções internas.</para>
+
+ <para>Em alguns casos, vários pacotes existirão para o mesmo aplicativo para especificar determinadas configurações. Por exemplo, o <application>Ghostscript</application> está disponível como um pacote <filename>ghostscript</filename> e um pacote <filename>ghostscript-nox11</filename>, dependendo se o <application>Xorg</application> está instalado ou não. Criar vários pacotes rapidamente se torna impossível se um aplicativo tiver mais de uma ou duas opções diferentes de tempo de compilação.</para>
+ </listitem>
+
+ <listitem>
+ <para>As condições de licenciamento de alguns softwares proíbem sua distribuição em binário. Tais softwares devem ser distribuídos como código-fonte o qual deve ser compilado pelo usuário final.</para>
+ </listitem>
+
+ <listitem>
+ <para>Algumas pessoas não confiam em distribuições binárias ou preferem ler o código-fonte para procurar possíveis problemas.</para>
+ </listitem>
+
+ <listitem>
+ <para>O código-fonte é necessário para aplicar patches personalizados.</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>Para acompanhar a atualização dos ports, inscreva-se na <link xlink:href="http://lists.FreeBSD.org/mailman/listinfo/freebsd-ports">lista de discussão dos ports do FreeBSD </link> e no link <link xlink:href="http://lists.FreeBSD.org/mailman/listinfo/freebsd-ports-bugs">Lista de discussão de bugs no FreeBSD</link>.</para>
+
+ <warning>
+ <para>Antes de instalar qualquer aplicativo, verifique <link xlink:href="https://vuxml.freebsd.org/"/> para questões de segurança relacionadas ao aplicativo ou digite <command>pkg audit -F</command> para verificar todas as instâncias instaladas aplicativos para vulnerabilidades conhecidas.</para>
+ </warning>
+
+ <para>O restante deste capítulo explica como usar pacotes e ports para instalar e gerenciar software de terceiros no FreeBSD.</para>
+ </sect1>
+
+ <sect1 xml:id="ports-finding-applications">
+ <title>Encontrando Software</title>
+
+ <para>A lista de aplicativos disponíveis do FreeBSD está crescendo o tempo todo. Existem várias maneiras de encontrar softwares para instalar:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>O site do FreeBSD mantém uma lista atualizada e pesquisável de todos os aplicativos disponíveis, em <link xlink:href="@@URL_RELPREFIX@@/ports/index.html">https://www.FreeBSD.org/ ports/</link>. Os ports podem ser pesquisados por nome do aplicativo ou por categoria de software.</para>
+ </listitem>
+
+ <listitem>
+ <indexterm><primary>FreshPorts</primary></indexterm>
+
+ <para>Dan Langille mantém o <link xlink:href="http://www.FreshPorts.org/">FreshPorts.org</link>, que fornece um utilitário de pesquisa abrangente e também rastreia alterações nos aplicativos da Coleção de Ports. Os usuários registrados podem criar uma lista de observação personalizada para receber um e-mail automatizado quando seus ports sendo monitorados forem atualizados.</para>
+ </listitem>
+
+ <listitem>
+ <indexterm><primary>SourceForge</primary></indexterm>
+
+ <para>Se encontrar um aplicativo específico se tornar desafiador, tente pesquisar um site como <link xlink:href="http://www.sourceforge.net/">SourceForge.net</link> ou <link xlink:href="http://www.github.com/">GitHub.com</link> então volte no <link xlink:href="@@URL_RELPREFIX@@/ports/index.html">site do FreeBSD</link> para ver se o aplicativo foi portado.</para>
+ </listitem>
+
+ <listitem>
+ <indexterm><primary>pkg</primary> <secondary>search</secondary></indexterm>
+
+ <para xml:id="pkg-search">Para pesquisar o repositório de pacotes binários por um aplicativo:</para>
+
+ <screen><prompt>#</prompt> <userinput>pkg search <replaceable>subversion</replaceable></userinput>
+git-subversion-<replaceable>1.9.2</replaceable>
+java-subversion-<replaceable>1.8.8_2</replaceable>
+p5-subversion-<replaceable>1.8.8_2</replaceable>
+py27-hgsubversion-<replaceable>1.6</replaceable>
+py27-subversion-<replaceable>1.8.8_2</replaceable>
+ruby-subversion-<replaceable>1.8.8_2</replaceable>
+subversion-<replaceable>1.8.8_2</replaceable>
+subversion-book-<replaceable>4515</replaceable>
+subversion-static-<replaceable>1.8.8_2</replaceable>
+subversion16-<replaceable>1.6.23_4</replaceable>
+subversion17-<replaceable>1.7.16_2</replaceable></screen>
+
+ <para>Os nomes dos pacotes incluem o número da versão e, no caso de ports baseados em python, o número da versão do pacote python sobre o qual o pacote foi compilado. Alguns ports também possuem várias versões disponíveis. No caso do <application>Subversion</application>, existem diferentes versões disponíveis, bem como diferentes opções de compilação. Neste caso, a versão estaticamente vinculada do <application>Subversion</application>. Ao indicar qual pacote instalar, é melhor especificar o aplicativo pela origem do port, que é o caminho na árvore de ports. Repita o <command>pkg search</command> com <option>-o</option> para listar a origem de cada pacote:</para>
+
+ <screen><prompt>#</prompt> <userinput>pkg search -o <replaceable>subversion</replaceable></userinput>
+devel/git-subversion
+java/java-subversion
+devel/p5-subversion
+devel/py-hgsubversion
+devel/py-subversion
+devel/ruby-subversion
+devel/subversion16
+devel/subversion17
+devel/subversion
+devel/subversion-book
+devel/subversion-static</screen>
+
+ <para>Pesquisar por shell globs, expressões regulares, correspondência exata, por descrição ou qualquer outro campo no banco de dados do repositório também é suportado pelo <command>pkg search</command>. Depois de instalar o <package>ports-mgmt/pkg</package> ou o <package>ports-mgmt/pkg-devel</package>, veja <citerefentry><refentrytitle>pkg-search</refentrytitle><manvolnum>8</manvolnum></citerefentry> para maiores detalhes.</para>
+ </listitem>
+
+ <listitem>
+ <para>Se a Coleção de Ports já estiver instalada, existem vários métodos para consultar a versão local da árvore de ports. Para descobrir em qual categoria um port está, digite <command>whereis<replaceable> file </replaceable></command>, onde <replaceable>file</replaceable> é o programa a ser instalado:</para>
+
+ <screen><prompt>#</prompt> <userinput>whereis lsof</userinput>
+lsof: /usr/ports/sysutils/lsof</screen>
+
+ <para>Como alternativa, uma declaração <citerefentry><refentrytitle>echo</refentrytitle><manvolnum>1</manvolnum></citerefentry> pode ser usada:</para>
+
+ <screen><prompt>#</prompt> <userinput>echo /usr/ports/*/*lsof*</userinput>
+/usr/ports/sysutils/lsof</screen>
+
+ <para>Observe que isso também retornará todos os arquivos correspondentes baixados no diretório <filename>/usr/ports/distfiles</filename>.</para>
+ </listitem>
+
+ <listitem>
+ <para>Outra maneira de encontrar software é usando o mecanismo de pesquisa integrado da Coleção de Ports. Para usar o recurso de pesquisa, <application>cd</application> para <filename>/usr/ports</filename>, execute <command>make search name=program-name</command> onde <replaceable>program-name</replaceable> é o nome do software. Por exemplo, para procurar por <command>lsof</command>:</para>
+
+ <screen><prompt>#</prompt> <userinput>cd /usr/ports</userinput>
+<prompt>#</prompt> <userinput>make search name=lsof</userinput>
+Port: lsof-4.88.d,8
+Path: /usr/ports/sysutils/lsof
+Info: Lists information about open files (similar to fstat(1))
+Maint: ler@lerctr.org
+Index: sysutils
+B-deps:
+R-deps: </screen>
+
+ <tip>
+ <para>O mecanismo de pesquisa interna usa um arquivo de informações de índice. Se uma mensagem indicar que o <filename>INDEX</filename> é necessário, execute <command>make fetchindex</command> para baixar o arquivo de índice atual. Com o <filename>INDEX</filename> presente, o <command>make search</command> poderá realizar a pesquisa solicitada.</para>
+ </tip>
+
+ <para>A linha <quote>Path:</quote> indica onde encontrar o port.</para>
+
+ <para>Para receber menos informações, use o recurso <command>quicksearch</command>:</para>
+
+ <screen><prompt>#</prompt> <userinput>cd /usr/ports</userinput>
+<prompt>#</prompt> <userinput>make quicksearch name=lsof</userinput>
+Port: lsof-4.88.d,8
+Path: /usr/ports/sysutils/lsof
+Info: Lists information about open files (similar to fstat(1))</screen>
+
+ <para>Para uma busca mais aprofundada, use o <command>make search key=<replaceable>string</replaceable></command> ou o <command>make quicksearch key=<replaceable>string</replaceable></command>, onde <replaceable>string</replaceable> é algum texto para procurar. O texto pode estar em comentários, descrições ou dependências para encontrar ports relacionados a um assunto em particular quando o nome do programa é desconhecido.</para>
+
+ <para>Ao usar <buildtarget>pesquisa</buildtarget> ou <buildtarget>pesquisa rápida</buildtarget>, a cadeia de pesquisa não diferencia maiúsculas de minúsculas. Procurar por <quote>LSOF</quote> produzirá os mesmos resultados que procurar por <quote>lsof</quote>.</para>
+ </listitem>
+ </itemizedlist>
+ </sect1>
+
+ <sect1 xml:id="pkgng-intro">
+ <title>Usando o <application>pkg</application> para o gerenciamento de pacotes binários</title>
+
+ <para>O <application>pkg</application> é o substituto da próxima geração para as tradicionais ferramentas de gerenciamento de pacotes do FreeBSD, oferecendo muitos recursos que tornam o processamento de pacotes binários mais rápido e fácil.</para>
+
+ <para>Para sites que desejam apenas usar pacotes binários pré-construídos a partir dos espelhos do FreeBSD, o gerenciamento de pacotes com <application>pkg</application> pode ser suficiente.</para>
+
+ <para>No entanto, para aqueles que optarem por compilar suas aplicações a partir do código-fonte ou que utilizarem seus próprios repositórios, será necessária uma <link linkend="ports-upgrading-tools">ferramenta de gerenciamento de ports</link> separada.</para>
+
+ <para>Como o <application>pkg</application> só funciona com pacotes binários, ele não é um substituto para tais ferramentas. Estas ferramentas podem ser usadas para instalar o software a partir de pacotes binários e da Coleção do Ports, enquanto o <application>pkg</application> instala apenas pacotes binários.</para>
+
+ <sect2 xml:id="pkgng-initial-setup">
+ <title>Introdução ao <application>pkg</application></title>
+
+ <para>O FreeBSD inclui um utilitário de bootstrap que pode ser usado para baixar e instalar o <application>pkg</application> e suas páginas de manual. Este utilitário foi projetado para funcionar com versões do FreeBSD começando com 10.<replaceable>X</replaceable>.</para>
+
+ <note>
+ <para>Nem todas as versões e arquiteturas do FreeBSD suportam este processo de bootstrap. A lista atual está em <link xlink:href="https://pkg.freebsd.org/"/>. Para outros casos, o <application>pkg</application> deve ser instalado a partir da coleção de ports ou como um pacote binário.</para>
+
+ </note>
+
+ <para>Para inicializar o sistema, execute:</para>
+
+ <screen><prompt>#</prompt> <userinput>/usr/sbin/pkg</userinput></screen>
+
+ <para>Você deve ter uma conexão com a Internet para que o processo de inicialização seja bem-sucedido.</para>
+
+ <para>Caso contrário, para instalar o port, execute:</para>
+
+ <screen><prompt>#</prompt> <userinput>cd /usr/ports/ports-mgmt/pkg</userinput>
+<prompt>#</prompt> <userinput>make</userinput>
+<prompt>#</prompt> <userinput>make install clean</userinput></screen>
+
+ <para>Ao atualizar um sistema existente que usava originalmente as ferramentas pkg_ * mais antigas, o banco de dados deve ser convertido para o novo formato, para que as novas ferramentas estejam cientes dos pacotes já instalados. Uma vez que o <application>pkg</application> tenha sido instalado, o banco de dados de pacotes deve ser convertido do formato tradicional para o novo formato, executando este comando:</para>
+
+ <screen><prompt>#</prompt> <userinput>pkg2ng</userinput></screen>
+
+ <note><para>Esta etapa não é necessária para novas instalações que ainda não possuem nenhum software de terceiros instalado.</para></note>
+
+ <important>
+ <para>Este passo não é reversível. Uma vez que o banco de dados de pacotes tenha sido convertido para o formato <application>pkg</application>, as ferramentas tradicionais <literal> pkg _ * </literal> não devem mais ser usadas.</para>
+ </important>
+
+ <note>
+ <para>A conversão do banco de dados de pacotes pode emitir erros conforme o conteúdo é convertido para a nova versão. Geralmente, esses erros podem ser ignorados com segurança. No entanto, uma lista com os softwares que não foram convertidos com sucesso é mostrada após o <command>pkg2ng</command> terminar. Esses aplicativos devem ser reinstalados manualmente.</para>
+ </note>
+
+ <para>Para garantir que a Coleção de Ports registre novos softwares com o <application>pkg</application> ao invés do tradicional banco de dados de pacotes, versões do FreeBSD anteriores a 10.<replaceable>X</replaceable> requerem esta linha em <filename>/etc/make.conf</filename>:</para>
+
+ <programlisting>WITH_PKGNG= yes</programlisting>
+
+ <para>Por padrão, o <application>pkg</application> usa os pacotes binários dos espelhos de pacotes do FreeBSD (o <emphasis>repositório</emphasis>). Para obter informações sobre como criar um repositório de pacotes personalizados, consulte <xref linkend="ports-poudriere"/>.</para>
+
+ <para>Opções adicionais de configuração do <application>pkg</application> são descritas em <citerefentry><refentrytitle>pkg.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>.</para>
+
+ <para>As informações de uso do <application>pkg</application> estão disponíveis na página de manual <citerefentry><refentrytitle>pkg</refentrytitle><manvolnum>8</manvolnum></citerefentry> ou executando o <command>pkg</command> sem argumentos adicionais.</para>
+
+ <para>Cada argumento do comando <application>pkg</application> é documentado em uma página de manual específica do comando. Para ler a página de manual do <command>pkg install</command>, por exemplo, execute um destes comandos:</para>
+
+ <screen><prompt>#</prompt> <userinput>pkg help install</userinput></screen>
+
+ <screen><prompt>#</prompt> <userinput>man pkg-install</userinput></screen>
+
+ <para>O restante desta seção demonstra tarefas comuns de gerenciamento de pacotes binários que podem ser executadas usando o <application>pkg</application>. Cada comando demonstrado fornece muitos switches para personalizar seu uso. Consulte a ajuda de um comando ou a página do manual para obter detalhes e mais exemplos.</para>
+ </sect2>
+
+ <sect2 xml:id="pkgng-pkg-info">
+ <title>Obtendo informações sobre os pacotes instalados</title>
+
+ <para>Informações sobre os pacotes instalados em um sistema podem ser visualizadas executando <command>pkg info</command> que, quando executado sem qualquer opção, listará a versão do pacote para todos os pacotes instalados ou para o pacote especificado.</para>
+
+ <para>Por exemplo, para ver qual versão do <application>pkg</application> está instalada, execute:</para>
+
+ <screen><prompt>#</prompt> <userinput>pkg info pkg</userinput>
+pkg-1.1.4_1</screen>
+ </sect2>
+
+ <sect2 xml:id="pkgng-installing-deinstalling">
+ <title>Instalando e removendo pacotes</title>
+
+ <para>Para instalar um pacote binário, use o seguinte comando, em que <replaceable>packagename</replaceable> é o nome do pacote a ser instalado:</para>
+
+ <screen><prompt>#</prompt> <userinput>pkg install <replaceable>packagename</replaceable></userinput></screen>
+
+ <para>Esse comando usa os dados do repositório para determinar qual versão do software instalar e se ele possui alguma dependência faltando. Por exemplo, para instalar o <application>curl</application>:</para>
+
+ <screen><prompt>#</prompt> <userinput>pkg install curl</userinput>
+Updating repository catalogue
+/usr/local/tmp/All/curl-7.31.0_1.txz 100% of 1181 kB 1380 kBps 00m01s
+
+/usr/local/tmp/All/ca_root_nss-3.15.1_1.txz 100% of 288 kB 1700 kBps 00m00s
+
+Updating repository catalogue
+The following 2 packages will be installed:
+
+ Installing ca_root_nss: 3.15.1_1
+ Installing curl: 7.31.0_1
+
+The installation will require 3 MB more space
+
+0 B to be downloaded
+
+Proceed with installing packages [y/N]: <userinput>y</userinput>
+Checking integrity... done
+[1/2] Installing ca_root_nss-3.15.1_1... done
+[2/2] Installing curl-7.31.0_1... done
+Cleaning up cache files...Done</screen>
+
+ <para>O novo pacote e quaisquer pacotes adicionais que foram instalados como dependências podem ser vistos na lista de pacotes instalados:</para>
+
+ <screen><prompt>#</prompt> <userinput>pkg info</userinput>
+ca_root_nss-3.15.1_1 The root certificate bundle from the Mozilla Project
+curl-7.31.0_1 Non-interactive tool to get files from FTP, GOPHER, HTTP(S) servers
+pkg-1.1.4_6 New generation package manager</screen>
+
+ <para>Pacotes que não são mais necessários podem ser removidos com <command>pkg delete</command>. Por exemplo:</para>
+
+ <screen><prompt>#</prompt> <userinput>pkg delete curl</userinput>
+The following packages will be deleted:
+
+ curl-7.31.0_1
+
+The deletion will free 3 MB
+
+Proceed with deleting packages [y/N]: <userinput>y</userinput>
+[1/1] Deleting curl-7.31.0_1... done</screen>
+ </sect2>
+
+ <sect2 xml:id="pkgng-upgrading">
+ <title>Atualizando os Pacotes Instalados</title>
+
+ <para>Os pacotes instalados podem ser atualizados para as versões mais recentes executando:</para>
+
+ <screen><prompt>#</prompt> <userinput>pkg upgrade</userinput></screen>
+
+ <para>Este comando irá comparar as versões instaladas com as disponíveis no catálogo do repositório e atualizá-las a partir do repositório.</para>
+ </sect2>
+
+ <sect2 xml:id="pkgng-auditing">
+ <title>Auditando os Pacotes Instalados</title>
+
+ <para>Vulnerabilidades de software são regularmente descobertas em aplicativos de terceiros. Para resolver isso, o <application>pkg</application> inclui um mecanismo de auditoria integrado. Para determinar se há alguma vulnerabilidade conhecida para o software instalado no sistema, execute:</para>
+
+ <screen><prompt>#</prompt> <userinput>pkg audit -F</userinput></screen>
+ </sect2>
+
+ <sect2 xml:id="pkgng-autoremove">
+ <title>Removendo Pacotes Não Utilizados Automaticamente</title>
+
+ <para>Remover um pacote pode deixar dependências que não são mais necessárias. Pacotes desnecessários que foram instalados como dependências podem ser automaticamente detectados e removidos usando:</para>
+
+ <screen><prompt>#</prompt> <userinput>pkg autoremove</userinput>
+Packages to be autoremoved:
+ ca_root_nss-3.15.1_1
+
+The autoremoval will free 723 kB
+
+Proceed with autoremoval of packages [y/N]: <userinput>y</userinput>
+Deinstalling ca_root_nss-3.15.1_1... done</screen>
+
+ <para>Os pacotes instalados como dependências são chamados de pacotes <emphasis>automáticos</emphasis>. Pacotes não automáticos, ou seja, os pacotes que não foram instalados como uma dependência para outro pacote, podem ser listados usando:</para>
+
+ <screen><prompt>#</prompt> <userinput>pkg prime-list</userinput>
+nginx
+openvpn
+sudo</screen>
+
+ <para>O <command>pkg prime-list</command> é um alias de comando declarado no <filename>/usr/local/etc/pkg.conf</filename>. Existem muitos outros que podem ser usados para consultar o banco de dados de pacotes do sistema. Por exemplo, o comando <command>pkg prime-origins</command> pode ser usado para obter o diretório de origem dos ports da lista mencionada acima:</para>
+
+ <screen><prompt>#</prompt> <userinput>pkg prime-origins</userinput>
+www/nginx
+security/openvpn
+security/sudo</screen>
+
+ <para>Esta lista pode ser usada para recompilar todos os pacotes instalados em um sistema usando ferramentas de compilação como o <package>ports-mgmt/poudriere</package> ou o <package>ports-mgmt/synth</package>.</para>
+
+ <para>Marcar um pacote instalado como automático pode ser feito usando:</para>
+
+ <screen><prompt>#</prompt> <userinput>pkg set -A 1 devel/cmake</userinput></screen>
+
+ <para>Uma vez que um pacote é um pacote orfão e está marcado como automático, ele será selecionado por <command>pkg autoremove</command>.</para>
+
+ <para>Marcar um pacote instalado como <emphasis>não</emphasis> automático pode ser feito usando:</para>
+
+ <screen><prompt>#</prompt> <userinput>pkg set -A 0 devel/cmake</userinput></screen>
+
+ </sect2>
+
+ <sect2 xml:id="pkgng-backup">
+ <title>Restaurando o banco de dados de pacotes</title>
+
+ <para>Ao contrário do sistema tradicional de gerenciamento de pacotes, o <application>pkg</application> inclui seu próprio mecanismo de backup de banco de dados de pacotes. Essa funcionalidade é habilitada por padrão.</para>
+
+ <tip>
+ <para>Para desabilitar o script que faz o backup periódico do banco de dados de pacotes, defina <literal>daily_backup_pkgdb_enable="NO"</literal> no <citerefentry><refentrytitle>periodic.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>.</para>
+ </tip>
+
+ <para>Para restaurar o conteúdo de um backup anterior do banco de dados de pacotes, execute o seguinte comando substituindo <replaceable>/path/to/pkg.sql</replaceable> pelo local do backup:</para>
+
+ <screen><prompt>#</prompt> <userinput>pkg backup -r <replaceable>/path/to/pkg.sql</replaceable></userinput></screen>
+
+ <note>
+ <para>Se estiver restaurando um backup feito pelo script periódico, ele deve ser descompactado antes de ser restaurado.</para>
+ </note>
+
+ <para>Para executar um backup manual do banco de dados <application>pkg</application>, execute o seguinte comando, substituindo <replaceable>/path/to/pkg.sql</replaceable> por um nome de arquivo e local adequados:</para>
+
+ <screen><prompt>#</prompt> <userinput>pkg backup -d <replaceable>/path/to/pkg.sql</replaceable></userinput></screen>
+ </sect2>
+
+ <sect2 xml:id="pkgng-clean">
+ <title>Removendo Pacotes Obsoletos</title>
+
+ <para>Por padrão, o <application>pkg</application> armazena pacotes binários em um diretório de cache definido por <envar>PKG_CACHEDIR</envar> no <citerefentry> <refentrytitle>pkg.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>. Somente cópias dos últimos pacotes instalados são mantidas. Versões mais antigas do <application>pkg</application> mantinham todos os pacotes anteriores. Para remover esses pacotes binários desatualizados, execute:</para>
+
+ <screen><prompt>#</prompt> <userinput>pkg clean</userinput></screen>
+
+ <para>O cache inteiro pode ser limpo executando:</para>
+
+ <screen><prompt>#</prompt> <userinput>pkg clean -a</userinput></screen>
+ </sect2>
+
+ <sect2 xml:id="pkgng-set">
+ <title>Modificando Metadados de Pacotes</title>
+
+ <para>Os softwares dentro da Coleção de Ports do FreeBSD podem passar por grandes mudanças no número de versão. Para resolver isso, o <application>pkg</application> possui um comando interno para atualizar as origens do pacote. Isto pode ser útil, por exemplo, se <package>lang/php5</package> for renomeado para <package>lang/php53</package> para que <package>lang/php5</package> possa agora representar a versão <literal>5.4</literal>.</para>
+
+ <para>Para alterar a origem do pacote para o exemplo acima, execute:</para>
+
+ <screen><prompt>#</prompt> <userinput>pkg set -o lang/php5:lang/php53</userinput></screen>
+
+ <para>Como outro exemplo, para atualizar <package>lang/ruby18</package> para <package>lang/ruby19</package>, execute:</para>
+
+ <screen><prompt>#</prompt> <userinput>pkg set -o lang/ruby18:lang/ruby19</userinput></screen>
+
+ <para>Como um exemplo final, para alterar a origem das bibliotecas compartilhadas <filename>libglut</filename> de <package>graphics/libglut</package> para <package>graphics/freeglut</package>, execute:</para>
+
+ <screen><prompt>#</prompt> <userinput>pkg set -o graphics/libglut:graphics/freeglut</userinput></screen>
+
+ <note>
+ <para>Ao alterar as origens do pacote, é importante reinstalar os pacotes que dependem do pacote com a origem modificada. Para forçar uma reinstalação dos pacotes dependentes, execute:</para>
+
+ <screen><prompt>#</prompt> <userinput>pkg install -Rf <replaceable>graphics/freeglut</replaceable></userinput></screen>
+ </note>
+ </sect2>
+ </sect1>
+
+ <sect1 xml:id="ports-using">
+ <title>Usando a Coleção de Ports</title>
+
+ <para>A Coleção de Ports é um conjunto de arquivos <filename>Makefiles</filename>, patches e arquivos de descrição. Cada conjunto desses arquivos é usado para compilar e instalar um aplicativo individual no FreeBSD, e é chamado de <emphasis>port</emphasis>.</para>
+
+ <para>Por padrão, a própria coleção de ports é armazenada como um subdiretório de <filename>/usr/ports</filename>.</para>
+
+ <para>Antes que um aplicativo possa ser compilado usando um port, a Coleção de Ports deve primeiro ser instalada. Se ela não foi instalada durante a instalação do FreeBSD, use um dos seguintes métodos para instalá-la:</para>
+
+ <procedure xml:id="ports-using-portsnap-method">
+ <title>Método Portsnap</title>
+
+ <para>O sistema básico do FreeBSD inclui o <application>Portsnap</application>. Esta é uma ferramenta rápida e fácil de usar para recuperar a coleção de ports e é a escolha recomendada para a maioria dos usuários. Este utilitário se conecta a um site do FreeBSD, verifica a chave segura e faz o download de uma nova cópia da Coleção de Ports. A chave é usada para verificar a integridade de todos os arquivos baixados.</para>
+
+ <step>
+ <para>Para baixar um snapshot compactado da coleção de ports em <filename>/var/db/portsnap</filename>:</para>
+
+ <screen><prompt>#</prompt> <userinput>portsnap fetch</userinput></screen>
+ </step>
+
+ <step>
+ <para>Ao executar o <application>Portsnap</application> pela primeira vez, extraia o snapshot em <filename>/usr/ports</filename>:</para>
+
+ <screen><prompt>#</prompt> <userinput>portsnap extract</userinput></screen>
+ </step>
+
+ <step>
+ <para>Após o primeiro uso do <application>Portsnap</application> ter sido concluído, como mostrado acima, o <filename>/usr/ports</filename> pode ser atualizado conforme necessário executando:</para>
+
+ <screen><prompt>#</prompt> <userinput>portsnap fetch</userinput>
+<prompt>#</prompt> <userinput>portsnap update</userinput></screen>
+
+ <para>Ao usar <literal>fetch</literal>, a operação <literal>extract</literal> ou <literal>update</literal> pode ser executada consecutivamente, da seguinte forma:</para>
+
+ <screen><prompt>#</prompt> <userinput>portsnap fetch update</userinput></screen>
+ </step>
+ </procedure>
+
+ <procedure xml:id="ports-using-subversion-method">
+ <title>Método Subversion</title>
+
+ <para>Se for necessário mais controle sobre a árvore de ports ou se as mudanças locais precisarem ser mantidas, o <application>Subversion</application> pode ser usado para obter a coleção de ports. Consulte <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/articles/committers-guide/subversion-primer.html">O Subversion Primer</link> para uma descrição detalhada do <application>Subversion</application>.</para>
+
+ <step>
+ <para>O <application>Subversion</application> deve ser instalado antes de poder ser usado para fazer o check-out da árvore de ports. Se uma cópia da árvore de ports já estiver presente, instale o <application>Subversion</application> desta forma:</para>
+
+ <screen><prompt>#</prompt> <userinput>cd /usr/ports/devel/subversion</userinput>
+<prompt>#</prompt> <userinput>make install clean</userinput></screen>
+
+ <para>Se a árvore de ports não estiver disponível, ou o <application>pkg</application> estiver sendo usado para gerenciar pacotes, o <application>Subversion</application> poderá ser instalado como um pacote:</para>
+
+ <screen><prompt>#</prompt> <userinput>pkg install subversion</userinput></screen>
+
+ </step>
+
+ <step>
+ <para>Faça o check out de uma cópia da árvore de ports:</para>
+
+ <screen><prompt>#</prompt> <userinput>svn checkout https://svn.FreeBSD.org/ports/head /usr/ports</userinput></screen>
+ </step>
+
+ <step>
+ <para>Conforme necessário, atualize o <filename>/usr/ports</filename> após o check out inicial do <application>Subversion</application>:</para>
+
+ <screen><prompt>#</prompt> <userinput>svn update /usr/ports</userinput></screen>
+ </step>
+ </procedure>
+
+ <para>A coleção de ports contém diretórios para categorias de software. Dentro de cada categoria estão subdiretórios para aplicativos individuais. Cada subdiretório de aplicativo contém um conjunto de arquivos que informa ao FreeBSD como compilar e instalar esse programa, chamado de <emphasis>esqueleto do ports</emphasis>. Cada esqueleto de port inclui esses arquivos e diretórios:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para><filename>Makefile</filename>: contém instruções que especificam como o aplicativo deve ser compilado e onde seus componentes devem ser instalados.</para>
+ </listitem>
+
+ <listitem>
+ <para><filename>distinfo</filename>: contém os nomes e checksums dos arquivos que devem ser baixados para compilar o port.</para>
+ </listitem>
+
+ <listitem>
+ <para><filename>files/</filename>: este diretório contém quaisquer patches necessários para o programa compilar e instalar no FreeBSD. Esse diretório também pode conter outros arquivos usados ​​para compilar o port.</para>
+ </listitem>
+
+ <listitem>
+ <para><filename>pkg-descr</filename>: fornece uma descrição mais detalhada do programa.</para>
+ </listitem>
+
+ <listitem>
+ <para><filename>pkg-plist</filename>: uma lista de todos os arquivos que serão instalados pelo port. Ele também informa ao sistema de ports quais arquivos devem ser removidos após a desinstalação.</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>Alguns ports incluem <filename>pkg-message</filename> ou outros arquivos para lidar com situações especiais. Para obter mais detalhes sobre esses arquivos e sobre os ports em geral, consulte o <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/porters-handbook/index.html">FreeBSD Porter's Manual</link>.</para>
+
+ <para>O port não inclui o código-fonte real, também conhecido como <filename>distfile</filename>. A etapa de extração da compilação de um port salvará automaticamente o código-fonte transferido por download para <filename>/usr/ports/distfiles</filename>.</para>
+
+ <sect2 xml:id="ports-skeleton">
+ <title>Instalando Ports</title>
+
+ <indexterm><primary>ports</primary> <secondary>installing</secondary></indexterm>
+
+ <para>Esta seção fornece instruções básicas sobre o uso da Coleção de Ports para instalar ou remover software. A descrição detalhada dos targets disponíveis do <command>make</command> e das variáveis ​​de ambiente está disponível em <citerefentry><refentrytitle>ports</refentrytitle><manvolnum>7</manvolnum></citerefentry>.</para>
+
+ <warning>
+ <para>Antes de compilar qualquer port, certifique-se de atualizar a Coleção de Ports conforme descrito na seção anterior. Como a instalação de qualquer software de terceiros pode introduzir vulnerabilidades de segurança, recomenda-se primeiro verificar <link xlink:href="https://vuxml.freebsd.org/"/> para problemas de segurança conhecidos relacionados ao port. Alternativamente, execute <command>pkg -f</command> antes de instalar um novo port. Esse comando pode ser configurado para executar automaticamente uma auditoria de segurança e uma atualização do banco de dados de vulnerabilidades durante a verificação diária do sistema de segurança. Para obter maiores informações, consulte <citerefentry><refentrytitle>pkg-audit</refentrytitle><manvolnum>8</manvolnum></citerefentry> e <citerefentry><refentrytitle>periodic</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
+ </warning>
+
+ <para>O uso da coleção de ports pressupõe uma conexão de Internet ativa. Também requer privilégios de superusuário.</para>
+
+ <para>Para compilar e instalar o port, mude para o diretório do port a ser instalado e, em seguida, digite <command>make install</command> no prompt. Mensagens indicarão o progresso:</para>
+
+ <screen><prompt>#</prompt> <userinput>cd /usr/ports/sysutils/lsof</userinput>
+<prompt>#</prompt> <userinput>make install</userinput>
+&gt;&gt; lsof_4.88D.freebsd.tar.gz doesn't seem to exist in /usr/ports/distfiles/.
+&gt;&gt; Attempting to fetch from ftp://lsof.itap.purdue.edu/pub/tools/unix/lsof/.
+===&gt; Extracting for lsof-4.88
+...
+[extraction output snipped]
+...
+&gt;&gt; Checksum OK for lsof_4.88D.freebsd.tar.gz.
+===&gt; Patching for lsof-4.88.d,8
+===&gt; Applying FreeBSD patches for lsof-4.88.d,8
+===&gt; Configuring for lsof-4.88.d,8
+...
+[configure output snipped]
+...
+===&gt; Building for lsof-4.88.d,8
+...
+[compilation output snipped]
+...
+
+===&gt; Installing for lsof-4.88.d,8
+...
+[installation output snipped]
+...
+===&gt; Generating temporary packing list
+===&gt; Compressing manual pages for lsof-4.88.d,8
+===&gt; Registering installation for lsof-4.88.d,8
+===&gt; SECURITY NOTE:
+ This port has installed the following binaries which execute with
+ increased privileges.
+/usr/local/sbin/lsof
+<prompt>#</prompt></screen>
+
+ <para>Como o <command>lsof</command> é um programa que é executado com privilégios aumentados, um aviso de segurança é exibido quando é instalado. Quando a instalação estiver concluída, o prompt será retornado.</para>
+
+ <para>Algumas shells mantêm um cache dos comandos que estão disponíveis nos diretórios listados na variável de ambiente <envar>PATH</envar>, para acelerar as operações de pesquisa do arquivo executável desses comandos. Os usuários do shell <command>tcsh</command> devem digitar <command>rehash</command> para que um comando recém-instalado possa ser usado sem especificar seu caminho completo. Use <command>hash -r</command> para o shell <command>sh</command>. Consulte a documentação do shell para mais informações.</para>
+
+ <para>Durante a instalação, é criado um subdiretório de trabalho que contém todos os arquivos temporários usados ​​durante a compilação. A remoção desse diretório economiza espaço em disco e minimiza a possibilidade de problemas mais tarde ao atualizar para a versão mais recente do port:</para>
+
+ <screen><prompt>#</prompt> <userinput>make clean</userinput>
+===&gt; Cleaning for lsof-88.d,8
+<prompt>#</prompt></screen>
+
+ <note>
+ <para>Para evitar esta etapa extra, use <command>make install clean</command> ao compilar o port.</para>
+ </note>
+
+ <sect3>
+ <title>Personalizando a instalação de ports</title>
+
+ <para>Alguns ports fornecem opções de compilação que podem ser usadas para habilitar ou desabilitar componentes do aplicativo, fornecer opções de segurança ou permitir outras personalizações. Os exemplos incluem o <package>www/firefox</package>, <package>security/gpgme</package>, e <package>mail/sylpheed-claws</package>. Se o port depender de outros ports que tenham opções configuráveis, ela poderá pausar várias vezes para interação do usuário, pois o comportamento padrão é solicitar ao usuário que selecione opções de um menu. Para evitar isso e fazer toda a configuração em um lote, execute <command>make config-recursive</command> dentro do diretório do port. Em seguida, execute <command>make install [clean]</command> para compilar e instalar o port.</para>
+
+ <tip>
+ <para>Ao usar <buildtarget>config-recursive</buildtarget>, a lista de ports a serem configurados é reunida pelo target <buildtarget>all-depends-list</buildtarget>. É recomendado executar o <command>make config-recursive</command> até que todas as opções dos ports dependentes tenham sido definidas, e as telas de opções de ports não apareçam mais, para ter certeza de que todas as opções das dependência foram configuradas.</para>
+ </tip>
+
+ <para>Há várias maneiras de revisitar o menu de opções de compilação de um port para adicionar, remover ou alterar essas opções após a compilação de um port. Um método é efetuar <command>cd</command> no diretório que contém o port e digitar <command>make config</command>. Outra opção é usar o <command>make showconfig</command>. Outra opção é executar <command>make rmconfig</command>, o que removerá todas as opções selecionadas e permitirá que você comece de novo. Todas essas opções, e outras, são explicadas detalhadamente em <citerefentry> <refentrytitle>ports</refentrytitle><manvolnum>7</manvolnum></citerefentry>.</para>
+
+ <para>O sistema de ports usa o <citerefentry><refentrytitle>fetch</refentrytitle><manvolnum>1</manvolnum></citerefentry> para fazer o download dos arquivos com o código-fonte, que suportam várias variáveis ​​de ambiente. As variáveis ​​<envar>FTP_PASSIVE_MODE</envar>, <envar>FTP_PROXY</envar> e <envar>FTP_PASSWORD</envar> podem precisar ser definidas se o sistema FreeBSD estiver por trás de um firewall ou proxy FTP/HTTP. Veja <citerefentry><refentrytitle>fetch</refentrytitle><manvolnum>3</manvolnum></citerefentry> para a lista completa de variáveis ​​suportadas.</para>
+
+ <para>Para usuários que não podem estar conectados à Internet o tempo todo, o <command>make fetch</command> pode ser executado dentro do <filename>/usr/ports</filename>, para buscar todos os distfiles, ou dentro de uma categoria, como <filename>/usr/ports/net</filename>, ou dentro do diretório de um port especifico. Observe que, se um port tiver alguma dependência, executar este comando em uma categoria ou diretório de um port especifico <emphasis>não</emphasis> buscará os distfiles de ports de outra categoria. Em vez disso, use <command>make fetch-recursive</command> para também buscar os distfiles para todas as dependências de um port.</para>
+
+ <para>Em casos raros, como quando uma organização tem um repositório local de distfiles, a variável <varname>MASTER_SITES</varname> pode ser usada para substituir os locais de download especificados no <filename>Makefile</filename>. Ao usar, especifique o local alternativo:</para>
+
+ <screen><prompt>#</prompt> <userinput>cd /usr/ports/<replaceable>directory</replaceable></userinput>
+<prompt>#</prompt> <userinput>make MASTER_SITE_OVERRIDE= \
+<replaceable>ftp://ftp.organization.org/pub/FreeBSD/ports/distfiles/</replaceable> fetch</userinput></screen>
+
+ <para>As variáveis ​​<varname>WRKDIRPREFIX</varname> e <varname>PREFIX</varname> podem substituir os diretórios de trabalho e de destino padrão. Por exemplo:</para>
+
+ <screen><prompt>#</prompt> <userinput>make WRKDIRPREFIX=/usr/home/example/ports install</userinput></screen>
+
+ <para>irá compilar o port em <filename>/usr/home/example/ports</filename> e instalar tudo sob <filename>/usr/local</filename>.</para>
+
+ <screen><prompt>#</prompt> <userinput>make PREFIX=/usr/home/example/local install</userinput></screen>
+
+ <para>irá compilar o port em <filename>/usr/ports</filename> e instalá-lo em <filename>/usr/home/example/local</filename>. E:</para>
+
+ <screen><prompt>#</prompt> <userinput>make WRKDIRPREFIX=../ports PREFIX=../local install</userinput></screen>
+
+ <para>vai combinar os dois.</para>
+
+ <para>Estes também podem ser definidos como variáveis ​​ambientais. Consulte a página de manual do seu shell para obter instruções sobre como definir uma variável de ambiente.</para>
+ </sect3>
+ </sect2>
+
+ <sect2 xml:id="ports-removing">
+ <title>Removendo Ports Instalados</title>
+
+ <indexterm><primary>ports</primary> <secondary>removing</secondary></indexterm>
+
+ <para>Ports instalados podem ser desinstalados usando <command>pkg delete</command>. Exemplos para usar este comando podem ser encontrados na página de manual <citerefentry><refentrytitle>pkg-delete</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
+
+ <para>Alternativamente, o <command>make deinstall</command> pode ser executado no diretório do port:</para>
+
+ <screen><prompt>#</prompt> <userinput>cd /usr/ports/sysutils/lsof</userinput>
+<userinput>make deinstall</userinput>
+===&gt; Deinstalling for sysutils/lsof
+===&gt; Deinstalling
+Deinstallation has been requested for the following 1 packages:
+
+ lsof-4.88.d,8
+
+The deinstallation will free 229 kB
+[1/1] Deleting lsof-4.88.d,8... done</screen>
+
+ <para>Recomenda-se ler as mensagens quando o port for desinstalado. Se o port tiver algum aplicativo que dependa dele, essas informações serão exibidas, mas a desinstalação continuará. Nesses casos, talvez seja melhor reinstalar o aplicativo para evitar dependências quebradas.</para>
+ </sect2>
+
+ <sect2 xml:id="ports-upgrading">
+ <title>Atualizando os Ports</title>
+
+ <indexterm><primary>ports</primary> <secondary>upgrading</secondary></indexterm>
+
+ <para>Com o tempo, novas versões de software ficam disponíveis na coleção de ports. Esta seção descreve como determinar qual software pode ser atualizado e como executar a atualização.</para>
+
+ <para>Para determinar se versões mais recentes dos ports instalados estão disponíveis, verifique se a versão mais recente da árvore de ports está instalada, usando o comando de atualização descrito em <xref linkend="ports-using-portsnap-method"/> ou <xref linkend="ports-using-subversion-method"/>. No FreeBSD 10 e posterior, ou se o sistema foi convertido para <application>pkg</application>, o seguinte comando listará os ports instalados que estão desatualizadas:</para>
+
+ <screen><prompt>#</prompt> <userinput>pkg version -l "&lt;"</userinput></screen>
+
+ <para>Para o FreeBSD 9.<replaceable>X</replaceable> e menor, o seguinte comando listará os ports instalados que estão desatualizados:</para>
+
+ <screen><prompt>#</prompt> <userinput>pkg_version -l "&lt;"</userinput></screen>
+
+ <important>
+ <para>Antes de tentar uma atualização, leia o <filename>/usr/ports/UPDATING</filename> da parte superior do arquivo até a data mais próxima da última vez em que os ports foram atualizados ou o sistema foi instalado. Este arquivo descreve vários problemas e etapas adicionais que os usuários podem encontrar e precisar executar ao atualizar um port, incluindo coisas como alterações de formato de arquivo, alterações nos locais de arquivos de configuração ou incompatibilidades com versões anteriores. Anote quaisquer instruções que correspondam a qualquer um dos ports que precisam de atualização e siga estas instruções ao executar a atualização.</para>
+ </important>
+
+ <sect3 xml:id="ports-upgrading-tools">
+ <title>Ferramentas para atualizar e gerenciar ports</title>
+
+ <indexterm><primary>ports</primary> <secondary>upgrading-tools</secondary></indexterm>
+
+ <para>A coleção de ports contém vários utilitários para executar a atualização real. Cada um tem seus pontos fortes e fracos.</para>
+
+ <para>Historicamente, a maioria das instalações usava o <application>Portmaster</application> ou o <application>Portupgrade</application>. O <application>Synth</application> é uma alternativa mais recente.</para>
+
+ <note>
+ <para>A escolha da melhor ferramenta para um determinado sistema depende do administrador do sistema. Recomenda-se a prática de fazer backup de seus dados antes de usar qualquer uma dessas ferramentas.</para>
+ </note>
+
+ </sect3>
+
+ <sect3 xml:id="portmaster">
+ <title>Atualizando Ports Usando o <application>Portmaster</application></title>
+
+ <indexterm><primary>portmaster</primary></indexterm>
+
+ <para>O <package>ports-mgmt/portmaster</package> é um utilitário muito pequeno para atualizar os ports instalados. Ele é projetado para usar as ferramentas instaladas com o sistema base do FreeBSD sem depender de outros ports ou bancos de dados. Para instalar este utilitário como um port:</para>
+
+ <screen><prompt>#</prompt> <userinput>cd /usr/ports/ports-mgmt/portmaster</userinput>
+<prompt>#</prompt> <userinput>make install clean</userinput></screen>
+
+ <para>O <application>Portmaster</application> define quatro categorias de ports:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>Port Root: não tem dependências e não é uma dependência de outros ports.</para>
+ </listitem>
+
+ <listitem>
+ <para>Port Trunk: não tem dependências, mas outros ports dependem dele.</para>
+ </listitem>
+
+ <listitem>
+ <para>Port Branch: tem dependências e outros ports dependem dele.</para>
+ </listitem>
+
+ <listitem>
+ <para>Port Leaf: tem dependências, mas nenhum outro port depende dele.</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>Para listar essas categorias e procurar atualizações:</para>
+
+ <screen><prompt>#</prompt> <userinput>portmaster -L</userinput>
+===&gt;&gt;&gt; Root ports (No dependencies, not depended on)
+===&gt;&gt;&gt; ispell-3.2.06_18
+===&gt;&gt;&gt; screen-4.0.3
+ ===&gt;&gt;&gt; New version available: screen-4.0.3_1
+===&gt;&gt;&gt; tcpflow-0.21_1
+===&gt;&gt;&gt; 7 root ports
+...
+===&gt;&gt;&gt; Branch ports (Have dependencies, are depended on)
+===&gt;&gt;&gt; apache22-2.2.3
+ ===&gt;&gt;&gt; New version available: apache22-2.2.8
+...
+===&gt;&gt;&gt; Leaf ports (Have dependencies, not depended on)
+===&gt;&gt;&gt; automake-1.9.6_2
+===&gt;&gt;&gt; bash-3.1.17
+ ===&gt;&gt;&gt; New version available: bash-3.2.33
+...
+===&gt;&gt;&gt; 32 leaf ports
+
+===&gt;&gt;&gt; 137 total installed ports
+ ===&gt;&gt;&gt; 83 have new versions available</screen>
+
+ <para>Este comando é usado para atualizar todos os ports desatualizados:</para>
+
+ <screen><prompt>#</prompt> <userinput>portmaster -a</userinput></screen>
+
+ <note>
+ <para>Por padrão, o <application>Portmaster</application> faz um backup do pacote antes de excluir o port existente. Se a instalação da nova versão for bem-sucedida, o <application>Portmaster</application> excluirá o backup. O uso de <option>-b</option> instrui o <application>Portmaster</application> a não excluir automaticamente o backup. Adicionar <option>-i</option> inicia o <application>Portmaster</application> no modo interativo, solicitando a confirmação antes de atualizar cada port. Muitas outras opções estão disponíveis. Leia a página de manual para o <citerefentry vendor="ports"><refentrytitle>portmaster</refentrytitle><manvolnum>8</manvolnum></citerefentry> para obter detalhes sobre seu uso.</para>
+ </note>
+
+ <para>Se forem encontrados erros durante o processo de atualização, adicione <option>-f</option> para atualizar e recompilar todos os ports:</para>
+
+ <screen><prompt>#</prompt> <userinput>portmaster -af</userinput></screen>
+
+ <para>O <application>Portmaster</application> também pode ser usado para instalar novos ports no sistema, atualizando todas as dependências antes de compilar e instalar o novo port. Para usar essa função, especifique o local do port na coleção de ports:</para>
+
+ <screen><prompt>#</prompt> <userinput>portmaster <replaceable>shells/bash</replaceable></userinput></screen>
+
+ <para>Maiores informações sobre <package>ports-mgmt/portmaster</package> podem ser encontradas no <filename>pkg-descr</filename>.</para>
+ </sect3>
+
+ <sect3 xml:id="portupgrade">
+ <title>Atualizando Ports Usando o Portupgrade</title>
+
+ <indexterm><primary>portupgrade</primary></indexterm>
+
+ <para>O <package>ports-mgmt/portupgrade</package> é outro utilitário que pode ser usado para atualizar ports. Ele instala um conjunto de aplicativos que podem ser usados ​​para gerenciar ports. No entanto, ele depende do Ruby. Para instalar o port:</para>
+
+ <screen><prompt>#</prompt> <userinput>cd /usr/ports/ports-mgmt/portupgrade</userinput>
+<prompt>#</prompt> <userinput>make install clean</userinput></screen>
+
+ <para>Antes de executar uma atualização usando esse utilitário, é recomendável verificar a lista de ports instalados usando o <command>pkgdb -F</command> e corrigir todas as inconsistências relatadas.</para>
+
+ <para>Para atualizar todos os ports desatualizados instalados no sistema, use o <command>portupgrade -a</command>. Como alternativa, inclua <option>-i</option> para ser solicitado da confirmação de cada atualização individual:</para>
+
+ <screen><prompt>#</prompt> <userinput>portupgrade -ai</userinput></screen>
+
+ <para>Para atualizar apenas um aplicativo especifico em vez de todos os ports disponíveis, use <command>portupgrade <replaceable>pkgname</replaceable></command>. É muito importante incluir <option>-R</option> para primeiro atualizar todos os ports requeridos pelo aplicativo fornecido:</para>
+
+ <screen><prompt>#</prompt> <userinput>portupgrade -R firefox</userinput></screen>
+
+ <para>Se <option>-P</option> estiver incluído, o <application>Portupgrade</application> procura pacotes disponíveis nos diretórios locais listados em <envar>PKG_PATH</envar>. Se nenhum estiver disponível localmente, ele buscará pacotes de um site remoto. Se os pacotes não puderem ser encontrados localmente ou buscados remotamente, o <application>Portupgrade</application> utilizará os ports. Para evitar completamente o uso do ports, especifique <option>-PP</option>. Este último conjunto de opções diz ao <application>Portupgrade</application> para cancelar se nenhum pacote estiver disponível:</para>
+
+ <screen><prompt>#</prompt> <userinput>portupgrade -PP gnome3</userinput></screen>
+
+ <para>Para obter apenas os distfiles do port, ou pacotes, se <option>-P</option> for especificado, sem compilar ou instalar nada, use <option>-F</option>. Para mais informações sobre todas as opções disponíveis, consulte a página de manual do <command>portupgrade</command>.</para>
+
+ <para>Maiores informações sobre o <package>ports-mgmt/portupgrade</package> podem ser encontradas no <filename>pkg-descr</filename>.</para>
+ </sect3>
+
+ </sect2>
+
+ <sect2 xml:id="ports-disk-space">
+ <title>Ports e o Espaço em Disco</title>
+
+ <indexterm><primary>ports</primary> <secondary>disk-space</secondary></indexterm>
+
+ <para>A utilização da coleção de ports irá ocupar espaço em disco ao longo do tempo. Depois de compilar e instalar um port, executar <command>make clean</command> dentro do diretório de um port limpará o diretório temporário de <filename>trabalho</filename>. Se o <application>Portmaster</application> for usado para instalar um port, ele removerá automaticamente esse diretório, a menos que <option>-K</option> seja especificado. Se o <application>Portupgrade</application> estiver instalado, este comando removerá todos os diretórios de <filename>trabalho</filename> encontrados na cópia local da coleção de ports:</para>
+
+ <screen><prompt>#</prompt> <userinput>portsclean -C</userinput></screen>
+
+ <para>Além disso, arquivos de distribuição de código-fonte desatualizados se acumulam no <filename>/usr/ports/distfiles</filename> ao longo do tempo. Para usar <application>Portupgrade</application> para excluir todos os distfiles que não são mais referenciados por nenhum port:</para>
+
+ <screen><prompt>#</prompt> <userinput>portsclean -D</userinput></screen>
+
+ <para>O <application>Portupgrade</application> pode remover todos os distfiles não referenciados por qualquer port atualmente instalado no sistema:</para>
+
+ <screen><prompt>#</prompt> <userinput>portsclean -DD</userinput></screen>
+
+ <para>Se o <application>Portmaster</application> estiver instalado, use:</para>
+
+ <screen><prompt>#</prompt> <userinput>portmaster --clean-distfiles</userinput></screen>
+
+ <para>Por padrão, esse comando é interativo e solicita que o usuário confirme se um distfile deve ser excluído.</para>
+
+ <para>Além desses comandos, o <package>ports-mgmt/pkg_cutleaves</package> automatiza a tarefa de remover os ports instalados que não são mais necessários.</para>
+ </sect2>
+ </sect1>
+
+ <sect1 xml:id="ports-poudriere">
+ <title>Compilando Pacotes com o <application>Poudriere</application></title>
+
+ <para>O <application>Poudriere</application> é um utilitário licenciado sob a licença <acronym>BSD</acronym> para criar e testar pacotes do FreeBSD. Ele usa o jails do FreeBSD para configurar ambientes de compilação isolados. Esses jails podem ser usados ​​para compilar pacotes para versões do FreeBSD que são diferentes do sistema no qual ele está instalado, e também para construir pacotes para o i386 se o host for um sistema amd64. Uma vez que os pacotes são compilados, eles estão em um layout idêntico aos espelhos oficiais. Esses pacotes podem ser usados ​​pelo <citerefentry><refentrytitle>pkg</refentrytitle><manvolnum>8</manvolnum></citerefentry> e por outras ferramentas de gerenciamento de pacotes.</para>
+
+ <para>O <application>Poudriere</application> é instalado usando o pacote ou port <package role="port">ports-mgmt/poudriere</package>. A instalação inclui um arquivo de configuração de exemplo, <filename>/usr/local/etc/poudriere.conf.sample</filename>. Copie este arquivo para <filename>/usr/local/etc/poudriere.conf</filename>. Edite o arquivo copiado de acordo com a configuração local.</para>
+
+ <para>Embora o <acronym>ZFS</acronym> não seja necessário no sistema que executa o <application>poudriere</application>, o seu uso é benéfico. Quando o <acronym>ZFS</acronym> é usado, o <varname>ZPOOL</varname> deve ser especificado em <filename>/usr/local/etc/poudriere.conf</filename> e o <varname>FREEBSD_HOST</varname> deve ser definido para um espelho próximo. A definição de <varname>CCACHE_DIR</varname> permite o uso de <package role="port">devel/ccache</package> para armazenar em cache a compilação e reduzir os tempos de compilação para o código compilado com freqüência. Pode ser conveniente colocar os conjuntos de dados do <application>poudriere</application> em uma árvore isolada montada em <filename>/poudriere</filename>. Os valores padrões para as outras variáveis de configuração são adequados.</para>
+
+ <para>O número de núcleos do processador detectados é usado para definir quantas compilações serão executadas em paralelo. Forneça memória virtual suficiente, seja por meio de <acronym>RAM</acronym> ou espaço de swap. Se a memória virtual se esgotar, as jails de compilação serão interrompidas e desativadas, resultando em mensagens de erro estranhas.</para>
+
+ <sect2 xml:id="poudriere-initialization">
+ <title>Inicializar o Jails e o Port Trees</title>
+
+ <para>Após a configuração, inicialize o <application>poudriere</application> para que ele instale um jail com a árvore do FreeBSD requerida e uma árvore de ports. Especifique um nome para o jail usando <option>-j</option> e a versão do FreeBSD com <option>-v</option>. Em sistemas que executam o FreeBSD/amd64, a arquitetura pode ser definida com <option>-a</option> para <literal>i386</literal> ou <literal>amd64</literal>. O padrão é a arquitetura mostrada pelo <command>uname</command>.</para>
+
+ <screen><prompt>#</prompt> <userinput>poudriere jail -c -j <replaceable>10amd64</replaceable> -v <replaceable>10.0-RELEASE</replaceable></userinput>
+====&gt;&gt; Creating 10amd64 fs... done
+====&gt;&gt; Fetching base.txz for FreeBSD 10.0-RELEASE amd64
+/poudriere/jails/10amd64/fromftp/base.txz 100% of 59 MB 1470 kBps 00m42s
+====&gt;&gt; Extracting base.txz... done
+====&gt;&gt; Fetching src.txz for FreeBSD 10.0-RELEASE amd64
+/poudriere/jails/10amd64/fromftp/src.txz 100% of 107 MB 1476 kBps 01m14s
+====&gt;&gt; Extracting src.txz... done
+====&gt;&gt; Fetching games.txz for FreeBSD 10.0-RELEASE amd64
+/poudriere/jails/10amd64/fromftp/games.txz 100% of 865 kB 734 kBps 00m01s
+====&gt;&gt; Extracting games.txz... done
+====&gt;&gt; Fetching lib32.txz for FreeBSD 10.0-RELEASE amd64
+/poudriere/jails/10amd64/fromftp/lib32.txz 100% of 14 MB 1316 kBps 00m12s
+====&gt;&gt; Extracting lib32.txz... done
+====&gt;&gt; Cleaning up... done
+====&gt;&gt; Jail 10amd64 10.0-RELEASE amd64 is ready to be used</screen>
+
+ <screen><prompt>#</prompt> <userinput>poudriere ports -c -p <replaceable>local</replaceable></userinput>
+====&gt;&gt; Creating local fs... done
+====&gt;&gt; Extracting portstree "local"...
+Looking up portsnap.FreeBSD.org mirrors... 7 mirrors found.
+Fetching public key from ec2-eu-west-1.portsnap.freebsd.org... done.
+Fetching snapshot tag from ec2-eu-west-1.portsnap.freebsd.org... done.
+Fetching snapshot metadata... done.
+Fetching snapshot generated at Tue Feb 11 01:07:15 CET 2014:
+94a3431f0ce567f6452ffde4fd3d7d3c6e1da143efec76100% of 69 MB 1246 kBps 00m57s
+Extracting snapshot... done.
+Verifying snapshot integrity... done.
+Fetching snapshot tag from ec2-eu-west-1.portsnap.freebsd.org... done.
+Fetching snapshot metadata... done.
+Updating from Tue Feb 11 01:07:15 CET 2014 to Tue Feb 11 16:05:20 CET 2014.
+Fetching 4 metadata patches... done.
+Applying metadata patches... done.
+Fetching 0 metadata files... done.
+Fetching 48 patches.
+(48/48) 100.00% done.
+done.
+Applying patches...
+done.
+Fetching 1 new ports or files... done.
+/poudriere/ports/tester/CHANGES
+/poudriere/ports/tester/COPYRIGHT
+
+[...]
+
+Building new INDEX files... done.</screen>
+
+ <para>Em um único computador, o <application>poudriere</application> pode construir ports com várias configurações, em vários jails e de diferentes árvores de ports. Configurações customizadas para estas combinações são chamadas de <emphasis>sets</emphasis>. Veja a seção CUSTOMIZAÇÃO do <citerefentry vendor="ports"><refentrytitle>poudriere</refentrytitle><manvolnum>8</manvolnum></citerefentry> para detalhes depois que o <package>ports-mgmt/poudriere</package> ou o <package>ports-mgmt/poudriere-devel</package> estiver instalado.</para>
+
+ <para>A configuração básica mostrada aqui coloca um único jail-, port-, e um set específico <filename>make.conf</filename> em <filename>/usr/local/etc/poudriere.d</filename>. O nome do arquivo neste exemplo é criado combinando o nome do jail, o nome do port e o nome do set: <filename><replaceable>10amd64-local-workstation</replaceable>-make.conf</filename>. O sistema <filename>make.conf</filename> e este novo arquivo são combinados em tempo de compilação para criar o <filename>make.conf</filename> usado pela jail de compilação.</para>
+
+ <para>Os pacotes a serem criados são inseridos em <filename><replaceable>10amd64-local-workstation</replaceable>-pkglist</filename>:</para>
+
+ <programlisting>editors/emacs
+devel/git
+ports-mgmt/pkg
+...</programlisting>
+
+ <para>Opções e dependências para os ports especificados são configuradas:</para>
+
+ <screen><prompt>#</prompt> <userinput>poudriere options -j <replaceable>10amd64</replaceable> -p <replaceable>local</replaceable> -z <replaceable>workstation</replaceable> -f <replaceable>10amd64-local-workstation-pkglist</replaceable></userinput></screen>
+
+ <para>Finalmente, os pacotes são compilados e um repositório de pacotes é criado:</para>
+
+ <screen><prompt>#</prompt> <userinput>poudriere bulk -j <replaceable>10amd64</replaceable> -p <replaceable>local</replaceable> -z <replaceable>workstation</replaceable> -f <replaceable>10amd64-local-workstation-pkglist</replaceable></userinput></screen>
+
+ <para>Durante a execução, pressionar <keycombo action="simul"><keycap>Ctrl</keycap><keycap>t</keycap></keycombo> exibe o estado atual da compilação. O <application>Poudriere</application> também cria arquivos em <filename>/poudriere/logs/bulk/<replaceable>jailname</replaceable></filename> que podem ser usados ​​com um servidor da Web para exibir informações de compilação.</para>
+
+ <para>Após a conclusão, os novos pacotes estão agora disponíveis para instalação a partir do repositório <application>poudriere</application>.</para>
+
+ <para>Para obter maiores informações sobre o uso do <application>poudriere</application>, consulte <citerefentry vendor="ports"><refentrytitle>poudriere</refentrytitle><manvolnum>8</manvolnum></citerefentry> e o site principal, <link xlink:href="https://github.com/freebsd/poudriere/wiki"/>.</para>
+ </sect2>
+ <sect2>
+ <title>Configurando Clientes do pkg para usar um repositório de Poudriere</title>
+
+ <para>Embora seja possível usar um repositório personalizado ao lado do repositório oficial, às vezes é útil desativar o repositório oficial. Isso é feito criando um arquivo de configuração que substitui e desativa o arquivo de configuração oficial. Crie o <filename>/usr/local/etc/pkg/repos/FreeBSD.conf</filename> que deverá conter o seguinte:</para>
+
+ <programlisting>FreeBSD: {
+ enabled: no
+}</programlisting>
+
+ <para>Geralmente, é mais fácil servir um repositório poudriere para as máquinas clientes via HTTP. Configure um servidor da web para servir o diretório de pacotes, por exemplo: <filename>/usr/local/poudriere/data/packages/<replaceable>10amd64</replaceable></filename>, onde <filename><replaceable>10amd64</replaceable></filename> é o nome da compilação.</para>
+
+ <para>Se a URL para o repositório de pacotes for: <literal>http://pkg.example.com/10amd64</literal>, o arquivo de configuração do repositório em <filename>/usr/local/etc/pkg/repos/custom.conf</filename> ficaria assim:</para>
+
+ <programlisting>custom: {
+ url: "<replaceable>http://pkg.example.com/10amd64</replaceable>",
+ enabled: yes,
+}</programlisting>
+ </sect2>
+ </sect1>
+
+ <sect1 xml:id="ports-nextsteps">
+ <title>Considerações pós-instalação</title>
+
+ <para>Independentemente do software ter sido instalado a partir de um pacote binário ou de um port, a maioria dos aplicativos de terceiros requer algum nível de configuração após a instalação. Os seguintes comandos e locais podem ser usados ​​para ajudar a determinar o que foi instalado com o aplicativo.</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>A maioria dos aplicativos instala pelo menos um arquivo de configuração padrão em <filename>/usr/local/etc</filename>. Nos casos em que um aplicativo possui um grande número de arquivos de configuração, um subdiretório será criado para mantê-los. Geralmente, os arquivos de configuração de exemplo são instalados e terminam com um sufixo, como <filename>.sample</filename>. Os arquivos de configuração devem ser revisados ​​e possivelmente editados para atender às necessidades do sistema. Para editar um arquivo de amostra, primeiro copie-o sem a extensão <filename>.sample</filename>.</para>
+ </listitem>
+
+ <listitem>
+ <para>As aplicações que fornecem documentação irão instalá-la em <filename>/usr/local/share/doc</filename> e muitos aplicativos também instalam páginas de manual. Esta documentação deve ser consultada antes de continuar.</para>
+ </listitem>
+
+ <listitem>
+ <para>Alguns aplicativos executam serviços que devem ser adicionados ao <filename>/etc/rc.conf</filename> antes de iniciar o aplicativo. Esses aplicativos geralmente instalam um script de inicialização em <filename>/usr/local/etc/rc.d</filename>. Veja <link linkend="configtuning-starting-services"> Iniciando Serviços </link> para maiores informações.</para>
+
+ <note>
+ <para>Por padrão, os aplicativos não executam o script de inicialização durante a instalação, nem executam o script de parada após a desinstalação ou atualização. Essa decisão é deixada para o administrador do sistema.</para>
+ </note>
+
+ </listitem>
+
+ <listitem>
+ <para>Os usuários de <citerefentry><refentrytitle>csh</refentrytitle><manvolnum>1</manvolnum></citerefentry> devem executar <command>rehash</command> para reconstruir a lista dos binários conhecidos nos shells <envar>PATH</envar>.</para>
+ </listitem>
+
+ <listitem>
+ <para>Use <command>pkg info</command> para determinar quais arquivos, páginas man e binários foram instalados com o aplicativo.</para>
+ </listitem>
+ </itemizedlist>
+ </sect1>
+
+ <sect1 xml:id="ports-broken">
+ <title>Lidando com ports quebrados</title>
+
+ <para>Quando um port não é compilado ou instalado, tente o seguinte:</para>
+
+ <orderedlist>
+ <listitem>
+ <para>Procure para ver se há uma correção pendente para o port no <link xlink:href="@@URL_RELPREFIX@@/support.html">Banco de Dados do Relatório de Problemas</link>. Nesse caso, implementar a correção proposta pode corrigir o problema.</para>
+ </listitem>
+
+ <listitem>
+ <para>Peça ajuda ao mantenedor do port. Digite <command>make maintainer</command> no diretório do port ou leia o <filename>Makefile</filename> do port para encontrar o endereço de e-mail do mantenedor. Lembre-se de incluir a linha <literal>$FreeBSD:</literal> do <filename>Makefile</filename> do port e a saída que leva ao erro no e-mail para o mantenedor.</para>
+
+ <note>
+ <para>Alguns ports não são mantidos por um indivíduo, mas sim por um grupo de mantenedores representado por uma <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/articles/mailing-list-faq/article.html">lista de discussão</link>. Muitos, mas não todos, esses endereços se parecem com <email role="nolink">freebsd-<replaceable>listname</replaceable>@FreeBSD.org</email>. Por favor, leve isso em consideração ao enviar um email.</para>
+
+ <para>Em particular, os ports mantidos por <email role="nolink">ports@FreeBSD.org</email> não são mantidos por um indivíduo específico. Em vez disso, quaisquer correções e suporte vêm da comunidade geral que se inscreve nessa lista de discussão. Mais voluntários são sempre necessários!</para>
+ </note>
+
+ <para>Se não houver resposta ao email, use o Bugzilla para enviar um relatório de bug usando as instruções em <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/articles/problem-reports/article.html"> Escrevendo Relatórios de Problemas do FreeBSD</link>.</para>
+ </listitem>
+
+ <listitem>
+ <para>Conserte-o! O <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/porters-handbook/index.html">Porters Handbook</link> inclui informações detalhadas sobre a infra-estrutura da arvore de ports para que você possa corrigir possiveis erros na compilacao de um ports que quebrou ou ocasionou um erro de compilacao ou até mesmo submeta seu próprio projeto!</para>
+ </listitem>
+
+ <listitem>
+ <para>Instale o pacote em vez do port usando as instruções em <xref linkend="pkgng-intro"/>.</para>
+ </listitem>
+ </orderedlist>
+ </sect1>
+</chapter>
+
+
+<!--
+ The FreeBSD Documentation Project
+
+ $FreeBSD$
+-->
+<chapter version="5.0" xml:id="x11">
+ <!--
+ <chapterinfo>
+ <authorgroup>
+ <author>
+ <firstname>Ken</firstname>
+ <surname>Tom</surname>
+ <contrib>Updated for X.Org's X11 server by </contrib>
+ </author>
+ <author>
+ <firstname>Marc</firstname>
+ <surname>Fonvieille</surname>
+ </author>
+ </authorgroup>
+ </chapterinfo>
+ -->
+
+ <title>O sistema X Window</title>
+
+ <sect1 xml:id="x11-synopsis">
+ <title>Sinopse</title>
+
+ <para>Uma instalação padrão do FreeBSD usando o <application>bsdinstall</application> não irá instalar automaticamente uma interface gráfica para o usuário. Este capítulo descreve como instalar e configurar o <application>Xorg</application>, que fornece o sistema X Window open source usado para fornecer um ambiente gráfico. Em seguida, descreve como encontrar e instalar um ambiente de área de trabalho ou um gerenciador de janelas.</para>
+
+ <note>
+ <para>Os usuários que preferem um método de instalação que configure automaticamente o <application>Xorg</application> e que ofereça uma grande variedade de opções de gerenciadores de janela durante a instalação devem consultar o web site <link xlink:href="http://www.trueos.org/"/>.</para>
+ </note>
+
+ <para>Para obter maiores informações sobre o hardware de vídeo suportado pelo <application>Xorg</application>, consulte o web site <link xlink:href="http://www.x.org/">x.org</link>.</para>
+
+ <para>Depois de ler este capítulo, você saberá:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>Quais são os vários componentes do Sistema X Window e como eles interoperam.</para>
+ </listitem>
+
+ <listitem>
+ <para>Como instalar e configurar o <application>Xorg</application>.</para>
+ </listitem>
+
+ <listitem>
+ <para>Como instalar e configurar vários gerenciadores de janelas e ambientes de desktop.</para>
+ </listitem>
+
+ <listitem>
+ <para>Como usar fontes <trademark class="registered">TrueType</trademark> no <application>Xorg</application>.</para>
+ </listitem>
+
+ <listitem>
+ <para>Como configurar seu sistema para usar um sistema de login gráfico (<application>XDM</application>).</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>Antes de ler este capítulo, você deve:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>Saber como instalar softwares adicionais de terceiros, conforme descrito em <xref linkend="ports"/>.</para>
+ </listitem>
+ </itemizedlist>
+ </sect1>
+
+ <sect1 xml:id="x-understanding">
+ <title>Terminologia</title>
+
+ <para>Embora não seja necessário entender todos os detalhes dos vários componentes do Sistema X Window e como eles interagem, algum conhecimento básico desses componentes pode ser útil.</para>
+
+ <variablelist>
+ <varlistentry>
+ <term>Servidor X</term>
+
+ <listitem>
+ <para>O X foi projetado desde o início para ser centrado em rede e para adotar um modelo <quote>cliente-servidor</quote>. Neste modelo, o <quote>Servidor X</quote> é executado no computador que possui o teclado, o monitor e o mouse conectados. A responsabilidade do servidor inclui tarefas como gerenciar o monitor, manipular a entrada do teclado e do mouse e manipular a entrada ou saída de outros dispositivos, como um tablet ou um projetor de vídeo. Isso confunde algumas pessoas, porque a terminologia X é exatamente o oposto do que eles esperam. Eles esperam que o <quote>X server</quote> seja a grande máquina poderosa no final das contas, e o <quote>Ciente X</quote> seja a máquina em sua mesa.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>Cliente X</term>
+
+ <listitem>
+ <para>Cada aplicativo X, como o <application>XTerm</application> ou o <application>Firefox</application>, é um <quote>cliente</quote>. Um cliente envia mensagens para o servidor, como <quote>Por favor, desenhe uma janela nessas coordenadas</quote>, e o servidor envia de volta mensagens como <quote>O usuário apenas clicou no botão OK</quote>.</para>
+
+ <para>Em um ambiente doméstico ou de uma pequena empresa, o servidor X e os clientes X geralmente são executados no mesmo computador. Também é possível executar o servidor X em um computador menos potente e executar os aplicativos X em um sistema mais poderoso. Nesse cenário, a comunicação entre o cliente X e o servidor ocorre através da rede.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>Gerenciador de janelas</term>
+
+ <listitem>
+ <para> O X não dita como as janelas devem se parecer na tela, como movê-las com o mouse, quais teclas devem ser usadas para mover-se entre as janelas, como devem ficar as barras de título em cada janela, se elas têm ou não botões para fechar nelas e assim por diante. Em vez disso, o X delega essa responsabilidade para um gerenciador de janelas separado. Existem <link xlink:href="http://www.xwinman.org/">dezenas de gerenciadores de janelas</link> disponíveis. Cada gerenciador de janelas oferece uma aparência diferente: alguns oferecem suporte a desktops virtuais, alguns permitem pressionamentos de tecla personalizados para gerenciar a área de trabalho, alguns têm um botão <quote>Iniciar</quote> e alguns são personalizáveis, permitindo uma alteração completa da aparência da área de trabalho. Os gerenciadores de janelas estão disponíveis na categoria <filename>x11-wm</filename> da coleção de ports.</para>
+
+ <para>Cada gerenciador de janelas usa um mecanismo de configuração diferente. Alguns esperam que o arquivo de configuração seja escrito à mão, enquanto outros fornecem ferramentas gráficas para a maioria das tarefas de configuração.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>Ambiente de desktop</term>
+
+ <listitem>
+ <para>O <application>KDE</application> e o <application>GNOME</application> são considerados ambientes de desktop, pois incluem um conjunto completo de aplicativos para executar tarefas comuns de desktop. Estes podem incluir pacotes de escritório, navegadores da web e jogos.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>Política de foco</term>
+
+ <listitem>
+ <para>O gerenciador de janelas é responsável pela política de foco do mouse. Essa política fornece alguns meios para escolher qual janela está recebendo ativamente as teclas digitadas e também deve indicar visivelmente qual janela está ativa no momento.</para>
+
+ <para>Uma política de foco é chamada <quote>click-to-focus</quote>. Neste modelo, uma janela fica ativa ao receber um clique do mouse. Na política <quote>focus-follows-mouse</quote>, a janela que está sob o ponteiro do mouse tem foco e o foco é alterado apontando para outra janela. Se o mouse estiver sobre a janela raiz, esta janela estará focada. No modelo <quote>sloppy-focus</quote>, se o mouse for movido sobre a janela raiz, a janela usada mais recentemente ainda terá o foco. Com sloppy-focus, o foco só é alterado quando o cursor entra em uma nova janela, e não ao sair da janela atual. Na política de <quote>click-to-focus</quote>, a janela ativa é selecionada pelo clique do mouse. A janela pode então ser destacada para aparecer na frente de todas as outras janelas. Todas as teclas digitadas serão direcionadas para esta janela, mesmo se o cursor for movido para outra janela.</para>
+
+ <para>Diferentes gerenciadores de janela suportam diferentes modelos de foco. Todos eles suportam click-to-focus, e a maioria deles também suporta outras políticas. Consulte a documentação do gerenciador de janelas para determinar quais modelos de foco estão disponíveis.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>Widgets</term>
+
+ <listitem>
+ <para>Widget é um termo para todos os itens na interface do usuário que podem ser clicados ou manipulados de alguma forma. Isso inclui botões, caixas de seleção, botões de opção, ícones e listas. Um kit de ferramentas de widget é um conjunto de widgets usado para criar aplicativos gráficos. Existem vários toolkits de widgets populares, incluindo o Qt, usado pelo <application>KDE</application>, e o GTK+, usado pelo <application>GNOME</application>. Como resultado, os aplicativos terão uma aparência e comportamentos diferentes, dependendo de qual kit de ferramentas de widget foi usado para criar o aplicativo.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </sect1>
+
+ <sect1 xml:id="x-install">
+ <title>Instalando o <application>Xorg</application></title>
+
+ <para>No FreeBSD, o <application>Xorg</application> pode ser instalado como um pacote ou port.</para>
+
+ <para>O pacote binário pode ser instalado rapidamente, mas com menos opções de personalização:</para>
+
+ <screen><prompt>#</prompt> <userinput>pkg install xorg</userinput></screen>
+
+ <para>Para compilar e instalar a partir da Coleção de Ports:</para>
+
+ <screen><prompt>#</prompt> <userinput>cd /usr/ports/x11/xorg</userinput>
+<prompt>#</prompt> <userinput>make install clean</userinput></screen>
+
+ <para>Qualquer uma dessas instalações resulta no sistema completo do <application>Xorg</application> sendo instalado. Pacotes binários são a melhor opção para a maioria dos usuários.</para>
+
+ <para>Uma versão menor do sistema X adequada para usuários experientes está disponível em <package>x11/xorg-minimal</package>. A maioria dos documentos, bibliotecas e aplicativos não será instalada. Algumas aplicações requerem esses componentes adicionais para funcionarem.</para>
+ </sect1>
+
+ <sect1 xml:id="x-config">
+ <title>Configuração do <application>Xorg</application></title>
+
+ <info>
+ <author><personname> <firstname>Warren</firstname> <surname>Block</surname> </personname> <contrib>Originalmente contribuído por</contrib></author>
+ </info>
+
+ <indexterm><primary>Xorg</primary></indexterm>
+ <indexterm><primary><application>Xorg</application></primary></indexterm>
+
+ <sect2 xml:id="x-config-quick-start">
+ <title>Inicio Rápido</title>
+
+ <para>O <application>Xorg</application> suporta as placas de vídeo, teclados e dispositivos USB mais comuns.</para>
+
+ <tip>
+ <para>Placas de vídeo, monitores e dispositivos de entrada são detectados automaticamente e não exigem nenhuma configuração manual. Não crie o <filename>xorg.conf</filename> ou execute o passo <option>-configure</option> a menos que a configuração automática falhe.</para>
+ </tip>
+
+ <procedure>
+ <step>
+ <para>Se o <application>Xorg</application> tiver sido usado neste computador antes, mova ou remova qualquer arquivo de configuração existente:</para>
+
+ <screen><prompt>#</prompt> <userinput>mv /etc/X11/xorg.conf ~/xorg.conf.etc</userinput>
+<prompt>#</prompt> <userinput>mv /usr/local/etc/X11/xorg.conf ~/xorg.conf.localetc</userinput></screen>
+ </step>
+
+ <step>
+ <para>Adicione o usuário que executará o <application>Xorg</application> ao grupo <literal>video</literal> ou <literal>wheel</literal> para ativar a aceleração 3D quando disponível. Para adicionar o usuário <replaceable>jru</replaceable> ao grupo que estiver disponível:</para>
+
+ <screen><prompt>#</prompt> <userinput>pw groupmod video -m <replaceable>jru</replaceable> || pw groupmod wheel -m <replaceable>jru</replaceable></userinput></screen>
+ </step>
+
+ <step>
+ <para>O gerenciador de janelas <acronym>TWM</acronym> é incluído por padrão. Ele é iniciado quando o <application>Xorg</application> é iniciado:</para>
+
+ <screen><prompt>%</prompt> <userinput>startx</userinput></screen>
+ </step>
+
+ <step>
+ <para>Em algumas versões mais antigas do FreeBSD, o console do sistema deve ser definido como <citerefentry><refentrytitle>vt</refentrytitle><manvolnum>4</manvolnum></citerefentry> antes que a volta para o console de texto funcione corretamente. Veja <xref linkend="x-config-kms"/>.</para>
+ </step>
+ </procedure>
+ </sect2>
+
+ <sect2 xml:id="x-config-user-group">
+ <title>Grupo de Usuários para Vídeo Acelerado</title>
+
+ <para>O acesso ao <filename>/dev/dri</filename> é necessário para permitir a aceleração 3D nas placas de vídeo. Geralmente é mais simples adicionar o usuário que estará executando o X no grupo <literal>video</literal> ou no <literal>wheel</literal>. Aqui, o <citerefentry> <refentrytitle>pw</refentrytitle><manvolnum>8</manvolnum> </citerefentry> é usado para adicionar o usuário <replaceable>slurms</replaceable> ao grupo <literal>video</literal>, ou ao grupo <literal>wheel</literal> se não houver nenhum grupo <literal>video</literal>:</para>
+
+ <screen><prompt>#</prompt> <userinput>pw groupmod video -m <replaceable>slurms</replaceable> || pw groupmod wheel -m <replaceable>slurms</replaceable></userinput></screen>
+ </sect2>
+
+ <sect2 xml:id="x-config-kms">
+ <title>Configuração do Modo Kernel (<acronym>KMS</acronym>)</title>
+
+ <para>Quando o computador alterna a exibição do console para uma resolução de tela mais alta para o X, ele deve definir o <emphasis>modo</emphasis> da saída de vídeo. Versões recentes do <acronym>Xorg</acronym> usam um sistema dentro do kernel para fazer essas mudanças de modo mais eficiente. Versões mais antigas do FreeBSD usam o <citerefentry><refentrytitle>sc</refentrytitle> <manvolnum>4</manvolnum></citerefentry>, que não tem conhecimento do sistema <acronym>KMS</acronym>. O resultado final é que depois de fechar o X, o console do sistema fica em branco, embora ainda esteja funcionando. O console <citerefentry><refentrytitle>vt</refentrytitle> <manvolnum>4</manvolnum> </citerefentry> mais recente evita esse problema.</para>
+
+ <para>Adicione esta linha ao <filename>/boot/loader.conf</filename> para ativar o <citerefentry><refentrytitle>vt</refentrytitle> <manvolnum>4</manvolnum></citerefentry>:</para>
+
+ <programlisting>kern.vty=vt</programlisting>
+ </sect2>
+
+ <sect2 xml:id="x-config-files">
+ <title>Arquivos de Configuração</title>
+
+ <para>A configuração manual geralmente não é necessária. Por favor, não crie manualmente arquivos de configuração, a menos que a autoconfiguração não funcione.</para>
+
+ <sect3 xml:id="x-config-files-directory">
+ <title>Diretório</title>
+
+ <para>O <application>Xorg</application> procura em vários diretórios por arquivos de configuração. O <filename>/usr/local/etc/X11/</filename> é o diretório recomendado para esses arquivos no FreeBSD. Usar esse diretório ajuda a manter os arquivos dos aplicativos separados dos arquivos do sistema operacional.</para>
+
+ <para>Armazenar arquivos de configuração no diretório legado <filename>/etc/X11/</filename> ainda funciona. No entanto, isso combina arquivos de aplicativos com os arquivos básicos do FreeBSD e não é recomendado.</para>
+ </sect3>
+
+ <sect3 xml:id="x-config-files-single-or-multi">
+ <title>Arquivos Únicos ou Múltiplos</title>
+
+ <para>É mais fácil usar multiplos arquivos em que cada um controla uma configuração específica ao invés do único e tradicional <filename>xorg.conf</filename>. Esses arquivos são armazenados no subdiretório <filename>xorg.conf.d/</filename> do diretório principal do arquivo de configuração. O caminho completo é tipicamente <filename>/usr/local/etc/X11/xorg.conf.d/</filename>.</para>
+
+ <para>Exemplos desses arquivos serão mostrados posteriormente nesta seção.</para>
+
+ <para>O tradicional e único arquivo <filename>xorg.conf</filename> ainda funciona, mas não é tão claro e nem tão flexível quanto vários arquivos no subdiretório <filename>xorg.conf.d/</filename>.</para>
+ </sect3>
+ </sect2>
+
+ <sect2 xml:id="x-config-video-cards">
+ <title>Placas de Vídeo</title>
+
+ <para>Devido as mudanças feitas nas versões recentes do FreeBSD, agora é possível usar drivers gráficos fornecidos pelo Framework do Ports, assim como pelos pacotes. Assim sendo, os usuários podem usar um dos seguintes drivers disponíveis em <package>graphics/drm-kmod</package>.</para>
+
+ <variablelist>
+ <varlistentry xml:id="x-config-video-cards-ports">
+ <term>Intel KMS driver</term>
+ <term>Radeon KMS driver</term>
+ <term>AMD KMS driver</term>
+
+ <listitem>
+ <para>A aceleração 2D e 3D é suportada na maioria das placas gráficas do driver Intel KMS fornecidas pela Intel.</para>
+
+ <para>Nome do driver: <literal>i915kms</literal></para>
+
+ <para>A aceleração 2D e 3D é suportada na maioria das placas gráficas de driver Radeon KMS mais antigas fornecidas pela AMD.</para>
+
+ <para>Nome do Driver: <literal>radeonkms</literal></para>
+
+ <para>A aceleração 2D e 3D é suportada nas mais recentes placas gráficas do driver AMD KMS fornecidas pela AMD.</para>
+
+ <para>Nome do Driver: <literal>amdgpu</literal></para>
+
+ <para>Para referência, veja <link xlink:href="https://en.wikipedia.org/wiki/List_of_Intel_graphics_processing_units"/> ou <link xlink:href="https://en.wikipedia.org/wiki/List_of_AMD_graphics_processing_units"/> para uma lista das GPUs suportadas.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry xml:id="x-config-video-cards-intel">
+ <term><trademark class="registered">Intel</trademark></term>
+
+ <listitem>
+ <para>A aceleração 3D é suportada na maioria dos chipsets gráficos da <trademark class="registered">Intel</trademark> até o Ivy Bridge (HD Graphics 2500, 4000 e P4000), incluindo Iron Lake (HD Graphics) e Sandy Bridge (HD Graphics 2000) .</para>
+
+ <para>Nome do driver: <literal>intel</literal></para>
+
+ <para>Para referência, veja <link xlink:href="https://en.wikipedia.org/wiki/List_of_Intel_graphics_processing_units"/>.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry xml:id="x-config-video-cards-radeon">
+ <term><trademark class="registered">AMD</trademark> Radeon</term>
+
+ <listitem>
+ <para>Aceleração 2D e 3D é suportada em placas Radeon das mais antigas até a série HD6000.</para>
+
+ <para>Nome do Driver: <literal>radeon</literal></para>
+
+ <para>Para referência, veja <link xlink:href="https://en.wikipedia.org/wiki/List_of_AMD_graphics_processing_units"/>.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry xml:id="x-config-video-cards-nvidia">
+ <term>NVIDIA</term>
+
+ <listitem>
+ <para>Vários drivers da NVIDIA estão disponíveis na categoria <filename>x11</filename> da Coleção de Ports. Instale o driver que corresponde à sua placa de vídeo.</para>
+
+ <para>Para referência, veja <link xlink:href="https://en.wikipedia.org/wiki/List_of_Nvidia_graphics_processing_units"/>.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry xml:id="x-config-video-cards-hybrid">
+ <term>Gráficos Híbridos de Combinação</term>
+
+ <listitem>
+ <para>Alguns notebooks adicionam unidades de processamento gráfico adicionais àquelas incorporadas ao chipset ou ao processador. O <emphasis>Optimus</emphasis> combina o hardware da <trademark class="registered">Intel</trademark> e da NVIDIA. O <emphasis>Switchable Graphics</emphasis> ou <emphasis>Hybrid Graphics</emphasis> são uma combinação dos processadores <trademark class="registered">Intel</trademark> ou <trademark class="registered">AMD</trademark> e uma <acronym>GPU</acronym> <trademark class="registered">AMD</trademark> Radeon.</para>
+
+ <para>As implementações desses sistemas gráficos híbridos variam e o <application>Xorg</application> no FreeBSD não é capaz de controlar todas as versões deles.</para>
+
+ <para>Alguns computadores fornecem uma opção no <acronym>BIOS</acronym> para desativar um dos adaptadores gráficos ou selecionar um modo <emphasis>discreto</emphasis> que pode ser usado com um dos drivers de placa de vídeo padrão. Por exemplo, às vezes é possível desativar a <acronym>GPU</acronym> NVIDIA em um sistema Optimus. O vídeo <trademark class="registered">Intel</trademark> pode então ser usado com um driver <trademark class="registered">Intel</trademark>.</para>
+
+ <para>Configurações de <acronym>BIOS</acronym> dependem do modelo do computador. Em algumas situações, ambas <acronym>GPU</acronym>s podem ser deixadas ativadas, mas criar um arquivo de configuração que use apenas a <acronym>GPU</acronym> principal na seção <literal>Device</literal> é o suficiente para tornar esse sistema funcional.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry xml:id="x-config-video-cards-other">
+ <term>Outras placas de vídeo</term>
+
+ <listitem>
+ <para>Drivers para algumas placas de vídeo menos comuns podem ser encontrados no diretório <filename>x11-drivers</filename> da Coleção de Ports.</para>
+
+ <para>PLacas que não são suportadas por um driver específico ainda podem ser usadas ​​com o driver <package>x11-drivers/xf86-video-vesa</package>. Este driver é instalado pelo <package>x11/xorg</package>. Ele também pode ser instalado manualmente como <package>x11-drivers/xf86-video-vesa</package>. O <application>Xorg</application> tenta usar este driver quando um driver específico não é encontrado para a placa de vídeo.</para>
+
+ <para>O <package>x11-drivers/xf86-video-scfb</package> é um driver de vídeo não especializado similar que funciona em muitos computadores <acronym>UEFI</acronym> e <trademark class="registered">ARM</trademark>.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry xml:id="x-config-video-cards-file">
+ <term>Configurando o driver de vídeo em um arquivo</term>
+
+ <listitem>
+ <para>Para definir o driver <trademark class="registered">Intel</trademark> em um arquivo de configuração:</para>
+
+ <example xml:id="x-config-video-cards-file-intel">
+ <title>Selecione o driver de vídeo <trademark class="registered">Intel</trademark> em um arquivo</title>
+
+ <para><filename>/usr/local/etc/X11/xorg.conf.d/driver-intel.conf</filename></para>
+
+ <programlisting>Section "Device"
+ Identifier "Card0"
+ Driver "intel"
+ # BusID "PCI:1:0:0"
+EndSection</programlisting>
+
+ <para>Se mais de uma placa de vídeo estiver presente, o identificador <literal>BusID</literal> pode ser descomentado e configurado para selecionar a placa desejada. Uma lista de barramento de placa de vídeo <acronym>ID</acronym> pode ser exibida com <command>pciconf -lv | grep -B3 display</command>.</para>
+ </example>
+
+ <para>Para definir o driver Radeon em um arquivo de configuração:</para>
+
+ <example xml:id="x-config-video-cards-file-radeon">
+ <title>Selecione o driver de vídeo Radeon em um arquivo</title>
+
+ <para><filename>/usr/local/etc/X11/xorg.conf.d/driver-radeon.conf</filename></para>
+
+ <programlisting>Section "Device"
+ Identifier "Card0"
+ Driver "radeon"
+EndSection</programlisting>
+ </example>
+
+ <para>Para definir o driver <acronym>VESA</acronym> em um arquivo de configuração:</para>
+
+ <example xml:id="x-config-video-cards-file-vesa">
+ <title>Selecione o driver de vídeo <acronym>VESA</acronym> em um arquivo</title>
+
+ <para><filename>/usr/local/etc/X11/xorg.conf.d/driver-vesa.conf</filename></para>
+
+ <programlisting>Section "Device"
+ Identifier "Card0"
+ Driver "vesa"
+EndSection</programlisting>
+ </example>
+
+ <para>Para definir o driver <literal>scfb</literal> para uso com um computador <acronym>UEFI</acronym> ou <trademark class="registered">ARM</trademark>:</para>
+
+ <example xml:id="x-config-video-cards-file-scfb">
+ <title>Selecione o driver de vídeo <literal>scfb</literal> em um arquivo</title>
+
+ <para><filename>/usr/local/etc/X11/xorg.conf.d/driver-scfb.conf</filename></para>
+
+ <programlisting>Section "Device"
+ Identifier "Card0"
+ Driver "scfb"
+EndSection</programlisting>
+ </example>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </sect2>
+
+ <sect2 xml:id="x-config-monitors">
+ <title>Monitores</title>
+
+ <para>Quase todos os monitores suportam o padrão Extended Display Identification Data (<acronym>EDID</acronym>). O <application>Xorg</application> usa o <acronym>EDID</acronym> para se comunicar com o monitor e detectar as resoluções e taxas de atualização suportadas. Em seguida, seleciona a combinação mais adequada de configurações para usar com esse monitor.</para>
+
+ <para>Outras resoluções suportadas pelo monitor podem ser escolhidas definindo a resolução desejada nos arquivos de configuração, ou após o servidor X ter sido iniciado com <citerefentry vendor="xfree86"> <refentrytitle>xrandr</refentrytitle><manvolnum>1</manvolnum> </citerefentry>.</para>
+
+ <variablelist>
+ <varlistentry xml:id="x-config-monitors-xrandr">
+ <term>Usando <citerefentry vendor="xfree86"> <refentrytitle>xrandr</refentrytitle><manvolnum>1</manvolnum></citerefentry></term>
+
+ <listitem>
+ <para>Execute o <citerefentry vendor="xfree86"><refentrytitle>xrandr</refentrytitle><manvolnum>1</manvolnum> </citerefentry> sem nenhum parâmetro para ver uma lista de saídas de vídeo e modos de monitor detectados:</para>
+
+ <screen><prompt>%</prompt> <userinput>xrandr</userinput>
+Screen 0: minimum 320 x 200, current 3000 x 1920, maximum 8192 x 8192
+DVI-0 connected primary 1920x1200+1080+0 (normal left inverted right x axis y axis) 495mm x 310mm
+ 1920x1200 59.95*+
+ 1600x1200 60.00
+ 1280x1024 85.02 75.02 60.02
+ 1280x960 60.00
+ 1152x864 75.00
+ 1024x768 85.00 75.08 70.07 60.00
+ 832x624 74.55
+ 800x600 75.00 60.32
+ 640x480 75.00 60.00
+ 720x400 70.08
+DisplayPort-0 disconnected (normal left inverted right x axis y axis)
+HDMI-0 disconnected (normal left inverted right x axis y axis)</screen>
+
+ <para>Isso mostra que a saída <literal>DVI-0</literal> está sendo usada para exibir uma resolução de tela de 1920x1200 pixels a uma taxa de atualização de cerca de 60 Hz. Os monitores não estão conectados aos conectores <literal>DisplayPort-0</literal> e <literal>HDMI-0</literal>.</para>
+
+ <para>Qualquer um dos outros modos de exibição pode ser selecionado com <citerefentry vendor="xfree86"><refentrytitle>xrandr</refentrytitle> <manvolnum>1</manvolnum></citerefentry>. Por exemplo, para mudar para 1280x1024 a 60 Hz:</para>
+
+ <screen><prompt>%</prompt> <userinput>xrandr --mode 1280x1024 --rate 60</userinput></screen>
+
+ <para>Uma tarefa comum é usar a saída de vídeo externa em um notebook para um projetor de vídeo.</para>
+
+ <para>O tipo e a quantidade de conectores de saída variam entre os dispositivos, e o nome dado a cada saída varia de driver para driver. O que um driver chama de <literal>HDMI-1</literal>, outro pode chamar de <literal>HDMI1</literal>. Portanto, o primeiro passo é executar <citerefentry vendor="xfree86"><refentrytitle>xrandr</refentrytitle><manvolnum>1</manvolnum></citerefentry> para listar todas as saídas disponíveis:</para>
+
+ <screen><prompt>%</prompt> <userinput>xrandr</userinput>
+Screen 0: minimum 320 x 200, current 1366 x 768, maximum 8192 x 8192
+LVDS1 connected 1366x768+0+0 (normal left inverted right x axis y axis) 344mm x 193mm
+ 1366x768 60.04*+
+ 1024x768 60.00
+ 800x600 60.32 56.25
+ 640x480 59.94
+VGA1 connected (normal left inverted right x axis y axis)
+ 1280x1024 60.02 + 75.02
+ 1280x960 60.00
+ 1152x864 75.00
+ 1024x768 75.08 70.07 60.00
+ 832x624 74.55
+ 800x600 72.19 75.00 60.32 56.25
+ 640x480 75.00 72.81 66.67 60.00
+ 720x400 70.08
+HDMI1 disconnected (normal left inverted right x axis y axis)
+DP1 disconnected (normal left inverted right x axis y axis)</screen>
+
+ <para>Quatro saídas foram encontradas: os conectores <literal>LVDS1</literal> e <literal>VGA1</literal>, <literal>HDMI1</literal> e <literal>DP1</literal> do painel interno.</para>
+
+ <para>O projetor foi conectado à saída <literal>VGA1</literal>. O <citerefentry vendor="xfree86"> <refentrytitle>xrandr</refentrytitle><manvolnum>1</manvolnum></citerefentry> agora é usado para definir essa saída para a resolução nativa do projetor e adicionar o espaço adicional à direita da área de trabalho:</para>
+
+ <screen><prompt>%</prompt> <userinput>xrandr --output VGA1 --auto --right-of LVDS1</userinput></screen>
+
+ <para>A opção <literal>--auto</literal> escolhe a resolução e a taxa de atualização detectadas pelo <acronym>EDID</acronym>. Se a resolução não for detectada corretamente, um valor fixo pode ser fornecido com <literal>--mode</literal> em vez da instrução <literal>--auto</literal>. Por exemplo, a maioria dos projetores pode ser usada com uma resolução de 1024x768, que é definida com <literal>--mode 1024x768</literal>.</para>
+
+ <para>O <citerefentry vendor="xfree86"><refentrytitle>xrandr</refentrytitle><manvolnum>1</manvolnum></citerefentry> geralmente é executado a partir do <filename>.xinitrc</filename> para definir o modo apropriado quando o X é iniciado.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry xml:id="x-config-monitors-files">
+ <term>Configurando a resolução do monitor em um arquivo</term>
+
+ <listitem>
+ <para>Para definir uma resolução de tela de 1024x768 em um arquivo de configuração:</para>
+
+ <example>
+ <title>Defina a resolução de tela em um arquivo</title>
+
+ <para><filename>/usr/local/etc/X11/xorg.conf.d/screen-resolution.conf</filename></para>
+
+ <programlisting>Section "Screen"
+ Identifier "Screen0"
+ Device "Card0"
+ SubSection "Display"
+ Modes "1024x768"
+ EndSubSection
+EndSection</programlisting>
+ </example>
+
+ <para>Os poucos monitores que não possuem <acronym>EDID</acronym> podem ser configurados setando o <literal>HorizSync</literal> e o <literal>VertRefresh</literal> para o intervalo de frequências suportado pelo monitor.</para>
+
+ <example>
+ <title>Configurando Manualmente as Frequências do Monitor</title>
+
+ <para><filename>/usr/local/etc/X11/xorg.conf.d/monitor0-freq.conf</filename></para>
+
+ <programlisting>Section "Monitor"
+ Identifier "Monitor0"
+ HorizSync 30-83 # kHz
+ VertRefresh 50-76 # Hz
+EndSection</programlisting>
+ </example>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </sect2>
+
+ <sect2 xml:id="x-config-input">
+ <title>Dispositivos de Entrada</title>
+
+ <sect3 xml:id="x-config-input-keyboard">
+ <title>Teclados</title>
+
+ <variablelist>
+ <varlistentry xml:id="x-config-input-keyboard-layout">
+ <term>Layout do Teclado</term>
+
+ <listitem>
+ <para>A localização padronizada das teclas em um teclado é chamada de <emphasis>layout</emphasis>. Layouts e outros parâmetros ajustáveis ​​são listados em <citerefentry vendor="xfree86"><refentrytitle>xkeyboard-config</refentrytitle> <manvolnum>7</manvolnum></citerefentry>.</para>
+
+ <para>Um layout dos Estados Unidos é o padrão. Para selecionar um layout alternativo, defina as opções <literal>XkbLayout</literal> e <literal>XkbVariant</literal> em um <literal>InputClass</literal>. Isso será aplicado a todos os dispositivos de entrada que correspondam à classe.</para>
+
+ <para>Este exemplo seleciona um layout de teclado francês com a variante <literal>oss</literal>.</para>
+
+ <example>
+ <title>Definindo um layout de teclado</title>
+
+ <para><filename>/usr/local/etc/X11/xorg.conf.d/keyboard-fr-oss.conf</filename></para>
+
+ <programlisting>Section "InputClass"
+ Identifier "KeyboardDefaults"
+ Driver "keyboard"
+ MatchIsKeyboard "on"
+ Option "XkbLayout" "fr"
+ Option "XkbVariant" "oss"
+EndSection</programlisting>
+ </example>
+
+ <example>
+ <title>Definindo vários layouts de teclado</title>
+
+ <para>Define os layouts de teclado para Estados Unidos, Espanhol e Ucraniano. Alterne entre esses layouts pressionando <keycombo action="simul"><keycap>Alt</keycap> <keycap>Shift</keycap> </keycombo>. O <package>x11/xxkb</package> ou <package>x11/sbxkb</package> pode ser usado para um melhor controle da mudança de layout e dos indicadores do layout atual.</para>
+
+ <para><filename>/usr/local/etc/X11/xorg.conf.d/kbd-layout-multi.conf</filename></para>
+
+ <programlisting>Section "InputClass"
+ Identifier "All Keyboards"
+ MatchIsKeyboard "yes"
+ Option "XkbLayout" "us, es, ua"
+EndSection</programlisting>
+ </example>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry xml:id="x-config-input-keyboard-zap">
+ <term>Fechando o <application>Xorg</application> pelo teclado</term>
+
+ <listitem>
+ <para>X pode ser fechado com uma combinação de teclas. Por padrão, essa combinação de teclas não está definida porque entra em conflito com os comandos do teclado para alguns aplicativos. Ativar essa opção requer alterações na seção <literal>InputDevice</literal> do teclado:</para>
+
+ <example>
+ <title>Ativando o fechamento de X pelo teclado</title>
+
+ <para><filename>/usr/local/etc/X11/xorg.conf.d/keyboard-zap.conf</filename></para>
+
+ <programlisting>Section "InputClass"
+ Identifier "KeyboardDefaults"
+ Driver "keyboard"
+ MatchIsKeyboard "on"
+ Option "XkbOptions" "terminate:ctrl_alt_bksp"
+EndSection</programlisting>
+ </example>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </sect3>
+
+ <sect3 xml:id="x11-input-mice">
+ <title>Mouse e Dispositivos Similares</title>
+
+ <para>Muitos parâmetros do mouse podem ser ajustados com opções de configuração. Veja <citerefentry vendor="xorg"><refentrytitle>mousedrv</refentrytitle><manvolnum>4</manvolnum></citerefentry> para obter uma lista completa.</para>
+
+ <variablelist>
+ <varlistentry xml:id="x11-input-mice-buttons">
+ <term>Botões do Mouse</term>
+
+ <listitem>
+ <para>O número de botões em um mouse pode ser definido na seção <literal>InputDevice</literal> do <filename>xorg.conf</filename>. Para definir o número de botões para 7:</para>
+
+ <example>
+ <title>Definindo o número de botões do mouse</title>
+
+ <para><filename>/usr/local/etc/X11/xorg.conf.d/mouse0-buttons.conf</filename></para>
+
+ <programlisting>Section "InputDevice"
+ Identifier "Mouse0"
+ Option "Buttons" "7"
+EndSection</programlisting>
+ </example>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </sect3>
+ </sect2>
+
+ <sect2 xml:id="x-config-manual-configuration">
+ <title>Configuração manual</title>
+
+ <para>Em alguns casos, a autoconfiguração do <application>Xorg</application> não funciona com alguns hardwares específicos, ou uma configuração diferente é desejada. Para esses casos, um arquivo de configuração personalizado pode ser criado.</para>
+
+ <warning>
+ <para>Não crie arquivos de configuração manualmente, a menos que seja necessário. A configuração manual desnecessária pode impedir o funcionamento adequado.</para>
+ </warning>
+
+ <para>Um arquivo de configuração pode ser gerado pelo <application>Xorg</application> baseado no hardware detectado. Esse arquivo geralmente é um ponto de partida útil para configurações personalizadas.</para>
+
+ <para>Gerando um arquivo <filename>xorg.conf</filename>:</para>
+
+ <screen><prompt>#</prompt> <userinput>Xorg -configure</userinput></screen>
+
+ <para>O arquivo de configuração é salvo em <filename>/root/xorg.conf.new</filename>. Faça as alterações desejadas e teste esse arquivo com:</para>
+
+ <screen><prompt>#</prompt> <userinput>Xorg -config /root/xorg.conf.new</userinput></screen>
+
+ <para>Após a nova configuração ter sido ajustada e testada, ela pode ser dividida em arquivos menores no diretorio, <filename>/usr/local/etc/X11/xorg.conf.d/</filename>.</para>
+ </sect2>
+ </sect1>
+
+ <sect1 xml:id="x-fonts">
+ <!--
+ <sect1info>
+ <authorgroup>
+ <author>
+ <firstname>Murray</firstname>
+ <surname>Stokely</surname>
+ <contrib>Contributed by </contrib>
+ </author>
+ </authorgroup>
+ </sect1info>
+ -->
+ <title>Usando fontes no <application>Xorg</application></title>
+
+ <sect2 xml:id="type1">
+ <title>Fontes Type1</title>
+
+ <para>As fontes padrões que vem com o <application>Xorg</application> não são adequadas para muitas aplicações desktop. As fontes grandes aparecem irregulares e com aparência não profissional, e as fontes pequenas são quase ilegíveis. Contudo existem muitas fontes Type1 (<trademark class="registered">PostScript</trademark>) gratuitas de alta qualidade prontas para uso no <application>Xorg</application>. Por exemplo, a coleção de fontes URW (<package>x11-fonts/urwfonts</package>) inclui versões de alta qualidade de fontes type1 padrão (<trademark class="registered">Times Roman</trademark>, <trademark class="registered">Helvetica</trademark>, <trademark class="registered">Palatino</trademark> e outras). A coleção Freefonts (<package>x11-fonts/freefonts</package>) inclui muito mais fontes, mas a maioria delas direcionadas para uso em softwares gráficos como o <application>Gimp</application>, e não são tão completas para servir como fontes de tela. Além disso, o <application>Xorg</application> pode ser configurado para usar fontes <trademark class="registered">TrueType</trademark> com um minimo esforço. Para maiores detalhes sobre isso veja a página de manual do <citerefentry vendor="xfree86"><refentrytitle>X</refentrytitle><manvolnum>7</manvolnum></citerefentry> ou <xref linkend="truetype"/>.</para>
+
+ <para>Para instalar as coleções de fontes Type1 usando pacotes binários, execute os seguintes comandos:</para>
+
+ <screen><prompt>#</prompt> <userinput>pkg install urwfonts</userinput></screen>
+
+ <para>Como alternativa, para compilar a partir da coleção de Ports, execute os seguintes comandos:</para>
+
+ <screen><prompt>#</prompt> <userinput>cd /usr/ports/x11-fonts/urwfonts</userinput>
+<prompt>#</prompt> <userinput>make install clean</userinput></screen>
+
+ <para>Proceda da mesma forma com a freefont ou outras coleções. Para que o servidor X detecte essas fontes, adicione uma linha apropriada ao arquivo de configuração do servidor X (<filename>/etc/X11/xorg.conf</filename>):</para>
+
+ <programlisting>FontPath "/usr/local/share/fonts/urwfonts/"</programlisting>
+
+ <para>Alternativamente, na linha de comando de execução da sessão X:</para>
+
+ <screen><prompt>%</prompt> <userinput>xset fp+ /usr/local/share/fonts/urwfonts</userinput>
+<prompt>%</prompt> <userinput>xset fp rehash</userinput></screen>
+
+ <para>Isso funcionará, mas será perdido quando a sessão X for fechada, a menos que seja adicionada ao arquivo de inicialização (<filename>~/.xinitrc</filename> para uma sessão <command>startx</command> normal ou <filename>~/.xsession</filename> ao efetuar login através de um gerenciador de login gráfico como o <application>XDM</application>). Uma terceira forma é usar o novo <filename>/usr/local/etc/fonts/local.conf</filename>, como demonstrado em <xref linkend="antialias"/>.</para>
+ </sect2>
+
+ <sect2 xml:id="truetype">
+ <title>Fontes <trademark class="registered">TrueType</trademark></title>
+
+ <indexterm><primary>TrueType Fonts</primary></indexterm>
+ <indexterm><primary>fonts</primary> <secondary>TrueType</secondary></indexterm>
+
+ <para>O <application>Xorg</application> tem suporte nativo para renderizar fontes <trademark class="registered">TrueType</trademark>. Existem dois módulos diferentes que podem ativar essa funcionalidade. O módulo freetype é usado neste exemplo porque é mais consistente com os outros backends de renderização de fonte. Para habilitar o módulo freetype, basta adicionar a seguinte linha à seção <literal>"Module"</literal> do <filename>/etc/X11/xorg.conf</filename>.</para>
+
+ <programlisting>Load "freetype"</programlisting>
+
+ <para>Agora crie um diretório para as fontes <trademark class="registered">TrueType</trademark> (por exemplo, <filename>/usr/local/share/fonts/TrueType</filename>) e copie todas as fontes <trademark class="registered">TrueType</trademark> para este diretório. Tenha em mente que as fontes <trademark class="registered">TrueType</trademark> não podem ser obtidas diretamente de um <trademark class="registered">Apple</trademark> <trademark class="registered">Mac</trademark>; elas devem estar no formato <trademark class="registered">UNIX</trademark>/<trademark class="registered">MS-DOS</trademark>/<trademark class="registered">Windows</trademark> para uso pelo <application>Xorg</application>. Uma vez que os arquivos foram copiados para este diretório, use <application>mkfontdir</application> para criar um <filename>fonts.dir</filename>, para que o renderizador de fontes do X saiba que esses novos arquivos foram instalados. O <command>mkfontdir</command> pode ser instalado como um pacote binário com o comando:</para>
+
+ <screen><prompt>#</prompt> <userinput>pkg install mkfontdir</userinput></screen>
+
+ <para>Em seguida, crie um índice de arquivos de fontes X em um diretório:</para>
+
+ <screen><prompt>#</prompt> <userinput>cd /usr/local/share/fonts/TrueType</userinput>
+<prompt>#</prompt> <userinput>mkfontdir</userinput></screen>
+
+ <para>Agora adicione o diretório <trademark class="registered">TrueType</trademark> ao caminho da fonte. Isso é exatamente o mesmo descrito em <xref linkend="type1"/>:</para>
+
+ <screen><prompt>%</prompt> <userinput>xset fp+ /usr/local/share/fonts/TrueType</userinput>
+<prompt>%</prompt> <userinput>xset fp rehash</userinput></screen>
+
+ <para>ou adicione uma linha de <literal>FontPath</literal> ao <filename>xorg.conf</filename>.</para>
+
+ <para>Agora, o <application>Gimp</application>, o <application>Apache OpenOffice</application> e todos os outros aplicativos X devem reconhecer as fontes <trademark class="registered">TrueType</trademark> instaladas. Fontes extremamente pequenas (como o texto em uma tela de alta resolução em uma página da Web) e fontes extremamente grandes (dentro do <application> <trademark>StarOffice</trademark> </application>) ficarão muito melhores agora.</para>
+ </sect2>
+
+ <sect2 xml:id="antialias">
+ <!--
+ <sect2info>
+ <authorgroup>
+ <author>
+ <firstname>Joe Marcus</firstname>
+ <surname>Clarke</surname>
+ <contrib>Updated in May 2003 by</contrib>
+ </author>
+ </authorgroup>
+ </sect2info>
+ -->
+ <title>Fontes com Anti-Alias</title>
+
+ <indexterm><primary>anti-aliased fonts</primary></indexterm>
+ <indexterm><primary>fonts</primary> <secondary>anti-aliased</secondary></indexterm>
+
+ <para>Todas as fontes do <application>Xorg</application> que são encontradas em <filename>/usr/local/share/fonts/</filename> e <filename>~/.fonts/</filename> são automaticamente disponibilizadas para anti-aliasing para aplicativos compatíveis com Xft-aware. Os aplicativos mais recentes são compatíveis com o Xft-aware, incluindo o <application>KDE</application>, o <application>GNOME</application> e o <application>Firefox</application>.</para>
+
+ <para>Para controlar quais fontes são anti-aliased, ou para configurar as propriedades do anti-alias, crie (ou edite, se já existir) o arquivo <filename>/usr/local/etc/fonts/local.conf</filename>. Vários recursos avançados do sistema de fontes Xft podem ser ajustados usando este arquivo; Esta seção descreve apenas algumas possibilidades simples. Para maiores detalhes, por favor veja <citerefentry vendor="xorg"><refentrytitle>fonts-conf</refentrytitle> <manvolnum>5</manvolnum></citerefentry>.</para>
+
+ <indexterm><primary>XML</primary></indexterm>
+
+ <para>Este arquivo deve estar no formato XML. Preste muita atenção ao uso de letras maiusculas e minusculas e certifique-se de que todas as tags estejam corretamente fechadas. O arquivo começa com o cabeçalho XML usual seguido por uma definição DOCTYPE e, em seguida, a tag <literal>&lt;fontconfig&gt;</literal>:</para>
+
+ <programlisting>&lt;?xml version="1.0"?&gt;
+ &lt;!DOCTYPE fontconfig SYSTEM "fonts.dtd"&gt;
+ &lt;fontconfig&gt;</programlisting>
+
+ <para>Como dito anteriormente, todas as fontes em <filename>/usr/local/share/fonts/</filename> e <filename>~/.fonts/</filename> já estão disponíveis para aplicativos Xft-aware. Para adicionar outro diretório fora dessas duas árvores de diretórios, adicione uma linha como essa a <filename>/usr/local/etc/fonts/local.conf</filename>:</para>
+
+ <programlisting>&lt;dir&gt;/path/to/my/fonts&lt;/dir&gt;</programlisting>
+
+ <para>Depois de adicionar novas fontes e especialmente novos diretórios de fontes, reconstrua os caches de fontes:</para>
+
+ <screen><prompt>#</prompt> <userinput>fc-cache -f</userinput></screen>
+
+ <para>O anti-aliasing torna as bordas um pouco confusas, o que torna o texto muito pequeno mais legível e remove os <quote>serrilhados</quote> do texto grande, mas pode causar fadiga ocular se aplicado ao texto normal. Para excluir tamanhos de fonte menores que 14 pontos do anti-aliasing, inclua estas linhas:</para>
+
+ <programlisting> &lt;match target="font"&gt;
+ &lt;test name="size" compare="less"&gt;
+ &lt;double&gt;14&lt;/double&gt;
+ &lt;/test&gt;
+ &lt;edit name="antialias" mode="assign"&gt;
+ &lt;bool&gt;false&lt;/bool&gt;
+ &lt;/edit&gt;
+ &lt;/match&gt;
+ &lt;match target="font"&gt;
+ &lt;test name="pixelsize" compare="less" qual="any"&gt;
+ &lt;double&gt;14&lt;/double&gt;
+ &lt;/test&gt;
+ &lt;edit mode="assign" name="antialias"&gt;
+ &lt;bool&gt;false&lt;/bool&gt;
+ &lt;/edit&gt;
+ &lt;/match&gt;</programlisting>
+
+ <indexterm><primary>fonts</primary> <secondary>spacing</secondary></indexterm>
+
+ <para>O espaçamento para algumas fontes monoespaçadas também pode ser inadequado com o anti-aliasing. Este parece ser um problema com o <application>KDE</application>, em particular. Uma possível correção é forçar o espaçamento dessas fontes para que seja 100. Adicione essas linhas:</para>
+
+ <programlisting> &lt;match target="pattern" name="family"&gt;
+ &lt;test qual="any" name="family"&gt;
+ &lt;string&gt;fixed&lt;/string&gt;
+ &lt;/test&gt;
+ &lt;edit name="family" mode="assign"&gt;
+ &lt;string&gt;mono&lt;/string&gt;
+ &lt;/edit&gt;
+ &lt;/match&gt;
+ &lt;match target="pattern" name="family"&gt;
+ &lt;test qual="any" name="family"&gt;
+ &lt;string&gt;console&lt;/string&gt;
+ &lt;/test&gt;
+ &lt;edit name="family" mode="assign"&gt;
+ &lt;string&gt;mono&lt;/string&gt;
+ &lt;/edit&gt;
+ &lt;/match&gt;</programlisting>
+
+ <para>(isto cria um apelido para outros nomes comuns para fontes fixas como <literal>"mono"</literal>), e então adicione:</para>
+
+ <programlisting> &lt;match target="pattern" name="family"&gt;
+ &lt;test qual="any" name="family"&gt;
+ &lt;string&gt;mono&lt;/string&gt;
+ &lt;/test&gt;
+ &lt;edit name="spacing" mode="assign"&gt;
+ &lt;int&gt;100&lt;/int&gt;
+ &lt;/edit&gt;
+ &lt;/match&gt; </programlisting>
+
+ <para>Determinadas fontes, como Helvetica, podem ter um problema com o anti-alias. Geralmente isso se manifesta como uma fonte que parece cortada ao meio na vertical. Na pior das hipóteses, pode causar falhas nos aplicativos. Para evitar isso, considere adicionar o seguinte ao <filename>local.conf</filename>:</para>
+
+ <programlisting> &lt;match target="pattern" name="family"&gt;
+ &lt;test qual="any" name="family"&gt;
+ &lt;string&gt;Helvetica&lt;/string&gt;
+ &lt;/test&gt;
+ &lt;edit name="family" mode="assign"&gt;
+ &lt;string&gt;sans-serif&lt;/string&gt;
+ &lt;/edit&gt;
+ &lt;/match&gt; </programlisting>
+
+ <para>Depois de editar o <filename>local.conf</filename>, certifique-se de finalizar o arquivo com a tag <literal>&lt;/fontconfig&gt;</literal>. Não fazer isso fará com que as alterações sejam ignoradas.</para>
+
+ <para>Os usuários podem adicionar configurações personalizadas criando seus próprios arquivos <filename>~/.config/fontconfig/fonts.conf</filename>. Este arquivo usa o mesmo formato <acronym>XML</acronym> descrito acima.</para>
+
+ <indexterm><primary>LCD screen</primary></indexterm>
+ <indexterm><primary>Fonts</primary> <secondary>LCD screen</secondary></indexterm>
+
+ <para>Um último ponto: com uma tela de LCD, a amostragem de sub-pixels pode ser desejada. Isso basicamente trata os componentes vermelho, verde e azul (separados horizontalmente) separadamente para melhorar a resolução horizontal; os resultados podem ser dramáticos. Para habilitar isso, adicione a linha em algum lugar do <filename>local.conf</filename>:</para>
+
+ <programlisting> &lt;match target="font"&gt;
+ &lt;test qual="all" name="rgba"&gt;
+ &lt;const&gt;unknown&lt;/const&gt;
+ &lt;/test&gt;
+ &lt;edit name="rgba" mode="assign"&gt;
+ &lt;const&gt;rgb&lt;/const&gt;
+ &lt;/edit&gt;
+ &lt;/match&gt;</programlisting>
+
+ <note>
+ <para>Dependendo do tipo de display, o <literal>rgb</literal> pode precisar ser alterado para <literal>bgr</literal>, <literal>vrgb</literal> ou <literal>vbgr</literal>: experimente e veja qual funciona melhor.</para>
+ </note>
+ </sect2>
+ </sect1>
+
+ <sect1 xml:id="x-xdm">
+ <info>
+ <title>O Gerenciador de Display X</title>
+
+ <authorgroup>
+ <author><personname> <firstname>Seth</firstname> <surname>Kingsley</surname> </personname> <contrib> Contribuído Originalmente por </contrib></author>
+ </authorgroup>
+ </info>
+
+ <indexterm><primary>X Display Manager</primary></indexterm>
+ <para>O <application>Xorg</application> fornece um Gerenciador de Display X, o <application>XDM</application>, que pode ser usado para o gerenciamento de sessões de login. O <application>XDM</application> fornece uma interface gráfica para escolher em qual servidor de display se conectar para inserir informações de autorização, tal como uma combinação de login e senha.</para>
+
+ <para>Esta seção demonstra como configurar o X Display Manager no FreeBSD. Alguns ambientes de desktop fornecem seu próprio gerenciador de login gráfico. Consulte <xref linkend="x11-wm-gnome"/> para instruções sobre como configurar o GNOME Display Manager e <xref linkend="x11-wm-kde"/> para instruções sobre como configurar o KDE Display Manager.</para>
+
+ <sect2>
+ <title>Configurando o <application>XDM</application></title>
+
+ <para>Para instalar o <application>XDM</application>, use o pacote ou ports <package>x11/xdm</package>. Uma vez instalado, o <application>XDM</application> pode ser configurado para ser executado quando a máquina for inicializada editando esta entrada em <filename>/etc/ttys</filename>:</para>
+
+ <screen>ttyv8 "/usr/local/bin/xdm -nodaemon" xterm off secure</screen>
+
+ <para>Altere o <literal>off</literal> para <literal>on</literal> e salve a edição. O <literal>ttyv8</literal> nesta entrada indica que o <application>XDM</application> será executado no nono terminal virtual.</para>
+
+ <para>O diretório de configuração do <application>XDM</application> está localizado em <filename>/usr/local/lib/X11/xdm</filename>. Esse diretório contém diversos arquivos usados para alterar o comportamento e a aparência do <application>XDM</application>, bem como alguns scripts e programas usados para configurar a área de trabalho quando o <application>XDM</application> está em execução. <xref linkend="xdm-config-files"/> resume a função de cada um desses arquivos. A sintaxe exata e o uso desses arquivos são descritos em <citerefentry vendor="xfree86"><refentrytitle>xdm</refentrytitle><manvolnum>1</manvolnum></citerefentry>.</para>
+
+ <table frame="none" pgwide="1" xml:id="xdm-config-files">
+ <title>Arquivos de Configuração do XDM</title>
+
+ <tgroup cols="2">
+ <thead>
+ <row>
+ <entry>Arquivo</entry>
+ <entry>Descrição</entry>
+ </row>
+ </thead>
+
+ <tbody>
+ <row>
+ <entry><filename>Xaccess</filename></entry>
+ <entry>O protocolo para conectar ao <application>XDM</application> é chamado de X Display Manager Connection Protocol (<acronym>XDMCP</acronym>). Este arquivo é um conjunto de regras de autorização do cliente para controlar conexões de <acronym>XDMCP</acronym> de máquinas remotas. Por padrão, esse arquivo não permite a conexão de nenhum cliente remoto.</entry>
+ </row>
+
+ <row>
+ <entry><filename>Xresources</filename></entry>
+ <entry>Este arquivo controla a aparência do seletor de display <application>XDM</application> e das telas de login. A configuração padrão é uma janela de login retangular simples com o nome do host da máquina exibido na parte superior em uma fonte grande e <quote>Login:</quote> e <quote>Senha:</quote> solicitado abaixo. O formato deste arquivo é idêntico ao arquivo app-defaults descrito na documentação do <application>Xorg</application>.</entry>
+ </row>
+
+ <row>
+ <entry><filename>Xservers</filename></entry>
+ <entry>A lista de exibições locais e remotas que o seletor deve fornecer como opções de login.</entry>
+ </row>
+
+ <row>
+ <entry><filename>Xsession</filename></entry>
+ <entry>Script de sessão padrão para logins que é executado pelo <application>XDM</application> após um usuário realizar o login. Isso aponta para um script de sessão personalizado em <filename>~/.xsession</filename>.</entry>
+ </row>
+
+ <row>
+ <entry><filename>Xsetup_</filename>*</entry>
+ <entry>Script para iniciar automaticamente os aplicativos antes de exibir as interfaces de seleção ou de login. Há um script para cada exibição sendo usada, denominada <filename>Xsetup_*</filename>, em que <literal>*</literal> é o número de exibição local. Geralmente, esses scripts executam um ou dois programas em segundo plano, como <command>xconsole</command>.</entry>
+ </row>
+
+ <row>
+ <entry><filename>xdm-config</filename></entry>
+ <entry>Configuração global para todos os monitores executados nesta máquina.</entry>
+ </row>
+
+ <row>
+ <entry><filename>xdm-errors</filename></entry>
+ <entry>Contém os erros gerados pelo programa do servidor. Se um display que o <application>XDM</application> está tentando iniciar travar, procure neste arquivo por mensagens de erro. Essas mensagens também são gravadas no <filename>~/.xsession-errors</filename> do usuário.</entry>
+ </row>
+
+ <row>
+ <entry><filename>xdm-pid</filename></entry>
+ <entry>O <acronym>ID</acronym> do processo <application>XDM</application> em execução.</entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table>
+ </sect2>
+
+ <sect2>
+ <title>Configurando o acesso remoto</title>
+
+ <para>Por padrão, somente usuários no mesmo sistema podem efetuar login usando o <application>XDM</application>. Para permitir que os usuários em outros sistemas se conectem ao servidor de Display, edite as regras de controle de acesso e ative o listener de conexão.</para>
+
+ <para>Para configurar o <application>XDM</application> para escutar qualquer conexão remota, comente a linha <literal>DisplayManager.requestPort</literal> em <filename>/usr/local/etc/X11/xdm/xdm-config</filename> colocando um <literal>!</literal> na frente dele:</para>
+
+ <screen>! SECURITY: do not listen for XDMCP or Chooser requests
+! Comment out this line if you want to manage X terminals with xdm
+DisplayManager.requestPort: 0</screen>
+
+ <para>Salve as edições e reinicie o <application>XDM</application>. Para restringir o acesso remoto, veja as entradas de exemplo em <filename>/usr/local/lib/X11/xdm/Xaccess</filename> e consulte <citerefentry vendor="xfree86"><refentrytitle>xdm</refentrytitle><manvolnum>1</manvolnum></citerefentry> para mais informações.</para>
+ </sect2>
+ </sect1>
+
+ <sect1 xml:id="x11-wm">
+ <info>
+ <title>Ambientes de desktop</title>
+
+ <authorgroup>
+ <author><personname> <firstname>Valentino</firstname> <surname>Vaschetto</surname> </personname> <contrib>Contribuído por </contrib></author>
+ </authorgroup>
+ </info>
+
+ <para>Esta seção descreve como instalar três ambientes de desktop populares em um sistema FreeBSD. Um ambiente de desktop pode variar de um gerenciador de janelas simples a um conjunto completo de aplicativos de desktop. Mais de cem ambientes de área de trabalho estão disponíveis na categoria <filename>x11-wm</filename> da Coleção de Ports.</para>
+
+ <sect2 xml:id="x11-wm-gnome">
+ <title>GNOME</title>
+
+ <indexterm><primary>GNOME</primary></indexterm>
+ <para>O <application>GNOME</application> é um ambiente de área de trabalho amigável. Ele inclui um painel para iniciar aplicativos e exibir status, uma área de trabalho, um conjunto de ferramentas e aplicativos e um conjunto de convenções que facilitam a cooperação entre os aplicativos e a compatibilidade entre eles. Mais informações sobre o <application>GNOME</application> no FreeBSD podem ser encontradas em <link xlink:href="https://www.FreeBSD.org/gnome">https://www.FreeBSD.org/gnome</link>. Esse site contém documentação adicional sobre instalação, configuração e gerenciamento do <application>GNOME</application> no FreeBSD.</para>
+
+ <para>Este ambiente de desktop pode ser instalado a partir de um pacote binario:</para>
+
+ <screen><prompt>#</prompt> <userinput>pkg install gnome3</userinput></screen>
+
+ <para>Para instalar o <application>GNOME</application> a partir do ports, use o seguinte comando. O <application>GNOME</application> é um aplicativo grande e levará algum tempo para compilar, mesmo em um computador rápido.</para>
+
+ <screen><prompt>#</prompt> <userinput>cd /usr/ports/x11/gnome3</userinput>
+<prompt>#</prompt> <userinput>make install clean</userinput></screen>
+
+ <para>O <application>GNOME</application> requer que o <filename>/proc</filename> seja montado. Adicione esta linha ao <filename>/etc/fstab</filename> para montar este sistema de arquivos automaticamente durante a inicialização do sistema:</para>
+
+ <programlisting>proc /proc procfs rw 0 0</programlisting>
+
+ <para>O <application>GNOME</application> usa o <application>D-Bus</application> e o <application>HAL</application> para barramento de mensagens e abstração de hardware. Esses aplicativos são instalados automaticamente como dependências do <application>GNOME</application>. Habilite-os em <filename>/etc/rc.conf</filename> para que eles sejam iniciados quando o sistema inicializar:</para>
+
+ <programlisting>dbus_enable="YES"
+hald_enable="YES"</programlisting>
+
+ <para>Após a instalação, configure o <application>Xorg</application> para iniciar o <application>GNOME</application>. A maneira mais fácil de fazer isso é habilitar o Gerenciador de Display do GNOME, o <application>GDM</application>, que é instalado como parte do pacote ou ports do <application>GNOME</application>. Pode ser ativado adicionando esta linha ao <filename>/etc/rc.conf</filename>:</para>
+
+ <programlisting>gdm_enable="YES"</programlisting>
+
+ <para>Geralmente é desejável também iniciar todos os serviços do <application>GNOME</application>. Para conseguir isso, adicione uma segunda linha ao <filename>/etc/rc.conf</filename>:</para>
+
+ <programlisting>gnome_enable="YES"</programlisting>
+
+ <para>O <application>GDM</application> será iniciado automaticamente quando o sistema for inicializado.</para>
+
+ <para>Um segundo método para iniciar o <application>GNOME</application> é digitar <command>startx</command> na linha de comando depois de configurar o <filename>~/.xinitrc</filename>. Se este arquivo já existir, substitua a linha que inicia o gerenciador de janelas atual por uma que inicie o <filename>/usr/local/bin/gnome-session</filename>. Se este arquivo não existir, crie-o com este comando:</para>
+
+ <screen><prompt>%</prompt> <userinput>echo "exec /usr/local/bin/gnome-session" &gt; ~/.xinitrc</userinput></screen>
+
+ <para>Um terceiro método é usar o <application>XDM</application> como o gerenciador de Display. Neste caso, crie um executável <filename>~/.xsession</filename>:</para>
+
+ <screen><prompt>%</prompt> <userinput>echo "exec /usr/local/bin/gnome-session" &gt; ~/.xsession</userinput></screen>
+ </sect2>
+
+ <sect2 xml:id="x11-wm-kde">
+ <title>KDE</title>
+
+ <indexterm><primary>KDE</primary></indexterm>
+
+ <para>O <application>KDE</application> é outro ambiente de trabalho fácil de usar. Essa área de trabalho fornece um conjunto de aplicativos com aparência e comportamento consistentes, um menu e barras de ferramentas padronizadas, atalhos de teclado, esquemas de cores, internacionalização e uma configuração de área de trabalho centralizada e orientada a diálogos. Mais informações sobre o <application>KDE</application> podem ser encontradas em <link xlink:href="http://www.kde.org/">http://www.kde.org/</link>. Para informações específicas do FreeBSD, consulte <link xlink:href="http://freebsd.kde.org/">http://freebsd.kde.org</link>.</para>
+
+ <para>Para instalar o pacote <application>KDE</application>, digite:</para>
+
+ <screen><prompt>#</prompt> <userinput>pkg install x11/kde5</userinput></screen>
+
+ <para>Para instalar o <application>KDE</application> via ports, use o seguinte comando. A instalação do ports fornecerá um menu para selecionar quais componentes instalar. O <application>KDE</application> é um aplicativo grande e levará algum tempo para compilar, mesmo em um computador rápido.</para>
+
+ <screen><prompt>#</prompt> <userinput>cd /usr/ports/x11/kde5</userinput>
+<prompt>#</prompt> <userinput>make install clean</userinput></screen>
+
+ <indexterm><primary>KDE</primary> <secondary>display manager</secondary></indexterm>
+
+ <para>O <application>KDE</application> requer que o <filename>/proc</filename> esteja montado. Adicione esta linha ao <filename>/etc/fstab</filename> para montar este sistema de arquivos automaticamente durante a inicialização do sistema:</para>
+
+ <programlisting>proc /proc procfs rw 0 0</programlisting>
+
+ <para>O <application>KDE</application> usa o <application>D-Bus</application> e o <application>HAL</application> para barramento de mensagens e abstração de hardware. Estas aplicações são automaticamente instaladas como dependências do <application>KDE</application>. Habilite-os em <filename>/etc/rc.conf</filename> para que eles sejam iniciados quando o sistema inicializar:</para>
+
+ <programlisting>dbus_enable="YES"
+hald_enable="YES"</programlisting>
+
+ <para>Desde o KDE Plasma 5, o Gerenciador de Display do KDE, <application>KDM</application>, não é mais desenvolvido. Uma possível substituição é o <application>SDDM</application>. Para instalá-lo, digite:</para>
+
+ <screen><prompt>#</prompt> <userinput>pkg install x11/sddm</userinput></screen>
+
+ <para>Adicione esta linha em <filename>/etc/rc.conf</filename>:</para>
+
+ <programlisting>sddm_enable="YES"</programlisting>
+
+ <para>Um segundo método para iniciar o <application>KDE</application> é digitar <command>startx</command> na linha de comando. Para que isso funcione, a seguinte linha é necessária em <filename>~/.xinitrc</filename>:</para>
+
+ <programlisting>exec ck-launch-session startkde</programlisting>
+
+ <para>Um terceiro método para iniciar o <application>KDE</application> é através do <application>XDM</application>. Para fazer isso, crie um arquivo executável <filename>~/.xsession</filename> da seguinte maneira:</para>
+
+ <screen><prompt>%</prompt> <userinput>echo "exec ck-launch-session startkde" &gt; ~/.xsession</userinput></screen>
+
+ <para>Uma vez iniciado o <application>KDE</application>, consulte o sistema de ajuda integrado para obter mais informações sobre como usar seus diversos menus e aplicativos.</para>
+ </sect2>
+
+ <sect2 xml:id="x11-wm-xfce">
+ <title>Xfce</title>
+
+ <para>O <application>Xfce</application> é um ambiente de desktop baseado no kit de ferramentas GTK+ usado pelo <application>GNOME</application>. No entanto, é mais leve e fornece um desktop simples, eficiente e fácil de usar. É totalmente configurável, possui um painel principal com menus, applets e lançadores de aplicativos, fornece um gerenciador de arquivos e um gerenciador de som e é personalizável. Como é rápido, leve e eficiente, é ideal para máquinas mais antigas ou mais lentas com limitações de memória. Mais informações sobre o <application>Xfce</application> podem ser encontradas em <link xlink:href="http://www.xfce.org/">http://www.xfce.org</link>.</para>
+
+ <para>Para instalar o pacote <application>Xfce</application>:</para>
+
+ <screen><prompt>#</prompt> <userinput>pkg install xfce</userinput></screen>
+
+ <para>Alternativamente , para compilar o port:</para>
+
+ <screen><prompt>#</prompt> <userinput>cd /usr/ports/x11-wm/xfce4</userinput>
+<prompt>#</prompt> <userinput>make install clean</userinput></screen>
+
+ <para>O <application>Xfce</application> usa o <application>D-Bus</application> para barramento de mensagens. Este aplicativo é instalado automaticamente como dependência do <application>Xfce</application>. Habilite-o em <filename>/etc/rc.conf</filename> para que ele seja iniciado quando o sistema inicializar:</para>
+
+ <programlisting>dbus_enable="YES"</programlisting>
+
+ <para>Ao contrário do <application>GNOME</application> ou <application>KDE</application>, o <application>Xfce</application> não disponibiliza seu próprio gerenciador de login. Para iniciar o <application>Xfce</application> à partir da linha de comando digitando <command>startx</command>, mas primeiro adicione sua entrada ao <filename>~/.xinitrc</filename>:</para>
+
+ <screen><prompt>%</prompt> <userinput>echo ". /usr/local/etc/xdg/xfce4/xinitrc" &gt; ~/.xinitrc</userinput></screen>
+
+ <para>Um método alternativo é usar o <application>XDM</application>. Para configurar este método, crie um executável <filename>~/.xsession</filename>:</para>
+
+ <screen><prompt>%</prompt> <userinput>echo ". /usr/local/etc/xdg/xfce4/xinitrc" &gt; ~/.xsession</userinput></screen>
+ </sect2>
+ </sect1>
+
+ <sect1 xml:id="x-compiz-fusion">
+ <title>Instalando o Compiz Fusion</title>
+
+ <para>Uma maneira de tornar o uso de um computador desktop mais agradável é com bons efeitos 3D.</para>
+
+ <para>Instalar o pacote <application>Compiz Fusion</application> é fácil, mas a configuração requer alguns passos que não estão descritos na documentação do ports.</para>
+
+ <sect2 xml:id="x-compiz-video-card">
+ <title>Configurando o Driver nVidia no FreeBSD</title>
+
+ <para>Os efeitos da área de trabalho podem causar uma carga considerável na placa gráfica. Para uma placa gráfica baseada na nVidia, o driver proprietário é necessário para um bom desempenho. Usuários de outras placas gráficas podem pular esta seção e continuar com a configuração do <filename>xorg.conf</filename>.</para>
+
+ <para>Para determinar qual o driver nVidia é necessário, consulte a <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/faq/x.html#idp59950544">Perguntas frequentes sobre o assunto</link>.</para>
+
+ <para>Tendo determinado o driver correto para usar em sua placa gráfica, a instalação é tão simples quanto instalar qualquer outro pacote.</para>
+
+ <para>Por exemplo, para instalar o driver mais recente:</para>
+
+ <screen><prompt>#</prompt> <userinput>pkg install x11/nvidia-driver</userinput></screen>
+
+ <para>O driver irá criar um módulo do kernel, que precisa ser carregado na inicialização do sistema. Adicione a seguinte linha ao <filename>/boot/loader.conf</filename>:</para>
+
+ <programlisting>nvidia_load="YES"</programlisting>
+
+ <note>
+ <para>Para carregar imediatamente o módulo no kernel em execução, você pode executar o comando <command>kldload nvidia</command>, no entanto, foi observado que algumas versões do <application>Xorg</application> não funcionarão corretamente se o driver não for carregado no momento da inicialização. Desta forma, depois de editar o <filename>/boot/loader.conf</filename>, reinicie o sistema.</para>
+ </note>
+
+ <para>Com o módulo do kernel carregado, você normalmente só precisa alterar uma única linha no <filename>xorg.conf</filename> para habilitar o driver proprietário:</para>
+
+ <para>Encontre a seguinte linha no <filename>/etc/X11/xorg.conf</filename>:</para>
+
+ <programlisting>Driver "nv"</programlisting>
+
+ <para>e mude para:</para>
+
+ <programlisting>Driver "nvidia"</programlisting>
+
+ <para>Inicie a GUI como de costume, e você será saudado pelo splash da nVidia. Tudo deve funcionar como de costume.</para>
+ </sect2>
+
+ <sect2 xml:id="xorg-configuration">
+ <title>Configurando o xorg.conf para Efeitos de Desktop</title>
+
+ <para>Para ativar o <application>Compiz Fusion</application>, o <filename>/etc/X11/xorg.conf</filename> precisa ser modificado:</para>
+
+ <para>Adicione a seguinte seção para habilitar os efeitos compostos:</para>
+
+ <programlisting>Section "Extensions"
+ Option "Composite" "Enable"
+EndSection</programlisting>
+
+ <para>Localize a seção <quote>Screen</quote>, que deve ser semelhante à abaixo:</para>
+
+ <programlisting>Section "Screen"
+ Identifier "Screen0"
+ Device "Card0"
+ Monitor "Monitor0"
+ ...</programlisting>
+
+ <para>e adicione as duas linhas seguintes (após <quote>Monitor</quote>):</para>
+
+ <programlisting>DefaultDepth 24
+Option "AddARGBGLXVisuals" "True"</programlisting>
+
+ <para>Localize a <quote>Subsection</quote> que se refere à resolução da tela que você deseja usar. Por exemplo, se você deseja usar 1280x1024, localize a seção a seguir. Se a resolução desejada não aparecer em nenhuma subseção, você pode adicionar a entrada relevante à mão:</para>
+
+ <programlisting>SubSection "Display"
+ Viewport 0 0
+ Modes "1280x1024"
+EndSubSection</programlisting>
+
+ <para>Uma profundidade de cor de 24 bits é necessária para a composição do desktop, altere a subseção acima para:</para>
+
+ <programlisting>SubSection "Display"
+ Viewport 0 0
+ Depth 24
+ Modes "1280x1024"
+EndSubSection</programlisting>
+
+ <para>Finalmente, confirme que os módulos <quote>glx</quote> e <quote>extmod</quote> estão carregados na seção <quote>Module</quote>:</para>
+
+ <programlisting>Section "Module"
+ Load "extmod"
+ Load "glx"
+ ...</programlisting>
+
+ <para>A configuração acima pode ser feita automaticamente com o <package>x11/nvidia-xconfig</package>, executando como root:</para>
+
+ <screen><prompt>#</prompt> <userinput>nvidia-xconfig --add-argb-glx-visuals</userinput>
+<prompt>#</prompt> <userinput>nvidia-xconfig --composite</userinput>
+<prompt>#</prompt> <userinput>nvidia-xconfig --depth=24</userinput></screen>
+ </sect2>
+
+ <sect2 xml:id="compiz-fusion">
+ <title>Instalando e Configurando o Compiz Fusion</title>
+
+ <para>Instalar o <application>Compiz Fusion</application> é tão simples quanto qualquer outro pacote:</para>
+
+ <screen><prompt>#</prompt> <userinput>pkg install x11-wm/compiz-fusion</userinput></screen>
+
+ <para>Quando a instalação estiver concluída, inicie o Desktop Gráfico e, em um terminal, digite os seguintes comandos (como usuário normal):</para>
+
+ <screen><prompt>%</prompt> <userinput>compiz --replace --sm-disable --ignore-desktop-hints ccp &amp;</userinput>
+<prompt>%</prompt> <userinput>emerald --replace &amp;</userinput></screen>
+
+ <para>Sua tela piscará por alguns segundos, pois o gerenciador de janelas (por exemplo, <application>Metacity</application> se você estiver usando o <application>GNOME</application>) será substituído pelo <application>Compiz Fusion</application>. O <application>Emerald</application> cuida das decorações da janela (isto é, botões de fechar, minimizar, maximizar, barras de título e assim por diante).</para>
+
+ <para>Você pode converter isso em um script trivial e executá-lo na inicialização automaticamente (por exemplo, adicionando a <quote>Sessions</quote> em um Desktop do <application>GNOME</application>):</para>
+
+ <programlisting>#! /bin/sh
+compiz --replace --sm-disable --ignore-desktop-hints ccp &amp;
+emerald --replace &amp;</programlisting>
+
+ <para>Salve isso no seu diretório home como, por exemplo, <filename>start-compiz</filename> e torne-o executável:</para>
+
+ <screen><prompt>%</prompt> <userinput>chmod +x ~/start-compiz</userinput></screen>
+
+ <para>Em seguida, utilize a GUI para adicioná-lo a <guimenuitem>Startup Programs</guimenuitem> (localizado em <guimenuitem>System</guimenuitem>, <guimenuitem>Preferences</guimenuitem>, <guimenuitem>Sessions</guimenuitem> em um desktop <application>GNOME</application>).</para>
+
+ <para>Para selecionar realmente todos os efeitos desejados e suas configurações, execute (novamente como um usuário normal) o <application>Compiz Config Settings Manager</application>:</para>
+
+ <screen><prompt>%</prompt> <userinput>ccsm</userinput></screen>
+
+ <note>
+ <para>No <application>GNOME</application>, isso também pode ser encontrado no menu <guimenuitem>System</guimenuitem>, <guimenuitem>Preferences</guimenuitem>.</para>
+ </note>
+
+ <para>Se você selecionou <quote>gconf support</quote> durante a compilação, você também será capaz de ver estas configurações usando o <command>gconf-editor</command> sob <literal>apps/compiz</literal>.</para>
+ </sect2>
+ </sect1>
+
+ <sect1 xml:id="x11-understanding">
+
+ <title>Solução de problemas</title>
+
+ <para>Se o mouse não funcionar, você precisará primeiro configurá-lo antes de prosseguir. Em versões recentes do <application>Xorg</application>, as seções <literal>InputDevice</literal> em <filename>xorg.conf</filename> são ignoradas em favor dos dispositivos autodetectados. Para restaurar o comportamento antigo, adicione a seguinte linha à seção <literal>ServerLayout</literal> ou <literal>ServerFlags</literal> deste arquivo:</para>
+
+ <programlisting>Option "AutoAddDevices" "false"</programlisting>
+
+ <para>Os dispositivos de entrada podem então ser configurados como nas versões anteriores, juntamente com quaisquer outras opções necessárias (por exemplo, troca do layout de teclado).</para>
+
+ <note>
+ <para>Como explicado anteriormente, o daemon <application>hald</application> irá, por padrão, detectar automaticamente o seu teclado. Há chances de que o layout ou modelo do teclado não esteja correto, ambientes de Desktop como o <application>GNOME</application>, <application>KDE</application> ou <application>Xfce</application> fornecem ferramentas para configurar o teclado. No entanto, é possível definir as propriedades do teclado diretamente com a ajuda do utilitário <citerefentry vendor="xorg"><refentrytitle>setxkbmap</refentrytitle><manvolnum>1</manvolnum></citerefentry> ou com uma regra de configuração do aplicativo<application>hald</application>.</para>
+
+ <para>Por exemplo, se alguém quiser usar um teclado de teclas PC 102 vindo com um layout francês, temos que criar um arquivo de configuração de teclado para o <application>hald</application> chamado <filename>x11-input.fdi</filename> e salva-lo no diretório <filename>/usr/local/etc/hal/fdi/policy</filename>. Este arquivo deve conter as seguintes linhas:</para>
+
+ <programlisting>&lt;?xml version="1.0" encoding="iso-8859-1"?&gt;
+&lt;deviceinfo version="0.2"&gt;
+ &lt;device&gt;
+ &lt;match key="info.capabilities" contains="input.keyboard"&gt;
+ &lt;merge key="input.x11_options.XkbModel" type="string"&gt;pc102&lt;/merge&gt;
+ &lt;merge key="input.x11_options.XkbLayout" type="string"&gt;fr&lt;/merge&gt;
+ &lt;/match&gt;
+ &lt;/device&gt;
+&lt;/deviceinfo&gt;</programlisting>
+
+ <para>Se este arquivo já existir, apenas copie e adicione ao seu arquivo as linhas referentes à configuração do teclado.</para>
+
+ <para>Você terá que reinicializar sua máquina para forçar o <application>hald</application> a ler este arquivo.</para>
+
+ <para>É possível fazer a mesma configuração a partir de um terminal X ou um script com esta linha de comando:</para>
+
+ <screen><prompt>%</prompt> <userinput>setxkbmap -model pc102 -layout fr</userinput></screen>
+
+ <para>O <filename>/usr/local/share/X11/xkb/rules/base.lst</filename> lista os vários teclados, layouts e opções disponíveis.</para>
+ </note>
+
+ <indexterm><primary><application>Xorg</application> tuning</primary></indexterm>
+
+ <para>O arquivo de configuração <filename>xorg.conf.new</filename> pode agora ser ajustado para o seu gosto. Abra o arquivo em um editor de texto, como <citerefentry vendor="ports"><refentrytitle>emacs</refentrytitle> <manvolnum>1</manvolnum></citerefentry> ou o <citerefentry><refentrytitle>ee</refentrytitle><manvolnum>1</manvolnum></citerefentry>. Se o monitor for um modelo antigo ou incomum que não suporta a detecção automática de frequências de sincronização, essas configurações podem ser adicionadas ao <filename>xorg.conf.new</filename> na seção <literal>"Monitor"</literal>:</para>
+
+ <programlisting>Section "Monitor"
+ Identifier "Monitor0"
+ VendorName "Monitor Vendor"
+ ModelName "Monitor Model"
+ HorizSync 30-107
+ VertRefresh 48-120
+EndSection</programlisting>
+
+ <para>A maioria dos monitores suporta autodetecção de frequência de sincronização, tornando desnecessária a entrada manual desses valores. Para os poucos monitores que não suportam a detecção automática, evite possíveis danos inserindo apenas valores fornecidos pelo fabricante.</para>
+
+ <para>O X permite que os recursos do DPMS (Energy Star) sejam usados ​​com monitores capazes. O programa <citerefentry vendor="xfree86"><refentrytitle>xset</refentrytitle><manvolnum>1</manvolnum></citerefentry> controla os tempos limite e pode forçar os modos de espera, suspensão ou desativação. Se você deseja habilitar recursos de DPMS para o seu monitor, você deve adicionar a seguinte linha à seção do monitor:</para>
+
+ <programlisting>Option "DPMS"</programlisting>
+
+ <indexterm><primary><filename>xorg.conf</filename></primary></indexterm>
+
+ <para>Enquanto o arquivo de configuração <filename>xorg.conf.new</filename> ainda estiver aberto em um editor, selecione a resolução padrão e a profundidade de cor desejada. Isso é definido na seção <literal>"Screen"</literal>:</para>
+
+ <programlisting>Section "Screen"
+ Identifier "Screen0"
+ Device "Card0"
+ Monitor "Monitor0"
+ DefaultDepth 24
+ SubSection "Display"
+ Viewport 0 0
+ Depth 24
+ Modes "1024x768"
+ EndSubSection
+EndSection</programlisting>
+
+ <para>A palavra-chave <literal>DefaultDepth</literal> descreve a profundidade de cor a ser executada por padrão. Isto pode ser sobrescrito com a opção de linha de comando <option>-depth</option> para <citerefentry vendor="xorg"> <refentrytitle>Xorg</refentrytitle><manvolnum>1</manvolnum></citerefentry>. A palavra-chave <literal>Modes</literal> descreve a resolução a ser executada na profundidade de cor especificada. Observe que somente os modos padrão VESA são suportados, conforme definido pelo hardware gráfico do sistema de destino. No exemplo acima, a profundidade de cor padrão é de vinte e quatro bits por pixel. Nesta profundidade de cor, a resolução aceita é 1024 por 768 pixels.</para>
+
+ <para>Finalmente, escreva o arquivo de configuração e teste-o usando o modo de teste dado acima.</para>
+
+ <note>
+ <para>Uma das ferramentas disponíveis para ajudá-lo durante o processo de solução de problemas são os arquivos de log do <application>Xorg</application>, que contêm informações sobre cada dispositivo ao qual o servidor <application>Xorg</application> se conecta. Os nomes de arquivos de log do <application>Xorg</application> estão no formato <filename>/var/log/Xorg.0.log</filename>. O nome exato do log pode variar de <filename>Xorg.0.log</filename> para <filename>Xorg.8.log</filename> e assim por diante.</para>
+ </note>
+
+ <para>Se tudo estiver bem, o arquivo de configuração precisa ser instalado em um local comum onde o <citerefentry vendor="xorg"><refentrytitle>Xorg</refentrytitle><manvolnum>1</manvolnum></citerefentry> possa encontrá-lo. Isto é tipicamente <filename>/etc/X11/xorg.conf</filename> ou <filename>/usr/local/etc/X11/xorg.conf</filename>.</para>
+
+ <screen><prompt>#</prompt> <userinput>cp xorg.conf.new /etc/X11/xorg.conf</userinput></screen>
+
+ <para>O processo de configuração do <application>Xorg</application> agora está completo. O <application>Xorg</application> pode agora ser iniciado com o utilitário <citerefentry vendor="xfree86"><refentrytitle>startx</refentrytitle><manvolnum>1</manvolnum></citerefentry>. O servidor <application>Xorg</application> também pode ser iniciado com o uso de <citerefentry vendor="xfree86"><refentrytitle>xdm</refentrytitle><manvolnum>1</manvolnum></citerefentry>.</para>
+
+ <sect2>
+ <title>Configuração com Chipsets gráficos <trademark class="registered">Intel</trademark> <literal>i810</literal></title>
+
+ <indexterm><primary>Intel i810 graphic chipset</primary></indexterm>
+
+ <para>A configuração com chipsets integrados i810 da <trademark class="registered">Intel</trademark> requer a interface de programação AGP <filename>agpgart</filename> para o <application>Xorg</application> para conduzir a placa. Consulte a página de manual do driver <citerefentry><refentrytitle>agp</refentrytitle><manvolnum>4</manvolnum></citerefentry> para obter maiores informações.</para>
+
+ <para>Isso permitirá a configuração do hardware como qualquer outra placa gráfica. Observe que nos sistemas sem o driver <citerefentry><refentrytitle>agp</refentrytitle><manvolnum>4</manvolnum></citerefentry> compilado no kernel, tentar carregar o módulo com <citerefentry><refentrytitle>kldload</refentrytitle><manvolnum>8</manvolnum></citerefentry> não funcionará. Este driver tem que estar no kernel no momento da inicialização, através da compilação ou usando o <filename>/boot/loader.conf</filename>.</para>
+ </sect2>
+
+ <sect2>
+ <title>Adicionando um Flatpanel Widescreen ao Mix</title>
+
+ <indexterm><primary>widescreen flatpanel configuration</primary></indexterm>
+
+ <para>Esta seção pressupõe um pouco de conhecimento avançado de configuração. Se as tentativas de usar as ferramentas de configuração padrão acima não resultaram em uma configuração funcional, há informações suficientes nos arquivos de log para serem úteis para fazer a configuração funcionar. O uso de um editor de texto será necessário.</para>
+
+ <para>Os formatos widescreen atuais (WSXGA, WSXGA+, WUXGA, WXGA, WXGA+, etc.) suportam formatos ou proporções de formato 16:10 e 10:9 que podem ser problemáticos. Exemplos de algumas resoluções de tela comuns para proporções de 16:10 são:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>2560x1600</para>
+ </listitem>
+
+ <listitem>
+ <para>1920x1200</para>
+ </listitem>
+
+ <listitem>
+ <para>1680x1050</para>
+ </listitem>
+
+ <listitem>
+ <para>1440x900</para>
+ </listitem>
+
+ <listitem>
+ <para>1280x800</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>Em algum momento, será tão fácil quanto adicionar uma dessas resoluções como um possível <literal>Mode</literal> na <literal>Section "Screen"</literal> como tal:</para>
+
+ <programlisting>Section "Screen"
+Identifier "Screen0"
+Device "Card0"
+Monitor "Monitor0"
+DefaultDepth 24
+SubSection "Display"
+ Viewport 0 0
+ Depth 24
+ Modes "1680x1050"
+EndSubSection
+EndSection</programlisting>
+
+ <para>O <application>Xorg</application> é inteligente o suficiente para extrair as informações de resolução da tela widescreen via informações I2C/DDC, para que ele saiba o que o monitor pode suportar em termos de freqüências e resoluções.</para>
+
+ <para>Se aqueles <literal>ModeLines</literal> não existem nos drivers, pode ser necessário dar ao <application>Xorg</application> uma pequena dica. Usando o <filename>/var/log/Xorg.0.log</filename> pode-se extrair informações suficientes para criar manualmente um <literal>ModeLine</literal> que funcionará. Basta procurar informações semelhantes:</para>
+
+ <programlisting>(II) MGA(0): Supported additional Video Mode:
+(II) MGA(0): clock: 146.2 MHz Image Size: 433 x 271 mm
+(II) MGA(0): h_active: 1680 h_sync: 1784 h_sync_end 1960 h_blank_end 2240 h_border: 0
+(II) MGA(0): v_active: 1050 v_sync: 1053 v_sync_end 1059 v_blanking: 1089 v_border: 0
+(II) MGA(0): Ranges: V min: 48 V max: 85 Hz, H min: 30 H max: 94 kHz, PixClock max 170 MHz</programlisting>
+
+ <para>Esta informação é chamada de informação EDID. Criar uma <literal>ModeLine</literal> a partir disso é apenas uma questão de colocar os números na ordem correta:</para>
+
+ <programlisting>ModeLine &lt;name&gt; &lt;clock&gt; &lt;4 horiz. timings&gt; &lt;4 vert. timings&gt;</programlisting>
+
+ <para>Assim, o <literal>ModeLine</literal> na <literal>Section "Monitor"</literal> para este exemplo ficaria assim:</para>
+
+ <programlisting>Section "Monitor"
+Identifier "Monitor1"
+VendorName "Bigname"
+ModelName "BestModel"
+ModeLine "1680x1050" 146.2 1680 1784 1960 2240 1050 1053 1059 1089
+Option "DPMS"
+EndSection</programlisting>
+
+ <para>Agora, tendo completado estes passos simples de edição, o X deve iniciar no seu novo monitor widescreen.</para>
+ </sect2>
+
+ <sect2 xml:id="compiz-troubleshooting">
+ <title>Solução de problemas do Compiz Fusion</title>
+
+ <qandaset>
+ <qandaentry>
+ <question xml:id="no-decorations">
+ <para>Eu instalei o <application>Compiz Fusion</application>, e depois de executar os comandos que você mencionou, minhas janelas ficaram sem barras de título e botões. O que está errado?</para>
+ </question>
+
+ <answer>
+ <para>Provavelmente está faltando alguma configuração em <filename>/etc/X11/xorg.conf</filename>. Revise este arquivo cuidadosamente e verifique especialmente as diretivas <literal>DefaultDepth</literal> e <literal>AddARGBGLXVisuals</literal>.</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question xml:id="xorg-crash">
+ <para>Quando executo o comando para iniciar o <application>Compiz Fusion</application>, o servidor X trava e eu volto ao console. O que está errado?</para>
+ </question>
+
+ <answer>
+ <para>Se você verificar o <filename>/var/log/Xorg.0.log</filename>, você provavelmente encontrará mensagens de erro durante a inicialização do X. As mais comuns seriam:</para>
+
+ <screen>(EE) NVIDIA(0): Failed to initialize the GLX module; please check in your X
+(EE) NVIDIA(0): log file that the GLX module has been loaded in your X
+(EE) NVIDIA(0): server, and that the module is the NVIDIA GLX module. If
+(EE) NVIDIA(0): you continue to encounter problems, Please try
+(EE) NVIDIA(0): reinstalling the NVIDIA driver.</screen>
+
+ <para>Este é geralmente o caso quando você atualiza o <application>Xorg</application>. Você precisará reinstalar o pacote <package>x11/nvidia-driver</package> para que o glx seja compilado novamente.</para>
+ </answer>
+ </qandaentry>
+ </qandaset>
+ </sect2>
+ </sect1>
+</chapter>
+
</part>
- <part>
- <title>Administrao de Sistema</title>
+ <part xml:id="common-tasks">
+ <title>Tarefas comuns</title>
<partintro>
- <para>Os captulos restantes do Manual do FreeBSD
- cobrem todos os aspectos da administrao de
- sistema do FreeBSD. Cada captulo comea
- descrevendo o que se pode aprender por l-lo, e
- detalha o que se espera que voc j saiba
- antes de comear a leitura.</para>
-
- <para>Estes captulos so projetados para serem
- lidos quando voc precisar da informao.
- No preciso l-los em nenhuma ordem
- particular, nem preciso ler todos antes de
- comear a usar o FreeBSD.</para>
+ <para>Agora que o básico foi abordado, esta parte do livro discute alguns recursos freqüentemente usados ​​do FreeBSD. Estes capítulos:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>Introduzem aplicativos de desktop populares e úteis: navegadores, ferramentas de produtividade, visualizadores de documentos e muito mais.</para>
+ </listitem>
+
+ <listitem>
+ <para>Introduzem uma série de ferramentas multimídia disponíveis para o FreeBSD.</para>
+ </listitem>
+
+ <listitem>
+ <para>Explicam o processo de compilação de um kernel customizado do FreeBSD para habilitar funcionalidades extras.</para>
+ </listitem>
+
+ <listitem>
+ <para>Descrevem o sistema de impressão em detalhes, tanto configurações de impressoras conectadas em desktops quanto impressoras conectadas à rede.</para>
+ </listitem>
+
+ <listitem>
+ <para>Mostram como executar aplicativos Linux no sistema FreeBSD.</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>Alguns destes capítulos recomendam leituras prévias, e isso é destacado na sinopse no início de cada capítulo.</para>
</partintro>
- &chap.config;
- &chap.boot;
- &chap.users;
- &chap.kernelconfig;
- &chap.security;
- &chap.printing;
- &chap.disks;
- &chap.l10n;
- &chap.serialcomms;
- &chap.ppp-and-slip;
- &chap.advanced-networking;
- &chap.mail;
- &chap.cutting-edge;
- &chap.linuxemu;
+
+<!--
+ The FreeBSD Documentation Project
+ $FreeBSD$
+-->
+<chapter version="5.0" xml:id="desktop">
+ <!--
+ <chapterinfo>
+ <authorgroup>
+ <author>
+ <firstname>Christophe</firstname>
+ <surname>Juniet</surname>
+ <contrib>Contributed by </contrib>
+ </author>
+ </authorgroup>
+ </chapterinfo>
+ -->
+
+ <title>Aplicações de Desktop</title>
+
+ <sect1 xml:id="desktop-synopsis">
+ <title>Sinopse</title>
+
+ <para>Embora o FreeBSD seja popular como um servidor por seu desempenho e estabilidade, ele também é adequado para o uso diário como desktop. Com mais de 24.000 aplicativos disponíveis como pacotes ou ports para o FreeBSD, é fácil construir um desktop personalizado que executa uma ampla variedade de aplicativos de desktop. Este capítulo demonstra como instalar vários aplicativos de desktop, incluindo navegadores da Web, software de produtividade, visualizadores de documentos e softwares financeiros.</para>
+
+ <note>
+ <para>Os usuários que preferem instalar uma versão de desktop pré-configurada do FreeBSD em vez de configurar um do zero devem consultar o <link xlink:href="http://www.trueos.org/">Website trueos.org.</link></para>
+ </note>
+
+ <para>Os leitores deste capítulo devem saber como:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>Instalar software adicional usando pacotes ou ports, conforme descrito em <xref linkend="ports"/>.</para>
+ </listitem>
+
+ <listitem>
+ <para>Instalar o X e um gerenciador de janelas, conforme descrito em <xref linkend="x11"/>.</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>Para obter informações sobre como configurar um ambiente multimídia, consulte <xref linkend="multimedia"/>.</para>
+ </sect1>
+
+ <sect1 xml:id="desktop-browsers">
+ <title>Navegadores</title>
+
+ <indexterm><primary>browsers</primary> <secondary>web</secondary></indexterm>
+
+ <para>O FreeBSD não vem com um navegador Web pré-instalado. Em vez disso, a categoria <link xlink:href="https://www.FreeBSD.org/ports/www.html">www</link> da Coleção de Ports contém muitos navegadores que podem ser instalados como um pacote ou compilados a partir da coleção de Ports.</para>
+
+ <para>Os ambientes de área de trabalho <application>KDE</application> e <application>GNOME</application> incluem seu próprio navegador HTML. Consulte <xref linkend="x11-wm"/> para mais informações sobre como configurar esses desktops completos.</para>
+
+ <para>Alguns navegadores leves incluem o <package>www/dillo2</package>, o <package>www/links</package> e o <package>www/w3m</package>.</para>
+
+ <para>Esta seção demonstra como instalar os seguintes navegadores Web populares e indica se o aplicativo é pesado em recursos, se leva tempo para compilar a partir do Ports ou se possui dependências importantes.</para>
+
+ <informaltable frame="none" pgwide="1">
+ <tgroup cols="4">
+ <thead>
+ <row>
+ <entry>Nome da aplicação</entry>
+ <entry>Recursos necessários</entry>
+ <entry>Instalação a partir do Ports</entry>
+ <entry>Notas</entry>
+ </row>
+ </thead>
+
+ <tbody>
+ <row>
+ <entry><application>Firefox</application></entry>
+ <entry>médio</entry>
+ <entry>pesado</entry>
+ <entry>FreeBSD, <trademark class="registered">Linux</trademark>, e versões localizadas estão disponíveis</entry>
+ </row>
+
+ <row>
+ <entry><application>Opera</application></entry>
+ <entry>leve</entry>
+ <entry>leve</entry>
+ <entry>As versões para FreeBSD e <trademark class="registered">Linux</trademark> estão disponíveis</entry>
+ </row>
+
+ <row>
+ <entry><application>Konqueror</application></entry>
+ <entry>médio</entry>
+ <entry>pesado</entry>
+ <entry>Requer bibliotecas do <application>KDE</application></entry>
+ </row>
+
+ <row>
+ <entry><application>Chromium</application></entry>
+ <entry>médio</entry>
+ <entry>pesado</entry>
+ <entry>Requer <application>Gtk+</application></entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </informaltable>
+
+ <sect2>
+ <title>Firefox</title>
+
+ <indexterm><primary><application>Firefox</application></primary></indexterm>
+
+ <para>O <application>Firefox</application> é um navegador de código-fonte aberto que apresenta um mecanismo de exibição HTML compatível com os padrões, navegação por guias, bloqueio de pop-up, extensões, segurança aprimorada e muito mais. O <application>Firefox</application> é baseado na base de código <application>Mozilla</application>.</para>
+
+ <para>Para instalar o pacote da versão mais recente do <application>Firefox</application>, digite:</para>
+
+ <screen><prompt>#</prompt> <userinput>pkg install firefox</userinput></screen>
+
+ <para>Para instalar a versão ESR (Extended Support Release) do <application>Firefox</application>, use:</para>
+
+ <screen><prompt>#</prompt> <userinput>pkg install firefox-esr</userinput></screen>
+
+ <para>Versões localizadas estão disponíveis em <package>www/firefox-i18n</package> e <package>www/firefox-esr-i18n</package>.</para>
+
+ <para>A Coleção de Ports pode ser usada para compilar a versão desejada do <application>Firefox</application> a partir do código-fonte. Este exemplo compila o <package>www/firefox</package>, onde o <literal>firefox</literal> pode ser substituído pelo ESR ou pela versão localizada para instalar.</para>
+
+ <screen><prompt>#</prompt> <userinput>cd /usr/ports/www/firefox</userinput>
+<prompt>#</prompt> <userinput>make install clean</userinput></screen>
+ </sect2>
+
+ <sect2>
+ <title>Opera</title>
+
+ <indexterm><primary><application>Opera</application></primary></indexterm>
+
+ <para>O <application>Opera</application> é um navegador completo e compatível com os padrões, que ainda é leve e rápido. Ele vem com um e-mail integrado e leitor de notícias, um cliente de IRC, um leitor de feeds RSS/Atom e muito mais. Ele está disponível como uma versão nativa do FreeBSD e como uma versão que roda sob a emulação <trademark class="registered">Linux</trademark>.</para>
+
+ <para>Este comando instala o pacote da versão do FreeBSD do <application>Opera</application>. Substitua <literal>opera</literal> por<literal>linux-opera</literal> para instalar a versão <trademark class="registered">Linux</trademark>.</para>
+
+ <screen><prompt>#</prompt> <userinput>pkg install opera</userinput></screen>
+
+ <para>Como alternativa, instale qualquer uma das versões através da Coleção de Ports. Este exemplo compila a versão nativa:</para>
+
+ <screen><prompt>#</prompt> <userinput>cd /usr/ports/www/opera</userinput>
+<prompt>#</prompt> <userinput>make install clean</userinput></screen>
+
+ <para>Para instalar a versão <trademark class="registered">Linux</trademark>, utilize <literal>linux-opera</literal> no lugar de <literal>opera</literal>.</para>
+
+ <para>Para instalar o suporte ao plug-in <trademark class="registered">Adobe</trademark> <trademark class="registered">Flash</trademark>, primeiro compile o Port <package role="port">www/linux-flashplayer</package>. As restrições de licenciamento impedem a disponibilização de um pacote. Em seguida, instale <package role="port">www/opera-linuxplugins</package>. Este exemplo compila os dois aplicativos dos Ports:</para>
+
+ <screen><prompt>#</prompt> <userinput>cd /usr/ports/www/linux-flashplayer</userinput>
+<prompt>#</prompt> <userinput>make install clean</userinput>
+<prompt>#</prompt> <userinput>cd /usr/ports/www/opera-linuxplugins</userinput>
+<prompt>#</prompt> <userinput>make install clean</userinput></screen>
+
+ <para>Uma vez instalado, verifique a presença do plugin iniciando o navegador, inserindo <literal>opera:plugins</literal> na barra de localização e pressionando <keycap>Enter</keycap>. Uma lista deve aparecer com todos os plugins atualmente disponíveis.</para>
+
+ <para>Para adicionar o plug-in <application><trademark>Java</trademark></application>, proceda com a instalação do port <package role="port">java/icedtea-web</package>.</para>
+ </sect2>
+
+ <sect2>
+ <title>Konqueror</title>
+
+ <indexterm><primary><application>Konqueror</application></primary></indexterm>
+
+ <para>O <application>Konqueror</application> é mais do que um navegador Web, pois também é um gerenciador de arquivos e um visualizador de multimídia. Ele faz parte do pacote ou Port <package>x11/kde4-baseapps</package>.</para>
+
+ <para>O <application>Konqueror</application> suporta o WebKit, assim como o seu próprio KHTML. O WebKit é um mecanismo de renderização usado por muitos navegadores modernos, incluindo o Chromium. Para usar o WebKit com o <application>Konqueror</application> no FreeBSD, instale o pacote ou Port <package>www/kwebkitpart</package>. Este exemplo instala o pacote:</para>
+
+ <screen><prompt>#</prompt> <userinput>pkg install kwebkitpart</userinput></screen>
+
+ <para>Para instalar a partir da Coleção de Ports:</para>
+
+ <screen><prompt>#</prompt> <userinput>cd /usr/ports/www/kwebkitpart</userinput>
+<prompt>#</prompt> <userinput>make install clean</userinput></screen>
+
+ <para>Para habilitar o WebKit no <application>Konqueror</application>, clique em <quote>Settings</quote>, <quote>Configure Konqueror</quote>. Na página de configurações <quote>General</quote>, clique no menu suspenso ao lado de <quote>Default web browser engine</quote> e altere <quote>KHTML</quote> para <quote>WebKit</quote>.</para>
+
+ <para>O <application>Konqueror</application> também suporta <application><trademark class="registered">Flash</trademark></application>. Um guia sobre <quote>como obter suporte</quote> a <application><trademark class="registered">Flash</trademark></application> no <application>Konqueror</application> está disponível em <uri xlink:href="http://freebsd.kde.org/howtos/konqueror-flash.php">http://freebsd.kde.org/howtos/konqueror-flash.php</uri>.</para>
+ </sect2>
+
+ <sect2>
+ <title>Chromium</title>
+
+ <indexterm><primary><application>Chromium</application></primary></indexterm>
+
+ <para>O <application>Chromium</application> é um projeto de navegador de código aberto que visa criar uma experiência de navegação na Web mais segura, mais rápida e mais estável. O <application>Chromium</application> apresenta navegação com guias, bloqueio de pop-up, extensões e muito mais. O <application>Chromium</application> é o projeto de código-fonte aberto no qual o navegador Web do Google Chrome é baseado.</para>
+
+ <para>O <application>Chromium</application> pode ser instalado como um pacote digitando:</para>
+
+ <screen><prompt>#</prompt> <userinput>pkg install chromium</userinput></screen>
+
+ <para>Alternativamente, o <application>Chromium</application> pode ser compilado a partir do código-fonte usando a Coleção de Ports:</para>
+
+ <screen><prompt>#</prompt> <userinput>cd /usr/ports/www/chromium</userinput>
+<prompt>#</prompt> <userinput>make install clean</userinput></screen>
+
+ <note>
+ <para>O executável do <application>Chromium</application> é <filename>/usr/local/bin/chrome</filename>, não <filename>/usr/local/bin/chromium</filename>.</para>
+ </note>
+ </sect2>
+ </sect1>
+
+ <sect1 xml:id="desktop-productivity">
+ <title>Produtividade</title>
+
+ <para>Quando se trata de produtividade, os usuários geralmente procuram uma suíte de escritório ou um processador de texto fácil de usar. Embora alguns <link linkend="x11-wm">ambientes de desktop</link> como o <application>KDE</application> forneçam uma suíte de escritório, não há um pacote de produtividade padrão. Várias suítes de escritório e processadores de texto gráficos estão disponíveis para o FreeBSD, independentemente do gerenciador de janelas instalado.</para>
+
+ <para>Esta seção demonstra como instalar os seguintes softwares populares de produtividade e indica se o aplicativo é pesado em recursos, se leva tempo para compilar a partir do ports ou se possui dependências importantes.</para>
+
+ <informaltable frame="none" pgwide="1">
+ <tgroup cols="4">
+ <thead>
+ <row>
+ <entry>Nome da aplicação</entry>
+ <entry>Recursos necessários</entry>
+ <entry>Instalação a partir do Ports</entry>
+ <entry>Principais Dependências </entry>
+ </row>
+ </thead>
+
+ <tbody>
+ <row>
+ <entry><application>Calligra</application></entry>
+ <entry>leve</entry>
+ <entry>pesado</entry>
+ <entry><application>KDE</application></entry>
+ </row>
+
+ <row>
+ <entry><application>AbiWord</application></entry>
+ <entry>leve</entry>
+ <entry>leve</entry>
+ <entry><application>Gtk+</application> ou <application>GNOME</application></entry>
+ </row>
+
+ <row>
+ <entry><application>The Gimp</application></entry>
+ <entry>leve</entry>
+ <entry>pesado</entry>
+ <entry><application>Gtk+</application></entry>
+ </row>
+
+ <row>
+ <entry><application>Apache OpenOffice</application></entry>
+ <entry>pesado</entry>
+ <entry>enorme</entry>
+ <entry><application><trademark>JDK</trademark></application> e <application>Mozilla</application></entry>
+ </row>
+
+ <row>
+ <entry><application>LibreOffice</application></entry>
+ <entry>um pouco pesado</entry>
+ <entry>enorme</entry>
+ <entry><application>Gtk+</application>, ou <application>KDE</application>/ <application>GNOME</application>, ou <application><trademark>JDK</trademark></application></entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </informaltable>
+
+ <sect2>
+ <title>Calligra</title>
+
+ <indexterm><primary><application>Calligra</application></primary></indexterm>
+ <indexterm><primary>office suite</primary> <secondary><application>Calligra</application></secondary></indexterm>
+
+ <para>O ambiente de área de trabalho do KDE inclui uma suíte de escritório que pode ser instalada separadamente do <application>KDE</application>. O <application>Calligra</application> inclui componentes padrões que podem ser encontrados em outros pacotes de escritório. O <application>Words</application> é o processador de texto, <application>Sheets</application> é o programa de planilha eletrônica, o <application>Stage</application> gerencia apresentações de slides e <application>Karbon</application> é usado para desenhar documentos gráficos.</para>
+
+ <para>No FreeBSD, o <package>editors/calligra</package> pode ser instalado como um pacote ou um port. Para instalar o pacote:</para>
+
+ <screen><prompt>#</prompt> <userinput>pkg install calligra</userinput></screen>
+
+ <para>Se o pacote não estiver disponível, use a Coleção de Ports:</para>
+
+ <screen><prompt>#</prompt> <userinput>cd /usr/ports/editors/calligra</userinput>
+<prompt>#</prompt> <userinput>make install clean</userinput></screen>
+ </sect2>
+
+ <sect2>
+ <title>AbiWord</title>
+
+ <indexterm><primary><application>AbiWord</application></primary></indexterm>
+
+ <para>O <application>AbiWord</application> é um programa gratuito de processamento de texto semelhante em aparência ao <application><trademark class="registered">Microsoft</trademark> Word</application>. É rápido, contém muitos recursos e é de fácil utilização.</para>
+
+ <para>O <application>AbiWord</application> pode importar ou exportar muitos formatos de arquivo, incluindo alguns formatos proprietários como o <trademark class="registered">Microsoft</trademark> <filename>.rtf</filename>.</para>
+
+ <para>Para instalar o pacote do <application>AbiWord</application>:</para>
+
+ <screen><prompt>#</prompt> <userinput>pkg install abiword</userinput></screen>
+
+ <para>Se o pacote não estiver disponível, ele pode ser compilado a partir da Coleção de Ports:</para>
+
+ <screen><prompt>#</prompt> <userinput>cd /usr/ports/editors/abiword</userinput>
+<prompt>#</prompt> <userinput>make install clean</userinput></screen>
+ </sect2>
+
+ <sect2>
+ <title>O GIMP</title>
+
+ <indexterm><primary><application>The GIMP</application></primary></indexterm>
+
+ <para>Para autoria ou retoque de imagens, o <application>GIMP</application> fornece um sofisticado programa de manipulação de imagens. Ele pode ser usado como um programa de pintura simples ou como um pacote de qualidade para retoque de fotos. Ele suporta um grande número de plugins e possui uma interface de script. O <application>GIMP</application> pode ler e gravar uma grande variedade de formatos de arquivos e suporta interfaces com scanners e tablets.</para>
+
+ <para>Para instalar o pacote:</para>
+
+ <screen><prompt>#</prompt> <userinput>pkg install gimp</userinput></screen>
+
+ <para>Como alternativa, use a Coleção de Ports:</para>
+
+ <screen><prompt>#</prompt> <userinput>cd /usr/ports/graphics/gimp</userinput>
+<prompt>#</prompt> <userinput>make install clean</userinput></screen>
+
+ <para>A categoria de programas gráficos (<link xlink:href="https://www.FreeBSD.org/ports/graphics.html">freebsd.org/ports/graphics.html</link>) da Coleção de Ports contém vários plugins relacionados ao <application>GIMP</application>, arquivos de ajuda e manuais do usuário.</para>
+
+ </sect2>
+
+ <sect2>
+ <title>Apache OpenOffice</title>
+
+ <indexterm><primary> <application>Apache OpenOffice</application> </primary></indexterm>
+ <indexterm><primary>office suite</primary> <secondary> <application>Apache OpenOffice</application> </secondary></indexterm>
+
+ <para>O <application>Apache OpenOffice</application> é uma suíte de escritório de código-fonte aberto que é desenvolvida sob a asa da Incubadora da Apache Software Foundation. Ele inclui todos os aplicativos encontrados em um pacote completo de produtividade de escritório: um processador de texto, uma planilha eletrônica, um gerenciador de apresentação e um programa de desenho. Sua interface de usuário é semelhante a outros pacotes de escritório e pode importar e exportar em vários formatos de arquivo populares. Está disponível em vários idiomas diferentes e a internacionalização foi estendida para interfaces, corretores ortográficos e dicionários.</para>
+
+ <para>O processador de texto do <application>Apache OpenOffice</application> usa um formato de arquivo XML nativo para maior portabilidade e flexibilidade. O programa de planilha eletrônica possui uma linguagem de macros que pode ser conectada a bancos de dados externos. O <application>Apache OpenOffice</application> é estável e roda nativamente em <trademark class="registered">Windows</trademark>, <trademark>Solaris</trademark>, <trademark class="registered">Linux</trademark>, FreeBSD, e <trademark class="registered">Mac OS</trademark> X. Maiores informações sobre o <application>Apache OpenOffice</application> podem ser encontradas em <link xlink:href="http://openoffice.org/">openoffice.org</link>. Para informações específicas do FreeBSD, consulte <link xlink:href="http://porting.openoffice.org/freebsd/">porting.openoffice.org/freebsd/</link>.</para>
+
+ <para>Para instalar o pacote <application>Apache OpenOffice</application>:</para>
+
+ <screen><prompt>#</prompt> <userinput>pkg install apache-openoffice</userinput></screen>
+
+ <para>Depois que o pacote for instalado, digite o seguinte comando para iniciar o <application>Apache OpenOffice</application>:</para>
+
+ <screen><prompt>%</prompt> <userinput>openoffice-<replaceable>X.Y.Z</replaceable></userinput></screen>
+
+ <para>onde <replaceable>X.Y.Z</replaceable> é o número da versão instalada do <application>Apache OpenOffice</application>. Na primeira vez que o <application>Apache OpenOffice</application> for iniciado, algumas perguntas serão feitas e uma pasta <filename>.openoffice.org</filename> será criada no diretório pessoal do usuário.</para>
+
+ <para>Se o pacote do <application>Apache OpenOffice</application> desejado não estiver disponível, a compilação do port ainda será uma opção. No entanto, isso requer muito espaço em disco e um tempo bastante longo para compilar:</para>
+
+ <screen><prompt>#</prompt> <userinput>cd /usr/ports/editors/openoffice-4</userinput>
+<prompt>#</prompt> <userinput>make install clean</userinput></screen>
+
+ <note>
+ <para>Para compilar uma versão localizada, substitua o comando anterior por:</para>
+
+ <screen><prompt>#</prompt> <userinput>make LOCALIZED_LANG=<replaceable>your_language</replaceable> install clean</userinput></screen>
+
+ <para>Substitua <replaceable>your_language</replaceable> pelo código ISO do idioma correto. Uma lista de códigos de idiomas suportados está disponível em <filename>files/Makefile.localized</filename>, localizado no diretório do port.</para>
+ </note>
+ </sect2>
+
+ <sect2>
+ <title>LibreOffice</title>
+
+ <indexterm><primary><application>LibreOffice</application></primary></indexterm>
+ <indexterm><primary>office suite</primary> <secondary><application>LibreOffice</application></secondary></indexterm>
+
+ <para>O <application>LibreOffice</application> é um pacote de software livre desenvolvido por <link xlink:href="http://www.documentfoundation.org/">documentfoundation.org</link>. É compatível com outras grandes suítes de escritórios e está disponível em diversas plataformas. Ele é um fork renomeado do <application>Apache OpenOffice</application> e inclui aplicativos encontrados em um pacote completo de produtividade de escritório: processador de texto, planilha, gerenciador de apresentação, programa de desenho, programa de gerenciamento de banco de dados e uma ferramenta para criar e editar fórmulas matemáticas. Está disponível em vários idiomas diferentes e a internacionalização foi estendida para interfaces, corretores ortográficos e dicionários.</para>
+
+ <para>O processador de texto do <application>LibreOffice</application> usa um formato de arquivo XML nativo para maior portabilidade e flexibilidade. O programa de planilha eletrônica possui uma linguagem de macros que pode ser conectada a bancos de dados externos. O <application>LibreOffice</application> é estável e roda nativamente em <trademark class="registered">Windows</trademark>, <trademark class="registered">Linux</trademark>, FreeBSD e <trademark class="registered">Mac OS</trademark> X. Maiores informações sobre o <application>LibreOffice</application> podem ser encontradas em <link xlink:href="http://www.libreoffice.org/">libreoffice.org</link>.</para>
+
+ <para>Para instalar a versão em inglês do pacote <application>LibreOffice</application>:</para>
+
+ <screen><prompt>#</prompt> <userinput>pkg install libreoffice</userinput></screen>
+
+ <para>A categoria de editores de texto (<link xlink:href="https://www.FreeBSD.org/ports/editors.html"> freebsd.org/ports/editors.html </link>) da Coleção de Ports contém várias versões versões localizadas do <application>LibreOffice</application>. Ao instalar um pacote localizado, substitua <literal>libreoffice</literal> pelo nome do pacote localizado.</para>
+
+ <para>Quando o pacote estiver instalado, digite o seguinte comando para executar o <application>LibreOffice</application>:</para>
+
+ <screen><prompt>%</prompt> <userinput>libreoffice</userinput></screen>
+
+ <para>Durante a primeira execução, algumas perguntas serão feitas e uma pasta <filename>.libreoffice</filename> será criada no diretório pessoal do usuário.</para>
+
+ <para>Se o pacote <application>LibreOffice</application> desejado não estiver disponível, a compilação do port ainda será uma opção. No entanto, isso requer muito espaço em disco e um tempo bastante longo para compilar. Este exemplo compila a versão em inglês:</para>
+
+ <screen><prompt>#</prompt> <userinput>cd /usr/ports/editors/libreoffice</userinput>
+<prompt>#</prompt> <userinput>make install clean</userinput></screen>
+
+ <note>
+ <para>Para compilar uma versão localizada, faça <command>cd</command> para o diretório do port do idioma desejado. Os idiomas suportados podem ser encontrados na categoria de editores (<link xlink:href="https://www.FreeBSD.org/ports/editors.html">freebsd.org/ports/editors.html</link>) da Coleção de Ports.</para>
+ </note>
+ </sect2>
+ </sect1>
+
+ <sect1 xml:id="desktop-viewers">
+ <title>Visualizadores de Documentos</title>
+
+ <para>Alguns novos formatos de documentos ganharam popularidade desde o advento do <trademark class="registered">UNIX</trademark> e os visualizadores que eles exigem podem não estar disponíveis no sistema base. Esta seção demonstra como instalar os seguintes visualizadores de documentos:</para>
+
+ <informaltable frame="none" pgwide="1">
+ <tgroup cols="4">
+ <thead>
+ <row>
+ <entry>Nome da aplicação</entry>
+ <entry>Recursos necessários</entry>
+ <entry>Instalação a partir do Ports</entry>
+ <entry>Principais Dependências </entry>
+ </row>
+ </thead>
+
+ <tbody>
+ <row>
+ <entry><application>Xpdf</application></entry>
+ <entry>leve</entry>
+ <entry>leve</entry>
+ <entry><application>FreeType</application></entry>
+ </row>
+
+ <row>
+ <entry><application>gv</application></entry>
+ <entry>leve</entry>
+ <entry>leve</entry>
+ <entry><application>Xaw3d</application></entry>
+ </row>
+
+ <row>
+ <entry><application>Geeqie</application></entry>
+ <entry>leve</entry>
+ <entry>leve</entry>
+ <entry><application>Gtk+</application> ou <application>GNOME</application></entry>
+ </row>
+
+ <row>
+ <entry><application>ePDFView</application></entry>
+ <entry>leve</entry>
+ <entry>leve</entry>
+ <entry><application>Gtk+</application></entry>
+ </row>
+
+ <row>
+ <entry><application>Okular</application></entry>
+ <entry>leve</entry>
+ <entry>pesado</entry>
+ <entry><application>KDE</application></entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </informaltable>
+
+ <sect2>
+ <title>Xpdf</title>
+
+ <indexterm><primary><application>Xpdf</application></primary></indexterm>
+ <indexterm><primary>PDF</primary> <secondary>viewing</secondary></indexterm>
+
+ <para>Para os usuários que preferem um pequeno visualizador de PDF do FreeBSD, o <application>Xpdf</application> fornece um visualizador leve e eficiente que requer poucos recursos. Ele usa as fontes X padrão e não requer nenhum kit de ferramentas adicional.</para>
+
+ <para>Para instalar o pacote <application>Xpdf</application>:</para>
+
+ <screen><prompt>#</prompt> <userinput>pkg install xpdf</userinput></screen>
+
+ <para>Se o pacote não estiver disponível, use a Coleção de Ports:</para>
+
+ <screen><prompt>#</prompt> <userinput>cd /usr/ports/graphics/xpdf</userinput>
+<prompt>#</prompt> <userinput>make install clean</userinput></screen>
+
+ <para>Quando a instalação estiver concluída, inicie o <command>xpdf</command> e use o botão direito do mouse para ativar o menu.</para>
+ </sect2>
+
+ <sect2>
+ <title><application>gv</application></title>
+
+ <indexterm><primary><application>gv</application></primary></indexterm>
+ <indexterm><primary>PDF</primary> <secondary>viewing</secondary></indexterm>
+ <indexterm><primary>PostScript</primary> <secondary>viewing</secondary></indexterm>
+
+ <para>O <application>gv</application> é um visualizador de arquivos <trademark class="registered">PostScript</trademark> e PDF. Ele é baseado no <application>ghostview</application>, mas tem uma aparência mais agradável, pois é baseado no kit de ferramentas do widget <application>Xaw3d</application>. O <application>gv</application> possui muitos recursos configuráveis, como orientação, tamanho do papel, escala e anti-aliasing. Quase qualquer operação pode ser executada com o teclado ou com o mouse.</para>
+
+ <para>Para instalar o <application>gv</application> como um pacote:</para>
+
+ <screen><prompt>#</prompt> <userinput>pkg install gv</userinput></screen>
+
+ <para>Se um pacote não estiver disponível, use a Coleção de Ports:</para>
+
+ <screen><prompt>#</prompt> <userinput>cd /usr/ports/print/gv</userinput>
+<prompt>#</prompt> <userinput>make install clean</userinput></screen>
+ </sect2>
+
+ <sect2>
+ <title>Geeqie</title>
+
+ <indexterm><primary><application>Geeqie</application></primary></indexterm>
+
+ <para>O <application> Geeqie </application> é um fork do projeto abandonado <application>GQView</application>, em um esforço para levar o desenvolvimento adiante e integrar os patches existentes. O <application>Geeqie</application> é um gerenciador de imagens que suporta a visualização de um arquivo com um único clique, a execução de um editor externo e a visualização de miniaturas. Ele também possui um modo de apresentação de slides e algumas operações básicas de arquivo, facilitando o gerenciamento das coleções de imagens e a localização de arquivos duplicados. O <application>Geeqie</application> suporta visualização em tela cheia e a internacionalização.</para>
+
+ <para>Para instalar o pacote <application>Geeqie</application>:</para>
+
+ <screen><prompt>#</prompt> <userinput>pkg install geeqie</userinput></screen>
+
+ <para>Se o pacote não estiver disponível, use a Coleção de Ports:</para>
+
+ <screen><prompt>#</prompt> <userinput>cd /usr/ports/graphics/geeqie</userinput>
+<prompt>#</prompt> <userinput>make install clean</userinput></screen>
+ </sect2>
+
+ <sect2>
+ <title>ePDFView</title>
+
+ <indexterm><primary><application>ePDFView</application></primary></indexterm>
+ <indexterm><primary>PDF</primary> <secondary>viewing</secondary></indexterm>
+
+ <para>O <application>ePDFView</application> é um visualizador de documentos <acronym>PDF</acronym> leve que usa somente as bibliotecas <application>Gtk+</application> e <application>Poppler</application>. Ele está atualmente em desenvolvimento, mas já abre a maioria dos arquivos <acronym>PDF</acronym> (até os criptografados), salva cópias de documentos e tem suporte para impressão usando o <application>CUPS</application>.</para>
+
+ <para>Para instalar o <application>ePDFView</application> como um pacote:</para>
+
+ <screen><prompt>#</prompt> <userinput>pkg install epdfview</userinput></screen>
+
+ <para>Se um pacote não estiver disponível, use a Coleção de Ports:</para>
+
+ <screen><prompt>#</prompt> <userinput>cd /usr/ports/graphics/epdfview</userinput>
+<prompt>#</prompt> <userinput>make install clean</userinput></screen>
+ </sect2>
+
+ <sect2>
+ <title>Okular</title>
+
+ <indexterm><primary><application>Okular</application></primary></indexterm>
+ <indexterm><primary><acronym>PDF</acronym></primary> <secondary>viewing</secondary></indexterm>
+
+ <para>O <application>Okular</application> é um visualizador de documentos universal baseado no <application>KPDF</application> para <application>KDE</application>. Ele pode abrir muitos formatos de documentos, incluindo <acronym>PDF</acronym>, <trademark class="registered">PostScript</trademark>, DjVu, <acronym>CHM</acronym>, <acronym>XPS</acronym> e ePub.</para>
+
+ <para>Para instalar o <application>Okular</application> como um pacote:</para>
+
+ <screen><prompt>#</prompt> <userinput>pkg install okular</userinput></screen>
+
+ <para>Se um pacote não estiver disponível, use a Coleção de Ports:</para>
+
+ <screen><prompt>#</prompt> <userinput>cd /usr/ports/graphics/okular</userinput>
+<prompt>#</prompt> <userinput>make install clean</userinput></screen>
+ </sect2>
+ </sect1>
+
+ <sect1 xml:id="desktop-finance">
+ <title>Finanças</title>
+
+ <para>Para gerenciar finanças pessoais em um desktop FreeBSD, alguns aplicativos poderosos e fáceis de usar podem ser instalados. Alguns são compatíveis com formatos de arquivos comuns, como os formatos usados ​​pelo <application>Quicken</application> e <application>Excel</application>.</para>
+
+ <para>Esta seção cobre estes programas:</para>
+
+ <informaltable frame="none" pgwide="1">
+ <tgroup cols="4">
+ <thead>
+ <row>
+ <entry>Nome da aplicação</entry>
+ <entry>Recursos necessários</entry>
+ <entry>Instalação a partir do Ports</entry>
+ <entry>Principais Dependências </entry>
+ </row>
+ </thead>
+
+ <tbody>
+ <row>
+ <entry><application>GnuCash</application></entry>
+ <entry>leve</entry>
+ <entry>pesado</entry>
+ <entry><application>GNOME</application></entry>
+ </row>
+
+ <row>
+ <entry><application>Gnumeric</application></entry>
+ <entry>leve</entry>
+ <entry>pesado</entry>
+ <entry><application>GNOME</application></entry>
+ </row>
+
+ <row>
+ <entry><application>KMyMoney</application></entry>
+ <entry>leve</entry>
+ <entry>pesado</entry>
+ <entry><application>KDE</application></entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </informaltable>
+
+ <sect2>
+ <title>GnuCash</title>
+
+ <indexterm><primary><application>GnuCash</application></primary></indexterm>
+
+ <para>O <application>GnuCash</application> faz parte do esforço do <application>GNOME</application> para fornecer aplicativos fáceis de usar, mas poderosos, para usuários finais. O <application>GnuCash</application> pode ser usado para acompanhar receitas e despesas, contas bancárias e ações. Ele apresenta uma interface intuitiva, mantendo-se profissional.</para>
+
+ <para>O <application> GnuCash </application> fornece um registro inteligente, um sistema hierárquico de contas e muitos aceleradores de teclado e métodos de preenchimento automático. Ele pode dividir uma única transação em várias partes mais detalhadas. O <application>GnuCash</application> pode importar e mesclar arquivos QIF do <application>Quicken</application>. Ele também lida com a maioria dos formatos internacionais de data e moeda.</para>
+
+ <para>Para instalar o pacote <application>GnuCash</application>:</para>
+
+ <screen><prompt>#</prompt> <userinput>pkg install gnucash</userinput></screen>
+
+ <para>Se o pacote não estiver disponível, use a Coleção de Ports:</para>
+
+ <screen><prompt>#</prompt> <userinput>cd /usr/ports/finance/gnucash</userinput>
+<prompt>#</prompt> <userinput>make install clean</userinput></screen>
+ </sect2>
+
+ <sect2>
+ <title>Gnumeric</title>
+
+ <indexterm><primary><application>Gnumeric</application></primary></indexterm>
+ <indexterm><primary>spreadsheet</primary> <secondary><application>Gnumeric</application></secondary></indexterm>
+
+ <para>O <application>Gnumeric</application> é um programa de planilha eletrônica desenvolvido pela comunidade <application>GNOME</application>. Ele possui adivinhação automática e conveniente de entrada do usuário de acordo com o formato da célula para muitas sequências. Ele pode importar arquivos em vários formatos populares, incluindo <application>Excel</application>, <application>Lotus 1-2-3</application> e <application>Quattro Pro</application>. Ele tem um grande número de funções internas e permite todos os formatos usuais de célula, como número, moeda, data, hora e muito mais.</para>
+
+ <para>Para instalar o <application>Gnumeric</application> como um pacote:</para>
+
+ <screen><prompt>#</prompt> <userinput>pkg install gnumeric</userinput></screen>
+
+ <para>Se o pacote não estiver disponível, use a Coleção de Ports:</para>
+
+ <screen><prompt>#</prompt> <userinput>cd /usr/ports/math/gnumeric</userinput>
+<prompt>#</prompt> <userinput>make install clean</userinput></screen>
+ </sect2>
+
+ <sect2>
+ <title>KMyMoney</title>
+
+ <indexterm><primary><application>KMyMoney</application></primary></indexterm>
+
+ <indexterm><primary>spreadsheet</primary> <secondary><application>KMyMoney</application></secondary></indexterm>
+
+ <para>O <application>KMyMoney</application> é uma aplicação de finanças pessoais criada pela comunidade <application>KDE</application>. O <application>KMyMoney</application> tem como objetivo fornecer os recursos importantes encontrados em aplicativos comerciais de gerenciamento de finanças pessoais. Ele também destaca a facilidade de uso e a contabilidade adequada de dupla entrada entre seus recursos. O <application>KMyMoney</application> importa a partir de arquivos QIF padrão do <application>Quicken</application>, rastreia investimentos, manipula várias moedas e fornece diversos relatórios.</para>
+
+ <para>Para instalar o <application>KMyMoney</application> como um pacote:</para>
+
+ <screen><prompt>#</prompt> <userinput>pkg install kmymoney-kde4</userinput></screen>
+
+ <para>Se o pacote não estiver disponível, use a Coleção de Ports:</para>
+
+ <screen><prompt>#</prompt> <userinput>cd /usr/ports/finance/kmymoney-kde4</userinput>
+<prompt>#</prompt> <userinput>make install clean</userinput></screen>
+ </sect2>
+ </sect1>
+</chapter>
+
+
+<!--
+ The FreeBSD Documentation Project
+
+ $FreeBSD$
+-->
+<chapter version="5.0" xml:id="multimedia">
+
+ <info>
+ <title>Multimídia</title>
+
+ <authorgroup>
+ <author><personname> <firstname>Ross</firstname> <surname>Lippert</surname> </personname> <contrib>Editado por </contrib></author>
+ </authorgroup>
+ </info>
+
+ <sect1 xml:id="multimedia-synopsis">
+ <title>Sinopse</title>
+
+ <para>O FreeBSD suporta uma ampla variedade de placas de som, permitindo que os usuários aproveitem a saída de alta fidelidade de um sistema FreeBSD. Isso inclui a capacidade de gravar e reproduzir áudio MPEG Layer 3 (<acronym>MP3</acronym>), arquivo de áudio Waveform (<acronym>WAV</acronym>), Ogg Vorbis e outros formatos. A coleção de Ports do FreeBSD contém muitas aplicações para editar áudio gravado, adicionar efeitos sonoros e controlar dispositivos MIDI conectados.</para>
+
+ <para>O FreeBSD também suporta a reprodução de arquivos de vídeo e <acronym>DVD</acronym>s. A coleção de Ports do FreeBSD contém aplicativos para codificar, converter e reproduzir várias mídias de vídeo.</para>
+
+ <para>Este capítulo descreve como configurar placas de som, reprodução de vídeo, placas sintonizadoras de TV e scanners no FreeBSD. Também descreve algumas das aplicações que estão disponíveis para usar esses dispositivos.</para>
+
+ <para>Depois de ler este capítulo, você irá saber como:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>Configurar uma placa de som no FreeBSD.</para>
+ </listitem>
+
+ <listitem>
+ <para>Solucionar problemas de configuração de som.</para>
+ </listitem>
+
+ <listitem>
+ <para>Reproduzir e codificar MP3 e outros áudios.</para>
+ </listitem>
+
+ <listitem>
+ <para>Preparar um sistema FreeBSD para reprodução de vídeo.</para>
+ </listitem>
+
+ <listitem>
+ <para>Reproduzir <acronym>DVD</acronym>s, arquivos <filename>.mpg</filename> e <filename>.avi</filename>.</para>
+ </listitem>
+
+ <listitem>
+ <para>Copiar o conteúdo de um <acronym>CD</acronym> ou <acronym>DVD</acronym> em arquivos arquivos.</para>
+ </listitem>
+
+ <listitem>
+ <para>Configurar uma placa de TV.</para>
+ </listitem>
+
+ <listitem>
+ <para>Instalar e configurar o MythTV no FreeBSD.</para>
+ </listitem>
+
+ <listitem>
+ <para>Configurar um scanner de imagem.</para>
+ </listitem>
+
+ <listitem>
+ <para>Configurar um headset Bluetooth.</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>Antes de ler este capítulo, você deve:</para>
+
+ <itemizedlist>
+ <listitem><para>Saber como instalar aplicativos conforme descrito em <xref linkend="ports"/>.</para></listitem>
+ </itemizedlist>
+ </sect1>
+
+ <sect1 xml:id="sound-setup">
+ <info>
+ <title>Configurando a Placa de Som</title>
+
+ <authorgroup>
+ <author><personname> <firstname>Moses</firstname> <surname>Moore</surname> </personname> <contrib>Contribuido por</contrib></author>
+ </authorgroup>
+
+ <authorgroup>
+ <author><personname> <firstname>Marc</firstname> <surname>Fonvieille</surname> </personname> <contrib>Aprimorado por</contrib></author>
+ </authorgroup>
+ </info>
+
+ <indexterm><primary>PCI</primary></indexterm>
+ <indexterm><primary>sound cards</primary></indexterm>
+ <para>Antes de iniciar a configuração, determine o modelo da placa de som e o chip usado. O FreeBSD suporta uma ampla variedade de placas de som. Verifique a lista de dispositivos de áudio compatíveis nas <link xlink:href="https://www.FreeBSD.org/releases/12.0R/hardware.html">Notas de Hardware</link>, para ver se a placa de som é suportada e quais drivers do FreeBSD que ela usa.</para>
+
+ <indexterm><primary>kernel</primary> <secondary>configuration</secondary></indexterm>
+
+ <para>Para usar um dispositivo de som, seu driver deve ser carregado. A maneira mais fácil é carregar o módulo do kernel para a placa de som com o <citerefentry><refentrytitle>kldload</refentrytitle><manvolnum>8</manvolnum></citerefentry>. Este exemplo carrega o driver para um chipset de áudio integrado baseado na especificação Intel:</para>
+
+ <screen><prompt>#</prompt> <userinput>kldload snd_hda</userinput></screen>
+
+ <para>Para automatizar o carregamento desse driver no momento da inicialização, faça edição adicionando a seguinte linha ao arquivo <filename>/boot/loader.conf</filename>:</para>
+
+ <programlisting>snd_hda_load="YES"</programlisting>
+
+ <para>Outros módulos de som disponíveis estão listados no arquivo <filename>/boot/defaults/loader.conf</filename>. Quando não tiver certeza de qual driver usar, carregue o módulo <filename>snd_driver</filename>:</para>
+
+ <screen><prompt>#</prompt> <userinput>kldload snd_driver</userinput></screen>
+
+ <para>Este é um metadriver que carrega todos os drivers de som mais comuns e pode ser usado para acelerar a busca pelo driver correto. Também é possível carregar todos os drivers de som adicionando o metadriver no arquivo <filename>/boot/loader.conf</filename>.</para>
+
+ <para>Para determinar qual driver foi selecionado para a placa de som após carregar o metadriver <filename>snd_driver</filename>, digite, <command>cat /dev/sndstat</command>.</para>
+
+ <sect2>
+ <title>Configurando um kernel Personalizado com Suporte de Som</title>
+
+ <para>Esta seção é para usuários que preferem compilar estaticamente em suporte para a placa de som em um kernel personalizado. Para mais informações sobre como recompilar um kernel, consulte <xref linkend="kernelconfig"/>.</para>
+
+ <para>Ao usar um kernel personalizado para fornecer suporte ao som, verifique se o driver do framework de áudio existe no arquivo de configuração do kernel personalizado:</para>
+
+ <programlisting>device sound</programlisting>
+
+ <para>Em seguida, adicione suporte para a placa de som. Para continuar o exemplo do chipset de áudio integrado baseado na especificação Intel da seção anterior, use a seguinte linha no arquivo de configuração do kernel personalizado:</para>
+
+ <programlisting>device snd_hda</programlisting>
+
+ <para>Certifique-se de ler a página de manual do driver para o nome do dispositivo a ser usado pelo driver.</para>
+
+ <para>Placas de som ISA não-PnP podem requerer que as configurações de porta IRQ e I/O da placa sejam adicionadas ao arquivo <filename>/boot/device.hints</filename>. Durante o processo de inicialização, o <citerefentry><refentrytitle>loader</refentrytitle><manvolnum>8</manvolnum></citerefentry> lê este arquivo e passa as configurações para o kernel. Por exemplo, uma placa antiga ISA não-PnP da Creative <trademark class="registered">SoundBlaster</trademark> usará o driver <citerefentry><refentrytitle>snd_sbc</refentrytitle><manvolnum>4</manvolnum></citerefentry> em conjunto com <literal>snd_sb16</literal>. Para esta placa, as seguintes linhas devem ser adicionadas ao arquivo de configuração do kernel:</para>
+
+ <programlisting>device snd_sbc
+device snd_sb16</programlisting>
+
+ <para>Se a placa usar a porta de I/O <literal>0x220</literal> e a IRQ <literal>5</literal>, essas linhas também deverão ser adicionadas ao arquivo <filename>/boot/device.hints</filename>:</para>
+
+ <programlisting>hint.sbc.0.at="isa"
+hint.sbc.0.port="0x220"
+hint.sbc.0.irq="5"
+hint.sbc.0.drq="1"
+hint.sbc.0.flags="0x15"</programlisting>
+
+ <para>A sintaxe usada no arquivo <filename>/boot/device.hints</filename> é descrita em <citerefentry><refentrytitle>sound</refentrytitle><manvolnum>4</manvolnum></citerefentry> e na página de manual do driver da placa de som.</para>
+
+ <para>As configurações mostradas acima são os padrões. Em alguns casos, a IRQ ou outras configurações podem precisar ser alterados para corresponder à placa. Consulte <citerefentry><refentrytitle>snd_sbc</refentrytitle><manvolnum>4</manvolnum></citerefentry> para obter mais informações sobre esta placa.</para>
+ </sect2>
+
+ <sect2 xml:id="sound-testing">
+ <title>Testando o Som</title>
+
+ <para>Depois de carregar o módulo necessário ou reinicializar no kernel personalizado, a placa de som deve ser detectada. Para confirmar, execute <command>dmesg | grep pcm</command>. Este exemplo é de um sistema com um chipset integrado Conexant CX20590:</para>
+
+ <screen>pcm0: &lt;NVIDIA (0x001c) (HDMI/DP 8ch)&gt; at nid 5 on hdaa0
+pcm1: &lt;NVIDIA (0x001c) (HDMI/DP 8ch)&gt; at nid 6 on hdaa0
+pcm2: &lt;Conexant CX20590 (Analog 2.0+HP/2.0)&gt; at nid 31,25 and 35,27 on hdaa1</screen>
+
+ <para>O status da placa de som também pode ser verificado usando este comando:</para>
+
+ <screen><prompt>#</prompt> <userinput>cat /dev/sndstat</userinput>
+FreeBSD Audio Driver (newpcm: 64bit 2009061500/amd64)
+Installed devices:
+pcm0: &lt;NVIDIA (0x001c) (HDMI/DP 8ch)&gt; (play)
+pcm1: &lt;NVIDIA (0x001c) (HDMI/DP 8ch)&gt; (play)
+pcm2: &lt;Conexant CX20590 (Analog 2.0+HP/2.0)&gt; (play/rec) default</screen>
+
+ <para>A saída irá variar dependendo da placa de som. Se nenhum dispositivo <filename>pcm</filename> estiver listado, verifique se o driver de dispositivo correto foi carregado ou compilado no kernel. A próxima seção lista alguns problemas comuns e suas soluções.</para>
+
+ <para>Se tudo correr bem, a placa de som deverá funcionar no FreeBSD. Se a unidade de <acronym>CD</acronym> ou <acronym>DVD</acronym> estiver corretamente conectada à placa de som, é possível inserir um <acronym>CD</acronym> de áudio na unidade e reproduzi-lo com <citerefentry><refentrytitle>cdcontrol</refentrytitle><manvolnum>1</manvolnum></citerefentry>:</para>
+
+ <screen><prompt>%</prompt> <userinput>cdcontrol -f /dev/acd0 play 1</userinput></screen>
+
+ <warning>
+ <para><acronym>CD</acronym> de audio têm codificações especializadas, o que significa que não devem ser montados usando <citerefentry><refentrytitle>mount</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
+ </warning>
+
+ <para>Várias aplicações, como <package>audio/workman</package>, fornecem uma interface mais amigável. O Port <package>audio/mpg123</package> pode ser instalado para ouvir arquivos de áudio MP3.</para>
+
+ <para>Outra maneira rápida de testar a placa é enviar dados para <filename>/dev/dsp</filename>:</para>
+
+ <screen><prompt>%</prompt> <userinput>cat <replaceable>filename</replaceable> &gt; /dev/dsp</userinput></screen>
+
+ <para>onde <filename><replaceable>filename</replaceable></filename> pode ser qualquer tipo de arquivo. Este comando deve produzir algum ruído, confirmando que a placa de som está funcionando.</para>
+
+ <note>
+ <para>Os nós de dispositivo <filename>/dev/dsp*</filename> serão criados automaticamente conforme necessário. Quando não estão em uso, eles não existem e não aparecerão na saída de <citerefentry><refentrytitle>ls</refentrytitle><manvolnum>1</manvolnum></citerefentry>.</para>
+ </note>
+ </sect2>
+
+ <sect2 xml:id="bluetooth-headset">
+ <title>Configurando Dispositivos de Som Bluetooth</title>
+
+ <indexterm><primary>Bluetooth audio</primary></indexterm>
+
+ <para>Conectar a um dispositivo Bluetooth está fora do escopo deste capítulo. Consulte a <xref linkend="network-bluetooth"/> para mais informações.</para>
+
+ <para>Para que o dispositivo Bluetooth funcione com o sistema de som do FreeBSD, os usuários precisam primeiramente instalar o <package>audio/virtual_oss</package>:</para>
+
+ <screen><prompt>#</prompt> <userinput>pkg install virtual_oss</userinput></screen>
+
+ <para><package>audio/virtual_oss</package> requer <literal>cuse</literal> para ser carregado no kernel:</para>
+
+ <screen><prompt>#</prompt> <userinput>kldload cuse</userinput></screen>
+
+ <para>Para carregar o <literal>cuse</literal> durante a inicialização do sistema, execute o comando:</para>
+
+ <screen><prompt>#</prompt> <userinput>sysrc -f /boot/loader.conf cuse_load=yes</userinput></screen>
+
+ <para>Para usar fones de ouvido como reprodutor de som com <package>audio/virtual_oss</package>, os usuários precisam criar um dispositivo virtual depois de se conectarem a um dispositivo de áudio Bluetooth:</para>
+
+ <screen><prompt>#</prompt> <userinput>virtual_oss -C 2 -c 2 -r 48000 -b 16 -s 768 -R /dev/null -P /dev/bluetooth/<replaceable>headphones</replaceable> -d dsp</userinput></screen>
+
+ <note>
+ <para><replaceable>headphones</replaceable> neste exemplo é o nome de host de <filename>/etc/bluetooth/hosts</filename>. <literal>BT_ADDR</literal> também poderia ser usado.</para>
+ </note>
+
+ <para>Consulte <citerefentry vendor="ports"><refentrytitle>virtual_oss</refentrytitle><manvolnum>8</manvolnum></citerefentry> para mais informações.</para>
+ </sect2>
+
+ <sect2 xml:id="troubleshooting">
+ <title>Solução de Problemas de Som</title>
+
+ <indexterm><primary>device nodes</primary></indexterm>
+ <indexterm><primary>I/O port</primary></indexterm>
+ <indexterm><primary>IRQ</primary></indexterm>
+ <indexterm><primary>DSP</primary></indexterm>
+
+ <para><xref linkend="multimedia-sound-common-error-messages"/> lista algumas mensagens de erros comuns e suas soluções:</para>
+
+ <table xml:id="multimedia-sound-common-error-messages" frame="none" pgwide="1">
+ <title>Mensagens de Erros Comuns</title>
+
+ <tgroup cols="2">
+ <thead>
+ <row>
+ <entry>Erro</entry>
+ <entry>Solução</entry>
+ </row>
+ </thead>
+
+ <tbody>
+ <row>
+ <entry><errorname>sb_dspwr(XX) timed out</errorname></entry>
+ <entry><para>A porta de I/O não está configurada corretamente.</para></entry>
+ </row>
+
+ <row>
+ <entry><errorname>bad irq XX</errorname></entry>
+ <entry><para>A IRQ está definida incorretamente. Certifique-se de que a IRQ definido e a IRQ do som são as mesmas.</para></entry>
+ </row>
+
+ <row>
+ <entry><errorname>xxx: gus pcm not attached, out of memory</errorname></entry>
+ <entry><para>Não há memória disponível suficiente para usar o dispositivo.</para></entry>
+ </row>
+
+ <row>
+ <entry><errorname>xxx: can't open /dev/dsp!</errorname></entry>
+ <entry><para>Digite <command>fstat | grep dsp</command> para verificar se outro aplicativo está mantendo o dispositivo aberto. Os causadores de problemas notáveis ​​são o suporte a som do <application>esound</application> e do <application>KDE</application>.</para></entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table>
+
+ <para>Placas gráficas modernas geralmente vêm com seu próprio driver de som para uso com <acronym>HDMI</acronym>. Às vezes, esse dispositivo de som é enumerado antes da placa de som, o que significa que a placa de som não será usada como o dispositivo de reprodução padrão. Para verificar se este é o caso, execute <application>dmesg</application> e procure por <literal>pcm</literal>. A saída é algo como isto:</para>
+
+ <programlisting>...
+hdac0: HDA Driver Revision: 20100226_0142
+hdac1: HDA Driver Revision: 20100226_0142
+hdac0: HDA Codec #0: NVidia (Unknown)
+hdac0: HDA Codec #1: NVidia (Unknown)
+hdac0: HDA Codec #2: NVidia (Unknown)
+hdac0: HDA Codec #3: NVidia (Unknown)
+pcm0: &lt;HDA NVidia (Unknown) PCM #0 DisplayPort&gt; at cad 0 nid 1 on hdac0
+pcm1: &lt;HDA NVidia (Unknown) PCM #0 DisplayPort&gt; at cad 1 nid 1 on hdac0
+pcm2: &lt;HDA NVidia (Unknown) PCM #0 DisplayPort&gt; at cad 2 nid 1 on hdac0
+pcm3: &lt;HDA NVidia (Unknown) PCM #0 DisplayPort&gt; at cad 3 nid 1 on hdac0
+hdac1: HDA Codec #2: Realtek ALC889
+pcm4: &lt;HDA Realtek ALC889 PCM #0 Analog&gt; at cad 2 nid 1 on hdac1
+pcm5: &lt;HDA Realtek ALC889 PCM #1 Analog&gt; at cad 2 nid 1 on hdac1
+pcm6: &lt;HDA Realtek ALC889 PCM #2 Digital&gt; at cad 2 nid 1 on hdac1
+pcm7: &lt;HDA Realtek ALC889 PCM #3 Digital&gt; at cad 2 nid 1 on hdac1
+...</programlisting>
+
+ <para>Neste exemplo, a placa gráfica (<literal>NVidia</literal>) foi enumerada antes da placa de som (<literal>Realtek ALC889</literal>). Para usar a placa de som como o dispositivo de reprodução padrão, altere a variável <varname>hw.snd.default_unit</varname> para a unidade que deve ser usada para reprodução:</para>
+
+ <screen><prompt>#</prompt> <userinput>sysctl hw.snd.default_unit=<replaceable>n</replaceable></userinput></screen>
+
+ <para>onde <literal>n</literal> é o número do dispositivo de som a ser usado. Neste exemplo, deve ser <literal>4</literal>. Deixe esta mudança permanente adicionando a seguinte linha ao arquivo <filename>/etc/sysctl.conf</filename>:</para>
+
+ <programlisting>hw.snd.default_unit=<replaceable>4</replaceable></programlisting>
+ </sect2>
+
+ <sect2 xml:id="sound-multiple-sources">
+ <info>
+ <title>Utilizando Múltiplas Fontes de Som</title>
+
+ <authorgroup>
+ <author><personname> <firstname>Munish</firstname> <surname>Chopra</surname> </personname> <contrib>Contribuído por</contrib></author>
+ </authorgroup>
+ </info>
+
+ <para>Muitas vezes é desejável ter várias fontes de som capazes de tocar simultaneamente. O FreeBSD usa <quote>Canais de Som Virtuais</quote> para multiplexar a reprodução da placa de som mixando o som no kernel.</para>
+
+ <para>Três variáveis no <citerefentry><refentrytitle>sysctl</refentrytitle><manvolnum>8</manvolnum></citerefentry> estão disponíveis para configurar canais virtuais:</para>
+
+ <screen><prompt>#</prompt> <userinput>sysctl dev.pcm.0.play.vchans=4</userinput>
+<prompt>#</prompt> <userinput>sysctl dev.pcm.0.rec.vchans=4</userinput>
+<prompt>#</prompt> <userinput>sysctl hw.snd.maxautovchans=4</userinput></screen>
+
+ <para>Este exemplo aloca quatro canais virtuais, que é um número prático para o uso diário. Ambos <varname>dev.pcm.0.play.vchans=4</varname> e <varname>dev.pcm.0.rec.vchans=4</varname> são configuráveis ​​depois que um dispositivo foi anexado e representa o número de canais virtuais <filename>pcm0</filename> para reprodução e gravação. Como o módulo <filename>pcm</filename> pode ser carregado independentemente dos drivers de hardware, <varname>hw.snd.maxautovchans</varname> indica quantos canais virtuais serão dados a um dispositivo de áudio quando ele estiver conectado. Consulte <citerefentry><refentrytitle>pcm</refentrytitle><manvolnum>4</manvolnum> </citerefentry> para obter mais informações.</para>
+
+ <note>
+ <para>O número de canais virtuais para um dispositivo não pode ser alterado enquanto estiver em uso. Primeiramente, feche todos os programas usando o dispositivo, como players de música ou daemons de som.</para>
+ </note>
+
+ <para>O dispositivo <filename>pcm</filename> correto será automaticamente alocado de forma transparente para um programa que solicite <filename>/dev/dsp0</filename>.</para>
+ </sect2>
+
+ <sect2>
+ <info>
+ <title>Configurando Valores Padrões para Canais de Mixer</title>
+
+ <authorgroup>
+ <author><personname> <firstname>Josef</firstname> <surname>El-Rayes</surname> </personname> <contrib>Contribuído por</contrib></author>
+ </authorgroup>
+ </info>
+
+ <para>Os valores padrões para os diferentes canais do mixer são codificados permanentemente no código-fonte do driver <citerefentry><refentrytitle>pcm</refentrytitle><manvolnum>4</manvolnum></citerefentry>. Embora os níveis do mixer da placa de som possam ser alterados usando <citerefentry><refentrytitle>mixer</refentrytitle><manvolnum>8</manvolnum></citerefentry> ou aplicativos e daemons de terceiros, essa não é uma solução permanente. Para definir os valores padrões do mixer no nível do driver, defina os valores apropriados no arquivo <filename>/boot/device.hints</filename>, conforme mostrado neste exemplo:</para>
+
+ <programlisting>hint.pcm.0.vol="50"</programlisting>
+
+ <para>Isso definirá o canal de volume como um valor padrão de <literal>50</literal> quando o módulo <citerefentry><refentrytitle>pcm</refentrytitle><manvolnum>4</manvolnum></citerefentry> for carregado.</para>
+ </sect2>
+ </sect1>
+
+ <sect1 xml:id="sound-mp3">
+ <info>
+ <title>Áudio MP3</title>
+
+ <authorgroup>
+ <author><personname> <firstname>Chern</firstname> <surname>Lee</surname> </personname> <contrib>Contribuído por</contrib></author>
+ </authorgroup>
+ </info>
+
+ <para>Esta seção descreve alguns players <acronym>MP3</acronym> disponíveis para o FreeBSD, como ripar trilhas de <acronym>CD</acronym> de áudio e como codificar e decodificar <acronym>MP3</acronym>.</para>
+
+ <sect2 xml:id="mp3-players">
+ <title>Players de MP3</title>
+
+ <para>Um popular reprodutor gráfico de <acronym>MP3</acronym> é o <application>Audacious</application>. Ele suporta skins do <application>Winamp</application> e plugins adicionais. A interface é intuitiva, com uma lista de reprodução, equalizador gráfico e muito mais. Para aqueles que estão familiarizados com o <application>Winamp</application>, acharão o <application>Audacious</application> simples de usar. No FreeBSD, o <application>Audacious</application> pode ser instalado a partir de pacotes ou coleção de Ports <package>multimedia/audacious</package>. Audacious é descendente do XMMS.</para>
+
+ <para>O pacote ou Port <package>audio/mpg123</package> fornece um reprodutor de <acronym>MP3</acronym> alternativo em linha de comando. Uma vez instalado, especifique o arquivo <acronym>MP3</acronym> para reproduzir na linha de comando. Se o sistema tiver vários dispositivos de áudio, o dispositivo de som também pode ser especificado:</para>
+
+ <screen><prompt>#</prompt> <userinput>mpg123 <replaceable>-a /dev/dsp1.0 Foobar-GreatestHits.mp3</replaceable></userinput>
+High Performance MPEG 1.0/2.0/2.5 Audio Player for Layers 1, 2 and 3
+ version 1.18.1; written and copyright by Michael Hipp and others
+ free software (LGPL) without any warranty but with best wishes
+
+Playing MPEG stream from Foobar-GreatestHits.mp3 ...
+MPEG 1.0 layer III, 128 kbit/s, 44100 Hz joint-stereo</screen>
+
+ <para>Outros players <acronym>MP3</acronym> estão disponíveis na Coleção de Ports do FreeBSD.</para>
+ </sect2>
+
+ <sect2 xml:id="rip-cd">
+ <title>Copiando Trilhas de <acronym>CD</acronym> de Áudio</title>
+
+ <para>Antes de codificar um <acronym>CD</acronym> ou <acronym>CD</acronym> para <acronym>MP3</acronym>, os dados de áudio no <acronym>CD</acronym> devem ser copiados para o disco rígido. Isso é feito copiando os dados brutos do <acronym>CD</acronym> Digital Audio (<acronym>CDDA</acronym>) como arquivos <acronym>WAV</acronym>.</para>
+
+ <para>A ferramenta <command>cdda2wav</command>, que é instalada com o suite de programas <package>sysutils/cdrtools</package>, pode ser usada para extrair informações de áudio do <acronym>CD</acronym>.</para>
+
+ <para>Com o <acronym>CD</acronym> de áudio na unidade, o seguinte comando pode ser executado como <systemitem class="username">root</systemitem> para ripar um <acronym>CD</acronym> inteiro em arquivos <acronym>WAV</acronym>, por trilhas:</para>
+
+ <screen><prompt>#</prompt> <userinput>cdda2wav -D <replaceable>0,1,0</replaceable> -B</userinput></screen>
+
+ <para>Neste exemplo, o <option>-D <replaceable>0,1,0</replaceable></option> indica o dispositivo <acronym>SCSI</acronym> <filename>0,1,0</filename> contendo o <acronym>CD</acronym> para ripar. Use o comando <command>cdrecord -scanbus</command> para determinar os parâmetros corretos do dispositivo para o sistema.</para>
+
+ <para>Para ripar trilhas individuais, use a opção <option>-t</option> para especificar a trilha:</para>
+
+ <screen><prompt>#</prompt> <userinput>cdda2wav -D <replaceable>0,1,0</replaceable> -t 7</userinput></screen>
+
+ <para>Para extrair um intervalo de trilhas, como as trilhas de um a sete, especifique um intervalo:</para>
+
+ <screen><prompt>#</prompt> <userinput>cdda2wav -D <replaceable>0,1,0</replaceable> -t 1+7</userinput></screen>
+
+ <para>Para extrair de uma unidade <acronym>ATAPI</acronym>(<acronym>IDE</acronym>) <acronym>CDROM</acronym>, especifique o nome do dispositivo no lugar dos números da unidade <acronym>SCSI</acronym>. Por exemplo, para extrair a trilha 7 de uma unidade IDE:</para>
+
+ <screen><prompt>#</prompt> <userinput>cdda2wav -D <replaceable>/dev/acd0 -t 7</replaceable></userinput></screen>
+
+ <para>Alternativamente, o comando <command>dd</command> pode ser usado para extrair trilhas de áudio em unidades <acronym>ATAPI</acronym>, conforme descrito em <xref linkend="duplicating-audiocds"/>.</para>
+ </sect2>
+
+ <sect2 xml:id="mp3-encoding">
+ <title>Codificação e Decodificação de MP3</title>
+
+ <para><application>Lame</application> é um codificador popular para <acronym>MP3</acronym> que pode ser instalado a partir do port <package>audio/lame</package>. Devido a problemas de patente, o pacote não está disponível.</para>
+
+ <para>O comando a seguir converterá o arquivo <acronym>WAV</acronym> <filename><replaceable>audio01.wav</replaceable></filename> para <filename><replaceable>audio01.mp3</replaceable></filename>:</para>
+
+ <screen><prompt>#</prompt> <userinput>lame -h -b <replaceable>128</replaceable> --tt "<replaceable>Foo Song Title</replaceable>" --ta "<replaceable>FooBar Artist</replaceable>" --tl "<replaceable>FooBar Album</replaceable>" \
+--ty "<replaceable>2014</replaceable>" --tc "<replaceable>Ripped and encoded by Foo</replaceable>" --tg "<replaceable>Genre</replaceable>" <replaceable>audio01.wav audio01.mp3</replaceable></userinput></screen>
+
+ <para>Os 128 kbits especificados são uma taxa de bits padrão para <acronym>MP3</acronym>, enquanto as taxas de bits 160 e 192 fornecem maior qualidade. Quanto maior a taxa de bits, maior o tamanho do arquivo <acronym>MP3</acronym> resultante. A opção <option>-h</option> ativa o modo <quote> de maior qualidade, mas um pouco mais lento </quote>. As opções que começam com <option>--t</option> indicam as tags <acronym>ID3</acronym>, que geralmente contêm informações sobre músicas, para serem incorporadas no arquivo <acronym>MP3</acronym>. Opções adicionais de codificação podem ser encontradas na página de manual do <application>lame</application>.</para>
+
+ <para>Para gravar um <acronym>CD</acronym> de áudio usando arquivos <acronym>MP3</acronym>, primeiro estes devem ser convertidos em um formato de arquivo não compactado. O <application>XMMS</application> pode ser usado para converter para o formato <acronym>WAV</acronym>, enquanto o <application>mpg123</application> pode ser usado para converter para o formato de dados de áudio bruto, Pulse Code Modulation (<acronym>PCM</acronym>).</para>
+
+ <para>Para converter o arquivo <filename>audio01.mp3</filename> usando <application>mpg123</application>, especifique o nome do arquivo <acronym>PCM</acronym>:</para>
+
+ <screen><prompt>#</prompt> <userinput>mpg123 -s <replaceable>audio01.mp3</replaceable> &gt; <replaceable>audio01.pcm</replaceable></userinput></screen>
+
+ <para>Para usar <application>XMMS</application> para converter um arquivo <acronym>MP3</acronym> para <acronym>WAV</acronym>, use esses passos:</para>
+
+ <procedure>
+ <title>Convertendo para o Formato <acronym>WAV</acronym> no <application>XMMS</application></title>
+
+ <step>
+ <para>Inicie o <application>XMMS</application>.</para>
+ </step>
+
+ <step>
+ <para>Clique com o botão direito do mouse na janela para abrir o menu <application>XMMS</application>.</para>
+ </step>
+
+ <step>
+ <para>Selecione <literal>Preferences</literal> abaixo de <literal>Options</literal>.</para>
+ </step>
+
+ <step>
+ <para>Altere o Plugin de Saída para <quote>Disk Writer Plugin</quote>.</para>
+ </step>
+
+ <step>
+ <para>Pressione <literal>Configure</literal>.</para>
+ </step>
+
+ <step>
+ <para>Digite ou procure um diretório para gravar os arquivos descompactados.</para>
+ </step>
+
+ <step>
+ <para>Carregue o arquivo <acronym>MP3</acronym> no <application>XMMS</application> como de costume, com o volume em 100% e as configurações de EQ desativadas.</para>
+ </step>
+
+ <step>
+ <para>Pressione <literal>Play</literal>. O <application>XMMS</application> aparecerá como se estivesse tocando o <acronym>MP3</acronym>, mas nenhuma música será ouvida. Na verdade, está tocando o <acronym>MP3</acronym> para um arquivo.</para>
+ </step>
+
+ <step>
+ <para>Quando terminar, certifique-se de ajustar o Plugin de Saída padrão de volta ao que era antes para ouvir <acronym>MP3</acronym> novamente.</para>
+ </step>
+ </procedure>
+
+ <para>Os formatos <acronym>WAV</acronym> e <acronym>PCM</acronym> podem ser usados ​​com <application>cdrecord</application>. Ao usar arquivos <acronym>WAV</acronym>, haverá um pequeno som no início de cada trilha. Este som é o cabeçalho do arquivo <acronym>WAV</acronym>. O pacote binário ou port <package>audio/sox</package> pode ser usado para remover o cabeçalho:</para>
+
+ <screen><prompt>%</prompt> <userinput>sox -t wav -r 44100 -s -w -c 2 <replaceable>track.wav track.raw</replaceable></userinput></screen>
+
+ <para>Consulte <xref linkend="creating-cds"/> para mais informações sobre o uso de um gravador de <acronym>CD</acronym> no FreeBSD.</para>
+ </sect2>
+ </sect1>
+
+ <sect1 xml:id="video-playback">
+ <info>
+ <title>Reprodução de Vídeo</title>
+
+ <authorgroup>
+ <author><personname> <firstname>Ross</firstname> <surname>Lippert</surname> </personname> <contrib>Contribuído por</contrib></author>
+ </authorgroup>
+ </info>
+
+ <para>Antes de configurar a reprodução de vídeo, determine o modelo e o chipset da placa de vídeo. Embora o <application>Xorg</application> suporte uma ampla variedade de placas de vídeo, nem todas oferecem um bom desempenho de reprodução. Para obter uma lista de extensões suportadas pelo servidor <application>Xorg</application> usando a placa, execute <command>xdpyinfo</command> enquanto o <application>Xorg</application> está sendo executado.</para>
+
+ <para>É interessante ter um arquivo de teste MPEG pequeno para avaliar vários players e opções. Como alguns aplicativos de <acronym>DVD</acronym> procuram por mídia <acronym>DVD</acronym> em <filename>/dev/dvd</filename> por padrão, ou possuem esse nome de dispositivo codificado neles, pode ser útil fazer um link simbólico para o dispositivo adequado:</para>
+
+ <screen><prompt>#</prompt> <userinput>ln -sf /dev/cd0 /dev/dvd</userinput></screen>
+
+ <para>Devido à natureza do <citerefentry vendor="current"><refentrytitle>devfs</refentrytitle><manvolnum>5</manvolnum></citerefentry>, os links criados manualmente não persistirão após a reinicialização do sistema. Para recriar o link simbólico automaticamente quando o sistema inicializar, adicione a seguinte linha ao arquivo <filename>/etc/devfs.conf</filename>:</para>
+
+ <programlisting>link cd0 dvd</programlisting>
+
+ <para>A decriptografia do <acronym>DVD</acronym> invoca certas funções que exigem permissão de gravação para o dispositivo <acronym>DVD</acronym>.</para>
+
+ <para>Para melhorar a interface de memória compartilhada do <application>Xorg</application>, recomenda-se aumentar os valores dessas variáveis ​​<citerefentry><refentrytitle>sysctl</refentrytitle><manvolnum>8</manvolnum></citerefentry>:</para>
+
+ <programlisting>kern.ipc.shmmax=67108864
+kern.ipc.shmall=32768</programlisting>
+
+ <sect2 xml:id="video-interface">
+ <title>Determinando os Recursos de Vídeo</title>
+
+ <indexterm><primary>XVideo</primary></indexterm>
+ <indexterm><primary>SDL</primary></indexterm>
+ <indexterm><primary>DGA</primary></indexterm>
+
+ <para>Existem várias maneiras possíveis de exibir vídeo no <application>Xorg</application> e o que funciona é, em grande parte, dependente de hardware. Cada método descrito abaixo terá qualidade variável em diferentes hardwares.</para>
+
+ <para>Interfaces de vídeo comuns incluem:</para>
+
+ <orderedlist>
+ <listitem>
+ <para><application>Xorg</application>: saída normal usando memória compartilhada.</para>
+ </listitem>
+
+ <listitem>
+ <para>XVideo: uma extensão para a interface <application>Xorg</application> que permite que o vídeo seja exibido diretamente em objetos que podem ser desenhados através de uma aceleração especial. Esta extensão oferece reprodução de boa qualidade, mesmo em máquinas de baixo custo. A próxima seção descreve como determinar se esta extensão está sendo executada.</para>
+ </listitem>
+
+ <listitem>
+ <para><acronym>SDL</acronym>: Simple Directmedia Layer é uma camada de portabilidade para muitos sistemas operacionais, permitindo o desenvolvimento de aplicativos multiplataforma que fazem uso eficiente de som e gráficos. O <acronym>SDL</acronym> fornece uma abstração de baixo nível para o hardware, que às vezes pode ser mais eficiente que a interface do <application>Xorg</application>. No FreeBSD, o <acronym>SDL</acronym> pode ser instalado usando o pacote ou port <package>devel/sdl20</package>.</para>
+ </listitem>
+
+ <listitem>
+ <para><acronym>DGA</acronym>: Direct Graphics Access é uma extensão do <application>Xorg</application> que permite que um programa contorne o servidor <application>Xorg</application> e altere diretamente o quadro de buffer. Como ele depende de um mapeamento de memória de baixo nível, os programas que o utilizam devem ser executados como <systemitem class="username">root</systemitem>. A extensão <acronym>DGA</acronym> pode ser testada e comparada usando <citerefentry vendor="xfree86"><refentrytitle>dga</refentrytitle><manvolnum>1</manvolnum></citerefentry>. Quando o <command>dga</command> está em execução, ele altera as cores do display sempre que uma tecla é pressionada. Para sair, pressione <keycap>q</keycap>.</para>
+ </listitem>
+
+ <listitem>
+ <para>SVGAlib: uma camada gráfica de console de baixo nível.</para>
+ </listitem>
+ </orderedlist>
+
+ <sect3 xml:id="video-interface-xvideo">
+ <title>XVideo</title>
+
+ <para>Para verificar se esta extensão está em execução, use <command>xvinfo</command>:</para>
+
+ <screen><prompt>%</prompt> <userinput>xvinfo</userinput></screen>
+
+ <para>O XVideo é suportado pela placa de vídeo se o resultado for semelhante a:</para>
+
+ <screen>X-Video Extension version 2.2
+ screen #0
+ Adaptor #0: "Savage Streams Engine"
+ number of ports: 1
+ port base: 43
+ operations supported: PutImage
+ supported visuals:
+ depth 16, visualID 0x22
+ depth 16, visualID 0x23
+ number of attributes: 5
+ "XV_COLORKEY" (range 0 to 16777215)
+ client settable attribute
+ client gettable attribute (current value is 2110)
+ "XV_BRIGHTNESS" (range -128 to 127)
+ client settable attribute
+ client gettable attribute (current value is 0)
+ "XV_CONTRAST" (range 0 to 255)
+ client settable attribute
+ client gettable attribute (current value is 128)
+ "XV_SATURATION" (range 0 to 255)
+ client settable attribute
+ client gettable attribute (current value is 128)
+ "XV_HUE" (range -180 to 180)
+ client settable attribute
+ client gettable attribute (current value is 0)
+ maximum XvImage size: 1024 x 1024
+ Number of image formats: 7
+ id: 0x32595559 (YUY2)
+ guid: 59555932-0000-0010-8000-00aa00389b71
+ bits per pixel: 16
+ number of planes: 1
+ type: YUV (packed)
+ id: 0x32315659 (YV12)
+ guid: 59563132-0000-0010-8000-00aa00389b71
+ bits per pixel: 12
+ number of planes: 3
+ type: YUV (planar)
+ id: 0x30323449 (I420)
+ guid: 49343230-0000-0010-8000-00aa00389b71
+ bits per pixel: 12
+ number of planes: 3
+ type: YUV (planar)
+ id: 0x36315652 (RV16)
+ guid: 52563135-0000-0000-0000-000000000000
+ bits per pixel: 16
+ number of planes: 1
+ type: RGB (packed)
+ depth: 0
+ red, green, blue masks: 0x1f, 0x3e0, 0x7c00
+ id: 0x35315652 (RV15)
+ guid: 52563136-0000-0000-0000-000000000000
+ bits per pixel: 16
+ number of planes: 1
+ type: RGB (packed)
+ depth: 0
+ red, green, blue masks: 0x1f, 0x7e0, 0xf800
+ id: 0x31313259 (Y211)
+ guid: 59323131-0000-0010-8000-00aa00389b71
+ bits per pixel: 6
+ number of planes: 3
+ type: YUV (packed)
+ id: 0x0
+ guid: 00000000-0000-0000-0000-000000000000
+ bits per pixel: 0
+ number of planes: 0
+ type: RGB (packed)
+ depth: 1
+ red, green, blue masks: 0x0, 0x0, 0x0</screen>
+
+ <para>Os formatos listados, como YUV2 e YUV12, não estão presentes em todas as implementações do XVideo e sua ausência pode atrapalhar alguns players.</para>
+
+ <para>Se o resultado, ao invés disso, se parecer com:</para>
+
+ <screen>X-Video Extension version 2.2
+screen #0
+no adaptors present</screen>
+
+ <para>O XVideo provavelmente não é compatível com a placa. Isso significa que será mais difícil para o monitor atender às demandas computacionais de renderização de vídeo, dependendo da placa de vídeo e do processador.</para>
+ </sect3>
+ </sect2>
+
+ <sect2 xml:id="video-ports">
+ <title>Ports e Pacotes Lidando com Vídeo</title>
+
+ <indexterm><primary>video ports</primary></indexterm>
+ <indexterm><primary>video packages</primary></indexterm>
+
+ <para>Esta seção apresenta alguns dos softwares disponíveis na Coleção de Ports do FreeBSD, que podem ser usados ​​para reprodução de vídeo.</para>
+
+ <sect3 xml:id="video-mplayer">
+ <title><application>MPlayer</application> e <application>MEncoder</application></title>
+
+ <para>O <application>MPlayer</application> é um reprodutor de vídeo em linha de comando com uma interface gráfica opcional que visa oferecer velocidade e flexibilidade. Outros front-ends gráficos para o <application>MPlayer</application> estão disponíveis na Coleção de Ports do FreeBSD.</para>
+
+ <indexterm><primary>MPlayer</primary></indexterm>
+
+ <para>O <application>MPlayer</application> pode ser instalado usando o pacote ou port <package>multimedia/mplayer</package>. Várias opções de compilação estão disponíveis e uma variedade de verificações de hardware ocorre durante o processo de compilação. Por esses motivos, alguns usuários preferem compilar um port ao invés de instalar o pacote.</para>
+
+ <para>Ao compilar o port, as opções do menu devem ser revisadas para determinar o tipo de suporte a ser compilado no port. Se uma opção não estiver selecionada, o <application>MPlayer</application> não poderá exibir esse tipo de formato de vídeo. Use as setas e a barra de espaço para selecionar os formatos necessários. Quando terminar, pressione <keycap>Enter</keycap> para continuar a compilação e instalação do port.</para>
+
+ <para>Por padrão, o pacote ou port construirá o utilitário de linha de comando <command>mplayer</command> e o utilitário gráfico <command>gmplayer</command>. Para codificar vídeos, compile o port <package>multimedia/mencoder</package>. Devido a restrições de licenciamento, um pacote não está disponível para o <application>MEncoder</application>.</para>
+
+ <para>A primeira vez que o <application>MPlayer</application> for executado, ele criará um arquivo <filename>~/.mplayer</filename> no diretório pessoal do usuário. Esse subdiretório contém versões padrões dos arquivos de configurações específicos do usuário.</para>
+
+ <para>Esta seção descreve apenas alguns usos comuns. Consulte o mplayer(1) para uma descrição completa de suas inúmeras opções.</para>
+
+ <para>Para reproduzir o arquivo <filename><replaceable>testfile.avi</replaceable></filename>, especifique as interfaces de vídeo com <option>-vo</option>, conforme mostrado nos exemplos a seguir:</para>
+
+ <screen><prompt>%</prompt> <userinput>mplayer -vo xv <replaceable>testfile.avi</replaceable></userinput></screen>
+
+ <screen><prompt>%</prompt> <userinput>mplayer -vo sdl <replaceable>testfile.avi</replaceable></userinput></screen>
+
+ <screen><prompt>%</prompt> <userinput>mplayer -vo x11 <replaceable>testfile.avi</replaceable></userinput></screen>
+
+ <screen><prompt>#</prompt> <userinput>mplayer -vo dga <replaceable>testfile.avi</replaceable></userinput></screen>
+
+ <screen><prompt>#</prompt> <userinput>mplayer -vo 'sdl:dga' <replaceable>testfile.avi</replaceable></userinput></screen>
+
+ <para>Vale a pena tentar todas essas opções, pois seu relativo desempenho depende de muitos fatores e varia significativamente com o hardware.</para>
+
+ <para>Para reproduzir um <acronym>DVD</acronym>, substitua <filename><replaceable>testfile.avi</replaceable></filename> por <option>dvd://<replaceable>N</replaceable> -dvd-device <replaceable>DEVICE</replaceable></option>, em que <replaceable>N</replaceable> é o número do título a ser reproduzido e <replaceable>DEVICE</replaceable> é o nó do dispositivo para o <acronym>DVD</acronym>. Por exemplo, para reproduzir o filme 3 de <filename>/dev/dvd</filename>:</para>
+
+ <screen><prompt>#</prompt> <userinput>mplayer -vo xv dvd://3 -dvd-device /dev/dvd</userinput></screen>
+
+ <note>
+ <para>O dispositivo padrão de <acronym>DVD</acronym> pode ser definido durante a construção do port <application>MPlayer</application> incluindo a opção <varname>WITH_DVD_DEVICE=/path/to/desired/device</varname>. Por padrão, o dispositivo é <filename>/dev/cd0</filename>. Mais detalhes podem ser encontrados no <filename>Makefile.options</filename> do port.</para>
+ </note>
+
+ <para>Para parar, pausar, avançar e assim por diante, use uma tecla de atalho. Para ver a lista de atalhos de teclado, execute <command>mplayer -h</command> ou leia o mplayer (1).</para>
+
+ <para>Opções de reprodução adicionais incluem <option>-fs -zoom</option>, que ativa o modo de tela cheia e <option>-framedrop</option>, o que ajuda no desempenho.</para>
+
+ <para>Cada usuário pode adicionar opções comumente usadas ao seu <filename>~/.mplayer/config</filename> assim:</para>
+
+ <programlisting>vo=xv
+fs=yes
+zoom=yes</programlisting>
+
+ <para>O <command>mplayer</command> pode ser usado para copiar um filme de <acronym>DVD</acronym> para um arquivo <filename>.vob</filename>. Para gravar o filme em um segundo <acronym>DVD</acronym>:</para>
+
+ <screen><prompt>#</prompt> <userinput>mplayer -dumpstream -dumpfile out.vob dvd://2 -dvd-device /dev/dvd</userinput></screen>
+
+ <para>O arquivo de saída, <filename>out.vob</filename>, estará no formato <acronym>MPEG</acronym>.</para>
+
+ <para>Qualquer pessoa que deseje obter um alto nível de experiência com vídeo <trademark class="registered">UNIX</trademark> deve consultar <link xlink:href="http://www.mplayerhq.hu/DOCS/">mplayerhq.hu/DOCS</link>. Como é tecnicamente informativa, esta documentação deve ser considerada como leitura obrigatória antes de enviar qualquer relatório de bug.</para>
+
+ <indexterm><primary>mencoder</primary></indexterm>
+
+ <para>Antes de usar o <command>mencoder</command>, é interessante familiarizar-se com as opções descritas em <link xlink:href="http://www.mplayerhq.hu/DOCS/HTML/en/mencoder.html">mplayerhq.hu/DOCS/HTML/en/mencoder.html</link>. Existem inúmeras maneiras de melhorar a qualidade, diminuir a taxa de bits e alterar os formatos, e algumas dessas opções podem fazer a diferença entre bom ou mau desempenho. Combinações impróprias de opções de linha de comando podem produzir arquivos de saída que não podem ser reproduzidos até mesmo por <command>mplayer</command>.</para>
+
+ <para>Aqui está um exemplo de uma cópia simples:</para>
+
+ <screen><prompt>%</prompt> <userinput>mencoder <replaceable>input.avi</replaceable> -oac copy -ovc copy -o <replaceable>output.avi</replaceable></userinput></screen>
+
+ <para>Para copiar para um arquivo, use <option>-dumpfile</option> com o <command>mplayer</command>.</para>
+
+ <para>Para converter <filename><replaceable>input.avi</replaceable></filename> para o codec MPEG4 com codificação de áudio MPEG3, primeiro instale o port <package>audio/lame</package>. Devido a restrições de licenciamento, um pacote não está disponível. Uma vez instalado, digite:</para>
+
+ <screen><prompt>%</prompt> <userinput>mencoder <replaceable>input.avi</replaceable> -oac mp3lame -lameopts br=192 \
+ -ovc lavc -lavcopts vcodec=mpeg4:vhq -o <replaceable>output.avi</replaceable></userinput></screen>
+
+ <para>Isso produzirá uma saída reproduzível por aplicativos como <command>mplayer</command> e <command>xine</command>.</para>
+
+ <para><filename><replaceable>input.avi</replaceable></filename> pode ser substituído por <option>dvd://1 -dvd-device /dev/dvd</option> e executado como <systemitem class="username">root</systemitem> para recodificar um filme de <acronym>DVD</acronym> diretamente. Como pode levar algumas tentativas para obter o resultado desejado, recomenda-se gravar o arquivo de um filme e trabalhar nele.</para>
+ </sect3>
+
+ <sect3 xml:id="video-xine">
+ <title>O Player (reprodutor) de Vídeo <application>xine</application></title>
+
+ <para>O <application>xine</application> é um reprodutor de vídeo com uma biblioteca base reutilizável e um executável modular que pode ser estendido com plug-ins. Pode ser instalado usando o pacote ou port <package>multimedia/xine</package>.</para>
+
+ <para>Na prática, o <application>xine</application> requer uma CPU rápida com uma placa de vídeo rápida ou suporte para a extensão XVideo. O player de vídeo <application>xine</application> apresenta melhor desempenho nas interfaces XVideo.</para>
+
+ <para>Por padrão, o player <application>xine</application> inicia uma interface gráfica com o usuário. Os menus podem então ser usados ​​para abrir um arquivo específico.</para>
+
+ <para>Alternativamente, o <application>xine</application> pode ser executado a partir da linha de comando, especificando o nome do arquivo a ser reproduzido:</para>
+
+ <screen><prompt>%</prompt> <userinput>xine -g -p <replaceable>mymovie.avi</replaceable></userinput></screen>
+
+ <para>Consulte <link xlink:href="http://www.xine-project.org/faq">xine-project.org/faq</link> para mais informações e dicas de solução de problemas.</para>
+ </sect3>
+
+ <sect3 xml:id="video-ports-transcode">
+ <title>As Utilidades do <application>Transcode</application></title>
+
+ <para>O <application>Transcode</application> fornece um conjunto de ferramentas para recodificar arquivos de vídeo e áudio. O <application>Transcode</application> pode ser usado para mesclar arquivos de vídeo ou reparar arquivos quebrados usando ferramentas de linha de comando com interfaces de fluxo stdin/stdout.</para>
+
+ <para>No FreeBSD, o <application>Transcode</application> pode ser instalado usando o pacote ou port <package>multimedia/transcode</package>. Muitos usuários preferem compilar o port, pois fornece um menu de opções de compilação para especificar o suporte e os codecs a serem compilados. Se uma opção não for selecionada, o <application>Transcode</application> não poderá codificar esse formato. Use as setas e a barra de espaço para selecionar os formatos necessários. Quando terminar, pressione <keycap>Enter</keycap> para continuar a compilação e instalação do port.</para>
+
+ <para>Este exemplo demonstra como converter um arquivo DivX em um arquivo PAL MPEG-1 (PAL VCD):</para>
+
+ <screen><prompt>%</prompt> <userinput>transcode -i <replaceable>input.avi</replaceable> -V --export_prof vcd-pal -o output_vcd</userinput>
+<prompt>%</prompt> <userinput>mplex -f 1 -o <replaceable>output_vcd.mpg output_vcd.m1v output_vcd.mpa</replaceable></userinput></screen>
+
+ <para>O arquivo <acronym>MPEG</acronym> resultante, <filename><replaceable>output_vcd.mpg</replaceable></filename>, está pronto para ser executado com o <application>MPlayer</application>. O arquivo pode ser gravado em uma mídia (<acronym>CD</acronym>), para criar um <acronym>CD</acronym> de vídeo usando um utilitário como <package>multimedia/vcdimager</package> ou <package>sysutils/cdrdao</package>.</para>
+
+ <para>Além da página de manual do <command>transcode</command>, consulte <link xlink:href="http://www.transcoding.org/cgi-bin/transcode">transcoding.org/cgi-bin/transcode</link> para mais informações e exemplos.</para>
+ </sect3>
+ </sect2>
+ </sect1>
+
+ <sect1 xml:id="tvcard">
+ <info>
+ <title>Placas de TV</title>
+
+ <authorgroup>
+ <author><personname> <firstname>Josef</firstname> <surname>El-Rayes</surname> </personname> <contrib>Contribuição original por </contrib></author>
+ </authorgroup>
+
+ <authorgroup>
+ <author><personname> <firstname>Marc</firstname> <surname>Fonvieille</surname> </personname> <contrib>Aprimorado e adaptado por </contrib></author>
+ </authorgroup>
+ </info>
+
+ <indexterm><primary>TV cards</primary></indexterm>
+
+ <para>As placas de TV podem ser usadas para assistir à transmissão ou à TV a cabo em um computador. A maioria das placas aceitam vídeo composto por meio de uma entrada <acronym>RCA</acronym> ou S-video e algumas placas incluem um sintonizador de rádio <acronym>FM</acronym>.</para>
+
+ <para>O FreeBSD fornece suporte para placas de TV baseadas em PCI usando um chip de captura de vídeo Brooktree Bt848/849/878/879 com o driver <citerefentry><refentrytitle>bktr</refentrytitle><manvolnum>4</manvolnum></citerefentry>. Este driver suporta a maioria das placas de vídeo Pinnacle PCTV. Antes de comprar uma placa de TV, consulte <citerefentry><refentrytitle>bktr</refentrytitle><manvolnum>4</manvolnum></citerefentry> para obter uma lista dos sintonizadores suportados.</para>
+
+ <sect2>
+ <title>Carregando o Driver</title>
+
+ <para>Para usar a placa, o driver <citerefentry><refentrytitle>bktr</refentrytitle><manvolnum>4</manvolnum></citerefentry> deve ser carregado. Para automatizar isso no momento da inicialização, adicione a seguinte linha ao arquivo <filename>/boot/loader.conf</filename>:</para>
+
+ <programlisting>bktr_load="YES"</programlisting>
+
+ <para>Como alternativa, pode-se compilar estaticamente o suporte para a placa de TV em um kernel personalizado. Nesse caso, adicione as seguintes linhas ao arquivo de configuração do kernel personalizado:</para>
+
+ <programlisting>device bktr
+device iicbus
+device iicbb
+device smbus</programlisting>
+
+ <para>Esses dispositivos adicionais são necessários, pois os componentes da placa são interconectados por meio de um barramento I2C. Em seguida, crie e instale um novo kernel.</para>
+
+ <para>Para testar se o sintonizador foi detectado corretamente, reinicialize o sistema. A placa de TV deve aparecer nas mensagens de inicialização, conforme mostrado neste exemplo:</para>
+
+ <programlisting>bktr0: &lt;BrookTree 848A&gt; mem 0xd7000000-0xd7000fff irq 10 at device 10.0 on pci0
+iicbb0: &lt;I2C bit-banging driver&gt; on bti2c0
+iicbus0: &lt;Philips I2C bus&gt; on iicbb0 master-only
+iicbus1: &lt;Philips I2C bus&gt; on iicbb0 master-only
+smbus0: &lt;System Management Bus&gt; on bti2c0
+bktr0: Pinnacle/Miro TV, Philips SECAM tuner.</programlisting>
+
+ <para>As mensagens serão diferentes de acordo com o hardware. Se necessário, é possível substituir alguns dos parâmetros detectados usando <citerefentry><refentrytitle>sysctl</refentrytitle><manvolnum>8</manvolnum></citerefentry> ou opções de configuração de kernel personalizadas. Por exemplo, para forçar o sintonizador a usar um sintonizador SECAM da Philips, adicione a seguinte linha a um arquivo de configuração de kernel personalizado:</para>
+
+ <programlisting>options OVERRIDE_TUNER=6</programlisting>
+
+ <para>ou, use <citerefentry><refentrytitle>sysctl</refentrytitle><manvolnum>8</manvolnum></citerefentry>:</para>
+
+ <screen><prompt>#</prompt> <userinput>sysctl hw.bt848.tuner=6</userinput></screen>
+
+ <para>Consulte <citerefentry><refentrytitle>bktr</refentrytitle><manvolnum>4</manvolnum></citerefentry> para obter uma descrição disponível dos parâmetros do <citerefentry><refentrytitle>sysctl</refentrytitle><manvolnum>8</manvolnum></citerefentry> e opções do kernel.</para>
+ </sect2>
+
+ <sect2>
+ <title>Aplicações Úteis</title>
+
+ <para>Para usar a placa de TV, instale um dos seguintes aplicativos:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para><package>multimedia/fxtv</package> oferece recursos de captura de imagem/áudio/vídeo numa transmissão de TV no monitor do computador.</para>
+ </listitem>
+ <listitem>
+ <para>O <package>multimedia/xawtv</package> é outro aplicativo de TV com recursos semelhantes.</para>
+ </listitem>
+ <listitem>
+ <para>O <package>audio/xmradio</package> fornece uma aplicação para usar o sintonizador de rádio FM de uma placa de TV.</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>Mais aplicações estão disponíveis na Coleção de Ports do FreeBSD.</para>
+ </sect2>
+
+ <sect2>
+ <title>Solução de problemas</title>
+
+ <para>Se forem encontrados problemas com a placa de TV, verifique se o chip de captura de vídeo e o sintonizador são compatíveis com <citerefentry><refentrytitle>bktr</refentrytitle><manvolnum>4</manvolnum></citerefentry> e que as opções corretas de configuração foram usadas. Para obter mais suporte ou para fazer perguntas sobre as placas de TV suportadas, consulte a lista de discussão <link xlink:href="http://lists.FreeBSD.org/mailman/listinfo/freebsd-multimedia">freebsd-multimedia</link>.</para>
+ </sect2>
+ </sect1>
+
+ <sect1 xml:id="mythtv">
+ <title>MythTV</title>
+
+ <para>MythTV é um popular aplicativo de gravação de vídeo pessoal (<acronym>PVR</acronym>). Esta seção demonstra como instalar e configurar o MythTV no FreeBSD. Consulte <link xlink:href="http://www.mythtv.org/wiki/">mythtv.org/wiki</link> para mais informações sobre como usar o MythTV.</para>
+
+ <para>MythTV requer um frontend e um backend. Esses componentes podem ser instalados no mesmo sistema ou em máquinas diferentes.</para>
+
+ <para>O frontend pode ser instalado no FreeBSD usando o pacote ou port <package>multimedia/mythtv-frontend</package>. O <application>Xorg</application> também deve ser instalado e configurado conforme descrito em <xref linkend="x11"/>. Idealmente, este sistema tem uma placa de vídeo que suporta Compensação de Movimento de X-Vídeo (<acronym>XvMC</acronym>) e, opcionalmente, um controle remoto compatível com o Controle Remoto Infravermelho do Linux (<acronym>LIRC</acronym>).</para>
+
+ <para>Para instalar o backend e o frontend no FreeBSD, use o pacote ou port <package>multimedia/mythtv</package>. Um servidor de banco de dados <trademark>MySQL</trademark> também é necessário e deve ser instalado automaticamente como uma dependência. Opcionalmente, este sistema deve ter uma placa sintonizadora e armazenamento suficiente para armazenar os dados gravados.</para>
+
+ <sect2>
+ <title>Hardware</title>
+
+ <para>O MythTV usa o Video for Linux (<acronym>V4L</acronym>) para acessar dispositivos de entrada de vídeo, como codificadores e sintonizadores. No FreeBSD, o MythTV funciona melhor com placas <acronym>USB</acronym> DVB-S/C/T, pois são bem suportadas pelo pacote <package>multimedia/webcamd</package> ou pelo port que forneça uma aplicação <acronym>V4L</acronym> userland. Qualquer placa de transmissão de vídeo digital (<acronym>DVB</acronym>) suportada pelo <application>webcamd</application> deve funcionar com o MythTV. Uma lista de placas suportadas conhecidas pode ser encontrada em <link xlink:href="https://wiki.freebsd.org/WebcamCompat"> wiki.freebsd.org/WebcamCompat</link>. Drivers também estão disponíveis para placas Hauppauge nos ports <package>multimedia/pvr250</package> e <package>multimedia/pvrxxx</package>, mas eles fornecem uma interface de driver não padronizados que não funcionam com versões do MythTV posteriores à 0.23. Devido a restrições de licenciamento, nenhum pacote está disponível e esses dois ports devem ser compilados.</para>
+
+ <para>A página <link xlink:href="https://wiki.freebsd.org/HTPC">wiki.freebsd.org/HTPC</link> contém uma lista de todos os drivers <acronym>DVB</acronym> disponíveis.</para>
+ </sect2>
+
+ <sect2>
+ <title>Configurando o Backend MythTV</title>
+
+ <para>Para instalar o MythTV usando pacotes binários:</para>
+
+ <screen><prompt>#</prompt> <userinput>pkg install mythtv</userinput></screen>
+
+ <para>Como alternativa, para instalar a partir da Coleção de Ports:</para>
+
+ <screen><prompt>#</prompt> <userinput>cd /usr/ports/multimedia/mythtv</userinput>
+<prompt>#</prompt> <userinput>make install</userinput></screen>
+
+ <para>Uma vez instalado, configure o banco de dados do MythTV:</para>
+
+ <screen><prompt>#</prompt> <userinput>mysql -uroot -p &lt; /usr/local/share/mythtv/database/mc.sql</userinput></screen>
+
+ <para>Em seguida, configure o backend:</para>
+
+ <screen><prompt>#</prompt> <userinput>mythtv-setup</userinput></screen>
+
+ <para>Finalmente, inicie o backend:</para>
+
+ <screen><prompt>#</prompt> <userinput>sysrc mythbackend_enable=yes</userinput>
+<prompt>#</prompt> <userinput>service mythbackend start</userinput></screen>
+ </sect2>
+ </sect1>
+
+ <sect1 xml:id="scanners">
+ <info>
+ <title>Scanners de Imagem</title>
+
+ <authorgroup>
+ <author><personname> <firstname>Marc</firstname> <surname>Fonvieille</surname> </personname> <contrib>Escrito por </contrib></author>
+ </authorgroup>
+ </info>
+
+ <indexterm><primary>image scanners</primary></indexterm>
+
+ <para>No FreeBSD, o acesso aos scanners de imagens é fornecido pelo <application>SANE</application> (Scanner Access Now Easy), que está disponível na Coleção de Ports do FreeBSD. O <application>SANE</application> também usará alguns drivers de dispositivos do FreeBSD para fornecer acesso ao hardware do scanner.</para>
+
+ <para>O FreeBSD suporta os scanners <acronym>SCSI</acronym> e <acronym>USB</acronym>. Dependendo da interface do scanner, são necessários drivers de dispositivos diferentes. Certifique-se de que o scanner seja suportado pelo <application>SANE</application> antes de executar qualquer configuração. Consulte <link xlink:href="http://www.sane-project.org/sane-supported-devices.html">http://www.sane-project.org/sane-supported-devices.html</link> para obter mais informações sobre os scanners suportados.</para>
+
+ <para>Este capítulo descreve como determinar se o scanner foi detectado pelo FreeBSD. Em seguida, ele fornece uma visão geral de como configurar e usar o <application>SANE</application> em um sistema FreeBSD.</para>
+
+ <sect2 xml:id="scanners-kernel-usb">
+ <title>Verificando o Scanner</title>
+
+ <para>O kernel <filename>GENERIC</filename> inclui os drivers de dispositivos necessários para suportar scanners <acronym>USB</acronym>. Usuários com um kernel personalizado devem garantir que as seguintes linhas estejam presentes no arquivo de configuração do kernel personalizado:</para>
+
+ <programlisting>device usb
+device uhci
+device ohci
+device ehci</programlisting>
+
+ <para>Para verificar se o scanner <acronym>USB</acronym> foi detectado, conecte-o e execute o comando <command>dmesg</command>, sendo então possível ver se o scanner aparece no buffer de mensagens do sistema. Em caso afirmativo, deve ser exibida uma mensagem semelhante a esta:</para>
+
+ <screen>ugen0.2: &lt;EPSON&gt; at usbus0</screen>
+
+ <para>Neste exemplo, um scanner <trademark class="registered">EPSON Perfection</trademark> 1650 <acronym>USB</acronym> foi detectado em <filename>/dev/ugen0.2</filename>.</para>
+
+ <para>Se o scanner usar uma interface <acronym>SCSI</acronym>, é importante saber qual placa controladora <acronym>SCSI</acronym> será usada. Dependendo do chipset <acronym>SCSI</acronym>, um arquivo de configuração do kernel personalizado pode ser necessário. O kernel <filename>GENERIC</filename> suporta os controladores <acronym>SCSI</acronym> mais comuns. Consulte <filename>/usr/src/sys/conf/NOTES</filename> para determinar a linha correta a ser adicionada a um arquivo de configuração de kernel personalizado. Além do driver de adaptador <acronym>SCSI</acronym>, as seguintes linhas são necessárias em um arquivo de configuração de kernel personalizado:</para>
+
+ <programlisting>device scbus
+device pass</programlisting>
+
+ <para>Verifique se o dispositivo é exibido no buffer de mensagens do sistema:</para>
+
+ <screen>pass2 at aic0 bus 0 target 2 lun 0
+pass2: &lt;AGFA SNAPSCAN 600 1.10&gt; Fixed Scanner SCSI-2 device
+pass2: 3.300MB/s transfers</screen>
+
+ <para>Se o scanner não foi ligado na inicialização do sistema, ainda é possível forçar manualmente a detecção executando uma varredura de barramento <acronym>SCSI</acronym> com o comando <command>camcontrol</command>:</para>
+
+ <screen><prompt>#</prompt> <userinput>camcontrol rescan all</userinput>
+Re-scan of bus 0 was successful
+Re-scan of bus 1 was successful
+Re-scan of bus 2 was successful
+Re-scan of bus 3 was successful</screen>
+
+ <para>O scanner deve agora aparecer na lista de dispositivos <acronym>SCSI</acronym>:</para>
+
+ <screen><prompt>#</prompt> <userinput>camcontrol devlist</userinput>
+&lt;IBM DDRS-34560 S97B&gt; at scbus0 target 5 lun 0 (pass0,da0)
+&lt;IBM DDRS-34560 S97B&gt; at scbus0 target 6 lun 0 (pass1,da1)
+&lt;AGFA SNAPSCAN 600 1.10&gt; at scbus1 target 2 lun 0 (pass3)
+&lt;PHILIPS CDD3610 CD-R/RW 1.00&gt; at scbus2 target 0 lun 0 (pass2,cd0)</screen>
+
+ <para>Consulte <citerefentry><refentrytitle>scsi</refentrytitle><manvolnum>4</manvolnum></citerefentry> e <citerefentry><refentrytitle>camcontrol</refentrytitle><manvolnum>8</manvolnum></citerefentry> para mais detalhes sobre dispositivos <acronym>SCSI</acronym> no FreeBSD.</para>
+ </sect2>
+
+ <sect2>
+ <title>Configuração do <application>SANE</application></title>
+
+ <para>O <application>SANE</application> possui um sistema dividido em duas partes: os backends (<package>graphics/sane-backends</package>) e os frontends (<package>graphics/sane-frontends</package> ou <package>graphics/xsane</package>). Os backends fornecem acesso ao scanner. Consulte <link xlink:href="http://www.sane-project.org/sane-supported-devices.html">http://www.sane-project.org/sane-supported-devices.html</link> para determinar qual backend suporta o scanner. Os frontends fornecem a interface de varredura gráfica. <package>graphics/sane-frontends</package> instala o <application>xscanimage</application> enquanto o <package>graphics/xsane</package> instala o <application>xsane</application>.</para>
+
+ <para>Para instalar as duas partes de pacotes binários:</para>
+
+ <screen><prompt>#</prompt> <userinput>pkg install xsane sane-frontends</userinput></screen>
+
+ <para>Alternativamente, para instalar a partir da Coleção de Ports</para>
+
+ <screen><prompt>#</prompt> <userinput>cd /usr/ports/graphics/sane-frontends</userinput>
+<prompt>#</prompt> <userinput>make install clean</userinput>
+<prompt>#</prompt> <userinput>cd /usr/ports/graphics/xsane</userinput>
+<prompt>#</prompt> <userinput>make install clean</userinput></screen>
+
+ <para>Depois de instalar o pacote ou port <package>graphics/sane-backends</package>, use o comando <command>sane-find-scanner</command> para verificar a detecção do scanner pelo sistema <application>SANE</application>:</para>
+
+ <screen><prompt>#</prompt> <userinput>sane-find-scanner -q</userinput>
+found SCSI scanner "AGFA SNAPSCAN 600 1.10" at /dev/pass3</screen>
+
+ <para>A saída deve mostrar o tipo de interface do scanner e o nó do dispositivo usado para conectar o scanner ao sistema. O fornecedor e o modelo do produto podem ou não aparecer.</para>
+
+ <note>
+ <para>Alguns scanners <acronym>USB</acronym> exigem que o firmware seja carregado. Consulte sane-find-scanner(1) e sane(7) para mais detalhes.</para>
+ </note>
+
+ <para>Em seguida, verifique se o scanner será identificado por uma interface de digitalização. Os backends <application>SANE</application> incluem o comando <command>scanimage</command>, que pode ser usado ​​para listar os dispositivos e realizar uma aquisição de imagens. Use a opção <option>-L</option> para listar os dispositivos do scanner. O primeiro exemplo é para um scanner <acronym>SCSI</acronym> e o segundo é para um scanner <acronym>USB</acronym>:</para>
+
+ <screen><prompt>#</prompt> <userinput>scanimage -L</userinput>
+device `snapscan:/dev/pass3' is a AGFA SNAPSCAN 600 flatbed scanner
+<prompt>#</prompt> <userinput>scanimage -L</userinput>
+device 'epson2:libusb:/dev/usb:/dev/ugen0.2' is a Epson GT-8200 flatbed scanner</screen>
+
+ <para>Neste segundo exemplo, <literal>'epson2: libusb:/dev/usb:/dev/ugen0.2'</literal> é o nome do backend (<literal>epson2</literal>) e <literal>/dev/ugen0.2</literal> é o nó do dispositivo usado pelo scanner.</para>
+
+ <para>Se o comando <command>scanimage</command> não conseguir identificar o scanner, esta mensagem será exibida:</para>
+
+ <screen><prompt>#</prompt> <userinput>scanimage -L</userinput>
+
+No scanners were identified. If you were expecting something different,
+check that the scanner is plugged in, turned on and detected by the
+sane-find-scanner tool (if appropriate). Please read the documentation
+which came with this software (README, FAQ, manpages).</screen>
+
+ <para>Se isso acontecer, edite o arquivo de configuração de backend em <filename>/usr/local/etc/sane.d/</filename> e defina o dispositivo de scanner usado. Por exemplo, se o modelo de scanner não detectado for um <trademark class="registered">EPSON Perfection</trademark> 1650 e usar o backend <literal>epson2</literal>, edite o arquivo <filename>/usr/ local/etc/sane.d/epson2.conf</filename>. Ao editar, adicione uma linha especificando a interface e o nó do dispositivo usado. Nesse caso, adicione a seguinte linha:</para>
+
+ <programlisting>usb /dev/ugen0.2</programlisting>
+
+ <para>Salve as edições e verifique se o scanner está identificado com o nome do back-end correto e com o nó do dispositivo:</para>
+
+ <screen><prompt>#</prompt> <userinput>scanimage -L</userinput>
+device 'epson2:libusb:/dev/usb:/dev/ugen0.2' is a Epson GT-8200 flatbed scanner</screen>
+
+ <para>Depois que o comando <command>scanimage -L</command> identificar o scanner, a configuração estará completa e o scanner estará pronto para ser usado.</para>
+
+ <para>Embora o <command>scanimage</command> possa ser usado para realizar uma digitalização de imagem a partir da linha de comando, muitas vezes é preferível usar uma interface gráfica para executar o escaneamento. O pacote ou port <package>graphics/sane-frontends</package> instala uma interface gráfica simples, mas eficiente, <application>xscanimage</application>.</para>
+
+ <para>Alternativamente, o <application>xsane</application>, que é instalado com o pacote ou port <package>graphics/xsane</package>, é outro frontend de digitalização gráfica popular. Ele oferece recursos avançados, como vários modos de digitalização, correção de cores e digitalizações em lote. Ambos os aplicativos são utilizáveis ​​como um plugin do <application>GIMP</application>.</para>
+ </sect2>
+
+ <sect2>
+ <title>Permissões do Scanner</title>
+
+ <para>Para ter acesso ao scanner, o usuário precisa ler e gravar as permissões no nó do dispositivo usado pelo scanner. No exemplo anterior, o scanner <acronym>USB</acronym> usa o nó do dispositivo <filename>/dev/ugen0.2</filename> que é realmente um link simbólico para o nó do dispositivo real <filename>/dev/usb/0.2.0</filename>. O link simbólico e o nó do dispositivo pertencem, respectivamente, aos grupos <systemitem class="groupname">wheel</systemitem> e <systemitem class="groupname">operator</systemitem>. Adicionando o usuário a esses grupos, será permitido o acesso ao scanner, considera-se inseguro adicionar um usuário a <systemitem class="groupname">wheel</systemitem>. Uma solução melhor é criar um grupo e tornar o dispositivo de scanner acessível aos membros desse grupo.</para>
+
+ <para>Este exemplo cria um grupo chamado <systemitem class="groupname"><replaceable>usb</replaceable></systemitem>:</para>
+
+ <screen><prompt>#</prompt> <userinput>pw groupadd usb</userinput></screen>
+
+ <para>Então, crie um link simbólico para <filename>/dev/ugen0.2</filename> e o nó do dispositivo <filename>/dev/usb/0.2.0</filename> para ficarem acessíveis ao grupo <systemitem class="groupname">usb</systemitem> com permissões de gravação <literal>0660</literal> ou <literal>0664</literal> adicionando as seguintes linhas ao <filename>/etc/devfs.rules</filename>:</para>
+
+ <programlisting>[system=5]
+add path ugen0.2 mode 0660 group usb
+add path usb/0.2.0 mode 0666 group usb</programlisting>
+
+ <para>Finalmente, adicione os usuários a <systemitem class="groupname"><replaceable>usb</replaceable></systemitem> para permitir acesso ao scanner:</para>
+
+ <screen><prompt>#</prompt> <userinput>pw groupmod usb -m <replaceable>joe</replaceable></userinput></screen>
+
+ <para>Para mais detalhes, consulte <citerefentry><refentrytitle>pw</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
+ </sect2>
+ </sect1>
+</chapter>
+
+
+<!--
+ The FreeBSD Documentation Project
+
+ $FreeBSD$
+-->
+<chapter version="5.0" xml:id="kernelconfig">
+<!--<chapterinfo>
+ <authorgroup>
+ <author>
+ <firstname>Jim</firstname>
+ <surname>Mock</surname>
+ <contrib>Updated and restructured in Mar 2000 by </contrib>
+ </author>
+ </authorgroup>
+ <authorgroup>
+ <author>
+ <firstname>Jake</firstname>
+ <surname>Hamby</surname>
+ <contrib>Originally contributed 6 Oct 1995 by </contrib>
+ </author>
+ </authorgroup>
+ </chapterinfo>
+ -->
+
+ <title>Configurando o kernel do FreeBSD</title>
+
+ <sect1 xml:id="kernelconfig-synopsis">
+ <title>Sinopse</title>
+
+ <indexterm><primary>kernel</primary> <secondary>building a custom kernel</secondary></indexterm>
+
+ <para>O kernel é o núcleo do sistema operacional do FreeBSD. Ele é responsável pelo gerenciamento de memória, aplicação de controles de segurança, rede, acesso ao disco e muito mais. Embora grande parte do FreeBSD seja configurável dinamicamente, ainda é necessário configurar e compilar um kernel personalizado ocasionalmente.</para>
+
+ <para>Depois de ler este capítulo, você saberá:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>Quando compilar um kernel personalizado.</para>
+ </listitem>
+
+ <listitem>
+ <para>Como obter um inventário do hardware</para>
+ </listitem>
+
+ <listitem>
+ <para>Como personalizar um arquivo de configuração do kernel.</para>
+ </listitem>
+
+ <listitem>
+ <para>Como usar o arquivo de configuração do kernel para criar e compilar um novo kernel.</para>
+ </listitem>
+
+ <listitem>
+ <para>Como instalar o novo kernel.</para>
+ </listitem>
+
+ <listitem>
+ <para>Como solucionar problemas se as coisas derem errado.</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>Todos os comandos listados nos exemplos deste capítulo devem ser executados como <systemitem class="username">root</systemitem>.</para>
+ </sect1>
+
+ <sect1 xml:id="kernelconfig-custom-kernel">
+ <title>Por que compilar um kernel personalizado?</title>
+
+ <para>Tradicionalmente, o FreeBSD usava um kernel monolítico. O kernel era um grande programa, suportava uma lista fixa de dispositivos e, para mudar o comportamento do kernel, era preciso compilar e depois reinicializar em um novo kernel.</para>
+
+ <para>Hoje, a maior parte da funcionalidade do kernel do FreeBSD está contida em módulos que podem ser dinamicamente carregados e descarregados do kernel, conforme necessário. Isso permite que o kernel em execução se adapte imediatamente ao novo hardware e que novas funcionalidades sejam trazidas para o kernel. Isso é conhecido como um kernel modular.</para>
+
+ <para>Ocasionalmente, ainda é necessário executar a configuração do kernel estático. Às vezes, a funcionalidade necessária é tão ligada ao kernel que não pode ser carregada dinamicamente. Alguns ambientes de segurança impedem o carregamento e descarregamento de módulos do kernel e exigem que apenas a funcionalidade necessária seja estaticamente compilada no kernel.</para>
+
+ <para>Construir um kernel personalizado é muitas vezes um rito de passagem para usuários avançados do BSD. Este processo, embora consuma tempo, pode fornecer benefícios ao sistema FreeBSD. Ao contrário do kernel <filename>GENERIC</filename>, que deve suportar uma ampla gama de hardware, um kernel personalizado pode ser reduzido para fornecer suporte apenas para o hardware desse computador. Isso tem vários benefícios, tais como:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>Tempo de inicialização mais rápido. Uma vez que o kernel irá verificar apenas o hardware existente no sistema, o tempo que o sistema leva para inicializar pode diminuir.</para>
+ </listitem>
+
+ <listitem>
+ <para>Diminuir o uso de memória. Um kernel personalizado geralmente usa menos memória que o kernel <filename>GENERIC</filename> ao omitir recursos e drivers de dispositivo que não são utilizados. Isso é importante porque o código do kernel permanece residente na memória física o tempo todo, impedindo que a memória seja usada pelos aplicativos. Por esse motivo, um kernel personalizado é útil em um sistema com uma pequena quantidade de RAM.</para>
+ </listitem>
+
+ <listitem>
+ <para>Suporte adicional de hardware. Um kernel personalizado pode adicionar suporte para dispositivos que não estão presentes no kernel <filename>GENERIC</filename>.</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>Antes de criar um kernel personalizado, considere a razão para isso. Se houver necessidade de suporte para um hardware específico, ele já pode existir como um módulo.</para>
+
+ <para>Os módulos do kernel existem em <filename>/boot/kernel</filename> e podem ser dinamicamente carregados no kernel em execução usando o <citerefentry><refentrytitle>kldload</refentrytitle><manvolnum>8</manvolnum></citerefentry>. A maioria dos drivers do kernel tem um módulo carregável e uma página de manual. Por exemplo, o driver Ethernet sem fio <citerefentry><refentrytitle>ath</refentrytitle><manvolnum>4</manvolnum></citerefentry> tem as seguintes informações em sua página de manual:</para>
+
+ <screen>Como alternativa, para carregar o driver como um módulo no momento da inicialização, coloque o a seguinte linha no <citerefentry><refentrytitle>loader.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>:
+
+    if_ath_load="YES"</screen>
+
+ <para>Adicionar <literal>if_ath_load="YES"</literal> ao <filename>/boot/loader.conf</filename> carregará este módulo dinamicamente no momento da inicialização.</para>
+
+ <para>Em alguns casos, não há nenhum módulo associado em <filename>/boot/kernel</filename>. Isso é verdade principalmente para certos subsistemas.</para>
+ </sect1>
+
+ <sect1 xml:id="kernelconfig-devices">
+ <!--
+ <sect1info>
+ <authorgroup>
+ <author>
+ <firstname>Tom</firstname>
+ <surname>Rhodes</surname>
+ <contrib>Written by </contrib>
+ </author>
+ </authorgroup>
+ </sect1info>
+ -->
+ <title>Encontrando o hardware do sistema</title>
+
+ <para>Antes de editar o arquivo de configuração do kernel, é recomendável realizar um inventário do hardware da máquina. Em um sistema de inicialização dupla, o inventário pode ser criado a partir do outro sistema operacional. Por exemplo, o <application>Device Manager</application> da <trademark class="registered">Microsoft</trademark> contém informações sobre os dispositivos instalados.</para>
+
+ <note>
+ <para>Algumas versões do <trademark class="registered">Microsoft </trademark> <trademark class="registered">Windows</trademark> têm um ícone <application>System</application> que pode ser usado para acessar o <application>Device Manager</application>.</para>
+ </note>
+
+ <para>Se o FreeBSD for o único sistema operacional instalado, use o <citerefentry><refentrytitle>dmesg</refentrytitle><manvolnum>8</manvolnum></citerefentry> para determinar o hardware que foi encontrado e listado durante a verificação de inicialização. A maioria dos drivers de dispositivos no FreeBSD tem uma página de manual que lista o hardware suportado pelo driver. Por exemplo, as seguintes linhas indicam que o driver <citerefentry><refentrytitle>psm</refentrytitle><manvolnum>4</manvolnum></citerefentry> encontrou um mouse:</para>
+
+ <screen>psm0: &lt;PS/2 Mouse&gt; irq 12 on atkbdc0
+psm0: [GIANT-LOCKED]
+psm0: [ITHREAD]
+psm0: model Generic PS/2 mouse, device ID 0</screen>
+
+ <para>Como esse hardware existe, esse driver não deve ser removido de um arquivo de configuração de kernel personalizado.</para>
+
+ <para>Se a saída do <command>dmesg</command> não exibir os resultados da saída da verificação de inicialização, leia o conteúdo do <filename>/var/run/dmesg.boot</filename>.</para>
+
+ <para>Outra ferramenta para encontrar hardware é o <citerefentry><refentrytitle>pciconf</refentrytitle> <manvolnum>8</manvolnum></citerefentry>, que fornece uma saída mais detalhada. Por exemplo:</para>
+
+ <screen><prompt>%</prompt> <userinput>pciconf -lv</userinput>
+ath0@pci0:3:0:0: class=0x020000 card=0x058a1014 chip=0x1014168c rev=0x01 hdr=0x00
+ vendor = 'Atheros Communications Inc.'
+ device = 'AR5212 Atheros AR5212 802.11abg wireless'
+ class = network
+ subclass = ethernet</screen>
+
+ <para>Esta saída mostra que o driver <filename>ath</filename> localizou um dispositivo Ethernet sem fio.</para>
+
+ <para>O sinalizador <option>-k</option> do <citerefentry><refentrytitle>man</refentrytitle> <manvolnum>1</manvolnum></citerefentry> pode ser usado para fornecer informações úteis. Por exemplo, ele pode ser usado para exibir uma lista de páginas de manual que contêm uma marca ou um nome de dispositivo específico:</para>
+
+ <screen><prompt>#</prompt> <userinput>man -k <replaceable>Atheros</replaceable></userinput>
+ath(4) - Atheros IEEE 802.11 wireless network driver
+ath_hal(4) - Atheros Hardware Access Layer (HAL)</screen>
+
+ <para>Depois que a lista de inventário de hardware for criada, consulte-a para garantir que os drivers para o hardware instalado não sejam removidos à medida que a configuração do kernel personalizado é editada.</para>
+ </sect1>
+
+ <sect1 xml:id="kernelconfig-config">
+ <!--
+ <sect1info>
+ <authorgroup>
+ <author>
+ <firstname>Joel</firstname>
+ <surname>Dahl</surname>
+ <contrib>Updated by </contrib>
+ </author>
+ </authorgroup>
+ </sect1info>
+ -->
+ <title>O Arquivo de Configuração</title>
+
+ <para>Para criar um arquivo de configuração do kernel personalizado e compilar um kernel personalizado, a árvore de código-fonte completa do FreeBSD deve ser instalada primeira.</para>
+
+ <para>Se o <filename>/usr/src/</filename> não existir ou estiver vazio, o código-fonte não foi instalado. O fonte pode ser instalado usando o <application>Subversion</application> e as instruções em <xref linkend="svn"/>.</para>
+
+ <para>Depois que o código-fonte for instalado, revise o conteúdo do <filename>/usr/src/sys</filename>. Este diretório contém vários subdiretórios, incluindo aqueles que representam as seguintes arquiteturas suportadas: <filename>amd64</filename>, <filename>i386</filename>, <filename>ia64</filename>, <filename>powerpc</filename> e <filename>sparc64</filename>. Tudo dentro do diretório de uma arquitetura em particular lida apenas com essa arquitetura e o restante do código é código independente de máquina comum a todas as plataformas. Cada arquitetura suportada tem um subdiretório <filename>conf</filename> que contém o arquivo de configuração do kernel <filename>GENERIC</filename> para essa arquitetura.</para>
+
+ <para>Não faça edições no <filename>GENERIC</filename>. Em vez disso, copie o arquivo para um nome diferente e faça edições na cópia. A convenção é usar um nome do host com todas as letras maiúsculas. Ao manter várias máquinas FreeBSD com hardware diferente, é uma boa idéia nomeá-lo com o nome do host da máquina. Este exemplo cria uma cópia, denominada <filename>MYKERNEL</filename>, do arquivo de configuração <filename>GENERIC</filename> para a arquitetura <literal>amd64</literal>:</para>
+
+ <screen><prompt>#</prompt> <userinput>cd /usr/src/sys/<replaceable>amd64</replaceable>/conf</userinput>
+<prompt>#</prompt> <userinput>cp GENERIC <replaceable>MYKERNEL</replaceable></userinput></screen>
+
+ <para>O <filename><replaceable>MYKERNEL</replaceable></filename> agora pode ser personalizado com qualquer editor de texto <acronym>ASCII</acronym>. O editor padrão é o <application>vi</application>, embora um editor mais fácil para iniciantes, chamado <application>ee</application>, também seja instalado com o FreeBSD.</para>
+
+ <indexterm><primary>kernel</primary> <secondary>NOTES</secondary></indexterm>
+ <indexterm><primary>NOTES</primary></indexterm>
+ <indexterm><primary>kernel</primary> <secondary>configuration file</secondary></indexterm>
+
+ <para>O formato do arquivo de configuração do kernel é simples. Cada linha contém uma palavra-chave que representa um dispositivo ou subsistema, um argumento e uma breve descrição. Qualquer texto depois de um <literal>#</literal> é considerado um comentário e ignorado. Para remover o suporte do kernel para um dispositivo ou subsistema, coloque um <literal>#</literal> no início da linha que representa esse dispositivo ou subsistema. Não adicione ou remova um <literal>#</literal> para qualquer linha que você não entenda.</para>
+
+ <warning>
+ <para>É fácil remover o suporte para um dispositivo ou opção e acabar com um kernel quebrado. Por exemplo, se o driver <citerefentry><refentrytitle>ata</refentrytitle><manvolnum>4</manvolnum></citerefentry> for removido do arquivo de configuração do kernel, um sistema usando os drivers de disco <acronym>ATA</acronym> pode não inicializar. Em caso de dúvida, basta deixar o suporte no kernel.</para>
+ </warning>
+
+ <para>Além das breves descrições fornecidas neste arquivo, descrições adicionais estão contidas no arquivo <filename>NOTES</filename>, o qual pode ser encontrado no mesmo diretório que o <filename>GENERIC</filename> para aquela arquitetura. Para opções independentes de arquitetura, consulte <filename>/usr/src/sys/conf/NOTES</filename>.</para>
+
+ <tip>
+ <para>Quando terminar de personalizar o arquivo de configuração do kernel, salve uma cópia de backup em um local fora do <filename>/usr/src</filename>.</para>
+
+ <para>Como alternativa, mantenha o arquivo de configuração do kernel em outro lugar e crie um link simbólico para o arquivo:</para>
+
+ <screen><prompt>#</prompt> <userinput>cd /usr/src/sys/amd64/conf</userinput>
+<prompt>#</prompt> <userinput>mkdir /root/kernels</userinput>
+<prompt>#</prompt> <userinput>cp GENERIC /root/kernels/MYKERNEL</userinput>
+<prompt>#</prompt> <userinput>ln -s /root/kernels/MYKERNEL</userinput></screen>
+ </tip>
+
+ <para>Uma diretiva <literal>include</literal> está disponível para uso em arquivos de configuração. Isso permite que outro arquivo de configuração seja incluído no arquivo atual, facilitando a manutenção de pequenas alterações em relação a um arquivo existente. Se apenas um pequeno número de opções ou drivers adicionais forem necessários, isso permitirá que um delta seja mantido com relação ao <filename>GENERIC</filename>, conforme mostrado neste exemplo:</para>
+
+ <programlisting>include GENERIC
+ident MYKERNEL
+
+options IPFIREWALL
+options DUMMYNET
+options IPFIREWALL_DEFAULT_TO_ACCEPT
+options IPDIVER</programlisting>
+
+ <para>Usando este método, o arquivo de configuração local expressa as diferenças locais em relação ao kernel <filename>GENERIC</filename>. Conforme as atualizações são realizadas, os novos recursos adicionados ao <filename>GENERIC</filename> também serão adicionados ao kernel local, a menos que sejam especificamente evitados usando <literal>nooptions</literal> ou <literal>nodevice</literal>. Uma lista abrangente de diretivas de configuração e suas descrições pode ser encontrada em <citerefentry><refentrytitle>config</refentrytitle><manvolnum>5</manvolnum></citerefentry>.</para>
+
+ <note>
+ <para>Para compilar um arquivo que contém todas as opções disponíveis, execute o seguinte comando como <systemitem class="username">root</systemitem>:</para>
+
+ <screen><prompt>#</prompt> <userinput>cd /usr/src/sys/<replaceable>arch</replaceable>/conf &amp;&amp; make LINT</userinput></screen>
+ </note>
+
+<!--
+ <indexterm>
+ <primary>kernel options</primary>
+ <secondary>ident</secondary>
+ </indexterm>
+
+This is outdated and specific to one architecture.
+
+ <programlisting>ident GENERIC</programlisting>
+
+ <para>This is the identification of the kernel. Change
+ this to the new kernel name, such as
+ <literal><replaceable>MYKERNEL</replaceable></literal>.
+ The value in the <literal>ident</literal> string will
+ print when the kernel boots.</para>
+
+ <programlisting>makeoptions DEBUG=-g # Build kernel with gdb(1) debug symbols</programlisting>
+
+ <para>This option enables debugging information when passed to
+ &man.gcc.1;.</para>
+
+ <programlisting>options SCHED_ULE # ULE scheduler</programlisting>
+
+ <para>The default system scheduler for &os;. Keep this.</para>
+
+ <programlisting>options INET # InterNETworking</programlisting>
+
+ <para>Networking support. This is mandatory as most programs
+ require at least loopback networking.</para>
+
+ <programlisting>options INET6 # IPv6 communications protocols</programlisting>
+
+ <para>This enables the IPv6 communication protocols.</para>
+
+ <programlisting>options FFS # Berkeley Fast Filesystem</programlisting>
+
+ <para>This is the basic hard drive file system. Leave it in if
+ the system boots from the hard disk.</para>
+
+ <programlisting>options SOFTUPDATES # Enable FFS Soft Updates support</programlisting>
+
+ <para>This option enables Soft Updates in the kernel which helps
+ to speed up write access on the disks. Even when this
+ functionality is provided by the kernel, it must be turned on
+ for specific disks. Review the output of &man.mount.8; to
+ determine if Soft Updates is enabled. If the
+ <literal>soft-updates</literal> option is not in the output, it
+ can be activated using &man.tunefs.8; for existing file systems
+ or &man.newfs.8; for new file systems.</para>
+
+ <programlisting>options UFS_ACL # Support for access control lists</programlisting>
+
+ <para>This option enables kernel support for access control lists
+ (<acronym>ACL</acronym>s). This relies on the use of extended
+ attributes and <acronym>UFS2</acronym>, and the feature is
+ described in detail in <xref linkend="fs-acl"/>.
+ <acronym>ACL</acronym>s are enabled by default and should not be
+ disabled in the kernel if they have been used previously on a
+ file system, as this will remove the ACLs, changing the way
+ files are protected in unpredictable ways.</para>
+
+ <programlisting>options UFS_DIRHASH # Improve performance on big directories</programlisting>
+
+ <para>This option includes functionality to speed up disk
+ operations on large directories, at the expense of using
+ additional memory. Keep this for a large server or interactive
+ workstation, and remove it from smaller systems where memory is
+ at a premium and disk access speed is less important, such as a
+ firewall.</para>
+
+ <programlisting>options MD_ROOT # MD is a potential root device</programlisting>
+
+ <para>This option enables support for a memory backed virtual disk
+ used as a root device.</para>
+
+ <indexterm>
+ <primary>kernel options</primary>
+ <secondary>NFS</secondary>
+ </indexterm>
+ <indexterm>
+ <primary>kernel options</primary>
+ <secondary>NFS_ROOT</secondary>
+ </indexterm>
+ <programlisting>options NFSCLIENT # Network Filesystem Client
+options NFSSERVER # Network Filesystem Server
+options NFS_ROOT # NFS usable as /, requires NFSCLIENT</programlisting>
+
+ <para>The network file system (<acronym>NFS</acronym>). These
+ lines can be commented unless the system needs to mount
+ partitions from a <acronym>NFS</acronym> file server over
+ TCP/IP.</para>
+
+ <indexterm>
+ <primary>kernel options</primary>
+ <secondary>MSDOSFS</secondary>
+ </indexterm>
+ <programlisting>options MSDOSFS # MSDOS Filesystem</programlisting>
+
+ <para>The &ms-dos; file system. Unless the system needs to mount
+ a DOS formatted hard drive partition at boot time, comment this
+ out. It will be automatically loaded the first time a DOS
+ partition is mounted. The <package>emulators/mtools</package>
+ package allows access to DOS floppies without having to mount
+ and unmount them and does not require
+ <literal>MSDOSFS</literal>.</para>
+
+ <programlisting>options CD9660 # ISO 9660 Filesystem</programlisting>
+
+ <para>The ISO 9660 file system for CDROMs. Comment it out if the
+ system does not have a CDROM drive or only mounts data CDs
+ occasionally since it will be dynamically loaded the first
+ time a data CD is mounted. Audio CDs do not need this file
+ system.</para>
+
+ <programlisting>options PROCFS # Process filesystem (requires PSEUDOFS)</programlisting>
+
+ <para>The process file system. This is a <quote>pretend</quote>
+ file system mounted on <filename>/proc</filename> which allows
+ some programs to provide more information on what processes are
+ running. Use of <literal>PROCFS</literal> is not required under
+ most circumstances, as most debugging and monitoring tools have
+ been adapted to run without <literal>PROCFS</literal>. The
+ default installation will not mount this file system by
+ default.</para>
+
+ <programlisting>options PSEUDOFS # Pseudo-filesystem framework</programlisting>
+
+ <para>Kernels making use of <literal>PROCFS</literal> must
+ also include support for <literal>PSEUDOFS</literal>.</para>
+
+ <programlisting>options GEOM_PART_GPT # GUID Partition Tables.</programlisting>
+
+ <para>Adds support for <link
+ xlink:href="http://en.wikipedia.org/wiki/GUID_Partition_Table">GUID
+ Partition Tables</link> (<acronym>GPT</acronym>). GPT
+ provides the ability to have a large number of partitions per
+ disk, 128 in the standard configuration.</para>
+
+ <programlisting>options COMPAT_43 # Compatible with BSD 4.3 [KEEP THIS!]</programlisting>
+
+ <para>Compatibility with 4.3BSD. Leave this in as some programs
+ will act strangely if this is commented out.</para>
+
+ <programlisting>options COMPAT_FREEBSD4 # Compatible with &os;4</programlisting>
+
+ <para>This option is required to support applications compiled on
+ older versions of &os; that use older system call interfaces.
+ It is recommended that this option be used on all &i386; systems
+ that may run older applications. Platforms that gained support
+ after &os;&nbsp;4.X, such as ia64 and &sparc64;, do not require
+ this option.</para>
+
+ <programlisting>options COMPAT_FREEBSD5 # Compatible with &os;5</programlisting>
+
+ <para>This option is required to support applications compiled on
+ &os;&nbsp;5.X versions that use &os;&nbsp;5.X system call
+ interfaces.</para>
+
+ <programlisting>options COMPAT_FREEBSD6 # Compatible with &os;6</programlisting>
+
+ <para>This option is required to support applications compiled on
+ &os;&nbsp;6.X versions that use &os;&nbsp;6.X system call
+ interfaces.</para>
+
+ <programlisting>options COMPAT_FREEBSD7 # Compatible with &os;7</programlisting>
+
+ <para>This option is required on &os;&nbsp;8 and above to support
+ applications compiled on &os;&nbsp;7.X versions that use
+ &os;&nbsp;7.X system call interfaces.</para>
+
+ <programlisting>options SCSI_DELAY=5000 # Delay (in ms) before probing SCSI</programlisting>
+
+ <para>This causes the kernel to pause for 5 seconds before probing
+ each <acronym>SCSI</acronym> device in the system. If
+ <acronym>SCSI</acronym> drives are not recognized, increase the
+ number. If the system does not have any <acronym>SCSI</acronym>
+ drives, this value can be ignored or decreased to speed up
+ booting.</para>
+
+ <programlisting>options KTRACE # ktrace(1) support</programlisting>
+
+ <para>This enables kernel process tracing, which is useful in
+ debugging.</para>
+
+ <programlisting>options SYSVSHM # SYSV-style shared memory</programlisting>
+
+ <para>This option provides for System&nbsp;V shared memory. The
+ most common use of this is the XSHM extension in X, which many
+ graphics-intensive programs will automatically take advantage of
+ for extra speed. If <application>Xorg</application> is
+ installed, include this.</para>
+
+ <programlisting>options SYSVMSG # SYSV-style message queues</programlisting>
+
+ <para>Support for System&nbsp;V messages. This option only adds
+ a few hundred bytes to the kernel.</para>
+
+ <programlisting>options SYSVSEM # SYSV-style semaphores</programlisting>
+
+ <para>Support for System&nbsp;V semaphores. Less commonly used,
+ but only adds a few hundred bytes to the kernel.</para>
+
+ <note>
+ <para>Using <option>-p</option> with &man.ipcs.1; will list any
+ processes using each of these System&nbsp;V facilities.</para>
+ </note>
+
+ <programlisting>options _KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B real-time extensions</programlisting>
+
+ <para>Real-time extensions added in the 1993 &posix;. Certain
+ applications in the Ports Collection use these.</para>
+
+ <programlisting>options KBD_INSTALL_CDEV # install a CDEV entry in /dev</programlisting>
+
+ <para>This option is required to allow the creation of keyboard
+ device nodes in <filename>/dev</filename>.</para>
+
+ <indexterm>
+ <primary>kernel options</primary>
+ <secondary>SMP</secondary>
+ </indexterm>
+ <programlisting>device apic # I/O APIC</programlisting>
+
+ <para>This device enables the use of the I/O APIC for interrupt
+ delivery. It can be used in both uni-processor and SMP kernels,
+ but is required for SMP kernels. Add <literal>options
+ SMP</literal> to include support for multiple
+ processors.</para>
+
+ <note>
+ <para>This device exists only on the &i386; architecture and
+ this configuration line should not be used on other
+ architectures.</para>
+ </note>
+
+ <programlisting>device eisa</programlisting>
+
+ <para>Include this for systems with an EISA motherboard. This
+ enables auto-detection and configuration support for all devices
+ on the EISA bus.</para>
+
+ <programlisting>device pci</programlisting>
+
+ <para>Include this for systems with a PCI motherboard. This
+ enables auto-detection of PCI cards and gatewaying from the PCI
+ to ISA bus.</para>
+
+ <programlisting># Floppy drives
+device fdc</programlisting>
+
+ <para>This is the floppy drive controller.</para>
+
+ <programlisting># ATA and ATAPI devices
+device ata</programlisting>
+
+ <para>This driver supports all ATA and ATAPI devices. Only
+ one <literal>device ata</literal> line is needed for the kernel
+ to detect all PCI ATA/ATAPI devices on modern machines.</para>
+
+ <programlisting>device atadisk # ATA disk drives</programlisting>
+
+ <para>This is needed along with <literal>device ata</literal> for
+ ATA disk drives.</para>
+
+ <programlisting>device ataraid # ATA RAID drives</programlisting>
+
+ <para>This is needed along with <literal>device ata</literal>
+ for ATA RAID drives.</para>
+
+ <programlisting><anchor xml:id="kernelconfig-atapi"/>
+device atapicd # ATAPI CDROM drives</programlisting>
+
+ <para>This is needed along with <literal>device ata</literal>
+ for ATAPI CDROM drives.</para>
+
+ <programlisting>device atapifd # ATAPI floppy drives</programlisting>
+
+ <para>This is needed along with <literal>device ata</literal> for
+ ATAPI floppy drives.</para>
+
+ <programlisting>device atapist # ATAPI tape drives</programlisting>
+
+ <para>This is needed along with <literal>device ata</literal> for
+ ATAPI tape drives.</para>
+
+ <programlisting>options ATA_STATIC_ID # Static device numbering</programlisting>
+
+ <para>This makes the controller number static. Without this, the
+ device numbers are dynamically allocated.</para>
+
+ <programlisting># SCSI Controllers
+device ahb # EISA AHA1742 family
+device ahc # AHA2940 and onboard AIC7xxx devices
+options AHC_REG_PRETTY_PRINT # Print register bitfields in debug
+ # output. Adds ~128k to driver.
+device ahd # AHA39320/29320 and onboard AIC79xx devices
+options AHD_REG_PRETTY_PRINT # Print register bitfields in debug
+ # output. Adds ~215k to driver.
+device amd # AMD 53C974 (Teckram DC-390(T))
+device isp # Qlogic family
+#device ispfw # Firmware for QLogic HBAs- normally a module
+device mpt # LSI-Logic MPT-Fusion
+#device ncr # NCR/Symbios Logic
+device sym # NCR/Symbios Logic (newer chipsets + those of `ncr')
+device trm # Tekram DC395U/UW/F DC315U adapters
+
+device adv # Advansys SCSI adapters
+device adw # Advansys wide SCSI adapters
+device aha # Adaptec 154x SCSI adapters
+device aic # Adaptec 15[012]x SCSI adapters, AIC-6[23]60.
+device bt # Buslogic/Mylex MultiMaster SCSI adapters
+
+device ncv # NCR 53C500
+device nsp # Workbit Ninja SCSI-3
+device stg # TMC 18C30/18C50</programlisting>
+
+ <para>In this section, comment out any SCSI controllers not on
+ the system. For an IDE only system, these lines can be removed.
+ The <literal>*_REG_PRETTY_PRINT</literal> lines are
+ debugging options for their respective drivers.</para>
+
+ <programlisting># SCSI peripherals
+device scbus # SCSI bus (required for SCSI)
+device ch # SCSI media changers
+device da # Direct Access (disks)
+device sa # Sequential Access (tape etc)
+device cd # CD
+device pass # Passthrough device (direct SCSI access)
+device ses # SCSI Environmental Services (and SAF-TE)</programlisting>
+
+ <para>Comment out any SCSI peripherals not on the system. If
+ the system only has IDE hardware, these lines can be removed
+ completely.</para>
+
+ <note>
+ <para>The USB &man.umass.4; driver and a few other drivers use
+ the SCSI subsystem even though they are not real SCSI devices.
+ Do not remove SCSI support if any such drivers are included in
+ the kernel configuration.</para>
+ </note>
+
+ <programlisting># RAID controllers interfaced to the SCSI subsystem
+device amr # AMI MegaRAID
+device arcmsr # Areca SATA II RAID
+device asr # DPT SmartRAID V, VI and Adaptec SCSI RAID
+device ciss # Compaq Smart RAID 5*
+device dpt # DPT Smartcache III, IV - See NOTES for options
+device hptmv # Highpoint RocketRAID 182x
+device hptrr # Highpoint RocketRAID 17xx, 22xx, 23xx, 25xx
+device iir # Intel Integrated RAID
+device ips # IBM (Adaptec) ServeRAID
+device mly # Mylex AcceleRAID/eXtremeRAID
+device twa # 3ware 9000 series PATA/SATA RAID
+
+# RAID controllers
+device aac # Adaptec FSA RAID
+device aacp # SCSI passthrough for aac (requires CAM)
+device ida # Compaq Smart RAID
+device mfi # LSI MegaRAID SAS
+device mlx # Mylex DAC960 family
+device pst # Promise Supertrak SX6000
+device twe # 3ware ATA RAID</programlisting>
+
+ <para>Supported RAID controllers. If the system does not have any
+ of these, comment them out or remove them.</para>
+
+ <programlisting># atkbdc0 controls both the keyboard and the PS/2 mouse
+device atkbdc # AT keyboard controller</programlisting>
+
+ <para>The <literal>atkbdc</literal> keyboard controller provides
+ I/O services for the AT keyboard and PS/2 style pointing
+ devices. This controller is required by &man.atkbd.4; and
+ &man.psm.4;.</para>
+
+ <programlisting>device atkbd # AT keyboard</programlisting>
+
+ <para>The &man.atkbd.4; driver, together with the &man.atkbdc.4;
+ controller, provides access to the AT 84 keyboard or the AT
+ enhanced keyboard which is connected to the AT keyboard
+ controller.</para>
+
+ <programlisting>device psm # PS/2 mouse</programlisting>
+
+ <para>Use this device if the mouse plugs into the PS/2 mouse
+ port.</para>
+
+ <programlisting>device kbdmux # keyboard multiplexer</programlisting>
+
+ <para>Basic support for keyboard multiplexing. If the system
+ does not use more than one keyboard, this line can be safely
+ removed.</para>
+
+ <programlisting>device vga # VGA video card driver</programlisting>
+
+ <para>The &man.vga.4; video card driver.</para>
+
+ <programlisting>device splash # Splash screen and screen saver support</programlisting>
+
+ <para>Required by the boot splash screen and screen savers.</para>
+
+ <programlisting># syscons is the default console driver, resembling a SCO console
+device sc</programlisting>
+
+ <para>&man.sc.4; is the default console driver and resembles a SCO
+ console. Since most full-screen programs access the console
+ through a terminal database library like
+ <filename>termcap</filename>, it should not matter whether
+ this or <literal>vt</literal>, the
+ <literal>VT220</literal> compatible console driver, is used.
+ When a user logs in, the <envar>TERM</envar> variable can be set
+ to <literal>scoansi</literal> if full-screen programs have
+ trouble running under this console.</para>
+
+ <programlisting># Enable this for the pcvt (VT220 compatible) console driver
+#device vt
+#options XSERVER # support for X server on a vt console
+#options FAT_CURSOR # start with block cursor</programlisting>
+
+ <para>This is a VT220-compatible console driver, backward
+ compatible to VT100/102. It works well on some laptops which
+ have hardware incompatibilities with <literal>sc</literal>.
+ Users may need to set <envar>TERM</envar> to
+ <literal>vt100</literal> or <literal>vt220</literal> after
+ login. This driver is useful when connecting to a large number
+ of different machines over the network, where
+ <filename>termcap</filename> or <filename>terminfo</filename>
+ entries for the <literal>sc</literal> device are not
+ available as <literal>vt100</literal> should be available
+ on virtually any platform.</para>
+
+ <programlisting>device agp</programlisting>
+
+ <para>Include this if the system has an AGP card. This will
+ enable support for AGP and AGP GART for boards which have these
+ features.</para>
+
+ <programlisting># Add suspend/resume support for the i8254.
+device pmtimer</programlisting>
+
+ <para>Timer device driver for power management events, such as
+ APM and ACPI.</para>
+
+ <programlisting># PCCARD (PCMCIA) support
+# PCMCIA and cardbus bridge support
+device cbb # cardbus (yenta) bridge
+device pccard # PC Card (16-bit) bus
+device cardbus # CardBus (32-bit) bus</programlisting>
+
+ <para>PCMCIA support. Keep this on laptop systems.</para>
+
+ <programlisting># Serial (COM) ports
+device sio # 8250, 16[45]50 based serial ports</programlisting>
+
+ <para>These are the serial ports referred to as
+ <filename>COM</filename> ports in &windows;.</para>
+
+ <note>
+ <para>If the system has an internal modem on
+ <filename>COM4</filename> and a serial port at
+ <filename>COM2</filename>, change the IRQ of the modem to
+ 2. For a multiport serial card, refer to &man.sio.4; for more
+ information on the proper values to add to
+ <filename>/boot/device.hints</filename>. Some video cards,
+ notably those based on S3 chips, use I/O addresses in the
+ form of <literal>0x*2e8</literal>. Since many cheap serial
+ cards do not fully decode the 16-bit I/O address space, they
+ clash with these cards, making the
+ <filename>COM4</filename> port practically
+ unavailable.</para>
+
+ <para>Each serial port is required to have a unique IRQ and the
+ default IRQs for <filename>COM3</filename> and
+ <filename>COM4</filename> cannot be used. The exception
+ is multiport cards where shared interrupts are
+ supported.</para>
+ </note>
+
+ <programlisting># Parallel port
+device ppc</programlisting>
+
+ <para>This is the ISA bus parallel port interface.</para>
+
+ <programlisting>device ppbus # Parallel port bus (required)</programlisting>
+
+ <para>Provides support for the parallel port bus.</para>
+
+ <programlisting>device lpt # Printer</programlisting>
+
+ <para>Adds support for parallel port printers.</para>
+
+ <note>
+ <para>All three of the above are required to enable parallel
+ printer support.</para>
+ </note>
+
+ <programlisting>device ppi # Parallel port interface device</programlisting>
+
+ <para>The general-purpose I/O (<quote>geek port</quote>) +
+ IEEE1284 I/O.</para>
+
+ <programlisting>#device vpo # Requires scbus and da</programlisting>
+
+ <indexterm><primary>zip drive</primary></indexterm>
+ <para>This is for an Iomega Zip drive. It requires
+ <literal>scbus</literal> and <literal>da</literal> support.
+ Best performance is achieved with ports in EPP 1.9 mode.</para>
+
+ <programlisting>#device puc</programlisting>
+
+ <para>Uncomment this device if the system has a
+ <quote>dumb</quote> serial or parallel PCI card that is
+ supported by the &man.puc.4; glue driver.</para>
+
+ <programlisting># PCI Ethernet NICs.
+device de # DEC/Intel DC21x4x (<quote>Tulip</quote>)
+device em # Intel PRO/1000 adapter Gigabit Ethernet Card
+device ixgb # Intel PRO/10GbE Ethernet Card
+device txp # 3Com 3cR990 (<quote>Typhoon</quote>)
+device vx # 3Com 3c590, 3c595 (<quote>Vortex</quote>)</programlisting>
+
+ <para>Various PCI network card drivers. Comment out or remove
+ any of these which are not present in the system.</para>
+
+ <programlisting># PCI Ethernet NICs that use the common MII bus controller code.
+# NOTE: Be sure to keep the 'device miibus' line in order to use these NICs!
+device miibus # MII bus support</programlisting>
+
+ <para>MII bus support is required for some PCI 10/100 Ethernet
+ NICs, namely those which use MII-compliant transceivers or
+ implement transceiver control interfaces that operate like an
+ MII. Adding <literal>device miibus</literal> to the kernel
+ config pulls in support for the generic miibus API and all of
+ the PHY drivers, including a generic one for PHYs that are not
+ specifically handled by an individual driver.</para>
+
+ <programlisting>device bce # Broadcom BCM5706/BCM5708 Gigabit Ethernet
+device bfe # Broadcom BCM440x 10/100 Ethernet
+device bge # Broadcom BCM570xx Gigabit Ethernet
+device dc # DEC/Intel 21143 and various workalikes
+device fxp # Intel EtherExpress PRO/100B (82557, 82558)
+device lge # Level 1 LXT1001 gigabit ethernet
+device msk # Marvell/SysKonnect Yukon II Gigabit Ethernet
+device nge # NatSemi DP83820 gigabit ethernet
+device nve # nVidia nForce MCP on-board Ethernet Networking
+device pcn # AMD Am79C97x PCI 10/100 (precedence over 'lnc')
+device re # RealTek 8139C+/8169/8169S/8110S
+device rl # RealTek 8129/8139
+device sf # Adaptec AIC-6915 (<quote>Starfire</quote>)
+device sis # Silicon Integrated Systems SiS 900/SiS 7016
+device sk # SysKonnect SK-984x &amp; SK-982x gigabit Ethernet
+device ste # Sundance ST201 (D-Link DFE-550TX)
+device stge # Sundance/Tamarack TC9021 gigabit Ethernet
+device ti # Alteon Networks Tigon I/II gigabit Ethernet
+device tl # Texas Instruments ThunderLAN
+device tx # SMC EtherPower II (83c170 <quote>EPIC</quote>)
+device vge # VIA VT612x gigabit ethernet
+device vr # VIA Rhine, Rhine II
+device wb # Winbond W89C840F
+device xl # 3Com 3c90x (<quote>Boomerang</quote>, <quote>Cyclone</quote>)</programlisting>
+
+ <para>Drivers that use the MII bus controller code.</para>
+
+ <programlisting># ISA Ethernet NICs. pccard NICs included.
+device cs # Crystal Semiconductor CS89x0 NIC
+# 'device ed' requires 'device miibus'
+device ed # NE[12]000, SMC Ultra, 3c503, DS8390 cards
+device ex # Intel EtherExpress Pro/10 and Pro/10+
+device ep # Etherlink III based cards
+device fe # Fujitsu MB8696x based cards
+device ie # EtherExpress 8/16, 3C507, StarLAN 10 etc.
+device lnc # NE2100, NE32-VL Lance Ethernet cards
+device sn # SMC's 9000 series of Ethernet chips
+device xe # Xircom pccard Ethernet
+
+# ISA devices that use the old ISA shims
+#device le</programlisting>
+
+ <para>ISA Ethernet drivers. See
+ <filename>/usr/src/sys/<replaceable>arch</replaceable>/conf/NOTES</filename>
+ for details of which cards are supported by which driver.</para>
+
+ <programlisting># Wireless NIC cards
+device wlan # 802.11 support</programlisting>
+
+ <para>Generic 802.11 support. This line is required for wireless
+ networking.</para>
+
+ <programlisting>device wlan_wep # 802.11 WEP support
+device wlan_ccmp # 802.11 CCMP support
+device wlan_tkip # 802.11 TKIP support</programlisting>
+
+ <para>Crypto support for 802.11 devices. These lines are needed
+ on systems which use encryption and 802.11i security
+ protocols.</para>
+
+ <programlisting>device an # Aironet 4500/4800 802.11 wireless NICs.
+device ath # Atheros pci/cardbus NIC's
+device ath_hal # Atheros HAL (Hardware Access Layer)
+device ath_rate_sample # SampleRate tx rate control for ath
+device awi # BayStack 660 and others
+device ral # Ralink Technology RT2500 wireless NICs.
+device wi # WaveLAN/Intersil/Symbol 802.11 wireless NICs.
+#device wl # Older non 802.11 Wavelan wireless NIC.</programlisting>
+
+ <para>Support for various wireless cards.</para>
+
+ <programlisting># Pseudo devices
+device loop # Network loopback</programlisting>
+
+ <para>This is the generic loopback device for TCP/IP. This is
+ <emphasis>mandatory</emphasis>.</para>
+
+ <programlisting>device random # Entropy device</programlisting>
+
+ <para>Cryptographically secure random number generator.</para>
+
+ <programlisting>device ether # Ethernet support</programlisting>
+
+ <para><literal>ether</literal> is only needed if the system has
+ an Ethernet card. It includes generic Ethernet protocol
+ code.</para>
+
+ <programlisting>device sl # Kernel SLIP</programlisting>
+
+ <para><literal>sl</literal> provides SLIP support. This has been
+ almost entirely supplanted by PPP, which is easier to set up,
+ better suited for modem-to-modem connection, and more
+ powerful.</para>
+
+ <programlisting>device ppp # Kernel PPP</programlisting>
+
+ <para>This is for kernel PPP support for dial-up connections.
+ There is also a version of PPP implemented as a userland
+ application that uses <literal>tun</literal> and offers more
+ flexibility and features such as demand dialing.</para>
+
+ <programlisting>device tun # Packet tunnel.</programlisting>
+
+ <para>This is used by the userland PPP software. See the <link
+ linkend="userppp">PPP</link> section of the Handbook for more
+ information.</para>
+
+ <programlisting><anchor xml:id="kernelconfig-ptys"/>
+device pty # Pseudo-ttys (telnet etc)</programlisting>
+
+ <para>This is a <quote>pseudo-terminal</quote> or simulated
+ login port. It is used by incoming <command>telnet</command>
+ and <command>rlogin</command> sessions,
+ <application>xterm</application>, and some other applications
+ such as <application>Emacs</application>.</para>
+
+ <programlisting>device md # Memory <quote>disks</quote></programlisting>
+
+ <para>Memory disk pseudo-devices.</para>
+
+ <programlisting>device gif # IPv6 and IPv4 tunneling</programlisting>
+
+ <para>This implements IPv6 over IPv4 tunneling, IPv4 over IPv6
+ tunneling, IPv4 over IPv4 tunneling, and IPv6 over IPv6
+ tunneling. The <literal>gif</literal> device is
+ <quote>auto-cloning</quote>, and will create device nodes as
+ needed.</para>
+
+ <programlisting>device faith # IPv6-to-IPv4 relaying (translation)</programlisting>
+
+ <para>This pseudo-device captures packets that are sent to it and
+ diverts them to the IPv4/IPv6 translation daemon.</para>
+
+ <programlisting># The `bpf' device enables the Berkeley Packet Filter.
+# Be aware of the administrative consequences of enabling this!
+# Note that 'bpf' is required for DHCP.
+device bpf # Berkeley packet filter</programlisting>
+
+ <para>The Berkeley Packet Filter pseudo-device allows network
+ interfaces to be placed in promiscuous mode, capturing every
+ packet on a broadcast network such as an Ethernet network.
+ These packets can be captured to disk and or examined using
+ &man.tcpdump.1;.</para>
+
+ <note>
+ <para>The &man.bpf.4; device is also used by &man.dhclient.8;.
+ If DHCP is used, leave this uncommented.</para>
+ </note>
+
+ <programlisting># USB support
+device uhci # UHCI PCI-&gt;USB interface
+device ohci # OHCI PCI-&gt;USB interface
+device ehci # EHCI PCI-&gt;USB interface (USB 2.0)
+device usb # USB Bus (required)
+#device udbp # USB Double Bulk Pipe devices
+device ugen # Generic
+device uhid # <quote>Human Interface Devices</quote>
+device ukbd # Keyboard
+device ulpt # Printer
+device umass # Disks/Mass storage - Requires scbus and da
+device ums # Mouse
+device ural # Ralink Technology RT2500USB wireless NICs
+device urio # Diamond Rio 500 MP3 player
+device uscanner # Scanners
+# USB Ethernet, requires mii
+device aue # ADMtek USB Ethernet
+device axe # ASIX Electronics USB Ethernet
+device cdce # Generic USB over Ethernet
+device cue # CATC USB Ethernet
+device kue # Kawasaki LSI USB Ethernet
+device rue # RealTek RTL8150 USB Ethernet</programlisting>
+
+ <para>Support for various USB devices.</para>
+
+ <programlisting># FireWire support
+device firewire # FireWire bus code
+device sbp # SCSI over FireWire (Requires scbus and da)
+device fwe # Ethernet over FireWire (non-standard!)</programlisting>
+
+ <para>Support for various Firewire devices.</para>
+
+ <para>For more information and additional devices supported by
+ &os;, see
+ <filename>/usr/src/sys/<replaceable>arch</replaceable>/conf/NOTES</filename>.</para>
+ -->
+
+ <!--
+ This section refers to ancient hardware.
+ <sect2>
+ <title>Large Memory Configurations
+ (<acronym>PAE</acronym>)</title>
+
+ <indexterm>
+ <primary>Physical Address Extensions
+ (<acronym>PAE</acronym>)</primary>
+ <secondary>large memory</secondary>
+ </indexterm>
+
+ <para>Large memory configuration machines require access to
+ more than the 4 gigabyte limit on User+Kernel Virtual
+ Address (<acronym>KVA</acronym>) space. Due to this
+ limitation, Intel added support for 36-bit physical address
+ space access in the &pentium; Pro and later line of
+ CPUs.</para>
+
+ <para>The Physical Address Extension (<acronym>PAE</acronym>)
+ capability of the &intel; &pentium; Pro and later CPUs allows
+ memory configurations of up to 64 gigabytes. &os; provides
+ support for this capability via the <option>PAE</option>
+ kernel configuration option, available in all current release
+ versions of &os;. Due to the limitations of the Intel memory
+ architecture, no distinction is made for memory above or below
+ 4 gigabytes. Memory allocated above 4 gigabytes is simply
+ added to the pool of available memory.</para>
+
+ <para>To enable <acronym>PAE</acronym> support in the kernel,
+ add the following line to the kernel configuration
+ file:</para>
+
+ <programlisting>options PAE</programlisting>
+
+ <note>
+ <para>The <acronym>PAE</acronym> support in &os; is only
+ available for &intel; IA-32 processors. It should also be
+ noted that the <acronym>PAE</acronym> support in &os; has
+ not received wide testing, and should be considered beta
+ quality compared to other stable features of &os;.</para>
+ </note>
+
+ <para><acronym>PAE</acronym> support in &os; has a few
+ limitations:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>A process is not able to access more than 4
+ gigabytes of virtual memory space.</para>
+ </listitem>
+
+ <listitem>
+ <para>Device drivers that do not use the &man.bus.dma.9;
+ interface will cause data corruption in a
+ <acronym>PAE</acronym> enabled kernel and are not
+ recommended for use. For this reason, a
+ <filename>PAE</filename> kernel configuration file is
+ provided in &os; which excludes all drivers not known to
+ work in a <acronym>PAE</acronym> enabled kernel.</para>
+ </listitem>
+
+ <listitem>
+ <para>Some system tunables determine memory resource usage
+ by the amount of available physical memory. Such
+ tunables can unnecessarily over-allocate due to the
+ large memory nature of a <acronym>PAE</acronym> system.
+ One such example is the
+ <varname>kern.maxvnodes</varname> sysctl, which controls
+ the maximum number of vnodes allowed in the kernel. It
+ is advised to adjust this and other such tunables to a
+ reasonable value.</para>
+ </listitem>
+
+ <listitem>
+ <para>It might be necessary to increase the kernel virtual
+ address (<acronym>KVA</acronym>) space or to reduce the
+ amount of specific kernel resource that is heavily used
+ in order to avoid <acronym>KVA</acronym> exhaustion.
+ The <option>KVA_PAGES</option> kernel option can be used
+ for increasing the <acronym>KVA</acronym> space.</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>For performance and stability concerns, it is advised to
+ consult &man.tuning.7;. &man.pae.4; contains up-to-date
+ information on &os;'s <acronym>PAE</acronym> support.</para>
+ </sect2>
+-->
+ </sect1>
+
+ <sect1 xml:id="kernelconfig-building">
+ <title>Criando e Instalando um Kernel Customizado</title>
+
+ <para>Depois que as edições no arquivo de configuração personalizada forem salvas, o código-fonte do kernel poderá ser compilado usando as seguintes etapas:</para>
+
+ <procedure>
+ <title>Compilando um Kernel</title>
+
+ <indexterm><primary>kernel</primary> <secondary>building / installing</secondary></indexterm>
+
+ <step>
+ <para>Mude para este diretório:</pa