[问题]deb包本地安装,可否直接把deb包放到/var/cache/apt/archives里进行?

系统安装、升级讨论
版面规则
我们都知道新人的确很菜,也喜欢抱怨,并且带有浓厚的Windows习惯,但既然在这里询问,我们就应该有责任帮助他们解决问题,而不是直接泼冷水、简单的否定或发表对解决问题没有任何帮助的帖子。乐于分享,以人为本,这正是Ubuntu的精神所在。
回复
up1m
帖子: 5
注册时间: 2007-04-20 5:54

[问题]deb包本地安装,可否直接把deb包放到/var/cache/apt/archives里进行?

#1

帖子 up1m » 2007-04-20 20:08

要安装服务的那台机器无法上网

我可否在自己机器上完全安装一遍自己需要的软件,然后把cache里的deb包copy到无法上网的机器上

然后使用apt-get install命令安装(如果不能上网,那么apt-get install运行时会从cache目录里找)?
或者是dpkg -i 一个一个安装?

拜求大侠相告。thanks
头像
jarlyyn
帖子: 4671
注册时间: 2006-04-12 18:54
联系:

#2

帖子 jarlyyn » 2007-04-20 20:15

直接双击就可以安装
up1m
帖子: 5
注册时间: 2007-04-20 5:54

自己找到答案了:D 与诸位分享

#3

帖子 up1m » 2007-04-20 20:16

ubuntu 使用本地软件包作为安装源(转)1 2 3 4 5本文打分:0 [2006-11-30]
以下为引用内容:
--------------------------------------------------------------------------------
新手重新系统的概率很高,至少我是这样,每次重装系统后都要经过漫长的apt-get install来装回那些我们自己所需要的,但系统安装光盘里又没有的软件,实在是件痛苦的事,特别是对于我这种穷得装不起宽带的打工仔:)
终于,经过无数次的试验,找到了解决办法。
每一次install时系统下载的软件包,包括各个软件所依赖的包都会保存在/var/cache/apt/archives/目录下,选定某一次通过网络安装完自己所常用到的所有软件之后,将该文件夹下的所有文件都复制到一个不常格式化的分区里面,作为以后重装系统时的本地源,可谓省时省心省力。
以下为操作过程,为验证,特意重装一次系统,无语。
一、在自己的根目录下建立一个目录,用于放所有下载的软件包,目录名随自己喜欢,建议新手在自己的根目录下进行以下操作,以避免操作权限问题的困扰。
mkdir ~/ packs

二、复制文件到packs文件夹下,目录依各人情况变化。
sudo cp /var/cache/apt/archives/* ~/packs

三、将建立Packages.gz包,里面记录了packs文件夹下面的软件包信息,包括依赖信息。
dpkg-scanpackages packs /dev/null |gzip > packs/Packages.gz
完成此操作后,将packs文件夹复制到一个不常格式化的分区中,作为长久使用,比如我将它放在一个fat32的分区时面,路径是 /media/hda6/linux/soft/packs

四、加本地源
sudo gedit /etc/apt/sources.list
加入 deb file:///media/hda6/linux/soft/packs/ edgy main ,注意,这里只是我电脑上的路径,请依实际位置修改edgy 是我的ubuntu版本,main也不是固定的,也可以用restricted等,只是在下面第五步中的操作中对应建立的目录结构不同而已,这里只举 main的例子。有兴趣的同仁可以加一个试试,系统的出错提示会有文件夹设置信息。

五、设置packs目录下的目录结构
在packs目录下建立这样的结构
packs/dists/edgy/main/binary-i386/
packs/packs/ #也就是在packs下再建立一个packs
以上这两层的目录用于放置不同类型的包,据我电脑上试验过程中的提示,好像binary-386目录下放的是各种软件的安装包, packs/packs/目录下放的是各个依赖的包以及系统更新的包,基本上是以lib开头的,最保险的办法是把所有包都复制到这两个文件夹下面。

六、设置完成
完成以上设置和文件复制之后,就可以开始正常使用本地的源了和使用网络上的源一样操作。
sudo apt-get update
sudo apt-get dist-upgrade
sudo apt-get install XXX
--------------------------------------------------------------------------------



via 使用本地软件包作为安装源,降低重装系统后下载软件的痛苦指数!


哈,二楼的兄弟,这贴子的完成有你的功劳,在另一贴里你有这样一张回贴
-----------------------------------------------
下载DVD版本,然后把它作为源. 有两种方式.

1. 可以直接放在硬盘上,然后mount到某个目录里,比如: sudo mount -t iso9660 -o loop xxx.iso /mnt

然后修改sources.list,改成 deb file:///mnt edgy main .... 后面和你的原来的格式一样.

2. 刻盘.然后在新立得里面用将CD Rom设置为源

呵呵,刚刚试了一下更简单的办法,完第一个目录结构后,把Packages.gz那个包放在binary-i386文件夹下面,然后把所有的deb包复制到/var/cache/apt/archives/下就可以了。
估计apt-get install的工作原理是这样的,先从Packages.gz包里读取软件列表和包依赖信息,安装某个软件时先扫描本地archieves目录,如果可以找到对应的包,就开始安装,否则从源里下载该包。

其实我实现这些操作的思路很简单啊
1、备份手上已有的软件包
2、建立这些软件列表和依赖信息 packages.gz
3、建立目录结构,可随意在本地源地址后加上 main、 restricted之类的关键字,然后apt-get update,系统会给出出错提示,里面就包含了各个关键字对应的目录结构,
4、添加本地源 deb file:/// dir/dir/dir/...
up1m
帖子: 5
注册时间: 2007-04-20 5:54

#4

帖子 up1m » 2007-04-20 20:17

jarlyyn 写了:直接双击就可以安装
我装的是server版 :D
头像
skyx
论坛版主
帖子: 9202
注册时间: 2006-12-23 13:46
来自: Azores Islands
联系:

#5

帖子 skyx » 2007-04-20 20:19

二楼的转帖有意思,好像在哪里见过? 还是比较老的edition? 招唤雕啸长空
雕啸长空
帖子: 1897
注册时间: 2006-09-12 14:09

#6

帖子 雕啸长空 » 2007-04-20 20:36

skyx 写了:二楼的转帖有意思,好像在哪里见过? 还是比较老的edition? 招唤雕啸长空
是最初的版本,后面还有第二版,当前的是第三版

楼主找了个出口转内销的.........
Fair winds and following seas !
头像
skyx
论坛版主
帖子: 9202
注册时间: 2006-12-23 13:46
来自: Azores Islands
联系:

#7

帖子 skyx » 2007-04-20 20:54

雕啸长空 写了:
skyx 写了:二楼的转帖有意思,好像在哪里见过? 还是比较老的edition? 招唤雕啸长空
是最初的版本,后面还有第二版,当前的是第三版

楼主找了个出口转内销的.........
没想到雕的非原创作品的影响因子值还很高...............
up1m
帖子: 5
注册时间: 2007-04-20 5:54

#8

帖子 up1m » 2007-04-20 20:55

google搜索排名第一的是这个
http://blog.guoshuang.com/showlog.asp?c ... og_id=4667

原帖?
http://www.bjmingde.com/bbs/ShowPost.asp?ThreadID=3591

这群家伙,转帖的时候也不写出处...
up1m
帖子: 5
注册时间: 2007-04-20 5:54

#9

帖子 up1m » 2007-04-20 20:57

google上排名第一的帖子
http://blog.guoshuang.com/showlog.asp?c ... og_id=4667

原帖地址?
http://www.bjmingde.com/bbs/ShowPost.asp?ThreadID=3591

这群家伙,转帖也不写出处...
雕啸长空
帖子: 1897
注册时间: 2006-09-12 14:09

#10

帖子 雕啸长空 » 2007-04-20 21:05

搜了一下,旧版还真被引了几个地方,误人子弟啊.
Fair winds and following seas !
yjwork
帖子: 422
注册时间: 2006-10-24 11:46
系统: debian

#11

帖子 yjwork » 2007-04-21 0:38

dpkg -i *.deb
如果你的包全
放到一个目录执行就可以一次完成了
xinsky
帖子: 85
注册时间: 2007-04-13 19:11
来自: Fujian,China

#12

帖子 xinsky » 2007-04-21 1:15

yjwork 写了:dpkg -i *.deb
如果你的包全
放到一个目录执行就可以一次完成了
MS这个更好用
newhpzzw
帖子: 115
注册时间: 2006-05-13 3:06

#13

帖子 newhpzzw » 2007-04-26 23:10

五、设置packs目录下的目录结构
在packs目录下建立这样的结构
packs/dists/edgy/main/binary-i386/


想问一下,这个packs目录是在哪里的???
雕啸长空
帖子: 1897
注册时间: 2006-09-12 14:09

#14

帖子 雕啸长空 » 2007-04-26 23:16

newhpzzw 写了:五、设置packs目录下的目录结构
在packs目录下建立这样的结构
packs/dists/edgy/main/binary-i386/


想问一下,这个packs目录是在哪里的???
别看这个了,论坛里有改进后的方法,在安装配置版块
Fair winds and following seas !
回复