systemd-nologin.conf, /run/nologin

Сейчас перегрузился с повышенным логированием.
Привожу лог в части наличия nologin в нормальной системе
arch systemd-tmpfiles[193]: Reading config file "/usr/lib/tmpfiles.d/systemd-nologin.conf".
arch systemd-tmpfiles[193]: Entry "/run/nologin" does not match any include prefix, skipping.
arch systemd-tmpfiles[286]: Reading config file "/usr/lib/tmpfiles.d/systemd-nologin.conf".
arch systemd-tmpfiles[286]: Running create action for entry F /run/nologin
arch systemd-tmpfiles[286]: Writing to "/run/nologin".
arch systemd-tmpfiles[286]: "/run/nologin" has right mode 100644
arch systemd-tmpfiles[286]: Running remove action for entry F /run/nologin
Ошибки не исчезают с опытом - они просто умнеют
Провел эксперимент
- создал /run/nologin и /etc/nologin
- зайти в другую консоль (Ctrl+Alt+F2) разумеется не удалось
- перегрузился — файлы /run/nologin и /etc/nologin исчезли
Или у тебя действительно какой то баг или ты не все описал?
Я не понял - не удается залогинится при загрузке? Или в загруженной системе не удается залогинится другому юзеру? Или не удается залогинится по ssh?
Ошибки не исчезают с опытом - они просто умнеют
1. в другую консоль (Ctrl+Alt+F2) зайти могу.
2. в логах /run/nologin нет, есть только nologin
сен 27 09:34:59 archpc systemd[579]: pam_nologin(systemd-user:account): conversation failed
сен 27 09:34:48 archpc sddm[349]: Authentication error: "\"System is booting up. See pam_nologin(8)\""
сен 27 09:32:17 archpc systemd[444]: pam_nologin(systemd-user:account): conversation failed
сен 26 18:06:54 archpc systemd[584]: pam_nologin(systemd-user:account): conversation failed
сен 26 18:06:39 archpc sddm[336]: Authentication error: "\"System is booting up. See pam_nologin(8)\""
сен 26 18:06:35 archpc sddm[336]: Authentication error: "\"System is booting up. See pam_nologin(8)\""
сен 26 18:06:27 archpc systemd[440]: pam_nologin(systemd-user:account): conversation failed
сен 26 17:18:37 archpc systemd[457]: pam_nologin(systemd-user:account): conversation failed
сен 22 20:00:29 archpc systemd[597]: pam_nologin(systemd-user:account): conversation failed
сен 22 20:00:12 archpc sddm[340]: Authentication error: "\"System is booting up. See pam_nologin(8)\""
сен 22 20:00:08 archpc sddm[340]: Authentication error: "\"System is booting up. See pam_nologin(8)\""
сен 22 19:59:49 archpc systemd[461]: pam_nologin(systemd-user:account): conversation failed
сен 18 09:30:39 archpc systemd[455]: pam_nologin(systemd-user:account): conversation failed
сен 13 12:21:32 archpc systemd[1973]: pam_nologin(systemd-user:account): conversation failed
июл 18 19:43:25 archpc systemd[8171]: pam_nologin(systemd-user:account): conversation failed
июл 18 19:43:11 archpc sddm[351]: Authentication error: "\"System is booting up. See pam_nologin(8)\""
июл 18 19:43:05 archpc systemd[2022]: pam_nologin(systemd-user:account): conversation failed
июл 17 16:56:57 archpc systemd[587]: pam_nologin(systemd-user:account): conversation failed
При перезагрузке он не удаляется, наверно баг sddm или что-то с правами.

Под рутом пускает, но предупреждает Authentication error: "\"System is booting up. See pam_nologin(8)\""
Блокируется только вход под пользователем.
binaryshadow
в логах /run/nologin нет, есть только nologin
Загружался с опцией debug?
Я обычно в этих случаях при старте захожу в меню Grub и дописываю нужную опцию, в данном случае debug
binaryshadow
в другую консоль (Ctrl+Alt+F2) зайти могу.
По теории не должен. А попробуй удали оставшийся (не удаленный) /run/nologin и пропиши от root новый /run/nologin (а лучше прописать еще и /etc/nologin) и попробуй залогиниться в другую консоль.
Дальше перегрузиться, чтобы посмотреть останутся оба файла или нет. Плюс к этому проверить удаляются ли эти файлы при запуске без sddm, например, просто при startx.
UPD ... если это мешает, то можно временно (до устранения) изменить политику применения модуля pam_nologin
Ошибки не исчезают с опытом - они просто умнеют
vasek
Загружался с опцией debug?
Еще не пробовал.
Я просто удаляю /usr/lib/tmpfiles.d/systemd-nologin.conf и до следующего обновления systemd всё ок =) Но это не решение.

-rw-r--r-- 1 root root   42 сен 28 22:16 nologin

# cat nologin
"System is booting up. See pam_nologin(8)"

Попробую по тестировать и сообщу.
binaryshadow
Я просто удаляю /usr/lib/tmpfiles.d/systemd-nologin.conf
По теории достаточно удалить только файлы /run/nologin или /etc/nologin (который обычно создается root ручками).
Просто удалять один файл /run/nologin не пробовал?
UPD ... в предыдущем посту забыл отметить, что при создании вручную файлов /run/nologin и /etc/nologin в них желательно приписать какой-нибудь текст, чтобы потом посмотреть - эти файлы перезаписываются системными или нет.
PS - Если попробовать залогиниться в другую консоль с любым из этих файлов, то обычного юзера выкинет и будет выведен этот текст.

EDIT 1 - не прав, конечно, эти файлы перезапишутся системными с другим текстом - нет смыса этого делать. Что то сразу не сообразил.
EDIT 2 - мля ... чем старее, тем хуже и медленнее соображаю. Сам же просил посмотреть содержимое этого файла и забыл.
binaryshadow
# cat nologin
"System is booting up. See pam_nologin(8)"
Говорит о том, что при загрузке создался файл /run/nologin с целью, чтобы в этот промежуток времени загрузки больше никто не мог залогиниться. После этого файл удаляется.
Файл создает systemd-tmpfiles, а удаляет systemd-user-sessions.service. Аналогично при shutdown.
Ошибки не исчезают с опытом - они просто умнеют
Ну, вот, не удаляется он. Если удаляю ручками, то он после перезагрузки снова появляется. Может это Мате косячит?
binaryshadow
Может это Мате косячит?
Это гадание. Факт, что после создания файла, последний не удаляется. Когда то читал, что выполняет это systemd-user-sessions.service. И если это так, то выяснить это можно только ковыряясь в исходниках и выполняя отладку. Но это могут только разработчики. Нам, думаю, это не подсилу.
Можно попробовать другой DM, а лучше вообще без всякого DM. Если и в этом случае проблема не уйдет, то, возможно, виновник Мате. Но это все предположения.
А пока, временно, можно отключить модуль pam_nologin.so , в принципе, на безопасность это не влияет.
Запусти команду
find /etc/pam.d -type f -print0 | xargs -0 grep 'pam.nologin'
Получишь перечень файлов с указанием строк, где этот модуль прописан. Ну и смотри, что тебе нужно, те файлы и редактируй.
Например, для обычного входа нужно закоментировать строки с pam_nologin.so в файлах /etc/pam.d/login и /etc/pam.d/system-login
Не забывай, в некоторых файлах может быть по несколько строк с данным модулем, что будет показано в выводе find
Сейчас у себя проделал это. Потом создал файл /run/nologin и прописал в нем слово test. В итоге смог залогиниться в другую консоль. А вот когда снова включил этот модуль, то уже залогиниться не смог - было сообщение test.
UPD … Да я не использую никакие DM, а у тебя должен быть еще файлик типа /etc/pam.d/sddm* , вот нужно ли закометировать там, не знаю, но похоже нужно. Пробуй.

EDIT 1 - может в твоем случае достаточно будет отключить модуль pam_nologin.so только в файлах /etc/pam.d/sddm*
Ошибки не исчезают с опытом - они просто умнеют
find /etc/pam.d -type f -print0 | xargs -0 grep 'pam.nologin'
/etc/pam.d/rlogin:auth       required     pam_nologin.so
/etc/pam.d/sddm-autologin:auth        required    pam_nologin.so
/etc/pam.d/rsh:auth       required     pam_nologin.so
/etc/pam.d/login:auth       requisite    pam_nologin.so
/etc/pam.d/system-login:auth       requisite  pam_nologin.so
/etc/pam.d/system-login:account    required   pam_nologin.so
Спасибо за помощь и информацию. Считаю костылями, правки других файлов. Дождусь нормального решения или сам покопаюсь, кто за сбой не убирает этот файл или кто его создаёт.
На текущий момент проблема не решена, имеется только решение с удалением файлов /usr/lib/tmpfiles.d/systemd-nologin.conf и /run/nologin.
binaryshadow
На текущий момент проблема не решена, имеется только решение с удалением файлов /usr/lib/tmpfiles.d/systemd-nologin.conf и /run/nologin.
Здесь обсуждают этот bug уже 3 года

EDIT 1 - достаточно удалить 1 файл - /run/nologin - можно написать unit, чтобы не удалять в ручную.
Ошибки не исчезают с опытом - они просто умнеют
 
Зарегистрироваться или войдите чтобы оставить сообщение.