Guia de administração do ZFS Oracle Solaris

Capítulo 1 Sistema de arquivos Oracle Solaris ZFS (introdução)

Este capítulo oferece uma visão geral do sistema de arquivos Oracle Solaris ZFS e de seus recursos e benefícios. Este capítulo abrange também algumas terminologias básicas usadas neste livro.

Este capítulo traz as seguintes seções:

O que há de novo no ZFS?

Esta seção resume os novos recursos do sistema de arquivos ZFS.

Dividindo um conjunto de armazenamento do ZFS espelhado (zpool split)

Versão 10 9/10 do Oracle Solaris: nessa versão do Solaris, você pode utilizar o comandozpool split para dividir um conjunto de armazenamento espelhado, o que desanexa um disco ou discos do conjunto espelhado original para criar outro conjunto idêntico.

Para maiores informações, consulte Criando um novo conjunto ao dividir um conjunto de armazenamento ZFS espelhado.

Novo processo do sistema ZFS

Versão 10 9/10 do Oracle Solaris: nessa versão do Solaris, cada conjunto de armazenamento do ZFS possui um processo associado, zpool-poolname. Os segmentos nesse processo são os segmentos de processamento de E/S do conjunto que manipulam tarefas de E/S tais como compactação e soma de verificação, que estão associadas ao conjunto. A finalidade desse processo é oferecer visibilidade em cada utilização de CPU do conjunto de armazenamento. Informações sobre esse processo podem ser revisadas utilizando os comandos ps e prstat. Esses processos estão disponíveis apenas na região global. Para obter mais informações, consulte SDC(7).

Alterações no comando zpool list

Versão 10 9/10 do Oracle Solaris: nessa versão do Solaris, a saída zpool list mudou para oferecer melhores informações de alocação de espaço. Por exemplo:


# zpool list tank
NAME    SIZE  ALLOC   FREE    CAP  HEALTH  ALTROOT
tank    136G  55.2G  80.8G    40%  ONLINE  -

Os campos USED e AVAIL anteriores foram substituídos por ALLOC e FREE.

O campo ALLOC identifica a quantidade de espaço físico alocado para todos os conjuntos de dados e metadados internos. O campo FREE identifica a quantidade de espaço não alocada no conjunto.

Para maiores informações, consulte, Exibindo informações sobre os conjuntos de armazenamento ZFS.

Recuperação do conjunto de armazenamento do ZFS

Versão 10 9/10 do Oracle Solaris: um conjunto de armazenamento pode ficar danificado se dispositivos subjacentes ficarem indisponíveis, se ocorrer uma falha de energia ou se mais do que o número suportado de dispositivos falharem em uma configuração de ZFS redundante. Essa versão oferece novos recursos de comandos para recuperar seu conjunto de armazenamento danificado. No entanto, utilizar esse recurso de recuperação significa que as últimas transações que ocorreram previamente à interrupção do conjunto podem ser perdidas.

Tanto o comando zpool clear quanto o zpool import suportam a opção -F para possivelmente recuperar um conjunto danificado. Além disso, executar os comandos zpool status, zpool clear ou zpool import reporta automaticamente um conjunto danificado e esses comandos descrevem como recuperá-lo.

Para mais informações, consulte Reparando o dano de todo o pool de armazenamento do ZFS.

Aprimoramentos no dispositivo de log do ZFS

Versão 10 9/10 do Oracle Solaris: estão disponíveis os seguintes aprimoramentos de dispositivo de log:

RAIDZ de paridade tripla (raidz3)

Versão 10 9/10 do Oracle Solaris: nessa versão do Solaris, uma configuração RAID-Z redundante agora pode possuir paridade única, dupla ou tripla, o que significa que uma, duas ou três falhas de dispositivo podem ser sustentadas respectivamente, sem qualquer perda de dados. Você pode especificar a palavra-chave raidz3 para uma configuração de RAID-Z de paridade tripla. Para mais informações, consulte Criando um conjunto de armazenamento RAID-Z.

Mantendo instantâneos do ZFS

Versão 10 9/10 do Oracle Solaris: se implementar diferentes políticas de instantâneo automáticas de maneira que instantâneos mais antigos estejam sendo inadvertidamente destruídos pelo zfs receive por não existirem mais no lado de envio, você pode considerar a utilização do recurso de contenção de instantâneos nessa versão do Solaris.

Manter um instantâneo o impede de ser destruído. Além disso, esse recurso permite que um instantâneo com clones seja excluído, ficando pendente a remoção do último clone utilizando o comando zfs destroy -d.

É possível manter um instantâneo ou um conjunto de instantâneos. Por exemplo, a sintaxe a seguir coloca uma marcação de contenção keep em tank/home/cindys/snap@1 .


# zfs hold keep tank/home/cindys@snap1

Para mais informações, consulte Contendo instantâneos do ZFS.

Aprimoramentos de substituição de dispositivo do ZFS

Versão 10 9/10 do Oracle Solaris: nessa versão do Solaris, um evento de sistema ou sysevent é fornecido quando um dispositivo subjacente é expandido. O ZFS foi aprimorado para reconhecer esses eventos e ajustar o conjunto com base no novo tamanho do LUN expandido, dependendo da configuração da propriedade autoexpand. É possível utilizar a propriedade do conjunto autoexpand para ativar ou desativar a expansão automática do conjunto quando um evento de expansão de LUN dinâmico for recebido.

Esses recursos permitem que você expanda um LUN e o conjunto resultante pode acessar o espaço expandido sem precisar exportar e importar o conjunto ou reinicializar o sistema.

Por exemplo, a expansão LUN automática é ativada no conjunto tank.


# zpool set autoexpand=on tank

Ou você pode criar o conjunto com a propriedade autoexpand ativada.


# zpool create -o autoexpand=on tank c1t13d0

A propriedade autoexpand está desativada por padrão para que você possa decidir se deseja ou não a expansão do LUN.

Um LUN também pode ser expandido utilizando o comando zpool online - e. Por exemplo:


# zpool online -e tank c1t6d0

É possível redefinir a propriedade autoexpand depois do LUN ser anexado ou disponibilizado com a utilização do recurso zpool replace. Por exemplo, o conjunto a seguir é criado com um disco de 8 GB (c0t0d0). O disco de 8 GB é substituído por um disco de 16 GB (c1t13d0), mas o tamanho do conjunto não é expandido até que a propriedade autoexpand seja ativada.


# zpool create pool c0t0d0
# zpool list
NAME   SIZE   ALLOC  FREE    CAP   HEALTH  ALTROOT
pool   8.44G  76.5K  8.44G     0%  ONLINE  -
# zpool replace pool c0t0d0 c1t13d0
# zpool list
NAME   SIZE   ALLOC  FREE    CAP   HEALTH  ALTROOT
pool   8.44G  91.5K  8.44G     0%  ONLINE  -
# zpool set autoexpand=on pool
# zpool list
NAME   SIZE   ALLOC  FREE    CAP   HEALTH  ALTROOT
pool   16.8G   91.5K  16.8G    0%  ONLINE  -

Outra maneira de expandir o LUN no exemplo acima sem ativar a propriedade autoexpand é utilizar o comando zpool online - e mesmo que o dispositivo já esteja online. Por exemplo:


# zpool create tank c0t0d0
# zpool list tank
NAME   SIZE   ALLOC  FREE    CAP   HEALTH  ALTROOT
tank   8.44G  76.5K  8.44G     0%  ONLINE  -
# zpool replace tank c0t0d0 c1t13d0
# zpool list tank
NAME   SIZE   ALLOC  FREE    CAP   HEALTH  ALTROOT
tank   8.44G  91.5K  8.44G     0%  ONLINE  -
# zpool online -e tank c1t13d0
# zpool list tank
NAME   SIZE   ALLOC  FREE    CAP   HEALTH  ALTROOT
tank   16.8G    90K  16.8G     0%  ONLINE  -

Os aprimoramentos adicionais de substituição de dispositivo nessa versão incluem os recursos a seguir:

Para obter informações sobre a substituição de dispositivos, consulte Substituindo dispositivos em um pool de armazenamento.

Suporte de instalação do ZFS e Flash

Versão 10 10/09 do Solaris: nessa versão do Solaris, é possível configurar um perfil JumpStart para identificar um arquivo Flash de um conjunto raiz ZFS. Para mais informações, consulte Instalando um sistema de arquivos raiz ZFS (instalação de arquivo do Oracle Solaris Flash).

Cotas de usuário e grupo do ZFS

Versão 10 10/09 do Solaris: em versões anteriores do Solaris, você podia aplicar cotas e reservas para um sistema de arquivos ZFS para gerenciar e reservar espaço em disco.

Nessa versão do Solaris, é possível definir uma cota na quantidade de espaço em disco utilizado por arquivos que pertencem a um determinado usuário ou grupo. Você pode considerar definir cotas de usuário e grupo em um ambiente com um grande número de usuários ou grupos.

É possível definir uma cota de usuário utilizando a propriedade zfs userquota. Para definir uma cota de grupo, utilize a propriedade zfs groupquota. Por exemplo:


# zfs set userquota@user1=5G tank/data
# zfs set groupquota@staff=10G tank/staff/admins

Você pode exibir a cota atual de usuários ou grupos configurando como a seguir:


# zfs get userquota@user1 tank/data
NAME       PROPERTY         VALUE            SOURCE
tank/data  userquota@user1  5G               local
# zfs get groupquota@staff tank/staff/admins
NAME               PROPERTY          VALUE             SOURCE
tank/staff/admins  groupquota@staff  10G               local

Exiba informações de cota gerais como a seguir:


# zfs userspace tank/data
TYPE        NAME   USED  QUOTA  
POSIX User  root     3K   none  
POSIX User  user1     0    5G  

# zfs groupspace tank/staff/admins
TYPE         NAME   USED  QUOTA  
POSIX Group  root     3K   none  
POSIX Group  staff     0    10G  

É possível exibir a utilização de espaço de um usuário individual visualizando a propriedade userused@usuário. A utilização do espaço em disco de um grupo pode ser visualizada através da utilização da propriedade groupused@ grupo. Por exemplo:


# zfs get userused@user1 tank/staff
NAME        PROPERTY        VALUE           SOURCE
tank/staff  userused@user1  213M            local
# zfs get groupused@staff tank/staff
NAME        PROPERTY         VALUE            SOURCE
tank/staff  groupused@staff  213M             local

Para mais informações sobre como definir cotas de usuário, consulte Definindo cotas e reservas do ZFS.

Herança ACL de passar para permissões de executar ZFS

Versão 10 /10/09 do Solaris: em versões anteriores do Solaris, você podia aplicar a herança ACL para que todos os arquivos fossem criados com as permissões 0664 ou 0666. Nessa versão, se você quiser opcionalmente incluir o bit executar do modo de criação de arquivo no ACL herdado, é possível definir o modo aclinherit para passar a permissão de executar ao ACL herdado.

Se aclinherit=passthrough-x estiver ativado em um conjunto de dados ZFS, você pode incluir permissões de executar para um arquivo de saída que seja gerado a partir das ferramentas de compilação cc ou gcc. Se a ACL herdada não inclui permissões de executar, então a saída executável do compilador não será executável até que você utilize o comando chmod para alterar as permissões do arquivo.

Para obter mais informações, consulte o Exemplo 8–12.

Aprimoramentos de propriedades do ZFS

Solaris 10 10/09 e Oracle Solaris 10 9/10: os aprimoramentos do sistema de arquivos do ZFS a seguir estão incluídos nessas versões.

Recuperação do dispositivo de registro do ZFS

Versão 10 10/09 do Solaris: nessa versão, o ZFS identifica as falhas de log intencionais na saída do comando zpool status. A Fault Management Architecture (FMA) também reporta esses erros. O ZFS e o FMA descrevem como recuperar uma falha de log intencional.

Por exemplo, se o sistema for desligado abruptamente antes que as operações de gravação síncrona sejam validadas para um conjunto com um dispositivo de log separado, você verá mensagens semelhantes as seguintes:


# zpool status -x
  pool: pool
 state: FAULTED
status: One or more of the intent logs could not be read.
        Waiting for adminstrator intervention to fix the faulted pool.
action: Either restore the affected device(s) and run 'zpool online',
        or ignore the intent log records by running 'zpool clear'.
 scrub: none requested
config:

        NAME        STATE     READ WRITE CKSUM
        pool        FAULTED      0     0     0 bad intent log
          mirror    ONLINE       0     0     0
            c0t1d0  ONLINE       0     0     0
            c0t4d0  ONLINE       0     0     0
        logs        FAULTED      0     0     0 bad intent log
          c0t5d0    UNAVAIL      0     0     0 cannot open

É possível solucionar a falha do dispositivo de log das seguintes maneiras:

Se desejar recuperar esse erro sem substituir o dispositivo de log falho, é possível limpar o erro com o comando zpool clear. Nesse cenário, o conjunto irá operar em um modo degradado e os logs serão gravados no conjunto principal até que o dispositivo de log separado seja substituído.

Considere o uso de dispositivos de log espelhados para evitar o cenário de falha do dispositivo de log.

Utilizando dispositivos de cache no conjunto de armazenamento do ZFS

Versão 10 10/09 do Solaris: nessa versão, ao criar um conjunto é possível especificar dispositivos de cache, que são utilizados para armazenar em cache dados do conjunto de armazenamento.

Os dispositivos de cache fornecem uma camada adicional de cache entre a memória principal e o disco. A utilização dos dispositivos de cache oferece a maior melhoria de desempenho para cargas de trabalho de leitura aleatória do conteúdo geralmente estático.

Um ou mais dispositivos de cache podem ser especificados quando se cria o conjunto. Por exemplo:


# zpool create pool mirror c0t2d0 c0t4d0 cache c0t0d0
# zpool status pool
  pool: pool
 state: ONLINE
 scrub: none requested
config:

        NAME        STATE     READ WRITE CKSUM
        pool        ONLINE       0     0     0
          mirror    ONLINE       0     0     0
            c0t2d0  ONLINE       0     0     0
            c0t4d0  ONLINE       0     0     0
        cache
          c0t0d0    ONLINE       0     0     0

errors: No known data errors

Depois que os dispositivos de cache são adicionados, eles gradualmente são preenchidos com o conteúdo da memória principal. Dependendo do tamanho do dispositivo de cache, poderá demorar mais de uma hora para que os dispositivos sejam preenchidos. A capacidade e as leituras podem ser monitoradas usando o comando zpool iostat como segue:


# zpool iostat -v pool 5

Os dispositivos de cache podem ser adicionados ou removidos de um conjunto depois dele ser criado.

Para mais informações, consulte Criando um conjunto de armazenamento do ZFS com dispositivos de cache e Exemplo 4–4.

Migração de região em um ambiente do ZFS

Versão 10 5/09 do Solaris: essa versão amplia o suporte à migração de regiões em um ambiente do ZFS com o Oracle Solaris Live Upgrade. Para obter mais informações, consulte Utilizando o Oracle Solaris Live Upgrade para migrar ou atualizar um sistema com regiões (no mínimo Solaris 10 5/09).

Para obter uma lista dos problemas conhecidos dessa versão, consulte as notas de versão do Solaris 10 5/09.

Suporte à inicialização e instalação do ZFS

Versão 10 10/08 do Solaris 10: essa versão permite que você instale e inicialize um sistema de arquivos raiz do ZFS. Você pode usar a opção de instalação inicial ou o recurso JumpStart para instalar um sistema de arquivos raiz ZFS. Ou você pode utilizar o recurso Oracle Solaris Live Upgrade para migrar um sistema de arquivos raiz do UFS para um sistema de arquivos raiz do ZFS. O suporte do ZFS para dispositivos de permuta e despejo também é oferecido. Para mais informações, consulte Capítulo 5Instalando e inicializando um sistema de arquivos raiz ZFS do Oracle Solaris.

Para obter uma lista de problemas conhecidos dessa versão, visite o site a seguir:

http://hub.opensolaris.org/bin/view/Community+Group+zfs/boot

Consulte também as notas de versão do Solaris 10 10/08.

Revertendo um conjunto de dados sem desmontar

Versão 10 10/08 do Solaris: essa versão permite que você reverta um conjunto de dados sem desmontá-lo primeiro. Dessa forma, a opção zfs rollback - f não é mais necessária para forçar uma operação de desmontagem. A opção -f não possui mais suporte e é ignorada se for especificada.

Aprimoramentos no comando zfs send

Versão 10 10/08 do Solaris: essa versão inclui os aprimoramentos a seguir no comando zfs send. Ao utilizar esse comando, é possível efetuar as tarefas a seguir:

Para mais informações, consulte Enviando e recebendo fluxos complexos de instantâneos do ZFS.

Cotas e reservas do ZFS somente para dados do sistema de arquivos

Versão 10 10/08 do Solaris: além dos recursos de reserva e cota do ZFS, essa versão inclui as cotas e reservas do conjunto de dados que não incluem descendentes, tais como instantâneos e clones, na contabilidade do espaço em disco.

Por exemplo, é possível definir um limite refcota de 10 GB para studentA que define um limite rígido de 10 GB do espaço em disco referenciado. Para obter flexibilidade adicional, você pode ajustar uma cota de 20 GB que lhe permite gerenciar os instantâneos do studentA.


# zfs set refquota=10g tank/studentA
# zfs set quota=20g tank/studentA

Para mais informações, consulte Definindo cotas e reservas do ZFS.

Propriedades do pool de armazenamento do ZFS

Versão 10 10/08 do Solaris: as propriedades do conjunto de armazenamento do ZFS foram introduzidas em uma versão anterior. Essa versão oferece duas propriedades cachefile e failmode.

A seguir, são descritas as novas propriedades do conjunto de armazenamento dessa versão:

Aprimoramentos no histórico do comando do ZFS (zpool history)

Versão 10 10/08 do Solaris: o comando zpool history foi aprimorado para oferecer os novos recursos a seguir:

Para mais informações sobre o uso do comando zpool history, consulte Resolvendo problemas com o ZFS.

Atualizando os sistemas de arquivos do ZFS (zfs upgrade)

Versão 10 10/08 do Solaris: o comando zfs upgrade foi incluído nessa versão para proporcionar futuros aprimoramentos do sistema de arquivos do ZFS aos sistemas de arquivos existentes. Os conjuntos de armazenamento do ZFS possuem um recurso de atualização semelhante para fornecer aprimoramentos aos conjuntos de armazenamento existentes.

Por exemplo:


# zfs upgrade
This system is currently running ZFS filesystem version 3.

All filesystems are formatted with the current version.

Observação –

Os sistemas de arquivos atualizados e quaisquer fluxos criados a partir desses sistemas de arquivos atualizados através do comando zfs send não estão acessíveis em sistemas que executam versões mais antigas do software.


Administração delegada do ZFS

Versão 10 10/08 do Solaris: nessa versão, é possível conceder permissões detalhadas para permitir que usuários não privilegiados efetuem tarefas de administração do ZFS.

É possível utilizar os comandos zfs allow e zfs unallow para delegar e remover permissões.

É possível modificar a administração delegada com a propriedade delegação do conjunto. Por exemplo:


# zpool get delegation users
NAME  PROPERTY    VALUE       SOURCE
users  delegation  on          default
# zpool set delegation=off users
# zpool get delegation users
NAME  PROPERTY    VALUE       SOURCE
users  delegation  off         local

Por padrão, a propriedade delegation é habilitada.

Para mais informações, consulte Capítulo 9Administração delegada de ZFS e zfs(1M).

Configurando dispositivos de log do ZFS separados

Versão 10 10/08 do Solaris: o log intencional do ZFS (ZIL) é oferecido para satisfazer as exigências de POSIX para transações síncronas. Por exemplo, em geral os bancos de dados exigem que suas transações estejam em dispositivos de armazenamento estáveis ao retornar de uma chamada do sistema. NFS e outros aplicativos também podem utilizar fsync() para garantir a estabilidade dos dados. Por padrão, o ZIL é alocado a partir dos blocos no conjunto de armazenamento principal. Nessa versão do Solaris, você pode decidir se deseja que os blocos ZIL continuem a ser alocados a partir do conjunto de armazenamento principal ou a partir de um dispositivo de log separado. Pode ser possível obter melhor desempenho utilizando dispositivos de log intencional separados no conjunto de armazenamento do ZFS, como com NVRAM ou um disco dedicado.

Os dispositivos de log intencional do ZFS não estão relacionados aos arquivos de log do banco de dados.

É possível configurar o dispositivo de log do ZFS quando o conjunto de armazenamento for criado ou depois da sua criação. Para exemplos sobre a configuração dos dispositivos de log, consulte Criando um conjunto de armazenamento do ZFS com dispositivos de log e Adicionando dispositivos a um pool de armazenamento.

É possível anexar um dispositivo de log a um dispositivo de log existente para criar um dispositivo de log espelhado. Essa operação é idêntica à anexação de um dispositivo em um conjunto de armazenamento não espelhado.

Ao determinar se a configuração de um dispositivo de registro ZFS é apropriada para o seu ambiente, leve em consideração o seguinte:

Criando conjuntos de dados do ZFS intermediários

Versão 10 10/08 do Solaris: é possível utilizar a opção -p com os comandos zfs create, zfs clone e zfs rename para criar rapidamente um conjunto de dados intermediário não existente, se ele ainda não existir.

No exemplo a seguir, conjuntos de dados do ZFS (users/area51) são criados no conjunto de armazenamento datab.


# zfs list
NAME                        USED  AVAIL  REFER  MOUNTPOINT
datab                       106K  16.5G    18K  /datab
# zfs create -p -o compression=on datab/users/area51

O conjunto de dados intermediário já existe durante a operação de criação, a operação será concluída com êxito.

As propriedades especificadas se aplicam ao conjunto de dados de destino e não ao conjunto de dados intermediário. Por exemplo:


# zfs get mountpoint,compression datab/users/area51
NAME                PROPERTY     VALUE                SOURCE
datab/users/area51  mountpoint   /datab/users/area51  default
datab/users/area51  compression  on                   local

O conjunto de dados intermediário é criado com o ponto padrão de montagem. Quaisquer propriedades adicionais são desativadas para o conjunto de dados intermediário. Por exemplo:


# zfs get mountpoint,compression datab/users
NAME         PROPERTY     VALUE         SOURCE
datab/users  mountpoint   /datab/users  default
datab/users  compression  off           default

Para obter mais informações, consulte zfs(1M).

Aprimoramentos de conexão automática do ZFS

Versão 10 10/08 do Solaris: nessa versão, o ZFS responde de maneira mais eficiente aos dispositivos removidos e pode agora identificar automaticamente dispositivos que são inseridos.

Para mais informações, consulte zpool(1M).

Renomear recursivamente instantâneos do ZFS (zfs rename -r)

Versão 10 10/08 do Solaris: é possível renomear recursivamente todos os instantâneos descendentes do ZFS utilizando o comando zfs rename -r. Por exemplo:

Primeiro, um instantâneo de um conjunto de sistemas de arquivos do ZFS é criado.


# zfs snapshot -r users/home@today
# zfs list
NAME                     USED  AVAIL  REFER  MOUNTPOINT
users                    216K  16.5G    20K  /users
users/home                76K  16.5G    22K  /users/home
users/home@today            0      -    22K  -
users/home/markm          18K  16.5G    18K  /users/home/markm
users/home/markm@today      0      -    18K  -
users/home/marks          18K  16.5G    18K  /users/home/marks
users/home/marks@today      0      -    18K  -
users/home/neil           18K  16.5G    18K  /users/home/neil
users/home/neil@today       0      -    18K  -

Depois, os instantâneos são renomeados no dia seguinte.


# zfs rename -r users/home@today @yesterday
# zfs list
NAME                         USED  AVAIL  REFER  MOUNTPOINT
users                        216K  16.5G    20K  /users
users/home                    76K  16.5G    22K  /users/home
users/home@yesterday            0      -    22K  -
users/home/markm              18K  16.5G    18K  /users/home/markm
users/home/markm@yesterday      0      -    18K  -
users/home/marks              18K  16.5G    18K  /users/home/marks
users/home/marks@yesterday      0      -    18K  -
users/home/neil               18K  16.5G    18K  /users/home/neil
users/home/neil@yesterday       0      -    18K  -

Um instantâneo é o único tipo de conjunto de dados que pode ser renomeado recursivamente.

Para mais informações sobre instantâneos, consulte Visão geral dos instantâneos do ZFS e esta entrada do blog que descreve como criar instantâneos sucessivos:

http://blogs.sun.com/mmusante/entry/rolling_snapshots_made_easy

gzip A compactação está disponível para ZFS

Versão 10 10/08 do Solaris: nessa versão do Solaris, é possível definir a compactação gzip em sistemas de arquivos do ZFS além da compactação lzjb. É possível especificar a compactação como gzip ou gzip-N, em que N é de 1 a 9. Por exemplo:


# zfs create -o compression=gzip users/home/snapshots
# zfs get compression users/home/snapshots
NAME                  PROPERTY     VALUE            SOURCE
users/home/snapshots  compression  gzip             local
# zfs create -o compression=gzip-9 users/home/oldfiles
# zfs get compression users/home/oldfiles
NAME                  PROPERTY     VALUE           SOURCE
users/home/oldfiles   compression  gzip-9          local

Para mais informações sobre a configuração das propriedades do ZFS, consulte Definindo propriedades do ZFS.

Armazenamento de várias cópias de dados de usuário do ZFS

Versão 10 10/08 do Solaris: como um recurso de segurança, os metadados do sistema de arquivos do ZFS são armazenados automaticamente várias vezes em diferentes discos, se possível. Este recurso é conhecido como blocos idem.

Nessa versão do Solaris, também é possível armazenar cópias múltiplas dos dados do usuário que também são armazenadas por sistema de arquivos ao utilizar o comando zfs set copies. Por exemplo:


# zfs set copies=2 users/home
# zfs get copies users/home
NAME        PROPERTY  VALUE       SOURCE
users/home  copies    2           local

Os valores disponíveis são 1, 2 ou 3. O valor padrão é 1. Essas cópias estão em acréscimo a qualquer redundância de nível de conjunto, tal como na configuração espelhada ou RAID-Z.

Os benefícios do armazenamento de cópias múltiplas dos dados do usuário do ZFS são os seguintes:


Observação –

Dependendo da alocação de blocos idênticos no conjunto de armazenamento, as cópias múltiplas podem ser colocadas em um único disco. Uma falha de disco cheio subsequente pode fazer com que todos os blocos idênticos fiquem indisponíveis.


É possível levar em consideração o uso de blocos idênticos ao criar acidentalmente um conjunto não redundante e quando precisar definir as políticas de retenção de dados.

Para obter uma descrição detalhada de como armazenar cópias múltiplas em um sistema com um conjunto de disco único ou um conjunto de disco múltiplo pode afetar a proteção geral dos dados, consulte este blog:

http://blogs.sun.com/relling/entry/zfs_copies_and_data_protection

Para mais informações sobre a configuração das propriedades do ZFS, consulte Definindo propriedades do ZFS.

Saída zpool status aprimorada

Versão 10 8/07 do Solaris: é possível utilizar o comando zpool status -v para exibir uma lista de arquivos com erros persistentes. Anteriormente, era necessário utilizar o comando find -inum para identificar os nomes de arquivos na lista de inodes exibida.

Para mais informações sobre a exibição de uma lista de arquivos com erros persistentes, consulte Reparando arquivos ou diretórios corrompidos.

Aprimoramentos na iSCSI do Solaris e ZFS

Versão 10 8/07 do Solaris: nessa versão do Solaris, é possível criar um volume ZFS como um dispositivo de destino do iSCSI do Solaris definindo a propriedade shareiscsi no volume ZFS. Esse método é uma forma conveniente de configurar rapidamente um destino iSCSI do Solaris. Por exemplo:


# zfs create -V 2g tank/volumes/v2
# zfs set shareiscsi=on tank/volumes/v2
# iscsitadm list target
Target: tank/volumes/v2
    iSCSI Name: iqn.1986-03.com.sun:02:984fe301-c412-ccc1-cc80-cf9a72aa062a
    Connections: 0

Depois da criação do destino iSCSI, é possível configurar o iniciador iSCSI. Para mais informações sobre a configuração do iniciador iSCSI do Solaris, consulte Capítulo 14, Configuring Oracle Solaris iSCSI Targets and Initiators (Tasks), no System Administration Guide: Devices and File Systems.

Para mais informações sobre gerenciamento de volumes do ZFS como um destino de iSCSI, consulte Usando um volume ZFS como um destino iSCSI Solaris.

Histórico do comando ZFS (zpool history)

Versão 10 8/07 do Solaris: nessa versão do Solaris, o ZFS registra automaticamente comandos zfs e zpool bem-sucedidos que modificam as informações de estado do conjunto. Por exemplo:


# zpool history
History for 'newpool':
2007-04-25.11:37:31 zpool create newpool mirror c0t8d0 c0t10d0
2007-04-25.11:37:46 zpool replace newpool c0t10d0 c0t9d0
2007-04-25.11:38:04 zpool attach newpool c0t9d0 c0t11d0
2007-04-25.11:38:09 zfs create newpool/user1
2007-04-25.11:38:15 zfs destroy newpool/user1

History for 'tank':
2007-04-25.11:46:28 zpool create tank mirror c1t0d0 c2t0d0 mirror c3t0d0 c4t0d0

Esses recursos permitem que você ou a equipe de suporte do Oracle identifique os comandos reais do ZFS que foram executados para corrigir um cenário de erro.

É possível identificar um conjunto de armazenamento específico com o comando zpool history. Por exemplo:


# zpool history newpool
History for 'newpool':
2007-04-25.11:37:31 zpool create newpool mirror c0t8d0 c0t10d0
2007-04-25.11:37:46 zpool replace newpool c0t10d0 c0t9d0
2007-04-25.11:38:04 zpool attach newpool c0t9d0 c0t11d0
2007-04-25.11:38:09 zfs create newpool/user1
2007-04-25.11:38:15 zfs destroy newpool/user1

Nessa versão do Solaris, o comando zpool history não registra o ID de usuário, o nome do host nem o nome da região. No entanto, essas informações são gravadas a partir da versão 10 10/08 do Solaris. Para mais informações, consulte Aprimoramentos no histórico do comando do ZFS (zpool history).

Para mais informações sobre soluções de problemas do ZFS, consulte Resolvendo problemas com o ZFS.

Melhorias das propriedades do ZFS

Propriedade xattr do ZFS

Versão 10 8/07 do Solaris: é possível utilizar a propriedade xattr para desativar ou ativar os atributos estendidos para um sistema de arquivos do ZFS específico. O valor padrão é on. Para obter uma descrição das propriedades do ZFS, consulte Introduzindo as propriedades do ZFS.

Propriedade canmount do ZFS

Versão 10 8/07 do Solaris: a nova propriedade canmount permite que você especifique se um conjunto de dados pode ser montado através da utilização do comando zfs mount. Para mais informações, consulte A propriedade canmount.

Propriedades de usuário do ZFS

Versão 10 8/07 do Solaris: além das propriedades nativas padrão que podem ser utilizadas para exportar estatísticas internas ou controlar o comportamento do sistema de arquivos do ZFS, o ZFS fornece propriedades do usuário. As propriedades do usuário não afetam o comportamento do ZFS, mas podem ser utilizadas para anotar conjuntos de dados com informações significativas no ambiente.

Para mais informações, consulte Propriedades de usuário do ZFS.

Definindo propriedades ao criar sistemas de arquivos do ZFS

Versão 10 8/07 do Solaris: nessa versão do Solaris, é possível definir propriedades ao criar um sistema de arquivos, não apenas depois do sistema de arquivos ter sido criado.

Os exemplos abaixo ilustram a sintaxe equivalente:


# zfs create tank/home
# zfs set mountpoint=/export/zfs tank/home
# zfs set sharenfs=on tank/home
# zfs set compression=on tank/home

# zfs create -o mountpoint=/export/zfs -o sharenfs=on -o compression=on tank/home

Exibindo todas as informações do sistema de arquivos do ZFS

Versão 10 8/07 do Solaris: nessa versão do Solaris, é possível utilizar várias formulários do comando zfs get para exibir informações sobre todos os conjuntos de dados caso você não especifique um conjunto de dados ou caso você especifique todos. Em versões anteriores, não era possível recuperar todas as informações do conjunto de dados com o comando zfs get.

Por exemplo:


# zfs get -s local all
tank/home               atime          off                    local
tank/home/bonwick       atime          off                    local
tank/home/marks         quota          50G                    local

Nova opção zfs receive -F

Versão 10 8/07 do Solaris: nessa versão do Solaris, é possível utilizar a nova opção -F no comando zfs receive para forçar uma reversão do sistema de arquivos ao instantâneo mais recente antes do recebimento ser iniciado. O uso dessa opção pode ser necessário quando o sistema de arquivos for modificado depois da reversão ocorrer, mas antes de o recebimento ser iniciado.

Para mais informações, consulte Recebendo um instantâneo do ZFS.

Instantâneos recursivos do ZFS

Versão 10 11/06 do Solaris: ao utilizar o comando zfs snapshot para criar um instantâneo do sistema de arquivos, é possível utilizar a opção - r para criar recursivamente instantâneos para todos os sistemas de arquivos descendentes. Além disso, é possível utilizar a opção-r para destruir recursivamente todos os instantâneos descendentes quando um instantâneo é destruído.

Os instantâneos recursivos do ZFS são criados rapidamente como uma operação atômica. Os instantâneos são criados juntos (todos de uma vez) ou simplesmente não são criados. O benefício de tal operação é que os dados do instantâneo são sempre tirados em momento consistente, mesmo através de sistemas de arquivos descendentes.

Para mais informações, consulte Criando e destruindo instantâneos do ZFS.

RAID-Z de paridade dupla (raidz2)

Versão 10 11/06 do Solaris: uma configuração RAID-Z redundante agora pode possuir configuração de paridade única ou dupla, o que significa que uma ou duas falhas de dispositivo podem ser sustentadas respectivamente, sem qualquer perda de dados. Você pode especificar a palavra-chave raidz2 para realizar uma configuração de RAID-Z de paridade dupla. Ou você pode especificar as palavras-chave raidz ou raidz1 para realizar uma configuração RAID-Z de paridade única.

Para mais informações, consulte Criando um conjunto de armazenamento RAID-Z ou zpool(1M).

Sobressalentes para dispositivos do pool de armazenamento do ZFS

Versão 10 11/06 do Solaris: o recurso de reserva do ZFS permite que você identifique os discos que poderiam ser utilizados para substituir um dispositivo falho ou defeituoso em um ou mais conjuntos de armazenamento. Designar um dispositivo como um de reserva significa que, se um dispositivo ativo no conjunto falhar, o dispositivo de reserva substitui automaticamente o dispositivo falho. Ou então, é possível substituir manualmente um dispositivo em um conjunto de armazenamento por um de reserva.

Para mais informações, consulte Designando sobressalentes no pool de armazenamento e zpool(1M).

Substituindo um sistema de arquivos do ZFS por um clone do ZFS (zfs promote)

Versão 10 11/06 do Solaris: o comando zfs promote permite que você substitua um sistema de arquivos existente do ZFS existente por um clone desse sistema de arquivos. Esse recurso é útil quando você deseja executar testes em uma versão alternativa de um sistema de arquivos e, em seguida, tornar essa versão alternativa em um sistema de arquivos ativo.

Para mais informações, consulte Substituindo um sistema de arquivos ZFS por um clone do ZFS e zfs(1M).

Atualizando conjuntos de armazenamento do ZFS (zpool upgrade)

Versão 10 6/06 do Solaris: é possível atualizar seus conjuntos de armazenamento para uma versão mais nova a fim de obter benefícios dos recursos mais recentes por meio do comando zpool upgrade. Além disso, o comando zpool status foi modificado para notificá-lo quando os conjuntos estiverem executando versões mais antigas do ZFS.

Para mais informações, consulte Atualizando pools de armazenamento do ZFS e zpool(1M).

Se desejar utilizar o console de administração do ZFS em um sistema com um conjunto de uma versão anterior do Solaris, certifique-se de atualizar os conjuntos antes de utilizar o console. Para determinar se os conjuntos precisam ser atualizados, utilize o comando zpool status. Para obter informações sobre o console de administração do ZFS, consulte Gerenciamento do ZFS baseado na Web.

Comandos de restauração e backup do ZFS renomeados

Versão 10 6/06 do Solaris: nessa versão do Solaris, os comandos zfs backup e zfs restore foram renomeados como zfs send e zfs receive para uma descrição mais exata de suas funções. Esses comandos enviam e recebem representações de fluxo de dados do ZFS.

Para mais informações sobre esses comandos, consulte Enviando e recebendo dados do ZFS.

Recuperando conjuntos de armazenamento destruídos

Versão 10 6/06 do Solaris: essa versão inclui o comando zpool import -D, que permite que você recupere conjuntos que foram destruído anteriormente com o comando zpool destroy.

Para mais informações, consulte Recuperando pools de armazenamento destruídos do ZFS.

O ZFS é integrado com o gerenciador de falhas

Versão 10 6/06 do Solaris: essa versão inclui um mecanismo de diagnóstico do ZFS que é capaz de diagnosticar e relatar falhas do conjunto e do dispositivo. Também são relatados erros na soma de verificação, de E/S, de dispositivo e de pool associados às falhas do dispositivo e do pool.

O mecanismo de diagnóstico não inclui a análise prognóstica de erros de E/S e de soma de verificação, nem ações antecipatórias com base nas análises de falhas.

Se ocorrer uma falha no ZFS, aparecerá uma mensagem similar a seguinte:


SUNW-MSG-ID: ZFS-8000-D3, TYPE: Fault, VER: 1, SEVERITY: Major
EVENT-TIME: Wed Jun 30 14:53:39 MDT 2010
PLATFORM: SUNW,Sun-Fire-880, CSN: -, HOSTNAME: neo
SOURCE: zfs-diagnosis, REV: 1.0
EVENT-ID: 504a1188-b270-4ab0-af4e-8a77680576b8
DESC: A ZFS device failed.  Refer to http://sun.com/msg/ZFS-8000-D3 for more information.
AUTO-RESPONSE: No automated response will occur.
IMPACT: Fault tolerance of the pool may be compromised.
REC-ACTION: Run 'zpool status -x' and replace the bad device.

Ao revisar a ação recomendada, que será seguir as direções mais específicas no comando zpool status, você poderá identificar e resolver rapidamente a falha.

Para obter um exemplo de recuperação de um problema do ZFS reportado, consulte Reparando um dispositivo faltando.

O comando zpool clear

Versão 10 6/06 do Solaris: essa versão inclui o comando zpool clear para limpar contagens de erros associadas a um dispositivo ou a um conjunto. Anteriormente, as contagens de erros eram limpas quando um dispositivo em um conjunto era colocado on-line com o comando zpool online. Para mais informações, consulte Limpando erros de dispositivo de conjunto de armazenamento e zpool(1M).

Formato compacto da ACL NFSv4

Versão 10 6/06 do Solaris: nessa versão, é possível definir e exibir ACLs NFSv4 em dois formatos: verboso e compacto. É possível utilizar o comando chmod para definir qualquer um dos formatos ACL. É possível utilizar o comando ls - Vpara exibir o formato compacto da ACL. É possível utilizar o comando ls -vpara exibir o formato verboso da ACL.

Para mais informações, consulte Definindo e exibindo ACLs em arquivos ZFS no formato compacto, chmod(1) e ls(1).

Ferramenta de monitoramento do sistema de arquivos (fsstat)

Versão 10 6/06 do Solaris: uma nova ferramenta de monitoração do sistema de arquivos, fsstat, relata as operações dos sistemas de arquivos. A atividade pode ser relatada por ponto de montagem ou por tipo de sistema de arquivos. O exemplo abaixo mostra a atividade geral do sistema de arquivos ZFS:


$ fsstat zfs
 new  name   name  attr  attr lookup rddir  read read  write write
 file remov  chng   get   set    ops   ops   ops bytes   ops bytes
7.82M 5.92M 2.76M 1.02G 3.32M  5.60G 87.0M  363M 1.86T 20.9M  251G zfs

Para mais informações, consulte fsstat(1M).

Gerenciamento do ZFS baseado na Web

Versão 10 6/06 do Solaris: uma ferramenta de gerenciamento do ZFS com base na Web, o console de administração do ZFS, permite que você efetue as tarefas administrativas a seguir:

É possível acessar o console de administração do ZFS através de um navegador da Web seguro em:


https://system-name:6789/zfs

Se você digitar o URL apropriado e não conseguir encontrar o console Administração do ZFS, o servidor não deve ter sido iniciado. Para iniciar o servidor, execute o seguinte comando:


# /usr/sbin/smcwebserver start

Se quiser que o servidor seja executado automaticamente quando o sistema for inicializado, execute o seguinte comando:


# /usr/sbin/smcwebserver enable

Observação –

Não é possível usar o console de gerenciamento Solaris (smc) para gerenciar pools de armazenamento e sistemas de arquivos ZFS.


O que é ZFS?

O sistema de arquivos do ZFS é um novo e revolucionário sistema de arquivos que basicamente altera a forma como os sistemas de arquivos são administrados, com recursos e benefícios que não são encontrados nos sistemas de arquivos disponíveis atualmente. O ZFS é robusto, dimensionável e fácil de administrar.

Armazenamento de ZFS em pool

O ZFS usa o conceito de pools de armazenamento para gerenciar armazenamentos físicos. Os sistemas de arquivos sempre foram construídos em cima de um dispositivo físico. Para abordar vários dispositivos e prevenir a redundância de dados, introduziu-se o conceito de um gerenciador de volumes, com o intuito de fornecer uma representação de um dispositivo único para que os sistemas de arquivos não precisassem ser modificados, a fim de aproveitar os vários dispositivos. Esse design adicionou outra camada de complexidade e, finalmente, impediu certos avanços do sistema de arquivos porque o sistema de arquivos não possuia controle sobre a localização física dos dados nos volumes virtualizados.

O ZFS elimina totalmente o gerenciamento de volumes. Em vez de forçá-lo a criar volumes virtualizados, o ZFS agrega os dispositivos em um conjunto de armazenamento. O conjunto de armazenamento descreve as características físicas do armazenamento (layout do dispositivo, redundância de dados e assim por diante) e atua como um armazenamento de dados arbitrário a partir do qual podem ser criados sistemas de arquivos. Os sistemas de arquivos já não estão mais limitados a dispositivos individuais, permitindo-lhes compartilhar espaço em disco com todos os sistemas de arquivos do conjunto. Já não é mais necessário pré-determinar o tamanho de um sistema de arquivos, visto que os sistemas de arquivos crescem automaticamente dentro do espaço em disco alocado para o conjunto de armazenamento. Quando novos armazenamentos são adicionados, todos os sistemas de arquivos que estão dentro do conjunto podem utilizar imediatamente o espaço adicional sem trabalho adicional. Em muitos aspectos, o conjunto de armazenamento trabalha de maneira similar a um sistema de memória virtual: quando uma memória DIMM é adicionada a um sistema, o sistema operacional não o força a executar comandos para configurar a memória e atribuí-la a processos individuais. Todos os processos do sistema usam automaticamente a memória adicional.

Semânticas transacionais

O ZFS é um sistema de arquivos transacional, o que significa que o estado do sistema de arquivos é sempre consistente no disco. Os sistemas de arquivos tradicionais substituem os dados no local, o que significa que, se a máquina apagar, por exemplo, entre o momento em que um bloco de dados está sendo alocado e o momento em que está sendo vinculado a um diretório, o sistema de arquivos ficará em um estado de inconsistência. Historicamente, esse problema era solucionado através da utilização do comando fsck. Esse comando era responsável por revisar e verificar o estado do sistema de arquivos e tentar reparar quaisquer inconsistências encontradas durante o processo. Esse problema de sistemas de arquivos inconsistentes deu muito trabalho aos administradores e nunca era garantido que o comando fsck resolvesse todos os possíveis problemas. Mais recentemente, os sistemas de arquivos introduziram o conceito de ocorrências . O processo de ocorrências registra ações em um diário diferente, que pode então ser reproduzido de forma segura se ocorrer uma quebra no sistema. Esse processo introduz uma sobrecarga desnecessária, pois os dados precisam ser gravados duas vezes, resultando frequentemente em novos conjuntos de problemas, tais como quando o diário não pode ser reproduzido apropriadamente.

Com um sistema de arquivos transacional, os dados são gerenciados utilizando as semânticas de copiar ao gravar. Os dados nunca são substituídos e nenhuma seqüência de operações é totalmente comprometida ou totalmente ignorada. Assim, o sistema de arquivos nunca será corrompido por perdas acidentais de energia ou por quebra no sistema. Embora as últimas partes de dados gravadas possam se perder, o sistema de arquivos em si será sempre consistente. Além disso, os dados síncronos (escritos com o sinalizador O_DSYNC) sempre serão gravados antes de retornarem, de modo que nunca se perderão.

Somas de verificação e autocorreção de dados

Com o ZFS, todos os dados e metadados são verificados ao utilizar um algoritmo de soma de verificação selecionável pelo usuário. Os sistemas de arquivos tradicionais, que oferecem a soma de verificação, efetuavam tal soma com base em blocos sem necessidade, devido à camada de gerenciamento de volumes e ao design do sistema de arquivos tradicional. O design tradicional significa que determinadas falhas, tais como gravar um bloco completo em um local incorreto, podem resultar em dados incorretos mas sem erros de soma de verificação. As somas de verificação do ZFS são armazenadas de forma que essas falhas sejam detectados e possam ser recuperados adequadamente. Todas as somas de verificação e recuperações de dados são efetuadas na camada do sistema de arquivos e são evidentes para os aplicativos.

Além disso, o ZFS oferece a autocorreção de dados. O ZFS suporta conjuntos de armazenamento com níveis variados de redundância de dados. Quando um bloco de dados incorreto é detectado, o ZFS busca os dados corretos em outra cópia redundante e repara os dados incorretos substituindo-os pela cópia dados corretos.

Escalabilidade não paralela

Um elemento de design fundamental do sistema de arquivos do ZFS é a escalabilidade. O sistema de arquivos em si é de 128 bits, permitindo 256 quatrilhões de zettabytes de armazenamento. Todos os metadados estão alocados dinamicamente, de forma que não há necessidade de pré-alocar inodes ou de limitar a escalabilidade do sistema de arquivos quando este for criado pela primeira vez. Todos os algoritmos foram gravados levando-se em consideração a escalabilidade. Os diretórios podem possuir até 248 (256 trilhões) de entradas e não há limites para o número de sistemas de arquivos ou para o número de arquivos que pode ser contido em um sistema de arquivos.

Instantâneos do ZFS

Um instantâneo é uma cópia de somente leitura de um volume ou de um sistema de arquivos. Os instantâneos podem ser criados rápida e facilmente. No início, os instantâneos não utilizam espaço adicional em disco dentro do conjunto.

Conforme os dados dentro dos conjuntos de dados ativos são alterados, o instantâneo passa a utilizar mais espaço em disco devido às contínuas referências aos dados antigos. Como conseqüência, o instantâneo evita que os dados sejam liberados de novo no pool.

Administração simplificada

O mais importante é que o ZFS oferece um modelo de administração muito simplificado. Através do uso de um layout de sistema de arquivos hierárquico, da herança de propriedade e do gerenciamento automático de pontos de montagem e de semânticas compartilhadas de NFS, o ZFS facilita a criação e o gerenciamento de sistemas de arquivos sem a necessidade de vários comandos ou de editar os arquivos de configuração. Você pode definir facilmente as cotas ou reservas, habilitar ou desabilitar a compactação ou gerenciar os pontos de montagem de numerosos sistemas de arquivos com um único comando. É possível examinar ou substituir dispositivos sem conhecer um conjunto separado de comandos do gerenciador de volume. É possível enviar e receber fluxos de instantâneos do sistema de arquivos.

O ZFS gerencia sistemas de arquivos através de uma hierarquia que possibilita esse gerenciamento simplificado de propriedades como cotas, reservas, compactação e pontos de montagem. Nesse modelo, sistemas de arquivos são o ponto central de controle. Os sistemas de arquivos em si são muito baratos (equivalentes à criação de um novo diretório), de modo que você é estimulado a criar um sistema de arquivos para cada usuário, projeto, área de trabalho, etc. Esse design permite que você defina pontos de gerenciamento detalhados.

Terminologia do ZFS

Esta seção descreve a terminologia básica utilizada neste livro:

ambiente de inicialização alternativo

Um ambiente de inicialização criado pelo comando lucreate e possivelmente atualizado pelo comando luupgrade, mas que não está ativo ou não é o ambiente de inicialização principal. O ambiente de inicialização alternativo pode ser alterado para o ambiente de inicialização primário por meio da execução do comando luactivate.

soma de verificação

Uma verificação de 256 bits dos dados em um bloco de sistemas de arquivos. A capacidade da soma de verificação pode variar do fletcher4 (padrão) simples e rápido a verificações criptograficamente seguras como SHA256.

clone

Um sistema de arquivos cujo conteúdo inicial é idêntico ao conteúdo de um instantâneo.

Para informações sobre clones, consulte Visão geral dos clones do ZFS.

conjunto de dados

Um nome genérico dos componentes do ZFS a seguir: clones, sistemas de arquivos, instantâneos e volumes.

Cada conjunto de dados é identificado por um nome único no espaço de nome do ZFS. Os conjuntos de dados são identificados com o seguinte formato:

pool/caminho [@snapshot]

pool

Identifica o nome do pool de armazenamento que contém o conjunto de dados

caminho

É o nome do caminho delimitado por barra para o componente do conjunto de dados

instantâneo

É um componente opcional que identifica um instantâneo de um conjunto de dados

Para mais informações sobre conjuntos de dados, consulte o Capítulo 6Gerenciando sistemas de arquivos ZFS do Oracle Solaris.

sistema de arquivos

Conjunto de dados ZFS de tipo filesystem montado dentro do espaço de nome padrão do sistema e que se comporta como outros sistemas de arquivos.

Para mais informações sobre sistemas de arquivos, consulte o Capítulo 6Gerenciando sistemas de arquivos ZFS do Oracle Solaris.

espelho

Um dispositivo virtual que armazena cópias idênticas de dados em dois ou mais discos. Se um disco falha em um espelho, qualquer outro disco desse espelho pode fornecer os mesmos dados.

pool

Grupo lógico de dispositivos que descreve o layout e as características físicas do armazenamento disponível. O espaço em disco para os conjuntos de dados é alocado a partir de um conjunto.

Para mais informações sobre conjuntos de armazenamento, consulte o Capítulo 4Gerenciando conjuntos de armazenamento ZFS do Oracle Solaris.

ambiente de inicialização principal

Um ambiente de inicialização que é usado pelo comando lucreate para construir o ambiente de inicialização alternativo. Por padrão, o ambiente de inicialização primário é o ambiente de inicialização atual. Esse padrão pode ser ignorado com o uso da opção lucreate -s.

RAID-Z

Um dispositivo virtual que armazena dados e paridades em discos múltiplos. Para mais informações sobre o RAID-Z, consulte Configuração de pool de armazenamento RAID-Z.

resilvering

O processo de cópia de dados de um dispositivo para outro é conhecido como resilvering. Por exemplo, se um dispositivo do espelho é substituído ou colocado off-line, os dados de um dispositivo do espelho atualizado são copiados para o dispositivo do espelho recém-restaurado. Em produtos de gerenciamento de volumes tradicionais, faz-se referência a esse processo como resincronização espelhada.

Para mais informações sobre resilvering do ZFS, consulte Exibindo o status do resilvering.

instantâneo

Uma cópia de somente de leitura de um volume ou de um sistema de arquivos em um determinado ponto do tempo.

Para mais informações sobre instantâneos, consulte Visão geral dos instantâneos do ZFS.

dispositivo virtual

Dispositivo lógico em um pool, que pode ser um dispositivo físico, um arquivo ou um conjunto de dispositivos.

Para mais informações sobre dispositivos virtuais, consulte Exibindo informações do dispositivo virtual do pool de armazenamento.

volume

Um conjunto de dados que representa um dispositivo de bloco. Por exemplo, você pode criar um volume ZFS como um dispositivo de permuta.

Para obter informações sobre volumes ZFS, consulte Volumes ZFS.

Requisitos para nomeação de componentes do ZFS

Cada componente do ZFS, tal como conjuntos de dados e conjuntos, deve ser nomeado de acordo com as regras a seguir:

Além disso, não são permitidos componentes vazios.