有馬総一郎のブログ

(彼氏の事情)

2023年06月10日 09:29:06 JST - 3 minute read - Comments - Linux

OSリフレッシュ後にログイン画面にアカウントが表示されなくなったので表示させる

Pop!_OSをデュアルモニターで使っているのだけど、画面がどうもチラつくので、sudo kernelstub -a "amdgpu.dpm=0"したら起動しなくなってしまった…

Repair the Bootloader - System76 Supportを参考に

for i in dev dev/pts proc sys run; do sudo mount -B /$i /mnt/$i; done
sudo chroot /mnt
apt install --reinstall linux-image-generic linux-headers-generic
update-initramfs -c -k all
exit
sudo bootctl --path=/mnt/boot/efi install

しても駄目だったので、全部一から構築するよりOSのリフレッシュの方が楽なので、repairアカウント(ユーザー)1を作成してOSをリフレッシュした。

これをやると$HOME配下のデータは削除されずにOSを再インストールしてくれるというもの。

詳しくはこちら→ How to use Pop_!OS refresh install | TechRepublic

で、そしてrepairアカウントをそのまま使い続けても良いのだけど、リフレッシュ前のアカウントarimasou16が残っているので、そちらを復旧する。

ログイン画面に旧アカウントが表示されないので表示されるようにする。

Pop!_OS
ログイン画面に旧アカウントが表示されない。画像は復旧後
Pop!_OS
ボケまくってるが、ここで旧アカウント名入れてログインは可能

Ubuntu 20.04 user not listed to login - Ask Ubuntuに答えがあった。

cp /var/lib/AccountsService/users/repair /var/lib/AccountsService/users/arimasou16して/var/lib/AccountsService/users/配下のファイルをコピーする。それだけでOK。

[User]
Language=ja
Session=
FormatsLocale=ja_JP.UTF-8
PasswordHint=
Icon=/var/lib/AccountsService/icons/repair
SystemAccount=false

[InputSource0]
xkb=jp

[InputSource1]
xkb=us

[InputSource2]
ibus=anthy

アイコンなどはログイン後にユーザー設定から設定しなおせばいい。

そしてaptでパッケージの再インストール。当然、$HOME配下のものはそのまま残っているので、いくつは再インストール、設定の必要さら無く、直ぐに元の環境を復旧することが出来た。

いくつかのflatpak経由でインストールしたのもそのまま残っていたが、 Google ChromeFaltsealは無くなっていた(ように見えた)ので再インストールした。


追記 2023-06-14
Pop!_OSのソフトウェア管理 Pop!_Shopからインストールしてもユーザとしてアプリ追加される。上記、Google ChromeやFlatsealがOSリフレッシュで消えたのは、恐らくコマンドでflatpak install--userを付けずに実行したため、/var/lib/flatpak/配下にインストールされたためと思われる。

追記ここまで


昔は Déjà Dup2でバックアップ取ることの意味を理解してなかったが、こうやってみると大切なんだな、と気付かされる。


  1. 旧アカウント名ではリフレッシュ出来ない ↩︎

  2. /etc//usr/bootなどのユーザでないシステムのバックアップを取る場合は TimeShiftを使う。 ↩︎