Informática Linux Professor Márcio Hunecke www.acasadoconcurseiro.com.br Informática O SISTEMA OPERACIONAL GNU/LINUX Características Gerais O Linux surgiu por meio do Projeto GNU (GNU’s Not Unix) e é regido pelo sistema de licenciamento GPL (General Public License). O sistema operacional Linux é composto por duas partes principais: Kernel – O kernel é o “núcleo” do sistema e é responsável pelas funções de mais baixo nível, como o gerenciamento de memória, de processos e da CPU. O kernel também é o responsável pelo suporte aos sistemas de arquivos, dispositivos e periféricos conectados ao computador, como placas SCSI, placas de rede, de som, portas seriais, etc. Embora o kernel seja uma parte importante do Linux, ele sozinho não constitui o sistema GNU/Linux. É chamado Linux o conjunto do kernel e demais programas, como shells, compiladores, bibliotecas de funções, etc. Aplicações de Sistema – O kernel faz muito pouco sozinho, uma vez que ele só provê os recursos necessários para que outros programas sejam executados. Logo, é essencial a utilização de outros programas (chamamos de PACOTES) para implementar os vários serviços necessários ao sistema operacional. As aplicações de sistemas são aquelas necessárias para fazer com que o sistema funcione. Entre elas podemos citar o Samba, Apache, Bind, Postfix, Lilo, Grub, Putty, Shell, Vi. Uma distribuição LINUX consiste na organização do Kernel do programa e de todas as demais aplicações que ela comporta. Muitas destas versões são “não comerciais” (gratuitas) e outras são comerciais (pagas). Mas todas elas têm o código fonte aberto. Dentre as versões mais conhecidas, podemos citar: •• Red Hat (suporte é pago e é a mais usada mundialmente em servidores) •• Fedora (versão não comercial do Red Hat voltado para estações de trabalho) •• CentOS (versão não comercial do Red Hat voltado para servidores) •• Ubuntu (mais utilizada em estações de trabalho) •• Android (desenvolvido pelo Google e voltado para dispositivos móveis) www.acasadoconcurseiro.com.br 3 •• Mandriva (= Conectiva + Mandrake) •• Kurumin (brasileira) •• SuSE •• Slackware •• Debian •• Gentoo O ambiente gráfico No Linux a responsabilidade pelo ambiente gráfico não é do kernel e sim de um programa especial, o XFree86. No entanto, este programa provê apenas as funções de desenho de elementos gráficos e interação com a placa de vídeo. A interação final do usuário com a interface gráfica se dá por meio de programas gerenciadores de janelas (chamados de interfaces), como o KDE, o WindowMaker X-Windows (X11) e o GNOME, responsáveis pela “aparência” do seu Linux. Comparativo Windows x Linux Para compararmos os dois sistemas, vamos levar em consideração o Windows, em qualquer de suas versões, e o Núcleo (Kernel) do sistema Operacional LINUX, já que existem várias versões de distribuição no mercado, cada qual regida por suas próprias regras. WINDOWS XP OU 7 LINUX Proprietário Software Livre Sistema Operacional Gráfico Sistema não Gráfico Copyright CopyLeft – regido pela Licença GNU Código Fechado Código Aberto Software Comercial O Kernel não é comercial Não diferencia maiúsculas e minúsculas Diferencia maiúsculas e minúsculas Utiliza extensões para identificar tipo de Não precisa de extensões para identificar arquivo tipo de arquivo Sistema de Arquivos FAT e NTFS Sistema de Arquivos EXT2, EXT3* e ReiserFS que suporta Journaling. Identifica as partições e dispositivos com Identifica as partições e dispositivos com/ letras (C:, E:) (/bin, /Pendrive) 4 www.acasadoconcurseiro.com.br Informática – Linux – Prof. Márcio Hunecke Gerenciando Arquivos e Pastas do Linux No Windows, temos uma estrutura baseada em letras identificando cada dispositivo, geralmente da seguinte forma: Arquivos do sistema: Residem em C: onde temos os diretórios: Meus Documentos, Arquivos de Programas, etc. “Drive de disco flexível 3,5”: É acessado em A: Unidade de CD-ROM: É acessado geralmente em D: O caminho até um arquivo é descrito, por exemplo, dessa forma: C:\Usuários\MarcioHunecke\ Documentos\arquivo.txt. No GNU/Linux, não temos essa estrutura baseada em letras, mas sim baseada em pontos de montagem. Arquivos do sistema: A partição que contém esses arquivos é chamada de raiz e seu ponto de montagem é o “/”. Numa estrutura padrão (aceitável para todas as versões) teríamos, pelo menos, os seguintes diretórios: •• •• •• •• •• •• •• •• •• /usr (de “user”) – onde fica a maior parte dos programas /home – arquivos do usuário /bin – armazena os executáveis de alguns comandos básicos do sistema /sbin – armezena os executáveis que estão disponíveis somente para o root /boot – armazena o Kernel (ou núcleo) do Sistema Operacional e os arquivos carregados durante a inicialização do sistema. /dev – armazena links para dispositivos de hardware (arquivos para placa de som, interrupção do mouse, etc.) – semelhante ao Painel de Controle do Windows /etc – Arquivos de configuração de sistema, tem a mesma função do Painel de Controle do Windows. /mnt (de “mount”) – serve de ponto de montagem para o CD-ROM (/mnt/cdrom), drive de disquetes (/mnt/floppy) /root – arquivos do usuário root Nomes de Arquivos Outra diferença importante para os usuários é o fato de os nomes dos arquivos no GNU/Linux serem “case sensitive”, ou seja, as letras maiúsculas e minúsculas fazem diferença, por exemplo, no GNU/Linux, posso ter os seguintes nomes de arquivos em um mesmo diretório: # ls -1 teste tesTE TESTE Uma última diferença diz respeito às extensões dos arquivos, que não são necessárias para os arquivos no GNU/Linux. Enquanto no Windows, um arquivo nomeado “arquivo.exe” é um www.acasadoconcurseiro.com.br 5 executável e um “texto.doc” é um documento de texto, no GNU/Linux podemos ter somente os nomes “arquivo” e “texto”. Então como saber o tipo de arquivo se o mesmo não tem extensão? A identificação dos arquivos é feita baseada no conteúdo do cabeçalho dos mesmos. Nada impede que o usuário crie pastas na Raiz e armazene ali os seus arquivos, no entanto é altamente recomendável que ele faça isso na pasta /home, evitando confusões desnecessárias. Usuários no Linux Tanto no Windows como no Linux, é necessário se autenticar no sistema com um usuário válido, que podem ser nomes comuns, como Sérgio, Edgar e Pedro. Contudo, no Linux, existe um usuário que se chama Root e que é o Administrador do Sistema, também chamado de SuperUser (Super Usuário). Para facilitar o gerenciamento, os usuários podem ser organizados em grupos, como RH, COMPRAS. No caso do Root, seu grupo por padrão é o Root. Alguns Comandos do Linux •• •• •• •• •• •• •• •• •• •• •• •• •• •• •• •• •• •• •• •• •• •• •• •• •• •• ls – (list) Utilizado para listar o conteúdo de um diretório cp – (copy) Copia arquivos e diretórios mv – (move) Move arquivos e diretórios (Cuidado com o renomear!!!) rm – (remove) Apaga arquivos e diretórios cd – (change directory) Troca de diretório pwd – (print work directory) Mostra o diretório (Não confundir com passwd) find – Procurar arquivos e diretórios mkdir – (make directory) Cria diretórios chown – (change owner) Troca o proprietário dos arquivos ou diretórios chmod – (change mod) Troca as permissões dos arquivos e diretórios cat – Cria, concatena ou imprime arquivos na tela gzip e tar – Utilizado para compactar arquivos ou pastas clear – Limpa a tela chmod – (change mod) Troca as permissões dos arquivos e diretórios useradd – Adiciona usuários passwd – (password) Troca a senha man – (manual) Páginas de manuais do Linux kill – Encerra programa touch – Altera a data de um arquivo. Se arquivo não existir, cria um arquivo vazio grep – Permite fazer filtro em um arquivo texto ou log tail – Mostra a parte inicial e final de um arquivo texto, respectivamente diff – Compara dois arquivos, mostrando as diferenças cut – Comando recortar sort – Permite ordenar linhas em um arquivo texto ifconfig – Apresenta configurações de rede top – Similar ao Gerenciador de Tarefas do Windows Observação: O Linux somente possui Lixeira quando é utilizado com interface gráfica. 6 www.acasadoconcurseiro.com.br