Por que “cat / proc / net / dev” mostra apenas 0 para usuários não-root?

2

Recentemente, notei que meu script para monitorar a rede não me mostrou nada quando foi executado com um usuário não raiz.

Meu script está simplesmente olhando para /proc/net/dev , que tem a seguinte permissão (444):

-r--r--r--  1 root  root 0 Feb 26 09:31 dev

No entanto, mesmo que todos tenham acesso de leitura, notei que usuários não-root não podem obter nenhum dado

> cat /proc/net/dev
Inter-|   Receive                                                |  Transmit
 face |bytes    packets errs drop fifo frame compressed multicast|bytes    packets errs drop fifo colls carrier compressed
  eth0:       0       0    0    0    0     0          0         0        0       0    0    0    0     0       0          0
  eth1:       0       0    0    0    0     0          0         0        0       0    0    0    0     0       0          0
dummy0:       0       0    0    0    0     0          0         0        0       0    0    0    0     0       0          0
 bond0:       0       0    0    0    0     0          0         0        0       0    0    0    0     0       0          0
ip6tnl0:       0       0    0    0    0     0          0         0        0       0    0    0    0     0       0          0
  sit0:       0       0    0    0    0     0          0         0        0       0    0    0    0     0       0          0
    lo:       0       0    0    0    0     0          0         0        0       0    0    0    0     0       0          0
 tunl0:       0       0    0    0    0     0          0         0        0       0    0    0    0     0       0          0

Quando adiciono o sudo ao comando, aqui está o resultado que obtenho

> sudo cat /proc/net/dev
Inter-|   Receive                                                |  Transmit
 face |bytes    packets errs drop fifo frame compressed multicast|bytes    packets errs drop fifo colls carrier compressed
  eth0: 69684609  360869    0    0    0     0          0    234060 419896366  484740    0    0    0     0       0          0
  eth1:       0       0    0    0    0     0          0         0        0       0    0    0    0     0       0          0
dummy0:       0       0    0    0    0     0          0         0        0       0    0    0    0     0       0          0
 bond0:       0       0    0    0    0     0          0         0        0       0    0    0    0     0       0          0
ip6tnl0:       0       0    0    0    0     0          0         0        0       0    0    0    0     0       0          0
  sit0:       0       0    0    0    0     0          0         0        0       0    0    0    0     0       0          0
    lo: 113595057  801133    0    0    0     0          0         0 113595057  801133    0    0    0     0       0          0
 tunl0:       0       0    0    0    0     0          0         0        0       0    0    0    0     0       0          0

Estou interessado em saber por que o / proc / net / dev tem esse comportamento?

A propósito, meu servidor está usando o Debian 8.3 (Jessie).

    
por Gary Olsson 26.02.2016 / 09:54

1 resposta

3

conforme indicado neste link: link

Seu kernel provavelmente está usando a opção de compilação grsec que impede você de acessar as estatísticas. Você deveria tentar com outro kernel.

    
por 28.02.2016 / 18:43