Postgresql 9.4在Centos7下无法启动服务的问题分析
2016-12-14 15:04
627 查看
最近在升级服务器的过程中遇到一台服务器无法启动postgresql服务, 查日志得知无法在/var/run/postgresql下建立文件, 而这个/var/run/postgresql路径手动建立并将其owner改为postgres后再启动postgresql服务则成功. 可是重启服务器后, /var/run/postgresql目录自动消失.
很明显/var/run/postgresql目录为临时目录, 经测试,它也不是postgresql服务自身建立的,必须要先有/var/run/postgresql后它才引用. 后来有经大神同事查到根本原因, 正常的postgresql安装后,在/usr/lib/tmpfiles.d下有 postgresql-9.4.conf这个文件,里面有一行"d /var/run/postgresql 0755 postgres postgres -" , 而出问题的这台服务器就缺少这个文件.
tmpfiles.d下面的配置文件在系统启动时会根据配置自动生成指定的临时目录并将赋于指定的所有者,后才运行各种服务 ...
[root@xxxxx tmpfiles.d]# pwd
/usr/lib/tmpfiles.d
[root@xxxxx tmpfiles.d]# ll
total 124
-rw-r--r--. 1 root root 91 Dec 1 2015 abrt.conf
-rw-r--r--. 1 root root 125 Nov 20 2015 cups.conf
-rw-r--r--. 1 root root 264 Nov 20 2015 cups-lp.conf
-rw-r--r--. 1 root root 464 Nov 20 2015 etc.conf
-rw-r--r--. 1 root root 595 Nov 20 2015 gvfsd-fuse-tmpfiles.conf
-rw-r--r-- 1 root root 77 Nov 20 2015 httpd.conf
-rw-r--r--. 1 root root 39 Nov 20 2015 initscripts.conf
-rw-r--r--. 1 root root 75 Jul 25 2015 iscsi.conf
-rw-r--r--. 1 root root 1181 Nov 20 2015 legacy.conf
-rw-r--r--. 1 root root 34 Jun 10 2014 libselinux.conf
-rw-r--r--. 1 root root 88 Nov 20 2015 libstoragemgmt.conf
-r--r--r--. 1 root root 61 Nov 21 2015 lvm2.conf
-rw-r--r--. 1 root root 34 Nov 21 2015 mdadm.conf
-rw-r--r--. 1 root root 110 Aug 18 2015 pam.conf
-rw-r--r-- 1 root root 45 Dec 14 12:44 postgresql-9.4.conf
-rw-r--r--. 1 root root 61 Jan 27 2014 ppp.conf
-rw-r--r--. 1 root root 34 Sep 9 2015 radvd.conf
-rw-r--r--. 1 root root 87 Nov 20 2015 rpcbind.conf
-rw-r--r--. 1 root root 22 Nov 20 2015 rpm.conf
-rw-r--r--. 1 root root 60 Nov 21 2015 samba.conf
-rw-r--r--. 1 root root 228 Nov 20 2015 sap.conf
-rw-r--r--. 1 root root 137 Nov 20 2015 selinux-policy.conf
-rw-r--r--. 1 root root 58 Nov 20 2015 setroubleshoot.conf
-rw-r--r--. 1 root root 101 Nov 20 2015 spice-vdagentd.conf
-rw-r--r-- 1 root root 33 Aug 13 2015 svnserve.conf
-rw-r--r--. 1 root root 1393 Nov 20 2015 systemd.conf
-rw-r--r--. 1 root root 496 Nov 20 2015 systemd-nologin.conf
-rw-r--r--. 1 root root 638 Nov 20 2015 tmp.conf
-rw-r--r--. 1 root root 56 May 4 2015 tuned.conf
-rw-r--r--. 1 root root 563 Nov 20 2015 var.conf
-rw-r--r--. 1 root root 623 Nov 20 2015 x11.conf
[root@xxxx tmpfiles.d]# cat postgresql-9.4.conf
d /var/run/postgresql 0755 postgres postgres
[root@xxxx tmpfiles.d]#
理应这个文件要postgresql的安装程序自动生成的,因为其他服务器都有这个文件, 为什么这台服务器就没有?百思不得其解..
很明显/var/run/postgresql目录为临时目录, 经测试,它也不是postgresql服务自身建立的,必须要先有/var/run/postgresql后它才引用. 后来有经大神同事查到根本原因, 正常的postgresql安装后,在/usr/lib/tmpfiles.d下有 postgresql-9.4.conf这个文件,里面有一行"d /var/run/postgresql 0755 postgres postgres -" , 而出问题的这台服务器就缺少这个文件.
tmpfiles.d下面的配置文件在系统启动时会根据配置自动生成指定的临时目录并将赋于指定的所有者,后才运行各种服务 ...
[root@xxxxx tmpfiles.d]# pwd
/usr/lib/tmpfiles.d
[root@xxxxx tmpfiles.d]# ll
total 124
-rw-r--r--. 1 root root 91 Dec 1 2015 abrt.conf
-rw-r--r--. 1 root root 125 Nov 20 2015 cups.conf
-rw-r--r--. 1 root root 264 Nov 20 2015 cups-lp.conf
-rw-r--r--. 1 root root 464 Nov 20 2015 etc.conf
-rw-r--r--. 1 root root 595 Nov 20 2015 gvfsd-fuse-tmpfiles.conf
-rw-r--r-- 1 root root 77 Nov 20 2015 httpd.conf
-rw-r--r--. 1 root root 39 Nov 20 2015 initscripts.conf
-rw-r--r--. 1 root root 75 Jul 25 2015 iscsi.conf
-rw-r--r--. 1 root root 1181 Nov 20 2015 legacy.conf
-rw-r--r--. 1 root root 34 Jun 10 2014 libselinux.conf
-rw-r--r--. 1 root root 88 Nov 20 2015 libstoragemgmt.conf
-r--r--r--. 1 root root 61 Nov 21 2015 lvm2.conf
-rw-r--r--. 1 root root 34 Nov 21 2015 mdadm.conf
-rw-r--r--. 1 root root 110 Aug 18 2015 pam.conf
-rw-r--r-- 1 root root 45 Dec 14 12:44 postgresql-9.4.conf
-rw-r--r--. 1 root root 61 Jan 27 2014 ppp.conf
-rw-r--r--. 1 root root 34 Sep 9 2015 radvd.conf
-rw-r--r--. 1 root root 87 Nov 20 2015 rpcbind.conf
-rw-r--r--. 1 root root 22 Nov 20 2015 rpm.conf
-rw-r--r--. 1 root root 60 Nov 21 2015 samba.conf
-rw-r--r--. 1 root root 228 Nov 20 2015 sap.conf
-rw-r--r--. 1 root root 137 Nov 20 2015 selinux-policy.conf
-rw-r--r--. 1 root root 58 Nov 20 2015 setroubleshoot.conf
-rw-r--r--. 1 root root 101 Nov 20 2015 spice-vdagentd.conf
-rw-r--r-- 1 root root 33 Aug 13 2015 svnserve.conf
-rw-r--r--. 1 root root 1393 Nov 20 2015 systemd.conf
-rw-r--r--. 1 root root 496 Nov 20 2015 systemd-nologin.conf
-rw-r--r--. 1 root root 638 Nov 20 2015 tmp.conf
-rw-r--r--. 1 root root 56 May 4 2015 tuned.conf
-rw-r--r--. 1 root root 563 Nov 20 2015 var.conf
-rw-r--r--. 1 root root 623 Nov 20 2015 x11.conf
[root@xxxx tmpfiles.d]# cat postgresql-9.4.conf
d /var/run/postgresql 0755 postgres postgres
[root@xxxx tmpfiles.d]#
理应这个文件要postgresql的安装程序自动生成的,因为其他服务器都有这个文件, 为什么这台服务器就没有?百思不得其解..
相关文章推荐
- docker centos 无法用systemctl 启动服务的问题
- 解决centos7下tomcat启动正常,无法访问项目的问题
- Windows7下mysql安装后服务无法启动和启动后无法登录的问题解决的方法
- 解决centos7下tomcat启动正常,无法访问项目的问题
- 解决centos7下tomcat启动正常,无法访问项目的问题
- Centos7.2中DNS服务named无法启动问题解决方案
- CentOS 7下Tomcat启动后无法启动问题解决方法
- 解决centos7下tomcat启动正常,无法访问项目的问题
- CentOS7下docker服务无法启动的一般检查
- 解决MySQL服务无法启动(1067)的问题
- 关于SQL Server 2005服务无法启动,报3417错误。(附带重装SQL时解决COM+目录问题)(转帖)
- 解决OracleDBConsoleorcl服务无法启动问题(转)
- 解决PostgreSQL服务启动后占用100% CPU卡死的问题
- 关于SqlServer服务无法启动的症状分析和解决方法
- 修复IPSEC Services服务无法启动的问题
- SQL SERVER 2005服务无法启动问题的解决办法
- 如何解决win7中搜索服务无法启动的问题
- CentOS 5.2 安装后CLAMAV 0.94无法启动问题
- 密码引起的群集服务无法启动的问题