Ignorar Links de Navegao | |
Sair do Modo de Exibio de Impresso | |
![]() |
Guia de administração do Oracle Solaris ZFS Oracle Solaris 10 1/13 Information Library (Português (Brasil)) |
1. Sistema de arquivos do Oracle Solaris ZFS (introdução)
2. Introdução ao ZFS do Oracle Solaris
3. Gerenciando pools de armazenamento do Oracle Solaris ZFS
4. Instalando e inicializando um sistema de arquivos raiz do Oracle Solaris ZFS
5. Gerenciando sistemas de arquivos ZFS do Oracle Solaris
Gerenciando de sistemas de arquivos ZFS (visão geral)
Criando, destruindo e renomeando sistemas de arquivos ZFS
Criando um sistema de arquivos ZFS
Destruindo um sistema de arquivos ZFS
Renomeando um sistema de arquivos ZFS
Introduzindo as propriedades do ZFS
Propriedades nativas somente leitura do ZFS
Propriedades nativas definíveis do ZFS
Propriedades de usuário do ZFS
Consultando informações sobre o sistema de arquivos ZFS
Listando informações básicas do ZFS
Criando consultas complexas de ZFS
Montando sistemas de arquivos ZFS
Gerenciando pontos de montagem do ZFS
Pontos de montagem automáticos
Montando sistemas de arquivos ZFS
Usando propriedades de montagem temporárias
Desmontando sistemas de arquivos
Compartilhando e descompartilhando sistemas de arquivos ZFS
Controlando a semântica de compartilhamento
Descompartilhando sistemas de arquivos ZFS
Compartilhando sistemas de arquivos ZFS
Comportamento de compartilhamento de legado
Definindo cotas e reservas do ZFS
Definindo cotas em sistemas de arquivos ZFS
Definindo usuário e grupo de cotas em um sistema de arquivos ZFS
Definindo reservas nos sistemas de arquivos ZFS
Atualização de sistemas de arquivos ZFS
6. Trabalhando com instantâneos e clones do Oracle Solaris ZFS
7. Uso de ACLs e atributos para proteger arquivos do Oracle Solaris ZFS
8. Administração delegada do ZFS do Oracle Solaris
9. Tópicos avançados do Oracle Solaris ZFS
10. Solução de problemas e recuperação de pools do Oracle Solaris ZFS
11. Práticas Recomendadas do Oracle Solaris ZFS
As propriedades do conjunto de dados são gerenciadas através dos subcomandos set, inherit e get do comando zfs.
O comando zfs set pode ser usado para modificar qualquer propriedade definível de conjunto de dados. Ou então, é possível utilizar o comando zfs create para definir as propriedades quando o conjunto de dados é criado. Para obter uma lista de propriedades definíveis de conjunto de dados, consulte Propriedades nativas definíveis do ZFS.
O comando zfs set utiliza uma sequência de propriedade/valor no formato de propriedade=valor seguido por um nome de conjunto de dados. Somente uma propriedade pode ser configurada ou modificada durante cada chamada zfs set.
O exemplo abaixo define a propriedade atime como off para tank/home.
# zfs set atime=off tank/home
Além disso, qualquer propriedade do sistema de arquivos pode ser definida quando o sistema de arquivos é criado. Por exemplo:
# zfs create -o atime=off tank/home
É possível especificar valores de propriedades numérica utilizando os sufixos fáceis de entender (em tamanhos crescentes): BKMGTPEZ. Todos estes sufixos podem ser seguidos de b opcional, indicando bytes, com exceção do sufixo B, que já indica bytes. As quatro chamadas a seguir de zfs set são expressões numéricas equivalentes que configuram a propriedade quota para ser definida com o valor de 20 GB no sistema de arquivos users/home/mark:
# zfs set quota=20G users/home/mark # zfs set quota=20g users/home/mark # zfs set quota=20GB users/home/mark # zfs set quota=20gb users/home/mark
Se você tentar definir uma propriedade em um sistema de arquivos que esteja 100% cheio, verá uma mensagem semelhante a esta:
# zfs set quota=20gb users/home/mark cannot set property for '/users/home/mark': out of space
Os valores de propriedades não numéricas fazem a diferenciação entre maiúsculas e minúsculas e devem ser em minúsculas, com exceção de mountpoint e sharenfs. Os valores destas propriedades podem apresentar maiúsculas e minúsculas misturadas.
Para obter mais informações sobre o comando zfs set, consulte zfs(1M).
Todas as propriedades configuráveis, com exceção das cotas e reservas, herdam seu valor do sistema de arquivos pai, a menos que uma cota ou reserva seja definida explicitamente no sistema de arquivos descendente. Se nenhum antepassado tiver um valor explícito definido para uma propriedade herdada, é usado o valor padrão para a propriedade. É possível utilizar o comando zfs inherit para limpar um valor de propriedade, fazendo, assim, com que o valor seja herdado do conjunto de dados pai.
O exemplo a seguir usa o comando zfs set para ativar a compactação do sistema de arquivos tank/home/jeff. Em seguida, zfs inherit é utilizado para limpar a propriedade compression, fazendo, assim, com que a propriedade herde o valor padrão de off. Como nem home e tampouco tank possui a propriedade compression definida localmente, o valor padrão é utilizado. Se ambos possuírem a compactação ativada, o valor definido no próximo predecessor seria utilizado (neste exemplo home).
# zfs set compression=on tank/home/jeff # zfs get -r compression tank/home NAME PROPERTY VALUE SOURCE tank/home compression off default tank/home/eric compression off default tank/home/eric@today compression - - tank/home/jeff compression on local # zfs inherit compression tank/home/jeff # zfs get -r compression tank/home NAME PROPERTY VALUE SOURCE tank/home compression off default tank/home/eric compression off default tank/home/eric@today compression - - tank/home/jeff compression off default
O subcomando inherit é aplicado repetidamente quando a opção -r está especificada. No exemplo abaixo, o comando faz com que o valor da propriedade compression seja herdada por tank/home e pelos descendentes que possa ter:
# zfs inherit -r compression tank/home
Observação - Tenha em mente que o uso da opção -r limpa a definição da propriedade atual de todos os sistema de arquivos descendentes.
Para mais informações sobre o comando zfs inherit, consulte zfs(1M).
A forma mais simples de consultar os valores de uma propriedade é usando o comando zfs list. Para obter mais informações, consulte Listando informações básicas do ZFS. No entanto, para consultas complexas e para script, use o comando zfs get para fornecer informações mais detalhadas em um formato personalizado.
O comando zfs get pode ser usado para recuperar qualquer propriedade de conjunto de dados. O exemplo a seguir ilustra como recuperar um valor de propriedade único em um conjunto de dados:
# zfs get checksum tank/ws NAME PROPERTY VALUE SOURCE tank/ws checksum on default
A quarta coluna, SOURCE, indica a origem do valor da propriedade. A tabela a seguir define os possíveis valores de origem.
Tabela 5-3 Possíveis valores de SOURCE (comando zfs get)
|
É possível utilizar a palavra-chave especial todos para recuperar todas os valores de propriedade do conjunto de dados. Os exemplos a seguir utilizam a palavra-chave todos:
Observação - As propriedades casesensitivity, nbmand, normalization, sharesmb, utf8only e vscan não são totalmente operacionais na versão 10 do Oracle Solaris porque o serviço Oracle Solaris SMB não possui suporte na versão 10 do Oracle Solaris.
# zfs get all tank/home NAME PROPERTY VALUE SOURCE tank/home type filesystem - tank/home creation Mon Dec 3 13:10 2012 - tank/home used 291K - tank/home available 58.7G - tank/home referenced 291K - tank/home compressratio 1.00x - tank/home mounted yes - tank/home quota none default tank/home reservation none default tank/home recordsize 128K default tank/home mountpoint /tank/home default tank/home sharenfs off default tank/home checksum on default tank/home compression off default tank/home atime on default tank/home devices on default tank/home exec on default tank/home setuid on default tank/home readonly off default tank/home zoned off default tank/home snapdir hidden default tank/home aclmode discard default tank/home aclinherit restricted default tank/home canmount on default tank/home shareiscsi off default tank/home xattr on default tank/home copies 1 default tank/home version 5 - tank/home utf8only off - tank/home normalization none - tank/home casesensitivity mixed - tank/home vscan off default tank/home nbmand off default tank/home sharesmb off default tank/home refquota none default tank/home refreservation none default tank/home primarycache all default tank/home secondarycache all default tank/home usedbysnapshots 0 - tank/home usedbydataset 291K - tank/home usedbychildren 0 - tank/home usedbyrefreservation 0 - tank/home logbias latency default tank/home sync standard default tank/home rekeydate - default tank/home rstchown on default
A opção -s de zfs get permite especificar, por tipo de origem, o tipo de propriedades a exibir. Esta opção usa uma lista separada por vírgulas indicando os tipos de origem desejados. Somente as propriedades com o tipo de origem especificado são exibidas. Os tipos de origem válidos são local, default, inherited, temporary e none. O exemplo a seguir ilustra todas as propriedades definidas localmente em tank/ws.
# zfs get -s local all tank/ws NAME PROPERTY VALUE SOURCE tank/ws compression on local
Todas as opções acima podem ser combinadas com a opção -r para exibir repetidamente as propriedades especificadas em todos os filhos do sistema de arquivos especificado. No exemplo a seguir, todas as propriedades temporárias de todos os sistemas de arquivos dentro de tank/home são exibidas repetidamente:
# zfs get -r -s temporary all tank/home NAME PROPERTY VALUE SOURCE tank/home atime off temporary tank/home/jeff atime off temporary tank/home/mark quota 20G temporary
É possível consultar os valores de propriedade utilizando o comando zfs get sem especificar um sistema de arquivos destino, o que significa que o comando opera em todos os conjuntos ou sistemas de arquivos. Por exemplo:
# zfs get -s local all tank/home atime off local tank/home/jeff atime off local tank/home/mark quota 20G local
Para obter mais informações sobre o comando zfs get, consulte zfs(1M).
O comando zfs get oferece suporte às opções -H e -o, que estão destinadas a script. É possível utilizar a opção -H para omitir o cabeçalho de informação e substituir o espaço em branco com o caractere Tab. O espaço em branco uniforme leva em consideração os dados facilmente analisáveis. É possível utilizar a opção -o para personalizar a saída das seguintes maneiras:
O nome literal pode ser utilizado com uma lista de propriedades separadas por vírgula, como definido na seção Introduzindo as propriedades do ZFS.
Uma lista de campos literais separados por vírgula, nome, valor, propriedades e origem, a ser retirada seguida por um espaço e um argumento, que é uma lista de propriedades separadas por vírgula.
O exemplo a seguir ilustra como recuperar um único valor utilizando as opções -H e -o de zfs get:
# zfs get -H -o value compression tank/home on
A opção -p relata valores numéricos como seus valores exatos. Por exemplo, 1 MB seria relatado como 1000000. Esta opção pode ser usada da seguinte forma:
# zfs get -H -o value -p used tank/home 182983742
É possível utilizar a opção -r, juntamente com qualquer uma das opções anteriores, para recuperar recursivamente os valores solicitados para todos os descendentes. O exemplo a seguir utiliza as opções -H, -o e -r para recuperar o nome do sistema de arquivos e o valor da propriedade utilizada para export/home e seus descendentes, ao mesmo tempo em que omite a saída de cabeçalho:
# zfs get -H -o name,value -r used export/home