Sistemas de arquivos especiais Sistema de arquivos do kernel (procfs)



Baixar 252,25 Kb.
Encontro18.05.2017
Tamanho252,25 Kb.

Sistemas de arquivos especiais
Sistema de arquivos do kernel (procfs)

É um sistema de arquivos especial que apresenta informações sobre os processos, dispositivos, parâmetros de configuração do sistema operacional. A forma de apresentação é similar aos sistemas de arquivos comuns, sendo de fácil navegação e interação. Este sistema é montado em /proc no boot do sistema e não armazena as modificações de forma permanente. Um exemplo de uso é a habilitação de roteamento no sistema, que é feita modificando para o valor 1 o seguinte parâmetro:

echo 1 > /proc/sys/net/ipv4/ip_forward

Outra forma de configurar estes parâmetros é por meio do arquivo /etc/sysctl.conf e o comando sysctl. Este arquivo é lido na inicialização do sistema e as modificações são aplicadas. Outra forma de aplicar as modificações em tempo de execução é por meio da edição do arquivo /etc/sysctl.conf e a execução do comando sysctl com a seguinte sintaxe:

sysctl -p /etc/sysctl.conf

Para saber os valores dos parâmetros configuráveis do sistema operacional, pode-se utilizar o comando sysctl -a

Para cada processo existe uma estrutura de diretórios com informações. Por exemplo, para o processo de PID 10690, pode-se:
Saber o estado do processo:

more /proc/10690/status
Saber a linha de comando utilizada na carga da aplicação:

more /proc/10690/cmdline
Copiar a imagem do executável em memória para disco em /tmp:

cp /proc/10690/exe /tmp
Pseudo Sistema de arquivos (Pseudo File System)

No Linux, é possível a criação de um arquivo que se comporte como um sistema de arquivo completo. Este procedimento é similar ao que é feito em discos rígidos de ferramentas de virtualização tais como VmWare e VirtualBox. Para obter este tipo de sistema de arquivos deve-se usar o parâmetro -o loop no comando mount. O interessante é que este pseudo sistema de arquivos pode ser copiado para qualquer outro sistema operacional, mantendo toda a estrutura de diretórios. Um exemplo de criação de um pseudo sistema de arquivo:

Para criar um arquivo vazio de 160MB (4096x40000) em /mount, com o nome de meusistema:

dd if=/dev/zero of=/mount/meusistema bs=4096 count=40000
Para criar o sistema de arquivos do tipo FAT32:

mkfs.vfat /mount/meusistema
Para montar em /mount/pendrive:

mount -t vfat -o loop /mount/meusistema /mount/pendrive
Outro exemplo interessante é a montagem de arquivos .ISO para ver o conteúdo. Um exemplo de comando seria este:

mount -t iso9660 -o loop /tmp/arquivo.iso /mount/arqcd
O comando mount possui uma opção chamada remount para remontar uma partição com parâmetros. Um exemplo seria a remontagem de uma partição para somente leitura, com o objetivo de realizar algum backup sem problemas de inconsistências. A sintaxe do comando é a seguinte;

mount -o remount,ro /mount/meusistema /mount/lixo

(Remonta o sistema de arquivos /mount/meusistema somente com leitura)
mount -o remount,rw /mount/meusistema /mount/lixo

(Remonta o sistema de arquivos /mount/meusistema com leitura e escrita)
Sistemas de arquivos em CD/DVD (isofs)

Para criar um sistema de arquivos que seja compatível com o padrão ISO9660, deve utilizar o comando mkisofs (deve ser instalado no CentOS com o comando yum install mkisofs). O uso é o seguinte:

mkisofs -o /tmp/cd.iso /meucd/

(Monta um arquivo cd.iso contendo a estrutura de diretórios que estão dentro do diretório meucd)

Para gerar um arquivo .ISO de um cd já existente pode-se utilizar o comando dd da seguinte forma:

dd if=/dev/cdrom of=/tmp/meucdrom.iso

(Cria um arquivo de nome meucdrom.iso contendo toda a estrutura de arquivos e diretórios do cd inserido no drive)
Área de Swap

A área de swap pode ser definida na instalação do sistema ou pode ser adicionada posteriormente. Esta área pode ser uma partição ou um arquivo, ambas tem a mesma funcionalidade. Para criar uma área de swap deve-se usar o comando mkswap. Para usar uma partição como swap, aplica-se o comando passando como parâmetro a identificação da partição.

Por exemplo, para criar a partição de swap no dispositivo /dev/sda6, a sintaxe do comando seria esta: mkswap /dev/sda6. Para usar um arquivo como área de swap, deve-se criar o arquivo usando o comando dd e após usar a mesma sintaxe anterior. Por exemplo, o arquivo /var/swap.file foi criado para ser utilizado como swap. Para criar a definir o sistema de arquivos usa-se o comando

mkswap /var/swap.file.

Para ativar as áreas de swap criadas, deve-se utilizar o comando swapon. Um exemplo de uso para o arquivo /var/swap.file seria swapon /var/swap.file. Para ativar na inicialização do sistema, deve-se editar o arquivo /etc/fstab. Conforme o exemplo anterior, a entrada no arquivo /etc/fstab seria a seguinte:

/var/swap.file swap swap defaults 0 0
Sistemas de arquivos em memória

Pode ser necessário por motivos de desempenho, que se use a memória |RAM como um sistema de arquivos. Este conceito chama-se RAM DISK e pode ser bastante útil em casos onde a quantidade de dados a serem acessados não é muito grande, não é necessária o armazenamento persistente e existe grande demanda por acessos simultâneos, tal como o cache de alguma aplicação. Deve-se ter muito cuidado com o tamanho desta partição porque o uso da mesma corresponderá ao uso de memória RAM. Um exemplo de uso:

mount -t tmpfs -o size=500M,mode=0755 tmpfs /mount/ramdisk

(Cria um sistema de arquivos temporário com 500MB de tamanho e o disponibiliza em

/mount/ramdisk)
Recuperação de arquivos apagados

A recuperação de arquivos em sistemas EXT3 é bastante complicado. Não existe uma ferramenta que faça esta recuperação automaticamente, mas existem ferramentas que podem ajudar bastante no procedimento. A ferramenta Photorec (http://www.cgsecurity.org/wiki/PhotoRec) possibilita a procura de arquivos apagados por tipo, .jpg, .png, .txt, na partição inteira.

Nas figuras 1 e 2, exemplos das telas do utilitário Photorec. Para executar o utilitário, basta digitar photorec no shell.





Tarefas:


  1. Instalar e utilizar a ferramenta PhotoRec.

1. Testar a ferramenta apagando arquivos e tentado recuperá-los.


  1. Criar uma área de ram disk do tamanho da memória RAM alocada para a máquina virtual. Realizar os seguintes procedimentos na área criada:

1. Criar um arquivo de 20MB na área de RAM disk e analisar o tempo gasto no procedimento. Para verificar o tempo, utilizar o comando time, de acordo com o exemplo a seguir:

time dd if=/dev/zero of=/tmp/lixo bs=4096 count=5000

2. Criar um arquivo de 20MB na área normal do sistema de arquivos e analisar o tempo gasto no procedimento. Comparar o tempo gasto com o da atividade anterior.



3. Criar um arquivo de 100MB dentro da RAM disk. Verificar a ocupação de memória RAM do sistema.

4. Criar um arquivo do tamanho da área da RAM disk. Verificar a ocupação de memória RAM do sistema.



©livred.info 2017
enviar mensagem

    Página principal