从安装系统开始,就非常不顺利。
1. 先制作fedora28的USB安装盘
去fedora的官网下载Fedora的USB安装盘制作工具 Fedora Media Writer ,然后下载 Fedora的ISO文件
接下来,就是插入U盘,安装Fedora Media Writer,制作安装U盘。
2.
首先是安装fedora时,bios启动的shell界面显示了一大堆的硬件不兼容信息。
经过搜索,网上关于自己安装nvidia显卡驱动的文章基本以这几篇为主:
Fedora 28 安装完后的基本配置
Fedora 28/27/26 nVidia Drivers Install Guide
Fedora 28 双显卡配置方案
Fedora杂志的安装向导 Install an NVIDIA GPU on almost any machine
还有一篇关于在多块显卡之间切换默认显卡的文章:
多块Nvidia显卡之间切换默认显卡
3. 使用基本图形界面(basic graphhic)来安装 fedora28
- 先进入basic graphic 模式安装fedora
进入basic graphic模式进行安装的目的,是确保可以正常进入fedora的liveusb的图形界面进行安装,避免因显卡驱动不兼容导致连安装界面都进不去。
- 重启后进入 rescue模式
进入rescue模式,是因为正常模式的界面,一进去风扇就狂响屏幕还没有输出,以为要烧掉了,吓得我马上按电源关机。
- 查看当前支持的显卡
执行命令:
lspci | grep -i 'vga\|nvidia'
得到的输出的结果是:
00:02.0 VGA compatible controller: Intel Corporation UHD Graphics 630 (Mobile) 01:00.0 VGA compatible controller: NVIDIA Corporation GP106M [GeForce GTX 1060 Mobile] (rev a1)
可以看到两块显卡都有 VGA,也就是两块显卡都可以直接输出到屏幕,而不像那些交火显卡,集显用于输出到屏幕,独显用于高端效果计算。
再执行命令
lshw -c video
得到的输出的结果是:
WARNING: you should run this program as super-user. *-display UNCLAIMED description: VGA compatible controller product: GP106M [GeForce GTX 1060 Mobile] vendor: NVIDIA Corporation physical id: 0 bus info: pci@0000:01:00.0 version: a1 width: 64 bits clock: 33MHz capabilities: vga_controller cap_list configuration: latency=0 resources: memory:a4000000-a4ffffff memory:90000000-9fffffff memory:a0000000-a1ffffff ioport:5000(size=128) memory:a5000000-a507ffff *-display UNCLAIMED description: VGA compatible controller product: UHD Graphics 630 (Mobile) vendor: Intel Corporation physical id: 2 bus info: pci@0000:00:02.0 version: 00 width: 64 bits clock: 33MHz capabilities: vga_controller bus_master cap_list configuration: latency=0 resources: memory:a3000000-a3ffffff memory:80000000-8fffffff ioport:6000(size=64) memory:c0000-dffff WARNING: output may be incomplete or inaccurate, you should run this program as super-user.
重点部分:
display UNCLAIMED configuration: latency=0
表示它没有驱动
- 查看当前使用的显卡驱动
可以在“配置->详细信息”界面,查看图形界面显示的显卡驱动:
这个
llvmpipe (LLVM 6.0, 256 bits)
实际上就是没有正确加载驱动,无论是集显(Intel UHD Graphics 630 (Mobile))还是独显(GP106M [GeForce GTX 1060 Mobile])。
- 更新系统
目的是看看重启后,是否能正常进入最新的内核模式。后面安装nvidia驱动时,需要在最新的内核模式下进行。
4. 安装 nvidia-1060的显卡驱动
我最后是跟着fedora杂志的文章 Fedora杂志的安装向导 Install an NVIDIA GPU on almost any machine 完成的n卡驱动安装。
首先,更新系统到最新:
$dnf -y update
$reboot
然后,删除旧的linux核心,确保当前系统运行在最新的内核上。因为n卡官方驱动是在4.18或以后版本的内核上编译出来的:
$dnf -y remove kernel-core-4.16.3-301.fc28.x86_64
$dnf -y remove kernel-devel-4.16.3-301.fc28.x86_64
接下来,启用nka驱动官方软件源:
$dnf config-manager --set-enabled rpmfusion-nonfree-nvidia-driver
$dnf repository-packages rpmfusion-nonfree-nvidia-driver info
现在,确保系统已联网的情况下,打开fedora的默认软件安装管理界面:
点击界面上的“附加组件”:
再点击“硬件驱动”,此时,你会发现该列表下,多了一个 “NVIDIA Linux Graphics Driver”。选择该软件并点击安装:
好了,现在我们已经完成了一切步骤,可以重启电脑,然后测试n卡了。
我从命令行查看当前启用的显卡驱动:
[xx@fedora ~]$ lspci -k |grep -A 2 -i vga
00:02.0 VGA compatible controller: Intel Corporation UHD Graphics 630 (Mobile)
DeviceName: Onboard - Video
Subsystem: Tongfang Hongkong Limited Device 1059
--
01:00.0 VGA compatible controller: NVIDIA Corporation GP106M [GeForce GTX 1060 Mobile] (rev a1)
Subsystem: Tongfang Hongkong Limited Device 1059
Kernel driver in use: nvidia
[xx@fedora ~]$
可以看到当前启用的是 nvidia 显卡:
Kernel driver in use: nvidia
我再执行如下命令检查连接的接口:
[xx@fedora ~]$ xrandr -q
Screen 0: minimum 320 x 200, current 1920 x 1080, maximum 16384 x 16384
eDP-1 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 344mm x 194mm
1920x1080 60.03 + 60.01 59.97* 59.96 59.93 48.00
1680x1050 59.95 59.88
- 这个结果,说明在 eDP-1 接口(笔记本自己的显示屏)上,有一个 1920 x 1080 的显示器;hdmi接口没有工作。问题是此时我的 HDMI 接口上,是有连着一个22寸外接显示器的。
- 如果卸载 nvidia 官方驱动,改为安装linux自带的通用n卡驱动 xorg-x11-drv-nouvou 驱动,倒是两个显示器都能正常显示。
- 估计原因是这个hdmi接口是连接的集显,不是连接的n卡。使用 akmod-nvidia 驱动时,集显没有正常工作。