RECUPERAÇÃO DE DADOS EM DISCO RÍGIDO EXTERNO UTILIZANDO SOFTWARE LIVRE

Tamanho: px
Começar a partir da página:

Download "RECUPERAÇÃO DE DADOS EM DISCO RÍGIDO EXTERNO UTILIZANDO SOFTWARE LIVRE"

Transcrição

1 FACULDADES INTEGRADAS PROMOVE DE BRASÍLIA CURSO DE TECNOLOGIA EM SEGURANÇA DA INFORMAÇÃO TRABALHO DE CONCLUSÃO DE CURSO RECUPERAÇÃO DE DADOS EM DISCO RÍGIDO EXTERNO UTILIZANDO SOFTWARE LIVRE ANTONIO GERARDO PEREIRA FÁBIO LUIZ DA SILVA ARAÚJO BRASÍLIA 2013

2 ANTONIO GERARDO PEREIRA FÁBIO LUIZ DA SILVA ARAÚJO RECUPERAÇÃO DE DADOS EM DISCO RÍGIDO EXTERNO UTILIZANDO SOFTWARE LIVRE Trabalho de conclusão de curso apresentado às Faculdades Integradas Promove de Brasília como requisito parcial para obtenção do título de Tecnólogo em Segurança da Informação no Curso de Segurança da Informação. Prof. MSc. Paulo Hansen BRASÍLIA 2013

3 RECUPERAÇÃO DE DADOS EM DISCO RÍGIDO EXTERNO UTILIZANDO SOFTWARE LIVRE Trabalho de conclusão de curso apresentado às Faculdades Integradas Promove de Brasília como requisito parcial para obtenção do título de Tecnólogo em Segurança da Informação. Aprovado em: de de. BANCA EXAMINADORA Orientador (a) Profº. MsC. Paulo Hansen Faculdades Integradas Promove de Brasília Avaliador (a) Profº. Dr. Joacil Basílio Rael Faculdades Integradas Promove de Brasília Avaliador (a) Profº. Esp. Fernando Alves Dias Faculdades Integradas Promove de Brasília BRASÍLIA 2013

4 DEDICATÓRIA Dedicamos este trabalho às pessoas importantes das nossas vidas, que nos apoiam e entendem a importância e o significado do crescimento do intelecto humano, aos professores desta instituição que de alguma forma nos fizeram crescer com seus ensinamentos, questionamentos e indagações.

5 AGRADECIMENTOS Ao Deus, criador dos céus e terra, sempre presente em todos os momentos, inclusive, nos intransponíveis, nos fazendo avançar. Aos professores Dirceu Silva da Silva Junior, Drº. Joacil Basilio Rael e Valdir Silva dos Santos que muito contribuíram com seus valorosos conhecimentos; Ao Pr. Armando Moura que nos fez trilhar os primeiros passos; E, por fim, agradecemos ao nosso orientador Profº. MsC. Paulo Hansen que soube nos conduzir durante o desenvolvimento deste trabalho.

6 EPÍGRAFE O que realmente perseguimos é simplesmente que as pessoas adquiram uma licença legal para Windows para cada computador que elas possuam antes que elas se mudem para o Linux ou o Sun Solaris ou o BSD ou o OS/2 ou qualquer coisa. Bill Gates

7 RESUMO A segurança da informação envolve não somente o ativo que se faz uso diariamente, mas também aquele que é descartado no dia a dia. A confidencialidade, integridade e a disponibilidade incidem diretamente sobre a exclusão de dados. Como excluir dados seguramente? A recuperação de dados excluídos é possível? É possível recuperar dados de discos rígido formatado? E quando se deleta arquivos do disco rígido, formata, reparticiona, renomeia partições esses fatores impedem a recuperação? Quais cenários permitem essa realização? Quais são os fatores que impedem ou dificultam a recuperação de arquivos excluídos? Plataforma software livre, partições ext4, Foremost, Photorec, Gparted, Fdisk, extensões de arquivos como: exe, jpg; terminal Linux, Backtrack, ls, sistemas de arquivos, sistemas operacionais, processos, system calls. Estes são termos que são, diretamente ou indiretamente, abordados nesse trabalho para a recuperação de tais dados. Em uma análise mais generalizada, a ferramenta Photorec obteve resultados muito satisfatórios na recuperação de arquivos com extensão mp3, contrariamente a isso, o Foremost obteve maiores resultados na recuperação do tipo jpg. De acordo com o que se pretenda recuperar, tanto o Foremost como o Photorec serão ferramentas imprescindíveis na recuperação de arquivos, pois recuperam não somente arquivos mp3 ou jpg, mas também, arquivos de extensões txt, htm, html, doc, ppt e outros. dados, ext4. Palavras chaves: Photorec, Foremost, Linux, Gparted, recuperação de

8 ABSTRACT Information security involves not only the assets that makes use daily, but also one that is discarded on a daily basis. Confidentiality, integrity and availability directly affect deleting data. How to delete data securely? Data recovery is excluded is possible? You can recover data from formatted hard drives? And when you delete files from hard drive, format, repartition, rename partitions these factors hinder recovery? Scenarios which allow this realization? What are the factors that prevent or hinder the recovery of deleted files? Platform software free, ext4 partitions, Foremost, Photorec, Gparted, fdisk, file extensions such as exe, jpg, Linux terminal, Backtrack, ls, file systems, operating systems, processes, system calls. These are terms that are directly or indirectly addressed in this work for the recovery of such data. In a more generalized tool Photorec obtained very satisfactory results in the recovery of files with mp3, contrary to this, the Foremost obtained higher results in the recovery of type jpg. According to what we want to recover as much as the Foremost Photorec will indispensable tools in recovering files, because not only recover jpg or mp3 files but also files extensions txt, htm, html, doc, ppt and others. Keywords: Photorec, Foremost, Linux, Gparted, data recovery, ext4.

9 LISTA DE GRÁFICOS Gráfico 1 - Análise de recuperação de arquivos LISTA DE ILUSTRAÇÕES Figura 1 - Organização de arquivos Figura 2 - Implementação das camadas de gerência de arquivos Figura 3 - Alocação indexada em níveis Figura 4 - GParted partições / sistema de arquivos Figura 5 - Utilização do fdisk -l para a visualização Figura 6 - Shell bash do Backtrack Figura 7 - Apresentado o uso do comando cd /pentest/forensics/testdisk Figura 8 - Photorec sendo executado, solicitando a escolha da mídia Figura 9 - Photorec exibe as partições do disco /dev/sdb Figura 10 - Photorec, partição ext3 sendo selecionada Figura 11 - Photorec solicita a escolha do sistema de arquivos Figura 12 - Photorec, recuperar do espaço livre da partição ou de toda partição Figura 13 - Photorec, destino dos arquivos Figura 14 - Photorec, pronto para iniciar o processo de recuperação Figura 15 - Photorec sendo executado Figura 16 - Photorec, recuperação completada Figura 17 - Nautilus, arquivos recuperados Figura 18 - Nautilus, visualização em detalhes Figura 19 - Xine, execução do arquivo recuperado Figura 20 - Nautilus exibe o maior arquivo mp3 recuperado Figura 21 - Audacious, execução do arquivo mp3 recuperado Figura 22 - Disk gerenciador de partições Figura 23 - Gparted editor de partição Figura 24 - dcfldd criador de imagens forense Figura 25 - Concluindo o processo de criação da imagem forense Figura 26 - dcfldd imagem forense (sdb6.dd) e hash (sdb6.md5) Figura 27 - gedit hash da imagem forense (sdb6.dd)... 62

10 Figura 28 - cd acessando o diretório da imagem de sdb6.dd Figura 29 - Foremost recuperando arquivos da imagem (sdb6.dd) Figura 30 - Listagem do diretório criado pelo Foremost Figura 31 - Nautilus pasta uotput_mon... criada pelo foremost Figura 32 - Nautilus pastas recuperadas da imagem sdb6.dd Figura 33 - Gedit Arquivo Audit File (Arquivo Auditor) Figura 34 - Visualização dos arquivos recuperados da imagem sdb6.dd Figura 35 - Nautilus Visualização dos arquivos recuperados Figura 36 - Eye Visualização de uma jpg recuperada Figura 37 - Arquivos inseridos na pasta Figura 38 - Arquivos deletados da pasta Figura 39 - Gparted, formatação da partição "TWO" Figura 40 Gparted aplicando e finalizando a formatação da partição TWO Figura 41 - Pasta "ext4, antes da recuperação dos arquivos Figura 42 - Diretório ext4, após a recuperação dos arquivos Figura 43 - Visualização dos arquivos recuperados Figura 44 - Arquivos excluídos que foram recuperados LISTA DE QUADROS Quadro 1 - Detalhes de atributos Quadro 2 - Tipos de extensões de arquivos Quadro 3 - Data e hora do início da Recuperação Quadro 4 - Ferramenta utilizada Quadro 5 - Particionamento do Disco Quadro 6 - Configuração do notebook utilizado Quadro 7 - Data e hora do início da recuperação Quadro 8 - Ferramenta utilizada Quadro 9 - Particionamento do disco Quadro 10 - Configuração do notebook utilizado Quadro 11 - Recuperação de arquivos do disco rígido Quadro 12 - Recuperação de dados em disco rígido formatado Quadro 13 - Recuperando arquivos em disco rígido formatado e reparticionado Quadro 14 - Cenário utilizado... 76

11 LISTA DE TABELAS Tabela 1 - Quantificação dos arquivos recuperados Tabela 2 - Quantificação dos arquivos recuperados Tabela 4 - Particionamento do disco rígido externo... 59

12 SUMÁRIO CAPÍTULO I Introdução Objetivos Geral Específicos Justificativa Metodologia CAPÍTULO II - REFERENCIAL TEÓRICO Segurança da Informação Conceitos básicos de segurança da informação Informação Dado Ativo Ameaça Risco Vulnerabilidade A tríade da segurança da informação, CID Integridade Disponibilidade Confidencialidade Sistema Operacional Processos System call A evolução do sistema operacional O UNIX O Linux O GNU/Linux, sua popularidade Gerência de arquivo Arquivo Atributos Operações Organização de arquivos Partições Diretórios Sistema de arquivos Dispositivo e controlador Drivers Gerência de blocos Alocação de arquivos Alocação indexada Sistema de Arquivos Estendido (Ext) CAPÍTULO III Estudo de Caso Feramenta Photorec... 39

13 3.1.2 Ferramenta Foremost CAPÍTULO IV Funcionamento das ferramentas: Photorec e Foremost Photorec Foremost Exclusão, formatação de partição e recuperação dos arquivos Perguntas e respostas CONCLUSÃO REFERÊNCIAS GLOSSÁRIO... 81

14 12 CAPÍTULO I 1.1 INTRODUÇÃO Um sistema operacional a todo o momento recupera dados e isto é um procedimento padrão que ele faz. Dessa forma, a recuperação de dados em sistemas operacionais pode ser dividida em duas vertentes: recuperação típica do sistema operacional e a recuperação de dados excluídos. Para o segundo tipo de recuperação, muitas vezes sua realização não se dá pelos meios tradicionais de restauração do sistema operacional, em seus processos típicos, é preciso realizar procedimentos específicos por meio de técnicas e ferramentas que visam este fim. A recuperação de dados excluídos vem de encontro algumas questões fundamentais: após algum evento que afete informações e estas sejam destruídas é possível restaurá-las? Quais os fatores que contribuem ou impossibilitam que estas informações sejam recuperadas? Toda a complexidade que está inserida no contexto de gerência de informações computacionais e a segurança no armazenamento destas, mesmo com muitos meios que visam impedir a perda de dados não é possível garantir sempre a integridade, disponibilidade e confidencialidade destes dados. O objetivo deste trabalho é trazer meios que esclareça os problemas de perda de dados; e também discutir sobre conceitos que se relacionam aos meios para se recuperar informações em discos rígidos apresentando sua importância e como se dá o funcionamento lógico deste dispositivo, bem como fornecer maneiras de restauração de dados excluídos por meio de ferramentas livres. Dessa forma, este trabalho no primeiro momento trará os conceitos sobre segurança da informação, em seguida, um embasamento geral sobre sistemas operacionais, enfatizando sobre sistemas operacionais livres e como este sistema se relaciona com a manipulação de informações digitais.

15 OBJETIVOS Geral Contrastar ferramentas de recuperação de dados em ambiente software livre, demonstrando a utilização e as principais funcionalidades que essas ferramentas tornam possível a recuperação de dados, assim como, refletir sobre a impossibilidade de sua recuperação Específicos Os objetivos específicos são: Demonstrar a recuperação de dados de disco rígido externo, utilizando software livre; Compreender as possibilidades de recuperação desses dados; Conhecer os motivos da impossibilidade da recuperação de dados em disco rígido externo; e Observar a incidência da segurança da informação na recuperação de dados. 1.3 JUSTIFICATIVA A ampla utilização de computadores nos diversos segmentos da sociedade é uma realidade, o que contribui para que muitas informações estejam na forma digital. As corporações e as pessoas são cada vez mais dependentes destas informações em meio digital e a grande quantidade de dados armazenados nos dispositivos computacionais, apesar do aparente nível de eficiência na preservação dos dados, não garante totalmente que as informações permaneçam acessíveis. Dentre os vários dispositivos de armazenamento, os discos rígidos são amplamente utilizados como meio para armazenar dados. Principalmente por proporcionar alta capacidade de armazenamento a baixo custo, tornando-se assim, um meio de armazenamento acessível e viável para abarcar grandes volumes de dados tanto em empresas quanto para uso cotidiano das pessoas. Contudo, a perda

16 14 de informação em discos rígidos é uma realidade e suas causas estão relacionadas a diversos fatores. Neste sentido, soluções e técnicas de recuperação de dados são fundamentais para minimizar a perda de dados e possibilitar sua posterior restauração. Dessa forma, discutindo sobre as formas e conceitos, tendo como ponto de vista sistemas livres, sobre a gerência de arquivos em computadores pretende-se verificar a possibilidade da recuperação de dados excluídos em discos rígidos bem como os fatores que não o permitem. 1.4 METODOLOGIA Para a realização deste trabalho foram feitos testes em disco rígido externo. Inicialmente, por meio de um cabo (adaptador-usb), conectou-se um disco rígido a um notebook. Assim, optou-se em realizar a recuperação de dados com aplicativos livres por já termos trabalhos sobre recuperação de dados em software proprietário. A recuperação de dados em ambiente de software livre envolveu o uso do sistema operacional Backtrack 5, assim como ferramentas específicas: Photorec e o Foremost. A utilização da ferramenta Foremost exigiu a criação de uma imagem com o comando dcfldd no terminal Linux do Backtrack 5, na criação dessa imagem, descobriu-se que é possível, inclusive, criá-la com hash, para verificações posteriores em relação a sua integridade, não sendo este o nosso objetivo. Dessa forma, o Foremost utiliza-se desta imagem gerada pelo dcfldd para recuperar arquivos. Utilizou-se também o Photorec para tais recuperações sendo utilizado o Gparted para deletar as partições anteriormente existentes no disco rígido inserido na USB do notebook. Após ter sido deletadas as partições existentes, novas partições foram criadas, formatadas e renomeadas. Foram criadas cinco partições, dentre elas a ext4, objetivo desse trabalho. Essa partição teve seu tamanho definido em MB. Com esse tamanho de partição, a recuperação de dados torna-se bastante rápida pois o tempo de leitura e recuperação dos dados será baixo, devido ao seu tamanho.

17 15 A ferramenta Photorec foi utilizada nos testes realizados, seu método e maneira de recuperar dados é peculiar. A utilização do Photorec exigiu simplesmente a definição da origem dos dados a serem recuperados e o destino em que deveriam ser salvos. Ou seja, a escolha do disco e partição a ter dados recuperados e local no disco rígido, que pode ser um disco interno, que terá uma pasta com os arquivos recuperados. Essas ferramentas estão disponíveis na maioria das distribuições Linux, quando não, sua aquisição envolve a utilização do terminal Linux para baixá-las. Nessa primeira fase mostrou-se possível e viável a recuperação de dados em disco rígido externo conectado à porta USB de um notebook. Como embasamento teórico e técnico, foram consultados a literatura disponível e professores renomados, assim como outros trabalhos, com isso, foi possível abordar de forma sucinta tal assunto. Também foram abordados temas como: segurança da informação, sistemas operacionais e sua evolução no âmbito de software livre; além de termos de caráter mais técnico, como: atributo, operações e organizações de arquivos. Com isso, realizou-se a documentação e a realização prática do uso de ferramentas para recuperação de dados. CAPÍTULO II - Referencial Teórico 2.1 Segurança da Informação A proteção do ativo seja ele corporativo, governamental ou até mesmo pessoal é de suma importância, uma vez que sua indisponibilidade faz crescer exponencialmente prejuízos incalculáveis do ponto de vista de valor econômico, social e até mesmo emocional. A norma (NBR-ISO-IEC 17799/2005) conceitua segurança da informação como sendo: [ ] a proteção da informação de vários tipos de ameaças

18 16 para garantir a continuidade do negócio, minimizar o risco ao negócio, maximizar o retorno sobre os investimentos e as oportunidades de negócio. E a norma (NBR-ISO-IEC 17799/2005) esclarece como a segurança da informação é obtida: [ ] é obtida a partir da implementação de um conjunto de controles adequados, incluindo políticas, processos, procedimentos, estruturas organizacionais e funções de software e hardware. Estes controles precisam ser estabelecidos, implementados, monitorados, analisados criticamente e melhorados, onde necessário, para garantir que os objetivos do negócio e de segurança da organização sejam atendidos. Isto pode ser feito em conjunto com outros processos de gestão do negócio Conceitos básicos de segurança da informação Informação Alguns conceitos fazem parte dessa abordagem. De acordo com a norma (NBR-ISO-IEC 17799/05) informação é: [ ] um ativo que, como qualquer outro ativo importante para os negócios, é essencial para os negócio de uma organização e consequentemente necessita ser adequadamente protegida. Isto é especialmente importante no ambiente dos negócios, cada vez mais interconectado. A norma (NBR-ISO-IEC 17799/2005) recomenda proteção adequada a informação, assim como esclarece as várias formas de existência da informação: A informação pode existir em diversas formas. Ela pode ser impressa ou escrita em papel, armazenada eletronicamente, transmitida pelo correio ou por meios eletrônicos, apresentada em filmes ou falada em conversas. Seja qual for a forma apresentada ou o meio através do qual a informação é compartilhada ou armazenada, é recomendado que ela seja sempre protegida adequadamente.

19 Dado Araújo; Silva Junior; Santos (2011, p. 17) descrevem como um dado é visto no contexto da informação: Um dado é visto como a menor parte de uma informação. Ele por si só não representa uma informação concisa. Para serem significativos, os dados devem ser representados por símbolos compreensíveis, devendo ser completos e expressar ideias com mais de um significado Ativo O Ativo segundo a norma (NBR-ISO-IEC 17799/2005) é Qualquer coisa que tenha valor para a organização. [ISO/IEC :2004]. Computadores, softwares, móveis, informações, ou seja os dados, tudo o que tiver valor será o ativo da organização Ameaça Para a norma (NBR-ISO-IEC 17799/2005) o conceito de ameaça é uma Causa potencial de um incidente indesejado, que pode resultar em dano para um sistema ou organização. [ISO/IEC :2004]. Todo incidente não desejado que de alguma forma possa atingir o ativo organizacional é considerado uma ameaça Risco De acordo com a norma (NBR-ISO-IEC 17799/2005) risco é a Combinação da probabilidade de um evento e sua consequência. [ISO Guide 73:2002].

20 Vulnerabilidade De acordo com a norma (NBR-ISO-IEC 17799/2005) vulnerabilidade é uma Fragilidade de um ativo ou grupo de ativos que pode ser explorada por uma ameaça. Uma vulnerabilidade pode ser um bug em um sistema que a empresa utilize e por meio da vulnerabilidade existente uma ameaça ao sistema pode ser concretizada A tríade da segurança da informação, CID A tríade da segurança da informação é a base para a proteção dos ativos de uma organização. Sua correta aplicação assegura confidencialidade, integridade e disponibilidade do ativo Integridade A integridade é a garantia da exatidão e completeza da informação e dos métodos de processamento NBR ISO/IEC (2005 apud DANTAS, 2011, p. 11) Garantir a integridade é permitir que a informação não seja modificada, alterada ou destruída sem autorização, que ela seja legítima e permaneça consistente. Ocorre a quebra da integridade quando a informação é corrompida, falsificada, roubada ou destruída. Garantir a integridade é manter a informação na sua condição original Disponibilidade A disponibilidade é a garantia de que os usuários autorizados obtenham acesso à informação e aos ativos correspondentes sempre que necessário NBR ISO/IEC (2005 apud DANTAS, 2011, p. 11)

21 19 Ocorre a quebra da disponibilidade quando a informação não está disponível para ser utilizada, ou seja, ao alcance de seus usuários e destinatários, não podendo ser acessada no momento em que for necessário utilizá-la. Garantir a disponibilidade é assegurar o êxito da leitura, do trânsito e do armazenamento da informação Confidencialidade A confidencialidade é a garantia de que a informação é acessível somente por pessoas autorizadas a terem acesso NBR ISO/IEC (2005 apud DANTAS, 2011, p. 11) Ocorre a quebra da confidencialidade da informação ao se permitir que pessoas não autorizadas tenham acesso ao seu conteúdo. A perda da confidencialidade é a perda do segredo da informação. Garantir a confidencialidade é assegurar o valor da informação e evitar a divulgação indevida. 2.2 Sistema Operacional O conceito de sistema segundo (WEISZFLOG, 1998, p. 1953) em sua abordagem científica é o: [ ] conjunto de rotinas do sistema que interfaceiam entre as instruções do programa de alto nível e os periféricos do sistema para controlar a entrada e saída para vários dispositivos padrões, o que normalmente inclui controlar vídeo, teclado e unidade de disco Todo esse conjunto de rotinas é essencial, senão importante; por sua vez faz tornar real e possível a interação homem máquina, que sem elas o controle de dispositivos do sistema seria demasiadamente de dificuldade elevada para o usuário. Weiszflog (1998, p. 1497) define operacional como sendo Relativo a uma operação ou procedimento, já para Houaiss; Villar; Franco (2001, p. 2069) é algo que contribui para a obtenção de um resultado pretendido.

22 20 Então, sistema está relacionado ao interfaceamento das rotinas com o hardware, fazendo com que este execute ações pré-estabelecidas; já, operacional são procedimentos para a obtenção dos resultados esperados. O sistema operacional tem a função de gerenciar toda e qualquer informação executada pelo processador de um hardware qualquer. Ele é carregado na memória do hardware após o processo de boot ou inicialização do sistema. Halcombe (2003, p. 12) define sistema operacional como sendo: [ ] o programa (ou grupo de programas) que age como o programa de controle central do computador. Sendo assim, ele é carregado (ou pode-se dizer que o boot é feito) quando o computador é ligado. Seu componente principal (o Kernel) permanece na memória enquanto o computador estiver funcionando. O sistema operacional será como um intermediário entre os aplicativos e o hardware. Teclados, mouses, impressoras, gravação de dados em disco, assim como leituras dos dados, todo esse hardware é gerenciado única e exclusivamente pelo sistema operacional. Para Côrtes (2005, p. 35): [ ] o sistema operacional organiza o acesso básico dos programas às funções básicas do computador, tais como: leitura e gravação em disco, interpretação das informações enviadas pelo teclado ou mouse, transmissão de dados para uma impressora ou por meio de uma rede local, por exemplo. Dessa forma o sistema operacional torna mais fácil tanto o desenvolvimento quanto a execução dos programas. O sistema operacional é primordial para um sistema computacional, ou seja, o conjunto hardware software. O sistema operacional permite gerenciar dispositivos, tarefas, serviços, arquivos, memória e principalmente a segurança. O gerenciamento de tarefas é feito por sistemas que são multitarefas, esta é uma função que permite a execução simultânea de duas ou mais tarefas no hardware, obviamente, isso depende da capacidade do processador em executar

23 21 tais tarefas simultaneamente, abrir um aplicativo enquanto se executa um áudio e digita um texto, são exemplos de multitarefas. O gerenciamento de serviços é o controle feito pelo sistema operacional quanto a ordem e o tempo de execução das aplicações em momento específico no uso do processador ou memória disponíveis. Holcombe (2003, p. 14) cita dois exemplos claros que podem ser utilizados para ilustrar o gerenciamento de serviços feito pelo sistema operacional, são eles. [ ] tarefas que determinam o dia e a hora em que outros programas ou arquivos em lotes serão executados, e um programa de impressão que gerência e prioriza vários serviços de impressão. O gerenciamento de memórias segundo Holcombe (2003, p. 14) é: [ ] uma função do sistema operacional que administra a alocação de programas e dados na memória, mantendo registro do local no qual foram postos. [ ] A memória virtual permite que mais códigos e dados estejam ativos do que seria permitido somente pela memória física. Usando um componente do sistema operacional destinado ao gerenciamento de memória virtual, tal sistema operacional move dados e códigos, conforme necessário, para uma parte do disco que tenha sido definida como a memória virtual. Essa funcionalidade é bastante interessante, pois, permite que o sistema operacional armazene na memória virtual aplicações ou tarefas que são consideradas menos importantes para o sistema naquele momento. Outra funcionalidade importante do sistema operacional é o gerenciamento da segurança, isso é feito por meio de autenticação de senha e criação de contas de usuários, essas contas permitem configurar níveis de privilégios no uso do sistema operacional.

24 Processos Segundo Machado e Maia (2002, p. 65) Um processo pode ser entendido inicialmente como um programa em execução, só que seu conceito é mais abrangente. Um processo também pode ser entendido como uma atividade em execução ou não de um programa qualquer, essa atividade recebe do processador fatias de tempo para sua execução. Os processos concorrem entre si na utilização dos recursos disponibilizados, sedo que o gerenciamento e alocação desses processos para execução é feita pelo sistema operacional. Para Tanenbaum (2003, p. 54), A ideia principal é que um processo constitui uma atividade. Ele possui programa, entrada, saída e um estado. Um único processador pode ser compartilhado entre os vários processos, com algum algoritmo de escalonamento usado para determinar quando parar o trabalho sobre um processo e servir um outro. O algoritmo de escalonamento tem a finalidade de decidir qual processo concorrente será executado pela a CPU. Em sistemas multiprogramáveis este é um fator relevante, pois um bom algoritmo de escalonamento permitirá um bom desempenho de recursos de processamento da CPU. Apesar da maior complexidade em desenvolver softwares que utilizem programação multithread seu uso beneficia principalmente recursos de processamento, um processo pode ser dividido em várias threads, sua alocação para execução resulta em um menor consumo de recursos do sistema, isso ocorre em decorrência do compartilhamento do endereço de memória entre as threads. Machado e maia (2002, p. 83) esclarece ainda mais este conceito, A partir do conceito de múltiplos threads (multitreads) é possível projetar e implementar aplicações concorrentes de forma eficiente, pois um processo pode ter partes diferentes do seu código sendo executados em paralelo, com um menor overhead do que utilizando múltiplos processos. Como os threads de um mesmo processo compartilham o mesmo espaço de

25 23 endereçamento, a comunicação entre threads não envolve mecanismos lentos de intercomunicação entre processos, aumentando, consequentemente, o desempenho da aplicação System call System call são as chamadas de sistemas. São efetuadas quando um processo em user mode ou modo usuário requisita recursos ou funcionalidades de propriedade do exclusiva do kernel. Para Fernandes, Soares (2010, p. 28), Kernel é o núcleo do sistema operacional, o programa ou uma coleção de programas mais importante dentro de um computador, porém não é visto nem tampouco utilizado diretamente pelos usuários em sua maioria. O Kernel ou núcleo é parte essencial de um sistema operacional, provê, por meio das system calls recursos de processamento, memória e dispositivos aos processos que os solicitam. 2.3 A evolução do sistema operacional A evolução do sistema operacional iniciou-se com a um protagonista pouco comum, Space Travel. Este trata-se um game desenvolvido por Ken Thompson, um dos desenvolvedores da Bell Labs. O game rodava precariamente no Multics, um sistema operacional desenvolvido nos laboratórios Bell Labs, o desempenho não era favorável, começa ai, uma grande evolução nos sistemas operacionais O UNIX Dennis Ritchie e Ken Thompson foram os idealizadores de um sistema operacional multiusuário e multitarefa, tais funcionalidades eram desejadas já naquela época; década de 60 e 70.

26 24 A principal necessidade que alavancou o desenvolvimento de um sistema com esses propósitos foi justamente o game de Ken Thompon, o qual se chamava Space Travel. Space Travel rodava precariamente no Multics, sistema operacional desenvolvido pela Bell Labs, então Ken Thompson decidiu rodá-lo em um PDP-7 e aos poucos Ritchie e Thompson foram modificando o sistema operacional do Multics para que pudesse rodar o game satisfatoriamente. Aos poucos idealizaram um dos mais eficiente, portável e seguro sistema operacional que se conheceu. O que culminou tamanha façanha foi modificar o sistema do Multics de forma que fosse portável, ou seja, compatível com os demais hardwares sem recriar ou modificar o núcleo do sistema, essa portabilidade foi alcançada com a reescrita de todo o sistema do Multics na linguagem de programação C. Sistemas operacionais daquela época eram escritos em Assembly, uma linguagem de baixo nível que trabalha diretamente com os registradores de um processador, esses registradores variam de acordo com a arquitetura empregada na fabricação do processador. Para Ferreira (2011, p. 23): Inicialmente, o UNIX foi escrito em linguagem Assembly, que varia muito de um computador para outro. A necessidade de converter o UNIX para diversas plataformas de hardware levou a criação de uma linguagem de programação na qual qualquer programa pudesse ser convertido facilmente, com pouca ou nenhuma alteração, para qualquer uma das plataformas. Essa linguagem foi denomina C. A qual mesmo nos dias de hoje, continua moderna e poderosa. Logo o UNIX foi reescrito em C e convertido para as mais diversas plataformas de Hardware, sendo executado atualmente tanto em computadores de bolso como em supercomputadores. Após tornar-se confiável, portável e seguro, tornou-se comercial e sua obtenção passou a ter elevados custos econômicos. Não era mais possível obter facilmente seu código fonte, só universitários e empresas que o utilizassem em seus hardwares.

27 O Linux A criação de um sistema operacional alternativo, acessível e compatível com UNIX foram os motivos que incentivaram Richard Stallman a criar a Free Software Foundation (uma fundação sem fins lucrativos com o intuito de promover o uso e a criação de softwares livre), seu projeto inicial era desenvolver um sistema operacional compatível com UNIX, porém, sem utilizar seu núcleo, criar do zero um sistema robusto, portável, leve e seguro, e acima de tudo, gratuito e colaborativo. Mas era um grande desafio desenvolver todas as funcionalidades do sistema, que foi batizado de GNU, conforme explicita Ferreira (2011, p. 24): O desafio do GNU era enorme. Havia a necessidade de desenvolver o kernel (núcleo do sistema operacional que controla o Hardware), utilitários de programação, administração do sistema, rede, comandos-padrão etc. Porém, no final da década de 1980, o projeto tinha fracassado: apenas os utilitários de programação e os comandos-padrão estavam prontos, e o kernel, não. O Minix era um projeto semelhante ao GNU, porém era voltado mais para o estudo em instituições acadêmicas, rodava sob a arquitetura Intel 8086 (um tipo de processador fabricado pela Intel, tinha preços bem mais acessíveis se comparados aos de arquitetura RISC ou CISC). O Minix foi desenvolvido por Andrew Tanenbaum, ele próprio, usava-o para ensinar princípios estruturais de sistemas operacionais. O Linux fora inicialmente desenvolvido por Linus Torvalds. Torvalds também utilizava o Minix, porém, desejava que este fosse melhor, então, desenvolveu um núcleo e fez rodar sobre ele programas desenvolvidos no projeto GNU, conforme esclarece Fernandes e Soares (2010, p. 20): [ ] já tinha algo funcional, pois estava migrando dois programas superimportantes do projeto GNU, sendo o compilador C e o Shell, mas ainda havia muito a fazer e ele queria melhorar. (FERNANDES e SOARES 2010, p. 20)

28 26 Com o objetivo de melhorar o núcleo do Linux, Torvalds publicou em uma lista de discussão um desafio aos programadores para ajudarem com o desenvolvimento do Linux. Torvalds utilizou-se da licença GPL para publicar seu código fonte. Segundo Fernandes e Soares (2010, p. 21), essa foi a melhor estratégia: A melhor estratégia de Linux foi disponibilizar seu código sob a licença GPL da Free Software Foundation (FSF), criada por Richard Stallman no início da década de 1980, instituição de cunho social, que estimula e desenvolveu softwares livre. A grande sacada de Linus foi desenvolver o núcleo de um clone UNIX, juntá-lo ao projeto GNU sob a licença GPL e compartilhá-lo a outros desenvolvedores. A licença GPL é uma licença que permite o colaborativismo de aplicações desenvolvidas, um software que com essa licença pode ser distribuído, ou seja, compartilhado com os demais desenvolvedores da comunidade. Ela foi criada pela Free Software Foundation Fundação Software Livre, fundada por Richard Stallman. Fernandes e Soares (2010, p. 24) descrevem sucintamente os pormenores desta licença, [ ] em linhas gerais fornece quatro liberdades: 1. Liberdade de executar o programa para qualquer propósito. 2. Liberdade de estudar como o programa funciona e adaptá-lo às suas necessidades. 3. Liberdade de redistribuir cópia de modo que você possa ajudar o seu próximo. 4. Liberdade de melhorar o programa e liberar os seus melhoramentos de modo que toda a comunidade se beneficie deles. A partir de então, Linux passou a ser referenciado como GNU/Linux, pois, uniu-se o núcleo do Linux com os softwares livres desenvolvidos pelo projeto GNU. O GNU/Linux segue o padrão de desenvolvimento POSIX, mesmo padrão utilizado pelo UNIX, Ulbrich; Della Valle (2003, p. 88) descrevem esse padrão. [ ] padrão mantido por várias entidades: IEEE e Open Group, nos Estados Unidos, e ISO/IEC, na Europa. Ele define as chamadas de sistema, ou seja, nas mensagens e sinais que os processos vão trocar entre si. Podem ser comparados as mensagens do Windows [ ], mas as system calls do UNIX são muito mais numerosas, especializadas e modulares.

29 27 GNU/Linux. Esse padrão permite uma maior compatibilidade entre sistemas UNIX e O GNU/Linux, sua popularidade A utilização de sistemas operacionais livres tem crescido exponencialmente, isso decorre do aumento da disponibilização de interfaces amigáveis, atrativas e além disso, por proporcionarem uma maior interação com o usuário final. Há diversos tipos de sistemas operacionais baseados em software livre, são conhecidos como distribuição ou distro. Distribuições em software livre são disponibilizadas nos sites, geralmente um arquivo em formato ISO, contendo programas das mais variadas utilidades. Uma ISO pode ser gravada em um CD e pode ser usada sem a necessideda de instalação no computador, essa ISO é conhecida como Live CD. Há Live CDs que podem ser utilizados em micros antigos, com poucos recursos de hardware, também há distros para servidores de rede CentOS, servidores web Apache e aplicações de firewall Iptables, esses são alguns exemplos de distros ou aplicações em software livres. 2.4 Gerência de arquivo Arquivo A respeito da definição de arquivo de forma genérica em um sistema operacional, o seguinte texto é destacado. Um arquivo é basicamente um conjunto de dados armazenados em um dispositivo físico não-volátil, com um nome ou outra referência que permita sua localização posterior. Do ponto de vista do usuário e das aplicações, o arquivo é a unidade básica de armazenamento de informação em um dispositivo não-volátil, pois para eles não há forma mais simples de armazenamento persistente de dados (MAZIERO, 2011, p.3).

30 28 Em sistemas operacionais (SO) baseados no UNIX, todos os dispositivos físicos do computador são representados por arquivos (ARAÚJO; SILVA JUNIOR; SANTOS, 2011, p.35). Outro fator importante é o meio de armazenamento dos arquivos que é algum tipo de memória. Dessa forma, dentre os diversos tipos de memórias utilizadas em computadores, estas são classificadas entre dois grupos: memória volátil e não-volátil. A memória volátil é o tipo de memória caracterizada por necessitar estar sempre energizada para manter informações, caso o fornecimento de energia seja cortado os dados se perdem, sendo que a memória principal de um computador é um exemplo de memória volátil. Ao passo de que a memória nãovolátil, depois de gravados os dados, as informações permanecem armazenadas sem a necessidade de fonte elétrica. Um dispositivo de armazenamento de dados do tipo não-volátil também pode ser conhecido como memória secundária. São exemplos de memória secundária: os discos ópticos, discos magnéticos e fitas magnéticas. As memórias secundárias, por parte dos discos rígidos é um meio de ampla utilização mundial como dispositivo de armazenamento, muito por apresentar alta capacidade de armazenamento persistente de dados e baixo custo (MACHADO; MAIA, 2007, p.28-29). Conforme apresentado, o sistema operacional UNIX está relacionado diretamente na utilização de arquivos, tanto para uso próprio, quanto para outra atividades, como estruturar e organizar dados requisitados. Para que arquivos possam ser identificados de forma eficiente algumas características são atribuídas para cada arquivo, trata-se dos atributos de arquivos Atributos Atributos de arquivos são informações que permitem identificar que tipos de dados e características determinado arquivo armazena. Na visão de Machado; Maia (2007, p.216) um arquivo é identificado por um nome, composto por uma sequência de caracteres. Segundo Maziero (2011, p. 4) os principais atributos de arquivos são:

31 29 Nome: string de caracteres que identifica o arquivo para o usuário. Tipo: indicação do formato dos dados contidos no arquivo, como áudio, vídeo, imagem, texto, etc. Tamanho: indicação do tamanho do conteúdo do arquivo, em bytes ou registros; Datas: para fins de gerência, é importante manter as datas mais importantes relacionadas ao arquivo, como suas datas de criação, de último acesso e de última modificação do conteúdo; Proprietário: em sistemas multiusuários, cada arquivo tem um proprietário, que deve estar corretamente identificado; Permissões de acesso: indicam que usuários têm acesso àquele arquivo e que formas de acesso são permitidas (leitura, escrita, remoção, etc.); Localização: indicação do dispositivo físico onde o arquivo se encontra e da posição do arquivo dentro do mesmo; Outros atributos: vários outros atributos podem ser associados a um arquivo, por exemplo para indicar se é um arquivo de sistema, se está visível aos usuários, se tem conteúdo binário ou textual, etc. Cada sistema de arquivos normalmente define seus próprios atributos específicos, além dos atributos usuais. O Quadro 1, a seguir, demonstra outros atributos de arquivos. Atributo Proteção Senha Criador Proprietário Flag de somente leitura Flag de oculto Flag de sistema Flag de arquivamento Flag de ASCII/binário Flag de acesso aleatório Flag de temporário Flag de travamento Tamanho do registro Posição da chave Tamanho do campo-chave Momento de criação Momento da última alteração Tamanho atual Tamanho máximo Significado Quem tem acesso ao arquivo e de que modo Necessidade de senha para acesso ao arquivo ID do criador do arquivo Proprietário atual 0 para leitura/escrita; 1 para somente leitura 0 para normal; 1 para não exibir o arquivo 0 para arquivos normais; 1 para arquivos do sistema 0 para arquivos com backup; 1 para arquivos sem backup 0 para arquivos ASCII; 1 para arquivos binários 0 para acesso somente sequencial; 1 para acesso aleatório 0 para normal; 1 para apagar o arquivo ao sair do processo 0 para destravados; diferente de 0 para travados Número de Bytes em um registro Posição da chave em cada registro Número de bytes no campo-chave Data e hora de criação do arquivo Data e hora da última modificação do arquivo Número de bytes no arquivo Número máximo de bytes no arquivo Quadro 1 - Detalhes de atributos Fonte: Tanenbaum (2009, p.163).

32 30 De forma geral, alguns atributos são possíveis de serem alterados pelos usuários como os nomes dos arquivos, sendo que é muito comum designar o nome de um arquivo separando com um ponto de sua extensão. Para outros atributos os registros são realizados pelo sistema operacional e por padrão não é possível alteração pelos usuários depois de sinalizados, como as datas de criação de arquivos. Segue quadro que exemplifica algumas extensões de arquivos. Tipo de arquivo Arquivo de texto Arquivo executável Arquivo batch Arquivo de imagem Arquivo compactado pelo gzip Arquivo em hypertexto Extensão Exemplo.doc Exemplo.exe Exemplo.bat Exemplo.bmp Exemplo.gz Exemplo.html Quadro 2 - Tipos de extensões de arquivos Fonte: Tanenbaum (2009, p.163) Operações De acordo com Maziero (2011, p.5), a utilização de arquivos é feita através do conjunto de sete operações, geralmente implementadas através de funções de bibliotecas e chamadas de sistema. Sendo: Criar: a criação de um novo arquivo implica em alocar espaço para ele no dispositivo de armazenamento e definir seus atributos (nome, localização, proprietário, permissões de acesso, etc.); Abrir: antes que uma aplicação possa ler ou escrever dados em um arquivo, ela deve solicitar ao sistema operacional a abertura desse arquivo. O sistema irá então verificar se o arquivo existe, verificar se as permissões associadas ao arquivo permitem aquele acesso, localizar seu conteúdo no dispositivo de armazenamento e criar uma referência para ele na memória da aplicação; Ler: permite transferir dados presentes no arquivo para uma área de memória da aplicação;

33 31 Escrever: permite transferir dados na memória da aplicação para o arquivo no dispositivo físico; os novos dados podem ser adicionados no final do arquivo ou sobrescrever dados já existentes; Mudar atributos: para modificar outras características do arquivo, como nome, localização, proprietário, permissões, etc. Fechar: ao concluir o uso do arquivo, a aplicação deve informar ao sistema operacional que o mesmo não é mais necessário, a fim de liberar as estruturas de gerência do arquivo na memória do núcleo; Remover: para eliminar o arquivo do dispositivo, descartando seus dados e liberando o espaço ocupado por ele. (MAZIERO, 2011, p.5) Organização de arquivos A forma como os dados são dispostos dentro de um arquivo determina sua estrutura interna. Existe, na prática, uma enorme quantidade de diferentes tipos de arquivos, cada tipo com sua estrutura interna particular (OLIVEIRA; CARISSIMI; TOSCANI, 2001, p.15). Arquivos textos possuem propósitos completamente distintos de arquivos executáveis, consequentemente, estruturas diferentes podem adequar-se melhor a um tipo do que a outro (MACHADO; MAIA, 2007, p.213). Além disso, a cada dia, novas aplicações são criadas e, em consequência, novos tipos de arquivos são criados. Não é viável para o sistema operacional conhecer todos os tipos de arquivos existentes (OLIVEIRA; CARISSIMI; TOSCANI, 2001, p.15). Alguns sistemas operacionais possuem diferentes organizações de arquivos. Neste caso, cada arquivo criado deve seguir um modelo suportado pelo sistema de arquivos. As organizações mais conhecidas e implementadas são a sequencial, a relativa e a indexada. Nestes tipos de organização, podemos visualizar um arquivo como um conjunto de registros. Os registros podem ser classificados em registros de tamanho fixo, quando possuírem sempre o mesmo tamanho, ou registros de tamanho variável. (MACHADO; MAIA, 2007, p.213).

34 32 Figura 1 - Organização de arquivos Fonte: (MACHADO; MAIA, 2007, p.214) Partições Muitas vezes um disco rígido é dividido em uma ou mais partições. Dessa forma, nesse dispositivo pode ser feita operação de formatação, esta que, é usada para disponibilizar a introdução de um sistema de arquivos, outras partições, manipulação de espaços livres e ocupados do disco rígido inteiro e armazenamento de dados de utilidades pessoais (SENA JÚNIOR; GONÇALVES; SANTOS, 2012, p.35-36). Em um computador no padrão PC, o espaço de armazenamento de cada dispositivo é dividido em uma pequena área inicial de configuração e uma ou mais partições, que podem ser vistas como espaços independentes. A área de configuração é denominada MBR - Master Boot Record, e contém uma tabela de partições com informações sobre o particionamento do dispositivo. Além disso, contém também um pequeno código executável, usado no processo de inicialização do sistema operacional. No início de cada partição geralmente há um bloco reservado, utilizado para a descrição do conteúdo daquela partição e para armazenar o código de lançamento do sistema operacional, se for uma partição inicializável (bootable partition). Esse bloco reservado é denominado bloco de inicialização ou VBR - Volume Boot Record. O restante dos blocos da partição está disponível para o armazenamento de arquivos. (MAZIERO, 2011, p.20).

35 33 O disco rígido é visto de forma abstrata como um imenso vetor de blocos de bytes. Tais blocos de dados possuem tamanho fixo geralmente entre 512 e bytes e são numerados sequencialmente. Dessa forma, operações de leitura e escrita de dados nesses dispositivos são feitas bloco a bloco, por essa razão esses dispositivos são chamados dispositivos de blocos (block devices) (MAZIERO, 2011, p.19-20). Partições, de forma geral, podem ser divididas em três grupos: primárias, estendidas e lógicas. Estas são definidas da seguinte forma. Primárias: Segundo Bruno Torres Ponto Net; Este tipo de partição contém um sistema de arquivos. Em um disco deve haver no mínimo uma e no máximo quatro partições primárias. Se existirem quatro partições primárias, nenhuma outra partição poderá existir neste disco. As partições primárias são as partições mais importantes, pois, somente nelas, é possível criar sistemas de arquivos possibilitando o acesso ao disco rígido de uma maneira fácil e compreensível ao usuário. Estendidas: Só pode existir uma partição estendida no disco rígido. Uma partição estendida possui partições lógicas, impossibilitando a existência de quaisquer sistemas de arquivos. Ao ser criada, a partição estendida recebe status de partição primária restringindo a três partições primárias que podem ser criadas, afinal, o máximo é quatro por disco. Partições estendidas não utilizam letras para serem identificadas já que não possuem sistemas de arquivos e não guardam dados diretamente. Lógicas: Ficam dentro da partição estendida com limite de doze partições lógicas por disco. Como as primeiras 4 partições são usadas para as partições denominadas primária e estendida, as lógicas ficam com os números de 5 a 16 em suas posições referentes. Servem somente para armazenamento de dados (SENA JÚNIOR; GONÇALVES; SANTOS, 2012, p.36). As partições destacadas, em sistemas operacionais baseados no UNIX são constituídas obedecendo um padrão de nomenclatura. Partições primárias (e estendidas) são referenciadas pelos números: 1, 2, 3 e 4. As lógicas pelos números: 5, 6, 7, 8 e assim consecutivamente. Exemplos: A primeira partição primária de um disco IDE master que esteja na primeira controladora como primário, seria representado desta forma: /dev/hda1 A primeira partição lógica de um disco IDE que esteja na segunda controladora como slave, seria representado desta forma: /dev/hdd5 A segunda partição primária conectada na terceira controladora SCSI ou SATA, seria representado da seguinte forma: /dev/sdc3 (ARAÚJO; SILVA JUNIOR; SANTOS, 2011, p.30-31).

36 Diretórios A organização dos arquivos em sistemas operacionais UNIX se dá pela utilização de diretórios, onde em muitos casos também são arquivos. Sendo que um diretório tipicamente contém um número de registros para cada arquivo (CARDOZO; MAGALHÃES; FAINA, 2002, p.43). Diretórios bem como arquivos são constantemente recuperados para utilização sejam pelas aplicações, sistemas operacionais ou pelas pessoas manipulando seus dados pessoais e este é um dos motivos de serem arquivos pois em algum momento tais dados armazenados serão requisitados. O primeiro diretório, representado por / é chamado de diretório raiz e contêm vários outros sub-diretórios principais, que são: /bin Dentro deste diretório estão os binários essenciais que podem ser utilizados tanto pelo administrador do sistema quanto pelos usuários comuns. Estes binários são necessários quando nenhum outro sistema de arquivos está montado; /boot Onde os arquivos estáticos do gerenciador de boot são armazenados; /dev Local onde são armazenados os arquivos de dispositivos utilizados para criar as entradas de dispositivo. /etc Neste diretório são armazenadas as configurações de sistema específicas da máquina. /home Trata-se do diretório que armazena os diretórios individuais dos usuários. Cada usuário possui um diretório principal e pessoal dentro do /home. O usuário deverá colocar seus arquivos e diretórios dentro deste diretório. /lib Diretório que armazena as bibliotecas compartilhadas que são essenciais e os módulos do kernel. Neste diretório residem as bibliotecas compartilhadas utilizadas para iniciar o sistema operacional e também são utilizadas pelos programas que ficam nos diretório /bin e /sbin. Os módulos ficam alocados dentro de /lib/modules. /media Pontos de montagem para mídias removíveis (discos flexíveis, dispositivos de armazenamento que utilizam a interface USB, etc.). /mnt Trata-se do ponto de montagem temporário para outros sistemas de arquivos. /proc É o diretório virtual que contêm as informações do sistema em tempo de execução (no kernel 2.4 e 2.6). /root Diretório de uso pessoal do administrador do sistema. /sbin Contêm os binários essenciais para o funcionamento sistema, isto é, armazena utilitários para inicializar, reparar e/ou recuperar o sistema antes

37 35 que o diretório /usr esteja montado. Normalmente, estes binários são utilizados somente pelo administrador do sistema. /sys Diretório virtual contendo informações do sistema (a partir do kernel 2.6). /tmp Armazenamento de arquivos temporários. /usr Trata-se de uma hierarquia secundária. Isto é: os programas de usuários (/usr/bin), bibliotecas (/usr/lib), documentação (/usr/share/doc), etc. Armazenam dados compartilhados no modo de somente leitura. É necessário existência de alguns subdiretórios, sendo: /usr/bin (programas compartilhados de usuários), /usr/include (arquivos compartilhados que contêm cabeçalhos utilizados por programas C/C++), /usr/bin (bibliotecas), /usr/local (hierarquia local), O diretório /usr/local é uma hierarquia para uso do administrador do sistema para a instalação local de software. Novos programas instalados devem utilizar esta hierarquia. O diretório /usr/local requer os seguintes subdiretórios: /usr/local/bin: binários instalados localmente; /usr/local/etc: armazena os arquivos de configuração específicos para o computador local; /usr/local/games: armazena jogos e programas educacionais locais; /usr/local/include: cabeçalhos de uso local; /usr/local/man: páginas de manuais de uso local; /usr/local/sbin: binários de uso administrativo de uso local; /usr/local/share: arquivos locais independente da arquitetura utilizada; e /usr/local/src: códigos fontes locais. /usr/sbin (binários do sistema não essenciais), /usr/share (dados independentes da arquitetura). Além dos essenciais, podem-se ter alguns diretórios opcionais, que irão variar de acordo com a instalação ou não de determinados pacotes de software. /var Local onde são armazenados os dados variáveis. Isto é: logs, s, banco de dados, e os dados temporários dos sistema de empacotamento, etc. /srv Este diretório armazena dados para serviços fornecidos pelo sistema. A utilização destes dados é de uso geral, ou seja, os dados não são específicos de um usuário (como os dados de um servidor ftp ou servidor web). /opt Pacotes adicionais de aplicativos e programas que não são distribuídos nativamente com a distribuição. (ARAÚJO; SILVA JUNIOR; SANTOS, 2011, p.30-35). 2.5 Sistema de arquivos Até o momento apresentou-se alguns dos principais termos e definições para a utilização de dados e arquivos em um sistema operacional. No UNIX a gerência dessas informações é designada a uma parte específica do SO: o sistema de arquivos. De forma geral, o sistema de arquivo que é o responsável por administrar os dados requisitados pelas aplicações nos dispositivos de

38 36 armazenamento, sendo através dele que se dá a obtenção de tais dados em discos rígidos, pen drivers, dentre outros. De acordo com Maziero (2011, p. 28) Os principais elementos que constituem a gerência de arquivos estão organizados em camadas, dessa forma, partindo de um nível mais baixo da arquitetura segundo Maziero, as camadas são compostas por: dispositivos de armazenamento, controladores, drivers, gerência de blocos, alocação de arquivos e o sistema de arquivos virtual. A Figura 2 ilustra esta arquitetura implementada em camadas. Figura 2 - Implementação das camadas de gerência de arquivos Fonte: Maziero (2011, p.29) A seguir será discutido as principais camadas.

39 Dispositivo e controlador Como já visto, um dispositivo de armazenamento é um tipo de memória nãovolátil, ou memória secundária, que em geral possui alta capacidade armazenamento de dados. O dispositivo de armazenamento objeto de estudo aqui são os discos rígidos (HD), por ser um dispositivo popular e encontrado em qualquer computador pessoal (PC) típico ou notebook. Contudo, pretende-se focar em sua utilização do ponto de vista de sua estrutura lógica, não entrando portando em maiores detalhes sobre o hardware e seus componentes físicos. Dessa forma, um HD será visto de forma abstrata como um imenso vetor de blocos de bytes Drivers Uma instalação pode possuir várias unidades físicas de disco, cada uma delas contendo um ou mais sistemas de arquivo. O núcleo relaciona-se com os sistemas de arquivo de um ponto de vista lógico ao invés de tratar com discos. Cada dispositivo lógico é identificado por um número do dispositivo lógico. A conversão entre os endereços do dispositivo lógico (sistema de arquivo) e os endereços, no dispositivo físico (disco) é realizada pelo driver do disco. (CARDOZO; MAGALHÃES; FAINA, 2002, p.15). Os drivers de dispositivos, ou somente driver, são componentes de software capazes de interagir com os controladores, assim, o sistema operacional pode ter controle e acesso a eles (MAZIERO, 2011, p.28). De acordo com Machado; Maia (2007, p.233) os drivers têm como função receber comandos gerais sobre acessos aos dispositivos e traduzí-los para comandos específicos que poderão ser executados pelos controladores Gerência de blocos Logo acima dos drivers está a camada de gerência de blocos, que irá gerir o fluxo de blocos de dados entre os dispositivos de armazenamento e a memória. Como os discos rígidos são dispositivos orientados a blocos, os dados quando forem escritos ou lidos será sempre feito em blocos e não em bytes individuais (MAZIERO, 2011, p.28).

40 Alocação de arquivos A camada de alocação de arquivos de acordo com Maziero (2011, p.28) Alocação indexada tem como função principal alocar os arquivos sobre os blocos lógicos oferecidos pela gerência de blocos. Dessa forma destaca-se três formas de alocação de arquivos: a contígua, encadeada e indexada. Será destacado a seguir a alocação de arquivos indexada por ser a utilizadas em sistemas UNIX, e então, o foco principal. O princípio desta técnica é manter os ponteiros de todos os blocos do arquivo em uma única estrutura denominada bloco de índice (MACHADO; MAIA, 2007, p.224. Este índice está relacionado a estrutura i-node conforme abaixo. Cada entrada desse índice corresponde a um bloco do arquivo e aponta para a posição desse bloco no disco. O índice de blocos de cada arquivo é mantido no disco em uma estrutura denominada nó de índice (index node) ou simplesmente nó-i (i-node). O i-node de cada arquivo contém, além de seu índice de blocos, os principais atributos do mesmo, como tamanho, permissões, datas de acesso, etc. Os i-nodes de todos os arquivos são agrupados em uma tabela de i-nodes, mantida em uma área reservada do disco, separada dos blocos de dados dos arquivos. Figura 3 - Alocação indexada em níveis Fonte: Maziero (2011, p.38)

41 39 Por meio da estrutura anterior (Figura 3) cada ponteiro permite localizar os blocos de dados sem maiores problemas e caracteriza-se como uma solução que apresenta rápidos acessos, flexibilidade e robustez Sistema de Arquivos Estendido (Ext) Ext, sistema de arquivos estendido, é o sistema de arquivos projetado para ser implementado junto ao sistema operacional Linux. Assim, o ext ao longo de seu desenvolvimento foi sendo aprimorado e evoluindo em suas diferentes versões, começando com a primeira versão, ext, passando para ext2, ext3 e finalmente para a ext4. Ao passo da crescente popularidade do sistema operacional Linux desde a sua criação, o sistema de arquivo ext também se tornou bem conhecido, tornandose um dos mais populares sistemas de arquivos ao longo de suas versões. A partir da primeira versão diversos aprimoramentos foram feitos e o que ganha destaque é a ext3 com a implementação de journaling, ou registros de mudanças, do Linux que também é encontrada na versão ext4. Segundo Jones (2008), registro de mudanças são sistemas de arquivos resistentes a falhas que usam um diário que registra as alterações antes que elas sejam guardadas no sistema de arquivos para evitar que os metadados sejam corrompidos. CAPÍTULO III 3.1 Estudo de Caso Feramenta Photorec Foi feita uma análise do comportamento de recuperação de dados das ferramentas Photorec e Foremost, foram coletadas das datas, respectivas análise.

42 40 recuperação No Quadro 3, consta informações relativas a data e a hora da realização da DATA INICIAL 04/04/2013 DATA FINAL 05/04/2013 HORA INICIAL - HORA FINAL - Quadro 3 - Data e hora do início da Recuperação A primeira ferramenta a ser analisada foi o Photorec. O Photorec é uma ferramenta para recuperação de dados em ambiente Linux, está presente nas distribuições Linux voltado para a forense, mas também poderá ser instalada em outras distribuições, o Quadro 4 contém dados referentes a distribuição GNU/Linux utilizada. FERRAMENTA PHOTOREC VERSÃO 6.13 DISTRIBUIÇÃO BACKTRACK 5 Quadro 4 - Ferramenta utilizada A partição /dev/sdb6 de um disco rígido externo, cujo sistema de arquivos é o ext3 foi destinada aos testes de recuperação de dados. Inicialmente, criou-se essa partição com 596,10MB para tornar-se ágio o processo de recuperação da imagem, assim com sua recuperação, esses dados podem ser visualizados no Quadro 5. PARTIÇÃO /dev/sdb6 SISTEMA DE ARQUIVOS Ext3 IDENTIFICAÇÃO ONE TAMANHO MB ESPAÇO USADO MB ESPACÇO NÃO USADO MB Quadro 5 - Particionamento do Disco Para a recuperação de dados foi utilizado um notebook da marca Amazon, modelo: AMZ-L71, demais características consta no Quadro 6.

43 41 TIPOS DE COMPUTADORES NOTEBOOK MARCA Amazon MODELO Amz-l71 PROCESSADOR Intel Celeron VELOCIDAD DO PROCESSADOR 1.5 GHz CACHE 1.0 MB CAPACIDADE DO HD 60 GB MEMÓRIA RAM 2 GB TECNOLOGIA DE MEMÓRIA DDR2 TAMANHO DA TELA 15.0 PLACA DE VÍDEO Extreme Graphics II MEMÓRIA DE VÍDEO MB FAX MODEM 56K SISTEMA OPERACIONLA WINDOWS 7 / Backtrack 5 ALTURA 3.0 cm LARGURA 36.0 cm PROFUNDIDADE 26.0 cm PESO 2.8 kg Quadro 6 - Configuração do notebook utilizado Na Tabela 1, segue o quantitativo de arquivos recuperados pelo Photorec. Pode-se observar que a maior quantidade de arquivos recuperados por essa ferramenta é de extensão *.mp3 com 53 arquivos recuperados. QUANT. DE ARQUIVOS POR TIPO *.avi 3 *.html 1 *.java 1 *.jpg 4 *.mp3 53 *.txt 3 *.ini 1 *.xml 1 TOTAL DE ARQUIVOS 67 Tabela 1 - Quantificação dos arquivos recuperados

44 Ferramenta Foremost No Quadro 7 consta informações relativas à data e a hora da realização da recuperação de dados com a ferramenta Foremost DATA INICIAL 17/04/2013 DATA FINAL 17/04/2013 HORA INICIAL - HORA FINAL - Quadro 7 - Data e hora do início da recuperação A segunda ferramenta a ser analisada foi o Foremost. O Foremost também é uma ferramenta para recuperação de dados em ambiente Linux. O Foremost está disponível para outras distribuições que não sejam voltadas para a forense digital. FERRAMENTA FOREMOST VERSAO DA DISTRIBUIÇÃO BACKTRACK 5 Quadro 8 - Ferramenta utilizada A partição /dev/sdb6 de um disco rígido externo, cujo sistema de arquivos é o ext3 foi destinada aos testes de recuperação de dados. Inicialmente, criou-se essa partição com 596,10MB para tornar-se ágio o processo de recuperação da imagem, assim como sua recuperação, esses dados podem ser visualizados no Quadro 9. PARTIÇÃO /dev/sdb6 SISTEMA DE ARQUIVOS ext3 IDENTIFICAÇÃO ONE TAMANHO MB ESPAÇO USADO MB ESPAÇO NÃO USADO MB Quadro 9 - Particionamento do disco Para a recuperação de dados foi utilizado um notebook da marca Amazon modelo: AMZ-L71, demais características consta no Quadro 10.

45 43 TIPO DE COMPUTADOR NOTEBOOK MARCA Amazon MODELO Amz-L71 PROCESSADOR Intel Celeron VELOCIDADE DO PROCESSADOR 1.5 GHz CACHE 1.0 MB CAPACIDADE DO HD 60 GB MEMÓRIA RAM 2. GB TECNOLOGIA DE MEMÓRIA DDR2 TAMANHO DA TELA 15.0 PLACA DE VÍDEO Extreme Graphics II MEMÓRIA DE VÍDEO MB FAX MODEM 56K SISTEMA OPERACIONAL WINDOWS 7 / Backtrack 5 ALTURA 3.0 cm LARGURA 36.0 cm PROFUNDIDADE 26.0 cm PESO 2.8 kg Quadro 10 - Configuração do notebook utilizado Na Tabela 2, o quantitativo de arquivos recuperados pelo o Foremost. Pode-se observar que a maior quantidade de arquivos recuperados por essa ferramenta é do tipo jpg com 217 arquivos recuperados. A quantidade total de arquivos recuperados foram 222. QUANT. DE ARQUIVOS DO TIPO *.avi - *.html 1 *.java - *.jpg 217 *.mp3 - *.txt - *.ini - *.xml - *.png 2 *.ppt 2 TOTAL DE ARQUIVOS 222 Tabela 2 - Quantificação dos arquivos recuperados

46 44 No Gráfico 1, logo abaixo, temos a relação de quantidade de arquivos por tipos de extensão de arquivos recuperados. A ferramenta Foremost obteve a maior quantidade de arquivos de extensão jpg recuperados, o Photorec conseguiu recuperar poucos arquivos com essa extensão. Gráfico 1 - Análise de recuperação de arquivos das ferramentas Photorec e Foremost Esta análise permitiu verificar que o software Photorec é mais adequado para recuperar arquivos com extensão do tipo mp3, já o Foremost se sai muito melhor na recuperação de arquivos do tipo jpg.

47 45 CAPÍTULO IV 4.1 Funcionamento das ferramentas: Photorec e Foremost Photorec O cenário utilizado para a realização da recuperação dos arquivos do disco rígido externo foi a utilização de um notebook nas dependências da empresa PC_DOCTOR INFORMÁTICA LTDA. Essa empresa é composta por 2 (dois) sócios, sendo estes, 1 (um) gerente e 1 (um) técnico e uma secretária / atendente. A realização da recuperação dos dados foi composta dos seguintes passos: a) Inicialmente, conectou-se um disco rígido externo de capacidade de 37,26GB na USB de um notebook, Marca: Amazon-PC, Modelo: AMZ-L71. b) O referido HD foi montado pelo sistema operacional GNU/Linux - Backtrack 5 (software livre) em /dev/sda. c) Para efeito de teste, o disco rígido externo foi particionado com a ferramenta GParted da distribuição Linux Backtrack 5, geralmente as distribuições Linux possuem as ferramentas essenciais para a recuperação de dados, essas ferramentas não são exclusivas de uma ou outra distribuição. d) A utilização dessas ferramentas requer a utilização do terminal de comandos do Linux. Para efeito de teste, foi utilizado o GParted para a criação das partições no disco rígido externo conectado ao notebook, conforme Figura 4. Figura 4 - GParted partições / sistema de arquivos

48 46 Conforme se verifica na Figura 4, foram criadas 5 (cinco) partições lógicas, são elas: /dev/sdb5, /dev/sdb6, /dev/sdb7, /dev/sdb8 e /dev/sdb9. Nessas partições foram definidas os sistemas de arquivos: ext3, ext4, FAT32, NTFS e uma ext4, respectivamente. Para acomodar essas partições foi necessário definir uma partição extended, o que permitiu que várias partições lógicas fossem criadas. A partição extended tem o tamanho total de 37.26GB, as partições lógicas foram criadas com os seguintes tamanhos: /dev/sdb5 com MB, /dev/sdb6 com MB, /dev/sdb7 com MB, /dev/sdb8 com MB e /dev/sdb9 com 34.93GB. A utilização do fdisk -l permitiu visualizar essas partições no Shell de comandos da distribuição Backtrack 5, vide Figura 5. Figura 5 - Utilização do fdisk -l para a visualização das partições criadas pelo GParted

49 47 Na Figura 5, o fdisk -l exibe todas as informações dos discos rígidos, bem como suas partições lógicas e estendidas, os sistemas de arquivo, o tamanho total do disco rígido e suas características lógicas e físicas. Com base nessas informações pode-se iniciar o processo de restauração dos dados propriamente dita. A utilização da ferramenta Photorec foi imprescindível na realização dessa tarefa. O Photorec está presente nas distribuições Linux para utilização do usuário. No Backtrack 5 foi necessário iniciar o Shell de comandos usando o atalho <Ctrl>+<Alt>+<T>, mas é possível iniciá-lo clicando no ícone do Terminal, localizado no painel do Backtrack 5. A Figura 6 apresenta o resultado desse procedimento: Figura 6 - Shell bash do Backtrack 5 A linha de comando nos permite fazer tudo o que se faz em interface gráfica, porém, o grande atrativo é a sua versatilidade e rapidez com que os programas são executados.

50 48 Para iniciar o Photorec, digitou-se o seguinte comando no Shell: cd /pentest/forensics/testdisk Na Figura 7 é apresentado o resultado do uso do comando cd /pentest/forensics/testdisk: Figura 7 - Apresentado o uso do comando cd /pentest/forensics/testdisk Nessa pasta reside a ferramenta Photorec. Digitou-se:./photorec_static A Figura 8 demonstra o resultado da utilização do comando./photorec_static :

51 49 Figura 8 - Photorec sendo executado, solicitando a escolha da mídia Na Figura 8 o Photorec apresenta os seguintes dados ao usuário: Disk /dev/sda 60 GB, este é o disco rígido interno. Disk /dev/sdb 40 GB, este é o disco rígido externo, conectado na porta USB. Disk /dev/sdc 4004 MB, este é uma pendrive conectada ao notebook por meio da porta USB. O disco rígido /dev/sdb 40GB são selecionados, pressionou-se a tecla <Enter> para prosseguir.

52 50 A Figura 9 apresenta o resultado desse procedimento: Figura 9 - Photorec exibe as partições do disco /dev/sdb A Figura 9 apresenta as partições no disco rígido /dev/sdb, a restauração de dados será das partições ext3, ext4, FAT32 e NTFS, a verificação da consistência dos dados restaurados será especificada em tabela própria. Na Figura 10 é exibida a escolha da partição ext3. Figura 10 - Photorec, partição ext3 sendo selecionada

53 51 Ao pressionar a tecla <Enter> temos: Figura 11 - Photorec solicita a escolha do sistema de arquivos Na Figura 11 é necessário que se especifique de qual sistema de arquivos os dados devem ser restaurados. Nesse caso ext3 deverá ser a escolha, pressionar a tecla <Enter> exibirá o resultado apresentado na Figura 12. Figura 12 - Photorec, recuperar do espaço livre da partição ou de toda partição

54 52 Na Figura 12 há duas opções; a opção free, tendo a função de fazer o escaneamento / recuperação do espaço livre da partição ext3 e a opção whole tem a função de fazer o escaneamento / recuperação de toda a partição ext3. Neste caso, a escolha será Whole. Na Figura 13 o Photorec solicita que se especifique o local em que os arquivos recuperados sejam salvos. Figura 13 - Photorec, destino dos arquivos Na Figura 13 é demonstrada a pasta /home/tcc/recovery/ext3, esta pasta RECOVERY/ext3, foi criada com a função de armazenar os dados recuperados do sistema de arquivo ext3.

55 53 Figura 14 - Photorec, pronto para iniciar o processo de recuperação Na Figura 14 tem-se o Photorec pronto para iniciar o processo de escaneamento do sistema de arquivo ext3 do disco rígido externo. Para início desse processo é necessário pressionar a tecla <C> para indicar que o local de destino dos arquivos está correto. Na Figura 15 o Photorec exibe o tempo decorrido (elapsed time) e o tempo estimado para a conclusão (estimated time to completion) do escaneamento / recuperação de dados do sistema de arquivo ext3. Figura 15 - Photorec sendo executado.

56 54 A Figura 15 (anterior) exibe os seguintes resultados: Tempo decorrido para recuperar: 0h00m34s Tempo Estimado para recuperar: 0h00m4s Total de arquivos escaneados: 57 Arquivos com extensão mp3: 45 recuperados Arquivos com extensão txt: 6 recuperados Arquivos com extensão jpg: 3 recuperados Arquivos com extensão riff: 3 recuperados Na Figura 16 o Photorec exibe a conclusão do processo. Figura 16 - Photorec, recuperação completada O resultado final do processo de recuperação exibido na Figura 16 é exibido um total de 65 arquivos salvos na pasta /home/tcc/recovery/ext3/recup_dir.

57 55 recuperados. Na Figura 17 é exibido a pasta recup_dir.1 contendo todos os arquivos Figura 17 - Nautilus, arquivos recuperados recuperados. Na Figura 18 temos outra visualização em detalhes dos arquivos Figura 18 - Nautilus, visualização em detalhes

58 56 Na Figura 18 temos o Nautilus, gerenciador de arquivos no Linux, exibindo os arquivos recuperados em detalhes. Nessa figura temos o maior arquivo recuperado, o f avi com 45.8 MB. Na Figura 19, o Xine aplicativo de vídeo exibe e comprova a efetividade da recuperação desse arquivo. Figura 19 - Xine, execução do arquivo recuperado Na Figura 20 o nautilus exibe os arquivos recuperados, em destaque um arquivo mp3 de 20.6 MB recuperado. Figura 20 - Nautilus exibe o maior arquivo mp3 recuperado

59 57 Na Figura 21 temos o audacious player de música, demonstrando a execução do arquivo mp3 recuperado, destacado na Figura 18. Figura 21 - Audacious, execução do arquivo mp3 recuperado Foi observado que o Photorec recupera somente os arquivos em questão, não sua estrutura de pastas e arquivos, com isso, os arquivos que são recuperados são nomeados pelo Photorec Foremost O Foremost é uma aplicação de recuperação de dados em linha de comando do sistema operacional Linux, permite recuperar arquivos de imagens geradas pelo o comando dcfldd. A recuperação desses arquivos pelo Foremost é feita com base em seus cabeçalhos, rodapés e estruturas de dados. É imprescindível a criação de uma imagem de disco, ou seja, uma cópia exata do disco a ter dados restaurados, dessa forma, mantém-se preservado os dados do disco rígido em questão. A imagem criada pode ser manipulada, averiguada e ter seus dados restaurados. A integridade da imagem gerada pelo dcfldd é obtida por meio de funções hash, sendo assim, qualquer alteração ou manipulação do conteúdo da imagem é facilmente detectada, pois ao obter novo hash da imagem alterada, esta não terá o mesmo hash inicial. Este processo de obtenção do hash da imagem é útil, pois, permite verificar a integridade da imagem. No processo de recuperação de arquivos de um disco rígido externo foi necessário conectá-lo ao notebook por meio de cabo e adaptador USB. Uma vez inserido, utilizou-se o terminal de comandos do Linux para visualizarmos as partições do disco em questão. Para obter tal resultado, executou-se o comando

60 58 fdisk l conforme a Figura 22, visualiza-se: /dev/sda: 60.0 GB e um /dev/sdb: 40,0 GB, este, fruto do nosso estudo de caso, aquele refere-se ao disco interno do notebook. Na Figura 22, temos as partições do disco /dev/sdb. São visualizadas 6 (seis) partições, são elas: /dev/sdb1 estendida /dev/sdb5 Linux /dev/sdb6 Linux /dev/sdb7 W95 FAT32 /dev/sdb8 HPFS / NTFS /dev/sdb9 LINUX Figura 22 - disk gerenciador de partições

61 59 Na Tabela 22 temos as especificações das partições, sistemas de arquivos, nome da partição e o tamanho de cada uma. Partição Sistema de Arquivos Nome da Partição Tamanho /dev/sdb1 Extended 37.26GB /dev/sdb5 Ext3 ONE 596,10MB /dev/sdb6 Ext4 TWO 596,13MB /dev/sdb7 FAT32 THREE 596,13MB /dev/sdb8 NTFS FOUR 596,13MB /dev/sdb9 Ext4 RESTORE 34.93GB Tabela 3 - Particionamento do disco rígido externo Para efeito de estudo de caso foram criadas 5 (cinco) partições lógicas e uma estendida. Cada partição criada recebeu um tipo de sistema de arquivo. As partições lógicas foram nomeadas com os termos ONE, TWO, THREE, FOUR e finalmente RESTORE. Essas partições possuem 596,10MB de espaço, com exceção da última que foi criada com o tamanho de 34,93GB. Na Figura 23, temos a ferramenta GParted exibindo o detalhamento do sistema de arquivos utilizado em cada partição do disco rígido externo. Figura 23 - Gparted editor de partição

62 60 O comando dcfldd permite a criação da imagem de um disco rígido externo, essa imagem é armazenada em local especificado no momento da criação da imagem. Na Figura 24, temos o uso do dcfldd com seus parâmetros if e of. O if é a origem da imagem a ser criada e o of é o local onde a imagem será armazenada. Temos também as opções hashwindow e hashlog. O hashwindow define a quantidade de bytes a serem utilizados para se criar o hash e o hashlog define o local de destino do hash, geralmente é utilizado o mesmo destino da opção of, para que fiquem tudo no mesmo diretório, ou seja, a imagem e o hash da imagem. Figura 24 - dcfldd criador de imagens forense

63 61 A Figura 25 mostra a criação da imagem de /dev/sdb6 essa imagem está sendo salva em /home/tcc/recovery/foremost, foi utilizado 0 para o hashwindow, ou seja, o hash será criado somente no final da criação da imagem, o hashlog será armazenado também em /home/tcc/recovery/foremost. Figura 25 - Concluindo o processo de criação da imagem forense Na Figura 26 temos o resultado do uso do comando dcfldd. O nautilus, gerenciador de arquivos do Linux exibe dois arquivos, são eles: sdb6.dd sdb6.md5 O primeiro arquivo é a imagem do disco rígido externo. Essa imagem é do mesmo tamanho do disco rígido. O segundo arquivo é um hash da imagem criada. O hash permite verificar a integridade de um arquivo, caso haja qualquer tipo de alteração em um bit de um arquivo, seu hash será diferente do obtido inicialmente.

64 62 Figura 26 - dcfldd imagem forense (sdb6.dd) e hash (sdb6.md5) Na Figura 27 temos o hash md5 da imagem sendo exibida. Figura 27 - gedit Hash da imagem forense (sdb6.dd)

65 63 No terminal executou-se o comando cd. O comando cd no Linux permite acessar ou sair de diretórios. Na Figura 28 visualiza-se seu uso para acessar o diretório sdb6, esse diretório consta a imagem gerada pelo comando dcfldd. Figura 28 - cd acessando o diretório da imagem de sdb6.dd. Na Figura 29, o comando ls é usado para visualizar os arquivos salvos no diretório sdb6. O comando Foremost T sdb6.dd está sendo usado para iniciar o processo de recuperação da imagem. Os parâmetros usados, de acordo com a figura são: - T sdb6.dd

66 64 O -T criará pastas específicas de acordo com os tipos de arquivos que sendo restaurados. Caso o Foremost recupere arquivos do tipo *.txt, então esse parâmetro permite ao Foremost criar um diretório/pasta txt. O sdb6.dd é a imagem a ter dados recuperados. Figura 29 - Foremost recuperando arquivos da imagem (sdb6.dd) pelo Foremost. Na Figura 30 visualiza-se o fim do processo de recuperação dos arquivos Com o comando ls visualizamos uma pasta output_mon_apr_ 15_15_48_53_2013, essa pasta consta os arquivos recuperados pelo Foremost.

67 65 Figura 30 - Listagem do diretório criado pelo Foremost Na Figura 31 temos o nautilus exibindo a pasta. Essa pasta é bem peculiar, pois, seu nome é o dia da semana, mês, dia, hora e finalmente o ano. A opção -T do Foremost permitiu que essa pasta fosse criada assim. Figura 31 - Nautilus pasta uotput_mon... criada pelo foremost

68 66 Na Figura 32, o nautilus exibe as pastas criadas pelo Foremost, sendo observadas as pastas htm, jpg, png, ppt, estas, possuem arquivos recuperados de acordo com as respectivas extensões de arquivos. Tem-se o arquivo audit.txt, esse arquivo é um tipo de log do Foremost, com todas as especificações do uso do comando citado. Figura 32 - Nautilus pastas recuperadas da imagem sdb6.dd A Figura 33 exibe o conteúdo do audit.txt.

69 67 Figura 33 - Gedit Arquivo Audit File (Arquivo Auditor) Figura 34 - Visualização dos arquivos recuperados da imagem sdb6.dd Nessa Figura 34, temos alguns arquivos com a extensão jpg sendo visualizados, esses arquivos foram recuperados pelo Foremost.

70 68 Figura 35 - Nautilus Visualização dos arquivos recuperados Na Figura 35 tem-se outra visualização dos arquivos restaurados, estes arquivos estão organizados por tamanho, ou seja, o arquivo jpg é o maior de todos os arquivos que estão nesta pasta, vindo no topo da lista, o menor, vem em último da lista.

71 69 Figura 36 - Eye Visualização de uma jpg recuperada Na Figura 36 temos um arquivo jpg sendo visualizado pelo Eye do Backtrack e o resultado da recuperação de arquivo feita pelo Foremost. Exibição, exclusão de arquivo(s), formatação e particionamento de disco rígido, serão abordadas no momento da apresentação deste trabalho, junto à banca Exclusão, formatação de partição e recuperação dos arquivos Tanto a exclusão de arquivos, quanto a formatação da partição ext4, são fatores que não impedem a recuperação de arquivos do disco rígido em questão. A partição TWO contém arquivos inseridos especificamente para efeito de recuperação, após sua exclusão, vide Figura 37.

72 70 Figura 37 - Arquivos inseridos na pasta Na Figura 38 é apresentado a partição TWO vazia, os arquivos foram excluídos intencionalmente. Figura 38 - Arquivos deletados da pasta

73 71 Na Figura 39 é apresentado o Gparted no processo de formatação da partição TWO, especificada como /dev/sdb6. Figura 39 - Gparted, formatação da partição "TWO" A Figura 40 apresenta o Gparted aplicando a formação na partição TWO. Figura 40 Gparted aplicando e finalizando a formatação da partição TWO.

74 72 A Figura 41 apresenta a pasta /home/tcc/recovery/ext4. Esta pasta contém algumas recuperações de arquivos. A mesma figura exibe 03 (três) pastas, são elas: recup_dir.1, recup_dir.2 e recup_dir.3. Este é o estado atual da pasta ext4. Figura 41 - Pasta "ext4, antes da recuperação dos arquivos Na Figura 42, após a utilização do Photorec, nota-se o acréscimo da pasta recup_dir.4, esta pasta contém os diversos tipos de arquivos que foram recuperados.

75 73 Figura 42 - Diretório ext4, após a recuperação dos arquivos A Figura 43 apresenta os arquivos recuperados. Figura 43 - Visualização dos arquivos recuperados Na Figura 44, têm-se os arquivos que haviam sido inseridos na partição, posteriormente excluídos e finalmente recuperados.

76 74 Figura 44 - Arquivos excluídos que foram recuperados 5. Perguntas e respostas 1. Como excluir dados seguramente? A exclusão de dados de forma segura pode ser obtida através de duas maneiras: física e lógica. A exclusão física consiste na destruição do meio utilizado no armazenamento das informações e para este tipo de exclusão o meio irá indicar a melhor opção, podendo ser por: trituração, fragmentação, incineração, dentre outros. Já a exclusão lógica se dá, muitas vezes, pelo uso de técnicas que visam sobrescrever os dados, assim, os dados são sobrescritos diversas vezes por bits com variadas sequências de 0s e 1s, portanto, dificultando ou mesmo impedindo a recuperação destes dados.

Sistemas Operacionais. Andrique Amorim www.andrix.com.br professor@andrix.com.br. Gerência de Arquivos

Sistemas Operacionais. Andrique Amorim www.andrix.com.br professor@andrix.com.br. Gerência de Arquivos Andrique Amorim www.andrix.com.br professor@andrix.com.br Gerência de Arquivos Gerência de Arquivos Um sistema operacional tem por finalidade permitir que o usuários do computador executem aplicações,

Leia mais

16:21:50. Introdução à Informática com Software Livre

16:21:50. Introdução à Informática com Software Livre 16:21:50 Introdução à Informática com Software Livre 1 16:21:50 Hardware & Software 2 16:21:50 Hardware Hardware é a parte física de um computador, é formado pelos componentes eletrônicos, como por exemplo,

Leia mais

>>> OBJETIVOS... === FHS - Filesystem Hierarchy Standard. === Sistemas de arquivos e Partições

>>> OBJETIVOS... === FHS - Filesystem Hierarchy Standard. === Sistemas de arquivos e Partições >>> OBJETIVOS... === FHS - Filesystem Hierarchy Standard === Sistemas de arquivos e Partições >>> FHS - Filesystem Hierarchy Standard >Padrão de organização de pastas e arquivos em Sistemas Unix-Like >organizar

Leia mais

Partição Partição primária: Partição estendida: Discos básicos e dinâmicos

Partição Partição primária: Partição estendida: Discos básicos e dinâmicos Partição Parte de um disco físico que funciona como se fosse um disco fisicamente separado. Depois de criar uma partição, você deve formatá-la e atribuir-lhe uma letra de unidade antes de armazenar dados

Leia mais

Informática I. Aula 19. http://www.ic.uff.br/~bianca/informatica1/ Aula 19-20/11/06 1

Informática I. Aula 19. http://www.ic.uff.br/~bianca/informatica1/ Aula 19-20/11/06 1 Informática I Aula 19 http://www.ic.uff.br/~bianca/informatica1/ Aula 19-20/11/06 1 Ementa Histórico dos Computadores Noções de Hardware e Software Microprocessadores Sistemas Numéricos e Representação

Leia mais

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

Campus - Cachoeiro Curso Técnico de Informática. Sistema de Arquivos. Prof. João Paulo de Brito Gonçalves Campus - Cachoeiro Curso Técnico de Informática Sistema de Arquivos Prof. João Paulo de Brito Gonçalves Introdução É com o sistema de arquivos que o usuário mais nota a presença do sistema operacional.

Leia mais

LABORATÓRIO DE SISTEMAS OPERACIONAIS. PROFª. M.Sc. JULIANA HOFFMANN QUINONEZ BENACCHIO

LABORATÓRIO DE SISTEMAS OPERACIONAIS. PROFª. M.Sc. JULIANA HOFFMANN QUINONEZ BENACCHIO LABORATÓRIO DE SISTEMAS OPERACIONAIS PROFª. M.Sc. JULIANA HOFFMANN QUINONEZ BENACCHIO Sistema Operacional Conteúdo retirado do livro Sistemas Operacionais Marcos Aurélio Pchek Laureano Diogo Roberto Olsen

Leia mais

CESPE - 2012 - FNDE - Técnico em Financiamento e Execução de Programas e Projetos Educacionais

CESPE - 2012 - FNDE - Técnico em Financiamento e Execução de Programas e Projetos Educacionais CESPE - 2012 - FNDE - Técnico em Financiamento e Execução de Programas e Projetos Educacionais De modo semelhante ao Linux, o Windows é considerado um software microbásico. Uma característica desse tipo

Leia mais

Software Livre. Acesso ao código fonte Alterar o código fonte Redistribuir Utilizar como desejar

Software Livre. Acesso ao código fonte Alterar o código fonte Redistribuir Utilizar como desejar Software Livre Acesso ao código fonte Alterar o código fonte Redistribuir Utilizar como desejar Linux Licença GPL (Licença Pública Geral) Linux Licença GPL (Licença Pública Geral) - A liberdade de executar

Leia mais

Aula 01 Visão Geral do Linux

Aula 01 Visão Geral do Linux Instituto Federal de Educação, Ciência e Tecnologia de Santa Catarina Administração de Redes de Computadores Aula 01 Visão Geral do Linux Prof. Gustavo Medeiros de Araujo Profa.

Leia mais

Introdução a Sistemas Abertos

Introdução a Sistemas Abertos Introdução a Sistemas Abertos Apresentação filipe.raulino@ifrn.edu.br Sistemas Abertos Qualquer programa de computador que pode ser usado, copiado, estudado e redistribuído inclusive com seu código fonte

Leia mais

SOFTWARE LIVRE. Distribuições Live CD. Kernel. Distribuição Linux

SOFTWARE LIVRE. Distribuições Live CD. Kernel. Distribuição Linux SOFTWARE LIVRE A liberdade de executar o programa, para qualquer propósito. A liberdade de estudar como o programa funciona, e adaptá-lo para as suas necessidades. Acesso ao código-fonte é um pré-requisito

Leia mais

Introdução ao Linux: Parte I

Introdução ao Linux: Parte I 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

Leia mais

Sistemas Operacionais 2014 Introdução. Alexandre Augusto Giron alexandre.a.giron@gmail.com

Sistemas Operacionais 2014 Introdução. Alexandre Augusto Giron alexandre.a.giron@gmail.com Sistemas Operacionais 2014 Introdução Alexandre Augusto Giron alexandre.a.giron@gmail.com Roteiro Sistemas Operacionais Histórico Estrutura de SO Principais Funções do SO Interrupções Chamadas de Sistema

Leia mais

Revisão Aula 3. 1. Explique a MBR(Master Boot Record)

Revisão Aula 3. 1. Explique a MBR(Master Boot Record) Revisão Aula 3 1. Explique a MBR(Master Boot Record) Revisão Aula 3 1. Explique a MBR(Master Boot Record). Master Boot Record Primeiro setor de um HD (disco rígido) Dividido em duas áreas: Boot loader

Leia mais

Everson Scherrer Borges João Paulo de Brito Gonçalves

Everson Scherrer Borges João Paulo de Brito Gonçalves Everson Scherrer Borges João Paulo de Brito Gonçalves 1 Introdução ao Linux e Instalação do Ubuntu Linux História Em 1973, um pesquisador da Bell Labs, Dennis Ritchie, reescreveu todo o sistema Unix numa

Leia mais

SISTEMAS OPERACIONAIS DE ARQUITETURA ABERTA

SISTEMAS OPERACIONAIS DE ARQUITETURA ABERTA SISTEMAS OPERACIONAIS DE ARQUITETURA ABERTA Prof. Ulisses Cotta Cavalca Belo Horizonte/MG 2015 1 SUMÁRIO 1. Histórico do sistema operacional 2. Licença de softwares 3. Aspectos

Leia mais

Introdução ao Linux. Professor Breno Leonardo G. de M. Araújo

Introdução ao Linux. Professor Breno Leonardo G. de M. Araújo Introdução ao Linux Professor Breno Leonardo G. de M. Araújo Sistema Operacional Linux Embora o Sistema Operacional Microsoft Windows ainda seja predominante no mercado de desktops e Notebooks,já é, bastante

Leia mais

Sistema Operacional Unidade 2 - Estrutura, dispositivos e sistema de arquivos do Linux

Sistema Operacional Unidade 2 - Estrutura, dispositivos e sistema de arquivos do Linux Sistema Operacional Unidade 2 - Estrutura, dispositivos e sistema de arquivos do Linux Curso Técnico em Informática SUMÁRIO INTRODUÇÃO... 3 ESTRUTURA DE DIRETÓRIOS LINUX... 3 SISTEMA DE ARQUIVOS E PARTICIONAMENTO...

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Gerência de Arquivos Edson Moreno edson.moreno@pucrs.br http://www.inf.pucrs.br/~emoreno Sumário Conceituação de arquivos Implementação do sistemas de arquivo Introdução Sistema de

Leia mais

Faculdades Senac Pelotas

Faculdades Senac Pelotas Faculdades Senac Pelotas Curso Superior de Tecnologia em Redes de Computadores Introdução a informática Alunos Daniel Ferreira, Ícaro T. Vieira, Licurgo Nunes Atividade 4 Tipos de Arquivos Sumário 1 Tipos

Leia mais

Curso Técnico de Nível Médio

Curso Técnico de Nível Médio Curso Técnico de Nível Médio Disciplina: Informática Básica 3. Software Prof. Ronaldo Software Formado por um conjunto de instruções (algoritmos) e suas representações para o

Leia mais

Administração de Redes Linux. Unidade 1 - LINUX

Administração de Redes Linux. Unidade 1 - LINUX Administração de Redes Linux Unidade 1 - LINUX Breve Histórico O Linux é um sistema operacional moderno e gratuito, baseado nos padrões UNIX. Desenvolvido inicialmente em 1991 como um KERNEL PEQUENO E

Leia mais

Sistemas Operacionais

Sistemas Operacionais UNIVERSIDADE BANDEIRANTE DE SÃO PAULO INSTITUTO POLITÉCNICO CURSO DE SISTEMAS DE INFORMAÇÃO Sistemas Operacionais Notas de Aulas: Tópicos 7 e 8 Estrutura do Sistema Operacional São Paulo 2009 1 Sumário

Leia mais

Arquitetura de Computadores. Introdução aos Sistemas Operacionais

Arquitetura de Computadores. Introdução aos Sistemas Operacionais Arquitetura de Computadores Introdução aos Sistemas Operacionais O que é um Sistema Operacional? Programa que atua como um intermediário entre um usuário do computador ou um programa e o hardware. Os 4

Leia mais

Sistemas Operacionais. (Capítulo 3) INTRODUÇÃO À ENGENHARIA DA COMPUTAÇÃO. Professor: Rosalvo Ferreira de Oliveira Neto

Sistemas Operacionais. (Capítulo 3) INTRODUÇÃO À ENGENHARIA DA COMPUTAÇÃO. Professor: Rosalvo Ferreira de Oliveira Neto Sistemas Operacionais (Capítulo 3) INTRODUÇÃO À ENGENHARIA DA COMPUTAÇÃO Professor: Rosalvo Ferreira de Oliveira Neto Estrutura 1. Definições 2. Classificações 3. CPU 4. Memória 5. Utilitários O que se

Leia mais

Sistema de Arquivos do Windows

Sistema de Arquivos do Windows Registro mestre de inicialização (MBR) A trilha zero do HD, onde ficam guardadas as informações sobre o(s) sistema(s) operacionais instalados. Onde começa o processo de inicialização do Sistema Operacional.

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais SISTEMAS DE ARQUIVOS MACHADO/MAIA: CAPÍTULO 11 Prof. Pedro Luís Antonelli Anhanguera Educacional SISTEMAS DE ARQUIVOS - INTRODUÇÃO O armazenamento e a recuperação de informações é

Leia mais

TECNÓLOGO EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS PROGRAMAÇÃO DE COMPUTADORES I Aula 01: Conceitos Iniciais / Sistema Operacional

TECNÓLOGO EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS PROGRAMAÇÃO DE COMPUTADORES I Aula 01: Conceitos Iniciais / Sistema Operacional TECNÓLOGO EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS PROGRAMAÇÃO DE COMPUTADORES I Aula 01: Conceitos Iniciais / Sistema Operacional O conteúdo deste documento tem por objetivo apresentar uma visão geral

Leia mais

Julgue os itens a seguir referentes a conceitos de software livre e licenças de uso, distribuição e modificação.

Julgue os itens a seguir referentes a conceitos de software livre e licenças de uso, distribuição e modificação. Julgue os itens a seguir referentes a conceitos de software livre e licenças de uso, distribuição e modificação. 1.Todo software livre deve ser desenvolvido para uso por pessoa física em ambiente com sistema

Leia mais

SISTEMAS OPERACIONAIS. Apostila 03 Estrutura do Sistema Operacional UNIBAN

SISTEMAS OPERACIONAIS. Apostila 03 Estrutura do Sistema Operacional UNIBAN SISTEMAS OPERACIONAIS Apostila 03 Estrutura do Sistema Operacional UNIBAN 1.0 O Sistema Operacional como uma Máquina Virtual A arquitetura (conjunto de instruções, organização de memória, E/S e estrutura

Leia mais

Objetivos do Curso. Organização do Curso. Apresentação do Curso. Pós Graduação em Projeto e Gerencia de Redes de Computadores

Objetivos do Curso. Organização do Curso. Apresentação do Curso. Pós Graduação em Projeto e Gerencia de Redes de Computadores 1 Pós Graduação em Projeto e Gerencia de Redes de Computadores Sistemas Operacionais de Redes I - Linux Prof.: Nelson Monnerat Apresentação do Curso 1 Objetivos do Curso Sistema Operacional Unix/Linux;

Leia mais

Curso GNU/Linux. Instalação do Linux...2 O HD não possui nenhuma partição...3. Existe apenas uma partição com espaço livre...3

Curso GNU/Linux. Instalação do Linux...2 O HD não possui nenhuma partição...3. Existe apenas uma partição com espaço livre...3 Cesar Kállas - cesarkallas@gmx.net Curso GNU/Linux Realização CAECOMP Puc Campinas 2004 Capítulo 3 Instalação do Linux...2 O HD não possui nenhuma partição...3 O HD tem espaço livre não particionado...3

Leia mais

Introdução ao Linux MICHELLE NERY

Introdução ao Linux MICHELLE NERY Introdução ao Linux MICHELLE NERY O que é preciso saber para conhecer o Linux? Entender os componentes de um computador. Conhecimentos básicos de sistemas operacionais. Referência: Sistemas Operacionais

Leia mais

03/11/2011. Apresentação. SA do Linux. Sistemas de Arquivos. Curso Tecnologia em Telemática. Disciplina Administração de Sistemas Linux

03/11/2011. Apresentação. SA do Linux. Sistemas de Arquivos. Curso Tecnologia em Telemática. Disciplina Administração de Sistemas Linux Apresentação Administração de Sistemas Curso Tecnologia em Telemática Disciplina Administração de Sistemas Linux Professor: Anderson Costa anderson@ifpb.edu.br Assunto da aula Aspectos do Sistema de Arquivos

Leia mais

4. Conceitos Básicos de Computação: Sistemas Operacionais

4. Conceitos Básicos de Computação: Sistemas Operacionais Introdução à Computação 5910157 4. Conceitos Básicos de Computação: Sistemas Operacionais Prof. Renato Tinós Local: Depto. de Física e Matemática (FFCLRP/USP) 1 Principais Tópicos 4.1. Introdução aos Sistemas

Leia mais

Estrutura de um Sistema Linux Moderno Padrões de um Sistema Linux. Prof. Claudio Silva

Estrutura de um Sistema Linux Moderno Padrões de um Sistema Linux. Prof. Claudio Silva Estrutura de um Sistema Linux Moderno Padrões de um Sistema Linux Estrutura de um Sistema Linux Por ter sua origem universitária, a forma como o Linux foi concebido é de perfeito agrado para o seu estudo.

Leia mais

Sistemas Operacionais. Prof. M.Sc. Sérgio Teixeira. Aula 05 Estrutura e arquitetura do SO Parte 1. Cursos de Computação

Sistemas Operacionais. Prof. M.Sc. Sérgio Teixeira. Aula 05 Estrutura e arquitetura do SO Parte 1. Cursos de Computação Cursos de Computação Sistemas Operacionais Prof. M.Sc. Sérgio Teixeira Aula 05 Estrutura e arquitetura do SO Parte 1 Referência: MACHADO, F.B. ; MAIA, L.P. Arquitetura de Sistemas Operacionais. 4.ed. LTC,

Leia mais

Gerenciamento de ES e Sistema de Arquivos do Windows 2000

Gerenciamento de ES e Sistema de Arquivos do Windows 2000 1 Gerenciamento de ES e Sistema de Arquivos do Windows 2000 Gerenciador de E/S Objetivo é fornecer uma estrutura de modo eficiente para lidar com a grande variedade de dispositivos Bastante relacionado

Leia mais

Tecnólogo em Análise e Desenvolvimento de Sistemas

Tecnólogo em Análise e Desenvolvimento de Sistemas Tecnólogo em Análise e Desenvolvimento de Sistemas O conteúdo deste documento tem como objetivos geral introduzir conceitos mínimos sobre sistemas operacionais e máquinas virtuais para posteriormente utilizar

Leia mais

Sistema Operacional LINUX

Sistema Operacional LINUX SISTEMA OPERACIONAL Sistema Operacional LINUX Para que o computador funcione e possibilite a execução de programas é necessária a existência de um sistema operacional. O sistema operacional é uma camada

Leia mais

Programação de Computadores

Programação de Computadores Programação de Computadores Aula 04: Sistema Operacional Material Didático do Livro: Introdução à Informática Capron,, H. L. e Johnson, J. A Pearson Education Sistemas Operacionais: Software Oculto Serve

Leia mais

Nível 3 Sistema Operacional

Nível 3 Sistema Operacional Nível 3 Sistema Operacional Universidade Tuiuti do Paraná UTP Faculdade de Ciências Exatas - FACET Tecnologia de Análise e Desenvolvimento de Sistemas Organização de Computadores Prof. André Luiz 1 Nível

Leia mais

SISTEMAS OPERACIONAIS. Sistemas de Arquivos Apostila 09

SISTEMAS OPERACIONAIS. Sistemas de Arquivos Apostila 09 SISTEMAS OPERACIONAIS Sistemas de Arquivos Apostila 09 1.0 INTRODUÇÃO Sistema de Arquivos: conceito de arquivo, métodos de acesso, estrutura de diretório, estrutura do sistema de arquivos, métodos de alocação

Leia mais

Administração de Sistemas Operacionais

Administração de Sistemas Operacionais Diretoria de Educação e Tecnologia da Informação Análise e Desenvolvimento de Sistemas INSTITUTO FEDERAL RIO GRANDE DO NORTE Administração de Sistemas Operacionais ESTRATÉGIA DE PARTICIONAMENTO Prof. Bruno

Leia mais

Sistemas Operacionais Cap 3 Estruturas de Sistemas Operacionais. Podemos analisar um sistema operacional sob diversos aspectos:

Sistemas Operacionais Cap 3 Estruturas de Sistemas Operacionais. Podemos analisar um sistema operacional sob diversos aspectos: Estruturas de Sistemas Operacionais Podemos analisar um sistema operacional sob diversos aspectos: Os serviços que o sistema operacional oferece. A interface que o sistema operacional torna disponível

Leia mais

6 - Gerência de Dispositivos

6 - Gerência de Dispositivos 1 6 - Gerência de Dispositivos 6.1 Introdução A gerência de dispositivos de entrada/saída é uma das principais e mais complexas funções do sistema operacional. Sua implementação é estruturada através de

Leia mais

Aula 01. Introdução ao Linux

Aula 01. Introdução ao Linux Aula 01 Introdução ao Linux Introdução Objetivos aprender a usar um novo sistema aprender a usar uma nova interface Como no Windows navegar pela internet (e-mails, facebook, etc) criar pastas e arquivos

Leia mais

I N F O R M Á T I C A. Sistemas Operacionais Prof. Dr. Rogério Vargas Campus Itaqui-RS

I N F O R M Á T I C A. Sistemas Operacionais Prof. Dr. Rogério Vargas Campus Itaqui-RS I N F O R M Á T I C A Sistemas Operacionais Campus Itaqui-RS Sistemas Operacionais É o software que gerencia o computador! Entre suas funções temos: inicializa o hardware do computador fornece rotinas

Leia mais

PLANO DE AULA. Ambiente Operacional Unix Profa. Morganna

PLANO DE AULA. Ambiente Operacional Unix Profa. Morganna PLANO DE AULA 1. Sistema operacional Unix 2. Sistema operacional Linux 3. Utilização dos sistemas operacionais 1 - Sistema Operacional UNIX História 1964 sistema operacional MULTICS (Multiplexed Information

Leia mais

Introdução ao Sistema UNIX

Introdução ao Sistema UNIX Volnys & Midorikawa (c) 1 Introdução ao Sistema UNIX Volnys Borges Bernal volnys@lsi.usp.br http://www.lsi.usp.br/~volnys Edson Toshimi Midorikawa emidorik@lsi.usp.br http://www.lsi.usp.br/~emidorik Laboratório

Leia mais

LUCAS DA SILVA, LUCAS TUCHTENHAGEN, LUCAS NUNES HIREN S BOOT CD

LUCAS DA SILVA, LUCAS TUCHTENHAGEN, LUCAS NUNES HIREN S BOOT CD Serviço Nacional de Aprendizagem Comercial E.E.P. Senac Pelotas Centro Histórico Programa Nacional de Acesso ao Ensino Técnico e Emprego Curso Técnico em Informática LUCAS DA SILVA, LUCAS TUCHTENHAGEN,

Leia mais

Sistemas Operacionais Aula 03: Estruturas dos SOs. Ezequiel R. Zorzal ezorzal@unifesp.br www.ezequielzorzal.com

Sistemas Operacionais Aula 03: Estruturas dos SOs. Ezequiel R. Zorzal ezorzal@unifesp.br www.ezequielzorzal.com Sistemas Operacionais Aula 03: Estruturas dos SOs Ezequiel R. Zorzal ezorzal@unifesp.br www.ezequielzorzal.com OBJETIVOS Descrever os serviços que um sistema operacional oferece aos usuários e outros sistemas

Leia mais

Introdução a Computação

Introdução a Computação Sistemas Operacionais: Software Oculto Introdução a Computação Sistemas Operacionais Serve como um intermediário entre o hardware e os softwares aplicativos. Sistema Operacional Software de sistemas Kernel

Leia mais

SO - Conceitos Básicos. Introdução ao Computador 2010/01 Renan Manola

SO - Conceitos Básicos. Introdução ao Computador 2010/01 Renan Manola SO - Conceitos Básicos Introdução ao Computador 2010/01 Renan Manola Definição de SO É uma camada de software que opera entre o hardware e os programas aplicativos voltados ao usuário final. É uma estrutura

Leia mais

Adelman Wallyson de Sousa Benigno

Adelman Wallyson de Sousa Benigno Laboratory of Software Engineering and Computer Network Universidade Federal do Maranhão Curso de Engenharia Elétrica Engineering for a better life LINUX Trabalho apresentado ao Prof. Denivaldo Lopes Adelman

Leia mais

Princípios de TI - Computadores. Sistema Operacional. CECOMP Colegiado de Engenharia da Computação. Prof. Fábio Nelson. Slide 1

Princípios de TI - Computadores. Sistema Operacional. CECOMP Colegiado de Engenharia da Computação. Prof. Fábio Nelson. Slide 1 Sistema Operacional Slide 1 Sistema Operacional Um conjunto de programas que se situa entre os softwares aplicativos e o hardware: Gerencia os recursos do computador (CPU, dispositivos periféricos). Estabelece

Leia mais

Projeto de extensão Linux no Campus

Projeto de extensão Linux no Campus Projeto de extensão Linux no Campus Universidade Federal de Santa Maria Acadêmico do Curso de Sistemas de Informação Evandro Bolzan Contatos: ebolzan@inf.ufsm.br, http://www.inf.ufsm.br/~ebolzan BUG BUG

Leia mais

AFRE. a. ( ) Instalando um programa gerenciador de carregamento, como o LILO ou o GRUB. a. ( ) Data Werehouse ; Internet ; Linux

AFRE. a. ( ) Instalando um programa gerenciador de carregamento, como o LILO ou o GRUB. a. ( ) Data Werehouse ; Internet ; Linux 1. De que forma é possível alterar a ordem dos dispositivos nos quais o computador procura, ao ser ligado, pelo sistema operacional para ser carregado? a. ( ) Instalando um programa gerenciador de carregamento,

Leia mais

Noções de Software. André Aziz (andreaziz.ufrpe@gmail.com) Francielle Santos (francielle.ufrpe@gmail.com)

Noções de Software. André Aziz (andreaziz.ufrpe@gmail.com) Francielle Santos (francielle.ufrpe@gmail.com) Noções de Software André Aziz (andreaziz.ufrpe@gmail.com) Francielle Santos (francielle.ufrpe@gmail.com) 1 Noções de Software; Sistemas Operacionais: Evolução; Conceitos Básicos; Tipos; Exemplos. DEINFO/UFRPE

Leia mais

SIMULADO DE INFORMÁTICA BÁSICA TÉCNICO DO MPU PROF. ALEXANDRE LÊNIN / PROF. JUNIOR MARTINS

SIMULADO DE INFORMÁTICA BÁSICA TÉCNICO DO MPU PROF. ALEXANDRE LÊNIN / PROF. JUNIOR MARTINS Olá, pessoal, tudo bem? Vamos fazer um simulado com 10 questões de informática direcionadas para o cargo de TÉCNICO DO MPU? São questões já aplicadas pelo CESPE em certames anteriores, mas que podem ser

Leia mais

Noções de Software. André Aziz (andreaziz.ufrpe@gmail.com) Francielle Santos (francielle.ufrpe@gmail.com)

Noções de Software. André Aziz (andreaziz.ufrpe@gmail.com) Francielle Santos (francielle.ufrpe@gmail.com) Noções de Software André Aziz (andreaziz.ufrpe@gmail.com) Francielle Santos (francielle.ufrpe@gmail.com) Noções de Software; Sistemas Operacionais: Evolução; Conceitos Básicos; Tipos; Exemplos. DEINFO/UFRPE

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Tipos de Sistemas Operacionais Com o avanço dos computadores foram surgindo alguns tipos de sistemas operacionais que contribuíram para o desenvolvimento do software. Os tipos de

Leia mais

Introdução à Computação: Sistemas de Computação

Introdução à Computação: Sistemas de Computação Introdução à Computação: Sistemas de Computação Beatriz F. M. Souza (bfmartins@inf.ufes.br) http://inf.ufes.br/~bfmartins/ Computer Science Department Federal University of Espírito Santo (Ufes), Vitória,

Leia mais

INTRODUÇÃO A LINUX. Características Sistema operacional Software livre Criado em 1991 por Linus Torvalds Dividido em duas partes principais 26/11/2013

INTRODUÇÃO A LINUX. Características Sistema operacional Software livre Criado em 1991 por Linus Torvalds Dividido em duas partes principais 26/11/2013 1 2 INTRODUÇÃO A LINUX ADRIANO SILVEIRA ADR_SILVEIRA@YAHOO.COM.BR Características Sistema operacional Software livre Criado em 1991 por Linus Torvalds Dividido em duas partes principais Kernel núcleo do

Leia mais

UNIX & Linux. Histórico, distribuição licença, características. Taisy Weber

UNIX & Linux. Histórico, distribuição licença, características. Taisy Weber UNIX & Linux Histórico, distribuição licença, características Taisy Weber História de UNIX 1969 - Ken Thompson Bell Laboratories, PDP-7 Dennis Ritchie logo juntou-se a Thompson Ritchie havia trabalhado

Leia mais

Sistemas Operacionais de Arquitetura Aberta

Sistemas Operacionais de Arquitetura Aberta Sistemas Operacionais de Arquitetura Aberta Dailson Fernandes www.dailson.com.br contato@dailson.com.br Facebook: dailson.fernandes Twitter: @dailson_ Habilidades Instalar o sistema operacional; Instalar

Leia mais

Sistemas de Informação. Sistemas Operacionais 4º Período

Sistemas de Informação. Sistemas Operacionais 4º Período Sistemas de Informação Sistemas Operacionais 4º Período SISTEMA DE ARQUIVOS SUMÁRIO 7. SISTEMA DE ARQUIVOS: 7.1 Introdução; 7.2 s; 7.3 Diretórios; 7.4 Gerência de Espaço Livre em Disco; 7.5 Gerência de

Leia mais

Sistema Operacional. História Sistema Operacional 1. QI Escolas e Faculdades Apostila de Linux

Sistema Operacional. História Sistema Operacional 1. QI Escolas e Faculdades Apostila de Linux 4 Capítulo 1 Sistema Operacional É uma coleção de programas que inicializa hardwares, fornece rotinas básicas para controle de dispositivos, mantém a integridade de um sistema. Um sistema operacional de

Leia mais

LINUX. Lapro I Profa. Fernanda Denardin Walker. - Aula 2 - Material adaptado de: Isabel Mansour, Marcia Moraes e Silvia Moraes SISTEMA OPERACIONAL

LINUX. Lapro I Profa. Fernanda Denardin Walker. - Aula 2 - Material adaptado de: Isabel Mansour, Marcia Moraes e Silvia Moraes SISTEMA OPERACIONAL LINUX Lapro I Profa. Fernanda Denardin Walker - Aula 2 - Material adaptado de: Isabel Mansour, Marcia Moraes e Silvia Moraes SISTEMA OPERACIONAL Para que o computador funcione e possibilite a execução

Leia mais

Informática Fácil NOÇÕES DE LINUX. Prof.: Adelson Gomes Ferraz Antonio Carlos Reis

Informática Fácil NOÇÕES DE LINUX. Prof.: Adelson Gomes Ferraz Antonio Carlos Reis Informática Fácil NOÇÕES DE LINUX Prof.: Adelson Gomes Ferraz Antonio Carlos Reis Cronologia 1. 1969 Univ Berkeley, Califórnia, cria-se o SO UNIX para uso geral em grandes computadores 1. Década de 70

Leia mais

Aula 05 Estrutura de diretórios

Aula 05 Estrutura de diretórios 1 Aula 05 Estrutura de diretórios 1.0 Histórico Quando do desenvolvimento do Linux, Linus Torvalds tinha a pretensão de evitar problemas encontrados durante seu uso do Minix. Dessa maneira, o sistema de

Leia mais

Sistema Operacional Unidade 4.2 - Instalando o Ubuntu Virtualizado

Sistema Operacional Unidade 4.2 - Instalando o Ubuntu Virtualizado Sistema Operacional Unidade 4.2 - Instalando o Ubuntu Virtualizado Curso Técnico em Informática SUMÁRIO INTRODUÇÃO... 3 CRIAÇÃO DA MÁQUINA VIRTUAL... 3 Mas o que é virtualização?... 3 Instalando o VirtualBox...

Leia mais

Funções de um SO. Gerência de processos Gerência de memória Gerência de Arquivos Gerência de I/O Sistema de Proteção

Funções de um SO. Gerência de processos Gerência de memória Gerência de Arquivos Gerência de I/O Sistema de Proteção Sistemas de Arquivos Funções de um SO Gerência de processos Gerência de memória Gerência de Arquivos Gerência de I/O Sistema de Proteção 2 Sistemas Operacionais Necessidade de Armazenamento Grandes quantidades

Leia mais

01/04/2012. Voltar. Voltar

01/04/2012. Voltar. Voltar Introdução à Informática Capítulo 3 Sistemas Operacionais: Software em Segundo Plano Objetivos Descrever as funções de um sistema operacional. Explicar os fundamentos do sistema operacional de um computador.

Leia mais

Sistema Operacional. Processo e Threads. Prof. Dr. Márcio Andrey Teixeira Sistemas Operacionais

Sistema Operacional. Processo e Threads. Prof. Dr. Márcio Andrey Teixeira Sistemas Operacionais Sistema Operacional Processo e Threads Introdução a Processos Todos os computadores modernos são capazes de fazer várias coisas ao mesmo tempo. Enquanto executa um programa do usuário, um computador pode

Leia mais

Um sistema é constituído de um conjunto de processos que executam seus respectivos códigos do sistema operacional e processos e códigos de usuários.

Um sistema é constituído de um conjunto de processos que executam seus respectivos códigos do sistema operacional e processos e códigos de usuários. Os sistemas computacionais atuais permitem que diversos programas sejam carregados na memória e executados simultaneamente. Essa evolução tornou necessário um controle maior na divisão de tarefas entre

Leia mais

Universidade Federal de Goiás. Alexandre Ferreira de Melo CERCOMP / UFG

Universidade Federal de Goiás. Alexandre Ferreira de Melo CERCOMP / UFG Universidade Federal de Goiás Ubuntu Desktop Alexandre Ferreira de Melo CERCOMP / UFG Conpeex / 2010 Agenda Introdução Conceitos Categorias de Software História do Linux Arquitetura do Linux Ubuntu Projeto

Leia mais

ADMINISTRAÇÃO DOS RECURSOS DE HARDWARE E SOFTWARE

ADMINISTRAÇÃO DOS RECURSOS DE HARDWARE E SOFTWARE ADMINISTRAÇÃO DOS RECURSOS DE HARDWARE E SOFTWARE 1 OBJETIVOS 1. Qual é a capacidade de processamento e armazenagem que sua organização precisa para administrar suas informações e transações empresariais?

Leia mais

Laboratório de Redes de Computadores e Sistemas Operacionais

Laboratório de Redes de Computadores e Sistemas Operacionais Laboratório de Redes de Computadores e Sistemas Operacionais O Sistema de Arquivos Fabricio Breve O que você encontra no Sistema de Arquivos do Linux... Processos Portas seriais Canais de comunicação entre

Leia mais

Labgrad. Usúario: Senha: senha

Labgrad. Usúario: <matricula> Senha: senha Suporte A equipe do Suporte é responsável pela gerência da rede do Departamento de Informática, bem como da manutenção dos servidores da mesma, e também é responsável pela monitoria do LabGrad e do LAR.

Leia mais

11/3/2009. Software. Sistemas de Informação. Software. Software. A Construção de um programa de computador. A Construção de um programa de computador

11/3/2009. Software. Sistemas de Informação. Software. Software. A Construção de um programa de computador. A Construção de um programa de computador Sistemas de Informação Prof. Anderson D. Moura Um programa de computador é composto por uma seqüência de instruções, que é interpretada e executada por um processador ou por uma máquina virtual. Em um

Leia mais

Sistemas Operacionais I Parte III Estrutura dos SOs. Prof. Gregorio Perez gregorio@uninove.br 2007. Roteiro. Componentes do Sistema

Sistemas Operacionais I Parte III Estrutura dos SOs. Prof. Gregorio Perez gregorio@uninove.br 2007. Roteiro. Componentes do Sistema Sistemas Operacionais I Parte III Estrutura dos SOs Prof. Gregorio Perez gregorio@uninove.br 2007 Roteiro Serviços Estrutura dos Sistemas Operacionais Funções do Sistema Operacional Chamadas do Sistema

Leia mais

INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA SUDESTE DE MINAS GERAIS Campus Rio Pomba. Eu defendo!!! Mini Curso. Linux

INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA SUDESTE DE MINAS GERAIS Campus Rio Pomba. Eu defendo!!! Mini Curso. Linux INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA SUDESTE DE MINAS GERAIS Campus Rio Pomba Mini Curso Linux Eu defendo!!! Apresentação Rafael Arlindo Dias Técnico em Informática CEFET Rio Pomba/MG Cursos

Leia mais

Arquitetura de Sistemas Operacionais Machado/Maia. Arquitetura de Sistemas

Arquitetura de Sistemas Operacionais Machado/Maia. Arquitetura de Sistemas Arquitetura de Sistemas Operacionais Capítulo 4 Estrutura do Sistema Operacional Cap. 4 Estrutura do Sistema 1 Sistemas Operacionais Pitágoras Fadom Divinópolis Material Utilizado na disciplina Sistemas

Leia mais

INTRODUÇÃO AO SISTEMA

INTRODUÇÃO AO SISTEMA MANUAL DE INSTALAÇÃO DE SOFTWARE PÚBLICO BRASILEIRO Nome do Software: Guarux Versão do Software: Guarux Educacional 4.0 INTRODUÇÃO AO SISTEMA O Guarux Educacional 4.0 é uma distribuição idealizada pela

Leia mais

Oficina de ferramentas de Gerência para Redes em Linux. Prof. Jefferson Santiago

Oficina de ferramentas de Gerência para Redes em Linux. Prof. Jefferson Santiago Oficina de ferramentas de Gerência para Redes em Linux Prof. Jefferson Santiago Apresentação Qual seu nome? Já possui experiência na área? Questionário avaliativo Acesse: http://goo.gl/forms/4rfaomufim

Leia mais

Conceitos Básicos de Informática. Antônio Maurício Medeiros Alves

Conceitos Básicos de Informática. Antônio Maurício Medeiros Alves Conceitos Básicos de Informática Antônio Maurício Medeiros Alves Objetivo do Material Esse material tem como objetivo apresentar alguns conceitos básicos de informática, para que os alunos possam se familiarizar

Leia mais

FTIN Formação Técnica em Informática Módulo de Administração de Servidores de Rede AULA 03. Prof. Gabriel Silva

FTIN Formação Técnica em Informática Módulo de Administração de Servidores de Rede AULA 03. Prof. Gabriel Silva FTIN Formação Técnica em Informática Módulo de Administração de Servidores de Rede AULA 03 Prof. Gabriel Silva Temas da Aula de Hoje: Servidores Linux. Conceitos Básicos do Linux. Instalando Servidor Linux.

Leia mais

ROM-BIOS Inicialização Sistemas de Arquivos Formatação

ROM-BIOS Inicialização Sistemas de Arquivos Formatação ROM-BIOS Inicialização Sistemas de Arquivos Formatação 1 ROM-BIOS ROM-BIOS Basic Input/Output System (Sistema Básico de Entrada/Saída). O termo é incorretamente conhecido como: Basic Integrated Operating

Leia mais

Usuários. Aplicativos e programas dos usuários. Kernel gerenciamento de processos, memória, sistema de arquivos, I/O, etc.

Usuários. Aplicativos e programas dos usuários. Kernel gerenciamento de processos, memória, sistema de arquivos, I/O, etc. 1 1.0 Kernel O kernel (núcleo) representa o coração do Sistema Operacional. Atribuições do kernel: - gerenciamento dos arquivos em disco; - inicializar programas e executá-los; - alocar e gerenciar memória

Leia mais

Sistemas Operacionais. Alexandre Meslin meslin@inf.puc-rio.br

Sistemas Operacionais. Alexandre Meslin meslin@inf.puc-rio.br Sistemas Operacionais Alexandre Meslin meslin@inf.puc-rio.br Ementa Apresentação do curso Cap1 - Visão Geral Cap2 - Conceitos de Hardware e Software Cap3 - Concorrência Cap4 - Estrutura do Sistema Operacional

Leia mais

Figura 01 Kernel de um Sistema Operacional

Figura 01 Kernel de um Sistema Operacional 01 INTRODUÇÃO 1.5 ESTRUTURA DOS SISTEMAS OPERACIONAIS O Sistema Operacional é formado por um Conjunto de rotinas (denominado de núcleo do sistema ou kernel) que oferece serviços aos usuários e suas aplicações

Leia mais

1 http://www.li.facens.br/eletronica

1 http://www.li.facens.br/eletronica UNIX...2 1. HISTÓRICO...2 2. CARACTERÍSTICAS...3 3. ESTRUTURA DO SISTEMA...4 HARDWARE...4 KERNEL...4 BIBLIOTECA...4 UTILITÁRIOS...5 4. PROCESSO...5 5. SISTEMAS DE ARQUIVOS...6 ARQUIVOS E PATHNAMES...8

Leia mais

SISTEMA OPERACIONAL & SOFTWARE LIVRE

SISTEMA OPERACIONAL & SOFTWARE LIVRE Curso Técnico em Redes de Computadores Disciplina de Sistemas Operacionais Livres SISTEMA OPERACIONAL & SOFTWARE LIVRE Professora: Juliana Cristina dos Santos E-mail: professora@julianacristina.com Site:

Leia mais

1º Estudo Dirigido. Capítulo 1 Introdução aos Sistemas Operacionais

1º Estudo Dirigido. Capítulo 1 Introdução aos Sistemas Operacionais 1º Estudo Dirigido Capítulo 1 Introdução aos Sistemas Operacionais 1. Defina um sistema operacional de uma forma conceitual correta, através de suas palavras. R: Sistemas Operacionais são programas de

Leia mais

Informática Instrumental

Informática Instrumental 1º PERÍODO.: GRADUAÇÃO EM REDES DE COMPUTADORES :. Madson Santos madsonsantos@gmail.com 2 Unidade I Unidade I Software 3 Software o é uma sentença escrita em uma linguagem de computador, para a qual existe

Leia mais

Principais Sistemas Operacionais. Prof. Fernando Nakayama de Queiroz

Principais Sistemas Operacionais. Prof. Fernando Nakayama de Queiroz Principais Sistemas Operacionais Prof. Fernando Nakayama de Queiroz Principais S.O. Unix Linux Windows Mac OS Microsoft Windows Criado por Bill Gates e Paul Allen em 1985. Sistema proprietário (pago).

Leia mais

FACULDADE DE TECNOLOGIA SENAC GOIÁS Gestão da Tecnologia da Informação. Daniel Augusto, Rodrigo Damasceno, Andrey Castro LINUX CENTOS

FACULDADE DE TECNOLOGIA SENAC GOIÁS Gestão da Tecnologia da Informação. Daniel Augusto, Rodrigo Damasceno, Andrey Castro LINUX CENTOS FACULDADE DE TECNOLOGIA SENAC GOIÁS Gestão da Tecnologia da Informação Daniel Augusto, Rodrigo Damasceno, Andrey Castro LINUX CENTOS Lucília Gomes Ribeiro GOIÂNIA, 2015 Daniel Augusto, Rodrigo Damasceno,

Leia mais