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