prof. joão paulo de brito gonçalves sistema de arquivos campus - cachoeiro curso técnico de...

30
Prof. João Paulo de Brito Gonçalves Sistema de Arquivos Sistema de Arquivos Campus - Cachoeiro Curso Técnico de Informática

Upload: internet

Post on 17-Apr-2015

106 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: Prof. João Paulo de Brito Gonçalves Sistema de Arquivos Campus - Cachoeiro Curso Técnico de Informática

Prof. João Paulo de Brito Gonçalves

Sistema de ArquivosSistema de Arquivos

Campus - CachoeiroCurso Técnico de Informática

Page 2: Prof. João Paulo de Brito Gonçalves Sistema de Arquivos Campus - Cachoeiro Curso Técnico de Informática

2

Introdução

• É com o sistema de arquivos que o usuário mais nota a presença do sistema operacional.

• O armazenamento de informações possibilita a recuperação, reutilização e modificação nos dados e nos programas.

• Os computadores podem armazenar informações em vários dispositivos físicos diferentes, tais como fitas magnéticas e discos magnéticos e óticos.

• Os arquivos de um sistema computacional são manipulados por meio de chamadas (system calls) ao Sistema Operacional;

Page 3: Prof. João Paulo de Brito Gonçalves Sistema de Arquivos Campus - Cachoeiro Curso Técnico de Informática

3

Conceitos sobre Arquivos

• Os arquivos (files) podem ser definidos como uma unidade lógica de armazenamento de informação, destinada a abstrair as propriedades físicas dos meios de armazenamento.

• Um arquivo é referenciado por seu nome e tem propriedades tais como tipo, tempo de criação, tamanho, nome do proprietário entre outras. Estas informações ficam armazenadas num diretório, que é uma tabela de símbolos que permite identificar tais informações.

• Diferentes tipos de informação podem ser armazenadas em um arquivo, como programas fonte e objeto, dados entre outras. Os arquivos podem ser numéricos, alfabéticos ou alfanuméricos.

Page 4: Prof. João Paulo de Brito Gonçalves Sistema de Arquivos Campus - Cachoeiro Curso Técnico de Informática

4

Operações sobre Arquivos• criação. São necessários dois passos para se criar um

arquivo. Encontrar um espaço para ele no dispositivo de armazenamento e colocar a entrada do arquivo no diretório informando seu nome e sua localização no dispositivo.

• escrita. A escrita é feita através de uma chamada ao sistema especificando o nome do arquivo e a informação a ser escrita.

• leitura. A leitura é realizada por uma chamada ao sistema especificando o nome do arquivo e a localização onde o bloco lido será colocado.

• renomear: o identificador do arquivo no sistema é modificado

• Apagar: O diretório é pesquisado e quando a entrada associada ao arquivo é encontrada, ela é invalidada e liberado todo o espaço destinado ao arquivo.

• Recortar/colar: o arquivo é relacionado à um diretório(pasta) diferente do qual se encontrava.

Page 5: Prof. João Paulo de Brito Gonçalves Sistema de Arquivos Campus - Cachoeiro Curso Técnico de Informática

5

Sistema de Arquivos

• Três importantes requisitos são considerados no arma-zenamento de informações:– Possibilidade de armazenar e recuperar uma grande

quantidade de informação;– Informação gerada por um programa deve continuar

a existir após a finalização desse programa:• Ex.: banco de dados;

– Múltiplos programas podem acessar informações de forma simultânea:

• Informações podem ser independentes de programas específicos;

Page 6: Prof. João Paulo de Brito Gonçalves Sistema de Arquivos Campus - Cachoeiro Curso Técnico de Informática

6

Sistema de Arquivos

• Arquivos são manipulados pelo Sistema Operacional;

• Tarefas:– Estrutura de arquivos;– Nomes;– Acessos;– Proteção;– Implementação;

• SISTEMA de ARQUIVOS: parte do SO responsável por manipular arquivos!!!

Page 7: Prof. João Paulo de Brito Gonçalves Sistema de Arquivos Campus - Cachoeiro Curso Técnico de Informática

7

Sistema de Arquivos

Usuário interage com os arquivos em um nível mais alto

– Interface como os arquivos aparecem;– Como arquivos são nomeados e protegidos;– Quais operações podem ser realizadas;

• SO: interage com os arquivos em baixo nível– Como arquivos são armazenados

fisicamente;– Como arquivos são referenciados (links);

Page 8: Prof. João Paulo de Brito Gonçalves Sistema de Arquivos Campus - Cachoeiro Curso Técnico de Informática

8

Nomes de Arquivos

Quando arquivos são criados, nomes são atribuídos a esses arquivos;Arquivos são referenciados por meio de seus nomes;Tamanho: até 255 caracteres;

Restrição: MS-DOS aceita de 1-8 caracteres;Letras, números, caracteres especiais podem compor nomes de arquivos:

Ex.: 2.doc; aula11-2_10.doc•Alguns sistemas operacionais são sensíveis a letras maiúsculas e minúsculas (case sensitive) e outros não;

Page 9: Prof. João Paulo de Brito Gonçalves Sistema de Arquivos Campus - Cachoeiro Curso Técnico de Informática

9

Nomes de Arquivos• MS-DOS não é sensível:Exemplo.pas e exemplo.pas são o mesmo arquivo

• Linux é sensível:Exemplo.pas e exemplo.pas são arquivos diferentes

• Win95/Win98/WinNT/Win2000 herdaram algumas características do sistema de arquivos do MS-DOS, como por exemplo sua construção;

• No entanto, WinNT/Win2000/WinXP/WinVista/Win7 também possuem um sistema de arquivos próprio NTFS (New Technology File Systems);

Page 10: Prof. João Paulo de Brito Gonçalves Sistema de Arquivos Campus - Cachoeiro Curso Técnico de Informática

10

Nomes de Arquivos

• Alguns sistemas suportam uma extensão relacionada ao arquivo:

• MS-DOS: 1-3 caracteres; suporta apenas uma extensão;• Linux: extensão pode conter mais de 3 caracteres;

• Linux suporte mais de uma extensão: Ex.: exemplo.c.Z (arquivo com compressão); • Linux também permite que arquivos sejam criados sem extensão;

• Uma extensão, geralmente, associa o arquivo a algum aplicativo:

.doc – Microsoft Word;

.c – Compilador C;

Page 11: Prof. João Paulo de Brito Gonçalves Sistema de Arquivos Campus - Cachoeiro Curso Técnico de Informática

11

Conceito de Caminho• Os arquivos do sistema podem ser localizados/visualizados de duas formas: através do seu caminho relativo ou de seu caminho absoluto.

• O caminho absoluto é o caminho completo, desde o diretório raiz até onde o usuário se encontra, e o caminho relativo é o caminho para qualquer diretório, mas a partir do diretório onde o usuário se encontra atualmente.

• Por exemplo, um usuário que se encontra dentro do diretório /home/aluno2 e quer acessar o arquivo teste dentro do diretório Documentos dentro do diretório aluno2, só precisaria digitar gedit Documentos/teste para abrir o arquivo, mas este comando só abriria o arquivo do ponto que ele se encontra no sistema, então é um caminho relativo. Já em qualquer ponto do sistema que o usuário digite gedit /home/aluno2/Documentos/teste, ele conseguirá abrir o arquivo, então é um caminho absoluto.

Page 12: Prof. João Paulo de Brito Gonçalves Sistema de Arquivos Campus - Cachoeiro Curso Técnico de Informática

Organização Básica do Sistema de Arquivos no LinuxOrganização Básica do Sistema de Arquivos no Linux

Page 13: Prof. João Paulo de Brito Gonçalves Sistema de Arquivos Campus - Cachoeiro Curso Técnico de Informática

Sistemas de Arquivos no LinuxSistemas de Arquivos no Linux• /bin: O diretório /bin contém aqueles comandos

essenciais a qualquer usuário, quando nenhum outro sistema de arquivos encontra-se montado.

• /sbin: Os utilitários essenciais usados na administração do sistema são disponibilizados em /sbin. Assim, nesse diretório devem estar os aplicativos essenciais à inicialização, restauração e reparação do sistema.

• /boot: Esse diretório deve conter todos os arquivos essenciais ao processo de boot, com exceção de arquivos de configuração. Opcionalmente, o kernel do sistema operacional deve ser colocado em /boot, estratégia mais adotada, ou no diretório raiz.

Page 14: Prof. João Paulo de Brito Gonçalves Sistema de Arquivos Campus - Cachoeiro Curso Técnico de Informática

Sistema de Arquivos no LinuxSistema de Arquivos no Linux• /dev: O diretório /dev/ contém os arquivos especiais

de dispositivos. A maioria dos dispositivos de hardware é mapeado em um arquivo nos sistemas UNIX.

• /lib: Esse diretório contém todas as bibliotecas dinâmicas utilizadas para inicializar o sistemas e executar as aplicações disponíveis em bin e sbin.

• /etc: É no diretório /etc/ que ficam os arquivos e diretórios utilizados para a configuração do sistema.

• /home: O diretório /home contém as pastas de trabalho dos usuários

Page 15: Prof. João Paulo de Brito Gonçalves Sistema de Arquivos Campus - Cachoeiro Curso Técnico de Informática

Sistema de Arquivos no LinuxSistema de Arquivos no Linux• /root: Esse é o diretório pessoal do usuário root. Se ele

não existir, o sistema irá assumir o diretório raiz / como sendo o diretório pessoal

• /media: Esse diretório é utilizado para montagem de mídia removível, como disquetes (geralmente montados em /media/floppy), CDROMs (geralmente montados em /media/cdrom) e pendrives (geralmente montados em /media/disk).

• /mnt: Diretório utilizado para montagem temporária de sistema de arquivos. Não deve ser utilizado para mídia removível.

Page 16: Prof. João Paulo de Brito Gonçalves Sistema de Arquivos Campus - Cachoeiro Curso Técnico de Informática

Sistema de Arquivos no LinuxSistema de Arquivos no Linux

• /tmp: Como o nome sugere, o diretório /tmp é disponibilizado para uso de arquivos temporários. Esses arquivos costumam ser apagados periodicamente, geralmente a cada dez dias.

• O diretório /var contém os dados variáveis do sistema, como cache de aplicações, arquivos de spool e informações de registros (logs).

Page 17: Prof. João Paulo de Brito Gonçalves Sistema de Arquivos Campus - Cachoeiro Curso Técnico de Informática

Tipos de Arquivos no LinuxTipos de Arquivos no Linux• Para visualizar o tipo de um arquivo, pode-se usar o

comando ls –l e observarmos sua cor e o primeiro caracter à extrema esquerda. Grande parte das distribuições dos sistemas UNIX-like define sete tipos de arquivos, os quais serão detalhados a seguir:

• Arquivos Regulares: são aqueles representados pela sua forma mais simples de concepção. Estão relacionados aos arquivos de dados dos usuários (formato textual ou binário), código executável, bibliotecas (dinâmicas ou não e compartilhadas ou não) e demais arquivos afins. A manipulação de tais arquivos pode ser realizada de forma seqüencial ou aleatória de acordo com a sua construção.

Page 18: Prof. João Paulo de Brito Gonçalves Sistema de Arquivos Campus - Cachoeiro Curso Técnico de Informática

Tipos de Arquivos no LinuxTipos de Arquivos no Linux

• Diretórios: representam a estrutura organizacional dos sistemas de arquivo. Assim como os arquivos regulares, os diretórios podem também ser mapeados como links simbólicos conforme será visto a seguir. Em UNIX, existem duas entradas especiais representadas por “.” e “..”. Tais entradas nunca poderão ser apagadas e representam o diretório corrente e o diretório anterior (diretório pai). Geralmente são representados no console pela cor azul-escuro.

Page 19: Prof. João Paulo de Brito Gonçalves Sistema de Arquivos Campus - Cachoeiro Curso Técnico de Informática

Tipos de Arquivos no LinuxTipos de Arquivos no Linux

• Arquivos de Dispositivos de Caracteres e de Blocos: os arquivos de dispositivos representam o elo de ligação entre o hardware (incluindo-se os periféricos) e os aplicativos e geralmente se localizam no diretório /dev. Sua grande vantagem reside no fato de que desta forma, o usuário não precisa se preocupar muito sobre a especificação dos dispositivos. Geralmente são representados no console pela cor amarela.

Page 20: Prof. João Paulo de Brito Gonçalves Sistema de Arquivos Campus - Cachoeiro Curso Técnico de Informática

Tipos de Arquivos no LinuxTipos de Arquivos no Linux

• Sockets: são mecanismos usados como forma de comunicação entre processos de rede.

• Pipes Identificados (FIFO): Os pipes identificados são utilizados para a comunicação entre dois processos dentro de um mesmo escopo computacional. São representados pela cor marrom.

• Links Simbólicos: Um link simbólico, ou soft link, faz referência a um arquivo ou diretório através do nome. Geralmente aparece representado através da cor azul clara.

Page 21: Prof. João Paulo de Brito Gonçalves Sistema de Arquivos Campus - Cachoeiro Curso Técnico de Informática

COMANDOS em LINUX• Um comando é um arquivo executável que executa

alguma função no Linux. Existem tanto comandos internos do terminal como comandos que são programas.

• Geralmente um comando é composto de opções e parâmetros da seguinte forma:

comando –[opções] <parâmetros>Sendo que <parâmetros> consiste em informações para a

execução do comando(como nomes de arquivos) e [opções] em geral, são parâmetros que aumentam o poder de um comando ou o tornam mais específico.

Page 22: Prof. João Paulo de Brito Gonçalves Sistema de Arquivos Campus - Cachoeiro Curso Técnico de Informática

COMANDOS em LINUX• Por exemplo, o comando ls sozinho é usado para

listar o conteúdo do diretório onde você se encontra no momento.

• Ao usar o comando ls com a opção –l, ls –l, são listados todos os conteúdos do diretório atual junto com seus atributos de arquivo.

• Ao usar o comando ls –l com o parâmetro /home, são listados todos os conteúdos do diretório /home, ou seja, ao invés de listar o conteúdo do diretório atual, é listado o conteúdo de um diretório específico, pois o parâmetro indica isso.

Page 23: Prof. João Paulo de Brito Gonçalves Sistema de Arquivos Campus - Cachoeiro Curso Técnico de Informática

COMANDOS PARA MANIPULAÇÃO DE ARQUIVOS E DIRETÓRIOS

Comandos de manipulação de arquivos são aquelesque podem interagir com o sistema de arquivos do

Linux. As operações de criação, remoção, renomeaçãoe cópia de arquivos e diretórios são um exemplo típico.

Comando TreeExibe a estrutura de diretórios a partir do diretório atual(caso não seja fornecido nenhum parâmetro) ou

do diretório passado na linha de comando.

Page 24: Prof. João Paulo de Brito Gonçalves Sistema de Arquivos Campus - Cachoeiro Curso Técnico de Informática

COMANDO CD• O comando cd possibilita acessar um determinado

diretório. Pode ser especificado um endereço absoluto (começando com /) ou relativo ao caminho atual; caso não seja passado nenhum valor, assume que é o diretório HOME (o diretório pessoal do usuário).

COMANDO PWD• O comando pwd imprime o caminho completo para

o diretório atual, ou seja, onde o usuário se encontra no sistema naquele momento.

Page 25: Prof. João Paulo de Brito Gonçalves Sistema de Arquivos Campus - Cachoeiro Curso Técnico de Informática

Comando lsO comando ls exibe informações sobre um arquivo ou um

diretório. Se não for especificado um caminho, lista o conteúdo do diretório atual.

Comando mvO comando mv é usado para mover arquivos de um local para

outro, ou simplesmente renomeá-los.

Comando FILERetorna o tipo do arquivo, após a realização dos testes

apropriados.

Page 26: Prof. João Paulo de Brito Gonçalves Sistema de Arquivos Campus - Cachoeiro Curso Técnico de Informática

Comando rmdirO rmdir remove um ou mais diretórios, desde que os

mesmos estejam completamente vazios.

Comando rmO comando rm pode ser usado para remover arquivos e diretórios. De forma diferente do rmdir, pode-se excluir diretórios não-vazios, especificando-se parâmetros na linha de comando. Para isso, são usados os parâmetros -f e -r combinados (remoção recursiva e sem questionar o usuário) e -v (para listar tudo que está sendo feito). Use tais opções com extrema cautela, pois os arquivos apagados dessa forma não poderão ser recuperados com facilidade (e na maioria das vezes, o esforço exigido não irá compensar a tarefa).

Page 27: Prof. João Paulo de Brito Gonçalves Sistema de Arquivos Campus - Cachoeiro Curso Técnico de Informática

Comando lnO comando ln pode ser usado para criar links (atalhos) para arquivos. Um link pode ser visto como um novo nome ou um atalho para um arquivo existente. Ao contrário de outros sistemas operacionais, ao editar-se um link, o conteúdo do arquivo original é alterado.

symbolic link: um symbolic link ou link simbólico é um arquivo que aponta para o arquivo original, funcionando como um atalho para ele. Ele pode ser direcionado para diretórios ou arquivos em outras partições. Como ele é apenas um atalho, se for apagado não irá apagar o arquivo original. Para criar um link simbólico, usamos o parâmetro –s.Exemplo: ln -s /etc/services portas

Page 28: Prof. João Paulo de Brito Gonçalves Sistema de Arquivos Campus - Cachoeiro Curso Técnico de Informática

Comando CPO comando cp é usado para copiar arquivos e diretórios. Sua sintaxe é simples, bastando identificar o(s) arquivo(s) de origem e o destino onde será feita a cópia. Quando se especifica mais que um arquivo na origem, obrigatoriamente, o destino deve ser um diretório. Algumas observações:-Copiar um arquivo para outro diretório onde já existe outro arquivo com mesmo nome: o arquivo será sobrescrito.- Copiar um arquivo para outro diretório que, por sua vez, possui um diretório com mesmo nome do arquivo a ser copiado: não é permitido.- Copiar um arquivo, especificando como arquivo_destino outro nome: o arquivo será renomeado durante a cópia.

Page 29: Prof. João Paulo de Brito Gonçalves Sistema de Arquivos Campus - Cachoeiro Curso Técnico de Informática

Comandos no Linux• Mkdir – comando cria um diretório vazio, ou seja, sem

referência a arquivos.• Mount – permite associar um sistema de arquivos a

um diretório específico, que será seu ponto de montagem, permitindo o acesso a seus arquivos através deste diretório.

• Umount – O comando umount é utilizado para desmontar sistemas de arquivos que tenham sido montados com o comando mount. Um sistema de arquivos somente pode ser desmontado se não estiver “ocupado”, ou seja, se o diretório atual não estiver dentro do diretório onde foi montado o sistema de arquivos, e se este não possuir diretórios abertos.

Page 30: Prof. João Paulo de Brito Gonçalves Sistema de Arquivos Campus - Cachoeiro Curso Técnico de Informática

Comandos para manipulação de arquivos e diretórios no Windows

• Assoc• Cd • Dir• Erase/del• Md/mkdir• Rd/Rmdir• Ren/rename• Tree• Type• Move• Copy