14
Sistema Operacional GNU/Linux Histórico: 1969 – Bell Labs anuncia a primeira versão do Unix 1983 – Criação do Projeto GNU 1987 – Andrew Tenenbaum anuncia o Minux, versão do Unix para Desktops 1990 – Microsoft lança o Windows 3x 1991 – Lançado o Linux 0,02; Primeiras distribuições do Linux começam a ser feitas; Sun Microsystems anuncia a linguagem Java 1992 – Estudantes alemães criam a SUSE Linux, que apresentaria sua primeira distribuição Linux no ano seguinte 1993 – Surgem as primeiras distribuições Linux em CD's; Criação da Debian; Lançamento do Windows NT 1994 – Lançamento da versão beta do Red Hat e da versão 1,0 do Kernel; 1995 – Fundação da Conectiva Linux, primeira distribuição brasileira; Lançamento do Windows 95 1996 – Criação do Projeto KDE; Tux, o pinguim, torna-se o símbolo do Linux; Lançamento do Windows NT Workstation 1997 – Linus Torvalds vai trabalhar para a Transmeta; Criação do Projeto Gnome 1998 – Netscape abre o código fonte do navegador; Lançamento do Windows 98 Licença de uso O Linux adota a GPL, uma licença de software livre – o que significa, entre outras coisas, que todos os interessados podem usá-lo e redistribuí-lo, nos termos da licença. GNU 1 General Public Licence (Licença Pública Geral) – GNU GPL, refere-se a designação do tipo de licença dos softwares livres. Em termos gerais, a GPL baseia-se em 4 liberdades: 1. A liberdade de executar o programa, para qualquer propósito (liberdade nº 0) 2. A liberdade de estudar como o programa funciona e adaptá-lo para as suas necessidades (liberdade nº 1). O acesso ao código-fonte é um pré-requisito para esta liberdade. 3. A liberdade de redistribuir cópias de modo que você possa ajudar ao seu próximo (liberdade nº 2). 4. A liberdade de aperfeiçoar o programa, e liberar os seus aperfeiçoamentos, de modo que toda a comunidade se beneficie deles (liberdade nº 3). O acesso ao código-fonte é um pré-requisito para esta liberdade. Sistema Operacional Definição: O Sistema Operacional é o conjunto de programas que faz a interface entre o usuário e seus programas com o computador. É tratado como software básico. O principais sistemas operacionais são: Windows, Linux, Unix, MacOS, entre outros. O principal programa de um sistema operacional é o Kernel. Características: Sistema Operacional Gráfico O Linux é um sistema operacional não-gráfico, ou seja, não tem a sua parte operacional integrada a um ambiente gráfico como ocorre nas versões do Windows 95 e posteriores. Porém, utiliza um ambiente gráfico afim de tornar mais amigável a utilização do sistema. Os principais ambientes gráficos para GNU/Linux são: KDE e Gnome. Multitarefa A capacidade de realizar diversas tarefas, ao mesmo tempo, pode ser explicado da seguinte maneira: O MS-DOS é monotarefa, o que isso que dizer? Quer dizer que se eu estivesse trabalhando com um editor de texto e desejasse trabalhar com um programa de planilhas, deveria fechar o editor de texto primeiro e depois executar o programa de planilhas. Diferente disso um sistema operacional multitarefa permite trabalhar com diversos programas ao mesmo tempo. Quando um usuário executa mais de um comando ao mesmo tempo, geralmente é somente um que necessita a interação com o usuário. Os demais comandos executados são, na sua maioria, comandos que não exigem a atenção do usuário, sendo tarefas demoradas. Quando isto ocorre, dizemos que os programas que o 1 Gnu (Animal mamífero) – GNU is Not Unix – GNU Não é Unix.

Sistema Operacional GNU/Linux - Professor Marcelo …professormarcelomoreira.com.br/.../uploads/2016/01/APOSTILA_LINUX… · Comandos básicos do Sistema GNU/Linux Dicas: • O aviso

Embed Size (px)

Citation preview

Page 1: Sistema Operacional GNU/Linux - Professor Marcelo …professormarcelomoreira.com.br/.../uploads/2016/01/APOSTILA_LINUX… · Comandos básicos do Sistema GNU/Linux Dicas: • O aviso

Sistema Operacional GNU/LinuxHistórico:1969 – Bell Labs anuncia a primeira versão do Unix1983 – Criação do Projeto GNU1987 – Andrew Tenenbaum anuncia o Minux, versão do Unix para Desktops1990 – Microsoft lança o Windows 3x1991 – Lançado o Linux 0,02; Primeiras distribuições do Linux começam a ser feitas; Sun Microsystems anuncia a linguagem Java1992 – Estudantes alemães criam a SUSE Linux, que apresentaria sua primeira distribuição Linux no ano seguinte1993 – Surgem as primeiras distribuições Linux em CD's; Criação da Debian; Lançamento do Windows NT1994 – Lançamento da versão beta do Red Hat e da versão 1,0 do Kernel;1995 – Fundação da Conectiva Linux, primeira distribuição brasileira; Lançamento do Windows 951996 – Criação do Projeto KDE; Tux, o pinguim, torna-se o símbolo do Linux; Lançamento do Windows NT Workstation1997 – Linus Torvalds vai trabalhar para a Transmeta; Criação do Projeto Gnome1998 – Netscape abre o código fonte do navegador; Lançamento do Windows 98

Licença de uso

O Linux adota a GPL, uma licença de software livre – o que significa, entre outras coisas, que todos os interessados podem usá-lo e redistribuí-lo, nos termos da licença. GNU1 General Public Licence (Licença Pública Geral) – GNU GPL, refere-se a designação do tipo de licença dos softwares livres.

Em termos gerais, a GPL baseia-se em 4 liberdades:1. A liberdade de executar o programa, para qualquer propósito (liberdade nº 0) 2. A liberdade de estudar como o programa funciona e adaptá-lo para as suas necessidades (liberdade nº 1). O

acesso ao código-fonte é um pré-requisito para esta liberdade. 3. A liberdade de redistribuir cópias de modo que você possa ajudar ao seu próximo (liberdade nº 2). 4. A liberdade de aperfeiçoar o programa, e liberar os seus aperfeiçoamentos, de modo que toda a comunidade se

beneficie deles (liberdade nº 3). O acesso ao código-fonte é um pré-requisito para esta liberdade.

Sistema Operacional

Definição:

O Sistema Operacional é o conjunto de programas que faz a interface entre o usuário e seus programas com o computador. É tratado como software básico. O principais sistemas operacionais são: Windows, Linux, Unix, MacOS, entre outros. O principal programa de um sistema operacional é o Kernel.

Características:

Sistema Operacional Gráfico

O Linux é um sistema operacional não-gráfico, ou seja, não tem a sua parte operacional integrada a um ambiente gráfico como ocorre nas versões do Windows 95 e posteriores. Porém, utiliza um ambiente gráfico afim de tornar mais amigável a utilização do sistema.

Os principais ambientes gráficos para GNU/Linux são: KDE e Gnome.

Multitarefa

A capacidade de realizar diversas tarefas, ao mesmo tempo, pode ser explicado da seguinte maneira: O MS-DOS é monotarefa, o que isso que dizer? Quer dizer que se eu estivesse trabalhando com um editor de texto e desejasse trabalhar com um programa de planilhas, deveria fechar o editor de texto primeiro e depois executar o programa de planilhas. Diferente disso um sistema operacional multitarefa permite trabalhar com diversos programas ao mesmo tempo. Quando um usuário executa mais de um comando ao mesmo tempo, geralmente é somente um que necessita a interação com o usuário. Os demais comandos executados são, na sua maioria, comandos que não exigem a atenção do usuário, sendo tarefas demoradas. Quando isto ocorre, dizemos que os programas que o

1 Gnu (Animal mamífero) – GNU is Not Unix – GNU Não é Unix.

Page 2: Sistema Operacional GNU/Linux - Professor Marcelo …professormarcelomoreira.com.br/.../uploads/2016/01/APOSTILA_LINUX… · Comandos básicos do Sistema GNU/Linux Dicas: • O aviso

usuário está executando sem a interação ficam em Background e o programa que o usuário está executando e interagindo fica em Foreground.

Multiusuário

É a capacidade de criar diversos perfis de usuários adaptando-os em tipos de contas. No caso, o Linux tem duas opções de contas de usuários: Administrador (Root) e Usuário (Limitado). O administrador pode instalar e desinstalar programas e dispositivos de hardware, alterar as configurações do sistema, modificar a conta dos outros usuários entre outras opções. Já o usuário normal poderá apenas usar o computador, adaptando-se as configurações pré-definidas pelo Administrador. Lembre-se que tanto os administradores quanto os limitados podem colocar senhas de acesso.

Plug And Play (PnP)

É a Tecnologia que permite a instalação automática dos dispositivos de hardware. O Linux possui dezenas de Drivers (pequenos arquivos, de configuração e reconhecimento, que permitem o correto funcionamento do dispositivo de hardware, ou seja, ensinam o Linux como utilizar o hardware). Quando conectamos o dispositivo no computador o Linux inicia a tentativa de instalação procurando nos Drivers, já existentes, que condizem com o hardware plugado. Caso encontre os drivers prossegue com a instalação e caso não encontre abre um assistente que solicita o local no qual encontram-se os drivers.

A maioria dos fabricantes de hardware focalizam no maior mercado consumidor, ou seja, usuários Windows. Nem todos os fabricantes desenvolvem drivers de seus dispositivos para Linux. O grande problema fica por conta dos drivers da placa de vídeo e drivers das placas sem-fio.

Kernel

Definições:

O Kernel é a parte central do sistema – núcleo do sistema – ou o coração do sistema operacional.

Um kernel é uma parte importante de qualquer sistema operacional, atuando como ponte de comunicação entre o hardware e também pelas funções de baixo nível. É responsável por:

• Controlar os periféricos de entrada e saída de informação;• Gerenciar o Sistema de Arquivos;• Criar uma plataforma comum entre os programas;• Gerenciar o processamento dos dados.

Shell

O Shell, conhecido como interpretador ou tradutor, é um programa que permite a interação do usuário com Kernel. O Kernel compreende apenas linguagem de máquina (linguagem baseada em código binário). Para enviar pedidos ou solicitações para o Kernel seria uma tarefa muito difícil, pois exigiria do usuário o conhecimento em linguagem de máquina.

O Shell oferece um ambiente chamado Prompt (ou Aviso de comando), uma tela nada amigável que permite digitar comandos compreendidos por um usuário. Este comando passa pelo interpretador (Shell) que traduz para a linguagem compreendida pelo Kernel e vice-versa.

Os principais programas Shell são Bash (Bourne Again Shell) para Linux e o Command para Windows.

Page 3: Sistema Operacional GNU/Linux - Professor Marcelo …professormarcelomoreira.com.br/.../uploads/2016/01/APOSTILA_LINUX… · Comandos básicos do Sistema GNU/Linux Dicas: • O aviso

Comandos básicos do Sistema GNU/LinuxDicas:

• O aviso de comando do usuário root é identificado por uma “#”, e o aviso de comando de usuários comuns é identificado pelo símbolo “$”. Isto é padrão em sistemas Linux.

• O Linux é “case sensitive”, ou seja, diferencia letras maiúsculas de letras minúsculas.• Após digitar o comando pressionamos a tecla ENTER para efetivar a solicitação.

Comandos:

cd (utilizado para alterar entre as pastas (diretórios))

Formato do comando: cd <nome_do_diretório>

ex: cd Documentos (este comando procura uma pasta chamada Documentos na pasta atual)

Obs: para voltar uma pasta digitamos ls ..

ls ou dir (utilizado para listar os arquivos e pastas da pasta atual)

Formato do comando: ls [opções]

ex: ls

Page 4: Sistema Operacional GNU/Linux - Professor Marcelo …professormarcelomoreira.com.br/.../uploads/2016/01/APOSTILA_LINUX… · Comandos básicos do Sistema GNU/Linux Dicas: • O aviso

Opções:• -t = lista os arquivos em ordem de criação• -a = lista todos os arquivos, inclusive os ocultos (em geral um arquivo oculto é representado por um ponto “.”

no início do nome do arquivo)• -F = acrescenta os seguintes caracteres no final dos arquivos:

• / - diretório• @ - link• * - executável

• -R = lista todos os arquivos e subdiretórios• -l = lista de uma forma completa

pwd (exibe o nome da pasta atual)

Formado do comando: pwd (print working directory)

ex: pwd

Obs: repare que eu estou manipulando a pasta “wagnerbugs” que está dentro da pasta “home”.

mkdir (permite criar pastas/diretório)

Formato do comando: mkdir <nome_da_ pasta>

ex: mkdir teste

Obs: perceba que após digitar o comando “mkdir teste” pressionei a tecla ENTER e em seguida digitei o comando “dir” para verificar se a pasta foi criada.

Dica: Para criar várias pastas basta digitar “mkdir pasta pasta1 pasta2” e assim por diante.

rmdir (Remove a pasta criada – é necessário que a pasta esteja vazia)

Formato do comando: rmdir <nome_da_pasta>

ex: rmdir teste

Page 5: Sistema Operacional GNU/Linux - Professor Marcelo …professormarcelomoreira.com.br/.../uploads/2016/01/APOSTILA_LINUX… · Comandos básicos do Sistema GNU/Linux Dicas: • O aviso

Obs: perceba que após digitar o comando “rmdir teste” pressionei a tecla ENTER e em seguida digitei o comando “dir” para verificar se a pasta foi apagada.

Dica: Para apagar várias pastas basta digitar “rmdir pasta pasta1 pasta2” e assim por diante.

rm (apaga arquivos e opcionalmente pastas)

Formato do comando: rm [opções] <nome_do_arquivo_ou_pasta>

ex: rm Foto2.jpg

Obs: Perceba que antes de executar o comando, abri a pasta imagens pelo comando “cd Imagens”, após executei o comando “dir” para exibir os arquivos e diretórios, executei o comando “rm Foto2.jpg” e em seguida o comando “dir” para verificar se a remoção foi realizada com sucesso.

Opções:

• rm -R ~/<nome_da_pasta>/ permite excluir a pasta e seus arquivos e subdiretórios e arquivos destes

cp (copia arquivos)

Formato do comando: cp <nome_do_arquivo> <novo_nome_do_arquivo>

ex: cp Foto1.jpg Foto2.jpg

Page 6: Sistema Operacional GNU/Linux - Professor Marcelo …professormarcelomoreira.com.br/.../uploads/2016/01/APOSTILA_LINUX… · Comandos básicos do Sistema GNU/Linux Dicas: • O aviso

Obs: Perceba que digitei o comando “dir” para exibir os arquivos existentes, após digitei o comando “cp Foto1.jpg Foto2.jpg” e pressionei a tecla ENTER e, por fim, digitei o comando “dir” para verificar o resultado.

mv (permite mover e renomear arquivos)

Formato do comando:

mv <nome_do_arquivo> <novo_nome_do_arquivo> (renomear arquivo)

mv <nome_do_arquivo> ~/<pasta_de_destino>/ (mover arquivo)

ex: mv Foto1.jpg Foto9.jpg

ex: mv Foto123.jpg ~/Música/

Obs: Os comandos executados foram: “dir” para exibir os arquivos da pasta Imagens, “mv Foto123.jpg ~/Música/” para mover o arquivo Foto123.jpg para a pasta Música, “cd ..” para voltar um nível na árvore de diretórios, “cd Música” para manipular a pasta Música e “dir” para visualizar os arquivos da pasta Música.

Chmod (permite estabelecer as regras (permissões) de acesso à um arquivo e diretório.

Formato do comando: chmod [quem]=[permissões] <arquivo_ou_pasta>

[quem] Controla que nível de acesso será mudado. Especificam, em ordem, usuário (u), grupo (g), outros (o), todos (a).

[permissões] r (read) w (writer) x (execute)

ex: chmod a=r Foto1.jpg (onde “a” (all) indica que a alteração das permissões serão aplicadas a todos e “r” (read) indica que o arquivo poderá ser visualizá-lo apenas no modo somente leitura)

Ex:

chmod a=rw Foto2.jpg (onde “a” (all) indica que a alteração das permissões serão aplicadas a todos e “rw” (read/writer) indica que o arquivo poderá ser visualizá-lo e alterado)

Page 7: Sistema Operacional GNU/Linux - Professor Marcelo …professormarcelomoreira.com.br/.../uploads/2016/01/APOSTILA_LINUX… · Comandos básicos do Sistema GNU/Linux Dicas: • O aviso

Ex:

chmod a=rwx Foto3.jpg (onde “a” (all) indica que a alteração das permissões serão aplicadas a todos e “rwx” (read/writer/execute) indica que o arquivo poderá ser visualizá-lo, alterado e executado)

Obs: Perceba que o arquivo Foto1.jpg recebeu permissão apenas de leitura, o arquivo Foto2.jpg recebeu a permissão de leitura e escrita e o arquivo Foto3.jpg recebeu a permissão de acesso leitura, escrita e execução. Observe a figura abaixo:

Obs: Inicialmente executei todos os comandos dos comandos acima e após digitei o comando ls -l para exibir as permissões impostas nos arquivos.

Observe a figura acima. O objetivo é perceber qual tipo de acesso posso ter aos arquivos e diretórios. Vamos separar em partes as informações descritas

-r--r--r-- o “–“ antes do “r” indica que é um arquivo comum. Caso fosse um “d” indicaria uma pasta/diretório e se fosse um “l” estaria referindo-se à um atalho (link). A letra “r” (read) indica que o arquivo é de leitura, caso seja exibido um “w” (writer) indica que o arquivo é de escrita e caso seja exibido um “x” (execute) indica que o arquivo é executável.

1 o número serve para indicar quantos diretórios existem dentro da pasta. No caso de um arquivo sempre será exibido o número 1 e caso for pasta será exibido o número 2. Ex: se uma pasta não tiver subdiretórios será exibido o número 2. Agora, se esta pasta tiver um subdiretório será exibido o número 3. Caso esta pasta tenha 7 subdiretórios será exibido o número 9, ou seja, 2 (para indicar que é pasta) + 7 subdiretórios

wagnerbugs indica o nome do usuário dono do arquivo

root indica o nome do grupo que o usuário, dono do arquivo, pertence

8077 indica o tamanho do arquivo em Bytes

2010-02-08 13:18 Indica a data e hora de criação do arquivo

Foto1.jpg indica o nome do arquivo ou pasta

Observe a linha:

-rwxrwxrwx wagnerbugs root Foto3.jpg

Virou uma bagunça não? Vou explicar cada parte para entender o que quer dizer as 10 letras acima (da esquerda para a direita):

• A primeira letra diz qual é o tipo do arquivo. Caso tiver um "d" é um diretório, um "l" um link a um arquivo no sistema, um "-" quer dizer que é um arquivo comum, etc.

Page 8: Sistema Operacional GNU/Linux - Professor Marcelo …professormarcelomoreira.com.br/.../uploads/2016/01/APOSTILA_LINUX… · Comandos básicos do Sistema GNU/Linux Dicas: • O aviso

• Da segunda a quarta letra (rwx) dizem qual é a permissão de acesso ao dono do arquivo. Neste caso “wagnerbugs” tem a permissão de ler (r - read), gravar (w - write) e executar (x - execute) o arquivo Foto3.jpg.

• Da quinta a sétima letra (rwx) diz qual é a permissão de acesso ao grupo do arquivo. Neste caso todos os usuários que pertencem ao grupo “root” tem a permissão de ler (r), gravar (w), e também executar (x) o arquivo Foto3.jpg.

• Da oitava a décima letra (rwx) diz qual é a permissão de acesso para os outros usuários. Neste caso todos os usuários que não são donos do arquivo Foto3.jpg tem a permissão para ler, gravar e executar o arquivo Foto3.jpg.

cal (exibe um calendário)

Formato do comando: cal [opções]

ex: cal

Opções: • -3 = lista o anterior, atual e próximo mês da data atual• [ano] = exibe o calendário do ano especificado. Ex: cal 1981• [mês ano] = exibe o mês do ano especificado. Ex: cal 10 1981

date (exibe a data e hora atual)

Formato do comando: date

ex: date

Obs: para mudar a data e hora é necessário logar-se como administrador (root) e digitar

“date 032914502010” (sendo que 03 refere-se o mês, 29 o dia, 1450 (14h50) a hora e 2010 o ano)

Compactando e descompactando arquivos

tar (permite compactar e descompactar arquivos)

Para compactar:

Page 9: Sistema Operacional GNU/Linux - Professor Marcelo …professormarcelomoreira.com.br/.../uploads/2016/01/APOSTILA_LINUX… · Comandos básicos do Sistema GNU/Linux Dicas: • O aviso

tar cvf Arquivos.tar *.jpg (irá criar a pasta compactada “Arquivos.tar” com todos os arquivos .jpg existentes na pasta atual)

Para verificar o conteúdo da pasta “Arquivos.tar” usamos o comando “tar tvf Arquivos.tar” e para extrair os arquivos da pasta “Arquivos.tar” usamos o comando “tar xvf Arquivos.tar”

Obs: para extrair apenas um arquivo da pasta “Arquivos.tar” usamos o comando “tar xvf Arquivos.tar nome_do_arquivo.extensão”. Ex: tar xvf Arquivos.tar Foto1.jpg”

passwd (Altera a senha de um usuário)

Formato do comando: passwd [opções] <nome_do_usuário>

Obs: é necessário privilégios de administrador para alterar a senha de outros usuários.

Ex: passwd wagnerbugs

Obs: Percebam que meu nível de privilégios era de usuário comum indicado pelo caracter $ e após acessar minha conta de administrador (root) o caracter # é exibido indicando privilégios de administrador.

Após digitar o comando “passwd wagnerbugs” foi-me solicitado a digitação da nova senha e redigitação da nova senha.

Opções:

• “passwd -l wagnerbugs” para bloquear a conta do usuário “wagnerbugs”.

• “passwd -u wagnerbugs” para desbloquear a conta do usuário “wagnerbugs”.

• “passwd -d wagnerbugs” para desativar a senha do usuário “wagnerbugs” deixando-o sem uma senha de acesso.

ifconfig (informações relativas a rede e conectividade)

Formato do comando: ifconfig [opções]

Ex: ifconfig eth0

Page 10: Sistema Operacional GNU/Linux - Professor Marcelo …professormarcelomoreira.com.br/.../uploads/2016/01/APOSTILA_LINUX… · Comandos básicos do Sistema GNU/Linux Dicas: • O aviso

Obs: Percebam que meu endereço de IP é 192.168.0.137

ping (testa a conectividade e busca endereço de ip de servidores)

Formato: ping <endereço_do_site>

Ex: ping www.wagnerbugs.com.br

Observem que o endereço de IP do servidor que hospeda meu site é 67.255.174.54 e que foram enviados 4 pacotes e nenhum foi perdido!

su (alterna entre usuário)

Formato do comando: su <nome_do_usuário>

ex: su root

Page 11: Sistema Operacional GNU/Linux - Professor Marcelo …professormarcelomoreira.com.br/.../uploads/2016/01/APOSTILA_LINUX… · Comandos básicos do Sistema GNU/Linux Dicas: • O aviso

Obs: perceba que estava como usuário wagnerbugs e após digitar o comando “su root” e digitar a senha passo a usar a conta do usuário “root”.

clear (limpa a tela do prompt)

Formato do comando: clear

login (permite acessar a conta de outro usuário)

Formato do comando: login [opções] <nome_do_usuário>

ex: login wagnerbugs (será exigido a senha e o acesso liberado a sessão de uso do usuário atual é encerrada)

ex: login -p wagnerbugs (a opção -p permite mudar de usuário sem encerrar o estado atual do usuário, ou seja, apenas troca de usuário)

logout (encerra a sessão de uso)

Formato do comando: logout

obs: o mesmo efeito é obtido pelo comando “exit”

reboot (reinicia o computador)

Formato do comando: reboot

obs: o mesmo efeito pode ser obtido pelo comando “shutdown -r now”

shutdown (desliga o computador)

Formato do comando: shutdown

Sistema de arquivos

O Linux é muito versátil quando o assunto é sistema de arquivos e por isso, é muito importante o entendimento de suas funcionalidades. Um exemplo disso é a possibilidade de criar e manter arquivos em diferentes tipos de partições, discos, dispositivos e computadores remotos. Além disso, o Linux dá suporte há vários tipos de sistemas de arquivos (EXT2, EXT3, EXT4, FAT, NTFS, ReiserFS e Reiser4 entre outros).

EXT2 (similar ao FAT32)

O ext2 é um sistema de arquivos de disco de alta performance usado pelo Linux para dispositivos de armazenamento, como discos rígidos e mídias removíveis.

O sistema de arquivos Second Extended Filesystem foi desenhado como uma extensão de Extended Filesystem (ext). O ext2 oferece a melhor performance (em termos de velocidade e uso da CPU) entre todos os sistemas de arquivos suportados pelo Linux.

Ext2 é um sistema de arquivos muito rápido pelo fato de não possuir um journal, sendo assim os dados são gravados diretamente. Quando ocorre algum crash, o fsck é acionado para a verificação do sistema, corrigindo eventuais perdas de dados.

EXT3 (Similar ao NTFS)

Page 12: Sistema Operacional GNU/Linux - Professor Marcelo …professormarcelomoreira.com.br/.../uploads/2016/01/APOSTILA_LINUX… · Comandos básicos do Sistema GNU/Linux Dicas: • O aviso

O ext3 (que significa "Third Extended File System") faz parte da nova geração de sistemas de gestão de arquivos do Linux. A sua maior vantagem é o suporte de journaling, que consiste em guardar informação sobre as transações de escrita, permitindo uma recuperação rápida e confiável em caso de interrupção súbita (por exemplo, por falta de Eletricidade).

Na maioria dos casos, comparado ao ext2, o uso deste sistema de arquivos melhora o desempenho do sistema de arquivos através da gravação sequencial dos dados na área de metadados e acesso mhash da sua árvore de diretórios.

A estrutura da partição ext3 é semelhante à da ext2, pelo que a migração de um formato para o outro é simples. A adição do journaling é feita em um arquivo chamado journal que fica oculto pelo código ext3 na partição (desta forma ele não poderá ser apagado, o que comprometeria o funcionamento do sistema). A estrutura idêntica da partição ext3 com a ext2 torna mais fácil a manutenção do sistema, já que todas as ferramentas para recuperação ext2 funcionarão sem problemas, sendo mesmo possível montar uma partição ext3 como se fosse ext2.

Sistema de Diretórios

No Windows existe uma pasta ou diretório central chamada WINDOWS e também aquela que é chamada ARQUIVOS DE PROGRAMAS, DOCUMENTS AND SETTINGS ou até mesmo as Unidades descritas por letras como C: D: ...

No Linux é diferente. Todos os arquivos fazem parte de um mesmo diretório chamado Diretório Raiz ou “/”.

Dentro deste diretório temos não apenas todos arquivos e as partições de disco, mas também o CD-ROM, drive de disquete e outros dispositivos, formando a estrutura como descrito na figura abaixo.

O diretório é o local utilizado para armazenar conjuntos de arquivos semelhantes para uma melhor organização e localização dos mesmos. O diretório, assim como o arquivo é "Case Sensitive", isto é, o diretório /wagner é diferente do diretório /WAGNER, a letra maiúscula ou minúscula em seu nome fará diferença.

Page 13: Sistema Operacional GNU/Linux - Professor Marcelo …professormarcelomoreira.com.br/.../uploads/2016/01/APOSTILA_LINUX… · Comandos básicos do Sistema GNU/Linux Dicas: • O aviso

Os diretórios são organizados hierarquicamente em forma de uma árvore. A função desta árvore é dividir o espaço das partições do disco rígido em "zonas", para organizar as informações contidas nos arquivos de forma hierárquica.

Além dos diretórios dos usuários, o sistema de diretórios guarda os programas, as bibliotecas que estes programas utilizam, os arquivos de configuração do sistema e etc.

O Linux não atribui letras para identificar unidades de disco como o Windows, de modo que todos os diretórios do sistema estão dispostos abaixo do diretório "/".

Com o intuito de padronizar o conteúdo de cada um destes diretórios, foi criado o Filesystem Hierarchy Standard - FHS (http://www.pathname.com/fhs/), uma especificação que sugere como deve ser a organização de arquivos e diretórios em sistemas compatíveis com o Unix

Conhecendo as pastas/diretórios do sistema GNU/Linux

O diretório "/bin" armazena os executáveis de alguns comandos básicos do sistema, como o su, tar, cat, rm, pwd, etc., um conjunto que na maioria das distribuições ocupa de 6 a 8 MB. O principal motivo deles ficarem separados dos outros executáveis do sistema (que vão dentro da pasta /usr) é permitir que eles continuarem acessíveis desde o início do boot (inicialização do sistema), mesmo que você resolva armazená-la em um diretório separado. Ele é complementado pelo diretório "/sbin", que tem a mesma função básica, mas se diferencia por armazenar aplicativos que podem ser usados apenas pelo root, como, por exemplo, o "adduser", que permite criar novos usuários.

A maior parte dos aplicativos e outros componentes ficam instalados dentro do diretório /usr (de "Unix System Resources", ou recursos de sistema Unix). Este é de longe o diretório com mais arquivos em qualquer distribuição Linux, pois é aqui que ficam os executáveis e bibliotecas de todos os principais programas instalados.

A pasta "/usr/bin" (bin de binário), por exemplo, armazena cerca de 2.000 programas e atalhos para programas em uma instalação típica do sistema. Como os executáveis de quase todos os programas instalados são armazenados nela, o número só faz crescer conforme você instala novos pacotes.

Outro diretório com um enorme volume de arquivos é o "/usr/lib", onde ficam armazenadas bibliotecas usadas pelos programas. A função destas bibliotecas lembra um pouco a dos arquivos .dll no Windows.

Outra pasta é a "/usr/src", que é usada para armazenar o código fonte de programas e também o código fonte do kernel (caso disponível).

A pasta "/boot" armazena o kernel e alguns arquivos usados na fase inicial do boot. Como pode imaginar, ele é o primeiro componente carregado pelo gerenciador de boot durante a inicialização do sistema.

Logo a seguir temos o diretório "/dev", que é de longe o exemplo mais exótico de estrutura de diretório no Linux. Todos os arquivos contidos aqui, como, por exemplo, "/dev/sda", "/dev/dsp", "/dev/modem", etc., não são arquivos armazenados no HD, mas sim ponteiros para dispositivos de hardware. Por exemplo, o "arquivo" "/dev/mouse" contém as informações enviadas pelo mouse, enquanto o "/dev/dsp" permite acessar a placa de som. Esta organização visa facilitar a vida dos programadores, que podem acessar o hardware do micro simplesmente fazendo seus programas lerem e gravarem em arquivos, deixando que o kernel se encarregue da parte complicada. Ele é complementado pelo diretório "/proc", que não armazena arquivos, mas sim informações sobre o hardware e sobre a configuração do sistema. Estas informações são usadas por utilitários de detecção e configuração do sistema, mas podem ser úteis também quando você quer checar alguma configuração manualmente. O comando "cat /proc/net/dev" mostra informações sobre as interfaces de rede, o "cat /proc/cpuinfo" mostra informações sobre o processador e assim por diante.

O diretório "/etc" concentra os arquivos de configuração do sistema, substituindo de certa forma o registro do Windows. A vantagem é que enquanto o registro é uma espécie de caixa preta, os scripts

Page 14: Sistema Operacional GNU/Linux - Professor Marcelo …professormarcelomoreira.com.br/.../uploads/2016/01/APOSTILA_LINUX… · Comandos básicos do Sistema GNU/Linux Dicas: • O aviso

e arquivos de configuração do diretório "/etc" são desenvolvidos justamente para facilitar a edição manual. É verdade que na maioria dos casos isto não é necessário, graças aos vários utilitários de configuração disponíveis, mas a possibilidade continua disponível.

O diretório "/mnt" (de "mount") recebe este nome justamente por servir de ponto de montagem para o drive óptico ("/mnt/cdrom" ou "/mnt/dvd") e outros dispositivos de armazenamento. Na maioria das distribuições atuais ele é substituído pelo diretório "/media", que tem a mesma função. Ao plugar um pendrive no Linux, por exemplo, ele é montado pelo sistema na pasta "/media/disk", ao plugar um cartão de memória ele é visto como "/media/card" e assim por diante.

A pasta “/home” contém os arquivos dos usuários comuns do sistema. Encontraremos as pastas Documentos, Música, Vídeo entre outras. A pasta “/root” contém os arquivos específicos do administrador. É como se fosse a pasta /home do usuário administrador.

Algumas comparações:

A: /dev/fd0

B: /dev/fd1

C: /dev/hda1