O provedor de hospedagem corrigiu o problema. Eu não sei exatamente o que era; eles responderam ao meu bilhete:
We found an selinux issue on the hostnode, this has been permanently correct.
Estou tentando parar o PostgreSQL, mas isso resulta em um erro estranho sobre /proc/
:
root@dw0wanydbpv14fred:~# service postgresql stop
* Stopping PostgreSQL 9.3 database server
* Error: /proc must be mounted <----- what ???
To mount /proc at boot you need an /etc/fstab line like:
proc /proc proc defaults
In the meantime, run "mount proc /proc -t proc"
Error: pid file is invalid, please manually kill the stale server process. [fail]
Mas /proc
já foi montado:
# ls -ld /proc
drwxr-xr-x 33 root root 0 Aug 27 23:52 /proc
Tentando montá-lo novamente (como sugere a mensagem de erro):
# mount proc /proc -t proc
mount: proc already mounted
É montado automaticamente na verdade:
# cat /etc/fstab
proc /proc proc defaults 0 0
none /dev/pts devpts rw,gid=5,mode=620 0 0
none /run/shm tmpfs defaults 0 0
Você tem alguma ideia sobre o que pode estar acontecendo? Por que não consigo parar o PostgreSQL, por que o erro sobre /proc/
?
ps
funciona:
# ps
PID TTY TIME CMD
508 pts/1 00:00:00 bash
591 pts/1 00:00:00 ps
Este é um servidor OpenVZ virtuailzed ubuntu-14.04-x86_64-minimal
recém-provisionado hospedado pelo Wable (wable.com). Eu não fiz muito mais do que configurar o local para o UTF-8 e instalar o PostgreSQL: aptitude install postgresql-9.3 postgresql-contrib-9.3
.
Esta resposta do StackOverflow sugere configurar as permissões em /proc/
, mas não posso acreditar que as permissões estejam erradas por padrão? Eu segui a sugestão de alterar as permissões de /proc/
para 755, não ajudou.
Atualizar 1 dia depois: Mais alguns detalhes, conforme solicitado:
# ls -l /proc/meminfo
-rwx--x--x 1 root root 0 Aug 31 01:03 /proc/meminfo
# ls -la /proc | grep '???' # finds nothing
#
# uname -a
Linux dw0wanydbpv14fred 2.6.32-042stab092.2 #1 SMP Tue Jul 8 10:35:55 MSK 2014 x86_64 x86_64 x86_64 GNU/Linux
Executar ps
como outro usuário (Postgres) não funciona: (parece estranho. E service postgresql stop
troca usuário?)
root@dw0wanydbpv14fred:~# su - postgres
postgres@dw0wanydbpv14fred:~$ ps
Error: /proc must be mounted
To mount /proc at boot you need an /etc/fstab line like:
proc /proc proc defaults
In the meantime, run "mount proc /proc -t proc"
Eu também criei um novo usuário ( useradd username
), ele recebeu o mesmo erro.
dmesg
não diz nada:
# dmesg
#
E var/log/syslog
não contém nada interessante, apenas algumas mensagens não interessantes do cron.
Depois de executar os comandos acima, concedeu a permissão de leitura em /proc/meminfo
a todos, não ajudou:
# ll -l /proc/meminfo
-rwxr-xr-x 1 root root 0 Aug 31 01:13 /proc/meminfo*
(ainda recebo o mesmo erro: Error: /proc must be mounted
.)
Atualização 2: eu sou capaz de reproduzir o erro da seguinte forma:
Crie um novo OpenVZ ubuntu-14.04-x86_64-minimal em Wable.com. Então:
apt-get update
apt-get upgrade
locale-gen en_US.UTF-8
update-locale LANG=en_US.utf-8 LC_MESSAGES=POSIX
apt-get install postgresql-9.3 postgresql-contrib-9.3
Depois disso, os comandos de serviço falham com "Erro: / proc deve ser montado" (também após uma reinicialização):
# service postgresql status
9.3/main (port 5432): online
# service postgresql stop
* Stopping PostgreSQL 9.3 database server
* Error: /proc must be mounted
To mount /proc at boot you need an /etc/fstab line like:
proc /proc proc defaults
In the meantime, run "mount proc /proc -t proc"
Error: pid file is invalid, please manually kill the stale server process.
Eu criei um ticket no provedor de hospedagem.