7.1安装软件包的三种方式
在windows下安装软件很简单linux 程序卸载,只要双击后缀为exe的文件,之后按照提示连续点击“下一步”按钮即可。但是在linux系统下安装软件就没这么容易了,由于我们不是在图形界面下。
RPM是RedHatPackageManager的简写,由RedHat公司开发。RPM是以一种数据库记录的方法来将你所须要的套件安装到你的Linux主机的一套管理程序。也就是说,你的linux系统中存在着一个关于RPM的数据库,它记录了安装的包以及包与包之间依赖相关性。RPM包是预先在linux机器上编译好并打包好的文件,安装上去十分快捷。并且也有一些缺点,例如安装的环境必须与编译时的环境一致或则相当;包与包之间存在着互相依赖的情况;卸载包时须要先把依赖的包卸载掉,假如依赖的包是系统所必须的,那就不能卸载这个包,否则会导致系统崩溃。
rpm工具有点像Windows下的exe安装
yum工具比rpm工具好用多了,其实前提是你使用的linux系统是支持yum的。yum最大的优势在于可以联网去下载所须要的rpm包查看系统版本linux,之后手动安装,在这个工程中假如要安装的rpm包有依赖关系,yum会帮你解决掉那些依赖关系依次安装所有rpm包。
yum工具如同苹果手机上的应用商店一样,可以傻蛋式的一键帮你安装所需的软件。
这个源码包就完全不同于Windows了,所谓的源码包,就是源代码,你可以听到这个程序当时作者使用诸如C语言、C++、等各类语言开发的源码文件。须要我们自己把源代码编译成二补码的可执行文件。假如你读得懂这种源代码,这么你就可以去更改那些源代码自定义功能,之后再去编译成你想要的。使用源码包的益处不仅可以自定义更改源代码外还可以定做相关的功能,由于源码包在编译的时侯是可以附加额外的选项的。缺点是安装和卸载比较麻烦。
7.2rpm包介绍
我们须要晓得rpm包是长啥样的,虽然在centos系统安装盘下就有好多的软件就是rpm包方式的。我们在虚拟机里把光碟挂载进来瞧瞧吧!
把光碟添加好后,我们还须要挂载它linux软件下载,如右图:
使用mount/dev/cdroom/mnt将光碟挂载到mnt/目录下,这儿会提示以只读形式挂载,由于光碟本身就不支持写数据的。
挂载好之后我们就可以在/mnt/Packages/目录下看见所有的rpm包了
rpm包文件名解读:
示例:abrt-desktop-2.1.11-50.el7.centos.x86_64.rpm
abrt-desktop:包名2.1.11:版本号50.el7:发布版本号,7代表是centos7
x86_64:平台64位,centos7默认都是64位
.rpm:后缀名
64位平台可以安装32位的包,跟Windows一样
7.3rpm工具用法
知识点:反破折号可以引用的结果,使用反顿号which查看,只能查只有一行显示路径的,比如cd,ls则不可以,由于它做了别称,which下来就有两行了。
示例操作:
7.4yum工具用法
是一个在Fedora和RedHat以及SUSE中的后端软件包管理器。
基於RPM包管理,才能从指定的服务器手动下载RPM包而且安装,可以手动处理依赖性关系,而且一次安装所有依赖的软体包,无须冗长地一次次下载、安装。
yum提供了查找、安装、删除某一个、一组甚至全部软件包的命令,并且命令简练而又好记。
优势点:支持手动安装依赖包
用法:
yumlist有三列,其中第一列是包名,第二列是版本号,第三列代表的是库房名子。
使用cat/etc/yum.repos.d/CentOS-Base.repo查看库房详尽配置信息
里面听到[]里的base,就是库房名
把包放在一个容器里,这个容器就是库房,通过库房下边的网路地址可以找到它,每位库房下有好多包。
这些搜索不太严谨,只要富含vim字符的就会查找下来,但是不分辨大小写。我们可以使用另一种方式:
7.5yum搭建本地库房
在没联网的情况下yum是使用不了的,这时侯可以搭建一个本地库房,便捷安装包和它所依赖的包。
1.首先要将系统安装光碟或则镜像挂载到/mnt/目录下,使系统可以访问
2.挂载好之后我们对yum库房的配置文件进行备份一下
3.删掉/etc/yum.repos.d/下所有文件
4.在/etc/yum.repos.d/目录下新建一个库房配置文件dvd.repo并添加加以下五行:
[dvd] //仓库名字
name=dvd //自定义一个描述字符串,意义不大
baseurl=file:///mnt //路径地址
enable=1 //是否可用,1可用,0不可用
gpcheck=0 //是否检测,0不检测,1检测
5.消除yum缓存:yumcleanall
6.查看yum软件包列表:yumlist|more
左侧带@的表示早已安装的,下面库房名为dvd表示可安装的包
7.此时就可使用yum进行安装我们自己搭建的dvd库房的软件了
7.6yum更换国外源
系统自带的yum源不太管用,由于通常默认都是美国的源,没有国外的访问速率快。所以我们就可以自己自动更换到国外的源。
1.将我们之前做的本地源删除,之后恢复原先的备份。
[root@localhost yum.repos.d]# rm -rf dvd.repo
[root@localhost etc]# cp yum.repos.d.bak/* yum.repos.d/
cp: 略过目录"yum.repos.d.bak/yum.repos.d"
[root@localhost etc]# cd yum.repos.d
[root@localhost yum.repos.d]# ls
CentOS-Base.repo CentOS-Debuginfo.repo CentOS-Media.repo CentOS-Vault.repo
CentOS-CR.repo CentOS-fasttrack.repo CentOS-Sources.repo
[root@localhost yum.repos.d]#
2.删除默认的Base源
[root@localhost yum.repos.d]# rm -rf CentOS-Base.repo
3.使用wget或则curl下载国外的163源,至此就早已更换完成了。
[root@localhost yum.repos.d]# curl -O //mirrors.163.com/.help/CentOS7-Base-163.repo
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 1572 100 1572 0 0 45246 0 --:--:-- --:--:-- --:--:-- 46235
[root@localhost yum.repos.d]# ls
CentOS7-Base-163.repo CentOS-Debuginfo.repo CentOS-Media.repo CentOS-Vault.repo
CentOS-CR.repo CentOS-fasttrack.repo CentOS-Sources.repo
[root@localhost yum.repos.d]#
7.7yum下载rpm包
工作中有时侯我们只想下载一个软件包,并不想安装它。所以我们就须要这样做了,
另一种用法:yuminstall包名--downloadonly
这些用法的话将会下载到一个固定的目录下:
ls/var/cache/yum/x86_64/7/库房名/packages
可以看见我们下载的zsh是base库房的,所以在base/packages/目录下
可以设置使yum保留早已下载的rpm包,供之后升级或重新安装时使用。若果不设置的话,每次yum安装好软件后是不会保留该rpm包的。
更改/etc/yum.conf即可:
[main]
cachedir=/var/cache/yum/$basearch/$releasever //放置下载的包的地方,可以修改为自己想放置的位置。
keepcache=1 //为1时表示保存已经下载的rpm包。0则不保存。
debuglevel=2
7.8源码包安装
先达成一个约定,之后所有的源码包我们都统一置于/usr/local/src/目录下,便捷你,便捷我,便捷你们。
1.下载源码包:wget
2,解压源码包后步入目录下查看:tar-zxvfapr-1.6.3.tar.gz
3.所有的源码包就会有些说明文档
README说明书:
INSTALL安装文档:
3.开始安装并指定安装路径:./configure–prefix=/usr/local/apache
[root@localhost apr-1.6.3]# ./configure -prefix=/usr/local/apache
这一步虽然早已是在预编译了,时间会比较长,假若出现错误则会停止。这儿我们可以使用echo$?来检测上一条命令是否执行成功:
可以看出输出结果为0,表示上一条命令执行成功,倘若为1的话就是执行失败,这时就须要查看报错信息去处理问题了。
4.编译:make
即将编译时间也会许久,同样的,执行完make后我们使用echo$?进行检测,可以看见结果也是0,很完美的结果。
5.即将安装:makeinstall
这样就完成了apr包的编译安装了。可以查看到它早已成功的安装到/usr/local/apache/目录下:
课堂笔记:
rpm安装软件包时,可以加--nodeps选项,表示当要安装的RPM包依赖于其他包时,虽然其他包没有安装,也要安装这个包。如右图:
yumautoremovevim:卸载时连依赖包一起卸载
yummakecache--把服务器的包信息下载到本地笔记本缓存上去
yumcheck-update--检测是否有可用的更新rpm软件包
yumrepolist--查看yum库房标示linux 程序卸载,如图:
扩充:
本文原创地址://q13zd.cn/azrjbdszffzw.html编辑:刘遄,审核员:暂无