Я пытаюсь запустить сценарий во время входа в систему, используя PAM и libpam_exec;
Я добавил эту строку в нужный файл в /etc/pam.d/:
auth required pam_exec.so debug log=/var/log/debug /usr/local/bin/test.sh
и просто чтобы проверить, работает ли он, сценарий выглядит так:
#!/bin/bash
## do nothing, except return success (allow login..)
exit 0;
однако клиент отклоняется с "критической ошибкой", и журнал отладки сообщает об этой странной ошибке:
bash: xmalloc: ../bash/locale.c:73: cannot allocate 2 bytes (0 bytes allocated)
Я искал повсюду и не смог найти ничего полезного по этой конкретной проблеме .. журнал отладки невероятно расплывчатый, и я просто не уверен, что делать дальше?
Я думал (в крайнем случае) о том, чтобы выкопать исходный код для bash, чтобы посмотреть, что находится в строке 73 locale.c .. или просто использовать другой модуль ... но у меня есть несколько планов для pam_exec, и я не особо как реализация (например) pam_script.
Есть ли у кого-нибудь предложения?
примечание: работает Ubuntu 12.04 lts