/etc/nologin
があると思われます systemd のインストール後に削除されないファイル (内容は「システムが起動しています。」)。
[更新] 影響を受けるのは、昨年 12 月に Ubuntu の BTS で報告されたバグです。 /var/run/nologin
が原因です ファイル (=/run/nologin
/var/run
以降 /run
へのシンボリックリンクです ) systemd インストールの最後に削除されません。
/etc/nologin
標準の nologin ファイルです。 /var/run/nologin
nologin
で使用できる代替ファイルです。 PAM モジュール (man pam_nologin
).
nologin
のいずれでもないことに注意してください ファイルはユーザー root による接続に影響し、通常のユーザーのみがログインできなくなります。
@xhienne が正しい方向性を教えてくれました。
ファイルシステムを検索した後、/run/nologin
を見つけました (@xhienne は /etc/nologin を提案) ファイルを削除して問題を解決しました。
状態は /usr/lib/tmpfiles.d/systemd.conf
にありました
このステップをスクリプトに含めます。
sudo rm /run/nologin
Note: This answer is applicable whether or not systemd was recently installed or not.
The issue was observed even after systemd had been installed a long time.
Mageia ディストリビューションのバグ トラッカーには、関連する問題が未解決のようです:バグ 21080 - 再起動後に /run/nologin によって ssh ログインが無効になります。
この問題が頻繁に発生した後、トラッカーを見つけることで、単純に /run/login を削除するよりも適切な回避策を特定することができました。 ファイル。
そのバグ トラッカーの情報のクエリに関連するデータを次に示します。
$ ls -l /run/nologin
-rw-r--r-- 1 root root 42 Mar 6 10:11 /run/nologin
$ cat /run/nologin
"System is booting up. See pam_nologin(8)"
$ date
Tue Mar 6 11:10:38 CST 2018
$ uptime
11:15:10 up 1:04, 0 users, load average: 0.07, 0.07, 0.08
$ systemctl status systemd-user-sessions.service
● systemd-user-sessions.service - Permit User Sessions
Loaded: loaded (/usr/lib/systemd/system/systemd-user-sessions.service; static
Active: inactive (dead)
Docs: man:systemd-user-sessions.service(8)
$ systemctl show -p Requires,Wants,Requisite,BindsTo,PartOf,Before,After systemd-user-sessions.service --no-pager
Requires=system.slice sysinit.target
Requisite=
Wants=
BindsTo=
PartOf=
[email protected] prefdm.service crond.service multi-user.target plymouth-quit-wait.service session-c2.scope display-manager-failure.service systemd-ask-password-wall.service session-c1.scope [email protected] shutdown.target [email protected] user-983.slice user-1000.slice plymouth-quit.service
After=system.slice systemd-journald.socket remote-fs.target network.target systemd-journal-flush.service sysinit.target nss-user-lookup.target basic.target
バグトラッカーと上記の情報は、問題が実際には systemd-user-sessions.service の開始の失敗によるものであることを示しているようです
これは実際に私の場合に起こっていることなので、次の回避策でログイン禁止状態を一時的に修正します:
$ sudo systemctl start systemd-user-sessions.service
これを行った後、/run/nologin ファイルは存在しなくなり、別のシステムから SSH で接続できます。ただし、ユーザーが影響を受けるシステムのコンソールにアクセスできない場合があるため、これは信頼できないことに注意してください。