df
e du
fornece uma visão total do uso, mas o problema é que eles não são divididos por usuário.
Existe uma ferramenta que faz isso? Eu descobri, quot
mas isso só funciona no ufs. Existe um equivalente para zfs ou nfs?
Para detalhar o uso, é possível escrever um script. Essa é a única alternativa?
A saída dezfs userspace filesystem
$ zfs userspace filesystem
cannot access dataset filesystem: dataset does not exist
A saída dezpool upgrade -v
$ zpool upgrade -v
This system is currently running ZFS pool version 32.
The following versions are supported:
VER DESCRIPTION
--- --------------------------------------------------------
1 Initial ZFS version
2 Ditto blocks (replicated metadata)
3 Hot spares and double parity RAID-Z
4 zpool history
5 Compression using the gzip algorithm
6 bootfs pool property
7 Separate intent log devices
8 Delegated administration
9 refquota and refreservation properties
10 Cache devices
11 Improved scrub performance
12 Snapshot properties
13 snapused property
14 passthrough-x aclinherit
15 user/group space accounting
16 stmf property support
17 Triple-parity RAID-Z
18 Snapshot user holds
19 Log device removal
20 Compression using zle (zero-length encoding)
21 Reserved
22 Received properties
23 Slim ZIL
24 System attributes
25 Improved scrub stats
26 Improved snapshot deletion performance
27 Improved snapshot creation performance
28 Multiple vdev replacements
29 RAID-Z/mirror hybrid allocator
30 Reserved
31 Improved 'zfs list' performance
32 One MB blocksize
Responder1
Para zfs, de acordo com opágina de manual do zfs, use zfs userspace filesystem
para obter uma listagem de todos os usuários em um sistema de arquivos e use zfs get [-r] userused@user filesystem
para obter o espaço usado por um usuário específico em um sistema de arquivos. Use a -r
opção para zfs get ...
obter o uso do usuário em todos os descendentes do sistema de arquivos também. Esteja ciente de que isso retornará não apenas sistemas de arquivos descendentes, mas também clones e instantâneos descendentes.
Até onde eu sei, o NFS não suporta tais operações diretamente - isso terá que ser feito através do sistema de arquivos nativo no servidor NFS.
Responder2
Para responder à sua pergunta específica, "Quais são as MELHORES maneiras de monitorar e relatar o uso do disco no Solaris", isso não seria realmente na forma de um conjunto específico de comandos ou de um script de shell, mas mais como um agente de terceiros que é instalado em seu sistema para manter o controle das estatísticas.
Dois produtos em particular que fazem isso extremamente bem são o NetIQ e o dynaTrace da Compuware, ambos produtos excelentes para ambientes corporativos e que fornecem relatórios extremamente detalhados. Eles também possuem ótimos recursos de alerta, APIs e até mesmo integração com vários outros produtos e suporte a sistemas de tickets.
Além disso, esses produtos são ótimos para planejamento de capacidade e são capazes de definir estatísticas de uso de disco em um nível tão granular quanto você desejar ou precisar. Ambos também suportam especificamente sistemas de arquivos ZFS em diversas versões do Solaris.