はじめに (グラフィック問題で悩むUbuntuユーザーへ)

この記事は、Ubuntu 20.04 LTSのインストール後や、システム起動時に画面がブラックアウトしてしまい、どうすれば良いかわからないとお困りの読者を対象としています。特に、最新のグラフィックボード(NVIDIA, AMDなど)を搭載したPCをお使いの方、または自作PCにUbuntuを導入しようとしている方に役立つ情報を提供します。

この記事を読むことで、Ubuntu 20.04でのブラックアウト問題の主な原因を理解し、その原因に応じた具体的な解決策を学ぶことができます。特に、起動時オプション「nomodeset」の使い方から、適切なグラフィックドライバのインストール手順までを網羅しているため、最終的には安定したUbuntu環境を構築できるようになるでしょう。

前提知識

この記事を読み進める上で、以下の知識があるとスムーズです。 * PCのBIOS/UEFI設定へのアクセス方法(起動順序の変更など) * 基本的なLinuxコマンド操作(aptコマンドでのパッケージインストールなど) * GRUB(Grand Unified Bootloader)に関する基本的な理解

Ubuntuインストール後のブラックアウト問題とは?その原因を探る

Ubuntu 20.04 LTSのインストールが完了し、再起動した後に画面が真っ暗になり、何も表示されない状態、それが「ブラックアウト問題」です。マウスカーソルだけが表示される、あるいは全く何も表示されないなど、症状は様々ですが、共通しているのはOSが正常に起動しているにも関わらず画面出力が行われない点です。

この問題の主な原因は、グラフィックドライバにあります。特に、以下のケースで発生しやすい傾向があります。

  1. 新しいGPUとカーネルの不一致: 最新のグラフィックボード(NVIDIA RTXシリーズやAMD Radeon RXシリーズなど)は、Ubuntuが標準で提供するオープンソースのグラフィックドライバ(Nouveau for NVIDIA, AMDGPU for AMD)では、十分にサポートされていない場合があります。これにより、正しく画面出力ができない、あるいはディスプレイの解像度やリフレッシュレートが正しく認識されないといった問題が発生します。
  2. プロプライエタリドライバとの競合: 以前にWindowsなど別のOSでプロプライエタリドライバを使用していた場合、Ubuntuの標準ドライバと競合を起こすことがあります。
  3. Intelの内蔵グラフィックとディスクリートGPUの連携問題: デスクトップPCや一部のノートPCでは、CPU内蔵グラフィックと高性能なディスクリートGPUが共存しており、OSがどちらを優先すべきか判断できず、表示に問題が生じる場合があります。

Ubuntuのインストールプロセスでは、一時的に汎用的なVGAドライバを使用しますが、システムが本格的に起動すると、より適切な(とOSが判断する)ドライバをロードしようとします。このとき、前述のような互換性の問題があると、画面のブラックアウトが発生してしまうのです。

この問題を解決するためには、一時的にグラフィックドライバのロード方法を変更し、OS起動後に適切なプロプライエタリドライバをインストールする必要があります。

Ubuntu 20.04 ブラックアウト問題の具体的な解決策

ここからは、実際にブラックアウト問題に遭遇した場合の具体的な解決手順を解説します。主要な解決策は、「起動時オプションの変更」と「適切なグラフィックドライバのインストール」の二段階です。

ステップ1: インストール時/起動時に「nomodeset」オプションを適用する

ブラックアウトしている状態では、設定を変更することもできません。そこで、まずは一時的に安全なグラフィックモードでOSを起動させるために、「nomodeset」というカーネルオプションを使用します。nomodesetは、グラフィックドライバが画面解像度を設定する(mode setting)のを無効にするオプションで、これにより汎用的なVGAモードで起動できるようになります。

1.1 新規インストールの場合 (Ubuntuインストーラ起動時)

  1. UbuntuのライブUSB/DVDからPCを起動します。
  2. GRUBメニューが表示されたら(「Try Ubuntu without installing」や「Install Ubuntu」などが表示される画面)、eキーを押して編集モードに入ります。
  3. 画面がテキストエディタのような状態になるので、linuxで始まる行を探します。この行の末尾(通常はquiet splashの後)にスペースを空けて「nomodeset」と入力します。
    • 例: ... quiet splash nomodeset ---
  4. F10キー(またはCtrl + X)を押して、変更を保存し、起動します。
  5. これにより、Ubuntuのインストーラが起動し、画面が正常に表示されるはずです。そのままインストールを完了させてください。

1.2 既にインストール済みのシステムがブラックアウトする場合

  1. PCを起動し、GRUBメニューが表示されたら(通常、Ubuntuのロゴが表示される前にShiftキーを長押しすると表示されます)、eキーを押して編集モードに入ります。
  2. 新規インストールの場合と同様に、linuxで始まる行を探し、末尾に「nomodeset」を追加します。
    • 例: ... quiet splash nomodeset ---
  3. F10キー(またはCtrl + X)を押して、変更を保存し、起動します。
  4. システムが起動し、ログイン画面やデスクトップ画面が表示されるはずです。

これで一時的にデスクトップ環境にアクセスできるようになりました。しかし、これは一時的な解決策であり、再起動すると再びブラックアウトする可能性があります。次に、恒久的な解決策として適切なグラフィックドライバをインストールします。

ステップ2: 適切なグラフィックドライバをインストールする

nomodesetで起動した後、プロプライエタリ(クローズドソース)なグラフィックドライバをインストールすることで、GPUの性能を最大限に引き出し、ブラックアウト問題を解決します。

2.1 NVIDIA GPUの場合

NVIDIA製のグラフィックボードをお使いの場合は、公式のプロプライエタリドライバをインストールするのが最も確実です。

  1. 推奨ドライバの確認: ターミナルを開き、以下のコマンドを実行します。 bash ubuntu-drivers devices これにより、システムに最適な推奨ドライバのバージョンが表示されます。例えば、「driver : nvidia-driver-470 - restricted recommended」のように表示されます。

  2. ドライバのインストール: 推奨されたドライバを自動でインストールするには、以下のコマンドを実行します。 bash sudo ubuntu-drivers autoinstall 特定のバージョンをインストールしたい場合は、推奨されたバージョン名でインストールします。 bash sudo apt install nvidia-driver-XXX # XXXはバージョン番号 (例: 470) 途中でパスワードの入力や、インストール続行の確認(Y/n)が求められることがあります。

  3. 再起動: ドライバのインストールが完了したら、システムを再起動します。 bash sudo reboot 再起動後、画面が正常に表示されれば成功です。

2.2 AMD GPUの場合

比較的新しいAMD GPUの場合、Ubuntuの標準オープンソースドライバ(AMDGPU)で十分に動作することが多いですが、それでも問題が発生する場合や、最新の機能を利用したい場合は、AMDのプロプライエタリドライバ(AMD Radeon Software for Linux)を検討します。

  1. AMDドライバのダウンロード: AMDの公式サイトから、ご自身のGPUに対応するLinux向けドライバパッケージをダウンロードします。通常は.debパッケージや.zipアーカイブ形式で提供されます。
  2. インストールの実行: ダウンロードしたパッケージを展開し、公式ドキュメントに従ってインストールスクリプトを実行します。 bash # 例: ダウンロードしたディレクトリに移動し cd ~/Downloads/amdgpu-pro-driver-xxxxx ./amdgpu-pro-install -y --compute # 必要に応じてオプションを追加 インストールには時間がかかることがあります。

  3. 再起動: インストールが完了したら、システムを再起動します。 bash sudo reboot

2.3 GRUB設定の更新 (nomodesetの削除)

ドライバのインストールが完了し、正常に起動するようになったら、nomodesetオプションは不要になります。場合によっては、nomodesetが残っているとパフォーマンスが低下することもありますので、GRUB設定から削除することをおすすめします。

  1. ターミナルを開き、GRUB設定ファイルを編集します。 bash sudo nano /etc/default/grub
  2. GRUB_CMDLINE_LINUX_DEFAULT="quiet splash nomodeset" の行を探し、nomodesetを削除します。 bash GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
  3. ファイルを保存してエディタを終了し(Ctrl+O, Enter, Ctrl+X)、GRUB設定を更新します。 bash sudo update-grub
  4. システムを再起動し、変更が適用されたことを確認します。 bash sudo reboot

ハマった点やエラー解決

  • nomodesetを適用しても起動しない場合:
    • Secure Bootの確認: UEFIのSecure Bootが有効になっていると、プロプライエタリドライバのカーネルモジュールがロードできない場合があります。BIOS/UEFI設定でSecure Bootを無効にしてみてください。
    • 別のオプションを試す: ごくまれに、nomodesetが効かない古いGPUなどでは、vga=xxxacpi_osi=Linuxといったオプションも有効な場合があります。
  • ドライバインストール後にGUIが崩れる、起動しない場合:
    • NVIDIAドライバのインストール後に問題が発生した場合、インストールしたドライバを削除して再試行するのが有効です。
    • nomodesetオプションを再度付けて起動し、以下のコマンドでドライバを削除します。 bash sudo apt purge nvidia-* sudo apt autoremove sudo update-grub sudo reboot
    • その後、再度sudo ubuntu-drivers autoinstallを実行するか、Ubuntuソフトウェアセンターの「ソフトウェアとアップデート」から「追加のドライバ」タブでドライバを選択してインストールしてみてください。

解決策

ほとんどのブラックアウト問題は、以下の組み合わせで解決できます。

  1. 一時的な対処: GRUBオプションに「nomodeset」を追加してシステムを起動。
  2. 恒久的な対処: ログイン後、ubuntu-drivers autoinstallコマンド(NVIDIAの場合)またはAMD公式サイトからダウンロードしたドライバパッケージをインストール。
  3. 仕上げ: GRUB設定から「nomodeset」オプションを削除し、sudo update-grubを実行して設定を更新。

これらの手順を丁寧に踏むことで、Ubuntu 20.04 LTS環境を安定して利用できるようになるはずです。

まとめ

本記事では、Ubuntu 20.04 LTSのインストール後や起動時に発生する画面ブラックアウト問題の解決策 を解説しました。

  • 起動時の「nomodeset」オプション適用: グラフィックドライバが原因のブラックアウトを一時的に回避し、デスクトップ環境にアクセスするための第一歩です。
  • 適切なグラフィックドライバのインストール: NVIDIAまたはAMDのプロプライエタリドライバをシステムに導入することで、GPUを最適に動作させ、恒久的な解決を図ります。
  • GRUB設定の更新とトラブルシューティング: ドライバインストール後にnomodesetを削除し、必要に応じてSecure Bootの無効化やドライバの再インストールを行うことで、より安定した環境を構築します。

この記事を通して、グラフィックドライバが原因でUbuntuの導入につまずいていた読者の方々が、スムーズにシステムを起動し、快適なLinuxライフを送れるようになったことを願っています。今後は、Ubuntuのパフォーマンスチューニングや、デュアルディスプレイ設定など、発展的な内容についても記事にする予定です。

参考資料