Eu encontrei o problema. O kernel foi compilado com grsecurity , que oculta processos de outros usuários. Com o kernel padrão, tudo funciona bem.
No meu antigo Debian Wheezy eu vejo como um usuário normal sem sudo todos os processos de todos os usuários em htop
. No meu novo Debian Wheezy eu só vejo meus próprios processos.
A diferença que notei é que no sistema antigo /proc/1/
tem r-xr-xr-x
permissões e no novo somente r-x------
.
A linha de /etc/fstab
:
# <file system> <mount point> <type> <options> <dump> <pass>
proc /proc proc defaults 0 0
mount
retorna o seguinte:
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
Quando adiciono hidepid=0
e reinicializo: hidepid=0
.
# <file system> <mount point> <type> <options> <dump> <pass>
proc /proc proc defaults,hidepid=0 0 0
mount
ainda retorna o mesmo que sem:
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
O que devo fazer para ver todos os processos como um usuário normal?
hidepid
é uma opção de montagem para procfs que oculta processos de outros usuários. Existem três configurações:
hidepid=0
: Qualquer pessoa pode ler os arquivos legíveis em /proc/PID
hidepid=1
: os usuários podem acessar apenas os diretórios e arquivos /proc/PID
que pertencem ao usuário. hidepid=2
: O mesmo que hidepid=1
, mas os processos de outros usuários nem serão visíveis em /proc/PID
Para ver as opções de montagem com as quais /proc
foi montado, você pode executar mount | grep /proc
.
Para mais informações, veja a seção de opções de montagem na documentação do kernel para o sistema de arquivos proc e o artigo nixCraft sobre o assunto.
Tags permissions process proc linux