Проблема
Здається, це запитання було задано мільярд разів, але я все ще не в змозі автоматично розблокувати свій вхідний ключ.
Фон
Я автоматично входжу, chvt та startx по цих рядках в i3wm, який потім запускає модифікований i3lock . Я дуже хочу, щоб мій ключ входу в gnome автоматично розблокувався під час входу (або, можливо, при розблокуванні i3lock), але мені не вдалося успішно реалізувати жодну з інструкцій, які я знайшов в Інтернеті.
Знахідки
Арк вікі є все це про це , яку я намагався , але не зміг зробити. Я також оглянув різні питання / відповіді, які мають подібні інструкції безрезультатно.
Одне дивне, що я помітив, - це те, що я не в змозі розблокувати ключ входу через echo $LOGINPASSWORD | gnome-keyring-daemon --unlock
. journalctl
звіти
Jul 07 20:08:16 ERIS gnome-keyring-daemon[26585]: failed to unlock login keyring on startup
коли я відкриваю морського коня, щоб розблокувати його вручну, він повідомляє, що пароль для входу змінився, і просить мене ввести свій старий пароль. Журнал журналів
Jul 07 20:08:43 ERIS gnome-keyring-daemon[26585]: fixed login keyring password to match login password
після чого я не можу знову розблокувати брелок із моїм паролем (на щастя, я зробив резервну копію заздалегідь).
Додаткова інформація
Ось кілька відповідних /etc/pam.d/
файлів, сподіваємось, що тут нічого чутливого LOL (видалено коментарі для стислості, замовлення без змін. Зауважте, що я також спробував цей біт .xinitrc, але нічого не зробив). Єдине, що я додав вручну - це pam_gnome_keyring.so
біти, за винятком матеріалів у /etc/pam.d/i3lock ; все інше вже було, або за замовчуванням, або через якийсь інший пакет.
/etc/pam.d/login
auth optional pam_faildelay.so delay=3000000
auth [success=ok new_authtok_reqd=ok ignore=ignore user_unknown=bad default=die] pam_securetty.so
auth requisite pam_nologin.so
session [success=ok ignore=ignore module_unknown=ignore default=bad] pam_selinux.so close
session required pam_env.so readenv=1
session required pam_env.so readenv=1 envfile=/etc/default/locale
@include common-auth
auth optional pam_group.so
session required pam_limits.so
session optional pam_lastlog.so
session optional pam_motd.so motd=/run/motd.dynamic
session optional pam_motd.so noupdate
session optional pam_mail.so standard
session required pam_loginuid.so
@include common-account
@include common-session
@include common-password
session [success=ok ignore=ignore module_unknown=ignore default=bad] pam_selinux.so open
auth optional pam_gnome_keyring.so
session optional pam_gnome_keyring.so auto_start
/etc/pam.d/common-auth
auth [success=1 default=ignore] pam_unix.so nullok_secure
auth requisite pam_deny.so
auth required pam_permit.so
/etc/pam.d/common-account
account [success=1 new_authtok_reqd=done default=ignore] pam_unix.so
account requisite pam_deny.so
account required pam_permit.so
/etc/pam.d/common-session
session [default=1] pam_permit.so
session requisite pam_deny.so
session required pam_permit.so
session optional pam_umask.so
session required pam_unix.so
session optional pam_systemd.so
/etc/pam.d/passwd
@include common-password
/etc/pam.d/common-password
password [success=1 default=ignore] pam_unix.so obscure sha512
password requisite pam_deny.so
password required pam_permit.so
password optional pam_gnome_keyring.so
/etc/pam.d/i3lock
auth required pam_env.so
auth sufficient pam_unix.so try_first_pass likeauth nullok
session optional pam_gnome_keyring.so auto_start