- [Linux] yum和apt-get用法及区别
一般来说著名的linux系统基本上分两大类:
1.RedHat系列:Redhat、Centos、Fedora等
2.Debian系列:Debian、Ubuntu等
RedHat 系列
1 常见的安装包格式 rpm包,安装rpm包的命令是“rpm -参数” 2 包管理工具 yum 3 支持tar包Debian系列
1 常见的安装包格式 deb包,安装deb包的命令是“dpkg -参数” 2 包管理工具 apt-get 3 支持tar包tar 只是一种压缩文件格式,所以,它只是把文件压缩打包而已。
rpm 相当于windows中的安装文件,它会自动处理软件包之间的依赖关系。 优缺点来说,rpm一般都是预先编译好的文件,它可能已经绑定到某种CPU或者发行版上面了。 (yum 安装也是先获取,然后rpm) tar一般包括编译脚本,你可以在你的环境下编译,所以具有通用性。 如果你的包不想开放源代码,你可以制作成rpm,如果开源,用tar更方便了。 tar一般都是源码打包的软件,需要自己解包,然后进行安装三部曲,./configure, make, make install. 来安装软件。rpm是redhat公司的一种软件包管理机制,直接通过rpm命令进行安装删除等操作,最大的优点是自己内部自动处理了各种软件包可能的依赖关系。
1、刨根问底---什么是yum源?yum的工作原理?
说到yum源就必须说到linux系统中特有的依赖关系问题,yum就是为了解决依赖关系而存在的。yum源就相当是一个目录项,当我们使用yum机制安装软件时,若需要安装依赖软件,则yum机制就会根据在yum源中定义好的路径查找依赖软件,并将依赖软件安装好。
YUM是“Yellow dog Updater, Modified”的缩写,是一个软件包管理器,YUM从指定的地方(相关网站的rpm包地址或本地的rpm路径)自动下载RPM包并且安装,能够很好的解决依赖关系问题。
YUM的基本工作机制如下:
服务器端:在服务器上面存放了所有的RPM软件包,然后以相关的功能去分析每个RPM文件的依赖性关系,将这些数据记录成文件存放在服务器的某特定目录内。 客户端:如果需要安装某个软件时,先下载服务器上面记录的依赖性关系文件(可通过WWW或FTP方式),通过对服务器端下载的纪录数据进行分析,然后取得所有相关的软件,一次全部下载下来进行安装。
2、yum文件:
[root@linux-6 ~]# vim /etc/yum.repos.d/
google-chrome.repo local-yum.repo rhel-source.repo [root@linux-6 ~]# vim /etc/yum.repos.d/ //在yum.repos.d 目录下存放的就是yum源的设定文件。[root@linux-6 ~]# vim /etc/yum.repos.d/rhel-source.repo //打开一个yum源的设定文件
[rhel-source-beta] //yum源的名称,起到标记yum源的作用, name=Red Hat Enterprise Linux $releasever Beta - $basearch - Source //仅仅是对yum的描述,作用是使用户可以更容易的读懂该文件。baseurl=ftp://ftp.redhat.com/pub/redhat/linux/beta/$releasever/en/os/SRPMS/ //我们指定的查找依赖关系软件的路径,(该路径可以是一个网址路径,也可以是本机上的一个路径。) enabled=0 //enabled 是使能够的意思,0表示baseurl定义的路径是不可用的,1表示定义的路径是可用的。 gpgcheck=1 //gpgcheck表示是否进行gpg检测,0表示不进行,1表示进行。gpg检查就是在使用yum安装软件是对软件输入公钥进行验证,看是否来源安全。 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-beta,file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release //进行gpg检查时,使用file协议导入公钥,后面接的路径就是系统自带的公钥存放路径。ftp:// 表示使用的是ftp协议连接路径,该协议一般用于非本地连接,本地yum使用的协议是:"file://"文件协议
3、两种yum源:本地yum源和网络yum源。本次只谈本地yum源
搭建本地yum源,我们首先就要有提供源的文件包,一般的Linux系统的镜像文件iso中就含有搭建yum源所需的rpm文件。若是没有建议到网上下载,注意要和自身使用的系统版本一致。