设置好BIOS以及正确安装好显卡驱动, 那么很多问题就可以得到解决:
问题: 引导失败; 黑屏; 无限登录; 挂起后无法唤醒; 安装显卡驱动以后屏幕亮度不能调节; 图形是llvmpipe; HDMI连接显示器没有反应; compiz进程占用很多的CPU;
提示The system is running in low-graphics mode进不入系统;
另: 本来安装这些是很简单的一件事, 但Y7000显卡采用了比较新的GTX1650显卡, 问题就变得不同了, 安装显卡驱动存在着较多问题, 到目前相关的帖子又很少, 所以这篇博客里讲了拯救者Y7000如何安装Ubuntu和NVIDIA显卡驱动.
1.0. 由于安装ubunut系统的教程很多, 所以这里只是大概讲下流程和需要注意的地方;
1.1. 首先在win10环境下使用自带的磁盘管理工具将某个盘压缩出自己所需要的空间, 我这里压缩了250G给Ubuntu系统使用, 压缩完成后会看到存在一个未分配的分区,如下图所示; (如果在安装类型中选择了第一项, 系统会自动识别出这个未分配的分区进行Ubuntu的安装, 并且还会分为 /
和 swap
两个分区)
1.2. 使用U盘制作启动盘:
1.3. 重点: 设置电脑BIOS选项(联想电脑: 开机连按F2) :
1.3.1. 在BIOS的Configuration
这一项将图形设备Graphic Device选项改为: Switchable Graphics, 引导方式默认的UEFI就行;
Graphic Device = Discrete Graphics, 会出现挂起后无法唤醒的问题. (这个时候
系统设置->详细信息
图形: llvmpipe(LLVM 6.0, 256 bits))
Graphic Device = Switchable Graphics, 不会出现挂起后无法唤醒的问题. (这个时候系统设置->详细信息
图形: Intel® HD Graphics (Coffeelake 3x8 GT2) )
1.3.2. 在BIOS的Security
这一项将Secure Boot改为: Disabled
1.4. 关机, 插入制作好的启动盘, 然后开机后连按F12(联想电脑) ,然后选择是启动盘那个选项;
注: 如果以前安装了Ubuntu系统, 现在想再安装同样的系统或者其他, 最好将以前的Ubuntu系统引导项从电脑删除干净, 不然到最后系统的引导项会有好多个Ubuntu, 那时候就不容易分不清了, 具体方法见: 此处
1.5. 等待片刻就开始了Ubuntu系统的安装选项界面, 选项如下(选择第一个或第二个均可), 然后开始安装, 选择语言等:
1.6. 重点:下来就是最重要的一步: 分区
1.6.1. 当执行到安装类型
这一步的时候, 我们可以选第一个或者最后一个:
/
和swap
分区, 如果安装的是Ubuntu 16.04.4版本, 可以直接选第一项, swap
分区 = 电脑的运存, 如果是16.04.5及以后版本, 这个swap分区 = 1G, 显然不太合适(我在我自己电脑上测试结果是这样), 我安装了Ubuntu16.04.6, 所以我选择了最后一个: 其他选项进行手动分区1.7. 分区结果如下:
/分区
:
swap分区
:
我这里只分了两类/
和swap
, 剩下的那些分区没有必要分了, 这样使用就挺方便;
还有一个重要的boot
分区没有分, 我直接使用了Windows的efi(当然也可以做两个efi分区来引导各自的系统,依然是点击+号,分差不多200M的空间挂载到/boot
即可); 最终结果如下:
1.8. 点击现在安装, 设置用户名等, 就可以将Ubuntu安装进去了, 差不多需要花费2分钟左右的时间就完成了.
1.9. 重启进入系统, 这样会自动进入grub引导界面,第一项就是Ubuntu,我们可以点回车进入系统(如果还是进入了Windows系统,那我们可以重启的时候按F2进入BIOS选项将Ubuntu移到最上面启动,这样就会进入grub引导界面了)
注: EasyBCD引导不了EFI类系统, 所以还是建议直接修改BIOS顺序进入就行.
2.1. 这个系列电脑存在一个通病(其他系列的不清楚): **WiFi连接不成功 **; 我们通过rfkill命令来查看无线传输设备的情况:
$ rfkill list all
结果如下, 存在两个WiFi设备, 我们这里将第一个设备ideapad禁用掉即可(因为被Hard blocked了):
解决方法, 在/etc/rc.local文件中exit 0
的上一行写入echo "123" | sudo modprobe -r ideapad_laptop
即可:
$ sudo gedit /etc/rc.local
2.2. 重启设备就可以连接上WiFi了.
2.3. 更新一下源,以便后续安装其他程序;
$ sudo apt-get update
3.0. 问题: 当进行完上面那些步骤以后, 如果通过HDMI去连接显示器以后会发现显示器没有任何输出, 这主要是因为此电脑的HDMI接口是连在独显上的, 但是独显的闭源驱动并没有安装上, 所以显示器没有任何输出, 通过成功安装GTX1650显卡驱动, 外接显示器就可以正常工作.
3.1. 安装NVIDIA驱动一共有三种方法:
sudo apt-get install xxxx
, 通过deb文件进行安装;系统设置->软件和更新->附加驱动
中可以找到NVIDIA的驱动, 点击合适的版本,最后应用更改; (我这里是添加了ppa以后附加驱动才有内容的, 没有加ppa之前附加驱动是空白的);3.1.1. 查看电脑显卡的指令如下:
$ lspci -k | grep -A 2 -i "VGA"
3.2. 我这里第二和第三种都没有安装成功, 会出现黑屏或者循环登录的情况, 最后通过ppa的方式安装成功, 方法如下:
注: 由于第一次安装可能不成功, 所以需要卸载以前不成功的驱动, 卸载方法如下(如果是第一次安装NVIDIA则可以跳过):
- ppa方式安装
$ sudo apt-get purge nvidia-*
- .run方式安装
$ cd
$ sudo ./NVIDIA-Linuxxxxx-version.run --uninstall
3.3. 通过ppa方式安装方法如下:
3.3.1. 由于电脑安装了NVIDIA的开源驱动nouveau, 所以我们先要将其屏蔽掉, 屏蔽方法是将其放入blacklists中; 首先我们通过lsmod | grep nouveau
可以发现系统已载入的nouveau模块:
3.3.2. 禁用nouveau模块:
$ sudo gedit /etc/modprobe.d/blacklist.conf
在blacklist.conf文件中, 最后一行输入:
blacklist vga16fb
blacklist nouveau
blacklist rivafb
blacklist rivatv
blacklist nvidiafb
3.3.3. 升级一下内核:
$ sudo update-initramfs -u
注: 这里应该会出现两个下面的警告:
W: Possible missing firmware /lib/firmware/i915/kbl_guc_ver9_14.bin for module i915
W: Possible missing firmware /lib/firmware/i915/bxt_guc_ver8_7.bin for module i915
如果不修改,到时候安装ROS的时候也会存在这两个警告, 我们可以点击此处下载相应的文件, 复制到对应的目录即可:
$ cd [the path of bin file]
$ sudo cp kbl_guc_ver9_14.bin /lib/firmware/i915/
$ sudo cp bxt_guc_ver8_7.bin /lib/firmware/i915/
3.3.4. 重启
$ sudo reboot
3.3.5. 通过Ctrl + Alt + F1
进入tty1界面(这个界面是纯黑底白字的, 如果想再次回到桌面, 可以通过Ctrl + Alt + F7
进入), 然后将桌面管理器lightdm关闭, 添加ppa, 更新源, 查找推荐驱动, 安装驱动, 开启lightdm服务, 回到桌面, 重启.
$ sudo service lightdm stop
$ sudo add-apt-repository ppa:graphics-drivers/ppa
$ sudo apt-get update
$ sudo ubuntu-drivers devices # 这一步会看到推荐的驱动版本号,比如123
$ sudo apt-get install nvidia-123 nvidia-settings nvidia-prime
$ sudo service lightdm start
$ sudo reboot
需要注意的是: 我这里推荐安装的驱动版本是430, 结果失败了, 经过几次尝试安装了nvidia-418, 终端显示的是418.56版本, 虽然不是推荐的, 但是安装成功,没有问题 (推荐的驱动430安装失败…)
疑问: GTX1650显卡是2019年4月23号推出的显卡, 430.09版本的驱动也是该天推出的, 驱动的官网也明确说明添加了对GTX1650的support, 后续的430.xx版本也推出了, 但是通过ppa方式和.run安装均失败. 418.56驱动是3月20号推出的, 没有讲支持GTX1650驱动, 但是却可以安装成功.
3.4. 检测成功与否
3.4.1. 重启以后可以发现系统设置->详细信息
中的图形变成了: GeForce GTX 1650/PCIe/SSE2, 如下图所示:
3.4.2. 通过下面命令可以打开NVIDIA的配置面板, 可以发现渲染器Renderer为独立显卡GTX1650, 如下图:
$ nvidia-settings
3.4.3. 通过下面命令可以发现, 系统是否使用了NVIDIA显卡驱动, 如下图所示, 如果使用率为0, 多半是安装错误;
$ nvidia-smi --loop=1
3.4.5 以前的旧电脑通过ppa安装推荐的NVIDIA驱动, 一次就成功了, 但是这次这个GTX1650着实让人觉得有些奇怪.
3.5. 双显卡切换
3.5.1. 安装好独立显卡以后,如果需要切换回集成显卡,可以在nvidia-settings界面的PRIME Profiles
选项中切换为集成显卡,重启或注销;
3.5.2. 如果切换到集成显卡,会发现nvidia-settings打不开了,这个时候我们可以通过在终端输入命令来切换为独立显卡:
$ sudo prime-select nvidia
4.1. 如果出现下面问题, 多半是独立显卡安装有问题或者BIOS的图像选项没有设置对:
-no-opengl-files
的原因)PRIME Profiles
选项;4.2. 如果安装驱动出现了上面的问题, 导致黑屏或者无限登录, 我们可以通过Ctrl + Alt + F1
进入tty1界面卸载掉NVIDIA驱动就可以进入有桌面的系统了, 紧接着又可以尝试安装NVIDIA驱动了.
5.1. 系统方面: 安装htop, terminator, indicator-sysmonitor;
5.2. 输入法: 搜狗输入法;
5.3. 安装ROS环境;
5.4. 安装catkin tools,支持catkin build
$ sudo apt-get install python-catkin-tools
5.4. 编译环境: CLion, Roboware, MATLAB;
5.5. 优化库相关项: Eigen, Sophus, Ceres, g2o, Pangolin;
5.6. 文档类: 福昕阅读器, WPS, Xmind, Typora;
6.1. 根据下面的回复区,目前430.64也可以安装成功,GTX1650在它的support列表中;
详见此处官网430.64驱动说明
6.1.1. 在官网驱动页面对GTX进行选择时不要选择“Geforce GTX16 series (Notebooks)”,要选择“Geforce 16 series”,否则出不来430.64驱动版本的这个选项。
6.2. 其他