[转] ubuntu10.04创建本地apt-get服务器_ubuntu 10.04安装apt-程序员宅基地

技术标签: linux配置  本地源  学习教程  apt  

  [转]  ubuntu10.04创建本地apt-get服务器


1.环境

@试验主机192.168.1.112,ubuntu10.04,lucid系统

@使用sohu服务器的ubuntu source源

@一直以root身份执行


2.安装需要的工具

#apt-get install apt-mirror

#apt-get install apach2

3.修改镜像配置文件(我只添加了deb和deb-src这2个类型,kermic这一个版本,main这一个组件)

#vim /etc/apt/mirror.list

############# config ##################

#

# set base_path    /var/spool/apt-mirror

#

# set mirror_path  $base_path/mirror

# set skel_path    $base_path/skel

# set var_path     $base_path/var

# set cleanscript $var_path/clean.sh

# set defaultarch  <running host architecture>

# set postmirror_script $var_path/postmirror.sh

# set run_postmirror 0

set nthreads     20

set _tilde 0

#

############# end config ##############

deb http://mirrors.sohu.com/ubuntu/ karmic main

deb-src http://mirrors.sohu.com/ubuntu/ karmic main


4.到suhu的服务器下载文件

#sudo apt-mirror

这会启动20个线程【上面文件中配置】运行wget到 http://mirrors.sohu.com/ubuntu 下面下载相应的deb包。

执行完成后,/var/spool/apt-mirror目录下就有了所有需要的deb包和相应的配置文件。

因为我现在是从sohu下载的,所以实际的文件在:/var/spool/apt-mirror/mirror/mirrors.sohu.com/Ubuntu目录下。

如果你选择其他Ubuntu Source服务区,那么会下载到其他对应的目录下。

可以看一下下载之后的文件:

# ll /var/spool/apt-mirror/mirror/mirrors.sohu.com/ubuntu

总用量 8

drwxr-xr-x 3 root root 4096 2011-07-29 03:25 dists/

drwxr-xr-x 3 root root 4096 2011-07-28 17:36 pool/

# ll /var/spool/apt-mirror/mirror/mirrors.sohu.com/ubuntu/dists/karmic/main/

总用量 8

drwxr-xr-x 2 root root 4096 2011-07-29 03:25 binary-i386/

drwxr-xr-x 2 root root 4096 2011-07-29 03:25 source/

# ll /var/spool/apt-mirror/mirror/mirrors.sohu.com/ubuntu/dists/karmic/main/binary-i386/   

总用量 11148

-rw-r--r-- 1 root root 8292848 2011-07-28 17:35 Packages

-rw-r--r-- 1 root root 1352716 2009-10-28 22:12 Packages.bz2

-rw-r--r-- 1 root root 1736742 2009-10-28 22:12 Packages.gz

-rw-r--r-- 1 root root      94 2009-10-28 22:23 Release

# ll /var/spool/apt-mirror/mirror/mirrors.sohu.com/ubuntu/dists/karmic/main/source/

总用量 4524

-rw-r--r-- 1 root root      96 2009-10-28 22:23 Release

-rw-r--r-- 1 root root 3161799 2011-07-28 17:35 Sources

-rw-r--r-- 1 root root  639802 2009-10-28 22:21 Sources.bz2

-rw-r--r-- 1 root root  809190 2009-10-28 22:21 Sources.gz


# ls /var/spool/apt-mirror/mirror/mirrors.sohu.com/ubuntu/pool/main/

a  d  g  j  liba  libd  libg  libj  libm  libp  libs  libv  liby  n  q  t  w  z

b  e  h  k  libb  libe  libh  libk  libn  libq  libt  libw  libz  o  r  u  x

c  f  i  l  libc  libf  libi  libl  libo  libr  libu  libx  m     p  s  v  y


5.复制文件到apache2的目录中(/var/www/)

#ln /var/spool/apt-mirror/mirror/mirrors.sohu.com/ubuntu -s

在/var/www目录下创建一个Ubuntu超链接,链接到/var/spool/apt-mirror/mirror/mirrors.sohu.com/ubuntu目录下。

6.设置本地镜像与 sohu 的服务器同步更新

我们现在创建的ubunt source服务器的内容和sohu版本的服务器相同。

但是,每天Ubuntu团队都在向Ubuntu Source 服务器中添加新的deb包。

Sohu每天也都会和Ubuntu官方source服务器同步。

因此,我们必须经常使用sudo apt-mirror命令才能同步最新的deb包。

# vim /etc/cron.d/apt-mirror

把命令签名的#去掉。命令如下:

0 4 * * * apt-mirror /usr/bin/apt-mirror > /var/spool/apt-mirror/var/cron.log

7.启动apache2服务

# /etc/init.d/apache2 restart


8.check一下

在浏览器中,打开:http://192.168.1.112/ubuntu/

可以看到服务器中的文件了。

>>> 至此,我们的本地Ubuntu Source服务器已经创建成功了。

>>> 使用这个服务器安装软件


8.备份、修改sources.list

# mv /etc/apt/sources.list /etc/apt/sources.list.bak

# vim /etc/apt/sources.list

把原有内容全部删除或注释掉,添加如下2行,保存后退出

deb http://192.168.1.112/ubuntu karmic main

deb-src http://192.168.1.112/ubuntu karmic main


9.重建本地索引

# apt-get update

命中 http://192.168.1.112 karmic Release.gpg

忽略 http://192.168.1.112/ubuntu/ karmic/main Translation-zh_CN

命中 http://192.168.1.112 karmic Release

命中 http://192.168.1.112 karmic/main Packages

命中 http://192.168.1.112 karmic/main Sources

正在读取软件包列表... 完成



10.从本地服务器中获取安装文件(可以看到是从192.168.1.112上获取的安装文件)

# apt-get install cheese

正在读取软件包列表... 完成

正在分析软件包的依赖关系树

正在读取状态信息... 完成

下列软件包是自动安装的并且现在不需要了:

 ibus-pinyin-db-open-phrase pinyin-database

使用'apt-get autoremove'来删除它们

将会安装下列额外的软件包:

 libgnome-desktop-2-11

下列【新】软件包将被安装:

 cheese libgnome-desktop-2-11

升级了 0 个软件包,新安装了 2 个软件包,要卸载 0 个软件包,有 0 个软件包未被升级。

需要下载 2,586kB 的软件包。

解压缩后会消耗掉 7,565kB 的额外空间。

您希望继续执行吗?[Y/n]Y

获取:1 http://192.168.1.112/ubuntu/ karmic/main libgnome-desktop-2-11 1:2.28.1-0ubuntu2 [105kB]

获取:2 http://192.168.1.112/ubuntu/ karmic/main cheese 2.28.1-0ubuntu1 [2,481kB]

下载 2,586kB,耗时 0秒 (39.9MB/s)

选中了曾被取消选择的软件包 libgnome-desktop-2-11。

(正在读取数据库 ... 系统当前总共安装有 169831 个文件和目录。)

正在解压缩 libgnome-desktop-2-11 (从 .../libgnome-desktop-2-11_1%3a2.28.1-0ubuntu2_i386.deb) ...

选中了曾被取消选择的软件包 cheese。

正在解压缩 cheese (从 .../cheese_2.28.1-0ubuntu1_i386.deb) ...

正在处理用于 hicolor-icon-theme 的触发器...

正在处理用于 desktop-file-utils 的触发器...

正在处理用于 python-gmenu 的触发器...

Rebuilding /usr/share/applications/desktop.zh_CN.utf8.cache...

正在处理用于 man-db 的触发器...

正在处理用于 python-support 的触发器...

正在设置 libgnome-desktop-2-11 (1:2.28.1-0ubuntu2) ...

正在设置 cheese (2.28.1-0ubuntu1) ...

正在处理用于 libc-bin 的触发器...

ldconfig deferred processing now taking place

11.再看一下下载到本地的deb文件

# ll /var/cache/apt/archives/

总用量 2540

-rw-r--r-- 1 root root 2481286 2009-10-20 08:05 cheese_2.28.1-0ubuntu1_i386.deb

-rw-r--r-- 1 root root  105112 2009-10-24 02:06 libgnome-desktop-2-11_1%3a2.28.1-0ubuntu2_i386.deb

-rw-r----- 1 root root       0 2010-04-29 22:18 lock

drwxr-xr-x 2 root root    4096 2011-07-29 09:15 partial/


以后不用了,使用apt-get clean删除。



   本文原始链接: http://qiuxing2005.blog.sohu.com/179678907.html


版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/temp77J/article/details/27489861

智能推荐

读书真的无用吗?_“当初我用一麻袋的钱,买了一麻袋的书,最后把一麻袋的书卖掉,却买不起一个麻袋。-程序员宅基地

文章浏览阅读94次。每隔一段时间,“读书无用论”就会在社会上广泛流传。“当初我用一麻袋的钱,买了一麻袋的书,最后把一麻袋的书卖掉,却买不起一个麻袋。”这句话生动地体现了“读书无用论”的内涵,读书不赚钱,所以读书没用。 为什么会出现这种情况呢?读书无用论,无外乎就是认为教育投资没有得到相应的回报。读书收益具有延迟性,知识技能在短时间内无法带来显著的效益,比如对于家庭条件不好的人而言,十年寒窗,学费、生活费会花掉不少钱,这还不如早点出去打工挣钱来的实在。 这就涉及一个概念:机会成本,..._“当初我用一麻袋的钱,买了一麻袋的书,最后把一麻袋的书卖掉,却买不起一个麻袋。

关于初学者对ispostback的理解帮助-程序员宅基地

文章浏览阅读67次。Page.IsPostBack 是用来检查目前网页是否为第一次加载,当使用者第一次浏览这个网页时Page.IsPostBack 会传回False,不是第一次浏览这个网页时就传回True!Page_Load 事件中就可以使用ispostback来避免做一些重复的动作。主要用于对一些控件做初始化和数据绑定 有时如果不用ispostback 会发现有时出现一些莫名的错误这里我举二个例子例题一(控..._gridview不放在ispostback中 也能取值

关于:va_list,va_start,va_arg的3篇文章(ZZ) _char data[1024]; va_list argp; va_start(argp, fmt)-程序员宅基地

文章浏览阅读1.7k次。 关于:va_list,va_start,va_arg的3篇文章(ZZ) 文章1:C语言中变长参数(va_list,va_start,va_arg)沉思录 转载自:http://blog.sina.com.cn/s/print_3e7df0e5010005il.html 一.引言: C语言中关于变长参数的使用很简单,无非是如下的框架。是否可以不用宏而编写处理变长参数的函数呢?答案是肯定的,本文作了一些处浅探讨,不足之处望各位批评指正。 使用宏的程序框架:#include

传统组织如何转型敏捷组织_开始产品组织转型,第6部分-程序员宅基地

文章浏览阅读163次。传统组织如何转型敏捷组织 我一直在想我的客户已经成功地从基于项目/资源效率的组织转变为基于产品/流程效率的组织。 他们有以下共同点: 资深人士使经理们可以安全地进行实验。 他们创建了非常小的实验(经理或团队,或一起)。 高级经理经常问这样的问题: 您需要我什么,才能转到产品组织,我们在那儿优化产品流向客户的流程以及员工的满意度? 这是一个大问题。 这也是一个引人入胜的问..._组织转型

Angular系列教程之依赖注入详解_angular依赖注入使用-程序员宅基地

文章浏览阅读1k次,点赞6次,收藏9次。在Angular中,依赖注入被广泛应用于组件、服务、指令等场景,本文将详细解析Angular中的依赖注入。在Angular中,依赖注入是指将服务或值注入到组件、指令、管道等对象中,使得这些对象可以在运行时动态地获取和使用这些服务或值。依赖注入的原理主要是通过将对象的依赖关系显式地定义在一个容器中(通常是服务提供者),然后在对象被实例化时,由容器负责将这些依赖关系注入到对象中。依赖扫描:通过Angular的依赖注入系统,可以自动扫描组件、服务和指令中的依赖关系,并将其自动注入到相应的对象中。_angular依赖注入使用

web前端入门到实战:css3 loading (缓冲,等待效果实现)_前端按钮添加缓冲样式-程序员宅基地

文章浏览阅读329次。效果一HTML<div class="zh-loading"><ul><li></li><li></li><li></li><li></li></ul></div>CSSweb前端开发学习Q-q-u-n:784783012 ,分享学习的方法和需..._前端按钮添加缓冲样式

随便推点

机器学习需要的大量数据集从哪里找?-程序员宅基地

文章浏览阅读140次。这里汇总了医学图像、卫星图像、语义分割、自动驾驶、图像分类、人脸、农业、打架识别等多个方向的数据集资源,均附有下载链接。

天翼云全套认证薅羊毛攻略,3天拿证,你敢信???_天翼云考试怎么获得机会-程序员宅基地

文章浏览阅读404次,点赞6次,收藏7次。天翼云全套认证薅羊毛攻略,3天拿证,你敢信???_天翼云考试怎么获得机会

学习-Java字符串之StringToKenizer类分割字符串之计算购物小票商品总金额-程序员宅基地

文章浏览阅读1.8k次。任务描述本关任务:接收给定的购物小票字符串,计算该小票的商品总金额。相关知识在 Java 类库的 java.util 包中包含一个用于进行字符串词法分析的类 StringTokenizer,该类对字符串分解的方法进行封装,简化了应用程序设计过程中的工作量。StringTokenizer类的构造方法该类的三个构造方法如下:StringTokenizer(String str) StringTokenizer(String str,String delim) StringT_学习-java字符串之stringtokenizer类分割字符串之计算购物小票商品总

2023年06月CCF-GESP编程能力等级认证Python编程三级真题解析-程序员宅基地

文章浏览阅读84次。高级语言编写的程序需要经过以下( )操作,可以生成在计算机上运行的可执行代码。A:编辑B:保存C:调试D:编译。

C#的字节流Stream_c# 字节流-程序员宅基地

文章浏览阅读2.2k次。一、原理读写内存-MemoryStream类MemoryStream类用于向内存而不是磁盘读写数据。MemoryStream封装以无符号字节数组形式存储的数据,该数组在创建MemoryStream对象时被初始化,或者该数组可创建为空数组。可在内存中直接访问这些封装的数据。内存流可降低应用程序中对临时缓冲区和临时文件的需要。1、MemoryStream类封装一个字节数组,在构造实例时可以使用一个字节数组作为参数,但是数组的长度无法调整。使用默认无参数构造函数创建实例,可以使用Write方法写入,._c# 字节流

解决Win7/8/10系统中的Hyper-V和VMware虚拟机软件共存问题_win 7 vmware 与 hyper 冲突-程序员宅基地

文章浏览阅读2.6k次。许多企业不是在丢弃基于VMware的现有系统,而是在慢慢向微软的Hyper-V虚拟机管理程序迁移。微软在简化管理这两个虚拟化平台的任务,因为最新版本的System Center 2012 R2虚拟机管理器(VMM)让你可以借助单一管理平台,管理VMware和Hyper-V。所以,现在你还可以使用VMM,将虚拟机从VMware平台迁移到Hyper-V平台。不过也可以等待Hyper-V v_win 7 vmware 与 hyper 冲突