[ 利器篇 ] - Microsoft Surface Pro 系列安装 Ubuntu 16.04 系统
Microsoft Surface Pro 系列一直是平板+PC中的强者,刷新了针对PC的看法。这次由于项目的需求搭建测试环境,需要使用Ubuntu 16.04 系统,在Surface Pro 7 安装Ubuntu 16.04 进行开发体验。
有的时候电脑异常关机后无法开机,可尝试如下方法:
解决方案1:
插上电源线,长按开机键10秒以上,然后按0.5秒左右放手,然后再按0.5秒放手,然后等待看启动情况,很多时候这样就可以开机了。
解决方案2: 1.音量和电源键同时长按15秒 2.长按电源键5次(每秒3次的频率,此步骤就不需要按音量键了),查看启动情况。
1. 制作U盘启动盘
#1.查看U盘设备号,本例使用了8G的U盘,并且知道计算机安装了两块硬盘,那么U盘设备号就可以根据大小和硬盘数量很容易的分辨出来"/dev/sdc"
sudo fdisk -l
#2.如果U盘被自动挂载,请使用U盘设备号先umount
~$ sudo umount /dev/sdc*
#3.准备好一个iso文件,使用dd命令将这个iso写入u盘
# if=后面跟要刻录到u盘的iso文件路径
# of=后面是u盘设备号(不需要带分区号)
# 写入过程是没有数据显示的,只要输出和输入路径没错,耐心等待即可,根据U盘读写速度以及iso文件大小,一般需要5~10分钟左右
~$ sudo dd if=~/ubuntu-16.04-desktop-amd64.iso of=/dev/sdc
2. 进入BIOS模式,设置启动项
电脑关机状态下同时按住开机键和“+”音量键进入UEFI模式
在左侧点击Security标签,在右侧界面点开Secure Boot下方的Change configuration,选择None;并关闭最下方的enable TPM选项。(注意:此举相当于放开了开机启动权限,会在以后的开机过程中屏幕上方出现红色警告,且人脸解锁和PIN解锁不可用)
这里Secure Boot下方的Change configuration 必须选择None, 如果保持默认选项,会出现如下所示,并出现蓝屏提示:Verification failed:(15) Access Denied,无法进入。
在左侧点击Boot configuration标签,在右侧界面拖动USB storage至最上方
在左侧点击Exit标签,在右侧界面选择Restart now。
至此surface已设置为可从USB中加载文件,开始引导系统安装。
在系统按转过程中,发现Sugrface Pro 7 键盘无法使用,需要外接键盘。根据网上的教程,尝试 :
$ sudo apt-get update
$ sudo apt-get upgrade
$ echo "deb http://ppa.launchpad.net/tigerite/kernel/ubuntu trusty main" | sudo tee /etc/apt/sources.list.d/tigerite-kernel-trusty.list
$ sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 984AE706D31B333A && sudo apt-get update
$ sudo apt-get install linux-surface
这种方法依旧没有成功。
加快下载进度,下载源更换为其他源
// sudo vi /etc/apt/sources.list
deb-src http://archive.ubuntu.com/ubuntu xenial main restricted #Added by software-properties
deb http://mirrors.aliyun.com/ubuntu/ xenial main restricted
deb-src http://mirrors.aliyun.com/ubuntu/ xenial main restricted multiverse universe #Added by software-properties
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted multiverse universe #Added by software-properties
deb http://mirrors.aliyun.com/ubuntu/ xenial universe
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates universe
deb http://mirrors.aliyun.com/ubuntu/ xenial multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse #Added by software-properties
deb http://archive.canonical.com/ubuntu xenial partner
deb-src http://archive.canonical.com/ubuntu xenial partner
deb http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted multiverse universe #Added by software-properties
deb http://mirrors.aliyun.com/ubuntu/ xenial-security universe
deb http://mirrors.aliyun.com/ubuntu/ xenial-security multiverse
参考文章
- 在Surface book上安装、配置和卸载Ubuntu16.04
- Linux环境怎样制作u盘系统启动盘
- surface pro3无法开机怎么处理?
- Verification failed:Access Denied解决办法
- Surface Pro 4装Ubuntu
- 这或许是对小白最友好的python入门了吧——7,组织列表
- 这或许是对小白最友好的python入门了吧——6,删除列表元素
- 集群开源软件赏:JGroups
- 看到他我一下子就悟了---委托
- 这或许是对小白最友好的python入门了吧——5,修改和添加列表元素
- 这或许是对小白最友好的python入门了吧——4,列表
- 【深度学习】自动驾驶:使用深度学习预测汽车的转向角度
- 这或许是对小白最友好的python入门了吧——3,数字处理
- 数据库恢复方案
- 这或许是对小白最友好的python入门了吧——2,变量和字符串
- Extjs4.2+webAPI+EF实现分页以及webapi的数据传值(续)
- Linux 系统安全与优化配置
- Extjs 项目中常用的小技巧,也许你用得着(2)
- 这或许是对小白最友好的python入门了吧——16,输入文本
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 移动端H5开发入门
- Go 语言学习之流程控制
- MinGW 安装
- 实践 | 目前最快精度最高检测框架(EfficientDet)
- 解决拉取github仓库报错“gnutls_handshake() failed”问题
- HTML 学习
- Go 语言学习之数组
- 坐姿不对,屏幕就变模糊!小姐姐教你用TensorFlow做一款“隐形背背佳”
- 七日Python之路--第九天(blog与Django)
- Python数据可视化-seaborn Iris鸢尾花数据
- pythonGUI -- pyside安装与初试
- TS 设计模式02 - 建造者模式
- 艺术鬼才!Unicode 字符还能这么玩?
- TS 设计模式03 - 单例模式
- MySQL 案例:Limit 分页查询优化