制作Ubuntu Kylin局域网源
国人参与开发的开源操作系统UbuntuKylin(http://www.ubuntukylin.com/)已经发布有一段时间了,一直想在单位的局域网内部用用,可惜离线安装比较麻烦,于是搜索了些如何制作本地源和局域网源的资料,准备开干。
1、修改镜像配置文件/etc/apt/mirror.list
UbuntKylin的官方软件仓库在全世界有很多镜像,要想下得快点,当然选国内的源了。实际上我将下载路径修改成指向我的移动硬盘了、将源修改为国内的,以及加了个官方仓库中没有的Ubuntu Tweak软件的源。注意:由于整个仓库很大,大概在90G左右,用于下载的盘一定要有足够的剩余空间。
编辑/etc/apt/mirror.list,设置下载路径和源等参数,下面是一个配置例子:
$sudo vim /etc/apt/mirror.list
############# config ##################
#
set base_path /media/ruirui/ubuntukylin
#
# set mirror_path $base_path/mirror
# set skel_path $base_path/skel
# set var_path $base_path/var
# set cleanscript $var_path/clean.sh
#32bit-----i386 64bit-----amd64
set defaultarch i386
# set postmirror_script $var_path/postmirror.sh
# set run_postmirror 0
set nthreads 20
set _tilde 0
#
############# end config ##############
deb http://mirrors.aliyun.com/ubuntu trusty main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu trusty-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu trusty-updates main restricted universe multiverse
#deb http://archive.ubuntu.com/ubuntu trusty-proposed main restricted universe multiverse
#deb http://archive.ubuntu.com/ubuntu trusty-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu trusty main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu trusty-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu trusty-updates main restricted universe multiverse
#deb-src http://archive.ubuntu.com/ubuntu trusty-proposed main restricted universe multiverse
#deb-src http://archive.ubuntu.com/ubuntu trusty-backports main restricted universe multiverse
#也可将其它软件的源加进来,这里加的是Ubuntu Tweak的PPA源
deb http://ppa.launchpad.net/tualatrix/ppa/ubuntu trusty main
deb-src http://ppa.launchpad.net/tualatrix/ppa/ubuntu trusty main
clean http://cn.archive.ubuntu.com/ubuntu
2、镜像整个UbuntuKylin官方源
打开终端,输入下面的命令
$ sudo apt-mirror
然后,就等着吧,好几十个G呢,镜像完成后会有提示,并返回命令行。
3、拷贝到局域网服务器上
将下载的源拷贝到局域网服务器/data/Ubuntu目录下,由于下载的整个源大约90G左右,该目录所在分区必须具有足够的空间。
$cp -a /media/ruirui/UbuntuKylin /data/ubuntu/
设置好访问权限,所有用户可读可进入目录
$chmod a+rx /data/ubuntu -R
4、配置Apache虚拟目录, 启动http服务
最常用的自然是Apache了,先安装,再启动服务。以Ubuntu 14.04 LTS为例
$sudo apt-get install apache2
配置虚拟目录,编辑/etc/apache2/sites-available/default文件,将/data/ubuntu作为web服务的根目录(Document Root)
默认:
修改后:
重新启动web服务
$sudo apachectl restart
测试
打开浏览器,在地址栏输入:http://服务器IP地址,如果正确的话,浏览器页面上应该显示UbuntuKylin目录。
如果局域网内有DNS服务器,可以给该服务器配置一个域名以方便用户端使用。下面以域名ubuntukylin.beijing.cn为例。
5、用户端安装UbuntuKylin 14.04
从ubuntu官网或ubuntukylin官网下载UbuntuKylin 14.04映像,刻盘(建议),安装(过程略)
6、用户端修改源配置文件
修改源配置文件/etc/apt/source.list,以便使用软件源。修改方法如下:
首先备份软件源配置文件
$sudo cp /etc/apt/sources.list{,.bak}
将其它软件源信息用#注释掉,再将下列软件源信息加入/etc/apt/sources.list中
deb http://ubuntukylin.beijing.cn/UbuntuKylin/mirror/cn.archive.ubuntu.com/ubuntu/ trusty main universe restricted multiverse
deb http://ubuntukylin.beijing.cn/UbuntuKylin/mirror/cn.archive.ubuntu.com/ubuntu/ trusty-security main universe restricted multiverse
deb http://ubuntukylin.beijing.cn/UbuntuKylin/mirror/cn.archive.ubuntu.com/ubuntu/ trusty-updates main universe restricted multiverse
更新本机软件源数据库
$sudo apt-get update
7、用户端安装软件
现在可以从局域网中安装官方软件仓库中软件包了
$sudo apt-get install package1 package2 ...
8、更新软件源
如果过一段时间,官方源中的部分软件更新了,则重新执行步骤2将更新的软件包下载到移动硬盘中(/media/ruirui),即重新运行apt-mirror命令。
此时由于只有部分更新,只会下载更新的软件,下载量通常不会很大。
我大概四五天后重新运行apt-mirror命令,apt-mirror命令提示只需要下载2.6G的数据,3个小时就搞定了。
当然,如果隔很长时间才apt-mirror, 那很有可能下载的数据量也会很大的,因为可能很多软件都有更新版本了。
9、将更新的软件同步到局域网服务器上
当然用rsync增量拷贝软件了,不然拷贝90多G的数据,会需要很长时间的。用下面的命令:
$rsync -auv --delete /media/ruirui/UbuntuKylin /data/ubuntu/
10、客户端安装更新的软件包
$sudo apt-get update
$sudo apt-get dist-upgrade
=-=-=-=-=
Powered by Blogilo
制作Ubuntu Kylin局域网源的更多相关文章
- Android源码浅析(一)——VMware Workstation Pro和Ubuntu Kylin 16.04 LTS安装配置
Android源码浅析(一)--VMware Workstation Pro和Ubuntu Kylin 16.04 LTS安装配置 最近地方工作,就是接触源码的东西了,所以好东西还是要分享,系列开了这 ...
- 在Ubuntu Kylin 16.04 LTS 上源码方式安装odoo
更新Ubuntu服务器软件源 运行以下代码: sudo apt-get update #更新软件源 sudo apt-get dist-upgrade #更新软件包,自动查找依赖关系 sudo s ...
- Hadoop安装(Ubuntu Kylin 14.04)
安装环境:ubuntu kylin 14.04 haoop-1.2.1 hadoop下载地址:http://apache.mesi.com.ar/hadoop/common/hadoop-1. ...
- 虚拟机装ubuntu (kylin) 时常遇问题
在想保留Windows操作系统的同时还能用Linux进行学习和开发,安装双系统或安装虚拟机都是不错的选择,依个人情况而定. (P.S:此行留给后期会写的双系统博客) 这篇文章收集了自己在用VMware ...
- ubuntu kylin的桌面崩溃问题
前几天安了ubuntu kylin,主题还是挺好看的,汉化也很好,就是各种报桌面错误,忍了,结果今天直接进不去桌面了 开机,输入密码,登录,然后桌面死活不显示,还弹出了错误提示我系统有问题,建议重启 ...
- 解决Ubuntu Kylin 1610安装ANSYS17.2的NVIDIA显卡驱动问题
Ubuntu Kylin 1610在安装完毕后,会自动安装显卡驱动,对于一般的图形图像使用来说自然不会有太大的问题,但是对于ANSYS17.2的一些模块,还是会出现问题.一个比较常见的问题就是Open ...
- ubuntu kylin 14.04编译openjdk-7u40
1.ubuntu kylin 14.04安装依赖 sudo apt-get install build-essential gawk m4 libasound2-dev libcups2-dev li ...
- ubuntu kylin 16.04系统的基本安装
系统版本:ubuntu kylin 16.04 硬件状况:500G HDD+120G SSD 已安装操作系统:WIN 10专业版(craked) ——WIN 10系统是装在SSD的第一个盘符内的.以前 ...
- [ubuntu]deb软件源
虽然ubuntu的中国服务器的速度已经非常不错,但是难免,会有网络不畅的情形,所以修改软件源地址是一个基础的知识点. 修改ubuntu的软件源的方式有多种,一直是通过ubuntu软件中心提供的UI,还 ...
随机推荐
- 界面底部Tab实现
现在基本上大部分的手机APP都要实现底部Tab,底部实现Tab的实现方式有很多种,那么有没有好的实现方式呢? 今天我将使用一个开源插件来实现底部Tab 参考自zhangli_的博客:http://bl ...
- Struts2之 OGNL表达式和值栈
技术分析之OGNL表达式概述(了解) 1. OGNL是Object Graphic Navigation Language(对象图导航语言)的缩写 * 所谓对象图,即以任意 ...
- PHP 无限级分类(递归)
网上有很多,这是我自己做测试用的$arr = array( array('id'=>1,'name'=>'电脑','pid'=>0), array('id'=>2,'name' ...
- Spring Session实现分布式session的简单示例
前面有用 tomcat-redis-session-manager来实现分布式session管理,但是它有一定的局限性,主要是跟tomcat绑定太紧了,这里改成用Spring Session来管理分布 ...
- 基于三层交换机和基于路由子接口的vlan间路由
1:通过三层交换机实现vlan间的通信:为三层交换机创建vlan,设置交换机的两个SVI,并配置IP地址. (在二层交换机上只能配置一个SVI端口,用来实现交换机交换机远程管理,在三层交换机上可以配置 ...
- iOS 发布证书提示 此证书的签发者无效 解决办法
1. 打开钥匙串 查看发布证书 都是提示 此证书的签发者无效 解决办法 : 2. 到了 第 4 步骤 再去 查看 发布证书 就会 显示 此证书有效 3. 如果还不可以 就 把 Apple W ...
- 2.let 和 const
Babel 是一个广泛使用的 ES6 转码器,可以将 ES6 代码转为 ES5 代码,从而在现有环境执行. Babel 提供一个REPL在线编译器,可以在线将 ES6 代码转为 ES5 代码.转换后的 ...
- JavaScript作用域问题
最近在研究JavaScript,遇到了好多问题,之前还是挺清楚JavaScript作用域的,今天突然发懵了,求哪个大神给讲解一下? 谢谢!
- SSO单点登录的研究
一.单点登录的概述 单点登录(Single Sign On),简称为 SSO,SSO的定义是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统. 用以解决同一公司不同子产 ...
- ThreadGroup详解
①定义线程组 ThreadGroup类中有 2个构造方法,它们用来定义线程组.这 2个构造方法的使用格 式如下: public ThreadGroup(String name); public Th ...