前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Linux Deploy:使用Repository部署Linux系统

Linux Deploy:使用Repository部署Linux系统

作者头像
美丽应用
发布2018-07-20 14:10:32
6.1K0
发布2018-07-20 14:10:32
举报
文章被收录于专栏:美丽应用美丽应用

文章更新

  20170408 初次成文

问题提出:

  在之前的文章中,小苏为大家介绍过使用常规方式和使用镜像方式部署Linux系统的方法,但是这两种方法各有利弊:

  使用常规方式部署时,镜像大小可以灵活调节,但这种方法需要设备在连接网络的情况下下载大量数据,由于运营商的DNS污染或者由于镜像源站同步的原因,即使更换软件源为国内镜像源,部署时也总会出现部署失败的提示。使用镜像方式部署Linux系统时,虽然可以免去部署时下载大量数据的麻烦,但是使用别人部署好的镜像,初始实现的功能依别人部署好的镜像而定,不能个性化定制系统,也不能调整镜像大小。

  所以,有没有一种部署成功率比较高,又不需要从软件源站下载大量数据,且可以灵活调整镜像大小的部署方式呢?

  答案当然是肯定的。那就是先在Linux Deploy中部署和安装所需要的环境和软件包,然后使用Linux Deploy的导出功能,将Rootfs打包为tar.gz文件,之后,我们只需要将此tar.gz文件导入Linux Deploy,就可以完整还原打包时的Linux系统了。

解决方案:

  贴心的作者为我们做好了一些基础的Rootfs以方便我们部署Linux系统,这些Rootfs放置在Linux Deploy的"Repository"中,有些遗憾的是,这些Repository大多是需要到Play商店购买后才能被导入进Linux Deploy中的,但是小苏注意到,有一些Repository似乎可以无需购买,直接导入,比如debian_arm这个Repository:

  导入此Repository后,回到Linux Deploy主界面,点击右下角的"下载"图标进入配置界面,我们可以看到"源地址"已经被配置为一个远程服务器上的tgz(tar.gz)文件:

  我们观察这项配置:

代码语言:javascript
复制
http://hub.meefik.ru/rootfs/debian_arm.tgz

  似乎就是http://hub.meefik.ru/rootfs/加上Linux Deploy中各"Repository"的名称。

  我们拿一个需要付费的的Repository试一下:

代码语言:javascript
复制
http://hub.meefik.ru/rootfs/archlinux_arm.tgz

  似乎还真的是可用的...

  所以...看起来这是个彩蛋(喵喵脸)...

  于是,在Linux Deploy中,各Repository的真实地址如下:

开始配置:

  我们可以根据这些Repository下的提示,修改配置文件,由于各Repository的发行版,架构和版本都已经在说明中指定了,比如ubuntu_arm这个Repository:

代码语言:javascript
复制
ubuntu_arm
Ubuntu 16.04 LTS (Xenial Xerus) ARM base system.)

  在描述中指定了此Repository对应的发行版是Ubuntu,版本是Xenial,架构为ARM(armhf)。这也意味着,我们必须在配置界面填写与选择的Repository相同的信息。比如我们选定ubuntu_arm这个Repository来部署Linux系统,那么我们只需要进行以下几步操作:

  1.下载此tar.gz文件:

http://hub.meefik.ru/rootfs/ubuntu_arm.tgz

  并且记好此文件的路径,下面以下路径为例:

/storage/emulated/0/Download/ubuntu_arm.tgz

  2.新建一个配置文件,进入配置界面,做以下配置(未提到的项请保持默认设置):

  Containerization method:chroot

  发行版:Ubuntu

  架构:armhf

  发行版版本:xenial

  源地址:/storage/emulated/0/Download/ubuntu_arm.tgz

  (即刚刚下载的tgz文件存放的路径)

  安装类型:文件

  (即使用"镜像"方式部署Linux系统)

  安装路径:自定

  (安装路径代表镜像文件存放的路径,下图以/storage/emulated/0/Linux/ubuntu_arm.img为例)

  镜像大小:自定

  (即部署完成后,Linux系统的"本地磁盘"大小,下图以1024m为例,不建议超过4096m)

  用户名:android

  (即部署完成后,系统默认的普通用户)

  密码:自定

  (此普通用户的密码,下图以sun12345为例)

  Privileged user:root messagebus

  (这一项照着填就好)

  本地化:zh_CN.UTF8

  (即部署完成后,Linux系统的语言环境,zh_CN.UTF8指语言环境为中文,如果喜欢英文语言环境,选择en_US.UTF8即可)

  SSH:

  打勾:允许SSH服务器启动("SSH"的其他项保持默认设置)

  3.配置完成后,我们就可以开始部署Linux系统了。在部署之前,小苏强烈建议大家挂国外进行部署。因为在Repository中,作者使用各发行版的官方软件源作为软件源,这样一来,一是服务器节点远离中国,软件包下载速度一般都很慢,二是在我国ipv6还未普及,使用官方软件源在部署过程中有一定几率解析到ipv6地址,出现无法连接到服务器的情况并造成部署失败的情况。

  挂好后,我们回到Linux Deploy的主界面,按下菜单键,选择"安装"开始部署:

  我们可以看到,从开始部署(19:15:19)到完成部署(19:17:05),仅仅用了1分44秒的时间就可部署完毕。并且整个过程中只需要下载附加组件(本次部署只启用了SSH连接,所以在部署过程中只下载了SSH有关的软件包,如果你启用了图形界面,在这个过程中还会下载图形环境和VNC等组件)。

  如果你想部署图形界面,请看这篇文章:

https://cloud.tencent.com/developer/article/1159972

资源下载:

  在网络通畅的情况下小苏还是首推官方的Repository

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2017-04-08,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档