在packs文件夹中有如下两种类型的包:一种是.deb包(全部的依赖包和软件包),另一种是Packages.gz。着重介绍一下第二个类型的包:在这个包中包含了必需的软件包列表和依赖信息。
这个包是通过下面这个命令手动生成的:
sudo dpkg-scanpackages packs /dev/null |gzip >packs/Packages.gz
packs是包含了所有软件包的这个文件夹。这条命令在该packs文件夹上一层目录执行。Packages.gz生成在packs文件夹中。
执行过upgrade操作后,更新包和系统光盘里面没有的软件包都会保存在/var/cache/apt/archives/,就是利用这些包来制用本地源。 下面的过程在存放从网络上得到更新包的电脑上执行:
1.安装必要的软件包dpkg-dev 代码:
代码: |
sudo apt-get install dpkg-dev |
2.备份已经下载到本机的软件包和更新
代码: |
mkdir ~/debs |
代码: |
sudo cp -a /var/cache/apt/archives/* ~/debs |
3.建立包列表及依赖信息文件
代码: |
cd ~/ |
代码: |
sudo dpkg-scanpackages debs /dev/null |gzip >debs/Packages.gz |
该命令执行完成后,将在~/debs目录下生成一个Packages.gz文件,里面记录了本地包的列表及包依赖信息,sudo apt-get update命令就是为了获取该文件中的信息。
至此/var/cache/apt/archives下的deb包以及得到的包依赖信息文件已存在了根目录下的debs文件夹中。
我们可以随便的copy这个文件夹到没有上网(或没有条件上网)的电脑上,我将它存放在windowsxp系统的D盘(盘符也为D)下。
1.把/media/D/debs下所有的包全部都拷贝到目录/var/cache/apt/archives/下面
命令:
代码: |
sudo cp /media/D/debs/*.deb /var/cache/apt/archives/ |
代码: |
sudo chmod 777 -R /var/cache/apt/archives/ |
2.在/media目录下建立这样的一个目录:
建立gutsy,在gutsy下建立packs ### 注意全是文件夹 。把Packages.gz这个包拷贝到packs下面,放权限。
代码: |
sudo mkdir /media/gutsy sudo mkdir /media/gutsy/packs sudo cp /media/D/debs/Packages.gz /media/gutsy/packs/ sudo chmod 777 -R /media/gutsy/ sudo chmod 777 -R /var/cache/apt/archives/ |
3.完成上面的工作之后,执行下面的命令:
代码: |
sudo gedit /etc/apt/sources.list |
进入sources.list文件之后,清空文件内的内容(由于没有网络,所以直接清空),填写如下一行:
代码: |
deb file:///media/gutsy packs/ |
完成这三步骤的工作之后,本地源的制作就完成了。
执行
代码: |
sudo apt-get update sudo apt-get upgrade |
No comments:
Post a Comment