Data: Introdução ao Linux: Parte I Marcelo Ribeiro Xavier da Silva marceloo@inf.ufsc.br
Histórico
3 Origem do GNU Linux Em 1983, Richard Stallman fundou a Free Software Foundation, com o intuito de criar um clone do sistema Unix, surgia então o GNU Na mesma época o Dr. Andrew Tanenbaum desenvolveu uma ferramenta de ensino, ou minix, que era na verdade um porte do Unix para a arquitetura x86
4 Origem do GNU Linux Em 1991, na Universidade de Helsinque, um estudante Finlandês, Linus Benedict Torvalds inicia um projeto, inspirado no minix Foi criado então um novo kernel, batisado de GNU Linux (mistura de Linus com unix), que é hoje distribuído sob uma GPL
Distribuições
6 GNU Linux Slackware ou Linux de um homem só Mantido por Patrick Volkerding desde 1993 Debian distribuição não comercial protegidos pelo Debian Social Contract RedHat A primeira distribuição comercial, criada em 1995
7 GNU Linux SuSe Distribuição que faz grande sucesso na Europa, também corporativa Além de muitas outras como: Gentoo FreeBSD etc
Por dentro do GNU Linux
9 Tudo é arquivo Tudo é referenciado em forma de arquivo mesmo os dispositivos de hardware e as interfaces do sistema Por exemplo os arquivos que referenciam os HD's e as portas, podem ser encontrados no /dev
10 Case Sensitive O sistema operacional diferencia letras maiúsculas de letras minúsculas Isto é, /etc e /Etc, ou até /etc, são diretórios diferentes
11 Extensão No GNU Linux não existe o conceito de extensão como pré requisito de utilização Tudo que se precisa saber é a aplicação que é capaz de lidar com o tipo de arquivo Mas como somos seres humanos, uma ajudinha para a memória sempre vai bem
12 Interpretadores de comandos Existem inúmeros deles, sh, bash, dash, tcsh, etc São responsáveis por tratar os comandos digitados pelo usuário Nos sistemas debian, o sh aponta para o dash
13 Customização do prompt $ PS1= [\u@\h (\t):\w] \$ \e quebra de linha \h e \H nome curto e longo do host \t hora no formato 24h \u nome do usuário \w e \W diretório atual e caminho completo \$ símbolo identificador do tipo de usuário
14 Histórico de comandos O interpretador de comandos armazena na memória ram os últimos comandos digitados Para ver a essa lista basta usar o comando history A lista dos comandos é salva no arquivo ~/.bash_history toda vez que a sessão é terminada
15 Histórico de comandos Existe ainda um comando para salvar o histórico de sessão: history w Comandos! e!! Com os comandos: history c E history r O histórico é limpado e restaurado na memória ram
Hierarquia de diretórios do sistema
17 Filesystem Hierarchy Standard FHS é o padrão de estruturação dos diretórios no linux Adotada pelas maior parte das distribuições Entre a exceções estão Solaris e SuSe
18 Categorias do FHS Compartilháveis ou não compartilháveis Aplicações em rede e aplicações locais Variáveis ou estáticos Conteúdo com alteração constante ou não
19 Diretórios Padrão /bin diretório de armazenamento dos binários de utilização geral do sistema Segundo a FHS, não podem haver subdiretórios no /bin /boot contém os componentes essenciais para a inicialização do sistema, como o Kernel
20 Diretórios Padrão /dev armazena os arquivos de dispositivos /etc enviroment tables and controls armazena os arquivos de configuração do sistema /lib armazena bibliotecas essencias do sistema e também os módulos do Kernel
21 Diretórios Padrão /media local para montagem de mídias removíveis /mnt Segundo o FHS é um local para servir de ponto de montagem temporário
22 Diretórios Padrão /opt diretório destinado à aplicativos que possuem sua própria estrutura de binários, à exemplo do oracle /srv armazena dados de serviços providos por servidores de rede
23 Diretórios Padrão /proc os arquivos desta partição são armazenados em ram No /proc são armazenadas as informações sobre processos e sobre o hardware Cada processo no sistema tem um diretório criado no /proc baseado no seu pid
24 Diretórios Padrão /root é o diretório do usuário root, não está contido em /home, pois é necessário para resgate do sistema /sbin armazena binários de operações administrativas. Ex.: /sbin/ifconfig
25 Diretórios Padrão /tmp diretório de armazenamento temporário para os processos do sistema /usr unix system resources armazena dados para compartilhamento com outros hosts
26 Diretórios Padrão Segundo a FHS, dentro do /usr devem haver os seguintes diretórios: bin funciona como o /bin Include armazena headers de C/C++ lib funciona como o /lib local programas instalados localmente mas que podem ser compartilhados sbin funciona como o /sbin share armazena dados estáticos, compartilháveis e independentes de arquitetura de hardware
27 Diretórios Padrão /var armazena informações que sofrem constantes alterações Todos os diretórios do sistema estão armazenados no diretório root, ou seja, o diretório /
Comandos básicos
29 Comandos de ajuda O comando man traz o manual de utilização de outros comandos. Ex.: man find man man Caso se queira apenas ver o comando e sua lista de parâmetros, usa se o parâmetro help. Ex.: find help
30 Comandos para navegação O principal comando para navegar entre pastas é comando cd Seu uso é simples cd /etc/apache2
31 Comandos para navegação Mas tem algumas variações como: cd ~ direciona para a pasta home do usuário atual cd direciona para a pasta em que se encontrava anteriormente cd.. desce um nível, ou seja de /etc/apache2 para /etc
32 Comandos para navegação Para localização, existe o comando pwd (print working directory) Para visualização de conteúdo, existe o comando ls. Ex.: ls /etc
33 Comandos para navegação Com as suas variações, como: ls l lista informações relativas a cada arquivo contido no diretório visualizado ls a lista inclusive arquivos ocultos, situados no diretório visualizado Ou ainda, ls i que mostra ainda o setor do disco onde estão localizados os arquivos
34 Comandos para criação arquivos O comando básico para criação de um arquivo qualquer é o touch. Ex.: touch meuarquivo touch MeuArquivo.txt Para criar diretórios o comando mkdir é usado. Ex.: mkdir MinhaPasta
35 Comandos para remoção de arquivos O comando rm serve para remoção de arquivos. Ex.: rm meuarquivo Porém, para remoção de diretórios usa se o comando rmdir. Ex.: rmdir MinhaPasta
36 Comandos para remoção de arquivos Porém, rmdir traz um problema. O diretório precisa estar vazio, portanto, para remoção de diretórios costuma se usar: rm r MinhaPasta onde r significa que será recursivo, ou seja, é apagado todo o conteúdo do diretório antes do mesmo ser apagado
37 Copiando arquivos Cp é o comando usado para copiar arquivos A construção do comando é simples, cp oquesequercopiar ondesequercopiar. Ex.: cp r /etc/* /home/usuario/etc o r significa que a cópia será recursiva, ou seja, o que houver dentro dos diretórios será copiado também
38 Movendo arquivos Com o comando mv pode se mover arquivos ou diretórios. Ex.: mv meuarquivo MinhaPasta mv MinhaPasta /home/usuario/ Algo que se pode notar, é que mover arquivos é muito mais rápido que copiá los, isso se dá porque mover significa trocar um link dentro do sistema
39 Links Existem dois tipos de link: Simbólicos É um link que aponta para o caminho do arquivo/diretório que se deseja referenciar Hardlink É um link que aponta para o inode do conteúdo, o link é feito direto no disco
40 Links Para criar um link simbólico a sintaxe é: ln s arquivolinkado link1 Para criar um hardlink ln arquivolinkado link2
41 Imprimindo o conteudo de arquivos Com o comando cat, é possível imprimir de forma textual o conteúdo de um arquivo: cat arquivo1 O comando tac imprime o conteúdo invertendo a ordem das linhas, ou seja de trás pra frente: tac arquivo1
42 Referências http://www.infoescola.com/informatica/historia do http://www.infowester.com/linux5.php http://www.oreillynet.com/linux/cmd/ http://pt.wikipedia.org/wiki/guia_de_comandos_p
FIM Site: http://pet.inf.ufsc.br Email: pet@inf.ufsc.br