Thinkpad T14をサスペンドして丸一日放置したらバッテリー残量が20%以下になってしまったため、ハイバネーションを利用することにした。
ルートパーティションを暗号化しているため、Enable Hibernation on Ubuntu 22.04 with LVM and Full Disk Encryptionを参考に以下の手順で設定を行った。
$ sudo swapoff -a
/swapfile none swap sw 0 0
sudo fallocate -l 32G /swapfile
sudo chown 0 /swapfile
sudo chmod 0600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
$ sudo swapon -s
Filename Type Size Used Priority
/swapfile file 37748732 0 -2
findmnt / -o UUID
$ sudo filefrag -v /swapfile |grep " 0:"| awk '{print $4}'
9932800..
resume、resume_offsetを追加(最初resume=の後のUUID=が抜けていてハイバネーションからの復帰ができなかったので注意)GRUB_CMDLINE_LINUX_DEFAULT="quiet splash resume=UUID=efa2cec1-29f1-47d2-a19b-e4722a969805 resume_offset=9932800"
sudo update-grubで反映して再起動
sudo systemctl hibernateでハイバネート、復帰できることを確認。
sudoなしでハイバネートできるように、/etc/polkit-1/localauthority/50-local.d/com.ubuntu.enable-hibernate.pklaを以下の内容で作成
[Re-enable hibernate by default in upower]
Identity=unix-user:*
Action=org.freedesktop.upower.hibernate
ResultActive=yes
[Re-enable hibernate by default in logind]
Identity=unix-user:*
Action=org.freedesktop.login1.hibernate;org.freedesktop.login1.handle-hibernate-key;org.freedesktop.login1;org.freedesktop.login1.hibernate-multiple-sessions;org.freedesktop.login1.hibernate-ignore-inhibit
ResultActive=yes
Gnomeの[設定]>[電源管理]>[電源ボタンの挙動]を[ハイバネート]に変更
$ sudo apt install gnome-shell-extension-manager
$ extension-manager
Super+Spaceでibus-mozcを起動した時に入力モードが直接入力になっていて不便(英語キーボードだとibus-mozc上でIMEをオンにするキーを割り当てるのも難しい)なのでUbuntuのibus-mozcでひらがなをデフォルトにするを参考にひらがなになるようにした。
ただし、dpkg-buildpackageでfcitx-mozcのビルド中にエラーが発生したため、以下のように直接ibus-engine-mozcを置き換えて対処した。
$ sudo cp src/out_linux/Release/ibus_mozc /usr/lib/ibus-mozc/ibus-engine-mozc