【Ubuntu 24.04】ノートPCのふたを閉じるとスリープしてWi-Fiが切れる問題と対策(Surface Pro 5実例)
Surface Pro 5(CPU: Core i7-7660U)は性能的にはまだ十分使えるのに、Windows 11のサポート対象外という制約があります。
無理やりWindows 11を入れる方法もありますが、ドライバやセキュリティ面でリスクがあるため、今回は思い切って Ubuntu 24.04 LTS をインストールしました。
結果として、Ubuntuは軽快に動作し、開発用途にも最適。
しかし一つだけ問題がありました──
タイプカバーを閉じると自動的にスリープしてしまい、Wi-Fiが切断されるのです。
Surface特有の「タイプカバー=ふた」とみなされる仕様が原因ですが、実はこの挙動は他のノートPCでも共通して起こる現象です。
目的:ふたを閉じても通信を維持する
- タイプカバーやふたを閉じてもスリープしない
- Wi-Fi接続を維持してSSHやVPN接続を途切れさせない
- 必要に応じてUSB有線LANを追加して通信を安定化
目標:Surface Pro 5をUbuntuで「閉じても使えるノートPC」にする
- サスペンド(suspend)を無効化し、閉じても稼働を続ける
- Wi-Fi再接続待ちを解消
- USB有線LANを利用して通信経路を強化
課題:UbuntuのlidイベントとWi-Fi省電力動作
UbuntuではACPI(電源管理インターフェイス)を通じて「lid close(ふたを閉じた)」イベントを検出し、
systemd-logind が自動的に suspend を実行します。
この機能はモバイル用途では便利ですが、サーバ的に使いたい場合には不都合です。
スリープ中はWi-Fiデバイスの電源が落ち、復帰時に再認識・再接続処理が入るため、通信が一時的に途切れます。
SSHセッションやリモート作業が強制切断される原因にもなります。
解決策:systemd-logind.conf の設定でlidスイッチを無効化
① 設定ファイルを編集
sudo nano /etc/systemd/logind.conf
② 以下の3行を修正
HandleLidSwitch=ignore HandleLidSwitchExternalPower=ignore HandleLidSwitchDocked=ignore
これで、ふたを閉じてもスリープせず、動作を継続します。
③ 設定を反映
sudo systemctl restart systemd-logind
この状態でタイプカバーを閉じても、UbuntuはスリープせずWi-Fiも維持されます。
Surface特有の「カバー連動サスペンド」問題が解消されます。
④ Wi-Fi通信の確認
閉じたまま次のコマンドで応答が止まらないことを確認します:
ping -c 5 8.8.8.8
これで通信が継続していれば成功です。
⑤ USB有線LANの設定(Netplan)
Wi-Fiが弱い環境では、有線LANアダプタを使うと安定します。
デバイス名を確認
ip link
enx で始まる名前(例:enx00e04c123456)がUSB有線LANです。
設定を追加
sudo vim /etc/netplan/01-netcfg.yaml
内容:
network: version: 2 renderer: networkd ethernets: enx00e04c123456: dhcp4: true optional: true
権限を修正:
sudo chmod 600 /etc/netplan/01-netcfg.yaml
反映:
sudo netplan apply
確認:
ip addr show enx00e04c123456
inet 192.168.x.x が表示されれば接続完了です。
⑥ Wi-Fiと有線の優先順位を制御
両方同時に使う場合は、route-metric で優先度を設定します。
ethernets: enx00e04c123456: dhcp4: true dhcp4-overrides: route-metric: 100 wifis: wlan0: dhcp4: true dhcp4-overrides: route-metric: 200
数値が小さいほど優先されます。
この設定で有線LANを優先し、Wi-Fiをバックアップとして動作させられます。
まとめ:SurfaceをUbuntuで再生する際のポイント
項目 設定ファイル 内容
ふたを閉じた時の動作 /etc/systemd/logind.conf HandleLidSwitch=ignore
Wi-Fi維持 Netplan / wpa_supplicant サスペンドを防止
有線LAN設定 /etc/netplan/01-netcfg.yaml dhcp4: true で自動接続
優先順位 route-metric 有線を優先的に使用
ディスカッション
コメント一覧
まだ、コメントがありません