ChinaUnix首页 > 精华文章 > FTP服务器 > 正文

[保留] 请教vsftp使用pam_mysql后的数据库连接问题


http://www.chinaunix.net 作者:hp999  发表于:2006-08-22 23:21:51
发表评论】 【查看原文】 【FTP服务器讨论区】【关闭

昨天在机子上安装了postfix。今天要再装vsftpd-2.0.5和pam_mysql_0.7RC1。
我的机子之前就已安装了mysql-5.0.22。现在在设置好vsftpd.conf和pam.d/ftp文件后,在mysql已运行且可以进入mysql环境的情况下,出现了问题,导致无法登录vsftp:
引用:
Aug 20 08:01:39 localhost vsftpd: pam_mysql - option verbose is set to "1"
Aug 20 08:01:39 localhost vsftpd: pam_mysql - pam_mysql_close_db() called.
Aug 20 08:01:39 localhost vsftpd: pam_mysql - pam_sm_authenticate() called.
Aug 20 08:01:39 localhost vsftpd: pam_mysql - pam_mysql_open_db() called.
Aug 20 08:01:39 localhost vsftpd: pam_mysql - MySQL error (Can't connect to local MySQL server through socket '/tmp/mysql.
sock' (2))
Aug 20 08:01:39 localhost vsftpd: pam_mysql - pam_mysql_open_db() returning 5.


现在我的my.cnf文件中定义的是socket=/var/lib/mysql/mysql.sock
本来在最初安装mysql时,my.cnf中的socket是定义为/tmp/mysql.sock。而由于在安装postfix的过程中出问题,我重装编译安装过postfix,无法识别到/tmp/mysql.sock,所以只好将my.cnf中的sock又改为了/var/lib/mysql/mysql.sock。
才使postfix运行正常。所以mysql应该是不会有错的。

装好postfix后,我要再装vsftpd,所以又安装了pam_mysql-0.7RC1,现在的问题也就出现在这里,不知为何pam_mysql会去找/tmp/mysql.sock。

有无哪位大侠能帮忙,看看是否有何方法能让pam_mysql识别到my.cnf中定义的/var/lib/mysql/mysql.sock?



 wolfg 回复于:2006-08-20 15:14:25

试试ln -sf /var/lib/mysql/mysql.sock /tmp/mysql.sock

可能是pam_mysql的程序写死了,就找/tmp/mysql.sock


 hp999 回复于:2006-08-20 16:53:46

谢谢wolfg,将/tmp/smysql.sock链接到/var/lib//mysql/mysql.sock后,就确实可以登录了。
可是真不知咋回事,为何pam_mysql只认/tmp/mysql.sock.


 ThinkPad_ 回复于:2006-08-22 23:21:51

应该是mysql的问题,你让mysql以root用户运行看看,或者是把/tmp的用户组权限改成mysql看看。




原文链接:http://bbs.chinaunix.net/viewthread.php?tid=814490
转载请注明作者名及原文出处