Se você analisar /var/run
em seu sistema, verá que é realmente um link simbólico para /run
:
# ls -ld /var/run
lrwxrwxrwx. 1 root root 6 Jan 19 09:12 /var/run -> ../run
E se você examinar /run
, verá que na verdade é um ponto de montagem tmpfs
:
# mount | grep /run
tmpfs on /run type tmpfs (rw,nosuid,nodev,seclabel,mode=755)
Um sistema de arquivos tmpfs
é um sistema de arquivos na memória: qualquer coisa lá desaparece quando o sistema é reinicializado. Como Federico diz em seu comentário, o CentOS 7 (e o Fedora e o RHEL 7, etc.) usam o recurso systemd-tmpfiles
para criar automaticamente coisas como diretórios de bloqueio e outros locais de armazenamento efêmero quando o sistema inicializa.
O pacote postgresql-server
incluído no CentOS 7 já faz a coisa certa:
# rpm -ql postgresql-server | grep tmpfiles
/usr/lib/tmpfiles.d/postgresql.conf
# cat /usr/lib/tmpfiles.d/postgresql.conf
d /var/run/postgresql 0755 postgres postgres -
Se você estiver usando um pacote postgresql de terceiros, não se surpreenda se ele não se integrar corretamente ao CentOS. Você pode corrigir manualmente configurando a mesma entrada tmpfiles.d
mostrada aqui.