一、 简介

redhat采用了RPM软件包管理系统,RPM软件包管理系统具有强大的编译安装功能,但是由于历史原因,RPM软件包管理系统对软件之间的依存关系没有内部定义,造成安装RPM软件时经常出现令人无法理解的软件依赖问题。

debian系统则基于apt(Advanced Packaging Tool)工具进行软件包管理,可以自动解决并安装倚赖软件包,因此debian linux被认为是最容易管理和升级的系统,apt工具也被认为是目前最好的软件包管理工具之一。为了解决redhat包管理系统的致命问题,Conectiva Linux将apt系统移植到了使用rpm软件包管理系统的Linux系统下,使得基于RPM软件包的系统可以利用apt工具提供的自动解决倚赖关系的能力。目前已经有很多为redhat linux提供apt方式升级管理软件包的站点,如http://apt.freshrpms.net , http://apt.unl.edu 等等,使得redhat也成为可以利用apt工具的发行版之一,本文介绍如何在redhat linux系统安装和使用apt软件包管理工具。

为了对apt工具的特性有一个大致的了解,下面先介绍几个使用apt with rpm管理系统的实例:

(1)删除一个软件包时自动删除相关软件包:

[root@linux root]# apt-get remove nessus-common

...

[root@linux root]#

(2)自动下载安装依赖包:

[root@linux root]# apt-get install nessus-server

...

[root@linux root]#

(3)维护系统软件,自动更新系统 :

[root@linux root]# apt-get upgrade

...

[root@linux root]#

二、安装apt with rpm及其图形界面前端Synaptic

下面简单介绍一下如何下载和安装apt with rpm

apt with rpm可以直接到 http://apt.freshrpms.net 下载安装,目前该站点提供了redhat 6.2, 7.x,8.0,9.0和fedora core 1,2的软件升级服务,下面是几个常用redhat版本的apt下载地址:

Fedora core 2 :

http://ftp.freshrpms.net/pub/fre ... 1.1.fc2.fr.i386.rpm

Fedora core 1 :

http://ftp.freshrpms.net/pub/fre ... 0.1.fc1.fr.i386.rpm

下载后使用rpm命令安装:

[root@linux root]# rpm -ihv apt-0.5.5cnc6-fr1.i386.rpm

freshrpms.net同时提供了一个图形界面的apt-rpm接口Synaptic,使用图形界面的apt更加方便,安装了apt后,可以直接利用apt安装Synaptic:

[root@linux root]# apt-get update

[root@linux root]# apt-get install synaptic

在几行提示之后Synaptic就安装好了,进入Xwindow,Synaptic会出现在“系统设置”菜单里面。[Fixme: redhat 7.x版本Synaptic出现在哪里?]

三、使用apt

在redhat上面使用apt和在debian下面使用几乎完全一样,配置文件在/etc/apt/,按照前面介绍安装好apt之后就可以使用并可以更新redhat提供的RPM更新以及freshrpms.net提供的更新了。主要运行命令如下:

(1)更新软件列表,获取远程rpm服务器上的软件列表和相互依赖关系列表,所有可用软件的下载地址都在/etc/apt/sources.list里面定义,下面的多数下载操作地址也是在这里定义的。

[root@linux root]# apt-get update

(2)检查本地软件依赖关系合法性,由于rpm系统的问题,很多系统会存在一些依赖问题,用下面命令检查依赖关系,同时apt-get会提供一些修复方案,只有本机没有依赖关系问题了才能良好地使用apt-rpm。一个新安装的干净系统不会有依赖关系问题。

[root@linux root]# apt-get check

(3)安装或升级一个新软件

[root@linux root]# apt-get install package-name

package-name是rpm包的名字的前面部分,不包含版本号,如果选择不同的处理器类型,可以在后面添加@i686等标识。

(4)升级所有系统软件

[root@linux root]# apt-get upgrade

(5)全面升级,比upgrade更加智能化的升级,同时解决升级时的一些依赖关系

[root@linux root]# apt-get dist-upgrade

(6)卸载软件,同时卸载依赖软件

[root@linux root]# apt-get remove package-name

(7)清除本地下载的rpm包,rpm包下载后保存在/var/cache/apt/archieves下面,本命令清除已下载安装过的rpm文件

[root@linux root]# apt-get clean

以上所有命令都可以通过图形界面的前端软件Synaptic完成,图形化的软件使用起来更加直观,理解了前面几个主要命令,就可以毫无困难地使用Synaptic了,所以本文不再赘述Synaptic的使用方法了。

四 定制apt-rpm

(1)添加软件资源列表

在apt-rpm系统里面添加软件资源非常容易,只需要按照提供apt服务的服务器的说明在/etc/apt/sources.list里面加入对网站的描述即可。

这一行参数的格式为:

rpm uri distribution [component1] [componenent2] [...]

其中,uri为软件资源的地址,可以是http,ftp,file等URL地址,distribution是redhat发行版本,如 7.2,7.3,8.0等等,后面的component可以忽略。有时候可能只对某软件资源的一或几部分部分感兴趣,那么可以在这里明确指出。

例如添加http://apt.unl.edu/ 提供的redhat KDE 3.1的测试软件包,只需要在sources.list里面添加一行:

就将该网站的kde3部分加入了列表。

下面是一些目前可以用于redhat 的apt-rpm软件资源列表,把它们加入你的 /etc/apt/sources.list 文件就可以通过apt-rpm使用他们提供的redhat软件更新和维护了,参看网站说明。(前面是网站名,后面是适用redhat版本和简介)

http://apt.freshrpms.net/ - Red Hat Linux 6.2, 7.x and 8.0 repositories (with all freshrpms included of course!)

http://www.linux.cz/apt-rpm/ - Red Hat Linux 7.x repositories (with all freshrpms included too!)

http://apt-rpm.tuxfamily.org/ - Red Hat Linux 6.2, 7.x and 8.0 repositories

http://apt.nlc.no/apt/ - Red Hat Linux 6.2, 7.x and Rawhide repositories

http://ftp.uninett.no/pub/linux/apt/ - Red Hat Linux 6.2, 7.x, 8.0 and Rawhide repositories

http://redhat.usu.edu/ - Red Hat Linux 7.2, 7.3 and 8.0 repositories

ftp://mirror.pa.msu.edu/apt/ - Red Hat Linux 7.2, 7.3 and 8.0 repositories

http://apt-rpm.codefactory.se/ - Red Hat Linux 7.2, 7.3 and 8.0 and gnomehide repositories

http://apt.42h.de/ - Red Hat Linux 7.2, 7.3 and 8.0 repositories

http://apt.toggletext.com.au/ - A few Red Hat Linux 7.2 custom packages

http://people.ecsc.co.uk/~matt/repository.html - Lots of custom Red Hat Linux 8.0 GNOME 2 and related packages

http://ftp-stud.fht-esslingen.de/apt/ - Red Hat Linux 7.x, 8.x and rawhide

http://apt.unl.edu/ - Red Hat Linux 7.3 and 8.0

http://kde-redhat.sourceforge.net/ - KDE for Red Hat project

(2)把redhat安装盘添加到软件源

有的时候需要从redhat安装光盘或者iso文件安装、卸载软件,这时可以把redhat安装光盘设置为软件源。这种工作方式需要首先扫面安装光盘上的软件包,并在 /var/lib/apt/cdroms.list文件中建立光盘软件列表。

如果使用redhat光盘,只需要把光盘插入光驱,下面命令会自动mount光盘并建立列表

[root@linux root]# apt-cdrom add

如果是使用ISO文件安装,首先mount ISO文件到mount-point,把mount point输入,就可以自动搜索RPM软件列表了。

[root@linux root]# apt-cdrom -m -d mount-point add

如果是解开的硬盘映像安装,只需要把路径输入,就可以自动搜索RPM软件列表了。

[root@linux root]# apt-cdrom -m -d path add

五 实例: 安装mplayer

[root@linux root]# apt-get install mplayer

...

linux apt install rpm,使用apt-rpm 简化你的redhat,fedora rpm包管理相关推荐

  1. sudo apt install 和 sudo apt -get install 有什么区别?

    从功能上讲,没有任何区别.apt命令就是之前的apt-xxx这一堆命令的大杂烩,比较新,目前还在开发中,目前并未集成所有的apt-xxx命令的功能,可能cli还不稳定,未来某些命令参数可能会变,也有可 ...

  2. Linux RPM、YUM、APT包管理工具

    ⒈rpm包的管理 1)介绍 rpm是一种用于互联网下载包的打包及安装工具,它包含在某些Linux分发版中,它生成具有.RPM扩展名的文件,RPM是RedHat Package Manager(RedH ...

  3. Linux包管理工具apt,Linux RPM、YUM、APT包管理工具

    ⒈rpm包的管理 1)介绍 rpm是一种用于互联网下载包的打包及安装工具,它包含在某些Linux分发版中,它生成具有.RPM扩展名的文件,RPM是RedHat Package Manager(RedH ...

  4. yum与rpm、apt的区别:rpm的缺陷及yum的优势

     发表于 2014-9-19 11:40:27 | 只看该作者  about云|新出视频,openstack零基础入门,解决你ping不通外网难题 id="cproIframe_u17288 ...

  5. 以rpm为后端及以yum为前端工具的程序包管理器在Linux发行版系统centos中的使用...

    程序包管理: 应用程序的安装,实际上是解压缩并复制程序包中的文件到指定目录的过程: 程序包管理器: 方便终端用户进行程序的安装.卸载.升级.安装信息查询及校验等工作: 不同的Linux的发行版本中,有 ...

  6. ubuntu/linux系统知识(17)图形化的包管理工具Synaptic

    文章目录 Synaptic 软件包管理器是什么? 为什么你要使用像 Synaptic 软件包管理器这样的 "古老的" 软件? Synaptic 软件包管理器的功能 如何在 Ubun ...

  7. Linux基础命令(四)文件查找和压缩、软件安装、源码包管理

    目录 一.查找和压缩 1.文件查找 2.文件打包和压缩 二.软件安装 1.RPM包管理 三.源码包管理 一.查找和压缩 1.文件查找 (1)witch:命令查找 witch ls(命令) #查找ls命 ...

  8. kaos linux 包管理,KaOS v2018.12版正式发布附下载-独立的 Linux 发行版

    KaOS 是一个独立的 Linux 发行版.它旨在以 KDE 及基于 Qt 的软件提供优雅的桌面体验:仅配有 KDE Plasma 桌面环境,且紧跟 Plamsa 桌面的最新更新:受 Arch Lin ...

  9. 两类Linux系统的包管理工具

    Linux系统分为两种: 1.RedHat系列:Redhat.Centos.Fedora等 2.Debian系列:Debian.Ubuntu等 RedHat系列的包管理工具是yum,Debian系列的 ...

最新文章

  1. css区块定位之浮动与清除属性
  2. mysql timestamp 类型_MySQL中“诡异”的TIMESTAMP数据类型
  3. 八张图彻底了解JDK8 GC调优秘籍-附PDF下载
  4. vue 一个页面有点请求需要同时发送_前端性能优化,这些你都需要知道
  5. 关于SQL数据库中cross join 和inner join用法上的区别?
  6. 揭秘Product Hunt怎样运用邮件崛起
  7. 炫酷科技感超前的电子产品发布广告海报psd分层模板,带给你炫酷的未来感
  8. moco常用配置参数及实战
  9. 公基会考计算机知识,公基计算机基础知识汇总70.doc
  10. ffmpeg系列-编译
  11. 怎么阻止acrobat自动更新升级?
  12. 谈谈工业App (1)
  13. cad 切图_两种快速切图方式
  14. matlab由自相关函数求功率谱密度,转:matlab求功率谱密度代码实例
  15. 限量50件,属于创作者的、用代码设计的T恤
  16. java给文件777权限_从今往后,谁再告诉你Linux上chmod -R 777解决权限,果断绝交
  17. win7 无法打开vscode 1.71版本
  18. setUp和tearDown
  19. Windows server 2012 主域+辅域
  20. 基于PHP+小程序(MINA框架)+Mysql数据库的新生自助报到小程序系统设计与实现

热门文章

  1. csol永恒python_CSOL宇宙势力加入 超凡角色自带特殊能力
  2. python简笔画绘制 数据驱动绘图_python数据分析绘图可视化
  3. MT6757芯片技术资料,MT6763平台案例分析
  4. 阿里买的域名,腾讯买的云服务器,请问在哪里备案?
  5. 鼓励软件产业和集成电路产业发展的若干政策(2000)
  6. java 实现上传文件到远程服务器
  7. 数据可视化总结2021.05.17
  8. 谷歌APP上架策略及技巧
  9. c++各类变量的生存周期、初始化和消亡顺序(复合、委托、构造)
  10. esp8266制作NFC电子门锁支持手机控制