さてさて今回は学校のパソコンにfedoraをインストールしたいと思います。
タイトル通りoptimusテクノロジー搭載のパソコンに正常にlinuxをインストールしていきます。
中途半端なグラフィックボードが搭載されているんですね。
これによりインストール難易度が飛躍的に向上しています。
サイトの通りGeForce® GTX 1050 (2GB)が搭載されているのは間違いないのですが、
lspciコマンドを打ち込みグラフィックボード関連のものをピックアップすると
00:02.0 VGA compatible controller: Intel Corporation Device 591b (rev 04)
01:00.0 3D controller: NVIDIA Corporation GP107M [GeForce GTX 1050 Mobile] (rev a1)
となっています。
本来であればGP107MもVGA compatible controllerと表示されるのですが、
今回は何やら3D controllerと表示されています。これこそがoptimusテクノロジーで接続されている証拠です。
そもそもoptimusテクノロジーとはなんなのかですが、公式サイトには
こんな感じに書いてありますね。
わかりやすく書くと、これはバッテリーの稼働時間を伸ばすための技術です。
ネットとかをみるときはintel uhd graphic使ってゲームするときはGTX1050を使ってという感じに言わばハイブリットカーみたいなことをしてるんですね。
ただこの切り替えがLinuxの標準搭載のドライバだとうまくできません。
ざっと説明したところでさくっとインストールしていきましょう。
おそらくoptimus搭載のpcでもliveCDは起動する(もちろんbootable USBも)はずなのでlive版を起動して普通にインストールします。
ウィザード方式なので説明は省きます。ちなみに被験体の筐体はネットワークマネジメントでエラーを吐きまくりなかなか起動しませんでした。
本体が最新すぎたかもしれません。
で、終わると再起動しますが、そのままほかっておくとおそらくflatpanelうんたらかんたらーみたいなエラーが出て、いつまでたってもログイン画面が出ないと思います。
それが正常ではないですが正常です。どうにもならないはずなので、強制終了します。HDDに負担がかかるのでこれはやらないでください。
起動したときにgrub画面で起動するカーネルにオプションを追加するために「e」を押します。そうして、kernel/vmlinuz-2.......みたいな欄が下の方にあるはずなので、その後ろに、
nouveau.modeset=0
を追加します。
例 kernel/vmlinuz-2.7......KEYTABLE=us nouveau.modeset=0
その後、ctrl+xで起動すれば起動ができるはずです。
そうしたら普通に起動します。
デスクトップが起動したらコマンドラインを起動し、おまじないを唱える準備を始めます。
今回はbumblebeeを使って解決していきます。
sudo dnf update
ここでupgradeまでかけてもいいですが、再起動が必要でめんどくさいのでこのままおまじないを唱えてしまします。
sudo dnf config-manager --add-repo=https://negativo17.org/repos/fedora-nvidia.repo
sudo dnf install nvidia-driver kernel-devel akmod-nvidia dkms acpi kernel-headers gcc acpid
sudo dnf copr enable chenxiaolong/bumblebee
sudo dnf install akmod-bbswitch bumblebee primus
sudo gpasswd -a $USER bumblebee
sudo systemctl enable bumblebeed
sudo systemctl disable nvidia-fallback
唱え終わったら再起動します。
この再起動でもgrubのオプションを確認し、先程打ち込んでいたnouveauうんたらかんたらーがすでに追記されてるのを確認してから、エスケープで戻ってから通常起動します。ここで追記されていなかったらどこかで失敗しています。
これで無事に普通に使えるようになったはずです。
ちなみにfedora Wikiのbumblebee記事で書かかているようにちゃんとoptimus機能を使ってGTX1050の旨味もつかえますので、使い方はwikiをご覧ください。
updateしたら速攻でカーネルバージョンとドライバが合わなくなって使えなくなりました(泣
参考文献
blacklist nouveauのやり方も試しましたが、うまく行かなかったので、大掛かりなことをしています。おそらくnvidiaのドライバを無効化してintelのドライバだけにすれば普通に使えると思うんですけどね...
CUDA使うには仕方ない...