用Linux Deploy在Android手机上安装Linux

每小时进行5分钟的活动,能降低患上许多致命疾病的风险。——《程序员健康指南》

简介

使用Linux Deploy唯一的好处就是可以充分利用废弃的手机,而且手机具有省电,便捷的特点。安装了Linux之后,完全可以满足基本的学习Linux的需要,而且还不怕把系统搞死,大不了重装咯。ʅ(´◔౪◔)ʃ

准备工作

  1. 下载Linux Deploy
  2. 下载BusyBox
  3. 安卓手机一台,配置不用很高,我是在酷派8702d(移动送的垃圾手机)上跑出了Linux
    • 配置:架构:armv7
    • RAM:512
    • CPU:4核1.2Hz
    • 系统:Linux Kali sana
    • 桌面环境:XFCE
    • 说明:我自己增加了swap脚本,所以运行无压力。

下面是我是用的swap.sh,给脚本执行权限,在安卓机上执行就可以了,执行过一次后,将

mkdir -p /cache/swap
dd if=/dev/zero of=/cache/swap/swapfile bs=1024 count=460800

注释掉。在每一行前面加#注释掉即可。这里bs是块大小,count是总大小,bs*swap大小=count。

#mkdir -p /cache/swap
#dd if=/dev/zero of=/cache/swap/swapfile bs=1024 count=460800

完整脚本swap.sh

#!/system/bin/sh
mkdir -p /cache/swap
dd if=/dev/zero of=/cache/swap/swapfile bs=1024 count=460800
busybox mkswap /cache/swap/swapfile
busybox swapon /cache/swap/swapfile

附:如何用re管理器运行*.sh?
  1、打开re管理器,将 *.sh 移动到/data/local/中(随你,反正我都是放这里的,方便找)
  2、长按 *.sh 文件,在弹出的dialog中找到权限设定,赋予其执行权限(执行那一列全打钩就好了)。
  3、之后直接单击 *.sh 文件,执行,就好了。可能要等很久,这视你创建的swap文件大小而定,等到出现以下信息即可。

Setting up swapspace version 1,size = XXX bytes UUID = XXX

安装

  下面的设置说明和部署设置都是Linux Deploy的。

设置说明

  设置1:锁定屏幕:这个根据个人喜好可以选择开启,推荐关闭,因为你要对linux进行操作的话用的是VNC Viewer或者ssh,和Linux Deploy没半毛钱关系,关了吧。

  设置2:锁定Wi-Fi:这个推荐开启,防止vnc或者ssh突然掉线,关闭wifi也是可以在本地操作linux的。

  设置3:语言:选择简体中文后,退出软件再次进入即可完成语言切换。

  设置4:字体大小:自带终端的字体显示大小,根据个人喜好调整,默认12。

  设置5:滚动大小:自带终端最大保留数据行数,默认100行。

  设置6:主题:分为暗色和亮色,根据个人喜好调整。

  设置7:显示图标:推荐开启,防止后台被系统杀掉。

  设置8:开机启动:推荐关闭。

  设置9:环境目录:Linux Deploy的系统环境目录,不推荐修改。

  设置10:内置终端:默认开启即可。

  设置11:建立符号链接:关了就行了。

  设置12:更新环境:在设置完成后需要运行一次,如果有修改设置9的话,需要在修改后再次运行一次。

  设置13:移除环境:在修改设置9前执行一次这个选项。

  设置14:调试模式:显示各种调试信息。

  设置15:跟踪模式:我个人理解为设置14的加强版,显示数据量更多,包括各种后台的操作命令都显示出来了。

  设置16:日志:是否选择记录终端操作日志,推荐关闭,根据个人喜欢选择。

  设置17:日志文件:给设置16选择一个保存目录。

部署设置

  发行版:包括很多了,我选的是Kali。

  发行版版本:发行版代号。

  架构:根据处理器不同,需要选择不同的架构,一般自动认识别出当前CPU架构并选择。

  镜像地址:默认是发行版的官方默认源,都是国外的,可以自己设定国内的源。比如:Debian,可以设定Debian中国官方源:http://ftp.cn.debian.org/debian/。可见 - 源地址推荐

  安装类型:默认选择文件即可。(文件相对比较慢,分区比较快。)

  安装路径:这个设置会比较麻烦,很多机器默认是/storage/emulated/0/等等这种类型,这种的特别容易出现读取错误的情况,推荐修改为/sdcard/xxx的格式,xxx可以是自定义的存储目录,当然你直接把img镜像安存储器根目录也没什么不可以。

  镜像大小:这个得依照你存储器的文件系统和剩余空间大小来定了,如果是FAT32的文件系统那最大设置不能超过4095MB,但是exFAT或者Ext4的就没这个限制,只要你空间够,设置多大都可以。

  用户名:linux用户名,不用多说。

  User password:linux用户密码,默认是android,之后系统的登陆密码就是这个。

  DNS服务器:这个一般不用填了。

  本地化:就是linux的locale设置,中文的话就是zh_CN.UTF-8。

  桌面环境:默认是LXDE,我选的Xfce,如果有自信的话可以试试其他的,反正我就XTerm、LXDE、Xfce能正常运行,其他全是x-server崩溃,不知道什么原因。

  选择组件:桌面环境根据个人喜好选择,如果不选桌面环境VNC服务器就无法运行,上面选的桌面环境也不会安装。SSH推荐选上,Android上操作linux还是命令行用起来容易些。

  Chroot目录:这个设置不用管。

  SSH:推荐开启,使用JuiceSSH或者ConnectBot SSH进行管理很方便。

  SSH设置:调整SSH服务端口号,默认22,不推荐修改。

  图形界面:要是安装了桌面环境和VNC服务器就开启吧。

  图形子系统:默认VNC,其他两个我不会设置就不做介绍了。

  图形化界面设定:颜色深度改为24,DPI不动,长宽自行根据机器情况进行调整。

  自定义脚本:我没用过…

  自定义挂载:推荐开启,可以访问机器的存储。

  挂载点:挂载目录的绝对路径,直接设置根目录/也没什么不好,在linux中可以cd /mnt 进行访问和管理。

安装过程

  1. 首先,安装BusyBox,打开之后BusyBox后,安装BusyBox提供的工具集。
  2. 安装了Linux Deploy后,打开,如下图,
    用Linux Deploy在Android手机上安装Linux_第1张图片
    假如你需要中文,点击左上角的按钮,找到Setting -> language -> 简体中文。
  3. 之后,点击左下角下载图标,
    2
    • 下面演示的是安装类型是文件的教程。
      用Linux Deploy在Android手机上安装Linux_第2张图片
      这里的安装路径自行定义成绝对路径,不知道路径的可以下载re管理器进行查看。需要注意的是在SD卡中限制最大大小为4096M,比较小,假如你需要更多的内存,可以使用分区安装。
    • 推荐:分区安装。首先,你需要有外置SD卡,使用分区软件将SD卡分成两个区,一个是FAT32格式的(内存卡默认格式),一个是EXT4(最好是EXT4格式的,当然你要EXT2或者EXT3也是可以的),EXT4分区用来安装Linux。
      • 在Deploy Linux中设置安装类型为分区
      • 安装路径为/dev/block/mmcblkXpY
        • X表示是那一块内存,系统的默认为0,内存卡默认为1;
        • Y表示当前内存的分区位置,可以用re管理器/dev/block中查看你的分区的位置。
        • 文件系统选择EXT4(最好是EXT4格式的,当然你要EXT2或者EXT3也是可以的)
      • (内置的我不知道怎么弄,但是有一个软件Apps2SD,自带分区功能)
  4. 用Linux Deploy在Android手机上安装Linux_第3张图片点击安装即可。
    • 说明:
    • 安装(重装)的时候需要按最下面的停止按钮一次。
    • 要是改了右下角的下载图标的配置,就要点击左上角的配置,让设置生效。
  5. 安装过程根据网速不同时间长短不定,当安装完成后会出现

    deploy>>......<<deploy

      两者之间没有错误信息,并且是有内容的。

  6. 点击启动,就可以在Android手机使用Linux了。

Linux的使用

  Linux Deploy是不提供终端的,所以我们需要自己下载终端模拟器,常见的有以下这些:

手机端

  • ConnectBot SSH登陆客户端
    • 默认端口是22,也可以在设置里面设置为其他的。要使用SSH功能需要在右下角的下载图标->SSH Enable那里打勾。
    • 默认登陆指令:
      • ssh 用户名@ip地址:端口(Linux中)
      • IP地址在标题栏[X.X.X.X]
    • 在ConnectBot中单单需要填用户名@ip地址:端口
  • 终端模拟器
    • 默认登陆指令:
      • telnet ip 端口

window

window端需要下载一个PUTTY。

密码登陆

假如你的linux不设置密钥登陆,使用密码登陆的话。
用Linux Deploy在Android手机上安装Linux_第4张图片
直接填入ip地址,确认即可登陆。IP在Linux Deploy页面的状态栏,被挡住了请关闭竖屏锁定,横屏即可看到了。

密钥登陆

1.填入地址:
用Linux Deploy在Android手机上安装Linux_第5张图片
2.填入主机名(你的Linux 用户名):
用Linux Deploy在Android手机上安装Linux_第6张图片
用Linux Deploy在Android手机上安装Linux_第7张图片
3.下面一步我们需要另外一个软件PUTTYgen生成*.ppk文件,在下面这张图右边Brower哪里导入使用的。
用Linux Deploy在Android手机上安装Linux_第8张图片
4.打开PUTTYgen。
用Linux Deploy在Android手机上安装Linux_第9张图片
5.导入你的密钥,并生成*.ppk文件。生成好了后,返回步骤3,Brower进去,确认即可。
用Linux Deploy在Android手机上安装Linux_第10张图片

Linux

linux是最简单的,直接在终端执行以下语句即可。

ssh 用户名@ip地址:端口

源地址推荐

  • 中科大 - http://mirrors.ustc.edu.cn/+Linux`s Name/
  • 阿里云 - http://mirrors.aliyun.com/+Linux`s Name/

选择桌面

  • Linux 公社 - 5款最佳Linux桌面环境的优缺点比较
  • 脚本之家 - linux桌面环境gnome,kde,xfce,lxde 使用比较
  • tao546377318的博客 - kali切换桌面环境
    • 这个是安装教程,我就不赘述了。
    • 推荐使用XFCE

切换桌面:

update-alternatives --config x-session-manager

VNC

  安装完桌面,我们可以使用VNC来可视化。

  对于VNC和SSH服务器的设置,如果是在手机上操作的话,地址可以直接填localhost,端口号SSH默认是22(前面修改了的自己调整),VNC端口号为执行vncserver后提示的端口号,一般为1。

  • VNC Viewer

注意: Kali有些版本是自带vncserver的,可以使用执行vncserver查看是否安装了。

1.在Linux Kali上安装vnc4server(debian系列通用)

sudo apt-get install vnc4server

2.启动vnc4server,输入vnc4server此时系统会提示你输入密码,在通过客户端链接时将会用到这个密码。

You will require a password to access your desktops.

Password:<-这里要求输入密码
Verify:<-核对密码
xauth:  file /root/.Xauthority does not exist

New 'localhost:1 (root)' desktop is localhost:1

Creating default startup script /root/.vnc/xstartup
Starting applications specified in /root/.vnc/xstartup
Log file is /root/.vnc/localhost:1.log

设置完之后,我们需要修改xstartup的配置

vim /root/.vnc/xstartup

之后,修改文件,下面是XFCE桌面环境的。

#!/bin/sh

# Uncomment the following two lines for normal desktop:
unset SESSION_MANAGER
# exec /etc/X11/xinit/xinitrc

[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic &
#x-terminal-emulator -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
#x-window-manager &

#这里我安装的是XFCE的,如果不是这个,请注意修改下面这一句。
startxfce4 &

要是需要修改vnc界面参数,可以修改/etc/vnc.conf文档进行设置。

VNC常见错误

Kali中VNC遇到的错误

假如遇到了这种问题:(这个错误前提是你安装了vncserver,但是你不小心删了vncpasswd这个文件,就会出现这个错误了)

root@localhost:~/.vnc# vncserver 

You will require a password to access your desktops.

vncserver: Couldn't find "tigervncpasswd" on your PATH.
    Please install the tigenvnc-common package, i.e., sudo apt-get install tigenvnc-common.

只需要下载一个东西就行了。在终端输入

apt-get install vnc-server

终端显示:

root@localhost:~/.vnc# apt-get install vnc-server
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Package vnc-server is a virtual package provided by:
  tigervnc-xorg-extension 1.7.0+dfsg-2
  tigervnc-standalone-server 1.7.0+dfsg-2
  tigervnc-scraping-server 1.7.0+dfsg-2
You should explicitly select one to install.

E: Package 'vnc-server' has no installation candidate

之后,直接选第一个安装即可,因为我们缺少的就是vncpasswd这个组件。

apt-get install tigervnc-xorg-extension

  附上:rpm系的安装方法。

  • 老左博客 - 完整Linux VPS(CentOS)安装VNC+XFCE可视化桌面环境 附安装FireFox浏览器
  • 四月一日君的博客 - [转载]Linux上VNC 启动和关闭 已经常见问题
  • secooler 快乐的DBA - 【VNC】修改VNC分辨率大小
     

Linux使用

  • Linux安装常用软件
    • 安装常见的Linux软件,配置常见的开发环境,美化等。

Kali Linux

Kali安装常见软件

  • kali linux常用安装软件
  • Enweitech Software Works - 安装 Kali Linux 后需要做的 20 件事
  • 安装 Kali Linux 后需要做的 20 件事
    • 这里有几个东西是我喜欢的,比如Tor。
  • Curllen的博客 - 关于 kali linux2016 安装中文版firefox
    • 安装火狐浏览器:apt-get install iceweasel-l10n-zh-cn
  • kali Linux添加add-apt-repository

Kali 汉化

  如果没有安装locale工具,则首先要安装它,修改/etc/locale.gen内文件,以en或zh前面#删除掉。然后执行

dpkg-reconfigure locales

  选择语言包。需要添加上zh_CN开头的几个选项,当然你也可以只添加一个,然后,选择其中的一个作为默认。设置完成后,执行locale命令检查一下当前的locale设置是否为中文了。

  终端执行下面命令:

echo "LANGUAGE=zh_CN:zh:en_US:en" >> /etc/environment
echo "LC_CTYPE=zh_CN.UTF-8" >> /etc/environment
echo "LANG=zh_CN.UTF-8" >> /etc/environment

  如果我们重启桌面后,发现整个系统的界面显示的还是英文。使用locale命令检查系统的locale设置,发现已经配置为中文。
  假如你遇到了某些应用的标题等显示为中文,但是工具菜单等显示和文件管理器等都显示成了英文。这种情况很有可能是因为/etc/enviroment文件里有关语言的环境变量的设置不对。打开/etc/enviroment文件,通常会发现下面两个字段:

LANGUAGE="en_US:en"
LANG="zh_CN"

在LANGUAGE字段添加中文的设置,比如:

LANGUAGE="zh_CN:zh:en_US:en"

  中文环境当然需要中文字体的支持,手工添加中文的xft字库。详见下方安装文泉驿字

  • Kali Rolling更新源,安装open-vm-tools-desktop/文泉驿字

     安装后,重启桌面即可享用中文版Linux Kali了

Debian

  • 源地址推荐:http://mirrors.ustc.edu.cn/debian/
  • 发行版:Jessie

安装Lnmp

  ヽ(°◇° )ノ注意:一定要改完再执行install.sh或者upgrade.sh。

  在安装lnmp的时候,需要修改脚本文件,主要是在Lnmp主目录下的include下的php.sh和upgrade_php.sh都需要更改。主要原因是因为Android(树莓派同理,也是要改脚本的。o(︶︿︶)o 唉)不支持ZendOptimezer和ZendLoad。反正在vim或者vi编辑器中搜索zend,有的全部删除。删除内容如下图:从cd 行开始删除到EOF行(包括EOF行)。删除好了执行install.sh或者upgrade.sh即可。
用Linux Deploy在Android手机上安装Linux_第11张图片

最终效果

XFCE

LXDE

用Linux Deploy在Android手机上安装Linux_第12张图片

附录

  • 脚本之家 - ubuntu下安装VNC远程桌面的详细步骤
  • Linux公社 - Linux deploy 使用教程
  • 基于debian或debian衍生版英文系统切换为中文

你可能感兴趣的:(Android进阶,Linux)