\documentclass[12pt]{article}
\usepackage[brazil]{babel}
\usepackage[latin1]{inputenc}
\usepackage{indentfirst}
%\usepackage{subfigure}
\usepackage{graphicx}

\begin{document}
\title{Curso de Linux 2007 - Módulo Básico}
\author{César Gamboa Machado \and Lucas Piva Rocha Corrêa \and Lucas Mendes Marques Gonçalves}
\date{\today}
\maketitle

\tableofcontents
\newpage

\part{Linux???} \label{linux}
\section{GNU/Linux} \label{gnu}
Linux é um sistema operacional baseado no Unix, e é um dos exemplos mais famosos de software livre. Seu código fonte está disponivel sob GPL (GNU General Public License) para qualquer pessoa usar, modificar e redistribuir gratuitamente.\\
GNU/Linux se refere a um Sistema Operacional do tipo Unix com núcleo Linux e com os programas de sistema GNU (GNU is Not Unix). Como os casos de sistemas de núcleo Linux sem os programas de sistema GNU são raros, freqüentemente GNU/Linux e Linux são sinônimos.\\
%Figuras Tux e logo_GNU
\begin{figure}[htb] % Duas figuras lado a lado
	\begin{minipage}[b]{0.4 \linewidth}
		\includegraphics[width=0.8 \linewidth]{tux}\\
		\label{figura:tux}
		\caption{\it Tux, o mascote oficial do Linux}
	\end{minipage}\hfill
	\begin{minipage}[b]{0.4 \linewidth}
		\includegraphics[width=0.8\linewidth]{gnu}\\
		\label{figura:gnu}
		\caption{\it Logotipo do GNU}
	\end{minipage}
\end{figure}
\subsection{As quatro liberdades}\label{liberdades}
No início da década de 80, Richard Stallman formalizou a idéia de Software Livre em quatro liberdades:
\begin{enumerate}
\item A liberdade de executar o software para qualquer uso.
\item A liberdade de estudar o funcionamento do software e adaptá-lo às suas necessidades.
\item A liberdade de redistribuir cópias do software.
\item A liberdade de melhorar o programa e tornar as modificações públicas para que a comunidade inteira se beneficie da melhoria.
\end{enumerate}
\part{Desktop Gnome}\label{gnome}
Ao contrário do Windows, no Linux há uma separação entre o Sistema Operacional e o ambiente gráfico. Assim, o Linux pode ser usado diretamente pelo modo texto ou através de vários ambientes gráficos diferentes. Destes, se destacam o GNOME e o KDE. Na Rede Linux o padrão é o GNOME, e é sobre ele que esta seção irá tratar.
\section{O Desktop}\label{desktop}
\begin{figure}[htb]
\center
\includegraphics[width=0.6\linewidth]{DesktopGnome}\\
\label{figura:desktop}
\caption{\it Desktop do GNOME}
\end{figure}
O Desktop do GNOME \textit{(ver fig. \ref{figura:desktop})} é composto de duas barras de tarefas e da área de trabalho.\\
As barras se assemelham à barra de tarefas do Windows. A barra superior é utilizada para abrir programas (Menu Aplicações), acessar diretórios ou arquivos recentes (Menu Locais), travar a tela, deslogar, etc (Menu Ações). A barra inferior mostra os programas abertos.
A área de trabalho também funciona como no Windows. Ela mostra o conteúdo da sua pasta Desktop, além de ícones para sua pasta pessoal e lixeira.
\section{Comparação entre programas Linux/Windows}\label{linuxwindows}
Esta seção serve como um guia rápido entre os programas mais comuns no Windows e alternativas do Linux:\\
\\
\begin{tabular}{cc}
\textbf{Internet}	& \textit{Aplicações/Internet}\\
Internet Explorer	& Iceweasel\\
MSN					& Gaim\\
\textbf{Documentos} &\textit{Aplicações/Escritório}\\
Excel				& OpenOffice Calc\\
Power Point			& OpenOffice Impress\\
Word				& OpenOffice Writer\\
\textbf{Acessórios} &\textit{Aplicações/Acessórios}\\
Calculadora			& Calculadora\\
Bloco de Notas		& Editor de Texto (GEdit)
\end{tabular}\\
\\
\section{Gravando CDs}\label{cds}
É possível gravar CDs na Rede Linux. Para isso, abra \textit{Locais/Gravador de CD/DVD} e arraste os arquivos desejados para a janela que irá se abrir. Quando acabar, coloque um CD virgem no gravador e clique em Gravar.
\section{USB}\label{usb}
PenDrives podem ser utilizados na Rede Linux. As máquinas já estão configuradas para montar o PenDrive automaticamente no diretório \textit{/usb/}.\\
%Colocar uma imagem de atenção?
\textbf{IMPORTANTE:} Não esqueça de desmontar o seu pendrive antes de tirá-lo do computador! (Para isso clique com o botão direito no ícone do usb no seu Desktop e clique em Desmontar Volume)
O não desmontamento do drive usb pode causar perda de dados no seu PenDrive.
\section{Webmail}\label{mail}
Todos os usuários da rede tem direito a um e-mail com o endereço seulogin@linux.ime.usp.br\\
Para acessá-lo, (pode ser de fora da Rede) entre em webmail.linux.ime.usp.br\\
Se você desejar, você pode redirecionar seus e-mails da Rede Linux para um outro e-mail. Para isso abra um terminal (se não souber como, veja a Parte \ref{terminal}), digite o comando \textit{redireciona} e siga as instruções.\\
\section{Site Pessoal}\label{www}
Os usuários também tem direito a um Site Pessoal, em www.linux.ime.usp.br/~login\\
Para editar seu site, simplesmente entre na sua pasta www (~/www/) e coloque arquivos lá. Se você entende de html, edite o arquivo index.html padrão que já existe e crie mais à sua escolha.\\
O conteúdo da pasta www fica visível de qualquer computador com internet através do endereço citado acima.\\
\part{O Terminal}\label{terminal}
Como foi dito anteriormente, além dos ambientes gráficos, o Linux tem um modo texto, comum a todas as versões. Este pode ser acessado de duas maneiras: através do modo texto ``real'', pressionando Ctrl+Alt+F1 (Para voltar ao modo gráfico pressione Ctrl+Alt+F7 (ou F8)) e o terminal, que é acessado pelo modo gráfico (\textit{Aplicações/Acessórios/Terminal}).\\
É muito importante ter pelo menos noções básicas de terminal, uma vez que alguns programas, como compiladores, por exemplo, rodam apenas por ele, e além disso, o modo texto é muito útil para resolver problemas.\\
A seguir vamos descrever alguns dos conceitos básicos do terminal. Há um guia rápido de comandos na seção \ref{termbasico}.
\section{Diretórios e Arquivos}\label{dir}
Quando um comando pede um diretório como parâmetro, você pode defini-lo de dois jeitos: pelo caminho absoluto (começando com / ou ~) ou pelo caminho relativo.\\
Ex: Suponha que você está na sua home (/home/curso/login) e quer entrar no seu private. Você pode usar tanto o comando ``cd /home/curso/login/private'' quanto ``cd private''. O primeiro funcionará de qualquer diretório que você estiver, enquanto o segundo só funcionará de dentro da sua home.\\
Além disso, você pode usar o caractere ~ para substituir o endereço do seu home. No mesmo exemplo que o anterior, você poderia usar o comando ``cd ~/private'' de qualquer diretório.\\
Quando estiver trabalhando com caminhos relativos, você pode usar a expressão ``..'' para ir para o diretório acima. (para ir do private para o www, use ``cd ../www'').\\
Finalmente, a expressão ``.'' serve para indicar o diretório atual. Se você está no bin e quer copiar um arquivo do seu private, use o comando ``cp ../private/arquivo .''\\
Como pode-se perceber pelo exemplo anterior, estas regras também podem ser usadas para arquivos.\\
\section{Guia de comandos básicos}\label{termbasico}
\begin{tabular}{cl}
cd \bf{dir}		& Vai para o diretório \bf{dir}\\
ls				& Lista o que há no diretório atual\\
pwd				& Mostra qual é o diretório atual\\
cp \bf{a b}		& Copia \bf{a} para \bf{b}\\
mv \bf{a b}		& Move \bf{a} para \bf{b}\\
rm \bf{arq}		& Remove o arquivo (para diretórios usar a opção -rf)\\
mkdir \bf{nome}	& Cria um novo diretório\\
clear			& Limpa a tela\\
man \bf{comando}& Dá informações sobre o comando (para sair, digite q)\\
exit			& No terminal, fecha o terminal. No modo texto, desloga\\
\end{tabular}
\subsection{Comandos da Rede Linux}\label{termrede}
\begin{tabular}{cl}
quota			& Mostra a sua quota de espaço em disco\\
quotap			& Mostra a sua quota de impressão\\
quotause		& Mostra quais pastas/diretórios ocupam espaço\\
cleanwizard		& Apaga arquivos temporários\\
monta-usb		& Monta PenDrive\\
desmonta-usb	& Desmonta PenDrive\\
delparent		& Apaga o lock do Iceweasel\\
livres			& Mostra os computadores que não estão em uso\\
\end{tabular}{cl}
\section{A Organização da pasta home}\label{home}
Cada usuário tem um diretório conhecido como home. Seu ``endereço'' é \textit{/home/curso/login/}\\
Você pode organizar o sua pasta como quiser, mas existem alguns diretórios padrões.\\
\begin{itemize}
\item \textbf{bin/} - Nessa pasta você pode guardar seus arquivos executáveis. Se um programa executável estiver aí dentro, você pode chamá-lo de qualquer lugar apenas pelo nome.
\item \textbf{Desktop/} - É a sua área de trabalho, aquela que aparece ao você abrir o Gnome.
\item \textbf{Maildir/} - Onde ficam guardados seus e-mails e as configurações de e-mails. Não apague esta pasta ou seu e-mail pode ser desconfigurado.
\item \textbf{private/} - Só você consegue ver o que está aí dentro. Ou seja, é aí que você deve guardar seus trabalhos, etc.
\item \textbf{www/} - Sua página da Internet. O que está nessa pasta pode ser acessado através do endereço \textit{http://www.linux.ime.usp.br/~login}. (Ver seção \ref{www}).
\end{itemize}
\textbf{Obs:} Arquivos ou diretórios que começam com '.' (ex: .bashrc .mozilla/) são arquivos ocultos, e normalmente são arquivos de configuração. Em geral, não mexa neles se não souber o que está fazendo.
\section{Usando o ssh}\label{ssh}
Uma das vantagens do Linux é a possibilidade de logar na rede remotamente a partir de qualquer computador conectado à Internet. Isso é feito através do protocolo SSH (Secure Shell).\\
Todas as conexões de fora caem na máquina easteregg. De lá você pode logar em outras máquinas via ssh.\\
Para acessar a Rede Linux de fora usando ssh use o comando\\
\textbf{ssh seulogin@shell.linux.ime.usp.br} \\
De dentro da rede você pode logar em outra máquina através de\\
\textbf{ssh nomedamaquina} \\
Em ambos os casos será pedida sua senha da Rede Linux.\\
Para copiar arquivos da Rede Linux para sua casa, utilize\\
\textbf{scp seulogin@shell.linux.ime.usp.br:caminho/para/arquivo .}\\
onde o caminho para o arquivo é relativo à sua home.
Para copiar algo da sua casa para a Rede Linux\\
\textbf{scp caminho/para/arquivo seulogin@shell.linux.ime.usp.br:}
\part{Resolvendo problemas}\label{problemas}
\section{Problemas comuns}\label{faq}
\begin{itemize}
\item \textbf{Gnome não abre} - Provavelmente é quota \textit{ver seção \ref{quota}}
\item \textbf{Firefox/Iceweasel não abre} - \textit{ver seção \ref{delparent}}
\item Webmail não abre - Quota (\textit{seção \ref{quota}}) ou arquivos apagados (\textit{seção \ref{arquivos}})
\item Apaguei tudo... - \textit{ver seção \ref{arquivos}}
\item TRAVOU!!! - \textit{ver seção \ref{travou}}
\end{itemize}
\section{Quota cheia}\label{quota}
Caso sua quota em disco esteja lotada, você pode ter problemas ao logar no modo gráfico (o GNOME travar na tela de carregamento) e no webmail (de não receber e-mails a não conseguir acessar a conta).\\
Para verificar sua quota, digite no terminal o comando \textbf{quota}.\\
Dois comandos úteis para liberar sua quota são o cleanwizard e o quotause.\\
O cleanwizard procura por arquivos temporários, como o cache de alguns navegadores, e se oferece para apagá-los. Simplesmente rode do terminal o comando \textbf{cleanwizard} e responda sim quando ele perguntar se deseja apagar os arquivos.\\
Caso ainda deseje apagar mais coisas, você pode usar o comando \textbf{quotause} da sua home. Ele mostrará o que está ocupando espaço na sua conta.
\section{Firefox/Iceweasel travado}\label{delparent}
\textit{Firefox is already running, but is not responding. To open a new window, you must first close the existing Firefox process, or restart your system.}\\
Isto se deve a uma trava que existe no Firefox, e acontece normalmente quando o Firefox não fechou corretamente da última vez.\\
Existe um script da rede que tira essa trava, o delparent. Simplesmente abra um terminal e digite \textbf{delparent}. Tudo deve voltar ao normal.\\
\section{Arquivos do Sistema}\label{arquivos}
Algumas vezes usuários decidem apagar tudo o que não usam de suas contas e acabam apagando arquivos importantes. Não apague arquivos se você não sabe para que eles servem.\\
A maior parte dos arquivos ``importantes'' começam com um ponto(``.'') e são ocultos (não são listados normalmente). Como já foi dito anteriormente, estes arquivos são usados pelo sistema para guardar configurações e preferências.\\
Mas ainda existem outros arquivos/diretórios importantes que não são ocultos, como por exemplo, Mail/ e Maildir/ que guardam seus e-mails.\\
Outro diretório importante é o private/, que tem as permissões alteradas para que só você consiga vê-lo, tornando-o um lugar seguro para guardar trabalhos. Muitas pessoas mudam as permissões sem querer, ou apagam a pasta private, e perdem essa segurança.\\
Caso você tenha apagado arquivos de configuração ou mexido indevidamente nas permissões de arquivos, compareça à Administração.\\
\section{USB não desmontado}\label{usb}
Sempre que usar um dispositivo USB (PenDrive), lembre-se de desmontá-lo antes de removê-lo fisicamente. Não desmontar pode implicar em perda de dados, além de poder causar problemas se a próxima pessoa quiser montar o PenDrive dela.
\section{Máquina travada}\label{travou}
Uma máquina pode travar por vários motivos diferentes, tornando difícil a criação de um método universal para resolver problemas, mas aqui vão algumas dicas.\\
Em primeiro lugar, pedimos aos usuários que não reiniciem as máquinas. No linux, é possível que mais de um usuário esteja usando a mesma máquina ao mesmo tempo. Por isso, ao desligar uma máquina, você pode fazer um colega perder o EP dele. Além do que, por motivos de segurança, as máquinas da rede não podem bootar a menos que um admin esteja presente. Assim, se você reboota uma máquina, ela ficará impossível de usar até que um administrador a reboote. Se isto ocorrer num fim de semana ou véspera de feriado, isto pode acarretar que a máquina fique inutilizável até o dia útil seguinte, prejudicando você e seus colegas.\\
Se um programa travar, tente fechá-lo usando Alt+F4, se for um programa gráfico, ou Ctrl+C se for um programa do modo texto. Se isso não funcionar, tente deslogar da máquina.\\
Caso o modo gráfico não esteja respondendo, aperte Ctrl+Alt+Backspace para reiniciá-lo. (Isso demora alguns segundos) e tente logar de novo.\\
Se ainda não deu certo, tente entrar no modo texto, apertando Ctrl+Alt+F1, e, depois de logar (a senha não aparece na tela mesmo), digite ``ps ux'' (esse comando mostra todos os processos que você está rodando.A segunda coluna mostra um número (o PID). Identifique o processo que você acha que está travando e digite ``kill -9 /textit{digite o pid aqui}''. Se você não fizer idéia de qual processo matar, vá matando em ordem até destravar (para voltar para o modo gráfico aperte Ctrl+Alt+F7).\\
Caso você não consiga nem abrir o modo texto na máquina, tente logar em uma outra máquina, e do terminal dela dar o comando ``ssh nomedamaquinatravada''. Se conseguir logar, mate processos, como descrito anteriormente.\\
Se isso falhar, contate um administrador.\\
\textbf{Obs:} As máquinas pretas precisam de uma senha para serem ligadas, então se alguém reiniciou a máquina, ela não irá ligar enquanto não for liberada. Caso veja alguma máquina nesse estado, por favor avise algum dos administradores.\\
\newpage
\begin{figure}[htb]
\center
\includegraphics[width=0.9\linewidth]{dontpanic}\\
\end{figure}
\end{document}
