Fedora 30までは、rootユーザの仮想コンソールへの直接ログインができましたが。
Fedora 31から、rootで直接ログインできないように、既定の動作が変わったそうです。
何度パスフレーズを入力してもログインできないのは、そのような動作に変わったためのようです。
普段、PCにキーボードやディスプレイを接続せず、rootユーザのSSHのみで使用していましたが。
Fedora 31にアップグレード後、SSH等で仮想コンソールへログインできなくなってしまいました。ありゃ。これは困りました。
対応方法を記録しておこうと思います。
目次
Fedora 31アップグレード前にやっておくこと
アップグレード前に、次のどちらかを行っておくことをお勧め致します。
ユーザの作成
Fedora 30→31へアップグレードする場合。アップグレード前に、必ずroot以外のユーザを作成しておきましょう。
sudo useradd <ログイン名>
sudoコマンドが使えるように、wheelグループに追加しておきましょう。
sudo usermod -aG wheel <ログイン名>
groups <ログイン名>
cockpitの有効化
Fedora Serverの場合、既定でcockpitがインストールされているかと思います。systemctlコマンドで動作を確認しておきます。
sudo systemctl status cockpit.socket
dnf install cockpit
sudo systemctl enable --now cockpit.socket
sudo firewall-cmd --add-service=cockpit
sudo firewall-cmd --add-service=cockpit --permanent
Fedora 31アップグレード後
cockpitからユーザ追加
私はFedoraをrootユーザで使用していたため、30→31アップグレード後、SSHでログインできなくなってしまいました。
幸いにも、cockpitを有効にしていたため、cockpitにてユーザを作成後、SSHログインできるようになりました。
Webブラウザで、下記のURLに接続します。
https://<Fedora PCのIPアドレス>:9090/
ホスト→アカウント→新規アカウントの作成にて、新しいユーザを追加することができます。
コンソールにてユーザ追加
PCのコンソールに直接ログインした場合、rootログインが可能かと思います。ディスプレイ・キーボード・マウスを接続してユーザを作成致しましょう。
dnfによるFedoraアップグレード
Fedoraアップグレードの手順はこちらの記事になります。
おうちの環境では、30→31へのアップグレードも問題なく行えました。
よろしければお試し下さいませ。