作者:张华  发表于: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)的更多相关文章

  1. 大内存电脑在vbox安装linux报错

    问题描述: 1.机器:Linux主机,特别是主机为大内存,比如: 4G内存的使用pae内核的Ubuntu系统的thinkpad电脑. 2.情况:使用VirtualBox安装Linux系统时,比如:通过 ...

  2. 在VMware上安装Linux(CentOS)

    1. 新建虚拟机 2. 新建虚拟机向导 3. 创建虚拟空白光盘 4. 安装Linux系统对应的CentOS版 5. 虚拟机命名和定位磁盘位置 6. 处理器配置,看自己是否是双核.多核 7. 设置内存为 ...

  3. 安装 Linux 时碰到的硬盘分区的陷阱及应对

    硬盘分区的陷阱及应对 之所以想到写这篇,是因为本人在折腾 Linux 系统的过程中,有多次掉入硬盘分区的陷阱的经历.最近几天,再一次掉入坑中,折腾了两天才从坑中爬出来.经过多方查询资料,终于弄明白了硬 ...

  4. Win7上安装Linux双系统

    今天帮同学在Win7上安装Linux,感觉一篇教程很不错,mark一下 原地址:Win7下U盘安装Ubuntu14.04双系统步骤详解 一.前期准备 1.大于2G的U盘一个(我的系统盘制作完成后大约占 ...

  5. 安装linux操作系统

    安装双操作系统; 1 0. 介绍: 1 1 实验环境: 2 2. 实验准备: 2 3.开始安装: 2 1 制作U盘启动工具: 2 2.安装LinuxOS. 3 2.1在windowOS中划分60G空间 ...

  6. 使用ISO文件安装Linux

    一. 准备知识 1. ISO文件 我们普遍使用的ISO文件是指包含着整个CD-ROM(ISO-9660 文件系统)内容的 映象, 是整个碟片从0扇区到最后一个扇区的完整复制,经常被用来在网络上传输 对 ...

  7. VMware下安装Linux系统,ORACLE软件,DBCA建库

    操作系统安装   在vmware下安装Linux (OEL5.6),用于数据库服务器 1.打开vmware,选择"创建新的虚拟机"       2.选择自定义安装   3.选择虚拟 ...

  8. 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... ...

  9. 虚拟机上安装Linux操作系统

    很久之前就知道虚拟机这个东西,也都在虚拟机上安装过Windows的操作系统和Linux的操作系统,但是一直都没有去做笔记. 最近还是比较有时间,就移除了前两天刚刚安装的Linux系统,重新安装一次,做 ...

随机推荐

  1. Codeforces 963A Alternating Sum(等比数列求和+逆元+快速幂)

    题目链接:http://codeforces.com/problemset/problem/963/A 题目大意:就是给了你n,a,b和一段长度为k的只有'+'和‘-’字符串,保证n+1被k整除,让你 ...

  2. Unix IPC之Posix信号量实现生产者消费者

    采用多生产者,多消费者模型. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 /**  * 生产者  */ P(nempty); P(mutex); // 写入一个 ...

  3. EVA:自定义字段实现

    原文链接:http://blog.csdn.net/ytangdigl/article/details/70145910 前言 自定义字段又叫做“开放模型”,用户可以根据自已的需求,添加需要的字段,实 ...

  4. c语言快速排序算法(转)

    原文链接http://blog.csdn.net/morewindows/article/details/6684558 快速排序由于排序效率在同为O(N*logN)的几种排序方法中效率较高,因此经常 ...

  5. ef查询mysql数据库数据支持DbFunctions函数

    1.缘由 快下班的时候,一同事说在写linq查询语句时where条件中写两时间相减大于某具体天数报错:后来仔细一问,经抽象简化,可以总结为下面的公式: a.当前时间 减去 某表时间字段 大于 某具体天 ...

  6. Ansible的基础元素和YAML介绍

    本节内容: YAML Ansible常用的数据类型 Ansible基础元素 一.YAML 1. YAML介绍 YAML是一个可读性高的用来表达资料序列的格式.YAML参考了其他多种语言,包括:XML. ...

  7. 【58沈剑架构系列】微服务架构之RPC-client序列化细节

    第一章聊了[“为什么要进行服务化,服务化究竟解决什么问题”] 第二章聊了[“微服务的服务粒度选型”] 上一篇聊了[“为什么说要搞定微服务架构,先搞定RPC框架?”] 通过上篇文章的介绍,知道了要实施微 ...

  8. Spring Boot 实用MyBatis做数据库操作

    前言: 本项目基于maven构建,使用mybatis-spring-boot作为spring-boot项目的持久层框架 spring-boot中使用mybatis持久层框架与原spring项目使用方式 ...

  9. 牛客练习赛3 B - 贝伦卡斯泰露

    链接:https://www.nowcoder.net/acm/contest/13/B来源:牛客网 题目描述 贝伦卡斯泰露,某种程度上也可以称为古手梨花,能够创造几率近乎 为0的奇迹,通过无限轮回成 ...

  10. vue开发computed,watch,method执行的先后顺序

    1#computed:计算属性将被混入到 Vue 实例中.所有 getter 和 setter 的 this 上下文自动地绑定为 Vue 实例. 2#methods:methods 将被混入到 Vue ...