web-dev-qa-db-ja.com

再開後の空白画面-Dell M5510 Ubuntu 16.04

サスペンドから再開できません

ラップトップはDell M5510 Precisionです

サスペンド/レジュームは、Windows 10およびUbuntu Live CD/USBイメージで動作します。それはインストールされた最初の数日でさえ働きました。その後(更新を実行したり、再起動したりせずに)、一時停止して再開に失敗しました。空白の画面が表示されます。実行中:別のシステムからSSHで接続できます。

再インストールしたときに失った最初のメモのセットはありますが、私はWebからいろいろなことを試しました。私はもともとUbuntu Mintで始めてから、Vanilla Ubuntuに再インストールしました。新規インストール後、サスペンド/レジュームは2日間問題なく機能しました。 2日目には、ラップトップを再開し、仕事を始めました。昼間、私はそれを中断し、空白の画面の問題を引き起こしました。アップグレードコマンドを実行したり、途中で再起動したりしていないので、そこで何が変わったのかわかりません。

00:02.0 VGA compatible controller: Intel Corporation Skylake Integrated Graphics (rev 06)
01:00.0 3D controller: NVIDIA Corporation GM107GLM [Quadro M1000M](rev a2)
Linux 4.4.0-36-generic

私が試したもの:

  • 24GBの暗号化されていないスワップを作成しました
  • /etc/systemd/logind.confを編集してHandleLidSwitchDocked=suspendのコメントを外します 763085
  • カーネルを4.4.8に更新します(ネットワークも破損しました) 76182
  • カーネルを4.6.0に更新します(これは役に立たず、またdockerを壊しました) launchpad bug
  • オープンソースドライバーからNvidia 361.42に切り替え
  • BIOSで個別のグラフィックスを無効にすることについての記事を見ましたが、BIOSでそのオプションを見つけることができませんでした。
  • Ctrl-alt-f [12]を実行してテキストコンソールを取得し、ctrl-alt-f7よりも推奨する回答もあります。空白の画面では、これは何もしません。
  • Fn + F8画面切り替え(内部/外部ディスプレイの切り替え)、およびすべての輝度キーを試しました。 archlinuxのバグ

Nvidia xサーバー設定を実行し、gpuをnvidiaではなくIntelに変更します。

12
ytjohn

ソリューションは、最終的に9月18日に Dell Community Forums に投稿されました。これは最終的にはBIOSの問題です。サスペンド中に、Intelレジスタがすべて0にリセットされます。カーネルパッチの回避策はすでに機能していますが、4.9までは含まれない可能性があります。ただし、一時停止中にレジスタをファイルに保存し、再開中にロードすることができます。

次のスクリプトを/ lib/systemd/system-sleep/fixbacklight(およびchmod 755)として保存します

#!/bin/sh
# From patchwork.freedesktop.org/.../
# and en.community.Dell.com/.../19985320
# Suspend Resume fails to restore PWM_GRANUALITY
# Based on script by [email protected]

INTEL_REG=/usr/bin/intel_reg
ADDR="0x000c2000"
SAVE_FILE=/var/lib/systemd/save_intel_reg_pwm_granuality

[ -x "$INTEL_REG" ] || exit 0

case "$1" in
    pre)
        echo "$0: Saving Intel Register PWM_GRANUALITY"
        "$INTEL_REG" read "$ADDR" \
            | (read addr value && echo "$value") \
            >"$SAVE_FILE"
    sync
    ;;
    post)
        value=`cat "$SAVE_FILE" 2>/dev/null`
        if [ -n "$value" ]
        then
            echo "$0: Restoring Intel Register PWM_GRANUALITY $value"
            "$INTEL_REG" write "$ADDR" "$value"
            rm "$SAVE_FILE"
        fi
    ;;
esac

@nloewenが私を正しい道に導いてくれました。

11
ytjohn

同じ問題がありました。結局のところ、カーネルをUbuntu 16.04.3の最新の推奨カーネルに更新すると、これが修正されました(多くの代替「ソリューション」を試した後)。

この更新を行うには、Sudo apt install --install-recommends linux-image-generic-hwe-16.04 xserver-xorg-hwe-16.04を実行します

カーネル4.10をインストールする(現時点では) (このカーネルの更新は、回答でも提案されています https://askubuntu.com/a/823523/64731

1
BartBog

これはBIOSの問題です。再開後に明るさの制御が壊れ、ディスプレイは完全な明るさまたはオフでのみ機能します。

この問題の回避策は、ディスプレイの輝度を最大に設定するキーボードショートカットを作成することです。輝度を1ステップ調整する通常の輝度キーは機能しません。 (これは私のために働く)

here で説明したいくつかのトレードオフを使用して、古いBIOSバージョンに戻すことでこれを修正できる場合があります。 (私はこれを試していません)

0
nloewen

Dell inspiron 15 7559で同じ問題に直面しました。数日間問題なく動作し、その後この問題が発生しました。

修正

Ubuntuを古いカーネルバージョンに復元します。それが動作することを信じてください。 4つのカーネルバージョンがインストールされており、そのうち2つはこの問題を示していましたが、古い2つはそうではありませんでした。

再起動して、grubメニューの詳細設定に移動します。使用しているさまざまなカーネルバージョンを確認します。これらの各バージョンを別々に起動して、サスペンド機能を使用し、どのバージョンのサスペンドが正常に機能するかを確認してください。また、カーネルバージョンを変更するとnvidia(パフォーマンスモード)が無効になるため、各ブートでnvidiaサーバー設定アプリケーションを確認してください。無効になっている場合は、nvidiaモード>ログアウト>ログインを確認してから、再度suspendを使用して機能するかどうかを確認します。

動作するカーネルバージョンを特定したら。 this メソッドを使用して、他の新しいカーネルバージョンを削除します。このような問題に再び直面することはありません。 :)

0
Akhil Kumar

あなたと同じくらい詳細なメモを残しておけばよかったのに。この回答の半分はメモリから得られ、残りの半分はLibreOffice Calcスプレッドシートから得られます。このスプレッドシートは、長いリストのターミナルコマンド/ bashスクリプトを実行し、画面出力と構成ファイルの断片を記録します。

行った活動

"24 GBの暗号化されていないスワップを作成"。 hibernatingでない限り、マシンのスワップは必要ありません。ただし、ドライブの空き容量が多いときにスワップを使用しても問題はありません。

"/etc/systemd/logind.confを編集して、HandleLidSwitchDocked=suspendのコメントを外します"。 Dockedオプションは、マシンがドッキングステーションに接続されている場合、またはHDMIがテレビまたは外部モニターに接続されている場合にのみ適用されます。変数HandleLidSwitchは、ほとんどの人にとってより重要です。デフォルトでは、この行はコメント化されていますが、コメント化された場合はどうなりますか?私のシステムは、サスペンドするべきだったときに休止状態にしたり、2回サスペンドしたり、単に画面をオフにしただけでサスペンドしないなど、奇妙なことをしていました。オプションを本当にしたいこと、つまりsuspendまたはignoreに設定することをお勧めします。

"カーネルを4.4.8に更新(ネットワークも破損)"。 4.4.8は古いため、使用しないでください。

"カーネルを4.6.0に更新します(これは役に立たず、またdockerを壊しました)" 4.6.は、残りの4.6 .xチェーン。 4.6.は、Dellラップトップ用のカーネルの更新があるため、改善されていました。しかし、4.6.3を試してみたところ、次のような問題がありました。

"オープンソースドライバからNvidia 361.42に切り替え"。 Novea driver over Nvidiaで多くの人が成功を報告しているので、これは良い考えです。

"BIOSで個別のグラフィックスを無効にすることについていくつかの投稿を見ましたが、BIOSでそのオプションを見つけることができませんでした" Discrete graphicsは、マザーボードではなく、 統合グラフィックス。本質的に、個別のグラフィックスを無効にすることは、Nvidia GPをオフにすることを意味します。これはXorgで既に行ったものです。それをオフにするもう1つの方法は、blacklistingするか、NoveaドライバーをM100Mチップに使用することです(既に完了していると言います)。

推奨されるアクション

カーネルの更新4.7.これにより、CPUレベリングと負荷係数が改善され、発熱が少なくなり、ドライバーが更新されました。 Ubuntu 16.04にアップグレードした後、4.4サスペンド/レジュームで問題が発生しました。また、インテルターボブーストが常に実行され、システムがホットで実行されているという問題もあります。 Nautilusの「シンフォント」にも問題がありました。カーネルを4.6.に更新しましたが、システムがサスペンドではなく休止状態になる問題がありました。そこで、4.7.1に更新し、次に4.7.2に更新し、最後に4.7.に更新しました。 Ubuntuとsytemdの設定を一時停止/再開する調整に加えて、これまで4.7.3では問題ありませんでした。

IFそれはうまくいかないが、共有できるものはもっとあるが、「Wall of Text」でこの答えを必要以上に長くしたくない。途中で、Ubuntuやsystemdのリッドを閉じるのではなく、サスペンド/レジューム用のスクリプトを開発し、サスペンド/レジューム後に音声をテレビに戻すスクリプトを開発しました。

0