Universidade Federal de Santa Maria Centro de Tecnologia Programa de Educação Tutorial ­ Sistemas de Informação

TUTORIAL

Por: Anthony Tailer Ribas de Almeida Camila da Luz Nogueira Clécio Rodrigues dos Santos Neto Evandro Luis da Rosa Fensterseifer Filho Joel Ferreira da Silva Lucas Lima de Oliveira Otávio Bergmann Cassel Rhauani Weber Aita Fazul Romeu Isaac Casarotto

Santa Maria, 2016

1

Sumário

1 CAPÍTULO ­ O 2

1.1 Linux e Software Livre 2

1.2 Onde e por que Linux é utilizado 2

1.3 Distribuições do Linux 4

1.4 Instalação do Sistema 5

2 CAPÍTULO ­ CARACTERÍSTICAS DO SISTEMA 9

2.1 Terminal (Console) 9

2.2 Extensões de arquivos específicas do Linux 11

2.3 Estrutura básica de diretórios 14

2.4 Diretório Raiz 16

2.5 Diretório Home 16

3 CAPÍTULO ­ COMANDOS DO TERMINAL 16

3.1 Navegação e manipulação de diretórios 17

3.2 Manipulação de arquivos 20

3.3 Usuários e grupos 25

3.4 Utilitários de Texto 30

3.5 Usuário Root 33

3.6 Gerenciamento do Sistema 34

3.7 Dicas 37

4 CAPÍTULO ­ DESKTOP E SEUS PROGRAMAS 38

4.1 Usando o Ubuntu Desktop 38

4.2 Instalação via Software Center 42

4.3 Instalação via Terminal 45

4.4 Pacote Office 46

4.6 Executar softwares do Windows no Linux 47

5 REFERÊNCIAS 50

2

1 CAPÍTULO ­ O LINUX

1.1 Linux e Software Livre

Linux é um Sistema Operacional criado em 1991 por Linus Tovalds na Universidade de ​ Helsinki na Finlândia. O sistema em sua totalidade não foi criado do “zero”, o mesmo derivou de um outro sistema operacional conhecido como MINIX, um sistema simples criado por Andrew S. ​ Tanenbaum em 1987 que foi disponibilizado para servir de auxílio no ensino de computação. ​ ​ ​ Além deste sistema ter sido disponibilizado gratuitamente, todo o seu código­fonte foi disponibilizado completamente. Este sistema por sua vez também foi baseado em um outro sistema já disponível em meados da década de 70, o UNIX um sistema que teve grande ​ aceitação não somente em universidades, mas também em ambientes corporativos, resultando no surgimento de variações diversas do sistema.

Com base nas tecnologia atuais Tovalds resolveu começar um projeto próprio e acabar ​ ​ por divulgá­lo em 1991 em uma espécie de antecessora à Internet que conhecemos hoje, a ​ Usenet, pedindo colaborações e sugestões sobre seu projeto para quem tivesse devido ​ interesse na ideia.

Linux acabou por se tornar um Sistema Operacional de código aberto distribuído gratuitamente pela internet, essa característica define o termo “Software Livre”, o copyrigth do ​ núcleo principal do Sistema(Kernel) descreve detalhadamente que é proibida a comercialização do Sistema. Sendo assim, isto indica que você não precisará pagar nada para que possa usufruir do Sistema Linux, podendo ser usado em diversos computadores sem que isso seja alguma forma de pirataria. Estas informações foram escritas com base no conteúdo disponibilizado no site: http://www.guiafoca.org/cgs/guia/iniciante/. ​ ​

1.2 Onde e por que Linux é utilizado ​

Segundo pesquisa relatada pelo site exame.abril.com.br no ano de 2014, no Brasil, ​ ​ cerca de 41% das empresas de TI adotam Linux como Sistema principal. O Brasil se encontra com um dos índices mais baixos de adoração ao sistema comparados a outros 16 países da América Latina, Caribe, Portugal e Espanha. ​ Onde Linux é utilizado? Atualmente o Sistema é utilizado em inúmeras áreas do conhecimento de todos, algumas internacionalmente conhecidas como estas:

● Smartphones: Se em seu celular você usa o Sistema Operacional Android ​ da Google, saiba que ele foi desenvolvido com base em todo o Sistema Linux.

3

● Facebook e Google: Sites que você visita diariamente tem seus servidores o Sistema Linux.

● CERN: O Centro Europeu para Pesquisas Nucleares é dependente de Linux ​ para o funcionamento do imenso Acelerador de Partículas.

● Bolsa de Valores: Na Bolsa de Valores de York, Linux é utilizado ​ desde 2007.

● Tráfego de Veículos: O tráfego de veículos da cidade de São Francisco, na ​ Califórnia, é controlado por computadores que usam o Linux.

● Linux Educacional: Não somente no Brasil quanto no mundo, os ​ computadores distribuídos pelos Governos Federais às escolas públicas utilizam Linux.

Podemos perceber que inúmeros serviços utilizam o Sistema para realizar atividades do nosso cotidiano. Mas quais são os motivos para a utilização deste sistema?

● Liberdade: Linux é um sistema 100% gratuito, você pode obter o seu sem ​ precisar comprar qualquer tipo de licença, o sistema é livre para modificações por seu completo, você pode gerenciar vários Sistemas Operacionais juntamente com Linux e ter acesso a todos arquivos a partir dele.

● Segurança: O Linux é um Sistema seguro, muito menos vulnerável do que o Windows, por usar uma política totalmente diferente de segurança. A instalação de programas no Linux é muito mais segura em comparação com Windows. Quando um programa é instalado ele não vem acompanhado de inúmeras outros programas inesperados como no concorrente.

● Estabilidade: Linux também dá ao usuário um computador utilizável para ​ modelos com mais de uma década de idade. Você pode ter um computador de mais de 10 anos com Linux instalado e funcionando novamente, para o trabalho escolar do seu filho ou pesquisar na Internet, entre uma série de outras atividades. Linux foi desenhado e escrito para ser facilmente adaptável com diferentes arquiteturas de hardware. Isso é uma grande vantagem, pois o Linux é sempre mais disponível para tecnologias de ponta, como novos processadores por exemplo.

● A comunidade: Um de seus grandes diferenciais, pois reúne pessoas do mundo todo com vontade de ajudar, aprimorar e desenvolver aplicações para Linux. As dúvidas dos novos usuários são prontamente respondidas nos milhares de fóruns espalhados pela internet.

4

1.3 Distribuições do Linux

O Linux, como sistema livre e aberto, acabou sendo adotado por muitos grupos ​ dispostos a modificá­lo, incrementá­lo e tornarem públicas suas mudanças. Hoje em dia, é possível encontrar interfaces e programas capazes de satisfazer e servir os mais variados gostos e necessidades. Uma distribuição, também chamada de “distro”, consiste em um sistema operacional baseado em Linux, que inclui também um conjunto de softwares, um sistema gerenciador de pacotes e um repositório. Em uma distribuição de Linux, a maior parte do software é livre e de código aberto, estando disponível em repositórios de softwares. Dentre as distribuições de Linux existentes, listaremos as mais populares e mais utilizadas pelo público e por profissionais:

, uma distribuição não comercial e uma das mais antigas. Mantida por uma ​ comunidade de desenvolvedores voluntários fortemente comprometidos com os princípios do software livre e gerencia democrática de projetos. www.debian.org ​ ● , o primeira distribuição com Live CD a rodar completamente a partir de ​ ​ uma mídia removível sem precisar ser instalada em um disco rígido. Derivada de Debian. www.knoppix.org

● Ubuntu, uma distribuição muito popular em computadores de mesa e servidores, ​ derivada de Debian e mantida por uma companhia britânica chamada Canonical Ltd. www.ubuntu.com

, a versão KDE do Ubuntu. www.kubuntu.org ​ ​ ● Ubuntu Gnome, uma versão Gnome do Ubuntu. ubuntugnome.org ​ ​ ● , uma distribuição baseada e compatível com Ubuntu. www.linuxmint.com ​ ​ ● , uma distribuição baseada em Ubuntu e Linux­libre kernel composta ​ inteiramente por software livre. trisquel.info ​ ● Elementary OS, uma distribuição baseada em Ubuntu fortemente focada na ​ experiência visual sem sacrificar a performance. elementary.io ​ ● Fedora, uma distribuição comunitária patrocinada pela empresa americana Red Hat. ​ getfedora.org

, derivado do Fedora, mantido e comercializado pela ​ empresa Red Hat. www.redhat.com ​ ● CentOS, uma distribuição derivada da mesma fonte usada pela Red Hat, mantida ​ por uma dedicada comunidade de desenvolvedores voluntários. www..org ​ ● , derivada da Red Hat Enterprise Linux, mantida e comercializada pela ​ Oracle. www.oracle.com/br/technologies/linux ​

5

derivada de Red Hat e popular em muitos países Europeus e no Brasil atualmente mantido por OpenMandriva Lx. www.openmandriva.org ​ ● openSuSE uma distribuição comunitária majoritariamente mantida pela empresa alemã SuSE. www..org ​ ● SuSE Linux Enterprise, derivada de openSuSE, mantida e comercializada pela ​ empresa SuSE. www.suse.com ​ ● , uma distribuição para usuários experientes de Linux e mantida por uma ​ comunidade de voluntários. www.archlinux.org ​ ● , criado em 1993, uma das primeiras distribuições de Linux e ainda ​ mantida pela Slackware Linux, Inc. www.slackware.com ​ ● Android, majoritariamente desenvolvido e mantido pela Google, conta com uma ​ grande comunidade de desenvolvedores independentes e é amplamente utilizado na indústria de telefonia móvel e eletrônicos. www.android.com ​

1.4 Instalação do Sistema

Devido ao grande número de distribuições, iremos apresentar apenas a instalação ​ de uma das distribuições mais populares, o Ubuntu. A instalação segue um passo a passo bem simples com opções bem claras do que você está fazendo. O primeiro passo é a inserção do disco contendo o Sistema Operacional em seu computador. Após isso a tela que dá sequencia nos dá as opções de Experimentar o Sistema, Instalá­lo ou então fazer reparos no sistema, como podemos observar na figura 1.4.1.

Figura 1.4.1­ Tela inicial da instalação do Ubuntu 12.04. ​

Em nosso caso, vamos realizar a instalação do sistema. A instalação exige que tenhamos ao menos 5 gigabytes disponíveis em disco, como podemos ver na figura 1.4.2.

6

Figura 1.4.2­ Tela de pré­requisitos para instalação do Ubuntu 12.04. ​

Após a escolha do idioma de seu Sistema Operacional, é necessário escolher o Tipo de Instalação. Como veremos na figura 1.4.3, nas opções avançadas você terá a possibilidade de particionar todo seu HD e escolher onde deve ser instalado o sistema. Essa opção opção é recomendada caso você deseje instalar o Ubuntu em DualBoot com outro ​ ​ Sistema operacional como o Windows. Por motivos de facilidade a opção escolhida foi a que faz a instalação limpa do Sistema em uma partição, apagando todos os dados do HD.

Figura 1.4.3­ Tela de escolha do tipo de instalação do Ubuntu 12.04. ​

Na figura 1.4.4, temos qual será a unidade em que será instalado o Sistema.

Figura 1.4.4­ Tela de escolha da partição que abrigará o Ubuntu 12.04. ​

7

Após a escolha da partição, enquanto é preparada a instalação, pede que seja informado sua localização (figura 1.4.5). Este passo serve para que o Ubuntu saiba qual é seu fuso horário.

Figura 1.4.5­ Seleção do fuso horário do Ubuntu 12.04. ​

Ao avançar, será solicitado qual é o tipo de teclado a ser usado no computador, e por conseguinte digitamos as Informações do computador e do usuário conforme figura 1.4.6. Dentre estas constam Nome de usuário, senha e Nome do computador.

Figura 1.4.6­ Tela de criação de perfil do Ubuntu 12.04. ​

Ao concluir a etapa anterior, o sistema será instalado por completo, finalizando assim o processo. Para a conclusão, é necessário que o computador reinicie para que se aplique

8 as mudanças feitas. Podemos visualizar na figura 1.4.7 tal procedimento. Ao iniciar novamente, estará pronto para o uso.

Figura 1.4.7­ Tela de conclusão da instalação do Ubuntu 12.04. ​

Links para download: Ubuntu 14.04.3 LTS 64bits* (Amd64): [ Baixar ditero ], [ Baixar Torrent ] ​ ​ ​ ​ Ubuntu 14.04.3 LTS 32bits** (i386): [ Baixar direto ], [ Baixar Torrent ] ​ ​ ​ ​ Outras versões: [ http://www.ubuntu.com/download/alternative­downloads ] ​ ​ * Recomendado para computadores com 4GB ou mais de memória RAM ** Apenas para computadores com menos de 4GB de memória RAM

9

2 CAPÍTULO ­ CARACTERÍSTICAS DO SISTEMA

2.1 Terminal (Console)

No inicio dos primeiros sistemas era utilizado apenas a linha de comando ou CLI, caracterizada pela sua interface de modo texto. Os usuários que possuíam algum conhecimento mais aprofundado sobre a forma que era utilizado o terminal ou linha de comando, eram os que acabavam realmente utilizando o sistema.

Com a evolução tecnológica, foram criados diversos sistemas operacionais que disponibilizam uma interface gráfica, por exemplo, GNOME, KDE, , Unity, Window Maker, etc. A interface presente na figura 2.1.1 mostra a distribuição Ubuntu com o ambiente gráfico Unity.

Figura 2.1.1 ­ Área de Trabalho do Linux de uma máquina com sistema operacional Ubuntu 14.04 ​

Já a interface no modo texto evoluiu, inclusive, tornando a administração mais detalhada, completa e de certa forma complexa, como na utilização de programas em modo texto.

10

Figura 2.1.2 ­ Terminal do Linux de uma máquina com sistema operacional Ubuntu. ​

A figura 2.1.2 ilustra um terminal do Linux, indicando os seus elementos como o nome de usuário e grupo que o usuário atual pertence. O traço após os elementos textuais representa o cursor, da onde será digitado os comandos afins que o usuário desejar, ele é tratado dessa forma com intuito de sinalizar a partir de onde será realizado a interação com o terminal.

O terminal possui um símbolo após o nome e grupo do usuário, representado por “$” para indicar que o usuário não possui acesso a todos os comandos por linha de comando e acesso a ler ou modificar alguns arquivos. O símbolo “#” representa o acesso de superusuário ao sistema (root), ele possui total acesso (todos os arquivos e comandos por linha de comando), esta forma utilizada é um padrão em sistemas derivados do UNIX.

Os comandos já utilizados no terminal podem ser utilizados novamente sem ter que digitá­los, eles podem ser alternados através das setas direcionais Seta para cima e Seta para baixo. Quanto a tela pode ser utilizado a combinação SHIFT + Seta para cima/ Seta para baixo para rolar a tela ou pressionar a tecla PGUP PGDOWN. Abaixo segue alguns comandos que podem ser utilizados no terminal:

● Tecla “Backspace” apaga um caractere à esquerda do cursor;

● Tecla “Del” apaga o caractere acima do cursor, aonde o cursor está;

● A combinação “CTRL+A” ou a tecla “Home” move o cursor para o inicio da linha de comando;

● A combinação “CTRL+E” ou a tecla “End” move o cursor para o fim da linha de comando;

● A combinação “CTRL+U” apaga o que está à esquerda do cursor, o conteúdo apagado é copiado para uso utilizando a combinação “CTRL+Y”;

11

● A combinação “CTRL+K” apaga o que está à direita do cursor, o conteúdo apagado é copiado para uso utilizando a combinação “CTRL+Y”;

● A combinação “CTRL+L” para limpar a tela e manter o texto que estiver sendo digitado (equivalente ao comando “Clear” que será visto no capítulo 3);

● A combinação “CTRL+Y” cola o texto que foi apagado na posição atual do cursor.

● A combinação “CTRL+SHIFT+C” copia um texto selecionado no terminal.

● A combinação “CTRL+SHIFT+V” cola um texto no terminal.

O interpretador de comando ou “Shell”, é um programa responsável pela interpretação das instruções requisitadas pelo usuário e pelos programas do sistema operacional. O GNU/LINUX possui diversos interpretadores de comandos, entre eles estão bash, ash, csh, tcsh, sh, etc. O mais utilizado é o bash, o qual será o utilizado neste tutorial.

Os comandos podem ser enviados para o interpretador de duas formas, interativa ou não interativa. A forma interativa os comandos são digitados no terminal e passados ao interpretador um por vez, desta forma o computador depende do usuário para executar uma tarefa, ou o próximo comando. A forma não interativa os comandos são executados normalmente através de algum Script criado pelo usuário, ele executa os comandos do arquivo um por vez na ordem em que se encontram no arquivo, esta forma é útil quando é necessário entrar com um comando inúmeras vezes ou afim de compilar algum programa complexo. 2.2 Extensões de arquivos específicas do Linux

Existem algumas formas de arquivos, eles possuem em comum a estrutura de dados deles é mantida pelo kernel (núcleo do sistema operacional), possuem um tipo de arquivo, um dono, grupo, permissões, data de criação ou da última modificação, um número de links para o arquivo, tamanho do arquivo e o endereço no disco rígido, estas características compõe um Inode. A figura 2.2.1 ilustra um exemplo de Inode.

Figura 2.2.1 ­ Exemplo hipotético de Inode, informações exibidas através do terminal. ​

Os arquivos se dividem em:

12

● Arquivos Normais – É um conjunto de bytes, pode ser um programa executável, um arquivo de texto, imagem, etc. Criado por editores de texto caso seja algum arquivo do tipo texto, podem ter sido criados através de comandos ou programas como a própria instalação de um executável, entre outras formas;

● Diretórios – Possui qualquer tipo de arquivo, criados através do comando “mkdir” que será apresentado no capitulo 3, ou apenas selecionando a opção “Criar Pasta” disponível através do botão direito do mouse sobre uma pasta que o usuário tenha permissão de alterar. Os arquivos podem ser removidos através do comando “rmdir” ou “rm –r” que serão apresentados no capitulo 3 ou clicando com o botão direito do mouse sobre a pasta ou arquivo e selecionar a opção “Excluir”;

● Arquivos de dispositivo – É um mecanismo utilizado para I/O (input e output) pelo Linux, os seus tipos variam, eles podem ser Caractere a transferência de/para o dispositivo é realizada caractere a caractere, ficando para o dispositivo a “bufferização”. Ou Bloco a transferência é feita em blocos de caracteres, ficando para o kernel o serviço de “bufferização”. Os arquivos de dispositivo normalmente se encontram no diretório “/dev”;

● Sockets – São utilizados para a comunicação entre os processos, não podem ser lidos ou escritos pelos processos não envolvidos na conexão. Fazem parte do TCP/IP e estão disponíveis em todas as versões do Linux;

● Named pipes – Permite a comunicação entre dois processos rodando em uma mesma máquina, análogo ao tipo Socket;

● Hard Link – Dois arquivos apontam para o mesmo endereço, compartilham a mesma área de dados e não podem ser criados para diretórios;

● Symbolic Link – Arquivos atuam como ponteiros para um arquivo existente, fornecem referencia pelo nome e ocupam menor quantidade de espaço, podem apontar para qualquer área do disco como também para outras partições.

Os tipos podem são identificados de acordo com um caractere antes das suas permissões, eles podem ser: Tipo de Arquivo Símbolo

Arquivo Normal ­

Diretório d

Arquivo de dispositivo ­ caractere c

Arquivo de dispositivo ­ bloco b

Socket s

Named Pipe p

Symbolic Link l Tabela 2.2.1 ­ Tipos de arquivos. ​

13

Figura 2.1.4 ­ Exemplo tipos de arquivos, imagem retirado do diretório “/” do sistema . ​

Os arquivos independente do tipo possuem permissões, constituídas por 9 bits, associados que determinam primeiro o acesso do dono, segundo do grupo que dono participa e por ultimo o acesso que outros possuem aquele arquivo. Por exemplo na Figura 2.2.2, no diretório “home” o usuário(dono) root possui permissão de leitura, escrita e acessar o diretório, para o grupo root as permissões disponíveis são de leitura e acessar o diretório e o mesmo vale para outros que não se encontram dentro do grupo ou que não sejam o dono do arquivo.

Figura 2.2.2 ­ Exemplo de permissões de arquivos, imagem retirada do diretório “/” do sistema Xubuntu. ​

As permissões de acesso aos arquivos podem ser alteradas com o comando “chmod valorPermissões”. A variável “valorPermissões” conterá o valor para a permissão do dono, grupo e para outros, a Tabela 2.1.2 exemplifica como atribuir um valor.

Valor em Octal Valor em binário Permissões

0 000 ­­­

1 001 ­­x

2 010 ­w­

3 011 ­wx

4 100 r­­

5 101 r­x

6 110 rw­

7 111 rwx Tabela 2.2.2 ­ Permissões de arquivos ​

Ainda há outras permissões especiais como: ● SUID ­ É um bit utilizado quando é desejável que o arquivo executável seja executado com os privilégios do seu usuário dono. O seu uso deve ser feito com muito cuidado, já que um problema durante a configuração pode acarretar consequências sérias de segurança. A sua representação textual é

14

“u+s” ou em octal seria o número 4, o seguinte exemplo está atribuindo o bit para o arquivo através do bit 4 antes dos bits referentes das permissões “chmod 4755 arquivo_executável”;

● SGID ­ Possui a mesma função do SUID, só que aplica sobre o grupo. A sua representação textual é “g+s” ou na forma octal pelo número 2, o seguinte exemplo exemplifica a sua utilização “chmod 2755 arquivo_executável” ou “chmod g+s arquivo_executável”;

● Stick Bit ­ Normalmente utilizado em diretórios, compartilhados entre vários usuários, aonde seja preferível que os usuários acessem apenas os arquivos criados por eles próprios, evitando dessa forma que os arquivos de outros usuários não sejam acessados ou alterados por alguém que não possua permissão. Um exemplo de diretório que possui esse bit é o “/tmp”, para exemplificar podemos atribuir a um diretório a permissão através do caractere “t” ou do número “1” antes das permissões do diretório “chmod +t diretorio”, o exemplo anterior está adicionando o bit 1 ao diretório, ou seja está atribuindo o bit responsável pelo Stick bit ao diretório.

2.3 Estrutura básica de diretórios

A estrutura de diretório é padrão em distribuições Linux, a Figura 5 exemplifica a forma como é organizada. Cada diretório possui uma função, eles são divididos em:

● Diretório raiz (/) ­ Contém todos arquivos e diretórios dos sistema Linux, mesmo que estejam em outros dispositivos físicos, já que é através do diretório raiz que acabamos acessando­os. O único usuário que pode realizar modificações neste diretório é o root;

● Diretório /bin (ou binários executáveis) ­ Neste diretório estão localizados os binários executáveis, eles são nada mais que comandos essenciais, utilizados para trabalhar com arquivos, texto e recursos básicos de rede;

● Diretório /sbin (ou binários do sistema) ­ Da mesma forma que o diretório /bin, são armazenados executáveis contudo com um diferencial que estes são aplicativos utilizados por administradores de sistema com o fim de realizar funções de manutenção e outras tarefas;

● Diretório /usr (ou programas diversos) ­ O diretório reúne executáveis, bibliotecas e documentação de softwares utilizados por seus usuários. Toda vez que for instalado um programa ou compilado a partir do código fonte, ele será instalado nesse diretório;

● Diretório /etc (ou de configuração do sistema) ­ Se encontram os arquivos de configuração dos serviços utilizados pelos softwares, além de scripts específicos;

15

● Diretório /lib (ou bibliotecas) ­ Localizadas as bibliotecas dinâmicas utilizadas pelos comandos presentes nos diretórios /bin e /sbin e módulos do kernel;

● Diretório /opt (ou opcionais) ­ Normalmente contém alguns programas adicionais, quando instalamos eles ficam neste diretório, costumam não ser essenciais para o sistema;

● Diretório /home (ou de arquivos pessoais) ­ Contém os diretórios dos usuários, cada um com o nome de cada usuário e dentro de cada um com seus arquivos pessoais como fotos, documentos, músicas, filmes, etc. Em relação ao usuário root a pasta pessoal dele se encontra em /root;

● Diretório /boot (ou de inicialização) ­ Contém os arquivos estáticos responsáveis pela inicialização do sistema (carregar o boot ­ kernel do Linux);

● Diretório /mnt (volumes e mídias) ­ Neste diretório se encontram montados os arquivos de CD, pendrive ou disco rigido dependendo de qual esteja sendo utilizado no momento, o conteúdo é montado no sistema de arquivos local, ou seja, ele torna acessível os arquivos como se fossem apenas mais um diretório no sistema;

● Diretório /srv (ou de serviços) ­ Contém os dados de servidores e serviços em execução, utilizado por servidores Apache;

● Diretório /dev (ou arquivos de dispositivos) ­ Arquivos de acesso aos dispositivos do sistema;

● Diretório /var (ou arquivos variáveis) ­ Arquivos que variam seu tamanho durante o tempo, por exemplo logs do sistema;

● Diretório /proc (ou processos do sistema) ­ Contém os processos que estão sendo executados, não existe fisicamente, apenas quando o kernel está em funcionamento. Contém dados do Hardware da máquina;

● Diretório /tmp (ou arquivos temporários) ­ Neste diretório são salvos arquivos que serão utilizados em determinado instante, mas que logo em seguida não serão mais utilizados. Sempre que a máquina é reiniciada, o sistema deleta o conteúdo do diretório.

Figura 2.3.1 ­ Exemplo estrutura padrão de diretórios linux. ​

16

2.4 Diretório Raiz

Todos os arquivos e diretórios do sistema Linux instalado no computador partem de uma única origem: o diretório raiz. Mesmo que estejam armazenados em outros dispositivos físicos, é a partir do diretório raiz – representado pela barra (/) – que você poderá acessá­los. O único usuário do sistema capaz de criar ou mover arquivos do diretório raiz é o usuário­administrador. Isso evita que usuários comuns cometam erros e acabem comprometendo a integridade de todo o sistema de arquivos.

No Linux os discos e partições não aparecem necessariamente como unidades diferentes, como o C:, D:, E: do Windows. Tudo faz parte do diretório raiz. ​ ​ Dentro deste diretório temos não apenas todos arquivos e as partições de disco, mas também o CD­ROM, drive flash drives e outros dispositivos, formando a estrutura que você vê no gerenciador de arquivos.

2.5 Diretório Home

Também chamado de diretório de usuário. Em sistemas GNU/Linux, cada usuário possui seu próprio diretório onde poderá armazenar seus programas e arquivos pessoais. O diretório /home contém um diretório padrão (de perfil) para cada usuário. Se o nome de seu usuário é maria, então você encontrará um diretório de nome maria dentro de /home, portanto /home/maria. Este diretório contém arquivos do usuário maria e arquivos de configuração específicos dessa conta de usuário. Os usuários possuem permissão de gravação apenas em seu próprio diretório padrão, e apenas permissão de leitura em outros diretórios do sistema (em alguns casos, permissão nenhuma). O diretório /home é ​ equivalente à pasta 'documentos' no Windows. Para listar os arquivos do diretório é possível digitar o comando ls /home/joao.

3 CAPÍTULO ­ COMANDOS DO TERMINAL

Comandos são ordens que passamos ao sistema operacional para executar uma determinada tarefa. Cada comando tem uma função específica, devemos saber a função de cada comando e escolher o mais adequado para fazer o que desejamos, por exemplo:

● ls ­ Lista os arquivos de determinado diretório ​ ​ ● cd ­ Mudar de diretório ­ navegar pelo terminal ​ ​ É sempre usado um espaço depois do comando para separá­lo de uma opção ou parâmetro que será passado para o processamento. Um comando pode receber opções e parâmetros:

opções

17

As opções são usadas para controlar como o comando será executado, por exemplo, ​ para fazer uma listagem mostrando o dono, grupo, tamanho dos arquivos você deve ​ digitar ls -l. ​ ​ Opções podem ser passadas ao comando através de um "-" ou "--": ​ ​ ​ ​ ( - ): Opção identificada por uma letra. Podem ser usadas mais de uma opção ​ com um único hífen. O comando ls -l -a é a mesma coisa de ls -la ​ ​ ​ ( -- ): Opção identificada por um nome. Também chamado de opção extensa. O ​ comando ls --all é equivalente a ls -a. ​ ​ ​ ​

Pode ser usado tanto "-" como "--", mas há casos em que somente "-" ou "--" esta ​ ​ ​ ​ ​ ​ ​ ​ disponível.

parâmetros Um parâmetro identifica o caminho, origem, destino, entrada padrão ou saída padrão ​ ​ que será passada ao comando. Se você digitar: ls /usr/share/doc/copyright

será o parâmetro passado ao comando ls, neste caso queremos que ele liste os ​ arquivos do diretório /usr/share/doc/copyright. ​ ​ ​

É normal errar o nome de comandos, mas não se preocupe, quando isto acontecer o sistema mostrará a mensagem command not found (comando não encontrado) e voltará ao ​ aviso de comando. As mensagens de erro não fazem nenhum mal ao seu sistema, somente dizem que algo deu errado para que você possa corrigir e entender o que aconteceu. Os comandos se encaixam em duas categorias: Comandos Internos e Comandos Externos. ​ ​ ​ ​ Por exemplo: "ls ­la /usr/share/doc", ls é o comando, ­la é a opção passada ao comando, e /usr/share/doc é o diretório passado como parâmetro ao comando ls.

3.1 Navegação e manipulação de diretórios

ls: Lista os arquivos de um diretório. ​

ls [opções] [caminho/arquivo] [camin2/arqu2]... ​ ​ ​ ​ ​ ​

Onde:

caminho/arquivo : Diretório/arquivo que será listado. ​ caminho1/arquivo1 : Outro Diretório/arquivo que será listado. ​

Opções:

● ­a, ­­all : Lista todos os arquivos (inclusive os ocultos) de um diretório. ​ ​ ​

18

● ­A, ­­almost­all : Lista todos os arquivos (inclusive os ocultos) de um ​ ​ ​ diretório, exceto o diretório atual e o de nível anterior. ● ­d, ­­directory : Lista os nomes dos diretórios ao invés do conteúdo. ​ ​ ​ ● ­f : Não classifica a listagem. ​ ● ­F : Insere um caracter após arquivos executáveis ('*'), diretórios ('/'), soquete ('='), link simbólico ('@') e pipe ('|'). Seu uso é útil para identificar de forma fácil tipos de arquivos nas listagens de diretórios. ● ­h, ­­human­readable: Mostra o tamanho dos arquivos em Kbytes, Mbytes, ​ ​ Gbytes. ● ­H : Faz o mesmo que ­h, mas usa unidades de 1000 ao invés de 1024 para especificar Kbytes, Mbytes, Gbytes. ● ­l : Usa o formato longo para listagem de arquivos. Lista as permissões, data de modificação, donos, grupos, etc. ● ­L, ­­dereference : Lista o arquivo original e não o link referente ao arquivo. ​ ​ ​ ● ­p : Mesma coisa que ­F, mas não inclui o símbolo '*' em arquivos executáveis. Esta opção é típica de sistemas Linux. ● ­R : Lista diretórios e sub­diretórios recursivamente. ​

Exemplos do uso do comando ls:

● ls : Lista os arquivos do diretório atual. ​ ● ls /bin /sbin : Lista os arquivos do diretório /bin e /sbin ​ ● ls ­la /bin : Listagem completa (vertical) dos arquivos do diretório /bin inclusive os ocultos.

cd: Entra em um diretório. ​ Você precisa ter a permissão de execução para entrar no diretório.

cd [diretório] ​ ​ Onde: diretório : diretório que deseja entrar. ​ ​ Exemplos: Usando cd sem parâmetros ou cd ~, você retornará ao seu diretório de usuário (diretório home).

● cd / : retornará ao diretório raíz. ​ ● cd ­ : retornará ao diretório anteriormente acessado. ​ ● cd .. : retorna um diretório. ​ ● cd ../[diretório] : retorna um diretório e entra imediatamente no próximo (por ​ ​ exemplo, quando você está em /usr/sbin, você digita cd ../bin, o comando cd retorna um diretório (/usr) e entrará imediatamente no diretório bin (/usr/bin).

pwd: Mostra o nome e caminho do diretório atual. ​

19

Você pode usar o comando pwd para verificar em qual diretório se encontra (caso seu ​ aviso de comandos não mostre isso).

mkdir: Cria um diretório no sistema. Um diretório é usado para armazenar arquivos ​ de um determinado tipo. O diretório pode ser entendido como uma pasta onde você ​ guarda seus papeis (arquivos). Como uma pessoa organizada, você utilizará uma pasta para guardar cada tipo de documento, da mesma forma você pode criar um diretório vendas para guardar seus arquivos relacionados com vendas naquele local. mkdir [opções] [caminho/diretório] [camin2/diret2]... ​ ​ ​ ​ ​ ​

Onde: caminho : Caminho onde o diretório será criado. ​ diretório : Nome do diretório que será criado. ​

Opções: ​ ● ­p: Caso os diretórios dos níveis acima não existam, eles também serão criados. ​ ● ­­verbose : Mostra uma mensagem para cada diretório criado. As mensagens de ​ erro serão mostradas mesmo que esta opção não seja usada.

Para criar um novo diretório, você deve ter permissão de gravação. Por exemplo, para criar um diretório em /tmp com o nome de teste que será usado para gravar arquivos de teste, você deve usar o comando "mkdir /tmp/teste". ​ Podem ser criados mais de um diretório com um único comando (mkdir /tmp/teste /tmp/teste1 /tmp/teste2);

rmdir: Remove um diretório do sistema. Este comando faz exatamente o contrário do mkdir. O​ diretório a ser removido deve estar vazio e você deve ter permissão de gravação para remove­lo. rmdir [caminho/diretório] [caminh2/diret2]... ​ ​ ​ ​

Onde: caminho : Caminho do diretório que será removido. ​ diretório : Nome do diretório que será removido. ​

É necessário que esteja um nível acima do diretório(s) que será(ão) removido(s). Para remover diretórios que contenham arquivos, use o comando rm com a opção ­r. Por exemplo, para remover o diretório /tmp/teste você deve estar no diretório tmp e executar o comando “rmdir teste”.

20

3.2 Manipulação de arquivos

cat: Mostra o conteúdo de um arquivo binário ou texto. ​ cat [opções] [diretório/arquivo] [diret2/arqu2]... ​ ​ ​ ​

diretório/arquivo : Localização do arquivo que deseja visualizar o conteúdo. ​

Opções:

● ­n, ­­number : Mostra o número das linhas enquanto o conteúdo do arquivo é ​ mostrado. ● ­s, ­­squeeze­blank : Não mostra mais que uma linha em branco entre um ​ parágrafo e outro. ● ­ : Lê a entrada padrão. ​

O comando cat trabalha com arquivos texto. Use o comando zcat para ver diretamente arquivos compactados com gzip.

Exemplo: cat /usr/doc/copyright/GPL ​

tac: Mostra o conteúdo de um arquivo binário ou texto (como o cat) só que em ordem inversa​ .

tac [opções] [diretório/arquivo] [diret2/arq2]... ​ ​ ​ ​

diretório/arquivo : Localização do arquivo que deseja visualizar o conteúdo ​

Opções:

● ­s [string] : Usa o [string] como separador de registros. ​ ● ­ : Lê a entrada padrão. ​

Exemplo: tac /usr/doc/copyright/GPL.

rm: Apaga arquivos. Também pode ser usado para apagar diretórios e sub­diretórios vazio​ s ou que contenham arquivos, para isso deve ser utilizado o comando recursive.

rm [opções][caminho][arquivo/diretório] [cam2][arq2/dir2]... ​ ​ ​ ​ ​ ​ ​ ​ ​ ​

Onde:

caminho : Localização do arquivo que deseja apagar. Se omitido, assume que o arquivo ​ esteja no diretório atual. arquivo/diretório : Arquivo que será apagado. ​

21

Opções:

● ­i, ­­interactive : Pergunta antes de remover, esta é ativada por padrão. ​ ​ ​ ● ­v, ­­verbose : Mostra os arquivos na medida que são removidos. ​ ​ ​ ● ­r, ­­recursive : Usado para remover arquivos em sub­diretórios. Esta opção ​ também pode ser usada para remover sub­diretórios. ● ­f, ­­force : Remove os arquivos sem perguntar. ​ ​ ​ ● ­­ arquivo : Remove arquivos/diretórios que contém caracteres especiais. O separador "­­" funciona com todos os comandos do shell e permite que os caracteres especiais como "*", "?", "­", etc. sejam interpretados como caracteres comuns.

Use com atenção o comando rm, uma vez que os arquivos e diretórios forem apagados, eles não poderão ser mais recuperados.

Exemplos:

● rm teste.txt : Apaga o arquivo teste.txt no diretório atual. ​ ● rm *.txt : Apaga todos os arquivos do diretório atual que terminam com .txt. ​ ● rm *.txt teste.novo : Apaga todos os arquivos do diretório atual que terminam com .txt e também o arquivo teste.novo. ● rm ­rf /tmp/teste/* : Apaga todos os arquivos e sub­diretórios do diretório /tmp/teste mas mantém o sub­diretório /tmp/teste. ● rm ­rf /tmp/teste : Apaga todos os arquivos e sub­diretórios do diretório /tmp/teste, inclusive /tmp/teste. ● rm ­f ­­ ­­arquivo­­ : Remove o arquivo de nome ­­arquivo­­. ​

cp: Copia arquivos. ​ cp [opções] [origem] [destino] ​ ​ ​ ​ ​ ​

Onde:

origem : Arquivo que será copiado. Podem ser especificados mais de um arquivo para ​ ser copiado usando "Curingas". destino : O caminho ou nome de arquivo onde será copiado. Se o destino for um ​ diretório, os arquivos de origem serão copiados para dentro do diretório.

Opções:

● i, ­­interactive : Pergunta antes de substituir um arquivo existente. ​ ​ ​ ● ­f, ­­force : Não pergunta, substitui todos os arquivos caso já exista. ​ ​ ​ ● ­r : Copia arquivos dos diretórios e subdiretórios da origem para o destino. É recomendável usar ­R ao invés de ­r. ● ­R, ­­recursive : Copia arquivos e sub­diretórios (como a opção ­r) e também os ​ arquivos especiais FIFO e dispositivos. ● ­v, ­­verbose : Mostra os arquivos enquanto estão sendo copiados. ​ ​ ​

O comando cp copia arquivos da ORIGEM para o DESTINO. Ambos origem e destino terão o mesmo conteúdo após a cópia.

22

Exemplos:

● cp teste.txt teste1.txt : Copia o arquivo teste.txt para teste1.txt. ​ ● cp teste.txt /tmp : Copia o arquivo teste.txt para dentro do diretório /tmp. ​ ● cp * /tmp : Copia todos os arquivos do diretório atual para /tmp. ​ ● cp /bin/* . : Copia todos os arquivos do diretório /bin para o diretório em que nos encontramos no momento. ● cp ­R /bin /tmp : Copia o diretório /bin e todos os arquivos/sub­diretórios existentes para o diretório /tmp. ● cp ­R /bin/* /tmp : Copia todos os arquivos do diretório /bin (exceto o diretório /bin) e todos os arquivos/sub­diretórios existentes dentro dele para /tmp. ● cp ­R /bin /tmp : Copia todos os arquivos e o diretório /bin para /tmp. ​

mv: Move ou renomeia arquivos e diretórios. O processo é semelhante ao do comando cp ma​ s o arquivo de origem é apagado após o término da cópia.

mv [opções] [origem] [destino] ​ ​ ​ ​ ​ ​

Onde:

origem : Arquivo/diretório de origem. ​ destino : Local onde será movido ou novo nome do arquivo/diretório. ​

Opções:

● ­f, ­­force : Substitui o arquivo de destino sem perguntar. ​ ​ ​ ● ­i, ­­interactive : Pergunta antes de substituir. É o padrão. ​ ​ ​ ● ­v, ­­verbose : Mostra os arquivos que estão sendo movidos. ​ ​ ​

O comando mv copia um arquivo da ORIGEM para o DESTINO (semelhante ao cp), ​ ​ mas após a cópia, o arquivo de ORIGEM é apagado. ​ ​

Exemplos:

● mv teste.txt teste1.txt : Muda o nome do arquivo teste.txt para teste1.txt. ​ ● mv teste.txt /tmp : Move o arquivo teste.txt para /tmp. Lembre­se que o arquivo de origem é apagado após ser movido. ● mv teste.txt teste.new (supondo que teste.new já exista) ­ Copia o arquivo teste.txt por cima de teste.new e apaga teste.txt após terminar a cópia.

Locate: Realiza busca em um banco de dados de arquivos e diretórios do seu sistema, reto​ rnando todos os resultados com a sequência de caracteres informada, pode resultar em uma lista imensa.

locate [busca]

locate *busca* : Correspondente a forma padrão (locate [busca]), pesquisa todos arquivos que contenham o argumento [busca] em seu nome, não importante se no ​

23

inicio, meio ou fim. Pesquisa é feita diretamente no endereço do arquivo e não em seu nome. locate busca* : Correspondente a " */busca* ", pesquisa por arquivos cujo nome inicia no ​ ​ argumento informado [busca]. ​ ​

Find: Procura por arquivos na árvore de diretórios, ou seja, localiza o que solicitamos dentro d​ o local que indicamos checando os subdiretórios também. find [caminho] [opções] [busca]

Onde: caminho : Local que deverá ser realizada a busca. ​ busca : Nome do arquivo ou diretório que será buscado. ​

Opções:

● ­name : Localiza arquivos e diretórios pelo nome. ​ ● ­size : Localiza arquivos pelo tamanho especificado. ​ ● ­type : Tipo a ser buscado (­f : arquivos, ­d : diretórios, ­l : links). ​ ● ­atime : Localiza pela última data de acesso. ​ ● ­mtime : Localiza pela última data de modificação. ​ ● ­ctime : Indica quando os meta­dados do arquivo foram alterados pela última vez. ​ ● ­exec : Executa comandos com os arquivos localizados. ​ ● ­ok : Solicita confirmação antes de executar comandos. ​

Exemplos:

● find /usr ­name xx : Pesquisa por arquivos e diretórios com o nome xx. ​ ​ ​ ● find ~/ ­type d ­name xx : Pesquisa por diretórios a partir da home com nome xx. ​ ​ ● find teste/ ­size +100M : Localiza arquivos no diretório teste com mais de 100MB. ​ ​ ​

Diff: Compara o conteúdo de dois arquivos e relata a diferença entre eles. Também pode c​omparar diretórios, pastas e arquivos compactados. diff [opções] [arquivo/diretório] [diret2/arq2] arquivo/diretório : arquivos ou diretórios a serem comparados. ​

Opções:

● ­i : ignora as diferenças de letras maiúsculas/minúsculas. ​ ● ­E : ignora as diferenças de tabulação. ​ ● ­b : ignora diferenças na quantidade de espaço em branco. ​ ● ­w : ignora qualquer espaço em branco. ​ ● ­B : ignora linhas em branco a mais ou a menos. ​ ● ­a : compara os arquivos como arquivos de texto, ainda que não sejam. ​ ● ­q : mostra apenas se o conteúdo dos arquivos são ou não diferentes. ​ ● ­y : mostra os arquivos em duas colunas, indicando as diferenças. ​ ● ­r : compara recursivamente todo o conteúdo de um diretório. ​

24

Quando as comparações forem feitas:

● c : Indica que a informação deve ser alterada. ​ ● a : Indica que a informação deve ser incluída.. ​ ● d : Indica que a informação deve ser deletada. ​ ● < : Indica que deve ser retirada a informação que lhe segue. ​ ● > : Indica que deve ser incluída a informação que lhe segue. ​

Exemplos:

● diff teste1 teste2 : Mostra alterações a serem feitas para teste1 ficar igual a teste2. ● diff ­i ­E exem1 exem2 : Igual exemplo anterior, porém ignorando diferenças de ​ letras maiúsculas/minúsculas e diferenças de tabulação.

: Faz com que um único arquivo contenha vários outros. O comando Tar permite, Tar ​ por ex​ emplo, armazenar em único arquivo as cópias de documentos existentes na pasta de um usuário. ​

tar [opções] [nome_do_arquivo_tar] [arquivos_de_origem]

Onde:

nome_do_arquivo_tar : especifica qual o nome o arquivo .tar terá. ​ arquivos_de_origem : define o diretório ou os arquivos que se tornarão um .tar ​

Opções:

● ­z : Comprime o arquivo tar resultante com o gzip (visto mais à frente). ​ ● ­c, ­­create : Cria uma novo arquivo .tar. ​ ​ ​ ​ ● ­v, ­­verbose : Exibe detalhes sobre o procedimento. ​ ​ ● ­f : Indica que o resultado será do tipo arquivo (file). ​ ​ ● ­t : Exibe o conteúdo de um arquivo tar. ​ ● ­r : Adiciona arquivos a um arquivo tar existente. ​ ● ­x : Extrai arquivos de um arquivo tar existente. ​

Exemplos:

● tar ­cf teste.tar um.txt dois.txt : O comando acima cria o arquivo teste.tar, que ​ contém os arquivos um.txt e dois.txt. ​ ● tar ­xvf icones.tar : Extrai conteúdo do arquivo icones, O arquivo será sempre ​ descomprimido no diretório atual. Use o comando pwd, caso não saiba em que ​ ​ ​ diretório você se encontra. ● tar ­xvf icones.tar ­C ~/meus_icones/ : Igual ao exemplo anterior, mas direciona a extração do conteúdo para o diretório meus_icones. ​ ​

25

Gzip: A ferramenta Tar, por si só, serve apenas para juntar vários arquivos em um só. No enta​ nto, o programa não é capaz de diminuir o tamanho do arquivo resultante, isto é, de compactá­lo. Para isso devemos usar o gzip.

gzip [opções] [nome_do_arquivo]

nome_do_arquivo : especifica qual o nome o arquivo .gz terá. ​

Opções:

● ­c : Extrai um arquivo para a saída padrão; ​ ● ­d : Descompacta um arquivo comprimido; ​ ● ­l : Lista o conteúdo de um arquivo compactado; ​ ● ­v, ­­verbose : Exibe detalhes sobre o procedimento; ​ ● ­r : Compacta pastas; ​ ● ­t : Testa a integridade de um arquivo compactado. ​

Ainda é possível utilizar uma numeração de 1 a 9 para indicar o nível de compactação. Quanto maior o número, maior será a compactação do arquivo.

Exemplos:

● gzip ­9 teste.ods : Compacta o arquivo teste.ods para o nível mais alto de compreensão. ● gzip ­d teste.odt.gz : Descompacta o arquivo teste.odt.gz. ​

3.3 Usuários e grupos

O Linux foi desenvolvido desde o seu inicio para trabalhar em rede com outros computadores. Por iste motivo, ele possui suporte a usuários e grupos, que garantem uma maior organização e segurança para o sistema. A seguir são listados comandos para gerenciamento de usuários e grupos no Linux.

adduser: Adiciona um usuário ou grupo no sistema. Por padrão, quando um novo ​ usuário é adicionado, é criado um grupo com o mesmo nome do usuário. Opcionalmente o adduser também pode ser usado para adicionar um usuário a um grupo. Será criado um diretório home com o nome do usuário (a não ser que o novo usuário criado seja um usuário do sistema) e este receberá uma identificação. A identificação do usuário (UID) escolhida será a primeira disponível no sistema especificada de acordo com a faixa de UIDS de usuários permitidas no arquivo de configuração /etc/adduser.conf. Este é o arquivo que contém os padrões para a criação de novos usuários no sistema.

adduser [opções] [usuário/grupo] ​ ​ ​ ​

Onde:

usuário/grupo : Nome do novo usuário que será adicionado ao sistema. ​

26

Opções:

● ­disable­passwd : Não executa o programa passwd para escolher a senha e somente permite o uso da conta após o usuário escolher uma senha. ● ­­force­badname : Desativa a checagem de senhas ruins durante a adição do novo usuário. Por padrão o adduser checa se a senha pode ser facilmente adivinhada. ● ­­group : Cria um novo grupo ao invés de um novo usuário. A criação de grupos também pode ser feita pelo comando addgroup. ● ­uid [num] : Cria um novo usuário com a identificação [num] ao invés de procurar o próximo UID disponível. ● ­gid [num] : Faz com que o usuário seja parte do grupo [gid] ao invés de pertencer a um novo grupo que será criado com seu nome. Isto é útil caso deseje permitir que grupos de usuários possam ter acesso a arquivos comuns. Caso estiver criando um novo grupo com adduser, a identificação do novo grupo será [num]. ● ­­home [dir] : Usa o diretório [dir] para a criação do diretório home do usuário ao invés de usar o especificado no arquivo de configuração /etc/adduser.conf. ● ­­ingroup [nome] : Quando adicionar um novo usuário no sistema, coloca o usuário no grupo [nome] ao invés de criar um novo grupo. ● ­­quiet : Não mostra mensagens durante a operação. ​ ● ­­system : Cria um usuário de sistema ao invés de um usuário normal. ​

Os dados do usuário são colocados no arquivo /etc/passwd após sua criação e os dados do grupo são colocados no arquivo /etc/group.

OBSERVAÇÃO: Caso esteja usando senhas ocultas (shadow passwords), as senhas dos usuários serão colocadas no arquivo /etc/shadow e as senhas dos grupos no arquivo /etc/gshadow. Isto aumenta mais a segurança do sistema porque somente o usuário root pode ter acesso a estes arquivos, ao contrário do arquivo /etc/passwd que possui os dados de usuários e devem ser lidos por todos.

addgroup: Adiciona um novo grupo de usuários no sistema. As opções usadas ​ são as mesmas do adduser. addgroup [usuário/grupo] [opções] ​ ​ ​ ​

passwd: Modifica a parâmetros e senha de usuário. Um usuário somente pode ​ alterar a senha de sua conta, mas o superusuário (root) pode alterar a senha de qualquer conta de usuário, inclusive a data de validade da conta, etc. Os donos de grupos também podem alterar a senha do grupo com este comando. Os dados da conta do usuário como nome, endereço, telefone, também podem ser alterados com este comando.

27 passwd [usuário] [opções] ​ ​ ​ ​

Onde: usuário : Nome do usuário que terá sua senha alterada. ​

Opções:

● ­e : Força a expiração de senha para a conta especificada. ​ ● ­k : Somente altera a senha se a conta estiver expirada. ​

Procure sempre combinar letras maiúsculas, minúsculas, e números ao escolher suas senhas. Não é recomendado escolher palavras normais como sua senha pois podem ser vulneráveis a ataques de dicionários cracker. Outra recomendação é utilizar senhas ​ ocultas em seu sistema (shadow password). ​ ​ ​ Você deve ser o dono da conta para poder modificar a senhas. O usuário root pode modificar/apagar a senha de qualquer usuário.

Exemplo: passwd root. ​ ​

gpasswd: Modifica parâmetros e senha de grupo. Um usuário somente pode alterar ​ a senha de seu grupo, mas o superusuário (root) pode alterar a senha de qualquer ​ ​ grupo de usuário, inclusive definir o administrador do grupo. gpasswd [opções] [usuario] [grupo] ​ ​ ​ ​ ​ ​ Onde: usuário : Nome do usuário/grupo que terá sua senha alterada. ​ ​ Opções:

● -r usuario grupo : Remove a senha de grupo. ​ ​ ​ ​ ​ ● -R usuario grupo : Desativa o acesso do grupo usando o comando newgrp. ​ ​ ​ ​ ​ ​ ​ ● -a usuario grupo : Adiciona o usuário no grupo especificado. ​ ​ ​ ​ ​ ● -d usuario grupo : Apaga o usuário do gurpo especificado. ​ ​ ​ ​ ​ Quando o grupo não possui senha, somente quem faz parte do grupo pode utilizar o comando new-grp. ​ ​ Você deve ser o dono da conta para poder modificar a senhas. O usuário root pode modificar/apagar a senha de qualquer usuário.

Exemplo: gpasswd grupo, gpasswd -a gleydson grupo. ​ ​

28 newgrp: Altera a identificação de grupo do usuário. Para retornar a identificação ​ anterior, digite exit e tecle Enter. Para executar um comando com outra identificação de ​ grupo de usuário, use o comando sg. ​ ​ newgrp - [grupo] ​ ​ ​ ​

Onde: - : Se usado, inicia um novo ambiente após o uso do comando newgrp (semelhante a ​ ​ um novo login no sistema), caso contrário, o ambiente atual do usuário é mantido. grupo : Nome do grupo ou número do grupo que será incluído. ​ ​ Quando este comando é usado, é pedida a senha do grupo que deseja acessar. Caso a senha do grupo esteja incorreta ou não exista senha definida, a execução do comando é negada. A listagem dos grupos que pertence atualmente pode ser feita usando o comando id. ​ ​

userdel: Apaga um usuário do sistema. Quando é usado, este comando apaga ​ todos os dados da conta especificado dos arquivos de contas do sistema. userdel [-r] [usuário] ​ ​ ​ ​ Onde: -r : Apaga também o diretório HOME do usuário. ​ ​ OBS: Note que uma conta de usuário não poderá ser removida caso ele estiver no sistema, pois os programas podem precisar ter acesso aos dados dele (como UID, GID) no /etc/passwd. ​ ​

groupdel: Apaga um grupo do sistema. Quando é usado, este comando apaga ​ todos os dados do grupo especificado dos arquivos de contas do sistema. groupdel [grupo] ​ ​ Tenha certeza que não existem arquivos/diretórios criados com o grupo apagado através do comando find. ​ ​ OBS: Você não pode remover o grupo primário de um usuário. Remova o usuário primeiro.

sg: Executa um comando com outra identificação de grupo. A identificação do grupo de ​ usuário é modificada somente durante a execução do comando. Para alterar a identificação de grupo durante sua seção shell, use o comando newgrp. ​ ​ sg [-] [grupo] [comando] ​ ​ ​ ​ ​ ​ Onde:

29

- : Se usado, inicia um novo ambiente durante o uso do comando (semelhante a um novo login e execução do comando), caso contrário, o ambiente atual do usuário é mantido. grupo : Nome do grupo que o comando será executado. ​ comando : Comando que será executado. O comando será executado pelo bash. ​ Quando este comando é usado, é pedida a senha do grupo que deseja acessar. Caso a senha do grupo esteja incorreta ou não exista senha definida, a execução do comando é negada.

Exemplo: sg root ls /root ​

: Muda os dados usados pelo comando finger. chfn ​ ​ ​ chfn [usuário] [opções] ​ ​ ​ ​ Onde: usuário : Nome do usuário. ​ ​ ​ Opções:

● -f [nome] : Adiciona/altera o nome completo do usuário. ​ ● -r [nome] : Adiciona/altera o número da sala do usuário. ​ ● -w [tel] : Adiciona/altera o telefone de trabalho do usuário. ​ ● -h [tel] : Adiciona/altera o telefone residencial do usuário. ​ ● -o [outros] : Adiciona/altera outros dados do usuário. ​

Caso o nome que acompanha as opções (como o nome completo) contenha espaços, use "" para identifica­lo. ​ ​ Exemplo: chfn -f "Nome do Usuário root" root ​

id: Mostra a identificação atual do usuário, grupo primário e outros grupos que ​ pertence. id [opções] [usuário] ​ ​ ​ ​ Onde: usuário : É o usuário que desejamos ver a identificação, grupos primários e ​ ​ complementares.

Opções:

● -g, --group : Mostra somente a identificação do grupo primário. ​ ​ ​ ● -G, --groups : Mostra a identificação de outros grupos que pertence. ​ ​ ​ ● -n, --name : Mostra o nome do usuário e grupo ao invés da identificação ​ numérica. ● -u, --user : Mostra somente a identificação do usuário (user ID). ​ ​ ​

30

● -r, --real : Mostra a identificação real de usuário e grupo, ao invés da efetiva. ​ ​ Esta opção deve ser usada junto com uma das opções: -u, -g, ou -G. ​ ​ ​ ​ ​ ​ Caso não sejam especificadas opções, id mostrará todos os dados do usuário.

Exemplo: id, id --user, id -r -u. ​ ​ ​ ​

logname: Mostra seu login (username). ​ Exemplo: logname ​

users: Mostra os nomes de usuários usando atualmente o sistema. Os nomes de ​ usuários são mostrados através de espaços sem detalhes adicionais, para ver maiores detalhes sobre os usuários, veja os comandos id e who. ​ ​ ​ ​ users

Os nomes de usuários atualmente conectados ao sistema são obtidos do arquivo /var/log/wtmp. ​

groups: Mostra os grupos que o usuário pertence. ​ groups [usuário] ​ ​ Exemplo: groups, groups root. ​ ​ ​ ​

3.4 Utilitários de Texto

O Linux possui diversos utilitários para edição de texto, aqui citaremos o editor Nano e o Vi. O Linux possui por padrão o editor de texto, com interface gráfica, GEdit, mas muitas vezes acessando computadores remotos, onde não podemos nos beneficiar da interface gráfica, devemos então, utilizar um utilitário de texto via terminal.

Se sua distribuição de Linux não tem possui os editores citados instalados por padrão, você pode encontrar estes programas nos repositórios­padrão, a instalação de programas será apresentada no próximo capítulo.

Nano

O Nano é um editor que deve ser executado a partir do terminal, e se concentra em simplicidade, utilizando combinações muito simples de teclas para trabalhar com arquivos, por este motivo é um dos editores mais utilizados.

31

Um arquivo é aberto ou iniciado pelo Nano com o comando:

nano

Ou, se você precisa editar um arquivo que somente o usuário root tem acesso, faça: sudo nano

O comando sudo (no terminal) é usada na hora de fazer tarefas administrativas, ele especifica a função de Super Usuário, veremos mais sobre ele em breve.

Todos os comandos executados pelo Nano iniciam com a tecla CTRL. Os comando ​ ​ mais comuns utilizados no Nano são:

● CTRL+X ­ Sai do editor. Se estiver executando uma edição no arquivo, o processo irá perguntar se você deseja salvar seu trabalho.

● CTRL+C ­ Mostra a posição atual do cursor.

● CTRL+K ­ 'recorta' uma linha de texto.

● CTRL+U ­ 'cola' o texto recortado com o comando anterior.

● CTRL+S ­ Salva o arquivo e continua trabalhando.

● CTRL+T ­ verifica a ortografia do seu texto.

● CTRL+W ­ faz uma busca no texto.

● CTRL+A ­ Leva o cursor para o início da linha.

● CTRL+E ­ Leva o cursor para o fim da linha.

● CTRL+G ­ Mostra a ajuda do Nano.

Existem diversos comandos para serem utilizados no Nano. Para verificar a lista completa de comandos, use o comando CTRL­G.

32

Figura 3.4.1 ­ Exemplo de arquivo aberto com o Nano pelo terminal de comando. ​

VI O Vi é um editor de texto muito empregador por desenvolvedores de software por apresentar uma interface um pouco mais elaborada. O seu nome é uma forma abreviada para a palavra Visual. ​ ​ Semelhante ao Nano, um arquivo é aberto ou iniciado pelo Vi com o comando:

vi

Quando iniciado, o editor entra no modo visualização e aguarda comandos do ​ ​ usuário. Tecle para entrar no modo edição, para assim alterar o texto. Enquanto ​ ​ estiver no modo edição de texto o editor não recebe comandos do usuário, para isso necessita retornar ao modo visualização, teclando . ​ ​ Modo de edição No modo de edição, podemos digitar a vontade como se fosse um editor de textos comum. Além da tecla , podemos entrar neste modo com os seguintes comandos: ​ ​ ● i : insere texto a partir do cursor atual

● a : insere texto depois do cursor atual

● I : insere texto no início da linha

● A : insere texto no final da linha

● s : substitui texto no cursor atual

● S : substitui texto depois do cursor atual

33

● o : abre uma linha abaixo do cursor atual

Modo de visualização No modo de visualização, você pode executar comandos. Alguns dos comandos são: substituição, inserção, procura de texto, salvar, além de recorte, cópia e colagem de texto. Comandos básicos:

● :wq ­ Salva o arquivo e sai do editor

● :w ­ Salva o arquivo corrente com o nome especificado

● :w! ­ Salva o arquivo corrente no arquivo especificado

● :q ­ Sai do editor

● :q! ­ Sai do editor sem salvar as alterações realizadas

Comandos de busca: ● /palavra ­ Busca por palavra ou caractere em todo o texto

● ?palavra ­ Move o cursor para a ocorrência anterior da palavra

● n ­ Repete o último comando de “/” ou “?”

● N ­ Repete o último comando de “/” ou “?” , na direção reversa

● Ctrl+G ­ Mostra o nome do arquivo, o número da linha corrente e o total de linhas

Um exemplo de uso com um código HTML pode ser visto na Figura 3.4.2 abaixo.

34

Figura 3.4.2 ­ Exemplo de arquivo HTML aberto com o Vi pelo terminal de comando. ​

3.5 Usuário Root

O Linux, e todos os sistemas baseados em Unix, possui por padrão um tipo de usuário que tem acesso ilimitado aos arquivos e processos do sistema, este pode ser denominado de usuário root ou super usuário. Esse usuário pode efetuar qualquer tipo de ​ ​ ​ ​ operação, como apagar ou modificar arquivos importantes, ou alterar configuração do ​ sistema. Por isso deve se tomar muito cuidado ao fazer alterações no sistema com esse ​ ​ tipo de usuário. Para utilizar os recursos de super usuário, o seu usuário deve pertencer ao ​ ​ grupo sudo. ​ ​ Você certamente já se deparou com a mensagem: “Permissão negada” ao tentar ​ ​ acessar uma pasta, ou criar um diretório através do terminal. Isto se deve aos níveis de permissões. Ao utilizar o comando "sudo", antes de qualquer outro comando, o usuário ​ ​ pode executar todos os comandos através do modo super usuário, com permissão irrestrita. ​ ​ sudo Por exemplo, o comando:

sudo mkdir /var/diretorio

Criaria uma pasta dentro do diretório /var o qual, só pode ser manipulado pelo super usuário. Todos os comandos que utilizarem o sudo, vão solicitar senha, quando isso ocorrer, forneça a sua senha de usuário, não é necessário fornecer a senha do root ​ ​ Observações importantes:

● A sua senha é armazenada por 15 minutos, quando executado um comando sudo. Depois disso, você terá de digitar a senha novamente.

● Para executar a configuração gráfica com o sudo, apenas lance execute a aplicação pelo menu, e então abrirá uma janela solicitando sua senha.

● Sua senha não será mostrada na tela enquanto digitada no terminal, e será ​ mostrada apenas com asteriscos quando digitá­la pela interface gráfica.

O usuário root (super usuário) é o único que pode ter acesso ilimitado aos recursos do sistema, seu uso deve ser feito apenas nas situações que o exigem. Para tarefas cotidianas, deve­se sempre utilizar um usuário comum. ​ ​

35

3.6 Gerenciamento do Sistema

Para que você melhor possa administrar seu Sistema, o Linux conta com vários comandos via texto que podem auxiliar no monitoramento, controle e obtenção de informações no Linux. Alguns destes recursos podem ser melhor evidenciados abaixo.

chmod - Comando via termina que possibilita a alteração das permissões de acesso ​ de arquivo​ s e diretórios. O chmod atua basicamente sobre os níveis usuário, grupo e ​ ​ ​ ​ outros. A tabela que segue abaixo exemplifica melhor os níveis das permissões ​ disponíveis.

PERMISSÕES

0 ­ PERMISSÃO NEGADA

1 ­ PERMISSÃO DE EXECUÇÃO

2 ­ PERMISSÃO DE GRAVAÇÃO

3 ­ PERMISSÃO DE GRAVAÇÃO E E EXECUÇÃO

4 ­ PERMISSÃO DE LEITURA

5 ­ PERMISSÃO DE LEITURA E EXECUÇÃO

6 ­ PERMISSÃO DE LEITURA E GRAVAÇÃO

7 ­ SOMA DE TODAS AS PERMISSÕES Tabela 3.6.1 ­ Permissões de arquivos com chmod ​

● chmod 744 file ­ Para alterar as permissões do arquivo “file” de modo ao ​ proprietário ter total permissão(leitura, execução e escrita) enquanto que os usuários pertencentes ao Grupo e os Outros terão permissão apenas de ​ ​ leitura.

● chmod -R 744 /Documentos ­ Para alterar as permissões de forma idêntica ​ ao exemplo anterior, porém do sub­diretório /Documentos e todo seu conteúdo de forma recursiva.

Monitoramento de Acesso

● w ­ Mostra quem está logado e o que está fazendo. Se não for especificado ​ um usuário no comando, o mesmo irá exibir informações de todos os usuários logados no sistema. ● who ­ Semelhante ao comando w mostra quais são os usuários que estão ​ ​ ​ ​ logados no sistema.

36

○ who ­m para mostrar o nome do usuário logado no sistema. ​ ○ who ­q para mostrar a quantidade total e nomes dos usuários ​ conectados ao sistema. ● last ­ Exibe as informações referente aos login e logout dos usuários do ​ sistema. ○ last ­a exibe informações mostrando o nome da máquina de onde ​ foram efetuados o login e logout. ○ last ­d exibe as mesmas informação do comando acima porém ​ mostrando o endereço IP da máquina onde foram efetuados os logins.

Shell(Bash) e Utilitários de Terminal

● man ­ Exibe um manual do funcionamento de outros comandos do Linux. EX.: man man irá mostrar o manual do pŕoprio man. ​ ​ ​ ​

● help ­ Exibe informações sobre comandos internos do Bash. EX.: help ​ logout para exibir informações do funcionamento do comando logout. ​ ​ ​

● whatis ­ Pesquisa em uma base de dados uma curta descrição dos ​ ​ comandos do sistema passados como parâmetros. Para criar e atualizar esta base de dados é necessário a execução do comando sudo makewhatis. ​ ​ EX.: whatis sudo su para obter uma descrição resumida dos comandos ​ sudo e su. ​ ​ ​

● login ­ Permite a um usuário efetuar o logon no sistema.EX.: ​ ○ login fulano para efetuar login do usuário “fulano”. ​ ○ login ­p fulano para efetuar o login do usuário “fulano” sem deslogar da sessão do usuário atual.

● su ­ Permite alterar entre os usuários cadastrados do sistema. EX.: ​ ○ su fulano permite alterar para o usuário “fulano” após a senha de ​ login estar correta.

● sudo ­ Permite o usuário autorizado executas comandos como se fosse super­usuário(root) ou outro usuário qualquer.

● clear ­ Utilizado para limpar a tela do Terminal movendo o cursor para a primeira linha. Equivalente a tecla de atalho CTRL + L.

Informações do Sistema (Hardware e Processos) ● uname ­a ­ Exibe todas as informações do sistema, como nome, data, arquitetura, etc…

37

● df ­ Mostra o espaço em disco do Sistema de arquivos usado por todas as partições. EX.: df ­h Exibe as informações em megabytes. ​ ​

● du ­ Exibe o tamanho de arquivos ou diretórios. Se nenhum argumento for passado no comando o mesmo assume o diretório atual. EX.: du ­h [nome ​ arquivo/diretório] para exibir a informação em Megabytes. ​

● free ­ Exibe a quantidade de memória livre e usada no sistema. EX.: free ­m ​ ​ exibe estas informações em Megabytes.

● lsb_release ­ Exibe as informações básicas do sistema operacional(SO) e sua distribuição. EX.: lsb_release ­a para exibir toodas as informações do ​ sistema.

● top ­ Exibe em tempo real inforações sobre os processos em andamento e recursos do sistema, incluídos CPU, memória RAM, uso do SWAP e o número total de tarefas sendo executadas. Este comando ainda permite a manipulação destes processos por meio de comandos interativos. ○ k ­ Finaliza, “mata” um processo. ​ ○ m ­ Ativa/Desativa a exibição de informações de memória ​ ○ M ­ Ordena os processos pelo uso de memória ​ ○ P ­ Ordena os processos pelo uso da CPU(padrão). ​ ○ ESPAÇO (tecla) ­ Atualiza imediatamente a visualização do quadro de processos. ○ h ­ Exibe ajuda dos comandos do top. ​ ○ q ­ Fecha o comando top. ​ ​ ​

● ps ­ Apresenta um quadro atual, porém estático dos processos que estão sendo executados no sistema. EX.: ps aux para apresentar os processos de ​ todos os usuários.

● kill ­ Finaliza, “mata”, processos pelo seu PID que pode ser obtido através do comando descrito acima. EX.: kill ­9 1345 para finalizar o processo de ​ número PID 1345.

● killall ­ Finalizar toda a árvore de processos de um determinado programa ou ​ tarefa. EX.: killall mozilla­ para fechar o navegador com todos os seus ​ processos.

3.7 Dicas

A fim de tornar a utilização do sistema mais ágil, podem ser utilizadas teclas de atalho que permitem o acesso a determinadas funcionalidades com muito mais facilidade. Logo abaixo é apresentada um lista de atalhos e alguns comandos no terminal que podem facilitar muito a vida do usuário.

38

Atalhos de teclado:

● CTRL+ALT+T : Abre o terminal Linux; ​ ● TAB (no terminal) : Ao digitar um comando no terminal, antes de completá­lo, ​ ao pressionar essa tecla, o próprio sistema irá completar o comando, caso exista mais uma possibilidade de comando para o trecho que já foi digitado, o terminal irá apresentar todas as possibilidades que se encaixam. ● CTRL+R (no terminal) : Permite que o usuário faça uma pesquisa em seu histórico de comandos, o terminal completa com as possibilidades conforme o usuário vai digitando. ● ALT+TAB : Alterna entre as janelas abertas no sistema. ​ ● WINDOWS/SUPER : Pressionar por alguns segundos essa tecla irá exibir um ​ janela na tela do sistema que conta com uma série de atalhos que podem ser muito úteis, como pode ser visto na figura logo abaixo. Uma lista com todos os atalhos de teclado pode ser conferida na Figura 3.7.1 abaixo.

Figura 3.7.1 ­ Janela de atalhos na página inicial do Ubuntu ​

Comandos úteis no terminal:

● history : Irá listar todos o comandos que o usuário já executou no terminal. ​ ● help ­­ : Irá apresentar uma algumas possibilidades de comando. ​ ● help : Exibe informações detalhadas sobre uma função com este nome. ● man ­k : Exibe informações detalhadas sobre funções que não estão presentas na lista apresentada pelo help. Sem utilizar o ­k, é exibido o ​ ​ ​ ​ manual daquele comando.

39

4 CAPÍTULO ­ UBUNTU DESKTOP E SEUS PROGRAMAS

4.1 Usando o Ubuntu Desktop

Como definido posteriormente a Distruição Linux usada neste tutorial é desenvolvida pela Cannonical e apresenta um ambiente gráfico denominado Unity. Denominado como Ubuntu, o Sistema operacional conta com seu Desktop padrão como segue a Figura 4.1.1 abaixo.

Figura 4.1.1 ­ Área de Trabalho padrão do Ubuntu 14.04 ​

Barra de Menu (Menu Bar) A barra de menu fica posicionada na parte superior do Desktop, nela se encontram os ícones de identificação mais comumente usados, como estes.:

● Indicadores de rede ­ Que dão acesso rápido e fácil as conexões de rede disponíveis, permitindo suas configurações.

● Indicador de Idioma de entrada ­ Que permite a mudança de idioma ​ padrão do teclado.

● Indicador de status de bateria ­ Que exibe o status da carga da ​ bateria.

● Indicador de mensagens ­ Que possibilita a incorporação de ​ notificações de redes sociais.

40

● Indicador de som ­ Que possibilita o controle e a configuração do ​ sistema de som do Ubuntu.

● Indicador de sessão ­ Que possibilita acessar um link para todas as ​ Configurações do Sistema, desligar, reiniciar, troca de usuário e acessar o Help Ubuntu.

Lançador (Launcher) A barra vertical com ícones, posiciona ao canto esquerdo da tela, chama­se lançador (Launcher) que promove um fácil acesso à aplicativos que estejam instalados no Sistema Operacional, além de indicar os aplicativos que estiverem em execução, a Figura 4.1.2 abaixo demonstra como este recurso é implementado no Ubuntu.

Figura 4.1.2 ­ Lançador padrão do Ubuntu 14.04 ​

Alguns dos ícones mais importantes podem ser melhor exemplificados abaixo.

O primeiro ícone é chamado de Dash, um buscador onde podem ser ​ ​ ​ encontrados todos os programas e arquivos instalados no sistema. Assim como resultados providos da internet como melhor ilustrado abaixo.

41

Figura 4.1.3 ­ Dash do Ubuntu 14.04 ​

O segundo ícone chamado de Arquivos(Files) é um gerenciador de arquivos ​ ​ nativo do Ubuntu, funcionando da mesma forma que o Windows Explorer da Microsoft. Por ​ ​ ​ ​ padrão ao clicar no mesmo ele abre o diretório /home onde ficam os arquivos pessoas de ​ ​ cada usuário. A partir dele você pode criar novos diretórios e arquivos, além de pesquisar pelos mesmos em um botão superior do Gerenciador de Arquivos. Você pode ainda navegar por todos os demais diretórios e mídias disponíveis no sistema através da barra lateral esquerda que o gerenciador exibe. A Figura 4.1.4 ilustrado o diretório Home do Ubuntu.

Figura 4.1.4 ­ Gerenciador de Arquivos do Ubuntu 14.04 ​

42

Para adicionar aplicativos no Lançador existem duas maneiras: ​ ​ ● Abrir o Dash, procurar a aplicação que você deseja adicionar ao Lançador e arrastar o ícone para o Lançador. ● Executar o aplicativo desejado, clicar com o botão direito do mouse em cima do ícone que se abriu no lançador e selecionar a opção Fixar no ​ Lançador(Lock to Launcher). ​ Para remover aplicativos no Lançador, deve­se clicar com o botão direito do ​ ​ mouse e selecionar o a opção Desafixar do Lançador(Unlock from Launcher). ​ ​

4.2 Instalação via Software Center

O Software Center do Ubuntu é um utilitário para a instalação e a remoção de softwares. Através dele é possível pesquisar aplicativos separados em categorias as quais facilitam a busca.

Para instalar um programa é preciso seguir os passos abaixo:

1 ­ Abra o menu de busca(Dash) e escreva “Central de programas Ubuntu“, e abra a central. ​ ​ ​

Figura 4.2.1 ­ menu de busca Ubuntu. ​

2 ­ Ao abrir a central, haverá uma lista com as categorias de aplicativos existentes. ​ ​

43

Figura 4.2.2­ tela inicial da central de programas. ​

3 ­ Na Figura 4.2.3 foi escolhida a opção “Acessórios”, aqui você tem a lista com todos os ​ ​ softwares que se encaixam nesta característica.

Figura 4.2.3 ­ menu acessórios da central de programas. ​

4 ­ Escolhemos o aplicativo “SpeedCrunch” como exemplo. Agora para instalar basta clicar ​ no botão Instalar, então o Ubuntu ira pedir sua senha e depois irá instalar o aplicativo.

44

Figura 4.2.3 ­ aba do aplicativo SpeedCrunch na central de programas. ​

Para excluir um programa siga os passos abaixo:

1 ­ Depois de aberta a central, haverá um menu de “instalados”. Neste, consta os aplicativos ​ instalados em seu computador.

Figura 4.2.4 ­ menu instalados da central de programas. ​

2 ­ Nessa aba escolha o programa que deseja desinstalar. ​

45

Figura 4.2.5 ­ aba do aplicativo SpeedCrunch na central de programas. ​

3 ­ Escolhemos o aplicativo SpeedCrunch. Agora basta clicar em remover. O Ubuntu irá pedir sua senha e pronto! O programa será removido.

4.3 Instalação via Terminal

A instalação via terminal é um modo alternativo, mas que é necessário de vez em quando devido a nem todos aplicativos estarem disponíveis ou atualizados na Central de Software . Em alguns casos você só conseguirá instalar programas deste modo. A seguir vamos ver a instalação mais comum de programas via terminal, que é como administrador (super usuário do sistema).

1º Passo ­ Abrir o programa terminal ​ Vá no Dash e chame pelo terminal para colocar a linha de comando que sua ​ distribuição Linux fará executar a instalação do programa desejado. O mais importante no caso é saber a sintaxe e o nome do programa que quer instalar pelo terminal.

sudo apt­get install "nome do programa"

Esta é a linha de comando padrão para quem deseja instalar programas no Ubuntu.

2º Passo ­ Permissões de usuário ​ Será necessário autorização do administrador do sistema, deste modo você colocará sua a senha para começar o processo de instalação. Ao digitar a senha ao lado do nome de usuário do computador, você perceberá que os caracteres digitados não ficam visíveis. Escreva a senha e clique no botão enter.

46

3º Passo ­ Permissões de instalação ​ Para continuar o processo de instalação, o programa de terminal anuncia que alguns pacotes serão baixados.

Se digitar "N" e confirmar clicando no enter, irá cancelar a instalação. ​ ​ ​ ​ ​ ​ ​ Para concluir a instalação será necessário digitar "S" e clicar com o botão enter, ​ ​ deste modo você irá autorizar a instalação e o download dos pacotes. ​ ​ ​ ​ Ao término da instalação, você poderá ir na Unity, ou no seu programa preferido para acionar outro programa, e irá procurar o software instalado para executá­lo.

Em alguns casos, poderão ocorrer erros no seu sistema e você deverá usar o terminal para executar algumas linhas de comando, como no caso de atualização do sistema, usa­se o comando: "sudo apt­get update". ​ ​

4.4 Pacote Office

Para atividades básicas em todo e qualquer tipo de computador, existem aplicativos designados. Tanto em casa quanto no escritório, escrever textos, editar planilhas, eventualmente manter catálogos de produtos, clientes, entre outras coisas são atividades frequentes. Provavelmente o exemplo de software mais conhecido destinado a suprir essas atividades é o Microsoft Office. A Microsoft não desenvolve esse pacote para o Linux, mas existe um pacote de aplicativos para Linux de livre distribuição, destinado às mesmas atividades e compatível com o Microsoft Office. Trata­se do OpenOffice.org. ​ ​ Para quem está acostumado com o Microsoft Office, deve ter notato que o pacote é vendido em várias edições distintas: Home and Student, Small Business, Professional, Enterprise, entre outras. Diferentemente desse, no OpenOffice.org há somente um único pacote, composto por sete aplicativos, são estes:

● Writer: Trata­se do editor de textos do OpenOffice.org, quase todas as funções do Word estão presentes também no Writer. Há uma função no Writer especialmente ausente no Word, que é o suporte nativo à exportação de arquivos PDF, lidos pelo Acrobat Reader. Os arquivos de texto do Writer recebem a extensão .ODF por padrão, mas essa extensão pode ser modificada para o formato nativo de outros editores de texto.

● Calc: É a planilha eletrônica, similar ao Excel, recursos, como os gráficos, fórmulas e macros, são iguais aos das demais planilhas.

47

● Impress:

É um programa de apresentações multimídia, similar ao PowerPoint. Possui uma extensa gama de efeitos de composição e de transição de slides, porém, é preciso tomar cuidado para não colocar efeitos muito chamativos em objetos grandes, porque isso pode causar lentidão e o efeito pode se perder completamente. Há também suporte ao uso de ClipArts e multimídia. ● Base: É o gerenciador de bancos de dados do OpenOffice.org. Tem suporte a SQL, mas o único tipo de suporte a outros formatos é ao do dBASE, não sendo, portanto, compatível com o Microsoft Access. Todos os arquivos de base de dados gerados pelo Base são lidos apenas por outros computadores com o Base instalado.

● Draw: Um software de editoração eletrônica e desenho vetorial, similar ao CorelDraw. Tem suporte nativo ao formato WMF (metarquivo do Windows), exporta para PDF, mas não consegue importar o formato vetorial SVG. ​

4.6 Executar softwares do Windows no Linux

Como todos sabem, existem muitas aplicações Windows sem uma versão Linux, devido a isso, alguns usuários acabam mantendo uma instalação do SO da Microsoft em seus computadores para que possam executa­los. Isso pode ocorrer por diversos motivos, como não haver nenhum software similar para o Linux, ou o usuário não gostar daquela versão, ou então simplesmente por estar habituado com aquela aplicação e não querer mudar. Para evitar a divisão de partições e liberar espaço de memória, pode­se utilizar o softwares como Wine HQ ou o PlayOnLinux que são capazes de emular aplicações do ​ ​ Windows através do Linux – seus links para download, assim como especificações sobre cada um, são respectivamente www.winehq.org e www.playonlinux.com. Nas Figuras 4.5.1, ​ ​ ​ 4.5.2 e 4.5.3 podem ser conferidas algumas ilustrações da utilização do PlayOnLinux.

48

Figura 4.5.1 ­ Menu de instalação do PlayOnLinux ​

Figura 4.5.2 ­ Programas instalados pelo PlayOnLinux ​

49

Figura 4.5.3 ­ Menu de configuração do Wine HQ ​

50

5 REFERÊNCIAS

Canaltech ­ Entendendo a estrutura de diretórios do Linux ­ Encontrado em: http://corporate.canaltech.com.br/tutorial/linux/entendendo­a­estrutura­de­diretorios­do­linux/ ­ Acessado em Dez 2015.

Guia Foca Linux ­ Iniciante ­ Encontrado em: http://www.guiafoca.org/cgs/guia/iniciante/ ­ ​ Acessado em Dez 2015.

Guia Foca GNU/Linux ­ Linux ­ Encontrado em: http://www­usr.inf.ufsm.br/~veiga/focalinux/foca1/ch­bas.html ­ Acessado em Dez de 2015. ​

Playonlinux ­ Encontrado em https://www.playonlinux.com/ ­ Acessado em Dezembro de ​ 2015.

Ubuntu Manual Project ­ Introdução ao Ubuntu 14.04 ­ Encontrado em http://ubuntu­manual.org/ ­ Acessado em Dezembro de 2015. ​

Ubuntu Wiki ­ Terminal(console) ­ Encontrado em: http://wiki.ubuntu­br.org/Terminal ­ ​ Acessado em Dez de 2015.

Viva o Linux ­ Estrutura de diretórios do GNU/Linux ­ Encontrado em: https://www.vivaolinux.com.br/dica/Estrutura­de­diretorios­do­GNULinux ­ Acessado em Dez 2015.

Viva o Linux ­ Permissões e propriedades de arquivos ­ Encontrado em: https://www.vivaolinux.com.br/artigo/Permissoes­e­propriedades­de­arquivos?pagina=1 ­ Acessado em Dez 2015.

Wikipedia ­ ­ Encontrado em: https://en.wikipedia.org/wiki/Linux_distribution ­ Acessado em Dez 2015. ​

Wine HQ ­ Execute aplicativos Windows no Linux, BSD, Solaris e Mac OS X ­ Encontrado em https://www.winehq.org/ ­ Acessado em Dezembro de 2015. ​ ​