Descubra quem está usando uma montagem compartilhada?

Descubra quem está usando uma montagem compartilhada?

Temos um ponto de montagem compartilhado por muitos hosts Linux. Precisamos descobrir quais contas estão lendo/gravando arquivos usando quais contas e em que horário. Como devemos fazer isso?

Responder1

Se você tiver nfswatchinstalado, poderá usá-lo para determinar os hosts que estão acessando o servidor NFS. Você precisará usar o -clientsswitch.

Exemplo

$ sudo nfswatch -clients
mulder.mydom.net            Mon Oct 13 16:28:55 2014   Elapsed time:   00:01:00
Interval packets:   337 (network)        154 (to host)          0 (dropped)
Total packets:         1308 (network)        316 (to host)          0 (dropped)
                     Monitoring packets from interface vmbr0
                     int   pct    total                      int   pct    total
NFS3 Read             64   42%      162 TCP Packets          151   98%      293
NFS3 Write             0    0%        0 UDP Packets            2    1%       13
NFS Read               0    0%        0 ICMP Packets           0    0%        0
NFS Write              0    0%        0 Routing Control        0    0%        0
NFS Mount              0    0%        0 Addr Resolution        0    0%        3
Port Mapper            4    3%        4 Rev Addr Resol         0    0%        0
RPC Authorization      0    0%        0 Ether/FDDI Bdcst       2    1%       15
Other RPC Packets      1    1%        1 Other Packets          1    1%        7
                                 2 client hosts
Client host          int   pct    total Client host          int   pct    total
byers                  1    2%       13 skinner               63   98%      149

Na saída acima, há 2 hosts que estão usando ativamente o servidor NFS byerse skinner. Você pode ver a lista de clientes na parte inferior da saída.

Você também pode usar netstat -an | grep :2049para ver quais hosts estão se conectando ao servidor NFS.

Eu usaria, nfswatchpois ele pode registrar continuamente em um arquivo que pode ser revisado mais tarde.

Responder2

Existe um comando nfs que permite ver quais hosts montaram o sistema de arquivos NFS a partir do sistema do servidor (aliás, nem sempre totalmente preciso).

No entanto, rastrear isso em uma conta de usuário específica teria que ser feito em cada host individual executando algo como lsof.

informação relacionada