Baixe o app para aproveitar ainda mais
Prévia do material em texto
ka rol ine di as da si lva - 1 30 65 09 57 26 - k aro lin e d ias da si lva - 1 30 65 09 57 26 LINUX - NOÇÕES BÁSICAS DE UTILIZAÇÃO Origem e Histórico Em 1991, um estudante da Universidade de Helsinki, Linus Torvalds, iniciou o desenvolvimento de um núcleo de sistema operacional semelhante ao UNIX. O UNIX é um Sistema Operacional usado em computadores de grande porte (MAINFRAMES). O núcleo Linux é considerado o mais importante exemplo moderno de um software livre. Um fator que se considera essencial para o sucesso do Linux, do ponto de vista do processo de desenvolvimento, é a escolha pela licença GPL, que garantiu aos colaboradores a preservação do trabalho contribuído. O sucesso aparente do processo de desenvolvimento utilizado no Linux o levou a ser imitado e replicado por outros autores interessados em produzir software livre. Software Livre / GPL – Licença Pública Geral ·Segundo a FSF, software Livre oferece ao usuário o direito de usar, estudar, modificar e redistribuí-lo. A Free Software Foundation (FSF - Fundação para o Software Livre) é uma organização sem fins lucrativos, fundada em 1985 por Richard Stallman e que se dedicada à eliminação de restrições sobre a cópia, redistribuição, entendimento e modificação de programas de computadores. Definido em quatro liberdades: · A liberdade de executar o programa, para qualquer propósito; · A liberdade de estudar como o programa funciona, e adaptá-lo para as suas necessidades. Acesso ao código-fonte é um pré-requisito para esta liberdade; · A liberdade de redistribuir cópias de modo que você possa beneficiar o próximo; · A liberdade de aperfeiçoar o programa, e liberar os seus aperfeiçoamentos, de modo que toda a comunidade se beneficie. Acesso ao código-fonte é um pré-requisito para esta liberdade. Então: O Linux é um Software Livre! Deviso às diversas vantagens que um software livre tem em relação aos tradicionais programas pagos (como custos, possibilidade de modificação do programa), a mudança de ares na informática de empresas públicas e privadas, saindo do quase onipresente Windows para o onisciente Linux, é inevitável. Cada vez mais, os até então usuários da Microsoft estão se entregando aos prazeres (e desafios) de utilizar o sistema do pinguim (alusão ao Linux porque seu “mascote” ou “logomarca” é um simpático pinguim, chamado Tux). ka rol ine di as da si lva - 1 30 65 09 57 26 - k aro lin e d ias da si lva - 1 30 65 09 57 26 A Comunidade Linux Atualmente, milhões de pessoas no mundo todo dão sua contribuição valiosa para a manutenção e evolução do Linux, seja criando novos aplicativos e drivers, seja melhorando o funcionamento do próprio sistema (que é trabalho dos programadores) ou até mesmo traduzindo as interfaces para que o Linux se apresente disponível nos mais variados idiomas (portanto, qualquer pessoa pode fazer parte desse grupo, atuando como tradutor, designer, não apenas como programador em linguagem C). Vamos às principais comparações: No sistema Windows, qualquer mudança é feita pela detentora do código-fonte, a Microsoft, que disponibiliza a atualização em seu site “Windows Update”. Quanto ao Linux, qualquer usuário conhecedor da linguagem C pode mudar alguma coisa que não ache satisfatória no sistema, permitindo melhorias imediatas sem a dependência de uma suposta fabricante. Isso, é claro, porque o usuário é o detentor do código-fonte! Certas mudanças ficam restritas ao computador do usuário que as fez, se assim ele desejar, mas algumas são enviadas à comunidade, que avalia a relevância da mudança e julga se ela pode ser ou não adicionada na próxima versão do Linux. O objetivo da comunidade não é somente criar coisas novas (embora faça isso também),mas, também, modificar constantemente o centro do sistema Linux, o seu Kernel. O Kernel do Linux – Seu centro nervoso! Todo sistema operacional é complexo e formado por diversos programas menores, responsáveis por funções distintas e bem específicas. O Kernel é o centro do sistema operacional, que entra em contato direto com a CPU e os demais componentes de hardware do computador, sendo, portanto, a parte mais importante do sistema. O Kernel é um conjunto de subprogramas, revistos e alterados pela Comunidade Linux o tempo todo, ou seja, existem milhares de pessoas no mundo todo, nesse momento, alterando alguma característica do Kernel do Linux no intuito de melhorá-lo. Mas o que garante que, sendo o Kernel alterado por tantas mãos, ele não se torne uma “bagunça” de códigos que gerem incompatibilidades e problemas? Ou seja, o que o faz tão estável e robusto se é “descendente de tantos outros”? Ou ainda: o que garante que alguém, dentre esses milhares, não colocaria algo prejudicial no código (um vírus por exemplo) do Linux para fazê-lo intencionalmente perigoso? Resposta: A comunidade tem direito de alterar o Kernel do Linux, mas todas as alterações são analisadas e julgadas pertinentes ou não por alguns “gurus”, os Mantenedores do Kernel. São eles (e outros, vide lista aqui: https://pt.wikipedia.org/wiki/Linux_(n%C3%BAcleo)#Manuten.C3.A7.C3.A3o ) que ditam as regras quanto ao que será adicionado ou retirado da próxima versão do Kernel do Linux. ka rol ine di as da si lva - 1 30 65 09 57 26 - k aro lin e d ias da si lva - 1 30 65 09 57 26 De tempos em tempos (não há uma data exata), é lançada uma nova versão do Kernel do Linux e esse lançamento é realizado pelos gurus, que analisaram todas as propostas de alteração enviadas pela comunidade e, aceitando algumas e rejeitando outras, decidem que a nova versão está pronta. Atualmente, estamos na versão 4.2 do Kernel do Linux. Normalmente, as versões do Kernel são batizadas com três ou quatro níveis de números, que identificam sua geração. Há algum tempo, tínhamos a versão 2.4 e todas as “mini-versões” dentro dela, como 2.4.1, 2.4.15, 2.4.29, etc. Hoje, a versão mais difundida já é a versão 6.6 e toda a sua família (2.6.3, 2.6.11, etc.). A mudança da versão 2.4 para a 2.6 trouxe muitas novidades, especialmente no tocante às tecnologias que o Kernel novo é capaz de suportar (redes sem fio, bluetooth, novos dispositivos, etc.). Essa “mudança da água para o vinho” também deverá ocorrer quando os gurus lançarem a versão 2.8 e, da 2.8 para a 2.10... Mas, com certeza deverá ser muito mais significativa quando sairmos da versão 2 para a 3, da 3 para a 4, e assim por diante. Os mantenedores preferiram criar as versões A.b, fazendo o "b" ímpar quando querem indicar que essa versão não está estável, ou seja, que existe alguma tecnologia nova que está sendo testada nessa versão. Exemplo prático: a versão 2.3 trazia novas tecnologias (instáveis...tipo versão beta, ainda) que, quando foram devidamente testadas e aprovadas, deram origem à versão 2.4. A 2.5 também é precursora da atual 2.6 e, claro, já se está trabalhando na versão 2.7, a comunidade já iniciou seu desenvolvimento para que, quando as novidades estiverem perfeitamente funcionais no Kernel, este possa ser batizado de 2.8 e lançado para o público em geral. Então basta possuir o Kernel mais atualizado e já usar o Linux diretamente? Não...O Kernel do Linux em si é pequeno e não possui todos os aplicativos, apesar de ser o mais importante, já que ele é o sistema em si! Porém, para que o Linux seja utilizável, é necessário que existam outros programas que, junto com o Kernel, fazem o sistema completo e amigável paraum usuário qualquer. É aí que entra o Shell (ambiente onde o usuário pode comandar o sistema através de comandos de texto), as interfaces gráficas (ambientes que apresentam ícones e janelas, como o Windows), os aplicativos (para digitar textos, construir planilhas, desenhar e acessar a Internet, por exemplo) e outros mais. Muitas empresas e programadores obtêm o Kernel do Linux e juntam a ele outros programas que julgam importantes, como aplicativos de escritório e desenho e até mesmo jogos. Cada uma dessas mesmas pessoas ou instituições relança o Linux com seu próprio nome, ou com algum “apelido”. Esses variados “sabores” de Linux são as Distribuições Linux. Distribuições do Linux - A roupa que o Kernel do Linux veste ! Um distribuidor é uma pessoa ou instituição que pega o Kernel do Linux, une esse programa a outros, criados por ele ou por outrem, e “encaixota” o resultado, dando-lhe nome e oferecendo ka rol ine di as da si lva - 1 30 65 09 57 26 - k aro lin e d ias da si lva - 1 30 65 09 57 26 suporte a ele (ou seja, responsabilizando-se pela obra), criando uma nova Distribuição do Linux. Como uma roupa nova cheia de adereços e detalhes diferentes. Note que diversas distribuições são semelhantes entre si, afinal, têm o mesmo Kernel, e, muitas vezes, os mesmos programas auxiliares, como aplicativos de escritório e jogos, portanto, a escolha por essa ou aquela distribuição é um processo pessoal e vai mais pelo gosto do usuário (Eu mesmo, gosto do Linux Ubuntu!!!) A figura abaixo mostra as principais distribuições do Linux (são basicamente a mesma coisa, porque têm se baseiam num único centro: o Kernel): Todas as distribuições do Linux são iguais? Não! Há pequenas diferenças entre elas, mas nada que impossibilite o aprendizado delas, afinal, estamos falando do mesmo produto (o Linux), embalado por várias empresas diferentes (como uma “Lasanha aos quatro queijos” feita por vários restaurantes diferentes: a receita é a mesma, mas que dá para sentir diferenças pequenas no sabor de cada uma, dá sim! Conceitos Gerais Para utilizar o Linux, não é necessário nenhum conhecimento prévio em Windows ou qualquer outro sistema operacional, mas, é claro que se o usuário que pretende usar o Linux já entende conceitos de outros programas, as comparações que farei aqui entre Windows e Linux serão um excelente modo de estudo . Alguns dos principais pontos a serem discutidos no Linux são: • O Linux é um sistema multiusuário: O que significa que várias pessoas podem utilizar o Linux em um computador. Cada usuário é reconhecido pelo sistema quando inicia suas atividades mediante a apresentação de um nome e uma senha (previamente cadastrados). Isso significa que será necessário, todas as vezes que um usuário for utilizar o computador, que ele realize o processo de Logon. O Logon consiste na apresentação do Login (nome cadastrado no sistema para o usuário) e da Password (senha). ka rol ine di as da si lva - 1 30 65 09 57 26 - k aro lin e d ias da si lva - 1 30 65 09 57 26 • O Linux pode ser utilizado graficamente: quer dizer que o sistema Linux pode se apresentar para o usuário do mesmo modo amigável com que o Windows se mostra. O Linux tem ambientes gráficos, e muitos! Claro que o normal, para os usuários experts, é preferirem o Linux com sua interface básica: texto! Tela preta, letras brancas e uma série de comandos diferentes decorados sofridamente! Tipo no MS-DOS...lembra? Aqui vai um lembrete para os usuários mais céticos e amedrontados: O Linux usa mouse e ícones; janelas e menus, como o Windows, e isso facilita o aprendizado. • Algumas coisas no Linux são mais difíceis de fazer: Isso, é claro, pode até ser relacionado com o fato de usarmos mais o sistema da Microsoft, mas não é bem assim! O Linux complica certas coisas sim! Esse é o preço que se paga pelo direito de ter o controle total sobre o sistema operacional. • Para usarmos o Linux, devemos nos identificar, informando um login (que pode ser ana, maria, roberto, pedro, adm, financeiro, root) e uma senha. O login root permite, ao seu detentor, o controle total do sistema Linux. • O Linux pode ser adquirido de várias formas (inclusive pago), através de várias fontes e com vários “nomes” diferentes. Esses vários tipos de Linux são as distribuições ou na gíria: “distros”. • No Linux, não há unidades de disco separadas, como C:, D: do Windows. No Linux, todo o armazenamento de arquivos é feito dentro do diretório raiz: a barra ( / ). Inclusive, se um computador possuir vários discos rígidos, todos eles serão representados como diretórios dentro do diretório raiz. A conta de Super usuário ou Root Há várias formas de criar contas de usuário no Linux depois que o sistema está em funcionamento, mas uma conta é criada no momento em que o Linux é instalado no computador, a conta da pessoa que tem direito a fazer qualquer coisa no sistema: o Administrador Geral ou Super Usuário ou ainda ROOT (Raiz). Se você é o super usuário de sua máquina, você é o dono, o manda-chuva dela. O Login cadastrado para a conta do administrador é: root. Ou seja, para ser reconhecido como super usuário do sistema Linux, é necessário, na inicialização do sistema, que o usuário digite root e a senha. Recomendação ao Administrador do Sistema: se você é root, não fique usando esta conta constantemente para fazer qualquer coisa (digitar textos, acesso à Internet, jogos). Ao invés disso, crie uma conta de usuário qualquer (sem privilégios administrativos) para poder realizar as tarefas simples. A idéia é que se, durante um acesso à Internet, por exemplo, seu computador for infectado por um vírus o outro programa malicioso, o referido programa será executado em modo root, e terá acesso completo ao sistema (podendo destruir o sistema completamente). Se, no momento da infecção, você estiver logado como um usuário convencional, os limites de acesso impostos a você pelo próprio Linux serão responsáveis por conter os programas destruidores. Ou seja, não banalize a conta de root, apenas faça uso dela em casos necessários, tais como: mudanças de configuração, ajustes do sistema, instalação de programas, etc. ka rol ine di as da si lva - 1 30 65 09 57 26 - k aro lin e d ias da si lva - 1 30 65 09 57 26 Como o Linux exibe suas unidades de disco Se você espera ter, no Linux, ícones que ajudem-no a acessar a Unidade C:, D:, E: e outras afins, tire isso da cabeça! Aqui, a nomenclatura para as unidades de armazenamento é diferente do Windows. E isso, confie em mim, pode gerar problemas sérios! Veja, na figura abaixo, uma janela aberta do ícone “Computador”, que é comum nos ambientes gráficos atuais que funciona como o manjado “Windows Explorer” existente no Windows. a forma de nomenclatura dos discos por parte do Linux não se parece, em nada, com a do Windows. Enquanto que no Windows, a estrutura de diretórios (pastas) começa em cada unidade de disco devidamente nomeada (C:, D:, E:, etc.), no Linux, todos os diretórios são subordinados a um grande diretório pai de todos: o diretório (ou pasta) raiz, ou sistema de arquivo (nessas novas distribuições, essa nomenclatura também tem sido usada). É como se o diretório raiz representasse, simplesmente, o “universo” dentro do sistema Linux. Os demais diretórios estão dentro do sistema de arquivo. Para os mais puristas e para os comandosusados no sistema Linux, é comum ainda fazer referência a esse diretório principal como / (barra), simplesmente. Então fica fácil: o Linux não tem unidade C:, nem D:, nem E:... Mas tem um único e grande depósito de informações que armazena todos os arquivos e diretórios contidos nas unidades de disco (Cds, disquetes, DVDs ainda vão continuar existindo, mas, no Linux, não ganham letras seguidas de dois pontos). Em outras palavras, o diretório raiz, ou sistema de arquivo, ou ainda / (barra) é o “início” de tudo o que está armazenado no computador e a que o Linux tem acesso: tudo, no computador, está dentro do diretório raiz! Logo abaixo, segue um resumo com os principais diretórios e seus conteúdos: ka rol ine di as da si lva - 1 30 65 09 57 26 - k aro lin e d ias da si lva - 1 30 65 09 57 26 Pastas Pessoais dos Usuários Cada usuário cadastrado no sistema Linux tem uma pasta própria, onde recomenda-se que este guarde seus arquivos pessoais (como “Meus Documentos” no Windows). Claro que essa pasta será usada se o usuário quiser, pois nada (realmente) o obriga a usá-la! É apenas uma questão de organização e praticidade. Para todos os usuários do sistema (com exceção do usuário root), a pasta pessoal fica localizada em /home/xxxx, onde xxxx é o login do referido usuário. Exemplo: o usuário roberto vai ter, quando cadastrado, sua pasta pessoal criada como /home/roberto. Para o super usuário, a pasta pessoal dele é /root, fora da estrutura de /home. E, é claro, a menos que se determinem permissões diferentes, o diretório /root é acessível somente pelo usuário root e os diretórios pessoais dos outros usuários estarão acessíveis apenas por eles respectivamente (cada um no seu) e pelo root. ka rol ine di as da si lva - 1 30 65 09 57 26 - k aro lin e d ias da si lva - 1 30 65 09 57 26 Como o Linux Visualiza os Arquivos Um arquivo é qualquer conjunto sólido de informações gravado em uma unidade de armazenamento (memória auxiliar, como um disco rígido ou um CD, por exemplo). Normalmente, um arquivo é criado pela execução do comando Salvar, comum em tantos programas aplicativos. Em outras palavras, quando você digita algo em um programa de texto ou planilha, por exemplo, está criando um Arquivo. Mais precisamente, está criando um Arquivo de Dados. Arquivos são divididos em alguns tipos: • Arquivos Comuns: podem ser subdivididos em: Arquivos de Dados: contém dados de diversos tipos, os maiores exemplos são os arquivos que manipulamos: textos, documentos, planilhas, figuras, fotos, MP3, etc. Arquivo de texto ASCII: é um tipo específico de Arquivo de Dados, escritos por programas editores de texto. São arquivos muito simples e só contém texto (caracteres). Esses arquivos não admitem outro tipo de dado, como figuras ou tabelas. Não são possíveis nem mesmo as formatações normais (negrito, itálico e sublinhado). Um arquivo do Word, não é um arquivo de texto ASCII. Arquivos de Shell Script: são arquivos escritos como textos ASCII, ou seja, em programas editores de texto. Seu conteúdo é formado por comandos que o Linux consegue interpretar. Esses arquivos são como “roteiros” com várias instruções que o Linux vai executar. Arquivos binários (executáveis): são arquivos escritos em linguagem de máquina (zeros e uns) que podem ser executados pela CPU do computador. Esses arquivos são, na verdade, chamados de programas ou arquivos executáveis. Eles não são escritos para serem lidos pelo usuário, eles são criados para serem compreendidos pelo Linux e executados por ele. Para criar tais arquivos, deve-se escrever um programa em alguma linguagem (como C, por exemplo) e compilá-lo a fim de que se transforme no arquivo binário. • Diretórios: Sim, os diretórios (pastas) são considerados arquivos no Linux. O sistema entende que um diretório é um arquivo especial, que tem em seu conteúdo um apontador para todos os arquivos que se mostram “dentro” do diretório. A ideia é a mesma de uma pasta no Windows: ou seja, um diretório é uma “gaveta” onde colocamos outros arquivos (inclusive outras pastas). • Links (Vínculos): uma ideia similar à dos atalhos no Windows. Um link é um arquivo que aponta para um outro arquivo qualquer (de qualquer tipo, inclusive diretório). Um link pode apontar, inclusive, para outro link. Exemplo: se há um arquivo chamado teste.doc dentro de /documentos/antigos, você poderá criar um link para ele na pasta raiz, com o nome de teste. Quando você quiser fazer referência ao arquivo, pode-se informar ao programa /teste ou /documentos/antigos/teste.doc que vai dar no mesmo! ka rol ine di as da si lva - 1 30 65 09 57 26 - k aro lin e d ias da si lva - 1 30 65 09 57 26 Conforme ilustra figura acima: os ícones Captura de Telas e Documentos são diretórios (pastas); figura.jpg é um arquivo de dados (mais precisamente, uma foto); o arquivo bzip2 é um arquivo executável (binário); texto e velox.sh são arquivos ASCII (texto puro), a diferença é que o segundo é um Shell Script, ou seja, é composto de vários comandos que serão interpretados pelo shell do Linux; e, finalmente, o arquivo teste1 é um link (atalho). O que vai acontecer quando cada um for aberto (duplo clique no ícone)? Depende do tipo do arquivo: um arquivo de dados (seja ele ASCII ou não) normalmente, quando recebe o duplo clique que solicita sua abertura, faz o Linux chamar o programa que é capaz de abri-lo. É fácil de entender: no Windows, quando nós damos um clique duplo num arquivo do Word, ele é aberto para poder mostrar o arquivo que o usuário executou! Quando o arquivo for um binário, o Linux jogará seu conteúdo na memória principal e começará a executar os comandos existentes nele (afinal, um binário é um programa compilado – um executável em linguagem de máquina). Se o arquivo for um Shell Script, ou outro script qualquer (existem vários), o Linux se encarregará de “ler” e interpretar seu conteúdo (lembre-se: scripts são roteiros cheios de comandos). Finalmente, ao se aplicar duplo clique em um link, ele vai apontar para o arquivo original e é o tipo desse arquivo original que definirá o comportamento do Linux após a execução. Observação: se o clique duplo for dado numa pasta, ela será aberta diretamente pelo programa gerenciador de arquivos (nesta imagem acima, o konqueror. Tipo o Windows Explorer). Regras para nomenclatura no Linux No Linux, realmente não há necessidade obrigatória de extensão para os arquivos (binários, dados, links, diretórios) existirem e serem identificados como tal. Um arquivo é normalmente identificado pelo seu conteúdo, ou seja, mesmo que um arquivo se chame somente texto (como o arquivo mostrado na figura anterior), ele será identificado como um arquivo de texto puro (ASCII): note o ícone que foi dado a ele! Não significa em absoluto que no Linux não são usadas extensões, porque elas são usadas sim. Estou apenas ressaltando que, para diferenciar os tipos de arquivos entre si, o Linux, na maioria das vezes, não precisa da extensão porque analisa o conteúdo do arquivo para definir seu tipo. ka rol ine di as da si lva - 1 30 65 09 57 26 - k aro lin e d ias da si lva - 1 30 65 09 57 26 Imagine dois arquivos de imagem (são arquivos de dados): uma foto JPEG (JPG) e uma imagem GIF. Mesmo que você não ponha extensões neles, o Linux será capaz de identificá-lospor seus conteúdos (porque cada arquivo tem uma espécie de “estrutura”no sistema). Outra característica interessante sobre os nomes dos arquivos é que nem sempre há apenas um ponto no nome. É simples: como não há essa rigidez quanto às extensões, não há obrigatoriedade de identificá-las com um ponto, portanto, o ponto é um caractere perfeitamente utilizável no nome do arquivo. Claro que a seqüência de caracteres que sucede o último ponto é considerada a extensão oficial do arquivo. É comum encontrar, no Linux, arquivos com esses tipos de nome: ethereal-0.20.10-i486-4jim.tar.gz Ooo_1.1.83_LinuxIntel_install.pt-br.rpm • Os nomes de arquivos podem ter até 255 caracteres (igual ao Windows). • São aceitos espaços no nome dos arquivos (igual ao Windows). • Praticamente todos os caracteres podem ser usados em nomes de arquivos (incluindo alguns dos que o Windows julga proibidos, como *, ?...). • Não pode haver dois ou mais arquivos com o mesmo nome dentro da mesma pasta (igual ao Windows). • O Linux possui um sistema de arquivos Case-Sensitive, ou seja, ele diferencia maiúsculas de minúsculas. Sendo assim, os arquivos Casa, CASA, casa e cASa possuem nomes diferentes (para o Windows, não há essa diferença: todos os nomes listados acima são iguais!). Normalmente, no Linux, prefere-se criar arquivos com letras minúsculas apenas. • Arquivos ocultos, no Linux, têm seus nomes iniciados com um . (ponto). Em outras palavras, todos os arquivos que apresentarem seus nomes começando com um ponto (como em .profile, ou .segredos), são considerados ocultos (não aparecem nas janelas comuns do gerenciador de arquivos). ka rol ine di as da si lva - 1 30 65 09 57 26 - k aro lin e d ias da si lva - 1 30 65 09 57 26 Permissões de arquivos no Linux As permissões são um dos aspectos mais importantes do Linux (na verdade, de todos os sistemas baseados em Unix). Elas são usadas para vários fins, mas servem principalmente para proteger o sistema e os arquivos dos usuários. Manipular permissões é uma atividade interessante, mas complexa ao mesmo tempo. Mas tal complexidade não deve ser interpretada como dificuldade e sim como possibilidade de lidar com uma grande variedade de configurações, o que permite criar vários tipos de proteção a arquivos e diretórios. Como você já sabe, somente o superusuário (root) tem ações irrestritas no sistema, justamente por ser o usuário responsável pela configuração, administração e manutenção do Linux. Cabe a ele, por exemplo, determinar o que cada usuário pode executar, criar, modificar, etc. Naturalmente, a forma usada para especificar o que cada usuário do sistema pode fazer é a determinação de permissões. Sendo assim, neste artigo você verá como configurar permissões de arquivos e diretórios, assim como modificá-las. Entendendo as permissões drwx------ ... 2 wester ............. 512 Jan ... 29 23:30 .. Arquivos/ -rw-rw-r-- ... 1 wester ....... 280232 Dec .. 16 22:41... notas.txt As linhas acima representam um comando digitado (ls -l) para listar um diretório e suas permissões. O primeiro item que aparece em cada linha (drwx----- e -rw-rw-r-) é a forma usada para mostrar as permissões do diretório Arquivos e do arquivo notas.txt. É esse item, que recebe o nome de string, que vamos estudar. Um ponto interessante de citar é que o Linux trata todos os diretórios como arquivos também, portanto, as permissões se aplicam de igual forma para ambos. Tais permissões podem ser divididas em quatro partes para indicar: tipo, proprietário, grupo e outras permissões. O primeiro caractere da string indica o tipo de arquivo: se for "d" representa um diretório, se for "-" equivale a um arquivo. Entretanto, outros caracteres podem aparecer para indicar outros tipos de arquivos, conforme mostra a tabela abaixo: d => diretório b => arquivo de bloco c => arquivo especial de caractere p => canal s => socket - => arquivo "normal" Repare agora que no restante da string ainda há 9 caracteres. Você já sabe o que significa o primeiro. Os demais são divididos em três grupos de três, cada um representado o proprietário, o grupo e todos os demais, respectivamente. Tomando a linha 2 do exemplo (-rw-rw-r-), desconsiderando o primeiro caractere e dividindo a string restante em 3 partes, ficaria assim: ka rol ine di as da si lva - 1 30 65 09 57 26 - k aro lin e d ias da si lva - 1 30 65 09 57 26 rw- => a primeira parte significa permissões do proprietário rw- => a segunda parte significa permissões do grupo ao qual o usuário pertence r-- => a terceira parte significa permissões para os demais usuários Vamos entender agora o que significa esses caracteres (r, w, x, -). Há, basicamente, três tipos de permissões: leitura, gravação eexecução. Leitura permite ao usuário ler o conteúdo do arquivo mas não alterá-lo. Gravação permite que o usuário altere o arquivo. Execução, como o nome diz, permite que o usuário execute o arquivo, no caso de ser executável. Mas acontece que as permissões não funcionam isoladamente, ou seja, de forma que o usuário tenha ou permissão de leitura ou de gravação ou de execução. As permissões funcionam em conjunto. Isso quer dizer que cada arquivo/diretório tem as três permissões definidas, cabendo ao dono determinar qual dessas permissões é habilitada para os usuários ou não. Pode ser que uma determinada quantidade de usuários tenha permissão para alterar um arquivo, mas outros não, por exemplo. Daí a necessidade de se usar grupos. No caso, a permissão de gravação desse arquivo será dada ao grupo, fazendo com que todo usuário membro dele possa alterar o arquivo. Note que é necessário ter certo cuidado com as permissões. Por exemplo, do que adianta o usuário ter permissão de gravação se ele não tem permissão de leitura habilitada? Agora que já sabemos o significado das divisões da string, vamos entender o que as letras r, w, x e o caractere - representam: r => significa permissão de leitura (read); w => significa permissão de gravação (write); x => significa permissão de execução (execution); - => significa permissão desabilitada. A ordem em que as permissões devem aparecer é rwx. Sendo assim, vamos entender a string do nosso exemplo dividindo-a em 4 partes: Linha 1: drwx------ ... 2 wester ............... 512 Jan ... 29 23:30 .. Arquivos/ - é um diretório (d); - o proprietário pode alterá-lo, gravá-lo e executá-lo (rwx); - o grupo não pode pode alterá-lo, gravá-lo, nem executá-lo (---); - os demais usuários não podem alterá-lo, gravá-lo, nem executá-lo (---). Linha 2: -rw-rw-r-- ... 1 wester .......... 280232 Dec .. 16 22:41... notas.txt - é um arquivo (-); - o proprietário pode alterá-lo, gravá-lo, mas não executá-lo. Repare que como este arquivo não é executável, a permissão de execução aparece desabilitada (rw-); - o grupo tem permissões idênticas ao proprietário (rw-); - o usuário somente tem permissão de ler o arquivo, não pode alterá-lo (r--). A tabela abaixo mostra as permissões mais comuns: --- => nenhuma permissão; r-- => permissão de leitura; r-x => leitura e execução; rw- => leitura e gravação; rwx => leitura, gravação e execução. Comandos de texto no Linux ka rol ine di as da si lva - 1 30 65 09 57 26 - k aro lin e d ias da si lva - 1 30 65 09 57 26 Se o Linux que você utiliza entra direto no modo gráfico ao ser inicializado, é possível inserir comandosno sistema através de uma aplicação de terminal. Esse recurso é facilmente localizável em qualquer distribuição. Se o computador que você acessa não estiver com o modo gráfico ativado, será possível digitar comandos diretamente, bastando se logar. Quando o comando é inserido, cabe ao interpretador de comandos (também conhecido como shell) executá-lo. O Linux conta com mais de um, sendo os mais conhecidos o bash e o sh. Quando um terminal é acessado, uma informação aparece no campo de inserção de comandos. É importante saber interpretá-la. Para isso, veja os exemplos abaixo: Exemplo 1: [root@profroberto /root]# Exemplo 2: [profroberto@prof /]$ Observação: dependendo de sua distribuição e de seu shell, a linha de comandos pode ter um formato ligeiramente diferente do que é mostrado nos exemplos. No Ubuntu Linux, por exemplo, o segundo exemplo fica na seguinte forma: profroberto@prof: ~$ Nos exemplos, a palavra existente antes do símbolo @ diz qual o nome do usuário que está usando o terminal (lembre-se de que no Linux é necessário ter um usuário para utilizar o sistema). Os nomes que aparecem depois do @ indicam o computador que está sendo acessado seguido do diretório. O caractere que aparece no final indica qual o poder do usuário. Se o símbolo for #, significa que usuário tem poderes de administrador (root). Por outro lado, se o símbolo for $, significa que este é um usuário comum, incapaz de acessar todos os recursos que um administrador acessa. Independente de qual seja, é depois do caractere que o usuário pode digitar os comandos. Os comandos básicos do Linux Agora que você já sabe como agir em um terminal, vamos aos comandos do Linux mais comuns. Para utilizá-los, basta digitá-los e pressionar a tecla Enter de seu teclado. É importante frisar que, dependendo de sua distribuição Linux, um ou outro comando pode estar indisponível. Além disso, alguns comandos só podem ser executados por usuários com privilégios de administrador. A relação a seguir mostra os comandos seguidos de uma descrição: cal: exibe um calendário; cat arquivo: mostra o conteúdo de um arquivo. Por exemplo, para ver o arquivo concurso.txt, basta digitar cat concurso.txt; cd diretório: abre um diretório. Por exemplo, para abrir a pasta /mnt, basta digitar cd /mnt. Para ir ao diretório raiz a partir de qualquer outro, digite apenas cd; chmod: comando para alterar as permissões de arquivos e diretórios. ka rol ine di as da si lva - 1 30 65 09 57 26 - k aro lin e d ias da si lva - 1 30 65 09 57 26 clear: elimina todo o conteúdo visível, deixando a linha de comando no topo, como se o sistema acabasse de ter sido acessado; cp origem destino: copia um arquivo ou diretório para outro local. Por exemplo, para copiar o arquivo concurso.txt com o nome concurso2.txt para /home, basta digitar cp concurso.txt /home/ concurso 2.txt; date: mostra a data e a hora atual; df: mostra as partições usadas; diff arquivo1 arquivo2: indica as diferenças entre dois arquivos, por exemplo: diff calc.c calc2.c; du diretório: mostra o tamanho de um diretório; emacs: abre o editor de textos emacs; file arquivo: mostra informações de um arquivo; find diretório parâmetro termo: o comando find serve para localizar informações. Para isso, deve- se digitar o comando seguido do diretório da pesquisa mais um parâmetro (ver lista abaixo) e o termo da busca. Parâmetros: name - busca por nome type - busca por tipo size - busca pelo tamanho do arquivo mtime - busca por data de modificação Exemplo: find /home name tristania finger usuário: exibe informações sobre o usuário indicado; free: mostra a quantidade de memória RAM disponível; halt: desliga o computador; history: mostra os últimos comandos inseridos; id usuário: mostra qual o número de identificação do usuário especificado no sistema; kill: encerra processados em andamento. ls: lista os arquivos e diretórios da pasta atual; lpr arquivo: imprime o arquivo especificado; lpq: mostra o status da fila de impressão; lprm: remove trabalhos da fila de impressão; lynx: abre o navegador de internet de mesmo nome; ka rol ine di as da si lva - 1 30 65 09 57 26 - k aro lin e d ias da si lva - 1 30 65 09 57 26 mv origem destino: tem a mesma função do comando cp, só que ao invés de copiar, move o arquivo ou o diretório para o destino especificado; mkdir diretório: cria um diretório, por exemplo, mkdir concursos cria uma pasta de nome concurso; passwd: altera sua senha. Para um administrador mudar a senha de um usuário, basta digitar passwd seguido do nome deste; ps: mostra os processos em execução. pwd: mostra o diretório em que você está; reboot: reinicia o sistema imediatamente (pouco recomendável, preferível shutdown -r now); rm arquivo: apaga o arquivo especificado; rmdir diretório: apaga o diretório especificado, desde que vazio; shutdown: desliga ou reinicia o computador, veja: shutdown -r now: reinicia o computador shutdown -h now: desliga o computador O parâmetro now pode ser mudado. Por exemplo: digite shutdown -r +10 e o sistema irá reiniciar daqui a 10 minutos; su: passa para o usuário administrador, isto é, root (perceba que o símbolo $ mudará para #); tar -xzvf arquivo.tar.gz: extrai um arquivo compactado em tar.gz; telnet: ativa o serviço de Telnet em uma máquina. Para acessar esse computador a partir de outros por Telnet, basta digitar telnet nomedamáquina ou telnet IP. Por exemplo: telnet 192.168.0.10. Após abrir o Telnet, digite help para conhecer suas funções; top: exibe a lista dos processos, conforme os recursos de memória consumidos; uname: mostra informações do sistema operacional e do computador. Digite uname -a para obter mais detalhes; useradd usuário: cria uma nova conta usuário, por exemplo, useradd aluno cria o usuário aluno; userdel usuário: apaga a conta do usuário especificado; uptime: mostra a quantas horas seu computador está ligado; vi: inicia o editor de textos vi. whereis nome: procura pelo binário do arquivo indicado, útil para conhecer seu diretório ou se ele existe no sistema; w: mostra os usuários logados atualmente no computador (útil para servidores); ka rol ine di as da si lva - 1 30 65 09 57 26 - k aro lin e d ias da si lva - 1 30 65 09 57 26 who: mostra quem está usando o sistema. Finalizando Praticamente todos os comandos citados possuem parâmetros que permitem incrementar suas funcionalidades. Por exemplo, se você digitar o comando ls com o parâmetro -R (ls -R), este mostrará todos os arquivos do diretório, inclusive os ocultos. A melhor forma de conhecer os parâmetros adicionais de cada comando é consultando as informações de ajuda. Para isso, pode-se usar o recurso --help. Veja o exemplo para o comando ls: ls --help Também é possível utilizar o comando man (desde que seu conteúdo esteja instalado), que geralmente fornece informações mais detalhadas. Par usar o man para obter detalhes do comando cp, por exemplo, a sintaxe é: man cp Se você estiver utilizando o bash, pode-se aplicar o comando help ou info da mesma forma que o comando man: help cp info cp Assim como conhecer os comandos básicos do Linux é importante, também o é saber como acessar seus recursos de ajuda, pois isso te desobriga de decorar as sequencias das funcionalidades extras. Sabendo usar todos os recursos, você certamente terá boa produtividade em suas tarefas no Linux. ka rol ine di as da si lva- 1 30 65 09 57 26 - k aro lin e d ias da si lva - 1 30 65 09 57 26 PRINCIPAIS TECLAS DE ATALHO NO LINUX Teclas de Atalho do ambiente GNOME: Alt-F2 : Executar Aplicação Alt-F1 : Abre o Menu Aplicações Alt-F9 : Minimiza a Janela Ativa Alt-Tab : Alterna entre os programas abertos Ctrl+Alt+Seta para Esquerda : Move para o Desktop da esquerda Ctrl+Alt+Seta para Direita : Move para o Desktop da direita Ctrl+Alt+Shift+Seta para Esquerda : Move Aplicação atual para Desktop da esquerda Ctrl+Alt+Shift+Seta para Direita : Move Aplicação atual para Desktop da direita Ctrl+Alt+L : Bloquear Tela Ctrl+Alt+Del : Sair Ctrl+Alt+Backspace : Reinicia o GNOME (cuidado!) Teclas de atalho gerais: Tecla Enter - Ativa o botão em foco na caixa de diálogo Esc - Termina a ação ou fecha a caixa de diálogo. Se estiver na Ajuda do BrOffice.org: sobe um nível. Barra de espaço - Alterna a caixa de seleção realçada em uma caixa de diálogo. Teclas de seta - Altera o campo de controle ativo em uma seção de opção da caixa de diálogo. Tab - Avança o foco para a próxima seção ou o próximo elemento de uma caixa de diálogo. Shift+Tab - Desloca o foco para o elemento ou a seção anterior em uma caixa de diálogo. Alt+Seta para baixo - Abre a lista do campo de controle atualmente selecionado na caixa de diálogo. Essas teclas de atalho podem ser usadas tanto para caixas de combinação como para botões de ícone com menus instantâneos. Para fechar uma lista aberta, pressione a tecla Escape. Del - Envia o(s) item(ns) selecionado(s) para a lixeira. Shift+Del - Exclui os itens selecionados sem colocá-los na lixeira. Backspace - Quando uma pasta é mostrada: sobe um nível (retorna) Ctrl+Shift+Barra de espaço - Remove a formatação direta do texto ou dos objetos selecionados (como acontece em Formatar - Formatação padrão) Ctrl+Tab - Quando posicionado no início de um cabeçalho, é inserida uma tabulação. Enter (se um objeto OLE estiver selecionado) - Ativa o objeto OLE selecionado. Enter (se um objeto de desenho ou de texto estiver selecionado) - Ativa o modo de entrada de texto. Gerenciador de Arquivos Nautilus (Equivalente ao Windows Explorer) Shift+Ctrl+N : Cria nova pasta Ctrl+T : Apagar (para Lixeira) Alt+ENTER : Propriedades do Arquivo/Diretório Ctrl+1 : Alternar visualização como ícone Ctrl+2 : Alternar visualização como lista F2 : Renomeia arquivo ka rol ine di as da si lva - 1 30 65 09 57 26 - k aro lin e d ias da si lva - 1 30 65 09 57 26 Ctrl+A : Seleciona tudo Teclas de Navegação do Nautilus Ctrl+W : Fecha janela Ctrl+Shift+W : Fecha todas as janelas Ctrl+R : Atualiza a janela do Nautilus Alt+Seta para Cima : Sobe um nível de diretório Alt+Seta Esquerda : Volta (como no Firefox) Alt+Seta Direita : Próximo (como no Firefox) Alt+Home : Vai para o diretório pessoal Ctrl+L : Barra de endereço F9 : Alterna barra lateral Ctrl+H : Exibe arquivos ocultos Ctrl++ : Aumenta o tamanho dos arquivos Ctrl+- : Diminui o tamanho dos arquivos Ctrl+0 : Tamanho normal Linux direto no pendrive sem danificar o seu Windows! Quando o assunto é Linux cobrado nos editais de concursos públicos, os alunos me procuram bem assustados sobre o tema. Por um lado, a curiosidade em conhecer um novo sistema operacional e do outro como vão estudá-lo, como poderão ver o Linux com calma em casa acompanhando a nossa apostila ou as anotações feitas em sala de aula? Resolvi então escrever este artigo que ensina passo a passo como executar o Linux diretamente em um pendrive sem a necessidade de ter de instalá-lo em seu computador e o melhor...Depois de realizar o processo e de estudar o Linux, basta remover o pendrive e o Windows estará lá prontinho de volta, sem afetar nada no seu computador! Vamos a “receita”: Você precisará baixar o Linux, vamos trabalhar com o Linux Ubuntu na sua versão mais recente: http://www.ubuntu.com/download/desktop/thank-you?distro=desktop&bits=32&release=latest Agora você precisará do programa Universal USB Installer: http://www.baixaki.com.br/download/universal-usb-installer.htm Depois de baixado, Clique no programa para executá-lo e siga os passos ilustrados abaixo... ka rol ine di as da si lva - 1 30 65 09 57 26 - k aro lin e d ias da si lva - 1 30 65 09 57 26 Clique no botão I Agree... Escolha na lista a versão do seu Linux que já foi baixada... ka rol ine di as da si lva - 1 30 65 09 57 26 - k aro lin e d ias da si lva - 1 30 65 09 57 26 Clique no botão Browse e aponte o caminho aonde está o arquivo do Linux que você baixou.... Conecte o pendrive que será usado...lembre-se! O pendrive deverá estar vazio! Após selecionar aonde está o arquivo do Linux, agora vamos escolher o pendrive.... ka rol ine di as da si lva - 1 30 65 09 57 26 - k aro lin e d ias da si lva - 1 30 65 09 57 26 Selecione o pendrive escolhendo a letra da respectiva unidade....Deixe as demais configurações iguais as mostradas nesta janela acima....Clique em Create O programa exibirá um resumo do que vai fazer...confirme clicando em Sim.... ka rol ine di as da si lva - 1 30 65 09 57 26 - k aro lin e d ias da si lva - 1 30 65 09 57 26 O processo começou.... Após o término de todo processo você receberá um aviso de que está pronto! Agora é só reiniciar seu computador, escolher para que o mesmo de o boot pelo pendrive e esperar a seguinte tela do Linux aparecer. Ao chegar nesta tela abaixo, escolha seu idioma e clique no botão Experimentar o Ubuntu. NÃO PRESSIONE O BOTÃO INSTALAR O UBUNTU. ka rol ine di as da si lva - 1 30 65 09 57 26 - k aro lin e d ias da si lva - 1 30 65 09 57 26 Pronto, a tela vai dar uma piscadinha, vai ficar tudo escuro por alguns segundos e depois o Linux estará pronto para ser estudado e usado. Depois de praticar e estudar com a nossa apostila, basta clicar no botão de Power no canto superior direito e escolher a opção desligar... Remova o pendrive e reinicie o computador...o seu Windows estará esperando-lhe com saudades! Espero que este artigo ajude a muitos alunos a perderem o medo de conhecer e experimentar o Linux! Bons estudos! Prof. Roberto Andrade
Compartilhar