1、出現這樣的問題是因爲缺少用戶配置文件,因爲在linux下每次通過useradd創建新的用戶時,都會將所有的配置文件從/etc/skel複製到新用戶的主目錄下,一般默認在home下面的新用戶主目錄下,而關於/etc/skel這個目錄,是主要被useradd所用到。
2.安裝postgresql後,安裝程序會自動創建postgres這個用戶,但是使用 su - postgres切換用戶時就無法進入,證明安裝程序其實也是使用的useradd這種方式。所以我們需要手動的將/etc/skel下的幾個文件cp到postgres用戶下
3. cd /etc/skel
ls -a
cp .bash_profile .bash_rc .bash_logout 到postgres用戶目錄
我的postgres的安裝目錄是: /opt/PostgreSQL/9.4
然後重啓centos7系統
4、su - postgres用戶就能正常成功了