记录旧手机(米6)安装Linux(Ubuntu16.04)踩过的坑
旧的小米6在抽屉吃灰半年,一直没想好要怎么处理,于是就想着安装Linux。
完整教程来自https://blog.csdn.net/Greepex/article/details/85333027
原文里把每一个步骤都描述得很清楚(所以本文就不贴详细步骤图了,竖版截图太影响观感),但难免会踩一些坑。
一、准备工作
MIUI开发版可以直接在安全中心获取root,但是这个root不是完整的root,需要解锁system分区,只需去酷安下载syslock这个app,授予root权限便可一键开启。
需要下载的三个app中,Linux Deploy和connectbot可以直接百度获取,而我从百度获取的busybox好几个都无法正常使用。最终,我在酷安下载的busybox安装器一键完成。如图:

二、安装Linux Deploy
我要安装的是Ubuntu16.04,所以将“发行版GNU/Linux”设置为Ubuntu,将发行版版本改为“xenial”(版本号与版本代号的关系请百度)。
小米6的处理器——骁龙835,是arm64架构,直接设为arm64。
源地址可以改为国内的源,如阿里云等,用校园网的可以改为清华大学的源,例如ubuntu的清华大学源:
http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/
直接百度获取的清华大学ubuntu源链接会没有后面的“-ports”,后面会报错。于是我打开链接一个个目录翻,发现需要添加上。其他的源请自行确认。
将“挂在Android上的资源”勾选上,添加挂载点列表如图:

以后在Ubuntu内便可以通过如下命令访问手机内部存储的文件了。
cd /mnt/sdcard/
然后点击安装,等待安装完成后启动就行。
三、电脑操作Ubuntu
安装完成后点击启动,Linux Deploy就可以让Ubuntu正常工作了。手机上通过connetbot可以直接通过终端进行操作,通过typeC转USB转接头连接键盘,安装vim、gcc、写个hello.c......
不过手机毕竟屏幕太小了不舒服,所以要在电脑端操作Ubuntu。
电脑端打开cmd(或是安装个Xshell,winscp甚至还有图形化界面的文件管理器),通过ssh、ip可以远程连接手机上的Ubuntu。
值得一提的是,要想通过ssh远程连接,必须将pc和手机连接在同一个局域网下,例如连接同一台路由器。
连接在同一局域网后,在Linux Deploy顶部可以查看当前IP,也可以在手机设置里点击WIFI查看,也可以在connectbot里输入“ifconfig”获取。在电脑端打开cmd,输入“ssh 用户名@ip”,然后输入密码,就可以了。
起初我以为让手机和电脑分别连接校园网,通过校园网这个局域网可以进行远程连接。我跟室友尝试过,让室友的电脑关闭防火墙,查得校园网分配的IP地址,然后我这边电脑在cmd用“ping 他的ip”可以成功连接,但是一到手机上,就不行了。弄了好久一直不知道原因。
最后我只好让电脑开热点,手机连接电脑的热点,便能直接连接了。
但如果是通过开热点的方式,每次重新连接热点都会随机分配ip地址,每次在Xshell都得修改主机地址,很麻烦,所以可以在手机连接wifi时修改ip设置为静态,设置固定的IP地址:

至于要跳出局域网远程连接,那就得获取公网IP,百度“内网穿透”。
以后有空再更新安装mongodb、部署vue+springboot等内容。(没错我就是为了弄这个才安装的Linux Deploy)
记录旧手机(米6)安装Linux(Ubuntu16.04)踩过的坑的更多相关文章
- 虚拟机安装及ubuntu-16.04.3-desktop-amd64.iso映像文件的安装
虚拟机安装及ubuntu-16.04.3-desktop-amd64.iso映像文件 搞了大半天才搞清楚装linux的前提是要先安装虚拟机的 先下载虚拟机,在然后创建虚拟机,在虚拟机里面再安装linu ...
- Linux:Ubuntu16.04下创建Wifi热点
Linux:Ubuntu16.04下创建Wifi热点 说明: 1.Ubuntu16.04里面可以直接创建热点,而不用像以前的版本,还要其他辅助工具. 2.本篇文章转载自编程人生 具体步骤如下: 1. ...
- caffe安装:ubuntu16.04 + opencv2.4 + python 2.7+ CUDA 8.0 RC + CuDNN 5.0
官方教程:http://caffe.berkeleyvision.org/install_apt.html 主要参考教程: https://github.com/BVLC/caffe/wiki/Ubu ...
- 1、在 Windows 上安装 OpenCV-Python & ubuntu16.04安装 opencv
Goals In this tutorial We will learn to setup OpenCV-Python in your Windows system. Below steps are ...
- 快速上手Ubuntu之安装篇——安装win7,Ubuntu16.04双系统【转】
本文转载自:http://blog.csdn.net/qq_28205153/article/details/52203512 Linux可以说是开发者的系统,对于开发者来说,Linux发行版不仅为我 ...
- UEFI+GPT下安装Win10+Ubuntu16.04双系统
安装环境 SSD+HDD双盘,Win10安装在SSD里,HDD分出来60G安装Ubuntu. 自行百度你的主板是否支持UEFI启动方式. Win10 下载Win10安装镜像.烧盘等步骤就不说了,重启后 ...
- UEFI+GPT双硬盘安装Win10+Ubuntu16.04双系统
转载请注明出处:http://www.cnblogs.com/willnote/p/6725594.html 安装环境 SSD+HDD双盘,Win10安装在SSD里,HDD分出来60G安装Ubuntu ...
- windows下mysql免安装版配置(踩过的坑)简记
下载 从官网(https://dev.mysql.com/downloads/mysql/)下载 这里的免安装版本的,相对来说干净,但是需要自己来配置很多东西. 配置 首先是注册windows的服务. ...
- Linux --- Ubuntu16.04.5 LTS 虚拟机安装后的软件安装基础操作总结
1. 配置安装源 因为默认是使用Ubuntu官方服务器,国内电脑使用外国服务器较慢,所以需使用国内的服务器(以下清华大学服务器为例). 方法一: (此过程很慢,实在不动就取消吧,加载一部分也够用,以后 ...
随机推荐
- 中crontab定时器里的"2>&1"含义解释
*/1 * * * * /usr/local/php/bin/php posts.php >> /data/logs/audit_bbsposts.log 2>&1 & ...
- 导出设计文档总结 plantUML Graphviz jacob
plantUML https://blog.csdn.net/HelloWorld998/article/details/90676496 http://skyao.github.io/2014/12 ...
- Python把json格式的string对象转变成dict对象操作、Python3不能使用urllib2、urllib.parse.urlencode(params).encode(encoding='UTF8')
son格式的string对象转变成dict对象操作 content=eval(content)#json字典转化 Python3不能使用urllib2 直接使用urllib.request替换urll ...
- git配置过程中fatal:拒绝合并无关的历史
首先将远程仓库和本地仓库关联起来: git branch --set-upstream-to=origin/master master 然后使用git pull整合远程仓库和本地仓库, git pul ...
- 写linux脚本你怎么能不知道位置参数!?
在写shell脚本的时候,我们经常会手动设置参数,然后对我们的输入的这些参数进行处理和分析,那么这个东东到底值怎么使用的呢? 1.$n $0代表命令本身,$1-9代表接受的第1-9个参数,10以上需要 ...
- 【POJ - 1970】The Game(dfs)
-->The Game 直接中文 Descriptions: 判断五子棋棋局是否有胜者,有的话输出胜者的棋子类型,并且输出五个棋子中最左上的棋子坐标:没有胜者输出0.棋盘是这样的,如图 Samp ...
- 自学电脑游戏第四天(Swing)
继续之前的 3.组合框(JComboBox) 例题:利用JComboBox设计一个选择城市的程序. import java.awt.*; import javax.swing.*; public cl ...
- 【Python】【demo实验32】【回文数的确认】
原题: 我的代码: #!/usr/bin/python # encoding=utf-8 # -*- coding: UTF-8 -*- #判断一个数字是否为回文数 即 12345654321 x = ...
- 「java.util.concurrent并发包」之 ThreadPoolExecutor
一 异步用new Thread? 大写的"low"!! new Thread(new Runnable() { @Override public void run() { // T ...
- STL priority_queue 常见用法详解
<算法笔记>学习笔记 priority_queue 常见用法详解 //priority_queue又称优先队列,其底层时用堆来实现的. //在优先队列中,队首元素一定是当前队列中优先级最高 ...