Thinkpad T440p安装Linux的种种问题(by quqi99)
作者:张华 发表于:2014-05-08
版权声明:能够随意转载,转载时请务必以超链接形式标明文章原始出处和作者信息及本版权声明
(http://blog.csdn.net/quqi99 )
Thinkpad T440p里使用了一些最新的硬件,这些硬件厂商对Linux高度不兼容, 以下是安装ubuntu 14.04与win8双系统时遇到的一些问题。
1, 要在BIOS(F1键)里disable掉UEFI Security Boot特性。
UEFI是下一代的BIOS,它内操置了一些操作系统的公钥,操作系统要用私钥签名,UEFI硬件用公钥检測操作系统的完整性,可信才载入系统。
本来是一个非常好的技术,可是被微软给滥用了。微软先强制将它自己的公钥加到UEFI DB中,然后再要求厂商预安装Win8之后强制厂商将UEFI Security Boot特性打开,这样就无法安装其他没有公钥的操作系统了,然后强制其他厂商向微软申请公钥,也不同意用户自己定义公钥文件。对于一些支持win8的移动硬件,微软甚至都强制不提供disable UEFI Security Boot的开关界面。
2, Thinkpad T440p使用了Realtek公司的rtl8192ee 10ec:818b网卡,
root@laptop:/home/hua# lspci -nn |grep Wireless
04:00.0 Network controller [0280]: Realtek Semiconductor Co., Ltd. RTL8192EE PCIe Wireless Network Adapter [10ec:818b]
Realtek公司却没有提供对应的Linux驱动(附录一是一个极不稳定的驱动,基本没法用),也就是眼下:
有固件:/lib/firmware/rtlwifi/rtl8192eefw.bin
但无驱动:/lib/modules/3.13.0-24-generic/kernel/drivers/net/wireless/rtlwifi/rtl8192ee/rtl8192ee.ko
Realtec公司的rtl8192ee驱动将出如今linux 3.16版本号的内核里,3.16内核眼下还没有出,实在没办法解决,仅仅好先又买了个TL-WN725N USB无线网卡对付着用。
3, Thinkpad T440p除了主板里的集成显卡以外,另一个nvidia的显卡,默认使用的是开源的bumblebee驱动,我遇到的会造成这两种问题:
一是比如运行lspci命令之后都会造成全部的usb设备都无法用,如usb网卡,如usb数标。
二是因为acpi call失败造成无法正常关机,且每次造成磁盘数据损坏导致在开机时须要修复
三是合上电脑再打开桌面消失
四是发热厉害
五是不安装它可能启动ubuntu不成功,须要在grub中暂时将quiet splash改成nomodeset就可以,将nvidea驱动安装后就不须要了。
网上有人遇到了和我一样的问题,见:https://github.com/Bumblebee-Project/bbswitch/issues/78,但它的办法是在仍然用bumblebee驱动的前提下寻求解决(见附录二),我是直接安装nvidia linux驱动(值得一提的是,nvidia也是一个起初对linux极不友好的一家公司,linux之父在公开场合还以前骂地这家公司,见:http://www.ithome.com/html/it/19249.htm,可是如今竟然有nvidia linux驱动了,赞一个)。
sudo apt-get purge bumblebee*
sudo apt-get purge libvdpau-va-gl1
sudo apt-get install nvidia-319 nvidia-settings-319 nvidia-prime
附录一,眼下极不稳定的一个rtl8192ee linux驱动
參考:http://ubuntuforums.org/showthread.php?t=2198221
wget http://netbook-remix.archive.canonical.com/updates/pool/public/o/oem-wireless-rtl-92ce-92se-92de-8723ae-88ee-8723be-92ee-dkms/oem-wireless-rtl-92ce-92se-92de-8723ae-88ee-8723be-92ee-dkms_0017.1016.2013~sutton1.tar.gz
sudo modprobe rtl8192ee
sudo modprobe -rv rtl8192ee
sudo modprobe -v rtl8192ee swenc=1 fwlps=0 ips=0
附录二,仍使用开源的nvidia驱动nouveau的前提下解决acpi问题
git clone https://github.com/mkottman/acpi_call
cd acpi_call
make
sudo cp acpi_call.ko /lib/modules/`uname -r`/kernel/drivers/acpi
sudo depmod -a
sudo modprobe acpi_call
Create a script with the following in it (e.g. at /usr/local/bin/disable_nvidia.sh, remember chmod +x it):
#!/bin/sh
echo "\_SB.PCI0.PEG.VID._DSM {0xF8,0xD8,0x86,0xA4,0xDA,0x0B,0x1B,0x47,0x60,0x42,0xA6,0xB5,0xBE,0xE0} 0x100 0x1A {0x1,0x0,0x0,0x3}" >/proc/acpi/call
echo "\_SB.PCI0.PEG.VID.GPOF" >/proc/acpi/call
exit 0
Call the script from /etc/rc.local
Add rdblacklist=nouveau i965.modeset=1 nouveau.modeset to the GRUB_CMDLINE_LINUX_DEFAULT flags in /etc/default/grub, also for full KVM support (e.g. better brightness control etc.) I've found adding acpi_osi=\"!Windows 2012\" helps too.
run sudo update-grub
Thinkpad T440p安装Linux的种种问题(by quqi99)的更多相关文章
- 大内存电脑在vbox安装linux报错
问题描述: 1.机器:Linux主机,特别是主机为大内存,比如: 4G内存的使用pae内核的Ubuntu系统的thinkpad电脑. 2.情况:使用VirtualBox安装Linux系统时,比如:通过 ...
- 在VMware上安装Linux(CentOS)
1. 新建虚拟机 2. 新建虚拟机向导 3. 创建虚拟空白光盘 4. 安装Linux系统对应的CentOS版 5. 虚拟机命名和定位磁盘位置 6. 处理器配置,看自己是否是双核.多核 7. 设置内存为 ...
- 安装 Linux 时碰到的硬盘分区的陷阱及应对
硬盘分区的陷阱及应对 之所以想到写这篇,是因为本人在折腾 Linux 系统的过程中,有多次掉入硬盘分区的陷阱的经历.最近几天,再一次掉入坑中,折腾了两天才从坑中爬出来.经过多方查询资料,终于弄明白了硬 ...
- Win7上安装Linux双系统
今天帮同学在Win7上安装Linux,感觉一篇教程很不错,mark一下 原地址:Win7下U盘安装Ubuntu14.04双系统步骤详解 一.前期准备 1.大于2G的U盘一个(我的系统盘制作完成后大约占 ...
- 安装linux操作系统
安装双操作系统; 1 0. 介绍: 1 1 实验环境: 2 2. 实验准备: 2 3.开始安装: 2 1 制作U盘启动工具: 2 2.安装LinuxOS. 3 2.1在windowOS中划分60G空间 ...
- 使用ISO文件安装Linux
一. 准备知识 1. ISO文件 我们普遍使用的ISO文件是指包含着整个CD-ROM(ISO-9660 文件系统)内容的 映象, 是整个碟片从0扇区到最后一个扇区的完整复制,经常被用来在网络上传输 对 ...
- VMware下安装Linux系统,ORACLE软件,DBCA建库
操作系统安装 在vmware下安装Linux (OEL5.6),用于数据库服务器 1.打开vmware,选择"创建新的虚拟机" 2.选择自定义安装 3.选择虚拟 ...
- Linux:Vmware安装linux虚拟机,桥接方式配置静态IP后重启网卡,提示:Error,some other host already uses address 10.252.252.21...
问题: Vmware安装linux虚拟机,桥接方式配置静态IP后重启网卡,提示:Error,some other host already uses address 10.252.252.21... ...
- 虚拟机上安装Linux操作系统
很久之前就知道虚拟机这个东西,也都在虚拟机上安装过Windows的操作系统和Linux的操作系统,但是一直都没有去做笔记. 最近还是比较有时间,就移除了前两天刚刚安装的Linux系统,重新安装一次,做 ...
随机推荐
- group by 和 distinct 去重比较
distinct方式就是两两对比,需要遍历整个表.group by分组类似先建立索引再查索引,所以两者对比,小表destinct快,不用建索引.大表group by快.一般来说小表就算建索引,也不会慢 ...
- 通过field:global给子元素添加css样式
{dede:arclist row=5 typeid=200} <li [field:global runphp=’yes’ name=autoindex](@me==1)?@me=”class ...
- 20165203《Java程序设计》第八周学习总结
20165203<Java程序设计>第八周学习总结 教材学习内容总结 第12章 进程与线程 进程的完成过程:代码加载.执行至执行完毕 线程:一个进程由多个线程组成. 线程的完成过程:自身的 ...
- 20155309南皓芯 实验2 Windows口令破解
在网络界,攻击事件发生的频率越来越高,其中相当多的都是由于网站密码泄露的缘故,或是人为因素导致,或是口令遭到破解,所以从某种角度而言,密码的安全问题不仅仅是技术上的问题,更主要的是人的安全意识问题. ...
- log4j记录日志到指定文件
新建类文件: import org.apache.log4j.Logger; import org.apache.log4j.PropertyConfigurator; /** * 记录日志到指定文件 ...
- iOS网络加载图片缓存与SDWebImage
加载网络图片可以说是网络应用中必备的.如果单纯的去下载图片,而不去做多线程.缓存等技术去优化,加载图片时的效果与用户体验就会很差. 一.自己实现加载图片的方法 tips: *iOS中所有网络访问都是异 ...
- 【LOJ】#2054. 「TJOI / HEOI2016」树
题解 一写过一交A的水题 只要求一个dfs序,新加一个标记在子树所在的区间上覆盖上该点,维护深度最大的答案 代码 #include <bits/stdc++.h> #define ente ...
- 跟我一起学WPF(0):初识WPF
WPF是什么 WPF是微软的新一代图形引擎系统,全称为Windows Presentation Foundation,从.NET3.0版本开始引入,为用户界面.2D/3D 图形.文档和媒体提供了统一的 ...
- Think PHP 3.2 界面及JS多语言实现
1.多语言实现的原理在实现多语言的时候需要调用L()函数.那么L函数是如何实现多语言的输出呢?在L函数内部有一个静态变量$_lang一维数组.所有的语言数据都存在在这个数组中.系统在加载的时候根据选择 ...
- java 工厂模式和内部类的完美结合
package com.bikeqx.test; public class Main{ public static void apply(ServiceFactory sf){ Service s = ...