EeePC1000HAにubuntu12.04をインストールしたら電源が切れない問題

症状

画面右上の歯車アイコンから「シャットダウン」を選択しても、ログイン画面に切り替わるだけで電源が落ちない。


電源の管理をBIOS側が担っていて、OS側で制御できないとか、そういう問題があるみたいです。

対策

参考ページ
Ubuntu日本語フォーラム / 電源が切れない(シャットダウンしない)
Ubuntu日本語フォーラム / シャットダウン出来ず
Ubuntu日本語フォーラム / ubuntu12.04TLS日本語リミクスでシャットダウン出来ず再起動してしまう。

手順まとめ

管理者権限のアカウントでログインしておく。一般ユーザーやゲストアカウントでは変更できない.


「dashホーム」で「tan」と入力すると「端末」のアイコンが出るのでダブルクリックして起動。
sudo gedit /etc/modules と入力、エンター。
パスワードを求められるので入力しエンター。パスワードは一切表示されないので注意.
テキストエディタが立ち上がり、ファイルが表示される。何も表示されていない場合は入力をミスしているので保存せずに終了させ、やりなおす。

# /etc/modules: kernel modules to load at boot time.
#
# This file contains the names of kernel modules that should be loaded
# at boot time, one per line. Lines beginning with "#" are ignored.

lp

に、
apm power_off=1
を追記。私の場合はlpの前に入れた.
保存して終了。


再び端末で
sudo gedit /etc/default/grub
と入力。

# If you change this file, run 'update-grub' afterwards to update
# /boot/grub/grub.cfg.
# For full documentation of the options in this file, see:
# info -f grub -n 'Simple configuration'

GRUB_DEFAULT=0
#GRUB_HIDDEN_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT=10
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""

の、
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""
にそれぞれ
acpi=force apm=power_off

reboot=pci
を追記する。

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash acpi=force apm=power_off"
GRUB_CMDLINE_LINUX="reboot=pci"

保存して終了。


端末で
sudo update-grub
と入力し、変更を適用させる。


次に、ファイルの検索でmenu.lstを探す。探す場所は、ファイルシステム
見つけたら、右クリックからプロパティで格納場所を確認し、端末で開く。子のファイルはバージョンによっていろんなフォルダに移動しているらしく、検索して把握する必要がある。私の場合は/usr/share/doc/memtest86+/examplesであったので、端末には次のように入力した.
sudo gedit /usr/share/doc/memtest86+/examples/grub-menu.lst

# sample /boot/grub/menu.lst entry for memtest86
#
# This example assumes the contents of /boot is on the root partition.
# If your /boot is on its own partition, remove /boot from the 'kernel' line.

title memtest86+
root (hd0,0)
kernel /boot/memtest86+.bin

title memtest86+ (serial console 115200)
root (hd0,0)
kernel /boot/memtest86+.bin console=ttyS0,115200n8

の、kernelのすべての行の最後に
acpi=off apm=on
を追記。

title memtest86+
root (hd0,0)
kernel /boot/memtest86+.bin acpi=off apm=on

title memtest86+ (serial console 115200)
root (hd0,0)
kernel /boot/memtest86+.bin console=ttyS0,115200n8 acpi=off apm=on

保存して終了。
すべてのプログラムを閉じて、シャットダウン.


この段階ではまだログイン画面になるだけなので、ログインが面になったら電源ボタンを長押しして強制終了し、再起動。


おそらくこれでちゃんと電源が切れるようになるはず.
切れない場合は、端末から
sudo apt-get install laptop-mode-tools
と入力してlaptop-mode-toolsをインストールする。

追記

ちなみに、うちでは起動するとパスワード入力なしで一般ユーザーのアカウントで使用するようになっている。この一般ユーザーアカウントでのシャットダウン操作では電源が切れるものの、管理者のアカウントでは電源が切れず、ログイン画面になるだけ。
管理者でも電源が切れるようにするにはまだ何か設定する必要があるのだろうけど、基本的に使うのは一般ユーザー権限の家族であって自分はめったに使わないので、まあいいか、という状態。