doc/pt_BR.ISO8859-1/articles/new-users/article.xml

1225 lines
46 KiB
XML
Raw Normal View History

<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE article PUBLIC "-//FreeBSD//DTD DocBook XML V4.5-Based Extension//EN"
"../../../share/xml/freebsd45.dtd">
2012-09-06 17:20:49 +02:00
<!--
The FreeBSD Documentation Project
The FreeBSD Brazilian Portuguese Documentation Project
$FreeBSD$
Original revision: r39544
-->
<article lang='pt_br'>
<articleinfo>
<title>Para os novatos em FreeBSD e &unix;</title>
<authorgroup>
<author>
<firstname>Annelise</firstname>
<surname>Anderson</surname>
<affiliation>
<address><email>andrsn@andrsn.stanford.edu</email></address>
</affiliation>
</author>
</authorgroup>
<pubdate>15 de agosto de 1997</pubdate>
<legalnotice id="trademarks" role="trademarks">
&tm-attrib.freebsd;
&tm-attrib.ibm;
&tm-attrib.microsoft;
&tm-attrib.netscape;
&tm-attrib.opengroup;
&tm-attrib.general;
</legalnotice>
<releaseinfo>$FreeBSD$</releaseinfo>
<abstract>
<para>Parab<EFBFBD>ns pela instala<6C><61>o do FreeBSD!
Esta introdu<64><75>o <20> para os novatos no
FreeBSD <emphasis>e</emphasis> no &unix;&mdash;, ent<6E>o
ela come<6D>a com o b<>sico. Este artigo assume que
voc<6F> est<73> usando a vers<72>o 2.0.5, ou mais
atual, do &os; distribu<62>do pela &os;.org, seu sistema,
por agora, tem um <20>nico usu<73>rio (voc<6F>) e
voc<6F> provavelmente est<73> muito bem com o
DOS/&windows; ou &os2;.</para>
</abstract>
</articleinfo>
<sect1 id="in-and-out">
<title>Entrando e saindo do sistema</title>
<para>Entre no sistema (quando voc<6F> v<>
<prompt>login:</prompt>) como o usu<73>rio que voc<6F>
criou durante a instala<6C><61>o ou como
<username>root</username>. (Sua instala<6C><61>o do
FreeBSD j<> ter<65> uma conta
<username>root</username>; que pode ir para qualquer lugar e
fazer qualquer coisa, incluindo remover arquivos essenciais,
ent<6E>o seja muito cuidadoso!) Os s<>mbolos
&prompt.user; e &prompt.root; nos exemplos a seguir representam
o <literal>prompt</literal> (o seu pode ser diferente), com o
&prompt.user; indicando o <literal>prompt</literal> de um
usu<73>rio comum e o &prompt.root; indicando o
<literal>prompt</literal> do <username>root</username>.</para>
<para>Para sair do sistema (e obter uma novo
<literal>prompt</literal> de <prompt>login:</prompt>)
escreva:</para>
<informalexample>
<screen>&prompt.root; <userinput>exit</userinput></screen>
</informalexample>
<para>quantas vezes forem necess<73>rias. Voc<6F> precisa
pressionar <keysym>enter</keysym> ap<61>s os comandos, e
lembre-se que &unix; <20> sens<6E>vel a letras
mai<61>sculas e min<69>sculas &mdash;
<command>exit</command> n<>o <20> o mesmo que
<command>EXIT</command>.</para>
<para>Para desligar a m<>quina escreva:</para>
<informalexample>
<screen>&prompt.root; <userinput>/sbin/shutdown -h now</userinput></screen>
</informalexample>
<para>Ou para reinicializar, escreva:</para>
<informalexample>
<screen>&prompt.root; <userinput>/sbin/shutdown -r now</userinput></screen>
</informalexample>
<para>ou</para>
<informalexample>
<screen>&prompt.root; <userinput>/sbin/reboot</userinput></screen>
</informalexample>
<para>Voc<EFBFBD> tamb<6D>m pode reiniciar com
<keycombo><keycap>Ctrl</keycap><keycap>Alt</keycap><keycap>Delete</keycap></keycombo>.
D<>-lhe um pouco de tempo para trabalhar. Isso <20> o
equivalente ao <command>/sbin/reboot</command> nas
vers<72>es recentes do FreeBSD e <20> muito, muito
melhor do que pressionar o bot<6F>o de
<literal>reset</literal>. Voc<6F> n<>o quer ter que
instalar tudo de novo, n<>o <20>?</para>
</sect1>
<sect1 id="adding-a-user">
<title>Adicionando um Usu<73>rio com Privil<69>gios de
Root</title>
<para>Se voc<6F> n<>o criou nenhum usu<73>rio
durante a instala<6C><61>o do sistema e, portanto,
est<73> logado como <username>root</username>, voc<6F>
provavelmente precisa criar um usu<73>rio agora com:</para>
<informalexample>
<screen>&prompt.root; <userinput>adduser</userinput></screen>
</informalexample>
<para>Na primeira vez que voc<6F> usar o
<command>adduser</command>, ele pode pedir por valores
padr<64>es para salvar. Voc<6F> pode querer definir o
<literal>shell</literal> padr<64>o como &man.csh.1; ao
inv<6E>s do &man.sh.1;, se ele sugerir o
<command>sh</command> como padr<64>o. Do contr<74>rio,
apenas pressione <keysym>enter</keysym> para aceitar os valores
padr<64>es. Os valores padr<64>es ser<65>o
salvos em <filename>/etc/adduser.conf</filename>, o qual
pode ser editado.</para>
<para>Suponha que voc<6F> criou um usu<73>rio
<username>jack</username>, cujo nome completo seja
<emphasis>Jack Benimble</emphasis>. D<> a
<username>jack</username> uma senha se seguran<61>a (mesmo
crian<61>as ao redor que possam por as m<>os no
teclado) <20> um problema. Quando for questionado se
voc<6F> deseja incluir <username>jack</username> em outros
grupos, escreva <groupname>wheel</groupname>:</para>
<informalexample>
<screen>Login group is ``jack''. Invite jack into other groups: <userinput>wheel</userinput></screen>
</informalexample>
<para>Isso tornar<61> poss<73>vel entrar no sistema como
<username>jack</username> e usar o comando &man.su.1; para
tornar-se <username>root</username>. Ent<6E>o voc<6F>
n<>o ser<65> mais repreendido por logar como
<username>root</username>.</para>
<para>Voc<EFBFBD> pode interromper o <command>adduser</command>
<20> qualquer momento apenas pressionando
<keycombo><keycap>Ctrl</keycap><keycap>C</keycap></keycombo>, e
no fim voc<6F> poder<65> aprovar o novo usu<73>rio
ou simplesmente escrever <keycap>n</keycap> para n<>o.
Voc<6F> pode querer criar um segundo usu<73>rio para o
caso de algo sair errado na edi<64><69>o dos arquivos de
<literal>login</literal> do usu<73>rio
<username>jack</username>.</para>
<para>Uma vez que voc<6F> tenha conclu<6C>do, use
<command>exit</command> para voltar ao <literal>prompt</literal>
de <literal>login</literal> e entrar como o usu<73>rio
<username>jack</username>. Em geral, <20> uma boa
id<69>ia fazer tudo quanto for poss<73>vel como um
usu<73>rio comum, que n<>o tem o poder &mdash; e o
risco &mdash; do <username>root</username>.</para>
<para>Se voc<6F> j<> criou o usu<73>rio e quer que
ele tenha permiss<73>o de utilizar o <command>su</command>
para tornar-se <username>root</username>, voc<6F> pode entrar
como <username>root</username> e editar o arquivo
<filename>/etc/group</filename>, adicionando
<username>jack</username> ao grupo presente na primeira
linha (o grupo <groupname>wheel</groupname>). Mas primeiro
voc<6F> precisa praticar com &man.vi.1;, o editor de texto
instalado nas vers<72>es mais recentes do FreeBSD &mdash; ou
usar um editor de texto mais simples, como o &man.ee.1;.</para>
<para>Para remover um usu<73>rio, use o comando
<command>rmuser</command>.</para>
</sect1>
<sect1 id="looking-around">
<title>Explorando</title>
<para>Ao entrar como um usu<73>rio comum, explore e tente
alguns comandos que ir<69>o acessar as fontes de ajuda e
informa<6D><61>o do FreeBSD.</para>
<para>Aqui est<73>o alguns comandos e o que eles fazem:</para>
<variablelist>
<varlistentry>
<term><command>id</command></term>
<listitem>
<para>Diz quem voc<6F> <20>!</para>
</listitem>
</varlistentry>
<varlistentry>
<term><command>pwd</command></term>
<listitem>
<para>Mostra onde voc<6F> est<73> &mdash; o
diret<65>rio corrente de trabalho</para>
</listitem>
</varlistentry>
<varlistentry>
<term><command>ls</command></term>
<listitem>
<para>Lista os arquivos no diret<65>rio corrente.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><command>ls <option>-F</option></command></term>
<listitem>
<para>Lista os arquivos no diret<65>rio corrente com um
<literal>*</literal> depois de arquivos
execut<75>veis, um <literal>/</literal> depois de
diret<65>rios, e um <literal>@</literal> depois de
<literal>links</literal> simb<6D>licos.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><command>ls <option>-l</option></command></term>
<listitem>
<para>Lista os arquivos com detalhes &mdash; tamanho, data,
e permiss<73>es.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><command>ls <option>-a</option></command></term>
<listitem>
<para>Lista os arquivos ocultos, que iniciam com
<quote>ponto</quote>, com os outros. Se voc<6F>
est<73> como <username>root</username>, os arquivos
ocultos, que iniciam com <quote>ponto</quote>, s<>o
mostrados sem a necessidade da op<6F><70>o
<option>-a</option>.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><command>cd</command></term>
<listitem>
<para>Muda o diret<65>rio corrente. <command>cd
<parameter>..</parameter></command> sobe um n<>vel
com rela<6C><61>o ao diret<65>rio atual; note
o espa<70>o depois do <command>cd</command>.
<command>cd <parameter>/usr/local</parameter></command>
entra no diret<65>rio especificado. <command>cd
<parameter>~</parameter></command> entra no
diret<65>rio <literal>home</literal> do usu<73>rio
logado &mdash; e.g., <filename>/usr/home/jack</filename>.
Tente <command>cd <parameter>/cdrom</parameter></command>,
e execute <command>ls</command>, para descobrir se seu
CDROM est<73> montado e funcionando.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><command>view
<replaceable>filename</replaceable></command></term>
<listitem>
<para>Permite que voc<6F> visualize um arquivo (chamado
<replaceable>filename</replaceable>) sem modificar
seu conte<74>do. Tente <command>view
<parameter>/etc/fstab</parameter></command>. Escreva
<command>:q</command> para sair.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><command>cat
<replaceable>filename</replaceable></command></term>
<listitem>
<para>Mostra o conte<74>do de
<replaceable>filename</replaceable> na tela. Se ele
<20> muito longo e voc<6F> s<> consegue ver o
final do arquivo, pressione <keycap>ScrollLock</keycap> e
use <keycap>up-arrow</keycap> para navegar at<61> o
topo do arquivo; voc<6F> pode usar
<keycap>ScrollLock</keycap> tamb<6D>m com
p<>ginas de manual. Pressione
<keycap>ScrollLock</keycap> novamente para interromper o
rolamento de conte<74>do. Voc<6F> pode querer
experimentar o <command>cat</command> em alguns arquivos
ocultos no seu diret<65>rio <literal>home</literal>
&mdash; <command>cat
<parameter>.cshrc</parameter></command>, <command>cat
<parameter>.login</parameter></command>, <command>cat
<parameter>.profile</parameter></command>.</para>
</listitem>
</varlistentry>
</variablelist>
<para>Voc<EFBFBD> vai encontrar <literal>aliases</literal> em seu
<filename>.cshrc</filename> para alguns comandos
<command>ls</command> (estes s<>o muito convenientes).
Voc<6F> pode criar outros <literal>aliases</literal>
editando <filename>.cshrc</filename>. Voc<6F> pode criar
<literal>aliases</literal> dispon<6F>veis para todos os
usu<73>rios colocando-os no arquivo de
configura<72><61>o principal do <command>csh</command>
o qual afeta todo o sistema, o
<filename>/etc/csh.cshrc</filename>.</para>
</sect1>
<sect1 id="getting-help">
<title>Obtendo Ajuda e Informa<6D><61>o</title>
<para>Aqui est<73>o algumas fontes de ajuda <20>teis.
<replaceable>Text</replaceable> representa um termo de sua
escolha, para o qual voc<6F> precisa de
informa<6D><61>o ou ajuda &mdash; usualmente um comando
ou arquivo.</para>
<variablelist>
<varlistentry>
<term><command>apropos
<replaceable>text</replaceable></command></term>
<listitem>
<para>Tudo que contiver o texto
<replaceable>text</replaceable> na <database>whatis
database</database>.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><command>man
<replaceable>text</replaceable></command></term>
<listitem>
<para>Exibe a p<>gina de manual do
<replaceable>text</replaceable>. A maior fonte de
documenta<74><61>o para sistemas &unix;.
<command>man <parameter>ls</parameter></command> vai lhe
mostrar todos os detalhes de como usar o comando
<command>ls</command>. Pressione <keycap>Enter</keycap>
para navegar atrav<61>s do texto,
<keycombo><keycap>Ctrl</keycap><keycap>B</keycap></keycombo>
para voltar uma p<>gina,
<keycombo><keycap>Ctrl</keycap><keycap>F</keycap></keycombo>
para avan<61>ar uma p<>gina,
<keycap>q</keycap> ou
<keycombo><keycap>Ctrl</keycap><keycap>C</keycap></keycombo>
para sair.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><command>which
<replaceable>text</replaceable></command></term>
<listitem>
<para>Informa onde, no <literal>path</literal> do
usu<73>rio, o comando <replaceable>text</replaceable>
<20> encontrado.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><command>locate
<replaceable>text</replaceable></command></term>
<listitem>
<para>Informa todos os caminhos onde o termo
<replaceable>text</replaceable> <20>
encontrado.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><command>whatis
<replaceable>text</replaceable></command></term>
<listitem>
<para>Informa o que o comando
<replaceable>text</replaceable> faz e qual sua
p<>gina de manual. Executar <command>whatis
*</command> vai lhe informar sobre todos os
bin<69>rios no diret<65>rio corrente.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><command>whereis
<replaceable>text</replaceable></command></term>
<listitem>
<para>Encontra o arquivo <replaceable>text</replaceable>,
informando seu caminho completo.</para>
</listitem>
</varlistentry>
</variablelist>
<para>Voc<EFBFBD> pode querer experimentar usar
<command>whatis</command> em alguns comandos comuns, como
<command>cat</command>, <command>more</command>,
<command>grep</command>, <command>mv</command>,
<command>find</command>, <command>tar</command>,
<command>chmod</command>, <command>chown</command>,
<command>date</command>, e <command>script</command>.
<command>more</command> permite que voc<6F> leia uma
p<>gina de cada vez, do mesmo modo como no DOS, e.g.,
<command>ls -l | more</command> ou <command>more
<replaceable>filename</replaceable></command>. O
<literal>*</literal> funciona como curinga &mdash; e.g.,
<command>ls w*</command> vai mostrar os arquivos que
come<6D>am com <literal>w</literal>.</para>
<para>Algum desses programas n<>o est<73> trabalhando
muito bem? Ambos, &man.locate.1; e &man.whatis.1;, dependem de
uma base de dados recompilada semanalmente. Se sua
m<>quina n<>o vai permanecer ligada (e rodando o
&os;) durante o final de semana, conv<6E>m executar
manualmente os comandos de manuten<65><6E>o
di<64>rios, semanais, e mensais de vez em quando.
Execute-os como <username>root</username> e,
por agora, d<> a cada um deles um tempo para finalizar
antes de voc<6F> iniciar o pr<70>ximo.</para>
<informalexample>
<screen>&prompt.root; <userinput>periodic daily</userinput>
<lineannotation>output omitted</lineannotation>
&prompt.root; <userinput>periodic weekly</userinput>
<lineannotation>output omitted</lineannotation>
&prompt.root; <userinput>periodic monthly</userinput>
<lineannotation>output omitted</lineannotation></screen>
</informalexample>
<para>Se voc<6F> cansar de esperar, pressione
<keycombo><keycap>Alt</keycap><keycap>F2</keycap></keycombo>
para acessar outro <firstterm>virtual console</firstterm>, e
entre no sistema novamente. Afinal, ele <20> um sistema
multiusu<73>rio e multitarefa. No entanto, <20>
prov<6F>vel que esses comandos exibam mensagens na sua tela
enquanto eles est<73>o rodando; voc<6F> pode executar
<command>clear</command> em seu <literal>prompt</literal> para
limpar a tela. Uma vez que eles tenham executado, voc<6F>
pode querer olhar em <filename>/var/mail/root</filename> e
<filename>/var/log/messages</filename>.</para>
<para>Executar tais comandos <20> parte da
administra<72><61>o do sistema &mdash; e como o
<20>nico usu<73>rio do sistema &unix;, voc<6F>
<20> seu pr<70>prio administrador de sistemas.
Praticamente tudo que voc<6F> precisa fazer como
<username>root</username> ser<65> para
administra<72><61>o de sistemas. Tais responsabilidades
n<>o s<>o muito bem exploradas, mesmo nos grossos
livros sobre &unix;, que parecem dedicar um grande espa<70>o
para op<6F><70>es de menus em gerenciadores de janelas.
Voc<6F> pode querer obter um dos dois livros principais sobre
administra<72><61>o de sistemas, ou Evi Nemeth et.al.'s
<citetitle>UNIX System Administration Handbook</citetitle>
(Prentice-Hall, 1995, ISBN 0-13-15051-7) &mdash; a segunda
edi<64><69>o da capa vermelha; ou &AElig;leen Frisch's
<citetitle>Essential System Administration</citetitle> (O'Reilly
&amp; Associates, 2002, ISBN 0-596-00343-9). Eu uso
Nemeth.</para>
</sect1>
<sect1 id="editing-text">
<title>Editando Texto</title>
<para>Para configurar seu sistema, voc<6F> precisar<61>
editar arquivos de texto. Muitos deles estar<61>o no
diret<65>rio <filename>/etc</filename>; e voc<6F>
precisar<61> do <command>su</command> para tornar-se
<username>root</username> e poder modific<69>-los.
Voc<6F> pode utilizar o <command>ee</command>, por ser
f<>cil de usar, mas <20> longo prazo vale a pena
aprender o editor de texto <command>vi</command>. Um excelente
tutorial sobre o <command>vi</command> pode ser encontrado em
<filename>/usr/src/contrib/nvi/docs/tutorial</filename>, se
voc<6F> tiver os fontes do sistema instalado.</para>
<para>Antes de editar um arquivo, voc<6F> provavelmente
deveria fazer um backup dele. Suponha que voc<6F> queira
editar o <filename>/etc/rc.conf</filename>. Voc<6F> pode
simplesmente usar <command>cd /etc</command> para ir at<61>
o diret<65>rio <filename>/etc</filename> e fazer:</para>
<informalexample>
<screen>&prompt.root; <userinput>cp rc.conf rc.conf.orig</userinput></screen>
</informalexample>
<para>Isso vai copiar o <filename>rc.conf</filename> para
<filename>rc.conf.orig</filename>, e depois voc<6F>
poder<65> copiar o <filename>rc.conf.orig</filename> para
<filename>rc.conf</filename> para recuperar o original. Mas o
melhor mesmo seria mover (renomear) e copiar novamente:</para>
<informalexample>
<screen>&prompt.root; <userinput>mv rc.conf rc.conf.orig</userinput>
&prompt.root; <userinput>cp rc.conf.orig rc.conf</userinput></screen>
</informalexample>
<para>pelo fato do comando <command>mv</command> preservar a data
e o dono originais do arquivo. Voc<6F> pode agora editar o
<filename>rc.conf</filename>. Se voc<6F> quiser o original
de volta, voc<6F> faria <userinput>mv rc.conf
rc.conf.myedit</userinput> (assumindo que voc<6F> queira
preservar a vers<72>o modificada) e ent<6E>o:</para>
<informalexample>
<screen>&prompt.root; <userinput>mv rc.conf.orig rc.conf</userinput></screen>
</informalexample>
<para>para voltar as coisas do jeito que estavam.</para>
<para>Para editar um arquivo, fa<66>a:</para>
<informalexample>
<screen>&prompt.root; <userinput>vi <replaceable>filename</replaceable></userinput></screen>
</informalexample>
<para>Mova-se atrav<61>s do texto com as setas do teclado.
<keycap>Esc</keycap> (a tecla de escape) coloca o
<command>vi</command> em modo de comando. Aqui est<73>o
alguns comandos:</para>
<variablelist>
<varlistentry>
<term><command>x</command></term>
<listitem>
<para>Remove o caractere onde est<73> o cursor</para>
</listitem>
</varlistentry>
<varlistentry>
<term><command>dd</command></term>
<listitem>
<para>remove a linha inteira (mesmo que ela quebre na
tela)</para>
</listitem>
</varlistentry>
<varlistentry>
<term><command>i</command></term>
<listitem>
<para>para inserir texto a partir do cursor</para>
</listitem>
</varlistentry>
<varlistentry>
<term><command>a</command></term>
<listitem>
<para>para inserir texto ap<61>s o cursor</para>
</listitem>
</varlistentry>
</variablelist>
<para>Uma vez que voc<6F> digite <command>i</command> ou
<command>a</command>, voc<6F> pode inserir o texto.
<command>Esc</command> coloca voc<6F> de volta no modo de
comando</para>
<variablelist>
<varlistentry>
<term><command>:w</command></term>
<listitem>
<para>para salvar suas modifica<63><61>es no disco
e continuar editando</para>
</listitem>
</varlistentry>
<varlistentry>
<term><command>:wq</command></term>
<listitem>
<para>para salvar as modifica<63><61>es e
sair</para>
</listitem>
</varlistentry>
<varlistentry>
<term><command>:q!</command></term>
<listitem>
<para>para sair sem salvar as
modifica<63><61>es</para>
</listitem>
</varlistentry>
<varlistentry>
<term><command>/<replaceable>text</replaceable></command></term>
<listitem>
<para>para mover o curso para
<replaceable>text</replaceable>;
<command>/<keycap>Enter</keycap></command> (a tecla enter)
para encontrar a pr<70>xima ocorr<72>ncia de
<replaceable>text</replaceable>.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><command>G</command></term>
<listitem>
<para>vai para o final do arquivo</para>
</listitem>
</varlistentry>
<varlistentry>
<term><command><replaceable>n</replaceable>G</command></term>
<listitem>
<para> vai para a linha <replaceable>n</replaceable> no
arquivo, onde <replaceable>n</replaceable> <20> o
n<>mero.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><keycombo><keycap>Ctrl</keycap><keycap>L</keycap></keycombo></term>
<listitem>
<para>para redesenhar a tela</para>
</listitem>
</varlistentry>
<varlistentry>
<term><keycombo><keycap>Ctrl</keycap><keycap>b</keycap></keycombo> e
<keycombo><keycap>Ctrl</keycap><keycap>f</keycap></keycombo></term>
<listitem>
<para>volta e avan<61>a na tela, respectivamente, assim
como fazem no <command>more</command> e
<command>view</command>.</para>
</listitem>
</varlistentry>
</variablelist>
<para>Pratique com o <command>vi</command> em seu diret<65>rio
<literal>home</literal>, criando um novo arquivo com <command>vi
<replaceable>filename</replaceable></command>, adicionando e
removendo texto, salvando o arquivo, e chamando-o de novo.
<command>vi</command> oferece muitas surpresas, pois ele
<20> realmente bastante complexo, e algumas vezes voc<6F>
vai inadvertidamente executar um comando que vai fazer alguma
coisa que voc<6F> n<>o espera. (Algumas pessoas
realmente gostam do <command>vi</command> &mdash; ele <20>
mais poderoso que o DOS EDIT &mdash; procure sobre o comando
<command>:r</command>.) Use <keycap>Esc</keycap> uma ou mais
vezes para estar seguro de que voc<6F> est<73> no modo de
comando e continuar a partir da<64> se voc<6F> tiver
problemas, salve frequentemente com <command>:w</command>, e use
<command>:q!</command> para sair e come<6D>ar novamente (a
partir do seu <20>ltimo <command>:w</command>) quando
voc<6F> precisar.</para>
<para>Agora voc<6F> pode entrar no diret<65>rio
<filename>/etc</filename> com o <command>cd</command>, usar o
<command>su</command> para tornar-se <username>root</username>,
usar o <command>vi</command> para editar o arquivo
<filename>/etc/group</filename>, e adicionar um usu<73>rio
no grupo <groupname>wheel</groupname> para que ele tenha
privil<69>gios de <username>root</username>. S<>
adicione uma v<>rgula e o <literal>login</literal> do
usu<73>rio no fim da primeira linha do arquivo, pressione
<keycap>Esc</keycap>, e use <command>:wq</command> para escrever
suas altera<72><61>es no disco e sair. Efeito
instant<6E>neo. (Voc<6F> n<>o colocou um
espa<70>o depois da v<>rgula, colocou?)</para>
</sect1>
<sect1 id="printing-files-from-dos">
<title>Imprimindo Arquivos no DOS</title>
<para>Neste ponto voc<6F> provavelmente n<>o tem uma
impressora funcionando, ent<6E>o aqui vai uma maneira de
criar um arquivo a partir de uma p<>gina de manual,
mov<6F>-lo para um disquete, e ent<6E>o imprimi-lo do
DOS. Suponhamos que voc<6F> queira ler cuidadosamente sobre
mudan<61>a de permiss<73>es em arquivos (muito
importante). Voc<6F> pode usar <command>man chmod</command>
para ler a respeito. O comando</para>
<informalexample>
<screen>&prompt.user; <userinput>man chmod | col -b &gt; chmod.txt</userinput></screen>
</informalexample>
<para>ir<EFBFBD> remover c<>digos de
formata<74><61>o e enviar a p<>gina de manual para
o arquivo <filename>chmod.txt</filename> em vez de
mostr<74>-lo na tela. Agora coloque um disquete formatado
no DOS em seu drive de disquete <devicename>a</devicename>, use
o <command>su</command> para tornar-se
<username>root</username>, e escreva</para>
<informalexample>
<screen>&prompt.root; <userinput>/sbin/mount -t msdosfs /dev/fd0 /mnt</userinput></screen>
</informalexample>
<para>para montar o drive de disquete em
<filename>/mnt</filename>.</para>
<para>Agora (voc<6F> n<>o precisa mais estar como
<username>root</username>, e voc<6F> pode executar
<command>exit</command> para voltar para o usu<73>rio
inicial <username>jack</username>) voc<6F> pode ir at<61>
o diret<65>rio onde voc<6F> criou o
<filename>chmod.txt</filename> e copiar o arquivo para o
disquete com:</para>
<informalexample>
<screen>&prompt.user; <userinput>cp chmod.txt /mnt</userinput></screen>
</informalexample>
<para>e usar <command>ls /mnt</command> para obter a listagem do
diret<65>rio <filename>/mnt</filename>, que deveria mostrar
o arquivo <filename>chmod.txt</filename>.</para>
<para>Voc<EFBFBD> pode querer criar um arquivo a partir do
<filename>/sbin/dmesg</filename> executando:</para>
<informalexample>
<screen>&prompt.user; <userinput>/sbin/dmesg &gt; dmesg.txt</userinput></screen>
</informalexample>
<para>e copiar o <filename>dmesg.txt</filename> para o disquete.
<command>/sbin/dmesg</command> <20> o registro das
mensagens de <literal>boot</literal>, e ele <20> <20>til
para entender o que o FreeBSD encontra durante a
inicializa<7A><61>o. Se voc<6F> enviar perguntas
para a &a.questions; ou para o grupo da USENET &mdash; como
<quote>O FreeBSD n<>o encontra a minha unidade de fita, o
que eu fa<66>o?</quote> &mdash; as pessoas v<>o querer
saber o que o <command>dmesg</command> diz.</para>
<para>Voc<EFBFBD> pode desmontar o drive de disquete agora (como
<username>root</username>) para retir<69>-lo com:</para>
<informalexample>
<screen>&prompt.root; <userinput>/sbin/umount /mnt</userinput></screen>
</informalexample>
<para>e reiniciar para ir para o DOS. Copie os arquivos para um
diret<65>rio do DOS, chame-os com o DOS EDIT, &windows;
Notepad ou Wordpad, ou algum outro processador de texto,
fa<66>a uma pequena altera<72><61>o para o arquivo
ser salvo, e imprima como voc<6F> normalmente faz a partir do
DOS ou Windows. Espero que funcione! P<>ginas de manual
saem melhor se impressas com o comando <command>print</command>
do DOS. (Copiar arquivos do FreeBSD para uma
parti<74><69>o DOS montada ainda <20>, em alguns
casos, um pouco arriscado.)</para>
<para>Obter uma impressora imprimindo do FreeBSD envolve criar uma
entrada apropriada em <filename>/etc/printcap</filename> e criar
um diret<65>rio de <literal>spool</literal> correspondente
em <filename>/var/spool/output</filename>. Se sua impressora
est<73> na <hardware>lpt0</hardware> (nos DOS <20>
chamada de <hardware>LPT1</hardware>), voc<6F> s<>
precisa ir para <filename>/var/spool/output</filename> e (como
<username>root</username>) criar o diret<65>rio
<filename>lpd</filename> executando: <command>mkdir
lpd</command>, se ele ainda n<>o existe. Em seguida, a
impressora deve responder se ela estiver ligada durante a
inicializa<7A><61>o, e <command>lp</command> ou
<command>lpr</command> deve enviar um arquivo para a impressora.
Se o arquivo vai ser impresso ou n<>o, depende da
configura<72><61>o, esta <20> coberta no <ulink
url="&url.books.handbook;/index.html">FreeBSD
handbook.</ulink></para>
</sect1>
<sect1 id="other-useful-commands">
<title>Outros comando <20>teis</title>
<variablelist>
<varlistentry>
<term><command>df</command></term>
<listitem>
<para>mostra os dispositivos montados e o espa<70>o em
disco.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><command>ps aux</command></term>
<listitem>
<para>mostra os processos rodando. <command>ps ax</command>
exibe uma lista compacta.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><command>rm <replaceable>filename</replaceable></command></term>
<listitem>
<para>exclui o arquivo
<replaceable>filename</replaceable>.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><command>rm -R <replaceable>dir</replaceable></command></term>
<listitem>
<para>remove o diret<65>rio
<replaceable>dir</replaceable> e todos os seus
subdiret<65>rios &mdash; seja cuidadoso!</para>
</listitem>
</varlistentry>
<varlistentry>
<term><command>ls -R</command></term>
<listitem>
<para>lista os arquivos no diret<65>rio corrente e
todos os subdiret<65>rios; eu usei uma variante,
<command>ls -AFR &gt; where.txt</command>, para obter uma
lista de todos os arquivos de <filename>/</filename> e
(separadamente) <filename>/usr</filename>, antes de
descobrir um jeito melhor de encontrar arquivos.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><command>passwd</command></term>
<listitem>
<para>para mudar a senha do usu<73>rio (ou a senha do
<username>root</username>)</para>
</listitem>
</varlistentry>
<varlistentry>
<term><command>man hier</command></term>
<listitem>
<para>exibe a p<>gina de manual sobre o sistema de
arquivos do &unix;</para>
</listitem>
</varlistentry>
</variablelist>
<para>Use <command>find</command> para localizar
<filename>filename</filename> em <filename>/usr</filename>, ou
qualquer de seus subdiret<65>rios, com</para>
<informalexample>
<screen>&prompt.user; <userinput>find /usr -name "<replaceable>filename</replaceable>"</userinput></screen>
</informalexample>
<para>Voc<EFBFBD> pode usar <literal>*</literal> como curinga em
<parameter>"<replaceable>filename</replaceable>"</parameter>
(que deve estar entre aspas). Se voc<6F> diz para
<command>find</command> procurar em <filename>/</filename>, em
vez de <filename>/usr</filename>, ele vai procurar o arquivo em
todos os dispositivos montados, incluindo CDROM e as
parti<74><69>es DOS.</para>
<para>Um excelente livro que explica os comandos e
utilit<69>rios &unix; <20> Abrahams &amp; Larson,
<citetitle>Unix for the Impatient</citetitle> (2nd ed.,
Addison-Wesley, 1996). Existe tamb<6D>m uma grande
quantidade de informa<6D><61>es sobre &unix; na
Internet.</para>
</sect1>
<sect1 id="next-steps">
<title>Pr<EFBFBD>ximos Passos</title>
<para>Agora voc<6F> deve ter as ferramentas que voc<6F>
precisa para explorar e editar arquivos, ent<6E>o voc<6F>
pode ter tudo ligado e funcionando. Existe uma grande
quantidade de informa<6D><61>es no FreeBSD handbook (que
provavelmente est<73> em seu disco r<>gido) e no
<ulink url="&url.base;/index.html">web site do FreeBSD</ulink>.
Uma grande variedade de pacotes e <literal>ports</literal>
est<73>o dispon<6F>vel no CDROM, bem como no site web.
O handbook diz mais sobre como us<75>-los (obter um pacote,
se ele existir, com <command>pkg_add
/cdrom/packages/All/<replaceable>nomepacote</replaceable></command>,
onde <replaceable>nomepacote</replaceable> <20> o nome do
pacote). O CDROM tem uma lista dos pacotes e
<literal>ports</literal> com uma breve descri<72><69>o
em <filename>cdrom/packages/index</filename>,
<filename>cdrom/packages/index.txt</filename>, e
<filename>cdrom/ports/index</filename>, com as
descri<72><69>es completas em
<filename>/cdrom/ports/*/*/pkg/DESCR</filename>, onde os
<literal>*</literal> representam subdiret<65>rios das
categorias e dos nomes dos programas, respectivamente.</para>
<para>Se voc<6F> achar o handbook muito sofisticado (com
<command>lndir</command> e tudo) sobre a
instala<6C><61>o de <literal>ports</literal> a partir do
CDROM, aqui est<73> o que normalmente funciona:</para>
<para>Encontre o <literal>port</literal> que voc<6F> quer,
digamos que seja o <command>kermit</command>. Haver<65> um
diret<65>rio para ele no CDROM. Copie o subdiret<65>rio
para <filename>/usr/local</filename> (um bom lugar para
adicionar programas que estar<61>o dispon<6F>veis para
todos os usu<73>rios) com:</para>
<informalexample>
<screen>&prompt.root; <userinput>cp -R /cdrom/ports/comm/kermit /usr/local</userinput></screen>
</informalexample>
<para>Isso deve resultar em um subdiret<65>rio
<filename>/usr/local/kermit</filename> onde estar<61>o
todos os arquivos do subdiret<65>rio
<command>kermit</command> do CDROM.</para>
<para>Em seguida, crie o diret<65>rio
<filename>/usr/ports/distfiles</filename>, se ele ainda
n<>o existe, usando <command>mkdir</command>. Agora
verifique em <filename>/cdrom/ports/distfiles</filename> por um
arquivo com o nome que indique o <literal>port</literal> que
voc<6F> quer. Copie o arquivo para
<filename>/usr/ports/distfiles</filename>; nas vers<72>es
recentes voc<6F> pode pular este passo, o FreeBSD vai fazer
isso por voc<6F>. No caso do <command>kermit</command>
n<>o existe <literal>distfile</literal>.</para>
<para>V<EFBFBD> at<61> o subdiret<65>rio
<filename>/usr/local/kermit</filename>, onde estar<61> o
arquivo <filename>Makefile</filename>. E execute</para>
<informalexample>
<screen>&prompt.root; <userinput>make all install</userinput></screen>
</informalexample>
<para>Durante este processo o <literal>port</literal> vai obter
a partir do FTP quaisquer arquivos compactados que sejam
necess<73>rios e n<>o estejam presentes no CDROM ou em
<filename>/usr/ports/distfiles</filename>. Se sua rede ainda
n<>o est<73> funcionando e n<>o existe arquivo
para o <literal>port</literal> em
<filename>/cdrom/ports/distfiles</filename>, voc<6F> vai
precisar obter este arquivo de outra m<>quina e
copi<70>-lo para <filename>/usr/ports/distfiles</filename>
de um disquete ou de sua parti<74><69>o DOS. Leia o
<filename>Makefile</filename> (com o <command>cat</command>, ou
<command>more</command>, ou <command>view</command>) para
descobrir aonde ir (o site de distribui<75><69>o
principal) para obter o arquivo e qual o seu nome. O nome do
arquivo ser<65> truncado se ele for obtido a partir do DOS,
e depois de coloc<6F>-lo em
<filename>/usr/ports/distfiles</filename> voc<6F> precisa
renomear o arquivo (com o comando <command>mv</command>) para
seu nome original para que ele possa ser encontrado. (Use o
modo de transfer<65>ncia bin<69>ria!) Ent<6E>o volte
para <filename>/usr/local/kermit</filename>, encontre o
diret<65>rio com o <filename>Makefile</filename>, e execute
<command>make all install</command>.</para>
<para>Outra coisa que pode acontecer quando da
instala<6C><61>o de um <literal>port</literal> ou pacote
<20> que algum outro programa seja necess<73>rio. Se a
instala<6C><61>o parar com uma mensagem <errorname>can't
find unzip</errorname> ou algo parecido, voc<6F> pode
precisar instalar o pacote ou <literal>port</literal> do unzip
antes de continuar.</para>
<para>Uma vez instalado, execute <command>rehash</command> para
fazer o FreeBSD reler os arquivos no <literal>path</literal>,
ent<6E>o ele saber<65> o que existe l<>. (Se
voc<6F> obter uma s<>rie de mensagens <errorname>path
not found</errorname> quando usar <command>whereis</command> ou
<command>which</command>, voc<6F> pode querer adicionar
entradas para a lista de diret<65>rios na
declara<72><61>o do <literal>path</literal> no
<filename>.cshrc</filename> em seu diret<65>rio
<literal>home</literal>. A declara<72><61>o do
<literal>path</literal> no &unix; funciona do mesmo modo que no
DOS, exceto pelo diret<65>rio corrente que n<>o
<20> (por padr<64>o) inclu<6C>do no
<literal>path</literal> por raz<61>es de seguran<61>a;
voc<6F> precisa digitar <filename>./</filename> antes do
comando para executa-lo; sem espa<70>os depois da
barra.</para>
<para>Voc<EFBFBD> pode querer obter a vers<72>o mais recente
do &netscape; a partir de seu <ulink
url="ftp://ftp.netscape.com/">site FTP</ulink>. (O &netscape;
requer o <literal>X Window System</literal>.) Agora existe uma
vers<72>o para o &os;, ent<6E>o explore com
cuidado. Basta usar o <command>gunzip
<replaceable>filename</replaceable></command> e <command>tar xvf
<replaceable>filename</replaceable></command> no arquivo, mover
o bin<69>rio para <filename>/usr/local/bin</filename> ou
algum outro lugar onde os bin<69>rios s<>o mantidos,
execute <command>rehash</command>, e ent<6E>o coloque as
seguintes linhas no <filename>.cshrc</filename> de cada
diret<65>rio <literal>home</literal> dos usu<73>rios ou
(mais f<>cil) em <filename>/etc/csh.cshrc</filename>, o
arquivo de configura<72><61>o principal de
inicializa<7A><61>o do <command>csh</command>:</para>
<informalexample>
<programlisting>setenv XKEYSYMDB /usr/X11R6/lib/X11/XKeysymDB
setenv XNLSPATH /usr/X11R6/lib/X11/nls</programlisting>
</informalexample>
<para>Isso assume que o arquivo <filename>XKeysymDB</filename> e o
diret<65>rio <filename>nls</filename> est<73>o em
<filename>/usr/X11R6/lib/X11</filename>; se eles n<>o
estiverem, encontre-os e coloque-os l<>.</para>
<para>Se voc<6F> instalou o &netscape; originalmente a partir
de um <literal>port</literal> usando o CDROM (ou o site FTP),
n<>o substitua o
<filename>/usr/local/bin/netscape</filename> com o novo
bin<69>rio do &netscape;; isso <20> s<> um
<literal>shell script</literal> que define as vari<72>veis
de ambiente para voc<6F>. Em vez disso, renomeie o novo
bin<69>rio para <filename>netscape.bin</filename>
e mova o bin<69>rio antigo
para <filename>/usr/local/netscape/netscape</filename>.</para>
</sect1>
<sect1 id="your-working-environment">
<title>Seu Ambiente de Trabalho</title>
<para>Seu <literal>shell</literal> <20> uma parte muito
importante do seu ambiente de trabalho. No DOS, o
<literal>shell</literal> usual <20> o
<literal>command.com</literal>. O <literal>shell</literal>
<20> quem interpreta os comandos que voc<6F> executa na
linha de comando, e, portanto, se comunica com o resto do
sistema operacional. Voc<6F> tamb<6D>m pode escrever
<literal>shell scripts</literal>, que s<>o como arquivos
de lotes do DOS: uma s<>rie de comando para serem
executados sem sua interven<65><6E>o.</para>
<para>O FreeBSD vem com dois <literal>shells</literal> instalados:
<command>csh</command> e <command>sh</command>.
<command>csh</command> <20> bom para trabalhar com a linha
de comando, mas <literal>scripts</literal> devem ser escritos
com <command>sh</command> (ou <command>bash</command>).
Voc<6F> pode descobrir qual <literal>shell</literal>
voc<6F> est<73> utilizando executando <command>echo
$SHELL</command>.</para>
<para>O <literal>shell</literal> <command>csh</command> <20>
bom, mas <command>tcsh</command> faz tudo que o
<command>csh</command> faz e mais. Ele aceita que voc<6F>
chame novamente os comandos, com as setas do teclado, e
edite-os. Ele completa nomes de arquivos atrav<61>s da
tecla TAB (<command>csh</command> usa a tecla
<keycap>Esc</keycap>), e ele permite que voc<6F> mude para
seu <20>ltimo diret<65>rio com <command>cd -</command>.
<20> muito f<>cil alternar seu
<literal>prompt</literal> com <command>tcsh</command>. Ele
torna sua vida muito f<>cil.</para>
<para>Aqui est<73>o os passos para a instala<6C><61>o
de um novo <literal>shell</literal>:</para>
<procedure>
<step>
<para>Instale o <literal>shell</literal> a partir de um
<literal>port</literal> ou pacote, como voc<6F> faria
para qualquer outro <literal>port</literal> ou pacote. Use
<command>rehash</command> e <command>which tcsh</command>
(assumindo que voc<6F> instalou o
<command>tcsh</command>) para ter certeza que ele foi
instalado.</para>
</step>
<step>
<para>Como <username>root</username>, edite o
<filename>/etc/shells</filename>, adicionando uma linha no
arquivo para o novo <literal>shell</literal>, nesse caso
<filename>/usr/local/bin/tcsh</filename>, e salve o arquivo.
(Alguns <literal>ports</literal> v<>o fazer isso por
voc<6F>.)</para>
</step>
<step>
<para>Use o comando <command>chsh</command> para mudar seu
<literal>shell</literal> para o <command>tcsh</command>
permanentemente, ou execute <command>tcsh</command> no
<literal>prompt</literal> para mudar seu
<literal>shell</literal> sem precisar realizar o
<literal>login</literal> novamente.</para>
</step>
</procedure>
<note>
<para>Pode ser perigoso mudar o <literal>shell</literal> do
<username>root</username> para qualquer coisa diferente de
<command>sh</command> ou <command>csh</command> nas
vers<72>es anteriores do FreeBSD e em muitas outras
vers<72>es do &unix;; voc<6F> pode n<>o ter um
<literal>shell</literal> funcional quando o sistema colocar
voc<6F> em modo monousu<73>rio. A
solu<6C><75>o <20> usar
<command>su -m</command> para tornar-se
<username>root</username>, o que lhe dar<61> o
<command>tcsh</command> como <username>root</username>, pois
o <literal>shell</literal> <20> parte do seu ambiente.
Voc<6F> pode tornar isso permanente adicionando para seu
arquivo <filename>.tcshrc</filename> um
<literal>alias</literal> com:</para>
<programlisting>alias su su -m</programlisting>
</note>
<para>Quando <command>tcsh</command> inicia, ele l<> os
arquivos <filename>/etc/csh.cshrc</filename> e
<filename>/etc/csh.login</filename>, assim como o
<command>csh</command>. Ele tamb<6D>m ir<69> ler o
arquivo <filename>.login</filename> em seu diret<65>rio
<literal>home</literal> e o arquivo <filename>.cshrc</filename>,
a menos que voc<6F> providencie um arquivo
<filename>.tcshrc</filename>. Para isso voc<6F> pode
simplesmente copiar o <filename>.cshrc</filename> para
<filename>.tcshrc</filename>.</para>
<para>Agora que voc<6F> j<> instalou o
<command>tcsh</command>, voc<6F> pode ajustar o seu
<literal>prompt</literal>. Voc<6F> encontra os detalhes na
p<>gina de manual do <command>tcsh</command>, mas aqui
est<73> uma linha para voc<6F> incluir em seu
<filename>.tcshrc</filename> que vai lhe dizer quantos comandos
voc<6F> digitou, que horas s<>o, e em que
diret<65>rio voc<6F> se encontra. Ele tamb<6D>m
mostra um <literal>></literal> se voc<6F> est<73> como um
usu<73>rio comum e um <literal>#</literal> se voc<6F>
est<73> como <username>root</username>, mas
<command>tcsh</command> vai fazer isso em qualquer caso:</para>
<para>set prompt = "%h %t %~ %# "</para>
<para>Isso deve ser inclu<6C>do no mesmo lugar do <literal>set
prompt</literal> existente, ou sob <literal>"if($?prompt)
then"</literal> se este n<>o existir. Comente a linha
antiga; voc<6F> poder<65> voltar para o
<literal>prompt</literal> antigo se preferir. N<>o
esque<75>a o espa<70>o e as aspas. Voc<6F> pode
recarregar o <filename>.tcshrc</filename> executando
<command>source .tcshrc</command>.</para>
<para>Voc<EFBFBD> pode obter uma lista de outras vari<72>veis
de ambiente que foram definidas executando
<command>env</command> no <literal>prompt</literal>. O
resultado vai lhe mostrar seu editor padr<64>o, paginador, e
o tipo de terminal, e possivelmente muitos outros. Um comando
<20>til se voc<6F> est<73> logado remotamente e
n<>o pode executar um programa, pois o terminal n<>o
<20> compat<61>vel, <20> <command>setenv TERM
vt100</command>.</para>
</sect1>
<sect1 id="other">
<title>Outros</title>
<para>Como <username>root</username> voc<6F> pode desmontar
o CDROM com <command>/sbin/umount /cdrom</command>,
retir<69>-lo do <literal>drive</literal>, inserir outro,
e mont<6E>-lo com<command>/sbin/mount_cd9660 /dev/cd0a
/cdrom</command>,assumindo que <hardware>cd0a</hardware>
<20> o nome do seu dispositivo de CDROM. As vers<72>es
mais recentes do FreeBSD deixam voc<6F> montar o CDROM apenas
com <command>/sbin/mount /cdrom</command>.</para>
<para>Usar o sistema de arquivos <literal>live</literal> &mdash;
o segundo dos discos de CDROM do FreeBSD &mdash; <20>
<20>til se voc<6F> tem um espa<70>o limitado. O
conte<74>do do sistema de arquivos <literal>live</literal>
varia de vers<72>o para vers<72>o. Voc<6F> pode
tentar jogar a partir do CDROM. Isso envolve o uso do
<command>lndir</command>, que <20> instalado com o
<literal>X Window System</literal>, para informar aos programas
onde encontrar os arquivos necess<73>rios, pois eles
est<73>o no sistema de arquivos de
<filename>/cdrom</filename>, em vez de <filename>/usr</filename>
e seus subdiret<65>rios, que <20> o local onde eles
esperam estar. Consulte <command>man lndir</command>.</para>
</sect1>
<sect1 id="comments-welcome">
<title>Coment<EFBFBD>rios S<>o Bem-vindos</title>
<para>Se voc<6F> usou este guia, eu estou interessado em
saber onde ele n<>o est<73> claro, o que foi deixado
de fora que voc<6F> acha que deve ser inclu<6C>do, e se
ele foi <20>til. Meus agradecimentos para Eugene W. Stark,
professor de ci<63>ncia da computa<74><61>o em
SUNY-Stony Brook, e John Fieber pelos coment<6E>rios
<20>teis.</para>
<para>Annelise Anderson,
<email>andrsn@andrsn.stanford.edu</email></para>
</sect1>
</article>