• Nenhum resultado encontrado

Minicurso de Linux para XV SEMEC utilizando o Ubuntu 12.04

N/A
N/A
Protected

Academic year: 2021

Share "Minicurso de Linux para XV SEMEC utilizando o Ubuntu 12.04"

Copied!
51
0
0

Texto

(1)

Minicurso

 

de

 

Linux

 

para

 

XV

SEMEC utilizando o Ubuntu 12.04

(2)

Sumário

1. História 2. Comandos Básicos 3. Editando textos 4. Permissões de Acesso 5. Sistemas de Arquivos 6. Instalação de Programas 7. Acessando H.D., Pen drive, Windows 8. Open Office 9. Bibliografia

(3)

1. Estória

Tudo começa em 1991, nesta época existiam poucas opções de sistemas        operacionais. O DOS era o mais usado na época, além disso, existiam os Macs que tinham        preços exorbitantes, o Unix que era adotado quase que exclusivamente por grandes        empresas. Nesta época, o código do Unix, já se encontrava proprietário e não mais para        conhecimento público apesar de ter sido usado como material de estudo em grandes        universidades. Um professor chamado Andrew S. Tanenbaum criou um sistema operacional        baseado no Unix chamado Minix projetado para funcionar em processadores Intel 8086. O        Minix tinha objetivos acadêmicos e não servia para atender as necessidades de um usuário        final, porém seu código fonte era disponível para a comunidade, isso significava que        qualquer programador experiente poderia fazer alterações nele.

Ao observar as dificuldades deste sistema, Linus Torvalds, um estudante de Ciência        da Computação da Universidade de Helsinki, na Finlândia resolver aperfeiçoar o sistema        Minix para suprir suas carências e para atender suas necessidades pessoais. Daí que        surgiu o nome Linux, que é a mistura de Linus com Unix. Linus divulgou seu interesse em        construir um sistema operacional        que fosse livre, ou seja, qualquer pessoa pode        personalizá­lo ou adaptá­lo as suas necessidades sem ter que pagar nada por isso. Com        isso, Linus ganhou diversos colaboradores, milhares de pessoas contribuíram gratuitamente        com o desenvolvimento do Linux, simplesmente pelo prazer de fazer um sistema operacional        melhor, Cada melhoria desenvolvida por um programador era distribuída pela Internet e,        imediatamente, integrada ao núcleo do Linux. Vale ressaltar que como existem diversos        sistemas desenvolvidos nessa plataforma, Linux é o nome usado para qualquer sistema        operacional que utilize o núcleo Linux desenvolvido por Linus.

 

Uma curiosidade é a escolha do mascote, em 1996 muito se discutia sobre um        mascote para o Linux, não houve razão especial para a escolha, somente o fato do Linus       

(4)

afirmar que gostava de pinguins.

Outro aspecto importante são as distribuições do Linux, que é o conjunto de        softwares feitos para a plataforma em questão e que são construídos de acordo com as        características e necessidades de cada grupo. Atualmente, praticamente qualquer pessoa        pode fazer a sua distribuição, incluindo os programas que desejar. Entretanto, é necessário        muito trabalho para integrar esses softwares, traduzi­los para diversos idiomas, criar        manuais e guias, consertar defeitos, oferecer suporte, treinar pessoas, divulgar e criar uma        comunidade de apoio. Por isso, são poucas as distribuições que podem oferecer uma        garantia de continuidade e de suporte permanente. Nesse aspecto, existem algumas        distribuições mais conhecidas como: Debian, Fedora, SUSE, Mandriva, Kurumin, entre        outras, mas a mais popular é a Ubuntu.

Ubuntu é um sistema operacional de código aberto construído pela comunidade a        partir do núcleo Linux e é perfeito para notebooks, desktops e servidores. Ubuntu é uma        antiga palavra africana que significa “Sou quem sou, pelo que nós somos” o que mostra                        a grande espírito de colaboração que a distribuição Ubuntu traz para o mundo do software        livre.

“A palavra Ubuntu é um sistema de valores praticados em muitos países da África.        Define o humano, enquanto ser, conforme sua interação com outras pessoas, propondo        assim uma irmandade universal. Suas lições de grande valor humanístico deveriam ser        conhecidas e praticadas por todos nós, que vivemos numa sociedade egoísta e desigual.”

1.1) Características do Ubuntu:

● É um Software Livre: Todas as versões do Ubuntu são disponibilizadas sem custo        algum.

● Novas versões para desktops e servidores são lançadas a cada seis meses. O que        significa que sempre há as últimas versões com novas aplicações e bugs corrigidos. ● O Ubuntu é desenvolvido visando segurança, há atualizações de segurança gratuitas       

por pelo menos 18 meses para desktops e servidores.

(5)

programas pré­instalados que atendem às funcionalidades programas podem ser        obtidos através da central de programas do Ubuntu básicas, como por exemplo o        LibreOffice e o navegador de internet Firefox.

● Qualquer versão até a 12.04 ocupa apenas um CD (até 700 MB); a partir da versão        12.10, será necessário um DVD ou um pen drive, pelo fato da nova versão        ultrapassar o limite de 700 MB. A atualização e instalação de mais programas        poderá ser realizada via Internet, num processo fácil e em ambiente gráfico.

● É também tem a característica de ser multissessão, onde é possível ter várias contas        de usuários em um mesmo computador.

● Existe o controle de permissão entre superusuário (sudo) que é o usuário com        controle total do computador e o usuário comum que não tem poder para manipular        todos os recursos existentes no computador.

● É possível interagir com o Linux de duas maneiras: Pela Interface Gráfica ou Prompt        de Comando.

● Há versões de 32 e 64 bits. Pode ser instalado tanto em processadores de 32 bits,        como de 64 bits.

● Case Sensitve: há diferenciação entre letras maiúsculas e minúsculas.

● Versionamento: o Ubuntu utiliza um sistema incomum de numerações, o primeiro        número corresponde ao ano e o segundo mês. Os nomes dados as versões são        apelidos escolhidos pelos desenvolvedores referentes à algum animal e um adjetivo        que começa com a mesma letra do nome do animal, desde a versão 6.06, as        versões seguem em ordem alfabética.

Versão Codinome Apelido

4.10 The Warty Warthog O Porco­africano Verruguento 5.04 The Hoary Hedghog O Ouriço Grisalho 5.10 The Breezy Badger O Texugo Fresco 6.06 The Dapper Drake O Pato Doméstico Estiloso 6.10 The Edgy Eft A Salamandra Hi­tec 7.04 The Feisty Fawn O Jovem Bravo Cervo 7.10 The Gutsy Gibbon O Macaquinho Corajoso 8.04 The Hardy Heron A Garça Durona 8.10 The Intrepid Ibex O Bode Intrépido

(6)

9.04 The Jaunty Jackalope O Coelho Elegante 9.10 The Karmic Koala O Koala Kármico 10.04 The Lucid Lynx O Lince Lúcido 10.10 The Maverick Meerkat O Suricato Vagabundo 11.04 The Natty Narwhal O Naval Inteligente 11.10 The Oneiric Ocelot A Jaguatirica Onírica 12.04 The Precise Pangolin O Pangolim Preciso 12.10 The Quantal Quetzal O Quetzal Quântico 13.04 The Raring Ringtail O Bassarisco Ávido 13.10 The Saucy Salamander A Salamandra Atrevida 14.04 The Trusty Tahr A Cabra Selvagem Fiel 1.2) Informações: 1.2.1)Manual:

No link abaixo é possível ter acesso ao manual da ultima versão do ubuntu nele há instruções        de como proceder em relação as tarefas diárias como com tarefas diárias tais como        navegar na Internet, ouvir música e digitalizar documentos. O mesmo é adequado para todos        os níveis de experiência.

http://ubuntu­manual.org/ 1.2.2) Documentação:

Há documentação do Ubuntu em português do Brasil e é composto por uma grande        quantidade de dicas e tutoriais sobre a utilização do Ubuntu , como: Obtendo ajuda, Gravar        o Ubuntu no CD, Versões do Ubuntu, Dúvidas Frequentes, entre outros.

http://wiki.ubuntu­br.org/Documentacao 1.2.3) Fórum:

É um ótimo lugar para tirar dúvidas porque provavelmente as perguntas e respostas dos        problemas mais comuns relacionadas ao Ubuntu já estarão disponíveis nos fóruns. O fórum        é divido em categorias como: Iniciantes, Suporte Técnico, Ambientes Gráficos e Espaço da        Comunidade.

http://ubuntuforum­pt.org/ 1.2.4) Listas de discussão:

(7)

É um espaço destinado a discussão de novidades, idéias e questões sobre o Ubuntu.        Basicamente é um grupo de pessoas cadastradas que trocam e­mails entre si, toda vez que        um e­mail é enviado para lista, todos os participantes tem acesso a ele, assim como quando        alguém o responde.

http://wiki.ubuntu­br.org/Listas 1.2.5) Suporte:

Tudo isso é encontrado na página de suporte do Ubuntu que conta ainda com Chat via IRC,        Suporte Pago e Documentação Internacional.

http://www.ubuntu­br.org/suporte

2. Comandos úteis para o Linux

(8)

2.1.1) ls: Lista o conteúdo de um diretório. Sintaxe: ls (diretório) [opções]

Quando executado sem qualquer parâmetro, mostra o conteúdo do diretório atual.

Quando usado sem alguma opção lista todos os arquivos não ocultos do diretório, em        ordem alfabética, preenchendo tantas colunas couber na tela. Pode ser utilizado com as seguintes opções: ­a: Lista todos os arquivos do diretório, inclusive ocultos Sintaxe: ls –a ­k: Caso o tamanho do arquivo seja listado, mostra­o em Kbytes. Sintaxe: ls –k

­l: Além do nome de cada arquivo, lista o tipo, permissões, número de ligações diretas,        nome do dono, nome do grupo, tamanho em bytes e data (da modificação, a menos que        outra data seja selecionada).

Sintaxe: ls –l

­t: Ordena o conteúdo dos diretórios pela data da última modificação ao invés da ordem        alfabética, com os arquivos mais recentes listados no início.

Sintaxe: ls –t

­u: Ordena o conteúdo dos diretórios de acordo com a data de último acesso ao invés da        data de modificação.

Sintaxe: ls –u

­X : Ordena o conteúdo dos diretórios alfabeticamente pelo nome da extensão (caracteres        após o último “.”). Arquivos sem extensão são listados no início.

Sintaxe: ls ­X ­1: Lista um arquivo por linha.

(9)

Sintaxe: ls ­1 2.1.2) clear: limpa a tela (o terminal). O atalho ctrl + l também é utilizado para limpar a tela. Sintaxe: clear ou ctrl + l 2.1.3) pwd: exibe o diretório corrente (caminho do diretório atual). Sintaxe: pwd 2.1.4) cd: Muda o diretório corrente (cd é a abreviatura de change directory). Sintaxe: cd diretório onde diretório é o nome do diretório para o qual você deseja mudar. Possíveis opções:

­ Sem argumentos “cd”, muda para o diretório pessoal ou home­directory ou ainda        pasta raíz.

­ A opção “cd ­” volta ao diretório anterior.

­ O símbolo ".." refere­se ao "diretório­pai". Para mover para um "diretório­pai", ou        seja, um diretório acima do que você está, utilize “cd ..” (note o espaço entre "cd" e ".." )

­ Utilizar nomes­de­caminho (pathnames) como argumento para o comando cd. Por        exemplo : “cd /diretorio1/diretorio2 ” o posicionará diretamente em "diretório2".

2.1.5) mkdir: cria um diretório, para realizar o processo é necessário que o usuário tenha        permissões de escrita no diretório onde o mesmo será criado.

Sintaxe: mkdir [opções] <caminho>

Exemplo de utilização do mkdir:

mkdir /home/usuario/Desktop/exemplo

No exemplo acima informamos ao mkdir que crie o diretório exemplo no Desktop do        usuário.  Observe  que  foi  digitado  o  endereçamento  completo  do  diretório

(10)

“/home/usuario/Desktop”, este informa ao mkdir onde deve ser criado o novo diretório, e o        “exemplo” é o diretório que deverá ser criado pelo mkdir.

Opções:

­p : Cria todos os diretórios especificados no caminho, ou seja é possível criar        diretório e sub­diretórios sem precisar cria­los um de cada vez. Exemplo:

mkdir ­p /home/usuario/Desktop/exemplo/sub­exemplo/sub­exemplo2

Observe que atribuirmos a opção ­p após o mkdir que informa que deve criar também        sub­diretórios como explicado acima.

­m : Especifica as permissões de acesso do novo diretório, como por exemplo        leitura, escrita, também especifica qual usuário ou grupo terá permissão sobre o arquivo.        Logo após o mkdir são infomados números que indicam quais são as tais permissões. Exemplo: mkdir ­m 444 exemplo

Neste exemplo o número 444 define o arquivo como somente leitura.

2.1.6) rm: apaga um arquivo ou diretório. É importante lembrar que quando os arquivos são        apagados, no sistema Unix, é impossível recuperá­los.

Sintaxe: rm [opções] <arquivos> Opções mais utilizadas:

­f : Remove todos os arquivos (mesmo se estiverem com proteção de escrita) em um        diretório sem pedir confirmação do usuário. Sintaxe: rm ­f nome_arquivo ­i : Esta opção pedirá uma confirmação do usuário antes de apagar o(s) arquivo(s) especificado(s). Sintaxe: rm ­i nome_arquivo Exemplos: rm meu_diretorio rm ­i meu_diretorio rm ­r um dois tres

(11)

2.1.7) mv: move arquivos para outro arquivo ou diretório. Este comando faz o equivalente a        uma cópia seguida pela deleção do arquivo original. Pode ser usado para renomear        arquivos.

Sintaxe: mv (arquivo 1) (arquivo 2) ... (arquivo n) (destino)

onde (arquivo 1) até (arquivo n) são os arquivos a serem movidos, e (destino) é o arquivo ou        o diretório para onde os arquivos serão movidos.

Se (destino) não for um diretório, somente um arquivo deverá ser especificado como        fonte. Se for um diretório, mais de um arquivo poderá ser especificado.

Se (destino) não existir, "mv" criará um arquivo com o nome especificado. Se        (destino) existir e não for um diretório, seu conteúdo será apagado e o novo conteúdo será        escrito no lugar do antigo. Se (destino) for um diretório, o(s) arquivo(s) será(ão) movido(s)        para este diretório.

Os arquivos "fonte" e "destino" não precisam compartilhar o mesmo diretório pai. Opções:

­i : Com esta opção, "mv" irá perguntar a você se é permitido escrever por cima do        conteúdo de um arquivo destino existente.

Uma resposta "y" (yes = sim) significa que a operação poderá ser executada.        Qualquer outra resposta impedirá que "mv" escreva por cima do conteúdo de um arquivo já        existente.

Sintaxe: mv ­i arquivo_inicial arquivo_final Exemplo: mv teste ../temp1

Neste exemplo, o diretório teste foi movidopara temp1 com o comando "mv".

2.1.8) date: utilizado para mostrar a data e a hora do sistema. Exibe a data e hora corrente,        se aplicado sem parâmetros. Somente o superusuário pode, através do uso de parâmetros        associados ao comando date, alterar a data e hora do sistema.

Sintaxe: date

2.1.9) cp: Copia arquivos e diretórios. Pode­se copiar um arquivo para um destino        informado, ou copiar arbitrariamente muitos arquivos para o diretório de destino. Se o        arquivo­destino não existe, "cp" criará um arquivo com o nome especificado em destino. Se        o arquivo­destino já existia antes e não for um diretório, "cp" escreverá o novo conteúdo por        cima do antigo.

(12)

Sintaxe: cp [opções] <origem> <destino>

Caso o último argumento denomine um diretório existente, este comando copiará cada        arquivo de destino naquele diretório (mantendo o mesmo nome). Caso dois arquivos sejam        informados, ele copiará o primeiro no segundo.

Exemplo: cp arquivo1 arquivo2 → arquivo1 é o arquivo de entrada da operação de cópia, e        o arquivo2 é a saída produzida. Arquivo1 e arquivo2 devem ter nomes distintos; se tiverem o        mesmo nome, então será emitida uma mensagem de diagnóstico indicando que são        idênticos, e o arquivo não será copiado sobre si mesmo. Se o arquivo2 já existia, seu        conteúdo será substituído pelo conteúdo do arquivo1.

Principais opções:

­f: Remove um arquivo de destino já existente. ­i : Pergunta se deve regravar arquivos já existentes.

­R : Copia diretórios recursivamente, preservando arquivos que não sejam diretórios. Exemplo : cp ­r temp temp1 → Este comando copia todos os arquivos e subdiretórios dentro        do diretório temp para um novo diretório temp1. Se você tentar copiar um diretório sem        utilizar a opcão, você verá uma mensagem de erro.

2.2) Ajuda:

2.2.1) man: exibe informações do programa/comando. Este comando exibe uma página do        manual interno do Unix, para um dado comando ou recurso (isto é, qualquer utilitário do        sistema que não seja comando, por exemplo, uma função de biblioteca). É como um "help"        interno ao sistema. Sintaxe : man <comando> onde "comando" e o nome do comando ou recurso que se deseja obter a ajuda. Exemplo: man ls → lista o manual do comando ls. 2.2.2) locate: procura arquivos ou diretório referenciados; Sintaxe: locate [opções] arquivo_procurado

(13)

Principais opções:

­i: realiza uma busca ignorando caracteres em maiúsculas e minusculas. Sintaxe: locate ­i nome_arqu

Com o locate também é possível procurar por extensões de arquivos.

Exemplo: locate *.txt → neste caso procura­se por todos os arquivos com extensão                txt, ou seja, terminados ".txt". 2.2.3) help: principais comandos suportados pelo shell; Sintaxe: help 2.2.4) whatis: mostra o que é dado comando; Sintaxe: whatis comando Exemplo: whatis ls

2.2.5) info: Utilizado para ler documentação no formato GNU Info. Se utilizado sem        argumentos, abre uma página com tópicos que podem ser pesquisados. Sintaxe: info comando A navegação é feita usando os seguintes comandos: n : Move para o próximo tópico. p : Move para o tópico anterior ao tópico atual. u : Move para o tópico acima do atual. t: Move para o tópico mais elevado (Top) Com o cursor sobre um tópico, basta teclar ENTER para ir ao tópico correspondente. Exemplos: info info ls 2.3) Administração:

(14)

2.3.1) ps: relata os processos em execução, fornecendo uma imagem dos processos        atuais.

Sintaxe: ps [opções]

possíveis opções que são mais utilizadas são ­e e ­f porque reportam todas as informações        disponíveis para todos os processos.

Essas opções são especificadas como ­ef, que produz oito colunas de informação,        como segue (as principais):

● Coluna UID: identifica a ID do dono do processo. A ID correspondente ao nome de        conexão do usuário, como especificado em seu registro no etc/passwd.

● Coluna PID: identifica o número de ID do processo. É preciso conhecer esse número        para tomar qualquer atitude com relação ao processo, como usar o comando kill. ● Coluna PPID: identifica o pai do processo.

● Coluna STIME: indica a hora em que o processo foi iniciado.

● Coluna TTY: indica o terminal de controle associado ao processo, e podem conter o        caracter ?, significando que o processo não tem um terminal de controle.

● Coluna TIME: indica o tempo total de execução que o processo acumulou desde        quando foi começado.

● Coluna COMMAND: descreve o nome do processo, indicando qual comando que        está sendo executado, bem como seus argumentos.

Ex: ps ­ef

2.3.2) top: relata os serviços correntes. Semelhante ao comando 'ps', entretanto executa        uma atualização repetitiva da situação.

Sintaxe: top

2.3.3) su: muda o usuário (para outro usuário ou para o super usuário ­ abreviação de        Switch User). Este comando é utilizado para permitir que um usuário torne­se outro        temporariamente. Ele executa um interpretador com a identificação real e efetiva de usuário,        identificação de grupo e grupos suplementares do usuário. O interpretador executado é o        especificado para o usuário no arquivo passwd, ou /bin/sh caso nenhum seja especificado.        Caso o novo usuário tenha senha, 'su' solicita a senha, a menos que se tenha a identificação        real de usuário igual a (superusuário). Automaticamente ele também pode trocar o        identificador (User ID), ou mesmo o grupo de trabalho onde o novo usuário vai atuar.

(15)

Sintaxe: su [opções] [usuário]

Caso o usuário não seja informado na linha de comando, o padrão é o superusuário (root),        ou seja “su” equivale a “su root”.

OBS.: Para retornar ao usuário original, basta digitar "exit". Exemplos:

su ­> muda para o superusuário

su seu_nome → troca do usuário atual para o usuário “seu_nome”

2.3.4) sudo: executa o comando como super usuário. Usando este comando o usuário        comum, não root, pode executar um comando com previlégios temporários de root, ou seja,        o usuário comum faz a tarefa como se fosse root e continua sendo usuário comum depois        que o comando foi executado. Após o uso a senha se mantém por algum tempo, cerca de        cinco minutos. Poderá fazer outro "sudo" sem entrar com a senha novamente. Normalmente        é utilizado na hora de fazer tarefas administrativas, como instalação de programas,        alteração de configurações e alteração de arquivos importantes.

Sintaxe: sudo

2.4) Inicialização e Desligamento

2.4.1) shutdown: desliga ou reinicia o computador. Este comando se encarrega dos        detalhes do desligamento, de modo que tudo ocorra em ordem, sem danos ao sistema. Ele        pode inclusive avisar aos demais usuários com antecedência de que o sistema será        paralisado e toma automaticamente providências para a finalização. Sintaxe: shutdown [opção] Opção: ­r: Reinicializa após o desligamento do sistema. 2.4.2) reboot: reinicia o computador; Sintaxe: reboot 2.4.3) login: inicializa uma sessão

(16)

Sintaxe: login

2.4.4) id: mostra a identificação do usuário atual; Sintaxe: id

2.4.5) passwd: muda a senha do usuário. Normalmente cada usuário pode alterar somente        a sua própria senha, exceto o superusuário (root) que pode atualizar a senha de outro        usuário, fornecendo o nome_do_usuário.

Sintaxe: passwd [opções] [nome_do_usuário]

Se não for especificado o nome_do_usuário, será atualizada a senha do usuário corrente. Principal opção:

­u : Indica que a atualização somente pode ser efetuada para senhas expiradas,        mantendo­se a senha atual até a data de sua expiração. Exemplos: passwd passwd seu_nome 2.4.6) useradd: adiciona usuários ao sistema, ou seja, cria um novo usuário no sistema Sintaxe: useradd nome_da_conta

2.4.7) userdel: apaga usuários do sistema portanto, remove uma conta de usuário e os        arquivos relacionados a ele. Este comando modifica os arquivos de contas, apagando todas        as entradas que se referem ao usuário.

Sintaxe: userdel [­r] nome_do_usuário

Se a opção ­r for utilizada, os arquivos no diretório home do usuário serão removidos junto        com o próprio diretório. Os arquivos localizados em outros sistemas de arquivos terão de        ser procurados e deletados manualmente.

OBS.: O comando userdel não permite exclusão de uma conta se o usuário estiver        correntemente logado.

(17)

Exemplos: userdel seu_nome userdel ­r meu_nome 2.4.8) exit: finaliza a sessão atual (root), ou seja, encerra o shell corrente. Sintaxe: exit

3. Editando textos

As distribuições Linux oferecem ao usuário a opção de edição de texto por interface        gráfica e por linha de comando. Em linha de comando temos o editor VIM, amplamente        difundido pelos usuários de Linux, quando se refere a interface gráfica podemos utilizar o        Gedit ou, se queremos uma abordagem semelhante a do Word (pacote Microsoft Office)        podemos utilizar o LibreOffice Writter, já instalado por padrão nos sistema operacional        Ubuntu. Partimos do pressuposto de que você já esteja familiarizado com o pacote office e        assim, daremos enfoque aos dois outros editores de texto.

3.1) VIM

O Vim (Vi Improved) é uma versão mais poderosa e maior em termos de espaço em        disco e requisitos de memória do editor de texto predecessor VI. Essa versão é mantida        como software livre e acompanha a maioria das distribuições Linux. Está disponível também        para variantes *NIX, Windows, Amiga, OS/2 e Macintosh. 3.1.1) Instalação: 1. sudo apt­get install vim ­y 2. Utilizando o editor de texto VIM para abrir um arquivo: Super Usuário (root) # vim [arquivo] Usuário comum $ vim [arquivo] 3.1.2) Modos do editor:

Como não tem interface gráfica, o editor possui dois modos de operação: inserção        de texto e  o modo de inserção de comandos.

(18)

Modo de inserção de texto:

1. aperte a tecla “I” ou a tecla “INSERT”

2. Através deste modo poderemos inserir texto no arquivo. 3. Para entrar no modo de substituição de texto aperte: 4. aperte a tecla “INSERT” 2x

5. Através deste modo poderemos substituir o texto dentro do documento,        também chamado de modo REPLACE. Modo de inserção de comandos: ● Salvar o arquivo :w ● Sair do arquivo :q ● Salvar e sair do arquivo :wq ou :x OBS: Caso queira forçar a execução de algum comando utilize “!” Exemplo: ● :q! ­> Forçar a execução de saída do arquivo. ● :w! ­> Forçar a execução de salvar o arquivo.

● :wq! ou :x! ­> Forçar em salvar e sair ao mesmo tempo do        arquivo. ● Numerar as linhas do arquivo :set number ● Retirar a numeração imposta através do comando anterior :set nonumber ● Colocar Texto colorido :syntax on ● Retirar Texto Colorido

(19)

:syntax off ● Pular para uma determinada linha :Numero_de_linha ● Ir com o cursor até o final do arquivo :$ ● Ir com o cursor até o final do arquivo :0

● Inserir o conteúdo de um arquivo de texto dentro do arquivo no qual        estiver editando :r arquivo.txt ● Executar um comando do shell sem sair do arquivo :!COMANDO Exemplo: :!cat /etc/passwd

● Executar um comando do shell e jogar a saída (RESULTADO) do        comando para dentro do arquivo de texto :r!COMANDO Exemplo: :r!cat /etc/passwd ● Procurar por palavras dentro do arquivo de texto /PALAVRA Exemplo: /futebol

Irá procurar a palavra futebol dentro de todo o arquivo, aperte a tecla “N” para pular        para cada palavra futebol dentro do arquivo.

OBS: Através deste comando irá procurar do INÍCIO PARA O FINAL. ● Procurar por palavras dentro do arquivo de texto

?PALAVRA Exemplo:

(20)

?futebol

Irá procurar a palavra futebol dentro de todo o arquivo, aperte a tecla “N” para pular        para cada palavra futebol dentro do arquivo. OBS: Através deste comando irá procurar do FINAL PARA O INÍCIO. ● Abrir uma sessão do sheel dentro do editor de texto :shell Para voltar ao arquivo digite: exit ● Alterar palavras na linha atual :s/palavra_antiga/palavra_nova/g Exemplo: :s/casa/CASA/g

Irá  todas  as  palavras  casa  (minúsculas)  na  linha  atual pela palavra    CASA(MAIÚSCULAS). ● Para manipular mais de um arquivo de texto ao mesmo tempo :split [ARQUIVO] ou :sp [ARQUIVO] ● Para alternar entre os dois arquivos utilize as teclas: Ctrl+W ● Manipulação de texto: Utilize a tecla “V” em modo de comando. ● Copiar texto: Utilize a tecla “Y” em modo de comando. ● Colar Texto: Utilize a tecla “p” em modo de comando. ● Apagar toda uma linha: Utilize a tecla “D” 2x em modo de comando. ● Copiar toda uma linha: Utilize a tecla “Y” 2x em modo de comando.

(21)

3.2) Gedit

3.2.1) Instalação:

O gedit está localizado no repositório do Ubuntu principal (main), no entanto, este                utilitário é instalado por padrão no Ubuntu. O gedit poderá ser instalado no Kubuntu, Xubuntu        e outras distribuições, porém serão necessárias bibliotecas adicionais para a correta        instalação em ambientes que não usem o GNOME. Caso o Editor de texto gedit não              esteja instalado, você poderá usar estas formas de instalação:

1. Clique no Menu Sistema   Administração   Gerenciador de pacotes Synaptic

Na opção de localizar digite gedit, logo em seguida você verá o filtro da pesquisa. Agora clique com o botão direito do mouse sobre o pacote gedit, escolha Marcar para instalação e clique em Aplicar. Outro procedimento de instalação é utlizando a linha de comando (CLI), observe: 1. Abra um terminal. Digite o comando abaixo: sudo apt­get install gedit Acessando o Gedit: O gedit inclui uma interface gráfica ao usuário (GUI) e poderá ser aberto com um dos seguintes procedimentos:

(22)

2. Pressione Alt+F2, surgirá uma janela chamada Executar aplicativo. Na caixa de texto digite o comando gedit e clique no botão Executar, observe:

Após a execução de algum dos procedimentos descritos acima, deverá surgir a janela do utilitário Editor de texto gedit, veja a figura:

Utilização:

O Editor de texto gedit apesar de possuir uma aparência básica e com pouco              recursos, ele é muito útil. Por exemplo um recurso muito útil do gedit é a capacidade de        programação de código em cores, possibilitando o realce de sintaxe erradas tornando mais        simples o reconhecimento de erros. Para este recurso gedit usa o pacote gtksourceview        para o realce de sintaxes. Os arquivos *.lang são os que define o realce para uma       

(23)

linguagem  de  programação  específica  está  localizado  no  diretório /usr/share/gtksourceview­2.0/language­specs.  Esses arquivos podem ser editados,        adicionados ou criados para melhor definição do realce. Vejamos um exemplo na prática, observe a figura abaixo: Temos um exemplo de uma programação web utlizando principalmente as linguagens html e javascript. Mas cadê as cores? Para este procedimento temos que escolher o tipo de marcação, ou seja, realce. Este procedimento é bastante simples, observe:

(24)

Você poderá escolher outros tipos de realce ou escolher sem realce que seria a opção Texto sem formatação. Observe a figura:

(25)

Preferências: O usuário poderá personalizar recursos do Editor de texto gedit para fornecer uma utilização melhor do programa. Por exemplo: Para ativar ou desativar o salvamento automático de arquivos de backup clique em Preferências   Editor, veja: Para deixar o texto maior ou menor clique no Menu Preferências   Fontes e Cores, veja: Da mesma forma, o usuário poderá utilizar mais recursos configurando outras opções.

(26)

Plug­ins:

Os Plugins aumentam consideravelmente o poder do gedit e são acessados através do Menu Editar   Preferências   Plug­ins.

Mais de uma dezena de plugins são pré­instalado e pode ser ativado ou desativado        nesta seção. Alguns dos mais populares são habilitados por padrão, enquanto outros devem        ser habilitados pelo usuário. Contudo, para saber as funções de cada Plug­in clique no        nome do mesmo e depois no botão Sobre o plug­in.

O usuário poderá configurar os plug­ins clicando no botão Configurar plug­in, observe o exemplo adotado do plug­in Inserir Data/Hora:

(27)

4. Permissões de Acesso

Para cada arquivo ou diretório, consideram­se três categorias de usuários: Dono: Quem criou o arquivo.

Grupo: Grupo ao qual pertence o dono do arquivo.

Outros: Usuários que não se enquadrem nas categorias anteriores.

Para cada arquivo são setadas permissões de acesso, que determinam quais        usuários têm acesso a ele e com que finalidade. Cada conjunto de permissões de acesso        significa presença ou ausência de permissões para: leitura (r); escrita (w); execução (x),        conforme a tabela abaixo:

Modo de Acesso Arquivo comum/especial Diretório

Leitura “r” Examinar conteúdo de arquivo Listar arquivos do diretório Escrita “w” Alterar o conteúdo do arquivo Escrever no diretório Execução “x” Executa o arquivo como comando Pesquisar o diretório

Para listagem dos arquivos com suas permissões, utilize o comando ls (listagem de        arquivos), com a opção ­l que mostra as informações extra sobre os arquivos. Assim, o        comando:

$ ls ­l

Por exemplo, suponha que você tenha executado este comando e na tela apareceu        algo assim:

­rwxr­­r­­ 1 aluno grupo 2321 Out 30 15:36 teste.txt

Lendo da esquerda para direita, este primeiro carácter indica o tipo de arquivo        (diretório, link, ­). Em seguida temos as permissões de acesso ao arquivo, sendo as três        primeiras referentes ao proprietário, as seguintes ao grupo e, por último, aos demais        usuários. A segunda coluna desta listagem mostra o número de links que o arquivo possui. A        terceira coluna mostra o proprietário do referido arquivo, que neste caso, o usuário é        "aluno". Na próxima coluna é mostrado o grupo ao qual pertence o proprietário do arquivo        (no exemplo temos o grupo “grupo”). Na quinta coluna temos o tamanho do arquivo em        bytes. Na sexta, sétima e oitava colunas, temos a data da última modificação feita no        arquivo e a hora e por fim o nome do arquivo, respectivamente.

(28)

Simplificando o exemplo:

­ rwx r­­ r­­ 1 aluno grupo 2321 Out 30 15:36 teste.txt

Ti po de ar qu ivo Per mis sões: Pro prie tário Per mis sões: Gru po Per mis sões: Ou tros Links Pro prie tá rio Grupo Ta ma nho do ar qui vo Da ta Da ta Ho ra No me do ar qui vo Comando para conceder e retirar permissões:

● Comando chmod : Modifica as permissões de um arquivo ou diretório. Para isso é        necessário que você seja o proprietário de um arquivo ou diretório, ou ter acesso ao root,        para modificar as suas permissões.

Sintaxe : chmod permissões nome_do_arquivo onde : permissões ­ indica as permissões a serem modificadas;

nome ­ indica o nome do arquivo ou diretório cujas permissões serão afetadas. As permissões podem ser especificadas de várias maneiras. Esta é uma das formas        mais simples de realizarmos esta operação : 1­ Use uma ou mais letras indicando os usuários envolvidos: . u (para o usuário) . g (para o grupo) . o (para "outros") . a (para todas as categorias acima) 2­ Indique se as permissões serão adicionadas (+) ou removidas (­). 3­ Use uma ou mais letras indicando as permissões envolvidas :

(29)

. r (para "read") (ler) . w (para "write") (escrever) . x (para "execute") (executar) Exemplo ­ Adicionando e retirando permissões: Vamos alterar neste exemplo o arquivo “teste.txt”. $ls ­l ­rwxr­­r­­ 1 aluno grupo 2321 Out 30 15:36 teste.txt

Vamos alterar as permissões deste arquivo, adicionando a permissão de escrita ao        grupo: $chmod g+w teste.txt $ls ­l ­rwxrw­r­­ 1 aluno grupo 2321 Out 30 15:36 teste.txt Observe que foi adicionado permissão de escrita (w) à coluna do grupo. Vamos agora retirar a permissão de leitura de outros: $chmod o­r teste.txt $ls ­l ­rwxrw­­­­ 1 aluno grupo 2321 Out 30 15:36 teste.txt Observe que foi retirado a permissão de leitura (r) à coluna de outros.

(30)

5. Sistemas de Arquivos

Iremos tratar do sistema de arquivos utilizado pelo Linux e veremos também alguns        conceitos necessários para entendermos melhor o sistema de arquivos. Veremos quais os        diretórios básicos presentes na maioria dos sistemas Linux e as suas respectivas        aplicações, procurando seguir as definições do documento FHS (Filesystem Hierarchy        Standard) versão 2.2 final, o qual pode ser encontrado na íntegra no endereço        http://www.pathname.com/fhs.

5.1) Conceitos Básicos

Antes de aprofundarmos sobre o sistema de arquivos do Linux, vamos esclarecer um        pouco mais sobre partições. O Linux é um sistema operacional que suporta partições, ou        seja, partes de um HD que são tratadas pela máquina como unidades de disco        independentes. As partições podem ser criadas segundo diversos padrões, conforme o        sistema operacional utilizado, e cada um deles utiliza um tipo de sistema de arquivo. Temos,        portanto, um grande número de tipos de partições diferentes, sendo que dentre elas,        podemos citar: FAT16 (DOS e WIN95), FAT32 (WIN98), NTFS (WIN NT/2K/XP), HPFS        (OS/2).

5.2) O que é?

Um sistema de arquivos é o método e a estrutura de dados que um sistema        operacional utiliza para administrar arquivos em um disco ou partição, ou seja, a forma pela        qual os arquivos estão organizados em um disco. A expressão também é utilizada para se        referenciar a uma partição ou disco que seja usado para armazenar os arquivos ou outros        tipos de sistemas de arquivos. Alguém pode dizer “eu tenho dois sistemas de arquivos”,        significando que tem duas partições nas quais armazena arquivos ou “aquela pessoa está        usando o sistema de arquivo estendido”, exemplificando o tipo do sistema de arquivo.

A diferença entre um disco ou partição e um sistema de arquivos é bastante        significativa. Poucos programas (inclusive os programas que criam sistemas de arquivos)        operam diretamente em setores não inicializados de um disco ou partição, e caso exista um        sistema de arquivos ele será destruído ou danificado seriamente. A maioria dos programas        trabalham em um sistema de arquivos e não funcionam em uma partição que não contenha        um (ou que contenha um de tipo errado).

Antes de uma partição ou disco ser usado como um sistema de arquivos ele        necessita ser inicializado, e a estrutura básica de dados necessita ser gravada no disco.        Este processo é chamado criação de um sistema de arquivos.

(31)

O Linux suporta diversos tipos de sistemas de arquivos. Dentre esses destacamos: 5.2.1) minix

O mais antigo e presumivelmente o mais confiável, mas bastante limitado em        características (algumas datas não aparecem, máximo de 30 caracteres para nome de        arquivos, etc...) e restrito em armazenamento (no máximo 64 Mb por sistema de arquivos). 5.2.2) ext2

O mais poderoso e popular sistema de arquivos nativo do Linux. Desenhado para ser        facilmente compatível com os avanços das novas versões, sem a necessidade de criar        novamente os sistemas de arquivos já existentes.

5.2.3) Ext3

O sistema de arquivos ext3 é uma extensão de “journaling” (sistema de arquivos        jornalado) para o sistema de arquivos ext2 no Linux. O “journaling” resulta em maciçamente        reduzido tempo gasto recuperando um sistema de arquivos após uma queda, e é portanto        bastante utilizado em ambientes onde alta disponibilidade é importante. O ext3 é        completamente compatível com os sistemas de arquivos ext2, de forma que é possível        migrar um sistema de arquivos ext2 para ext3 e vice­versa.

5.2.4) reiserfs

ReiserFS é outro sistema de arquivos com “journaling” (jornalado), o qual é baseado        na tecnologia de árvores balanceadas rápidas.

Adicionalmente há o suporte a diversos outros sistemas de arquivos, para simplificar        a troca de informações com outros sistemas operacionais. Estes sistemas de arquivos        funcionam como se fossem nativos, exceto pela perda de algumas facilidades presentes no        UNIX, ou apresentam algumas particularidades.

5.2.5) msdos

Compatibilidade com MS­DOS (e OS/2 e Windows NT) através de sistemas de        arquivos FAT/FAT32.

5.2.6) umsdos / vfat

Sistemas de arquivos MS­DOS estendidos para suportar nomes longos, donos,        permissões, links e arquivos de dispositivos do Linux. Isso permite que um sistema de        arquivos msdos possa ser usado como se fosse um sistema Linux, removendo a        necessidade de uma partição distinta para o Linux.

(32)

O sistema de arquivos padrão do CD­ROM. A extensão Rock Ridge que permite        nomes longos também é suportada automaticamente.

5.2.8) nfs

Sistemas de arquivos em redes que permitem o compartilhamento e o fácil acesso        aos  arquivos entre diversos computadores da rede.

5.2.9) hpfs

O sistema de arquivos do OS/2.

A opção do sistema de arquivos a ser usado depende da situação. Caso a        compatibilidade ou outras razões tornem um dos sistemas de arquivos não nativos        necessário, então este deve ser utilizado. Caso a opção seja livre, então provavelmente a        decisão mais acertada seja usar o ext2 ou ext3, uma vez que ele traz diversas facilidades        sem sofrer perda de performance.

5.3) Ponto de Montagem

Antes de um sistema de arquivos poder ser utilizado, ele necessita ser montado. O        sistema operacional executa diversas verificações para estar seguro de que tudo está        funcionando bem. Uma vez que todos os arquivos no Linux estão em uma única árvore de        diretórios, a operação de montagem fará com que o novo sistema de arquivos pareça um        subdiretório existente em algum sistema de arquivos já montado.

Como veremos mais à frente, o comando para montagem de um sistema de arquivos        possui dois argumentos. O primeiro é o arquivo de dispositivo correspondente ao disco ou        partição que contenha o sistema de arquivos. O segundo é o diretório sob o qual ele será        montado. Após a execução do comando, dizemos então que “/dev/hda2 está montado no        /home”, por exemplo.

Para examinar estes sistemas de arquivos, pode­se acessar estes diretórios        exatamente da mesma forma que qualquer outro, como veremos mais adiante. É importante        ressaltar a diferença entre o dispositivo /dev/hda2 e o diretório montado /home. Enquanto                    o primeiro dá acesso ao dados brutos do disco, o segundo permite o acesso aos arquivos        contidos no mesmo disco. O diretório montado é chamado ponto de montagem.

5.4) Classificação dos Dados (arquivos) e Diretórios

Para ajudar na definição da estrutura de diretórios e das permissões de acesso de        um sistema Linux, veremos a seguir alguns conceitos de classificação dos dados que       

(33)

compõem o sistema. É possível definirmos duas categorias independentes de arquivos:        compartilháveis x não­compartilháveis e variáveis x estáticos.

Dados compartilháveis são aqueles que podem ser compartilhados entre várias        máquinas diferentes. Não compartilháveis são aqueles específicos de uma máquina em        particular. Por exemplo, os diretórios home de usuários são dados compartilháveis, mas        arquivos de trava de dispositivos são não­compartilháveis.

Dados estáticos incluem binários (executáveis), bibliotecas, documentação e        qualquer outra coisa que não muda sem intervenção do administrador do sistema. Dados                variáveis são quaisquer dados que mudam sem intervenção do administrador do sistema.

Na tabela abaixo estão alguns exemplos de diretórios do Linux, considerando as        classificações definidas anteriormente: Compartilhável Não Compartilhável Estático /usr /opt /etc /boot Variável /var/mail /var/spool/news /var/run /var/lock 5.4.1) Diretório RAIZ ( / )

O primeiro sistema de arquivos (chamado raiz, por conter o diretório raiz (/)) é        montado, não a partir de outros sistemas de arquivos, mas sim, de maneira automática        durante a inicialização do sistema operacional, podendo­se estar certo de que ele sempre        estará disponível, pois de outra forma o sistema não poderá ser inicializado.

A composição do diretório raiz de um sistema Linux típico pode ser representado        pela tabela abaixo:

DIRETÓRIO CONTEÚDO

bin Arquivos executáveis (binários) de comandos essenciais pertencentes        ao sistema e que são usados com frequência boot Arquivos estáticos de boot de inicialização (boot­loader) dev Arquivos de dispositivos de entrada/saída (I/O) etc Arquivos de configuração do sistema da máquina local home Diretórios locais (home) dos usuários (opcional) lib Bibliotecas essenciais compartilhadas e módulos do kernel

(34)

(opcional) mnt Ponto para montagem de sistemas de arquivos temporariamente. opt Pacotes de sofwares aplicativos adicionais root Diretório local (home) do superusuário (root) sbin Arquivos de sistema essenciais tmp Arquivos temporários usr Hierarquia secundária var Dados variáveis

proc Sistema de arquivos virtual (existe apenas na memória) com        informações do kernel e de processos

Cada diretório listado será discutido em detalhes mais adiante.

O kernel do Linux normalmente está localizado na raiz / ou no /boot. Se estiver        localizado em / é recomendado usar o nome vmlinux ou vmlinuz, os quais têm sido usados        nos pacotes dos fontes do kernel do Linux atualmente.

5.4.2) Diretório /bin

Contém os comandos que podem ser utilizados tanto pelo administrador do sistema        quanto pelos usuários, mas são necessários quando nenhum outro sistema de arquivos está        montado (em geral, no modo mono­usuário ou single user mode).

Pode também conter comandos que são utilizados indiretamente por scripts. 5.4.3) Diretório /boot

Este diretório contém tudo que é necessário para carregar o sistema, exceto os        arquivos de  configuração e o gerenciador de boot.

Portanto, o /boot contém dados que são utilizados antes que o kernel comece a        executar programas no modo de usuário. Isto pode incluir setores master de inicialização        (master boot sectors) guardados, arquivos de mapa de setor e qualquer outro dado que não        é editado manualmente.

5.4.4) Diretório /dev

O diretório /dev é a localização de arquivos especiais e arquivos de dispositivos.        Normalmente contém um arquivo para cada dispositivo que o kernel do Linux pode suportar.

(35)

dispositivos quando necessário. 5.4.5) Diretório /etc

Contém arquivos e diretórios de configuração do sistema da máquina local.        Normalmente não contém binários.

Tipicamente  /etc  possui  os  seguintes  subdiretórios,  caso  os  sistemas correspondentes estejam instalados:

/opt Arquivos de configuração para /opt X11 Arquivos de configuração para o X11

SGML Arquivos de configuração para SGML e XML 5.4.6) Diretório /home

O diretório /home é nitidamente um sistema de arquivos específico dos usuários        locais, sendo a localização sugerida para os diretórios locais dos usuários. Sua estrutura        pode diferir de máquina para máquina.

Em sistemas pequenos, cada diretório de usuário é um dos subdiretórios debaixo do        /home, como por exemplo: /home/dirson, /home/raulison, /home/weslei, etc.

Em  sistemas  maiores  (especialmente quando os diretórios /home são          compartilhados entre várias máquinas via rede) é útil subdividir os diretórios locais. A        subdivisão pode ser      implementada utilizando subdiretórios tais como /home/apoio,          /home/docs, /home/cartas, etc.

5.4.7) Diretório /lib

O diretório /lib contém aquelas bibliotecas compartilhadas que são necessárias para        inicializar o sistema e executar os comandos no sistema de arquivos raiz, mais        especificamente os comandos contidos em /bin e /sbin.

Pode conter também módulos do kernel, localizados em um subdiretório /lib/modules.  5.4.8) Diretório /lib<nome>

Em sistemas que suportem mais de um formato de binários (executáveis), e portanto        necessitem bibliotecas separadas, podem existir uma ou mais variantes do diretório /lib.

Isto é comumente utilizado para fornecer suporte a 64 bits ou 32 bits em sistemas        que suportam múltiplos formatos de binários (executáveis), mas requerem bibliotecas com o        mesmo nome. Neste caso, /lib32 and /lib64 seriam os diretórios de bibliotecas, e /lib seria       

(36)

um link para um deles. 5.4.9) Diretório /mnt

Este diretório existe para que o administrador possa montar temporariamente        sistemas de arquivos quando necessário. O conteúdo deste diretório é um assunto local e        não deve afetar a maneira de qualquer programa ser executado.

5.4.10) Diretório /opt

O diretório /opt é reservado para a instalação de pacotes de softwares aplicativos        adicionais.

Em /opt podem existir subdiretórios que abrigam os arquivos estáticos destas        aplicações, tendo cada subdiretório um nome que descreva o pacote de software nele        contido.

Podem também existir os subdiretórios /opt/bin, /opt/doc, /opt/include, /opt/info,        /opt/lib e /opt/man, os quais são reservados para uso do administrador do sistema local. 5.4.11) Diretório /root

Este diretório é opcional no Linux. O diretório local da conta do usuário root pode ser        determinado por preferências, porém /root é a sua localização padrão.

Não é recomendado o uso da conta root para coisas corriqueiras tais como ler o        e­mail e ver as notícias (mail & news). Recomenda­se que esta conta seja usada somente        para a administração do sistema. Por esta razão não devem aparecer subdiretórios como        Mail e News no diretório local da conta do usuário root. É recomendado que o e­mail para        root seja redirecionado a um usuário mais adequado.

5.4.12) Diretório /sbin

Tipicamente, /sbin contém comandos essenciais para inicializar, restaurar, recuperar        e/ou reparar o sistema, complementando os comandos encontrados em /bin.

5.4.13) Diretório /tmp

O /tmp é utilizado para arquivos temporários gerados por programas, podendo estar        no HD ou na memória RAM.

(37)

sejam preservados entre execuções dos mesmos. A "permanência" da informação que é        armazenada em /tmp é diferente daquela que é armazenada em /var/tmp. Recomenda­se        que o conteúdo de /tmp seja apagado sempre que o sistema for inicializado.

5.4.14) Diretório /usr

O diretório /usr é a segunda maior seção do sistema de arquivos. /usr é        compartilhável e somente de leitura. Isto significa que /usr pode ser compartilhado entre        várias máquinas que utilizam o Linux. Em um sistema típico teremos os seguintes diretórios abaixo de /usr: bin A maioria dos comandos de usuário include Arquivos header (cabeçalhos) incluídos por programas C lib Bibliotecas local Hierarquia local (normalmente está vazio após a primeira instalação) sbin Arquivos não vitais de administração do sistema share Dados independentes da arquitetura X11R6 Sistema X Window Versão 11 release 6 (opcional) games Jogos e programas educacionais (opcional) lib<nome> Bibliotecas em formato alternativo (opcional) src Código fonte (opcional) 5.4.15) Diretório /var

O diretório /var contém arquivos de dados variáveis. Inclui arquivos e diretórios em        fila de execução, dados de ordem administrativa e de login, além de arquivos temporários e        transitórios. Diretórios contidos em /var: cache Dados de cache de aplicações lib Informação de estado variável local Dados variáveis para /usr/local lock Arquivos de trava log Arquivos e diretórios de log opt Dados variáveis para /opt

(38)

run Dados relevantes para processos sendo executados spool Dados de aplicação em fila de espera tmp Arquivos temporários preservados entre reboots do sistema account Logs de processos (opcional) crash Depósitos de crash do sistema (opcional) games Dados variáveis de jogos (opcional) mail Arquivos de caixa postal dos usuários (opcional)

yp Arquivos do banco de dados do NIS (Serviço de Informação de Rede)        (opcional)

5.4.16) Diretório /proc

O diretório /proc é um sistema de arquivos virtual utilizado para manipular informação de        processos e de sistema. É recomendada sua utilização para o armazenamento e obtenção        de informação de processos, assim como outras informação do kernel ou da memória.

6. Instalação de Programas

Existem diversas maneiras de se instalar programas no Linux. Normalmente a        instalação de um programa, deve ser feita pela conta do super usuário (root). As formas de        instalar o programa variam da mais simples (do ponto de vista do usuário) à mais        complicada, e normalmente o que uma instalação mais complicada faz é automatizar o que        a instalação mais simples faz. Algumas formas de se instalar um programa estão ordenadas        (da forma mais complexa à mais simples do ponto de vista do usuário) são:

● baixar o código fonte do programa desejado, compilar, linkar e instalar. Normalmente funciona, mas exige conhecimentos de programação.

(39)

● baixar o pacote compactado do programa, descompactar, e executar a

sequência ./configure; make; make install (um comando de cada vez, observando    erros e avisos). Muitas vezes aqui ocorrem erros chamados de dependency hell: isto          acontece quando, na configuração, são exigidas atualizações de outros pacotes ● baixar um pacote especial chamado rpm, e instalar usando um comando específico       

(o comando é rpm). Aqui também pode ocorrer o dependency hell.

● utilizar gerenciadores de pacotes rpm, que fazem o teste das dependências.

Normalmente, as dependências utilizam algum aplicativo gráfico específico da        distribuição. Estes aplicativos gráficos normalmente são acessíveis a partir do menu

gráfico, mas exigem que se entre com a senha do superusuário (root).

Essas formas podem ser agrupadas em dois grupos basicamente. O primeiro        baseado em código fonte e o segundo baseado em pacotes.

O primeiro grupo mais tradicional e ausente em parte dos demais sistemas        operacionais, é aquela onde se dispõe do código fonte do programa e a instalação consiste        em compilar este código, gerando o código objeto (também chamado de binário ou        executável). Muitas vezes, junto com o código fonte é fornecido um script para facilitar a        compilação do programa.

Já o segundo é baseado em pacotes, ou seja, o programa já compilado (código        objeto ou executável) é "empacotado", junto com os demais arquivos que sejam necessários        para seu funcionamento. Existem diversos tipos de pacotes, como rpm (usado pela Red Hat        e derivados), deb (Debian e derivados) e tgz (Slackware).

Abaixo, ambos os grupos são mais detalhados:

6.1) Instalação a partir de pacotes compactados

Para instalar pacotes compactados que são normalmente distribuídos em arquivos        de extensão .tar.gz ou .tar.bz2, os arquivos devem ser descompactados e, em vez de serem                  instalados, serem compilados através de linhas de comando. Nesse caso, necessariamente        o fabricante colocará as instruções de instalação, pois pode variar drasticamente de um        programa para outro.

6.2) Instalação a partir do rpm ou deb

rpm é o pacote de uma das distribuições do Linux (Red Hat), e é utilizado por várias        outras distribuições. O Ubuntu usa a extensão .deb.

(40)

A instalação é feita baixando­se o rpm (ou deb) desejado, e comandando­se (no        caso do rpm) rpm <opções> pacote.

Note­se que muitas vezes isso gera um dependency hell, tornando­se necessário            baixar e instalar vários outros rpms antes do rpm desejado. Para evitar este trabalho,        existem os gerenciadores de rpm, o próximo tópico. 6.3) Instalação a partir de gerenciadores de rpm (ou deb) São programas, chamados a partir da linha de comando, que verificam todos os rpms necessários (testando as dependências), e baixam e instalam todos. No Ubuntu temos o apt ('Advanced Packaging Tool' ­ chamado por apt­get). Um detalhe importante é que, para estes programas funcionarem adequadamente, ou seja, consigam achar tudo que é necessário, é preciso manter em alguma base de dados local a lista completa dos sites que podem atualizar. Alguns comandos importantes para instalar ou atualizar programas são (para utilizá­los a maioria requer que esteja logado como super usuário). Obs: Substitua "nome_pacote" ou "termo" pelo programa que você quer instalar ou procurar. ● apt­get update ­ Execute este comando periodicamente para ter a certeza que sua lista de fontes fique sempre atualizada, ou ainda se você mudou o /etc/apt/sources.list ou /etc/apt/preferences. ● apt­get install nome_pacote ­ instala um novo pacote. ● apt­get remove nome_pacote ­ remove um pacote (os arquivos de configuração não são excluídos) . ● apt­get –purge remove nome_pacote ­ remove um pacote (os arquivo de configuração também são excluídos) ● apt­get upgrade ­ atualiza todos os pacotes instalados ● apt­get dist­upgrade ­ atualiza o sistema todo para uma nova versão ● apt­cache search termo ­ procura por "termo" na lista de pacotes disponíveis

(41)

● dpkg ­l nome_pacote ­ lista os pacotes instalados que casam com "nome_pacote". Na prática use '*nome_pacote*', a não ser que você saiba o nome completo do pacote. ● aptitude ­ O Aptitude é uma interface em modo texto para o sistema de pacotes Debian GNU/Linux e derivados. Assim como o apt­get, permite ver a lista de pacotes e realizar operações como instalação, atualização e remoção de pacotes, porém parece tratar um tanto quanto melhor a questão das dependências. ● apt­cache showpkg pacotes ­ mostra informações sobre os pacotes ● apt­cache dumpavail ­ mostra uma lista de pacotes disponíveis. ● apt­cache show pacotes ­ mostra registros dos pacotes, igual a dpkg ­­print­avail. ● apt­cache pkgnames ­ rápida listagem de todos os pacotes instalados no sistema. ● dpkg ­S nome_arquivo ­ qual foi o pacote que instalou este arquivo? ● dpkg ­L pacote ­ Mostra os arquivos instalados pelo pacote. ● apt­file search NomeArquivo ­ Este comando procura por um pacote, não necessariamente precisa estar instalado, que inclua o arquivo passado junto a linha de comando (NomeArquivo. Ou seja, muito útil para localizar facilmente arquivos individuais dentro de pacotes que ainda nem se encontram instalados no seu sistema. ● apt­get autoclean ­ Execute este comando periodicamente para excluir os arquivos .deb que não estão mais instalados no seu sistema. Pode­se ganhar uma grande quantidade de espaço em disco fazendo isso. Se você está desesperado por espaço em disco, apt­get clean é mais radical, e removerá todos os arquivos .deb, mesmo de pacotes instalados. Como na maioria dos casos você não precisa destes arquivos .deb, não hesite em usar este comando quando precisar de uns megas extras. ● apt­cdrom add ­ Comando utilizado para adicionar um CD ao arquivo /etc/apt/sources.list do APT, fazendo assim com que o apt­get procure também neste CD por pacotes.

(42)

Instalação a partir de gerenciadores de rpm com interface gráfica (GUI)

Há a possibilidade ainda de se utilizar a interface gráfica que algumas distribuições        oferecem, o que torna a instalação ainda mais simples. No caso do Ubuntu é oferecido o        “Ubuntu Software Center” que facilita a instalação de programas.

Wine

Pode acontecer que você precise de um programa que só rode no Windows, sem        versões equivalentes para Linux. Como Linux é um sistema flexível, ele tem suporte para        esses programas, através de uma camada chamada Wine, que deve ser instalada à parte.        O Wine é uma espécie de um emulador ­ apesar do nome (Wine é a sigla recursiva para        "Wine is not emulator", literalmente "Wine não é emulador") que traduz as DLLs do Windows        em instruções para Linux. O Wine é um programa comum. No Ubuntu, pode­se dar o        comando: sudo apt­get install wine, e logo depois digitar a senha, ou ainda instalá­lo por              meio do Ubuntu Software Center, como será ilustrado abaixo e todos os arquivos com a        extensão .EXE passarão a ser abertos através do Wine.

O Ubuntu Software Center pode ser encontrado em aplicativos

      

(43)

      

Tela inicial da interface gráfica para instalação de programas do Ubuntu, simbolizada        pela “sacolinha” do lado esquerdo.

       

(44)

    

Será solicitada a senha do super usuário.

A instalação poderá ser acompanhada por uma barra verde no canto superior direito.

Curiosidade: resolvendo problemas

O apt­get é uma ferramenta desenvolvida para ser usada em servidores e outras        aplicações importantes. Isto significa que ele foi desenvolvido para ser o mais confiável        possível e nunca realizar nenhuma modificação potencialmente perigosa para o sistema, a        menos que autorizado por você. Quando qualquer coisa inesperada acontece, ele para e        fica esperando sua confirmação antes de fazer qualquer outra coisa.

O problema desta abordagem é que às vezes um defeito em algum pacote ou um       

download corrompido pode fazer com que o APT fique "travado", sem concluir a instalação        de um determinado pacote por causa de um erro qualquer e sem aceitar instalar outros        antes que o problema inicial seja resolvido.

Basicamente, quando encontrar este tipo de problema, você deve:

1. Rodar o apt­get update para ter certeza de que a lista de pacotes do APT se          encontra atualizada.

2. Execute o comando apt­get ­f install para usar o sistema de resolução de problemas                do APT.

3. Caso ele não resolva, experimente usar o dpkg ­i ­­force­all para forçar a

instalação do pacote com problemas, ou use o dpkg ­r nome_do_pacote caso            prefira desistir da instalação.

(45)

4. Execute o comando dpkg ­­configure ­a, para verificar todas pendências na        configuração dos pacotes.

5. Rode novamente o apt­get ­f install. Caso ele não resolva, experimente o apt­get ­f                remove, que tem uma função similar à do "­f install", mas dá preferência a remover        os pacotes com problemas, ao invés de tentar corrigir a instalação.

7. Acessando H.D., Pen drive, Windows

Acessar o Pen­Drive através do Ubuntu (linha de comando): 1) cd /media/user, para acessar a lista de dipositivos de armazenamento. 2) Dentro deste diretório, use o comando “ls” e digite: cd /nome_do_dispositivo desejado. Exemplo: 1) cd /media/usuario 2) cd /pendrive1 Para acessar o Pen­Drive através do Ubuntu (ferramenta gráfica):

1) Na sua aba de navegação lateral esquerda do sistema irá mostrar os dispositvos        montados, basta procurar pelo ícone mostrado na imagem abaixo:

(46)

2) Clique e abrirá uma nova janela com suas pastas.

Montar pen­drive manualmente:

1) Acesse um terminal como usuário root e crie um diretório em /media com o nome que        você preferir. Este diretório será usado para montar o pen drive.

­ mkdir /media/pendrive

2) Agora é preciso descobrir qual a formatação do Pen­Drive e aonde ele está localizado no        Linux. Para isso, digite no terminal:

­ fdisk ­l

(47)

3) A última linha revela que o dispositivo foi nomeado como "sdb1" e está no formato NTFS.        A próxima etapa é montá­lo no diretório criado: ­ mount ­t ntfs­3g /dev/sdb1 /media/pendrive Caso seu Pen­Drive esteja no formato FAT use: ­ mount ­t vfat /dev/sdb1 /media/external ­o uid=1000,gid=1000,utf8,dmask=027,fmask=137 Acessar o HD do computador (linha de comando):

Existem dois tipos de partição no linux, a que contém seus arquivos pessoais (Home) e a        que contém arquivos do sistema (File System)

Acessando a Home, basta:

1) cd ~/ , através do ls você listará todos os diretórios pessoais.

Acessando pastas do sistema:

1) cd / , através do ls você listará todos os diretórios do sistema. Para fazer alterações        nesse tipo de pasta, será necessário que você esteja logado como ROOT em seu terminal,        porém não é aconselhável alterá­las, já que se tratam de pastas e arquivos necessários        para o sistema.

Para acessar o HD do computador (ferramenta gráfica):

Acessando pastas pessoais:

(48)

Acessando pastas do sistema:

1) Através da mesma imagem, na lista de Devices clique em Computer.

Acessar partição do Windows (linha de comando):

1) Primeiro verifique qual é a partição onde o Windows está instalado. Lembre­se de como        o Linux identifica suas partições de disco. Se o Windows estiver instalado na partição        primária do primeiro HD (o mais provável), então a partição é /dev/hda1.

2) No prompt, digite "cd /media" e crie um diretório "windows" usando:  mkdir windows.

3) Com o comando fdisk ­l você terá uma tela parecida com esta:

       

4) Caso a partição do Windows seja NTFS como da figura (a partição do windows será        indicada por uma *), use este comando: ­ sudo mount ­t ntfs ­o nls=utf8,umask=0222 /dev/hdb1 /media/windows 5) Caso a partição do Windows seja FAT use este comando: ­ sudo mount ­t vfat ­o iocharset=utf8,umask=000 /dev/hda1 /media/windows Acessar partição do Windows (Interface Gráfica): 1) Abra o menu lateral e clique no ícone marcado com o nome Windows:

Referências

Documentos relacionados

Esta etapa contem a gravação do código no arduino, teste com os sensores, ligar os fios em seus pinos e por último a montagem na viatura e a fixação das tags nos equipamentos a serem

Taxas tão baixa quanto 13,4% podem indicar que os resíduos, em geral, são sempre descartados em sacos plásticos branco leitosos e contados como sendo resíduos

Com relação ao CEETEPS, o tema desta dissertação é interessante por se inserir no Programa de Educação de Jovens e Adultos (PROEJA), sob a tutela da Coordenação de

(2018), Análise de Projetos de Investimento - Uma Perspetiva Económica, 2.ª edição, Edições Sílabo, Lisboa.

Para executar o programa depois de ter instalado o Wine, configure-o (tanto pela parte gráfica quanto pelo terminal utilizando winecfg) e depois você pode executar o

Hoje o gasto com a saúde equivale a aproximada- mente 8% do Produto Interno Bruto (PIB), sendo que, dessa porcentagem, o setor privado gasta mais que o setor público (Portal

O estudo múltiplo de casos foi aplicado para identificar as semelhanças e dissemelhanças na forma como as empresas relacionam seus modelos de negócios e suas

A tabela 25 apresenta os resultados brutos desta avaliação em relação à característica busca e a tabela 26 exibe o resultado ponderado para esta característica.. A tabela 27