うちのPCは、ほぼすべてThinkpadシリーズのXシリーズです。Xシリーズは、大きさとキーボードの使いやすさのバランスがよく、持ち歩き用のサブノートに重宝しています。
X40はIBMブランドの最後の機種で、2003年製のPCです。スペックはPentium(R) M processor 1200MHz、メモリも最大で1497 MiBともはや化石スペックのマシンなのですが、ストレージだけはSSDに載せ替えているおかげかそこそこ起動も早く、普段使いでは特にストレスを感じないほどです。
XPのままだとセキュリティ的に問題があるので、LinuxMintをインストールして使い続けてきましたが、LinuxMintはデフォルトではハイバネーションが使えません。これはかなり残念な状況なので、ハイバネーションを設定してみることにしました。
LinuxMintは、現在19.2が最新版です。ubuntuが32bit版を廃止するという話もあったのですが、今のところ19.2は32bit版もダウンロードできます。
ですが、X40をはじめとするi386マシンでハイバネーションを使いたい場合、19.2をインストールしてはいけません。現時点ではハイバネーションが正常に作動しないようです。18.3をインストールしましょう。(私はここでハマりました。)
今回参考にしたサイトは次の通りです。多謝。m(_ _)m
・Medial Diagnosis And Treatment
https://mdat.biz/dairynews/2018/10/25/368/
・ぷちのいず
https://petit-noise.net/blog/hibernation-on-ubuntu-18-04/
・日本に西の端に棲息する研究者見習いの備忘録
https://krhb.hatenablog.com/entry/2019/05/01/014012
・猫の手も借したい
https://akkisino02.hatenablog.com/entry/2017/07/20/164816
以下今回の作業の備忘録です。
1 最初にswap用のパーティションを作成。
LinuxMint18では、デフォルトではswapパーティションを作成せず、ルートディレクトリにswapfileを置く仕様となっています。ですが、このswapfileは2G程度のサイズしか用意されておらず、また、swapfileを使用してハイバネーションを設定する方法がよくわからなかったので、swapパーティションを作成してみました。サイズはマシンの物理メモリの3倍程度にします。(最初から手動でパーティションを作成してインストールしたほうが楽だと思う。インストールディスクでgpartedを起動して既存パーティションのサイズを縮小したら、異常に起動に時間がかかるようになり、結局再インストールするはめになった。)
2 fstabにswapパーティションを記載。
UUID=SWAP領域のUUID none swap sw 0 0
3 パッケージをインストール。
sudo apt install pm-utils
sudo apt install molly-guard
sudo apt install uswsusp
4 resumeファイルを書き換える。
sudo vi /etc/initramfs-tools/conf.d/resume
次の内容に書き換える。resumeファイルが存在しない場合、次の内容を記載する。
RESUME=UUID=SWAP領域のUUID
書き換えたら、次のコマンドを実行。
sudo update-initramfs -u -k all
5 grubを書き換える。
sudo vi /etc/default/grub
次の該当部分を書き換える。
GRUB_CMDLINE_LINUX_DEFAULT=”quiet splash”
↓
GRUB_CMDLINE_LINUX_DEFAULT=”quiet splash RESUME=UUID=SWAP領域のUUID″
書き換えたら、次のコマンドを実行。
sudo update-grub
6 次のファイルの該当部分を書き換える。ファイルが存在しない場合、次の内容を記載する。
sudo vi /var/lib/polkit-1/localauthority/10-vendor.d/com.ubuntu.desktop.pkla
[Disable hibernate by default in upower]
Identity=unix-user:*
Action=org.freedesktop.upower.hibernate
ResultActive=no
[Disable 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=no
↓
[Disable hibernate by default in upower]
Identity=unix-user:*
Action=org.freedesktop.upower.hibernate
ResultActive=yes
[Disable 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
7 次のファイルの該当部分を書き換える。
sudo vi /etc/default/acpi-support
# Uncomment the next line to switch away from X and back again after resume.
# This is needed for some hardware, but should be unnecessary on most.
# DOUBLE_CONSOLE_SWITCH=true
↓
# Uncomment the next line to switch away from X and back again after resume.
# This is needed for some hardware, but should be unnecessary on most.
DOUBLE_CONSOLE_SWITCH=true
8 次のファイルを作成。
sudo vi /etc/polkit-1/localauthority/50-local.d/com.ubuntu.enable-hibernate.pkla
次の内容を記載。
[Re-enable hibernate by default]
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
ResultActive=yes
上記の設定をすべて行ったところ、ようやくハイバネーションが成功しました。環境依存する部分もあるかもですが、とりあえずi386マシンでの成功事例ということで、記録を残しておきます。
(間違って削除したので、再アップ9月28日)
コメント