Buscar

FREENAS Apostila Técnica completa

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 307 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 307 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 307 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

FreeNAS 
[Apostila Técnica]
Autor: Danilo Perillo Chiacchio
Essa apostila é de propriedade intelectual do autor e somente deve ser divulgada 
com autorização do mesmo. A Escola Linux tem autorização para distribuir essa 
apostila através do curso “FreeNAS: Configuração e Administração: 14 HORAS”.
Sumário:
Tópico 1: Introdução ao FreeNAS........................................................................................................4
1.1 O que é o FreeNAS?..................................................................................................................4
1.2 Porque devo utilizar o FreeNAS?..............................................................................................7
1.3 Overview sobre o sistema de arquivos ZFS...............................................................................8
1.4 Overview sobre NAS (Network-Attached Storage)................................................................12
1.5 Overview sobre SAN (Storage Area Network)........................................................................14
1.6 Requerimentos de Hardware para Executar o FreeNAS..........................................................16
1.7 Realizando o download do FreeNAS.......................................................................................17
1.8 Preparando o ambiente de Laboratório com VirtualBox:........................................................18
1.8.1 Instalação do VirtualBox em ambiente Linux..................................................................18
1.8.2 Instalação do VirtualBox em ambiente Windows............................................................23
1.9 Instalação do FreeNAS............................................................................................................32
1.9.1 Notas sobre Upgrading para novas versões.....................................................................47
1.10 Configurações iniciais providas pelo Wizard de Instalação..................................................69
1.11 Overview da interface de gerenciamento web.......................................................................73
Tópico 2: Administração do FreeNAS...............................................................................................81
2.1 Administração do Sistema.......................................................................................................81
2.1.1 Habilitando HTTPS para gerenciamento web, Configurando servidor NTP, Ajustando 
banner MOTD, Configurando SMTP server para envio de notificações..................................81
2.2 Administração de Rede............................................................................................................90
2.2.1 Ajustando hostname, nome de domínio, Servidores DNS, Roteamento Estático............95
2.3 Administração do Storage........................................................................................................98
2.3.1 Criação de volumes (ZFS Volume em ZFS Pools)..........................................................98
2.3.2 Criação de Datasets (ZFS Dataset)................................................................................100
2.3.3 Criação de Zvol (Volume ZFS)......................................................................................100
2.4 Backup das Configurações.....................................................................................................102
2.5 Restore das Configurações.....................................................................................................103
Tópico 3: Trabalhando com Replicação e Compartilhamento de Volumes......................................105
3.1 Trabalhando com Snapshots (Criando, gerenciando e clonando)..........................................105
3.2 Replicação de dados localmente e remotamente...................................................................124
3.3 Trabalhando com compartilhamentos NFS............................................................................141
3.4 Trabalhando com WebDAV Shares........................................................................................148
3.5 Trabalhando com compartilhamentos CIFS/SMB.................................................................152
3.6 Trabalhando com iSCSI targets.............................................................................................165
Tópico 4: Administração Avançada do FreeNAS.............................................................................175
4.1 Configurações de rede avançada, agregação de VLANS via CLI e interface web................175
4.2 Gerenciando zfs/zpool via CLI..............................................................................................191
4.3 Configuração de serviços como integração com Serviços de Diretório, SSH, FTP, Rsync, 
TFTP, DDNS e desabilitando serviços desnecessários................................................................214
4.4 Realizando tuning no sistema de arquivos ZFS.....................................................................231
4.5 Laboratório Adicional:...........................................................................................................233
4.5.1 Criando volume iSCSI e entregando para o Citrix XenServer......................................234
4.5.2 Criando volume iSCSI e entregando para o Vmware ESXi...........................................243
4.5.3 Criando volume iSCSI e entregando para Sistemas Windows Server...........................247
4.5.4 Criando volume iSCSI e entregando para Sistemas Linux (Debian/CentOS)...............250
2
4.5.5 Criando volume iSCSI e entregando para Sistemas BSD (FreeBSD)...........................252
4.6 Entendendo o Banco de Dados do FreeNAS.........................................................................254
Tópico 5: Aulas Extras.....................................................................................................................256
5.1 Instalação do FreeNAS 9.10 e Upgrade do FreeNAS 9.3 para 9.10......................................256
5.2 Overview sobre Plugins para o FreeNAS..............................................................................257
5.3 Instalação de Plugins no FreeNAS (bacula-sd).....................................................................259
5.4 Gerenciamento dos Plugins para o FreeNAS........................................................................260
5.5 Entendendo em mais detalhes o que é um Jail.......................................................................261
5.6 Laboratório: Integração do FreeNAS com a solução de backup Bacula...............................266
5.7 Provendo compartilhamentos para clientes Macintosh (MAC OS X) via AFP (Apple File 
Protocol/Apple File Shares).........................................................................................................277
5.7.1 Configurando o serviço Time Machine no MAC OS X para backup dos dados do usuário
para o Servidor FreeNAS........................................................................................................289
5.8 Laboratório: Trabalhando com Encriptação de Volumes.......................................................295
Referências.......................................................................................................................................307
3
Tópico 1: Introdução ao FreeNAS
1.1 O que é o FreeNAS?
Basicamente, o FreeNAS é uma solução Free/Open Source baseada no sistema operacional
FreeBSD utilizada para armazenamento de dados em rede, ou seja, um NAS (Network-Attached
Storage).
Foi desenvolvido em 2005 por Olivier Cochard-Labbé. Inicialmente, este (Olivier) pretendia apenas
desenvolver uma solução de armazenamento de dados em rede onde pudesse utilizar em seus
antigos computadores. Com esse simples propósito surgiu o FreeNAS:"In mid 2005, I wanted to transform one of my old PCs into a NAS server for my home... I didn't
find an open source project that filled my needs so I chose to build my own... I never imagined that
my little customized M0n0wall to NAS would become so famous."
-Olivier Cochard-Labbé (Founder of the FreeNAS Project) *source is Feb 2010 BSD magazine
article
Alguns anos após seu desenvolvimento, mais precisamente em meados de 2009 o então líder do
projeto do FreeNAS, Volker Theile, anunciou que o projeto do FreeNAS não mais seria utilizando
como base o sistema operacional FreeBSD. O FreeNAS seria então portado para o sistema Debian.
A noticia abalou a grande comunidade do FreeBSD, que até então estava absorvendo de maneira
aceitável o projeto do FreeNAS e o utilizando cada vez mais. Além de tudo, sendo portado para o
Debian, o FreeNAS iria perder o suporte nativo ao sistema de arquivos ZFS.
Como um bom utilizador e colaborador do projeto do FreeBSD, a iXsystems moveu-se para evitar o
fim do FreeNAS tendo como base sistemas BSD. No final do ano de 2009, Matt Olander em nome
da iXsystems se ofereceu para manter o FreeNAS em BSD (a pedido de Olivier). A oferta foi
gentilmente aceita por Volker e no íncio de 2010 o time da iXsystems começou a melhorar ainda
mais a ferramenta, reformulando e potencializando toda interface web e adicionando recursos nas
versões mais recentes.
"As long-time users and advocates of FreeNAS, I felt that it was important to both the FreeBSD and
FreeNAS communities to keep the project moving forward. FreeNAS served as a rock-solid
fileserver at iXsystems since it's initial release and we wanted to continue using it as well as
sharing any innovations we made with the rest of the FreeNAS community."
-Matt Olander
(iXsystems CTO)
4
A seguir, é possível acompanhar a evolução cronológica do FreeNAS desde seu lançamento até os
dias de hoje:
[2005]
Thanks to the efforts of Olivier Cochard-Labbe, FreeNAS is born! The first alpha version of
FreeNAS is available as an ISO file on SourceForge.
[2006]
FreeNAS is a winner of the VMware Ultimate Virtual Appliance.
[2007]
FreeNAS has been named as one of the 2007 Best of Open Source Software winners by the
InfoWorld Test Center.
[2009]
Volker Theile, announces he is no longer capable to maintain the project on FreeBSD. Plans to port
FreeNAS over to Debian.
[2010]
iXsystems took over development began the long road to re-working and modernizing FreeNAS.
[2011]
May 2011: FreeNAS 8.0 is released. This is a completely re-written codebase with a new WebGUI
based off of Django and Dojo toolkit.
[2012]
FreeNAS 8.2 is released. The team implemented a plug-in system for FreeNAS based on PBI's and
FreeBSD jails.
[2013]
FreeNAS 8.3 is released. The team incorporated ZFS Encryption into the latest version, making
FreeNAS one of the only Open Source projects which do so.
5
[2014]
The team released FreeNAS 9.2 and 9.3 with an all new volume manager, new virtualization
features, and a setup wizard. This year also marked the end of UFS and 32-bit support.
A figura a seguir demonstra graficamente a evolução do FreeNAS:
Atualmente a versão estável no FreeNAS é a 9.3, disponível tanto em 32 quanto 64 bits. A versão
10 do FreeNAS já está em desenvolvimento pelo time da iXsystems.
6
1.2 Porque devo utilizar o FreeNAS?
As razões para utilizar o FreeNAS são muitas, mas iremos destacar as principais:
• Ponto central de armazenamento de dados em uma rede de computadores;
• Melhor e maior gestão dos dados, permissões, backups, redundância;
• Suporte ao principais protocolos de mercado (RFC); número muito grande de integrações 
possíveis;
• Interface de gerenciamento web de fácil entendimento;
• CLI (Command Line Interface) disponível;
• Custo/benefício atraente;
• Possibilidade de utilizar hardware já existente;
• Farta documentação disponível;
• Sistema estável, baseado no BSD FreeBSD.
Conforme mencionado anteriormemte, o FreeNAS é baseado em um sistema altamente seguro e
estável da família BSD, o FreeBSD. Porém, é importante ressaltar que o FreeNAS não é uma
solução de segurança e sim uma solução para armazenamento dos dados em rede. Por isso, este
depende de várias ações de segurança para torna-lo mais seguro, como por exemplo, proteger a
comunicação deste por um firewall de rede caso necessário.
Apesar de não ser uma solução de segurança, o FreeNAS possui suporte a criptografia dos dados
com fator de 256 bits o que proporciona confidencialidade aos dados armazenados. Com isso,
mesmo que os discos sejam fisicamente removidos do FreeNAS os dados estarão ilegiveis para
pessoas não autorizadas. Porém, é importante ressaltar que isso não protege os dados em trânsito.
Esquemas de segurança a nível de rede devem ser planejados/implementados com objetivo de
manter segura a comunicação do FreeNAS com seus hosts clientes. 
Além disso, o FreeNAS possui suporte a um número muito grande de “third-party plugins” o que
aumemta ainda mais a gama de recursos. Por exemplo, um dos plugins disponíveis pode
transformar o FreeNAS em um MediaServer para rede.
A versão 9.2 do FreeNAS possui suporte para processadores 32 bits, além do suporte a
processadores 64 bits.
7
1.3 Overview sobre o sistema de arquivos ZFS
O sistema de arquivos ZFS (seu significado original era Zettabyte File System) foi desenvolvido
originalmente pela Sun Microsystems para seu sistema operacional Unix (Solaris/Open Solaris). O
código fonte do ZFS está sob licença CDDL (Common Development and Distribution License).
Para mais detalhes sobre esse método de licenciamento, o seguinte link está disponível:
• https://opensource.org/licenses/CDDL-1.0 
Com base no ZFS, o projeto OpenZFS foi criado. Para entender mais sobre o ZFS, podemos
destacar três características e/ou principais objetivos do seu design:
• Integridade dos Dados: Todos os dados gravados em um sistema de arquivos ZFS possuem
um checksum. Quando um dado está sendo gravado (write), o checksum é calculado e
gravado junto com ele. Posteriormente, quando esse dado é lido (read), o checksum é
calculado novamente. Se as somas de verificação (resultado do checksum) não
correspondem, um erro foi detectado e o próprio sistema de arquivos (ZFS) tentará corrigi-
los automaticamente quando a redundância de dados está disponível;
• Armazenamento em Pool: Dispositivos físicos de armazenamento de dados (HD's, por
exemplo) são adicionados a um pool e o espaço de armazenamento resultante é alocado para
um pool compartilhamento (“shared pool”). Esse espaço estará disponível para ser utilizado
por qualquer outro sistema de arquivos e pode ser aumentado através da adição e novos
dispositivos de armazenamento ao pool;
• Performance: O sistema de arquivos ZFS contém múltiplos esquemas de cache de dados o
que proporcionado um ganho muito grande em performance. O esquema de cache utilizado
é o ARC (Advanced Replacement Cache) ao invés do tradicional LRU (Least Recently
Used). Basicamente, um cache LRU é uma lista simples de itens no cache, ordenados pelos
itens mais utilizados (com base na frequência de utilização). Novos itens são sempre
inseridos no topo da lista e, quando a lista fica cheia, os itens do final da fila são descartados
de forma automática. Já um cache ARC é mais complexo e completo, pois possui quarto
listas: MRU (Most Recently Used), MFU (Most Frequently Used) além de uma lista “ghost”
(fantasma) para cada um. Com a utilização das listas fantasmas de cache, o ZFS direciona
itens pouco utilizados ou ocasionalmente utilizamos, deixando as listas MRU e MFU com o
que realmente é utilizado com muita frequência. Observe que, os itens que são realmente
utilizados com frequência sãopriorizados na fila MFU e os itens que são realmente usados
recentemente ficam na fila MRU. Observe que para o ZFS existe uma grande diferença no
que foi recentemente utilizado e o que é utilizado com muita frequência. Esse cache ARC é
armazenado na memória ram. Existe ainda um segundo nível de cache, armazenado em
disco chamado L2ARC. Esse nível de cache é de utilização opcional mas pode ser muito útil
quando utiliza-se o recurso de deduplicação de dados.
8
ZFS é um sistema de arquivos fundamentalmente diferente porque é mais do que apenas um sistema
de arquivos. Conforme mencionado anteriormente, o ZFS é capaz de combinar funções/recursos de
sistemas de arquivos e gerenciamento de volumes, habilitando a possibilidade de expandir
facilmente o espaço de armazenamento. Isso torna qualquer solução ou ambiente flexível e
escalável sem muitos esforços/planejamentos. Combinando também funções tradicionalmente
separadas, o ZFS é capaz de ultrapassar as limitações anteriores que impediam o crescimento de
grupos RAID. Cada dispositivo superior em um zpool é chamado de “vdev” que pode ser tanto um
disco quanto uma combinação RAID.
Cada ZFS File Systems (também chamados tecnicamente de datasets) tem acesso compartilhado ao
pool de armazenamento. Como os blocos são alocados a partir do pool de armazenamento,
naturalmente o espaço livre do pool vai dimunuindo de maneira gradativa, conforme a utilização.
Essa abordagem ou design evita a armadilha comum com amplo particionamento onde o espaço
livre torna-se fragmentado em todas as partições.
Na figura a seguir podemos visualizar a estrutura do sistema de arquivos ZFS:
Como podemos observar até o momento, o ZFS é um sistema de arquivos robusto e com muitos
recursos possíveis de utilização de forma nativa. Para entender melhor os recursos e terminologia
envolvida, iremos passar mais detalhes a seguir:
• zpool: Um zpool ou storage pool é a estrutura principal do sistema de arquivos ZFS.
Basicamente, um ZFS Pool ou zpool é composto por vários “vdevs” que podem ser discos
únicos ou grupos de discos na qual os dados são armazenados. Um pool pode ser utilizado
para criação de um ou vários sistemas de arquivos (ZFS datasets) ou dispositivos de bloco
(ZFS volumes/blocks). Ambos compartilham do espaço livre do ZFS pool. Cada ZFS pool é
9
único e identificado por um nome e GUID;
• vdev types: Disco único ou grupo de discos que formam um ZFS pool, utilizado para o
armazenamento dos dados. Quando vários vdevs são utilizados o sistema de arquivos ZFS
espalha a informação entre eles para aumentar a performance;
• ARC: Nível de cache primário utilizado pelo sistema de arquivo ZFS (em memória RAM);
• L2ARC: Nível de cache secundário utilizado pelo sistema de arquivos ZFS (em disco);
• Copy-On-Write (COW): Ao contrário de um sistema de arquivos tradicional, quando os
dados são sobrescritos no ZFS, os novos dados são gravados em um bloco diferente em vez
de substituir os dados antigos diretamente. Somente após o término dessa operação é que os
dados serão atualizados no antigo local. Isso é muito importante, pois na ocorrência de uma
falha no sistema, todo conteúdo original do arquivo está intacto e a gravação incompleta é
descartada. Isso também significa que o ZFS não requer um “fsck” após um desligamento
inesperado e/ou incorreto do sistema;
• Dataset: Trata-se de um termo genérico para ZFS File System, volume, snapshot ou clone;
• File System: Geralmente, um ZFS dataset é mais utilizado como um/para um sistema de
arquivos. Como qualquer outro sistema de arquivos, o ZFS File System é montado sobre um
diretório e contem toda estrutura de diretórios, permissões, flags e outros metadados;
• Volume: Adicionalmente aos ZFS Datasets possíveis de criação, também podemos criar
ZFS Volumes que são basicamente dispositivos de bloco. Vários recursos também estão
disponíveis para ZFS Volumes como copy-on-write, snaphots, clones and checksumming.
Geralmente, outros sistemas de arquivos são utilizados sobre os Volumes ZFS, como
sistemas de arquivos para virtualização ou exportações iSCSI;
• Snapshot: Quando utilizado, mantém uma cópia fiel (somente leitura) de todos os blocos de
um dataset. Os novos dados são gravados em um “live file system”, mantendo os blocos
antigos intactos, ou seja, no snapshot temos o file system original e no live file system temos
qualquer alteração realizada nos dados após criação do snapshot;
• Clone: Basicamente um clone é uma cópia passivel de escrita de um snapshot, permitindo
que seja criado um novo dataset com base em um ZFS dataset existente, por exemplo;
• Checksum: Em cada bloco alocado é realizado um checksum. Isso permite que o sistema de
arquivos ZFS detecte corrupções e tente se recuperar a partir de dados de redundância
disponíveis;
• Compression: Cada ZFS dataset pode utilizar compressão para os dados onde por padrão
esse recursos vem desativado. É interessante observar que com a utilização da compressão
uma redução no consumo de espaço irá ocorrer. Além disso, o rendimento de leitura e escrita
(read/write) será aumentado, pois menos blocos serão utilizados. Alguns algoritimos de
10
compressão utilizados são: LZ4, LZJB, GZIP e ZLE;
• Copies: Quando definido maior que 1, o recurso de “copies” instrui o sistema de arquivos
ZFS manter múltiplas cópias de cada bloco no ZFS Dataset (File System) ou no ZFS
Volume. Esse recurso está diretamente ligado ao “Copy-On-Write” mencionado
anteriormente e trata-se da forma mais básica de redundância;
• Deduplication: Através da utilização de checksums em cada bloco é possível detectar
blocos duplicados. Para detectar blocos duplicados, uma tabela chamada DDT é mantido em
memória RAM. Nessa tabela são armazenados a lista com checksum de todos blocos únicos,
a sua localização e referência de contagem. Dessa forma, quando um novo dado é gravado o
checksum é calculado e comparado com a tabela. Se for encontrada correspondência, o
bloco existente será utilizado;
• Scrub: Ao invés do fsck utilizado para checagem de consistência em alguns sistemas de
arquivos, o ZFS utiliza o scrub. O scrub realiza a leitura de todos os blocos armazenados no
pool e verifica cada checksum e os compara com o checksum gravado no metadado, que em
teória são confiáveis. Sendo executado de forma periodica, na ocorrência de problemas estes
são corrigidos antes mesmo que aconteçam. È recomendado a execução do scrub a cada três
menos ou menos;
• Dataset Quota: O ZFS prove um recurso muito rápido e preciso de quotas de disco nos
níveis de dataset, usuário e grupo. A utilização de quotas não está disponíveis em volumes
(ZFS Volumes);
• Resilver: Quando um disco falha e é substituído, o novo disco precisa ser escrito com as
informações do disco com falha. Através das informações de paridade distribuídas entre os
demais discos, os dados são escritos no novo disco. Esse processo é conhecido como
“resilvering”;
• Online: Trata-se de um status para indicar o correto funcionamento do pool ou vdevs
(dispositivos de armazenamento);
• Offline: Trata-se de um status para indicar a falha individual de algum dispositivo de
armazenamento utilizado em um pool;
• Degraded: Trata-se de um status utilizado para indicar que temos algum dispositivo com
falha dentro de um pool, mas o mesmo ainda está em funcionamento devido as técnicas de
redundância utilizadas;
• Faulted: Um pool ou vdev com esse status não está operacional e os dados não podem ser
acessados. Um pool ou vdev entra fica om status de “faulted” quando o número de
dispositivos que podem falhar ultrapassa o limite suportado pela tipo/nível de redundância
utilizada. Se por ventura algum disco puder ser conectado novamente ao pool e este voltar
para o status“online” os dados poderão ser novamente acessados. Caso contrário, todo
11
conteúdo do pool será PERDIDO e os dados deverão ser restaurados através de um
BACKUP.
Conforme visto anteriormente, o sistema de arquivos é extremamente poderoso e por isso é
utilizado no FreeNAS. O ZFS é um sistema de arquivos verdadeiramente de próxima geração que
elimina a grande maioria se não todas as deficiências encontradas em sistemas de arquivos legados
e dispositivos de hardwarde RAID. Após usar o ZFS, você corre o risco de não querer saber de
outro sistema de arquivos!
1.4 Overview sobre NAS (Network-Attached Storage)
Os dados são ativos cruciais para qualquer tipo de empresa nos dias de hoje. Sem acesso aos seus
dados as empresas podem não ser capazes de fornecer aos seus clientes o nível de serviço desejado.
Dessa forma, sem sombra de dúvidas, os dados que uma empresa possui são seu bem mais valiozo e
deve ser preservado.
Um dispositivo NAS, acrônimo para Network Attached Storage é um dispositivo destinado ao
armazenamento de dados conectado a uma rede de computadores. Dessa forma, este possibilita a
centralização das informações, melhora o gerenciamento de acesso as informações por parte dos
usuários e facilita rotinas de backup e restauração de dados. Os dispositivos NAS são flexíveis e de
expansão horizontal, ou seja, à medida que você precisar de mais armazenamento, pode adicionar
ao que você já tem. 
Atualmente, pode ser implementado tanto via software (como é o caso do FreeNAS) quanto via
hardware, na forma de appliances com sistema operacional embarcado. Inicialmente, um NAS era
utilizado por usuários domésticos e pequenas empresas, mas hoje qualquer nível de empresa já
utiliza um NAS como ponto central para o armazenamento dos dados ou para armazenamento de
backups. O fato de ser utilizado inicialmente por pequenas empresas se deve aos seguintes motivos:
• Equipamentos simples de operar, dispensando a presença de um profissional de TI
extremamente qualificado e dedicado para tal função;
• Menor custo (relação custo/benefício super atraente).
A grande maioria dos sistemas NAS possui suporte a um grande número de protocolos para o
compartilhamento de arquivos, como NFS, SMB/CIFS e AFP (Apple Filing Protocol). Dessa forma,
um NAS pode atender diversos usuários em redes heterogêneas, não se prendendo a determinados
tipos de clientes. Também pode conter um ou vários discos e prover suporte a alguns níveis de
RAID para aumentar a segurança/performance no acesso aos dados.
Além disso, um NAS pode operar como um iSCSI target, entregando blocos iSCSI para clientes
12
iSCSI. Muito útil onde deseja-se utilizar um NAS em conjunto com um sistema de virtualização. 
Para exemplificar, as figuras a seguir tem por objetivo demonstrar alguns modelos de NAS, desde
modelos com poucos discos até modelos com vários discos:
13
Existem várias outras arquiteturas para o armazenamento de dados, como DAS (Direct-Attached
Storage) e SAN (Storage Area Network). De forma básica, um DAS é uma extensão de
armazenamento de dados para um servidor onde geralmente esse dispositivo é fisicamente
conectado nesse servidor, e não via rede como um NAS. Além disso, por estar conectado apenas em
um servidor, o espaço de armazenamento não pode ser compartilhado para outro host. Já uma SAN,
apesar de também ter a possibilidade de ser ligada em rede, prove apenas armazenamento a nível de
bloco para os clientes (block-level) ao passo que um NAS prove armazenamento a nível de arquivos
(file-level) – apesar de alguns modelos de NAS poder também armazenamento a nível de bloco.
Mais detalhes sobre uma SAN serão abordados no tópico a seguir.
1.5 Overview sobre SAN (Storage Area Network)
SAN é o acrônimo para Storage Area Network. Trata-se de uma rede que proporciona acesso a
armazenamento de dados a nível de blocos (block-level).
Com o passar do tempo e por questões de desempenho e segurança, muitas empresas criam especies
de “ilhas” ou segmentos de rede isolados ou protegidos onde são armazenados os equipamentos de
armazenamento de dados, geralmente storages. Geralmente, em uma SAN os dados não são
acessíveis diretamente pelos usuários. Um ou vários servidores possuem conexão direta com a SAN
e o acesso aos dados pelos clientes são realizados por intermédio destes (servidores). Isso aumenta a
segurança e performance no acesso aos dados.
Os storages são dispositivos de hardware, com sistema operacional embarcado e possuem recursos
semelhantes ao encontrados em um NAS, possuem vários discos e suporte a esquemas complexos
de RAID para proteção dos dados e aumento de performance. Porém, originalmente trabalham
provendo armazenamento em forma de bloco. Alguns protocolos utilizados em uma SAN são:
• Fibre Channel
• iSCSI
• ATA over Ethernet (AoE)
• HyperSCSI
De forma a comparar sistemas NAS com SAN, um NAS provê armazenamento de dados a nível de
File System (file-level), onde em contraste uma SAN prove armazenamento de dados a nível de
bloco (block-level). Porém, existem implementações híbridas onde podemos utilizar recursos tanto
de um NAS quanto os de um SAN para atender necessidades diversas.
Para exemplificar, as figuras a seguir tem por objetivo demonstrar alguns modelos de storage, desde
modelos com poucos discos até modelos com vários discos:
14
15
1.6 Requerimentos de Hardware para Executar o FreeNAS
Conforme já mencionado, o FreeNAS é baseado no FreeBSD. Dessa forma, os hardwares
suportados na instalação do FreeBSD 9.3 são os mesmos suportados pelo FreeNAS 9.3. Mais
detalhes podem na Hardware Compatibility List através do link a seguir:
• https://www.freebsd.org/releases/9.3R/hardware.html 
A partir da versão 9.2, o FreeNAS estava oferecendo suporte a processadores 32 e 64 bits. Porém,
na versão estável atual 9.3 somente a versão 64 bits está disponível. Dessa forma, um processador
multicore de 64 bits é extremamente recomendado.
A quantidade de memória ram a ser utilizada pode variar dependendo de cada ambiente e dos
recursos que serão habilitados pelo FreeNAS. Porém, o mínimo recomendado são 8 GB.
Algumas considerações importantes:
• Se é planejado a utilização do recurso de deduplicação de dados, serão necessários 5 GB a
mais por TB;
• Se é planejado a utilização com Active Directory com muitos usuários, serão necessários 2
GB a mais para utilização do cache interno do daemom winbind;
• Se é planejado a utilização do phpVirtualBox, a quantidade de memória ram deve ser
aumentada com base no número de maquinas virtuais que serão executadas;
• Se é planejado a utilizaçaõ de volumes iSCSI, utilizar 16 GB no mínimo. Porém, para ter um
bom desempenho é recomendado utilização de 32 GB;
• Se é planejado a instalação do FreeNAS em uma estação “diskless”, é recomendado
desabilitar o compartilhamento de memória para a placa de vídeo na BIOS do sistema.
No tocante a disco, o FreeNAS pode ser instalado tanto em um disco rígido (SATA, iSCSI, SSD,
entre outros) quanto em alguma mídia compactada de armazenamento, como um USB flash por
exemplo.
O valor de espaço em disco mínimo para instalação do FreeNAS são 4 GB. Porém, algumas
considerações são importantes:
• O tamanho mínimo é de 4 GB, onde esse tamanho é capaz de armazenar o sistema
operacional e dois ambientes de boot. Porém, cada atualização cria um novo ambiente de
boot onde, obviamente consome mais espaço em disco. Dessa forma, é recomendado
utilização de 8 a 16 GB de espaço em disco;
• Considere gerenciar os ambientes de boot, de modo a excluir ambientes desnecessários e/ou
16
não mais utilizados. Isso ajuda na redução de espaço em disco;
• Se for utilizar uma mídia USB, considere utilizar o sistema de arquivos ZFSna mesma;
• Em alguns casos quando da utilização de mídias USB, o suporte ao USB 3.0 é desabilitado
por padrão e o boot não será possível para instalação do FreeNAS. Verifique para desabilitar
o USB 3.0 na BIOS ou verifique se seu hardware é devidamente compatível antes de
prosseguir.
Dessa forma, além do que foi mecionado para instalação do FreeNAS, é recomendado pelo menos
um disco diretamente conectado para ser utilizado para o armazenamento dos dados.
No tocante a rede, muitos drivers são suportados pelo FreeNAS, seguindo a linha de suporte no
FreeBSD. Uma interface de rede gigabit é recomendada. Porém, para maior performance e
redundância é interessante utilizar duas ou mais interfaces de rede. Dessa forma podemos utilizar a
agregação das interfaces para maior desempenho e ao mesmo tempo ter redundância pois caso
alguma interface de rede venha a falhar, outra interface pode atender todo sistema sem maiores
problemas.
1.7 Realizando o download do FreeNAS
O FreeNAS é disponibilizado em formato ISO onde o download da versão estável atual pode ser
encontrada na seguinte URL:
http://www.freenas.org/download-freenas-release.html 
Observe que, além do download da versão de instalação do FreeNAS, é possível realizar o
download de um arquivo destinado ao upgrade do FreeNAS:
17
Para realizar o download de outras versões do FreeNAS, o link a seguir pode ser utilizado:
http://iso.cdn.freenas.org/ 
1.8 Preparando o ambiente de Laboratório com VirtualBox:
1.8.1 Instalação do VirtualBox em ambiente Linux1.8.1 Instalação do VirtualBox em ambiente Linux
Introdução ao VirtualBox
O VirtualBox é um poderoso sistema de virtualização com suporte as arquiteturas x86 e
AMD64/Intel64 voltado tanto para uso corporativo quanto para uso doméstico. Trata-se de uma
solução de virtualização acessível e que seu código fonte está disponível sob licenciamento GPL
(General Public License) versão 2.
Atualmente, o VirtualBox pode ser instalado em uma grande variedade de sistemas operacionais
como Linux, Windows, Machintosh e Solaris e suporta também um grande número de sistemas
operacionais “guest”, ou seja, sistemas operacionais que podem ser virtualizados com o VirtualBox.
São eles: Windows (NT 4.0, Windows 2000, XP, 2003 Server, Vista, Wndows 7, Windows 8,
Windows 10, Linux (Kernels 2.4, 2.6. 3.x e 4.x), Solaris/OpenSolaris, OS/2 e sistemas BSD.
18
Atualmente, o VirtualBox está na versão 5.0 e está versão será utilizada em nossos laborátorios.
Para maiores informações do produto, podemos consultar o site oficial:
• https://www.virtualbox.org
Processo de Instalação
O método escolhido para instalação do VirtualBox será via pacote pré-compilado utilizando para
isso o repositório oficial do VirtualBox.
Primeiramente, vamos editar o arquivo de configuração de repositórios /etc/apt/sources.list e inserir
no final do arquivo o repositório do VirtualBox:
root@tux00:/tmp# vim /etc/apt/sources.list
# Inserir a linha seguinte no final do arquivo:
deb http://download.virtualbox.org/virtualbox/debian jessie contrib
Após inserir o repositório do VirtualBox, salvar o arquivo e adicionar a chave do repositório:
# wget -q https://www.virtualbox.org/download/oracle_vbox.asc -O- | sudo apt-key add -
Atualizar a lista de pacotes do sistema e instalar o pacote do VirtualBox:
# aptitude update
# aptitude install virtualbox-5.0
Alguns pacotes adicionais serão necessários (dependências) e serão questionados quanto a sua
instalação. Basta confirmar a instalação:
root@tux00:/tmp# aptitude install virtualbox-5.0
The following NEW packages will be installed:
 dkms{a} linux-headers-amd64{a} virtualbox-5.0 
0 packages upgraded, 3 newly installed, 0 to remove and 3 not upgraded.
Need to get 64.1 MB/64.2 MB of archives. After unpacking 158 MB will be used.
Do you want to continue? [Y/n/?] Y
Basta aguardar alguns poucos minutos que a instalação será concluída. Após término da instalação,
basta executar o VirtualBox a partir do menu gráfico do sistema operacional. Na figura a seguir é
possível visualizar a tela inicial do VirtualBox:
19
20
Após instalação do VirtualBox, é necessário e recomendado instalação do pacote chamado
“Extension Pack”. Esse pacote, quando instalado, possibilita a utilização de dispositivos USB 2.0 e
3.0 nas máquinas virtuais. Além disso, os recursos de VirtualBox RDP e PXE boot estarão
disponíveis também. Para instalação, devemos realizar o download do package a partir do seguinte
link:
• http://download.virtualbox.org/virtualbox/5.0.14/Oracle_VM_VirtualBox_Extension_Pack-
5.0.14-105127.vbox-extpack 
Após download do arquivo, precisamos instalar o mesmo no VirtualBox. Para isso, execute o
VirtualBox, acesse o menu File → Preferences → Extensions → E clique no botão “Adds New
Package”. Selecione o “Extension Package” para que este seja adicionado ao sistema. As figuras a
seguir irão ilustrar o processo:
21
22
Pronto! O VirtualBox está pronto para utilização e as máquinas vituais já podem ser criadas.
1.8.2 Instalação do VirtualBox em ambiente Windows1.8.2 Instalação do VirtualBox em ambiente Windows
Processo de Instalação
Para instalação do VirtualBox em ambiente Windows é necessário realizar o download do
executável do programa, disponível no seguinte link:
• http://download.virtualbox.org/virtualbox/5.0.14/VirtualBox-5.0.14-105127-Win.exe 
Após realizar o download, basta executar o arquivo para que o processo de instalação seja iniciado.
Nas figuras a seguir será possível observar os passos para instalação do VirtualBox e criação de
uma VM:
23
24
25
26
27
28
Após instalação do VirtualBox, é necessário e recomendado instalação do pacote chamado
“Extension Pack”. Esse pacote, quando instalado, possibilita a utilização de dispositivos USB 2.0 e
3.0 nas máquinas virtuais. Além disso, os recursos de VirtualBox RDP e PXE boot estarão
disponíveis também. Após executar o VirtualBox pela primeira vez e detectado conexão com á
Internet, automáticamente será perguntando sobre a instalação do pacote:
29
30
31
Pronto! VirtualBox instalado com sucesso. Basta criar as VM's e iniciar a utilização.
1.9 Instalação do FreeNAS
Nesse ponto, vamos realizar a instalação do FreeNAS. Após realizar o download do FreeNAS,
vamos executar o VirtualBox e criar a máquina virtual a ser utilizada pelo FreeNAS.
As figuras a seguir irão demonstrar o processo de criação da máquina virtual (VM):
32
33
34
Após criação da máquina virtual e configuração da mesma para iniciar o processo de boot através 
do arquivo ISO de instalação do FreeNAS, iremos iniciar o processo de instalação.
As figuras a seguir irão demonstrar o processo de instalação do FreeNAS:
35
36
37
38
39
40
41
42
43
Vamos adicionar outra interface de rede em modo “Bridge” nas configurações da maquina virtual:
44
45
46
Após inserir as credênciais do usuário administrador, a página inicial da interface de gerenciamento 
web será exibida:
Nesse ponto a instalação do FreeNAS está concluída com sucesso!
1.9.1 Notas sobre Upgrading para novas versões1.9.1 Notas sobre Upgrading para novas versões
É possível fazer o upgrade do FreeNAS para novas versões sem a necessidade de reinstalar todo
sistema. Esse procedimento de upgrade pode ser realizado de duas maneiras:
• Através do arquivo ISO de instalação da nova versão que é desejada;
• Através da interface gráfica do FreeNAS, onde é necessário antes realizar o download do 
pacote de atualização .txz.
Muito Importante: Antes de iniciar o processo de atualização, verifique para qual versão do
FreeNAS asua versão atual/corrente permite ser atualizada. Isso é muito importante. Verifique o
arquivo “Release Notes” da versão em utilização e da nova versão pretendida para ter certeza de
que o processo desejado de upgrade é possível e pode ser realizado com segurança!
Sempre tenha backup dos dados mais importantes em outro local seguro e de fácil acesso.
A seguir, serão demonstradas ambas as maneiras de atualização. Para efeito de testes, iremos criar
uma nova máquina virtual com uma instalação do FreeNAS na versão 9.2 e atualiza-la para a versão
47
estável corrente, 9.3.
As figuras a seguir irão demonstrar o processo de instalação do FreeNAS 9.2 64 bits em uma nova 
máquina virtual, previamente criada:
48
49
50
51
Conforme é possível observar na figura anterior, o processo de instalação foi realizado com sucesso.
52
Antes de iniciar o processo de upgrade, é recomendado que:
• Seja realizado um backup das configurações do sistema atual (System → General → Save
Config). Armazene esse backup em um local seguro e de fácil acesso;
• Se os volumes estão utilizando criptografia, certifique-se de ter uma cópia da chave de
criptografia e da passphrase. Esses dados serão necessários para tornar os dados acessíveis
após o upgrade;
• Parar todos os serviços providos pelo FreeNAS, com objetivo de evitar problemas aos dados
armazenados;
• Verifique uma janela para fazer o upgrade, tendo como preferência horários de baixa
utilização. Se possível, faça backup dos dados de extrema importância em um local seguro
para evitar possíveis falhas/imprevistos durante o upgrade;
• Certifique-se para que o processo de upgrade não seja interrompido por nenhum motivo, ou
o acesso aos dados poderá ser comprometido.
Para iniciar o processo de upgrade da versão 9.2 para versão 9.3 via arquivo ISO, basta reiniciar o
sistema e programa-lo para realizar o boot a partir do arquivo ISO de instalação do FreeNAS 9.3:
53
54
55
56
57
58
Observe que na figura a seguir estão sendo realizadas alterações no banco de dados para deixar o
banco de dados compatível com a nova versão do FreeNAS:
59
Pronto! Upgrade realizado com sucesso.
60
Para iniciar o processo de upgrade da versão 9.2 para versão 9.3 via interface gráfica utilizando o
pacote .txz, basta acessar a interface de gerenciamento web, menu System → Settings → Advanced
→ Firmware Update.
Antes de iniciar o processo de upgrade, é importante ressaltar que:
• Durante o processo de upgrade, será solicitado o caminho do arquivo de upgrade .txz, como
também o hash SHA256 do mesmo;
• A nova imagem do sistema será “aberta” (descompactada) em memória e será escrita no
disco posteriormente;
• Após finalizar o processo de escrita em disco, o sistema irá rebootar duas vezes (a primeira
para iniciar o sistema na nova versão e a segunda para converter o banco de dados na nova
versão).
As figuras a seguir tem como objetivo demonstrar o processo de upgrade do FreeNAS via GUI:
61
62
63
Observe que um erro foi encontrado no processo de upgrade. Analisando ao mesmo tempo a CLI do
64
servidor, temos um indício que o erro está relacionado a pouca quantidade de memória ram, uma
vez que o processo de upgrade utiliza a memória ram para descomprimir a imagem nova do
FreeNAS:
Após aumentar a quantidade de memória ram, repetir o processo de upgrade e aguardar alguns
minutos. O sistema será reiniciado de forma automática quando o processo for finalizado:
65
66
Conforme demonstra a figura anterior, o processo de atualização da base de dados foi realizado com
sucesso e o sistema será reiniciado novamente. Após isso, o sistema estará atualizado para a nova
versão do FreeNAS:
67
68
1.10 Configurações iniciais providas pelo Wizard de Instalação
Após o primeiro acesso a interface de gerenciamento web gráfica (GUI) do FreeNAS, um wizard de
configuração será automaticamente iniciado. O objetivo desse wizard é agilizar as configurações do 
FreeNAS para prover compartilhamentos para acesso via rede.
Vale ressaltar que a utilização desse wizard é opcional. Isso significa que podemos clicar na opção
“exit” para finaliza-lo e realizar as configurações necessarias posteriormente. Porém, iremos
demonstrar passo-a-passo das configurações providas pelo wizard. É importante ressaltar que a
máquina virtual que estamos usando para esse laboratório possui 2 discos rígidos virtuais, sendo 1
para a instalação do FreeNAS e 1 destinado para criação do ZFS Pool. A figura a seguir demonstra a
configuração de hardware da máquina virtual:
Nota: Caso existe apenas o disco utilizado para instalação do FreeNAS, uma mensagem poderá
ocorrer durante a tentativa da criação do ZFS Pool, pois o FreeNAS não detectou nenhum disco
disponível para poder criar o ZFS Pool. Basta adicionar mais 1 disco virtual e repetir o processo. As
figuras a seguir demonstram as configurações possíveis providas pelo wizard:
69
Observe na figura acima que o total do ZFS pool criado é o tamanho do disco adicional que estamos
utilizando na máquina virtual, cerca de 10 GB:
70
Observe na figura acima que estamos criando um compartilhamento NFS chamado “iso_files”.
71
Finalizado o wizard, basta clicar na opção “Confirm” para que as configurações sejam efetivadas no
sistema. Basta aguardar alguns segundos que o FreeNAS irá aplicar as configurações:
72
Novamente, é válido ressaltar que a execução do wizard de configuração é opcional. O mesmo pode
ser encerrado no primeiro logon na interface de gerenciamento web e as configurações podem ser
realizadas posteriormente de forma manual.
1.11 Overview da interface de gerenciamento web
O FreeNAS é uma ferramenta extremamente gerenciável. Podemos realizar o gerenciamento da
ferramenta tanto via interface gráfica (GUI – Graphical User Interface) ou via interface de comando
(CLI – Command Line Interface). Apesar de muitos administradores terem preferência pela
interface de linha de comando, a interface gráfica do FreeNAS é muito poderosa e intuitiva,
podendo ser extremamente útil na grande parte das configurações necessárias para operação do
FreeNAS.
A seguir, iremos demonstrar as principais opções da interface de gerenciamento web do FreeNAS,
dando ênfase aos menus de configuração e explicando basicamente o que pode ser feito em cada
menu.
Menu System: Observe que é possível navegar nas opções do menu “System” tanto na lateral
esquerda quanto nas opções demonstradas na aba na página principal:
73
Conforme podemos observar, dentro do menu “System” podemos realizar várias tarefas como:
74
• Ajuste de hostname
• Configuração de qual protocolo será utilizado para gerenciamento web da ferramenta
• Timezone, Linguagem e Keyboard Map
• Syslog server (Servidores de Log) e servidores NTP (Network Time Protocol)
• Selecionar/Gerenciar Imagens de boot do sistema
• Configuração de banner MOTD (Message Of The Day)
• Configuração para envio de alertas por e-mail para o admin da ferramenta
• Configurações do Kernel e scripts de inicialização do FreeNAS via Tunables
• Atualização do FreeNAS e gerenciamento de certificados digitais/CA
• Backup e restore das configurações do FreeNAS
• Entre outras opções.
Menu Account: Como o próprio nome sugere, esse menu é utilizado para o gerenciamento de
contas de usuário e grupos localmente no sistema, ou seja, cadastrados no próprio servidor
FreeNAS:
75
Menu Network: Esse menu é responsável pelas configurações relacionadas a rede do servidor
FreeNAS. Nesse menu, basicamente podemos configurar:
• Hostname e domínio
• Ipv4 e Ipv6 gateway
• Servidores DNS (Primário, secundário e terciário)
• IP do servidor Proxy HTTP
• Hostnamedatabase para resolução de nomes (/etc/hosts)
• Configuração de interfaces (Endereço IP, Mascara de Subrede)
• Agregação de interfaces de rede (Failover, FEC, LACP, Load Balance, Round Robin)
• Roteamento Estático e VLANs
• Entre outras opções:
76
Menu Storage: Esse menu é responsável pelas configurações de armazenamento do FreeNAS.
Nesse menu, podemos realizar as seguintes configurações:
• Volume Manager (Criação, Deleção de ZFS Pools);
• Importações de discos;
• Importação de volumes;
• Visualização dos discos existentes no sistema;
• Visualização dos volumes existentes no sistema;
• Tarefas de snapshot e replicação de dados;
• Agendamento de scrubs nos ZFS Pools;
• Vmware-Snaphots;
• Entre outras opções:
77
78
Menu Sharing: Menu responsável pelo gerenciamento dos compartilhamentos providos pelo
FreeNAS. Basicamente, podemos configurar:
• Compartilhamentos AFP (Apple Filing Protocol)
• Compartilhamentos NFS (Network File System)
• Compartilhamentos WebDAV
• Compartilhamentos CIFS
• Compartilhamentos de bloco via iSCSI
• Entre outras opções:
Menu Services: Menu responsável pelo gerenciamento de todos os serviços do FreeNAS. Nesse
menu podemos habilitar/desabilitar a execução de cada serviço e bem como alterar configurações
relacionadas a cada serviço:
79
Devido a facilidade de entendimento e navegação entre os menus, sugerimos que reserve um tempo
para acessar cada menu de configuração do FreeNAS para entender mais sobre a ferramenta.
Demonstramos os principais menus que poderão ser utilizados com maior frequência pelo
administrador, porém não se prenda somente nesses menus, estude os demais pois poderá ser útil!
80
Tópico 2: Administração do FreeNAS
2.1 Administração do Sistema
Conforme foi possível visualizar no tópico anterior, o FreeNAS é uma poderosa ferramenta que
pode atender qualquer tipo de ambiente, desde pequenos ambientes com poucos usuários até
grandes organizações com milhares de usuários. 
Nesse tópico, o objetivo geral é abordar aspectos da administração básica do sistema, configurações
de rede e armazenamento de dados. Ao término desse tópico é esperado que o usuário possa ter
mais familiaridade com a ferramenta, e serve como preparação para aprender itens de configuração
mais elaborados/avançados que serão abordados nos tópicos seguintes.
2.1.1 Habilitando HTTPS para gerenciamento web, Configurando 2.1.1 Habilitando HTTPS para gerenciamento web, Configurando 
servidor NTP, Ajustando banner MOTD, Configurando SMTP serverservidor NTP, Ajustando banner MOTD, Configurando SMTP server
para envio de notificaçõespara envio de notificações
Como visto anteriormente, é possível gerenciar o FreeNAS através da interface web e também via
cli. Através da interface web, o protocolo padrão para o gerenciamento é o HTTP (Hyper Text
Transfer Protocol, ou simplesmente um Protocolo para Transferência de Páginas HTML). Trata-se
de um excelente protocolo, porém com alguns problemas de segurança em seu design, onde toda
informação que trafega sobre seus pacotes na rede estão em “texto claro”, ou seja, não recebem
nenhuma proteção e qualquer um que interceptar essa comunicação poderá visualizar seu conteúdo.
Isso é um grande problema quando deseja-se acessar sistemas via rede onde estes necessitam de
autenticação. Nesse cenário, utilizando HTTP seria possível capturar o tráfego e visualizar as
credênciais do usuário sem maior esforço. Para contornar esse problema, vamos habilitar o
gerenciamento web através do protocolo HTTPS (Hyper Text Transfer Protocol Secure) onde toda
comunicação do cliente com servidor FreeNAS passará a ter uma proteção, ou seja, todos os dados
serão criptogrados e estarão ilegíveis para usuários que não tem direito sobre os mesmos. 
Para habilitar o HTTPS, precisamos criar os certificados digitais necessários para proteger a
comunicação do cliente para com servidor FreeNAS. 
1. Vamos criar uma unidade certificadora dentro do FreeNAS: Acessar o menu System → aba
Cas → Create Internal CA. Baste preencher as informações conforme solicitadas. A seguir,
figura exemplificando o processo:
81
82
2. Após criação da unidade certificadora interna (CA), vamos criar um certificado digital
interno e assiná-lo com nossa CA interna do FreeNAS: Acessar o menu System → aba
Certificates → Create Internal Certificate. A figura a seguir exemplifica o processo:
83
3. O próximo passo é habilitar o protocolo HTTPS: Acessar o menu System → aba General →
definir “HTTPS” na opção Protocol; definir o certificado interno criado no passo anterior na
opção Certificate conforme exemplifica a figura a seguir:
Após clicar em “Save”, a interface web será reiniciada para aplicar as novas configurações. Após
alguns segundos, a página via HTTPS será automaticamente aberta:
84
Como estamos utilizando um certificado auto-assinado (não reconhecido por nenhuma entidade
certificadora externa), nosso browser irá questionar sobre a autenticidade do site. Basta ignorar e
prosseguir (mesmo ignorando esse alerta, nossa conexão está protegida):
85
O próximo passo é configurar os servidores NTP. O NTP (Network Time Protocol) é um protocolo
utilizado para obter as informações de tempo (data, hora, minuto, segundo) de forma automática a
partir de um servidor NTP. É de extrema importância manter a informação de data/hora correta
(geração correta de logs, funcionamento correto de alguns protocolos, etc). Como exemplo, iremos
utilizar no FreeNAS os servidores NTP do projeto NTP.br. A lista dos servidores pode ser
visualizada a seguir:
dan@tux00:/tmp$ nslookup pool.ntp.br
Non-authoritative answer:
Name: pool.ntp.br
Address: 200.160.0.8
Name: pool.ntp.br
Address: 200.192.232.8
Name: pool.ntp.br
Address: 200.160.7.193
Name: pool.ntp.br
Address: 200.189.40.8
Name: pool.ntp.br
Address: 200.186.125.195
Name: pool.ntp.br
Address: 200.20.186.76
Name: pool.ntp.br
Address: 200.160.7.186
86
1. Após acessar a interface de gerenciamento web do FreeNAS: Acesse o menu System → aba
General → opção NTP Servers. Alguns servidores NTP do projeto do FreeBSD estarão
disponíveis. Basta removê-los e inserir os servidores do projeto NTP.br. A figura a seguir
exemplifica o processo:
A próxima configuração é ajustar o banner MOTD (Message Of The Day). Trata-se de uma boa
prática de segurança orientar os usuários (ou curiosos) no momento em que estes estão realizando o
acesso administrativo do FreeNAS que o servidor é monitorado e o acesso somente é para pessoas
autorizadas.
1. Para configurar uma mensagem, acessar a interface de gerenciamento web do FreeNAS,
menu System → aba Advanced → Opção MOTD banner → Na caixa de texto ao lado,
escrever a mensagem desejada que será exibida aos usuários na tentativa de conexão com o
servidor FreeNAS. A figura a seguir exemplifica o processo de configuração:
87
Para auxiliar no processo de administração do FreeNAS, é possível configurar o envio de
notificações por e-mail para o endereço de e-mail do administrador do sistema. Isso é útil para agir
preventivamente quando possível ou para corrrigir algum problema antes mesmo que os usuários
tomem ciência.
1. Para configurar o envio de e-mails de alertas: Acessar a interface de gerenciamento web →
menu System → aba Email e preencher com as configurações pertinentes de seu ambiente.
Vale ressaltar que o usuário root deve ter configurado o e-mail em suas propriedades. As
figuras a seguir tem por objetivo exemplificar o processo de configuração:
88
Após inserir as configurações, é possível testar o envio de um e-mail de teste conforme mostra a
figura acima. Não esqueça de clicar em “Save” para salvar as configurações.
Conforme demonstra a figura acima, o e-mail de testefoi enviado com sucesso.
89
2.2 Administração de Rede
Após finalizada as configurações inicias de sistema, iremos realizar configurações relacionadas a
rede como endereçamento IP das interfaces de rede, hostname do servidor, domínio, servidores
DNS e rotas estáticas necessárias.
Nesse ponto, é interessante ressaltar que a máquina virtual do FreeNAS utilizada no VirtualBox
possui 02 interfaces de rede sendo 01 em modo NAT e 01 em modo Bridge. Basicamente, a
interface em modo NAT recebe um endereçamento IP automático provido pelo VirtualBox e as
conexões da máquina virtual para outras redes (como á Internet por exemplo) são mascaradas com o
IP da interface física do host que executa o VirtualBox. Já a interface em modo Bridge é capaz de
fazer parte da mesma rede na qual o host físico faz parte, recebendo ou podendo ser configurada
com um endereço IP da mesma subrede IP:
90
Após instalação do FreeNAS, ele automaticamente detecta as interfaces de rede e tenta obter
endereçamento IP via DHCP por padrão. Porém, como trata-se de um servidor, é extremamente
recomendado alocar um endereço estático com objetivo de evitar indisponibilidades nos serviços
providos devido a “possível” alteração do IP a cada reboot do servidor. Para configurar as interfaces
de rede do servidor, acesse a interface de gerenciamento web e siga os passos seguintes:
1. Acesse o menu Network → aba Interfaces → Add Interface. A primeira interface que
devemos adicionar é a em0. Essa interface está configurada como “NAT” no VirtualBox e
deve ser configurada para obter endereçamento IP via DHCP. Note que, após configurar as
interfaces e clicar em “OK” uma possível interrupção na rede irá ocorrer para que as
configurações sejam devidamente aplicadas:
91
92
Repita o mesmo procedimento para interface de rede em1. Essa interface está como “Bridge” no
VirtualBox e iremos configura-la com endereçamento IP estático pois é através dessa interface que
os clientes irão acessar os serviços providos pelo servidor FreeNAS. Antes de prosseguir, observe
que não estamos configurando “Default Gateway” onde após aplicar as configurações as
comunicações para outras subredes IP serão interrompidas:
93
Para configurar o default gateway do FreeNAS: Acesse o menu Network → aba Global
Configuration → Insira o IP do gateway na opção Ipv4 Default Gateway → Save:
Nota Importante: Em muitos casos, como boa prática de segurança, não utilizamos o gateway
default para o FreeNAS como forma de dificultar o acesso de um atacante remoto para com o
servidor FreeNAS. Dessa forma, inserimos rotas estáticas para os hosts em outras redes na qual o
FreeNAS necessita se comunicar. Porém é interessante ressaltar que os hosts presentes na mesma
subrede IP podem ser comunicar normalmente com o FreeNAS. O ideal, além do mencionado até
então, é proteger o FreeNAS atrás de um firewall bem configurado ou deixá-lo em um segmento de
rede isolado dos demais hosts da rede e controlar o acesso ao mesmo.
94
2.2.1 Ajustando hostname, nome de domínio, Servidores DNS, 2.2.1 Ajustando hostname, nome de domínio, Servidores DNS, 
Roteamento EstáticoRoteamento Estático
1. Para ajustar o hostname do servidor FreeNAS acesse a interface de gerenciamento web →
menu Network → aba Global Configurations → ajustar a opção Hostname para o valor
desejado;
2. Para ajustar o nome de domínio do servidor FreeNAS: Na mesma tela de configuração do
passo anterior, ajuste a opção Domain para o valor desejado. A figura a seguir exemplifica o
processo de configuração:
3. Para configurar os servidores DNS que o FreeNAS irá utilizar para resolução de nomes: Na
mesma tela de configuração descrita no passo 1, inserir o endereço IP do servidor DNS na
opção Nameserver 1. Observe que é possível inserir até 3 servidores DNS:
95
4. Para configurar rotas estáticas (supondo que não estamos utilizando o default gateway
explicitamente configurado), devemos acessar a interface de gerenciamento web → menu
Network → aba Static Routes → Add Static Route. Iremos adicionar rotas estáticas para os
servidores DNS e servidores NTP configurados no sistema:
Para validar o funcionamento das rotas estáticas inseridas no sistema, vamos remover o default
gateway configurado no sistema (menu Network → aba Global Configurations → Remover o valor
da opção Ipv4 Default Gateway → Salvar), abrir a console na opção 9 (SHELL) e fazer alguns
testes de conectividade com hosts na Internet e analisar o resultado. As figuras a seguir
exemplificam todo processo:
96
97
2.3 Administração do Storage
Nessa etapa, iremos abordar o armazenamento dos dados providos pelo FreeNAS. Como vimos
anteriormente, o sistema de arquivos ZFS é muito flexível e traz consigo o conceito de
gerenciamento de volumes. Nos tópicos a seguir iremos abordar com maiores detalhes o processo
de utilização do armazenamento provido pelo FreeNAS.
2.3.1 Criação de volumes (ZFS Volume em ZFS Pools)2.3.1 Criação de volumes (ZFS Volume em ZFS Pools)
Primeiramente devemos acessar o volume manager do FreeNAS e realizar a criação de um pool de
volumes, conhecido técnicamente como ZFS Pool. Dentro desse pool, podemos inserir os discos
que pretendemos utilizar para o armazenamento dos dados.
1. Para criação do ZFS Pool, acessar a interface de gerenciamento web do FreeNAS → menu
Storage → aba Volumes → Opção Volume Manager. Basta inserir o nome do volume e
adicionar os discos existentes na opção “Available disks”. Como temos somente 1 disco de
10 GB destina para o armazenamento dos dados não conseguimos utilizar nenhuma técnica
de RAID provida pelo FreeNAS. Porém, caso possua mais de 1 disco basta adicioná-lo e
escolher a técnica de RAID que mais se encaixe com as suas necessidades. A figura a seguir
exemplifica o processo:
98
Após alguns segundos, o ZFS Pool será criado:
A partir da CLI:
99
O sistema de arquivo ZFS utiliza o conceito de Dataset como sendo um Filesystem
hierarquicamente logo abaixo do Volume conforme destaca a figura a seguir:
Na primeira linha podemos visualizar o Volume chamado “zfs_pool_01” e na segunda linha
podemos visualizar o Dataset chamado “zfs_pool_01”. Todos os demais Datasets e Zvols criados
dentro desse ZFS Pool/Volume serão armazenados hierarquicamente abaixo do Dataset
“zfs_pool_01”.
2.3.2 Criação de Datasets (ZFS Dataset)2.3.2 Criação de Datasets (ZFS Dataset)
Continuando a explicação do tópico anterior, ao criarmos os Datasets, estes serão armazenados
hierarquicamente abaixo do Dataset “principal” conforme podemos visualizar na figura a seguir:
Criamos os Datasets “engenharia” e “marketing”, conforme demonstra as figuras anteriores.
Observe que para criar ambos Datasets foi necessário selecionar o Dataset “zfs_pool_01” e somente
depois clicar na opção “Create Dataset” na parte inferior da tela. Ambos Datasets nesse caso serão
utilizados para prover compartilhamentos para os clientes, seja via NFS, CIFS, AFP ou WebDAV.
2.3.3 Criação de Zvol (Volume ZFS)2.3.3 Criação de Zvol (Volume ZFS)
Aqui iremos demonstrar a criação de outra unidade de armazenamento, chamado de volume e/ou
bloco. Basta acessar a interface de gerenciamento web → menu Storage → aba Volumes →
selecionar o Dataset “zfs_pool_01” → clicar na opção “Create zvol” na parte inferior da tela. Cada
100
zvol deve possuir um nome único dentro de cada ZFS Pool/Volume. A figura a seguir exemplifica o
processo de criação do zvol:
Observe que o zvol criado de nome “vm1” não possui ponto de montagem pois não se trata de um
101
sistema de arquivos, trata-se de um dispositivo de bloco que poderá ser compartilhado, por
exemplo, via iSCSI.
2.4 Backup das Configurações
Como boa prática para administraçãode qualquer sistema baseado em configuração, é
extremamente importante realizar backups com periodicidade regular das configurações do sistema.
Além de realizar o backup, é necessário armazena-lo em local seguro, restrito e ao mesmo tempo de
fácil acesso para o administrador do sistema. 
Uma regra geral que podemos utilizar é backup semanal das configurações, por padrão.
Adicionalmente, antes de fazer qualquer tipo de alteração nas configurações, um novo backup deve
ser realizado na qual teremos um ponto de recuperação antes da alteração “XPTO” realizada.
Para salvar as configurações correntes do FreeNAS:
1. Acessar a interface de gerenciamento web → menu System → aba General → clicar na
opção “Save Config”. Observe que será realizado download de um arquivo .db. As figuras a
seguir exemplificam o processo:
102
2.5 Restore das Configurações
O processo de restore (restauração) das configurações é relativamente simples, mas é necessário
reboot do servidor FreeNAS para concluir o processo. Para realizar a restauração das configurações
a partir de um backup válido (arquivo .db):
1. Acesse a interface de gerenciamento web do FreeNAS → menu System → aba General →
clicar na opção “Upload Config”. As figuras a seguir tem por objetivo exemplificar o
processo de restore:
103
Observe que, após o primeiro reboot o FreeNAS realiza um backup no arquivo de banco de dados 
das configurações e cria um novo banco de dados com base nas configurações presentes no arquivo 
de restauração. Após concluir o processo de criação e atualização do novo banco de dados, o 
servidor será reiniciado e estará pronto para utilização:
104
Tópico 3: Trabalhando com Replicação e 
Compartilhamento de Volumes
3.1 Trabalhando com Snapshots (Criando, gerenciando e 
clonando)
Nesse tópico iremos abordar os recursos mais avançados providos pelo sistema de arquivos ZFS.
Conforme mencionado no tópico 1, um snapshot basicamente é uma cópia fiel de todos os blocos de
um dataset. Porém, essa cópia é somente leitura. Os novos dados são gravados em uma espécie de
“live file system”, mantendo os blocos antigos intactos, ou seja, no snapshot temos o file system
original e no live file system temos qualquer alteração realizada nos dados após criação do
snapshot. Trata-se de um recurso muito interessante para proteção adicional dos dados, muito
utilizado principalmente em ambientes de virtualização. Podemos, entretanto, criar um clone
“writable” (com suporte a escrita) desse snapshot. Dessa forma, este poderá sofrer ações de escrita
normalmente como se fosse um novo sistema de arquivos (FileSystem).
Para essa atividade, vamos excluir todos os ZFS Pools/Volumes previamente criados no FreeNAS.
Vamos também adicionar 6 discos de 8 GB cada e destiná-los ao armazenamento dos dados. Vamos
criar um novo ZFS Pool utilizando técnicas de RAID-Z. Para destruir o ZFS Pool existente e todos
os Datasets:
1. Acessar a interface de gerenciamento web → menu Storage → aba Volumes → Selecionar
cada Dataset e clicar na opção “Destroy Dataset” localizada na parte inferior da página:
105
2. Após exclusão dos Datasets, realizar a destruição do Pool:
Após exclusão do Pool, não teremos nenhum outro Pool criado:
3. Vamos adicionar os discos na máquina virtual do FreeNAS:
106
Após inserir os novos discos, basta iniciar o FreeNAS. Vamos criar um novo ZFS Pool/Volume
utilizando os 6 discos de 8 GB utilizando o conceito de RAID-Z.
Nesse exemplo, iremos criar 02 VDEV's (Virtual Devices) onde cada um irá possuir 3 discos e
utilizará a técnica RAIDZ (RAIDZ1 – na qual exige no mínimo três discos). Para criação do ZFS
Pool:
1. Acesse a interface de gerenciamento web do FreeNAS → menu Storage → aba Volumes
→clicar na opção Volume Manager → Inserir um nome único para o nome do volume/pool.
Note que na opção “Available disks” é possível visualizar todos os discos disponíveis.
Vamos utilizar apenas 3 discos utilizando o “Volume layout” como RAIDZ1 para o primeiro
VDEV e clicar em “Add Extra Device” para adicionar outro VDEV com os outros 3 discos:
107
Enquanto o FreeNAS realiza a operação de criação do Pool, podemos visualizar mensagens
automáticas na console referentes ao processo de criação do Pool:
108
Após alguns segundos, o ZFS Pool será criado com sucesso. A figura a seguir confirma a criação do
Pool:
Podemos também verificar o status do ZFS Pool/Volume:
O snapshot é criado sobre um ZFS Dataset. Dessa forma, vamos criar o Dataset chamado “dados” e
criar um snapshot deste Dataset:
1. Para criar o Dataset chamado “dados”, acessar a interface de gerenciamento web do
FreeNAS → menu Storage → aba Volumes → Selecioanar o Dataset “pool01” criado
juntamente com o ZFS Pool → Clicar na opção “Create Dataset” localizada na parte
inferior:
109
Após criação do Dataset “dados”:
Para criação do snapshot deste dataset:
1. Selecionar o Dataset “dados” → Clicar na opção “Create Snapshot” na parte inferior:
110
Para visualizar o snapshot criado:
1. Acessar a aba “Snapshots” dentro do menu Storage:
111
Observe que no campo “Available Actions” temos algumas ações que podem ser executadas no
snapshot criado:
São elas:
• Clone Snapshot
• Destroy Snapshot
• Rollback Snapshot
Clone Snapshot: Realiza um clone (uma cópia fiel) do snapshot, porém tornando o mesmo
“writable”, ou seja, possível de realizar operações de escrita. Observe que o clone irá criar um novo
FileSystem no mesmo ZFS Pool/Volume:
Após criação do clone, observe que o novo Dataset já passa a ser exibido. Perceba que a sua
nomenclatura é o nome do snapshot + “-clone”:
112
Destroy Snapshot: Essa opção (como o próprio nome sugere) realiza a destruição do snapshot.
Porém, se existir algum clone a partir desse snapshot (objeto “filho”) este não poderá ser excluído
pois possui uma referência para o Dataset originado no processo de clonagem. Primeiramente é
necessário excluir o Dataset do clone para depois excluir o snapshot:
Rollback Snapshot: Essa opção permite reverter o Dataset para o estado do snapshot. Essa opção
deve ser utilizada com cuidado pois, todas as alterações realizadas depois da execução do snapshot
serão automaticamente perdidas pois o Dataset irá retornar no estado do momento que foi realizado
o snapshot.
Algumas considerações antes de utilizar essa opção de Rollback:
• Faça um clone do snapshot que deseja reverter (rollback);
• Compartilhe esse clone (via CIFS, NFS, etc) para que os usuaŕios possam ter acesso aos
seus dados;
• Após os usuários terem realizado backup dos seus dados desejados, destrua o clone;
• Se for realmente recomendado voltar o Dataset para o ponto do snapshot, faça agora o
Rollback.
A figura a seguir exemplifica o processo de Rollback do Snapshot:
113
O processo de criação de snapshot pode ser agendado para que seja realizado automaticamente pelo 
sistema. A configuração das tarefas de snapshots periodicos está disponível no menu Storage → aba
Periodic Snapshot Tasks. 
Nota Importante: Novamente ressaltamos que um snapshot é uma cópia somente leitura de um
volume ou dataset em um determinado ponto do tempo e essa cópia não consome espaço adicional.
Após efetuar um snapshot em um dataset, por exemplo, todas as alterações realizadas no dataset
serão armazenadas em uma espécie de sistema de arquivos “live” (live dataset) e ai sim passam a
consumir espaço adicional de armazenamento (consumo esse devido a inserção/alteração de
informações no dataset). Para ficar mais claro esse processo, vamos fazer um laboratório prático:
1. Primeiramente, vamos criar um novo ZFS Dataset e inserir dados no mesmo. Para criação
do ZFS Dataset, acesse a interface de gerenciamento web do FreeNAS → menu Storage→
aba Volume → selecione o Dataset principal existente (no nosso exemplo é “pool01”) → e
clique em “Create Dataset”. Vamos chamá-lo de “teste01”. Após inserir o nome do Dataset,
clique em “Add Dataset”:
114
2.
2. Após criação do ZFS Dataset chamado de “teste01”, vamos criar dados aleatórios apenas
para aumentar um pouco o espaço utilizado dentro do Dataset. Acesse a CLI do FreeNAS
(seja via Console ou via SSH) para criarmos alguns dados aleatórios. Primeiramente:
Listando os ZFS Pools/Volumes existentes:
[root@freenas_lab] /mnt/pool01# zpool list
NAME SIZE ALLOC FREE EXPANDSZ FRAG CAP DEDUP HEALTH 
ALTROOT
freenas-boot 7.94G 528M 7.42G - - 6% 1.00x ONLINE -
pool01 35.8G 179M 35.6G - 0% 0% 1.00x ONLINE /mnt
115
Listando os ZFS Datasets existentes dentro do Pool “teste01”:
[root@freenas_lab] /mnt/pool01# zfs list -r pool01
NAME USED AVAIL REFER MOUNTPOINT
pool01 118M 23.0G 128K /mnt/pool01
pool01/.system 1.00M 23.0G 139K legacy
pool01/.system/configs-2fa742ae30da433ca735af52bcb65edb 128K 23.0G 128K legacy
pool01/.system/cores 128K 23.0G 128K legacy
pool01/.system/rrd-2fa742ae30da433ca735af52bcb65edb 128K 23.0G 128K legacy
pool01/.system/samba4 202K 23.0G 202K legacy
pool01/.system/syslog-2fa742ae30da433ca735af52bcb65edb 304K 23.0G 304K legacy
pool01/dados 115M 23.0G 115M /mnt/pool01/dados
pool01/teste01 128K 23.0G 128K /mnt/pool01/teste01
Observe que o ponto de montagem para o Dataset “teste01” é /mnt/pool01/teste01. Dessa forma,
vamos acessar o diretório do ponto de montagem e criar alguns dados aleatórios com auxílio do
“dd”:
[root@freenas_lab] /mnt/pool01/teste01# pwd
/mnt/pool01/teste01
[root@freenas_lab] /mnt/pool01/teste01# dd if=/dev/random of=randomfile100 bs=100m count=1
&& dd if=/dev/random of=randomfile200 bs=200m count=1
1+0 records in
1+0 records out
104857600 bytes transferred in 1.722484 secs (60875801 bytes/sec)
1+0 records in
1+0 records out
209715200 bytes transferred in 7.127437 secs (29423649 bytes/sec)
[root@freenas_lab] /mnt/pool01/teste01# ls -lah
total 307328
drwxr-xr-x 2 root wheel 4B Feb 12 11:50 ./
drwxr-xr-x 4 root wheel 4B Feb 12 11:40 ../
-rw-r--r-- 1 root wheel 100M Feb 12 11:50 randomfile100
-rw-r--r-- 1 root wheel 200M Feb 12 11:50 randomfile200
Criamos 2 arquivos:
• randomfile100 de 100 MB
• randomfile200 de 200 MB
Observe atentamente que antes da criação dos arquivos, o espaço utilizado do Dataset “teste01” era 
praticamente nada:
NAME USED AVAIL REFER MOUNTPOINT
pool01/teste01 128K 23.0G 128K /mnt/pool01/teste01
116
Após criação dos arquivos:
NAME USED AVAIL REFER MOUNTPOINT
pool01/teste01 300M 22.7G 300M /mnt/pool01/teste01
Os campo “USED” indica a quantidade de espaço que está sendo consumido por este Dataset
(teste01) e por todos os Datasets descentes deste (caso existam). O campo “REFER” indica a
quantidade de dados acessíveis através deste Dataset. Quando um snapshot ou clone é criado,
inicialmente este faz referência a mesma quantidade de espaço do campo “REFER”.
3. Agora, vamos criar um snapshot do ZFS Dataset “teste01”. Acese a interface de
gerenciamento web do FreeNAS → menu Storage → aba Volumes → Selecione o Dataset
“teste01” e clique na opção “Create Snapshot”:
Note que a criação do snapshot ocorre de forma imediata. Dentro do menu Storage, acesse a aba
Snapshots para poder visualizar o snapshot criado. Observe que o campo “Reffer” faz referência ao
tamanho do Dataset:
117
Obtendo a mesma informação da figura anterior via CLI:
[root@freenas_lab] /mnt/pool01/teste01# zfs list -t snapshot -r pool01/teste01
NAME USED AVAIL REFER MOUNTPOINT
pool01/teste01@manual-20160212 0 - 300M -
4. Agora, vamos realizar algumas alterações no Dataset “teste01” inserindo novos dados e 
alterando os dados existentes também:
[root@freenas_lab] /mnt/pool01/teste01# ls -lah
total 307328
drwxr-xr-x 2 root wheel 4B Feb 12 11:50 ./
drwxr-xr-x 4 root wheel 4B Feb 12 11:40 ../
-rw-r--r-- 1 root wheel 100M Feb 12 11:50 randomfile100
-rw-r--r-- 1 root wheel 200M Feb 12 11:50 randomfile200
[root@freenas_lab] /mnt/pool01/teste01# dd if=/dev/random of=randomfile100 bs=100m count=1 
oseek=1 && dd if=/dev/random of=randomfile200 bs=200m count=1 oseek=1
1+0 records in
1+0 records out
104857600 bytes transferred in 2.462588 secs (42580244 bytes/sec)
1+0 records in
1+0 records out
209715200 bytes transferred in 15.661074 secs (13390857 bytes/sec)
[root@freenas_lab] /mnt/pool01/teste01# ls -lah
total 591957
drwxr-xr-x 2 root wheel 4B Feb 12 11:50 ./
drwxr-xr-x 4 root wheel 4B Feb 12 11:40 ../
-rw-r--r-- 1 root wheel 200M Feb 12 13:00 randomfile100
-rw-r--r-- 1 root wheel 400M Feb 12 13:00 randomfile200
[root@freenas_lab] /mnt/pool01/teste01# dd if=/dev/random of=randomfile300 bs=300m count=1
1+0 records in
1+0 records out
314572800 bytes transferred in 11.781564 secs (26700428 bytes/sec)
[root@freenas_lab] /mnt/pool01/teste01# ls -lah
total 776865
drwxr-xr-x 2 root wheel 5B Feb 12 13:01 ./
drwxr-xr-x 4 root wheel 4B Feb 12 11:40 ../
-rw-r--r-- 1 root wheel 200M Feb 12 13:00 randomfile100
-rw-r--r-- 1 root wheel 400M Feb 12 13:00 randomfile200
-rw-r--r-- 1 root wheel 300M Feb 12 13:02 randomfile300
118
Observe que o arquivo “randomfile100” cresceu 100 MB e o arquivo “randomfile200” cresceu 200
MB. Também, criamos um novo arquivo chamado “randomfile300” com 300 MB. Todo esses dados
adicionais não foram escritos no snapshot, uma vez que este é somente leitura. Dessa forma, o
snapshot mantem a versão orginal de ambos arquivos que sofreram alteração e, obviamente, não
contem o novo arquivo criado (randomfile300).
5. Vamos agora visualizar as estatíticas do snapshot criado anteriormente:
Via CLI:
[root@freenas_lab] /mnt/pool01/teste01# zfs list -t snapshot -r pool01/teste01
NAME USED AVAIL REFER MOUNTPOINT
pool01/teste01@manual-20160212 128K - 300M -
Conforme podemos obervar, agora o snapshot está consumindo 128K, informação essa disponível
na columa “USED”. Note que o único espaço consumido foram dos blocos alterados pela operação
de alteração do arquivo e pelos novos blocos adicionais devido a inserção do novo arquivo.
Lembre-se que os novos dados/alterações após a criação do snapshot são inseridos no “live system”
(live dataset).
Agora, faça um novo snapshot do Dataset “teste01”. Vamos analisar as estatísticas:
Via CLI:
[root@freenas_lab] /mnt/pool01/teste01# zfs list -t snapshot -r pool01/teste01
NAME USED AVAIL REFER MOUNTPOINT
pool01/teste01@manual-20160212 128K - 300M -
pool01/teste01@manual-20160212_02 0 - 900M -
119
Dessa forma, podemos tirar algumas conclusões:
• A coluna “REFER” do primeiro snapshot faz referência aos dados acessíveis no momento da
criação do primeiro snapshot;
• O primeiro snapshot utiliza 128 K. Isso pode ser visualizado na coluna “USED”;
• A coluna “REFER” do segundo snapshot possui o tamanho do “live system” (live dataset),
ou seja, este engloba todos os dados sendo basicamente a somatória do valor do primeiro
snapshot, o arquivo inserido

Outros materiais