设为首页 收藏本站
查看: 672|回复: 0

[经验分享] Ubuntu本地源制作与本地源的维护

[复制链接]

尚未签到

发表于 2018-5-3 10:39:07 | 显示全部楼层 |阅读模式
  1、制作软件源
  使用Ubuntu一段时间的人都应该知道,所有从软件仓库中安装的软件包都会在本地的。
  /var/cache/apt/archives
  中进行缓存。而且每次安装完Ubuntu,重新上网安装中文语言包是个非常麻烦的事情,而且每次都要安装MP3等音频视频程序的版权驱动,十分麻烦。所以,本地源的制作就非常必要了。
  言归正传,首先需要安装软件包dpkg-dev
  #sudo apt-get install dpkg-dev
  等配置好后,在/下建立一个目录software作为软件包的存放地点,或者放在硬盘中任意位置。
  将/var/cache/apt/archives中的所有软件包拷贝到这个文件夹里。
  执行以下命令,进行软件源的制作
  #sudo dpkg-scanpackages /software /dev/null | gzip>/software/Packages.gz
  等待系统扫描完所有的软件包后,会返回命令行,并且在software文件夹中生成一个名为Packages.gz的压缩文件,存有这个文件夹中的软件包信息及其依赖关系。
  2、使用软件源
  接上文
  #sudo gedit /etc/apt/sources.list
  删除所有内容,添加
  deb file:/// software/
  保存。
  打开终端,输入
  #sudo apt-get update
  以更新本地的软件包列表
  然后可以用apt-get命令安装本地源中含有的软件包或者像我一样直接执行
  #sudo apt-get dist-upgrade
  命令更新系统。如果再懒一点,可以输入以下命令
  #sudo apt-get update;sudo apt-get dist-upgrade
  来直接进行以上工作。
  3、维护软件源
  如果软件源只是你在本地备份的软件包,以便给其他电脑安装系统时候所用,而平时你都是上网更新系统。那么维护你的软件源就显得比较重要了。过去我的做法是,一旦网上更新了系统,就把本地缓存文件夹中的更新软件包拷贝到本地源文件夹中,然后执行dpkg-scanpackages命令制作索引文件。但是久而久之问题也凸显出来,有些程序的更新文件,却不被索引到文件中去,还占用着巨大的空间。于是网上搜索发现有一个命令apt- get autoclean,于是乎试验之,发现收效甚微,却又苦于不了解依赖关系而不敢手动删除多余的软件包。更加郁闷的是,我的本地源已经有4.1G之巨,手动删除乃费力之举,而且一旦错删,后果可想而知。联想到制作本地源过程中出现在终端的警告信息,和Bash的IO重定向功能。本人今日做了如下试验:
  #sudo dpkg-scanpackages /software 2>/home/kernel/桌面/errors
  此命令意思为,将dpkg-scanpackages命令的标准错误输出重定向到桌面的errors文件中去,这样就可以在错误输出信息中找出重复的软件包并加以删除了。
  在此引用以下此错误文件的部分内容
  *********以下为内容*********
  dpkg-scanpackages: 警告: Package acroread (filename /media/localsources/software/acroread_9.3.3-1lucid1_i386.deb) is repeat but newer version;
  dpkg-scanpackages: 警告: used that one and ignored data from /media/localsources/software/acroread_9.3.2-lucid1_i386.deb!
  dpkg-scanpackages: 警告: Package adobe-flashplugin (filename /media/localsources/software/adobe-flashplugin_10.1.53.64-1lucid1_i386.deb) is repeat but newer version;
  dpkg-scanpackages: 警告: used that one and ignored data from /media/localsources/software/adobe-flashplugin_10.0.45.2-1lucid1_i386.deb!
  dpkg-scanpackages: 警告: Package apache2-utils (filename /media/localsources/software/apache2-utils_2.2.14-5Ubuntu8_i386.deb) is repeat;
  dpkg-scanpackages: 警告: ignored that one and using data from /media/localsources/software/apache2-utils_2.2.14-5Ubuntu8.2_i386.deb!
  dpkg-scanpackages: 警告: Package apt-transport-https (filename /media/localsources/software/apt-transport-https_0.7.25.3Ubuntu9.1_i386.deb) is repeat but newer version;
  dpkg-scanpackages: 警告: used that one and ignored data from /media/localsources/software/apt-transport-https_0.7.25.3Ubuntu8_i386.deb!
  dpkg-scanpackages: 警告: Package apt-transport-https (filename /media/localsources/software/apt-transport-https_0.7.25.3Ubuntu9.3_i386.deb) is repeat but newer version;
  dpkg-scanpackages: 警告: used that one and ignored data from /media/localsources/software/apt-transport-https_0.7.25.3Ubuntu9.1_i386.deb!
  dpkg-scanpackages: 警告: Package apt-transport-https (filename /media/localsources/software/apt-transport-https_0.7.25.3Ubuntu9_i386.deb) is repeat;
  dpkg-scanpackages: 警告: ignored that one and using data from /media/localsources/software/apt-transport-https_0.7.25.3Ubuntu9.3_i386.deb!
  *********以上为内容*********
  然后分析提示信息,得出什么软件包是需要留下的,什么软件包是需要删除的,再通过一系列的替换等命令,将此文件作成一个Shell脚本文件,赋予脚本文件可执行权限即可了。
  脚本文件如下内容(举例)
  *********以下为内容*********
  #! /bin/sh
  rm /media/localsources/software/acroread_9.3.2-lucid1_i386.deb
  rm /media/localsources/software/adobe-flashplugin_10.0.45.2-1lucid1_i386.deb
  rm /media/localsources/software/apache2-utils_2.2.14-5Ubuntu8_i386.deb
  rm /media/localsources/software/apt-transport-https_0.7.25.3Ubuntu8_i386.deb
  rm /media/localsources/software/apt-transport-https_0.7.25.3Ubuntu9.1_i386.deb
  rm /media/localsources/software/apt-transport-https_0.7.25.3Ubuntu9_i386.deb
  *********以上为内容*********
  执行后,即可见到本地源目录中不需要的文件已经被删除掉!

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-455237-1-1.html 上篇帖子: win7下安装ubuntu(64位) 注意事项 下篇帖子: Ubuntu 默认启动到字符界面
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表