
Согласно D(x)
макросу, определенному в pam_macros.h
(исходный код) и используется следующим образом:
D(("Hello PAM World"));
Где находится этот журнал CentOS7
?
Обратите внимание, что я использую флаг debug
в своем pam.d
файле конфигурации.
Я также попробовал следующую команду:
grep -rnw '/var/log/' -e "Hello Pam World"
Но безуспешно.
решение1
Реализация PAM от Apple для Mac OS X, возможно, не самый идеальный источник информации для PAM на Centos 7.
# yum -y install pam-devel
# rpm -ql pam-devel | grep macro
/usr/include/security/_pam_macros.h
# grep FILE `!!`
grep FILE `rpm -ql pam-devel | grep macro`
* _PAM_LOGFILE must exist and be writable to the programs you debug.
#ifndef _PAM_LOGFILE
#define _PAM_LOGFILE "/var/run/pam-debug.log"
FILE *logfile;
if ((fd = open(_PAM_LOGFILE, O_WRONLY|O_NOFOLLOW|O_APPEND)) != -1) {
if ((fd = open(_PAM_LOGFILE, O_WRONLY|O_APPEND)) != -1) {
FILE *logfile;
if ((fd = open(_PAM_LOGFILE, O_WRONLY|O_NOFOLLOW|O_APPEND)) != -1) {
if ((fd = open(_PAM_LOGFILE, O_WRONLY|O_APPEND)) != -1) {
_pam_output_debug_info(__FILE__, __FUNCTION__, __LINE__); \
Кроме того, PAM должен быть скомпилирован с DEBUG
определением, чтобы любой из этих кодов был доступен.