Мне не очень понравилась идея установить какой-нибудь сторонний инструмент sudo, поэтому вместо использования sudo-touchid я решил использовать трюк /etc/pam.d/sudo, и он творит чудеса. Я использую iTerm2 с Zsh, и с этой настройкой он работает правильно. Но когда я использую tmux (с командой reattach-to-user-namespace по умолчанию), sudo всегда запрашивает пароль. Кто-нибудь знает как это решить?
1 ответ
Я испытывал те же проблемы. Удивительно, но Touch ID работает в распределении экрана GNU от Apple, и, посмотрев на его реализацию, кажется, что screen
присоединяется к пространству имен пользователя на сеанс, а не к пространству имен пользователя.
Следующие патчи переносят этот подход в tmux
и reattach-to-user-namespace
и исправляют проблему для меня:
- https://github.com/ChrisJohnsen/tmux-MacOSX-pasteboard/pull/70
- https://github.com/tmux/tmux/pull/1434
РЕДАКТИРОВАТЬ: так как эти исправления вызвали некоторые технические проблемы (как объяснено в запросе на получение), я вместо этого решил проблему с помощью пользовательского модуля PAM для повторного присоединения к пространству имен для каждого сеанса пользователя перед запуском модуля pam_tid
: https://github.com/fabianishere/pam_reattach