[Linux运维基础]全家桶详解!Linux中RPM包、wget下载、YUM安装、tar包、zip等包管理方式区别与参数详解,附wget下载源码包编译安装方法
文章目录
想要将Linux作为主力系统,或者从事Linux相关的工作(系统运维)等,包是一道绕不过的坎儿。Linux中提供了全面而强大的包与包管理,本文旨在捋清Linux包后缀区别、包管理、包下载使用。
一、RPM、tar、gz
在Linux中,rpm不仅是一种包的管理工具,也泛指包的后缀,所以就把tar包和gz包一并放在这里讲。
1、rpm包格式
从内容上来说,Linux的包可以分为两类,一类是源码包,即未经过编译的包,如后缀.tar,.gz,.zip,.rar;一类是二进制包,可以直接安装使用,而后缀为.rpm就是属于二进制包(通常而言,可以通过后缀判断是否为二进制或者源码包,真正区分是基于软件包里面的文件来判断)。
RPM包命名格式:
- name-version-noarch.rpm 如:
tzdata-java-2020a-1.el7.noarch
- name-version-arch.src.rpm 如:
libpng-1.5.13-7.el7_2.x86_64
RPM包命名格式解析:
- name:软件名称,例如
tzdata-java-2020a
,libpng
等 - version:版本号,
1.5.13-7
分别是“主版本号、次版本号、修正好”,其中-7表示发布版本号,意味着该RPM包是第几次编译生成的。 - arch:表示适用的硬件平台,RPM包支持
i386、i586、i686、sparc、alpha
等 - noarch:表示软件包可以在任意平台上安装
- el7:软件包发行版本,el7表示该软件包适用于RHEL6.X | CentOS7.X
- .rpm:已经编译好的二进制包,可以直接适用rpm命令安装,.src.rpm:源码包,编译生成.rpm后方可安装
2、rpm包管理
RPM工具命令参数详解:
-
-a,-all:查询所有已安装软件包。
-
-q,query:表示询问用户,输出信息。
-
-l, -list: 打印软件包的列表。
-
-f, -file: file 查询包含file的软件包。
-
-i,–info: 显示软件包信息,包括名称,版本、描述。
-
-v,–verbose:打印输出详细信息。
-
-U, --upgrade: 升级RPM软件包。
-
-h,–hash: 软件安装,可以打印安装进度条。
-
–last:列出软件包时,以安装时间排序,最新的在上面。
-
-e, --erase: 卸载RPM软件包。
-
–force:表示强制,强制安装或者卸载。
-
–nodeps: RPM包不依赖。
-
–provides:列出软件包提供的特性。
-
-R,–requires:列出软件包依赖的其他软件包。
-
–scripts:列出软件包自定义的小程序。
常用:i:软件信息,v:输出详细信息,h:安装包,U:升级 ,–nodeps:不检查依赖,q:查询,l:指定路径,e:卸载
RPM工具命令格式:
安装:
rpm {-i|--install} [install-options] PACKAGE_FILE .. [root@YiYu test]# rpm -ivh PACKAGE_FILE ..
升级:
rpm {-U|--upgrade} [install-options] PACKAGE_FILE .. [root@YiYu test]# rpm -Uvh PACKAGE_NAME
卸载:
rpm {-e|--erase} [--allmatches] [--nodeps] [--noscripts] [--test] PACKAGE_NAME ... [root@YiYu test]# rpm -e --nodeps PACKAGE_NAME
查询:
rpm {-q|--query} [select-options] [query-options] [root@YiYu test]# rpm -qa | grep PACKAGE_NAME
3、tar包管理参数
- -c :创建新的档案文件。如果用户想备份一个目录或是一些文件,就要选择这个选项。
- -r :把要存档的文件追加到档案文件的未尾。例如用户已经做好备份文件,又发现还有一个目录或是一些文件忘记备份了,这时可以使用该选项,将忘记的目录或文件追加到备份文件中。
- -t :列出档案文件的内容,查看已经备份了哪些文件。
- -u :更新文件。就是说,用新增的文件取代原备份文件,如果在备份文件中找不到要更新的文件,则把它追加到备份文件的最后。
- -x :从档案文件中释放文件。
- -b :该选项是为磁带机设定的,其后跟一数字,用来说明区块的大小,系统预设值为20(20×512 bytes)。
- -f :指定档案文件名或设备名,这个选项通常是必选的。
- -k :保存已经存在的文件。例如把某个文件还原,在还原的过程中遇到相同的文件,不会进行覆盖。
- -m :在还原文件时,把所有文件的修改时间设定为现在。
- -M :创建多卷的档案文件,以便在几个磁盘中存放。
- -v :详细报告tar处理的文件信息。如无此选项,tar不报告文件信息。
- -w :每一步都要求确认。
- -z :用gzip来压缩/解压缩文件,加上该选项后可以将档案文件进行压缩,但还原时也一定要使用该选项进行解压缩。
常用命令:c:打包,d:比较与之前文件的不同之处,t:列出包内的目录,x:解压,z:带有gz的属性的压缩软件包,f:指定存档或设备(接文件路径),v:显示处理的详情,–delete:从存档中删除,r:追加到tar包中
解包:
[root@YiYu test]# tar -zxvf TAR_NAME
打包:
[root@YiYu test]# tar -cvf FILE_NAME
打包+压缩:
[root@YiYu test]# tar -czvf FILE_NAME
二、wget
1、wget参数
wget是Linux提供的在线下载工具,可以理解为Windows中的迅雷,一般是用作源码包的下载,完成后还需要用户编译安装。
方法:
wget [选项]... :列出rz命令由哪个软件包提供。yum groupuplist: 查询可以用groupinstall安装的组名称。 yum groupinstall “Chinese Support”:安装中文支持。 yum groupremove Chinese Support" :删除程序组Chinese Support。 yum deplist lrzsz: 查看程序lrzsz依赖情况。 yum clean packages:清除缓存目录下的软件包 yum clean headers:清除缓存目录下的headers yum clean all:清除缓存目录下的软件包和headers 常用命令:search:查找搜索,remove:卸载,info:显示信息,update:内核升级或软件更新,update package:更新包,check update:检查可更新的包 ,clean all:清除缓存
四、zip
Linux zip 命令用于压缩文件。zip 是个使用广泛的压缩程序,压缩后的文件后缀名为 .zip。1、语法
zip [-AcdDfFghjJKlLmoqrSTuvVwXyz$][-b <工作目录>][-ll][-n <字尾字符串>][-t <日期时间>][-<压缩效率>][压缩文件][文件...][-i <范本样式>][-x <范本样式>]2、部分参数
- -D: 压缩文件内不建立目录名称。
- -f :更新现有的文件。
- -F: 尝试修复已损坏的压缩文件。
- -q :不显示指令执行过程。
- -r :递归处理,将指定目录下的所有文件和子目录一并处理。
- -S: 包含系统和隐藏文件。
- -v :显示指令执行过程或显示版本信息。
- -V :保存VMS操作系统的文件属性。
- -w :在文件名称里假如版本编号,本参数仅在VMS操作系统下有效。
- -x:<范本样式> 压缩时排除符合条件的文件。
- -X :不保存额外的文件属性。
- -y :直接保存符号连接,而非该连接所指向的文件,本参数仅在UNIX之类的系统下有效。
- -z :替压缩文件加上注释。
- -$ :保存第一个被压缩文件所在磁盘的卷册名称。
- -<压缩效率> :压缩效率是一个介于1-9的数值。
- …(以上是常用参数,全部参数见参考链接4)
3、实例
将 /home/html/ 这个目录下所有文件和文件夹打包为当前目录下的 html.zip:[root@YiYu ~]# zip -q -r html.zip /home/html从压缩文件 cp.zip 中删除文件 a.c[root@YiYu ~]# zip -dv cp.zip a.c参考链接:RPM包命令详解" target=_blank>... [/code]
部分参数:
- -V, --version 显示 Wget 的版本信息并退出。
- -h, --help 打印此帮助。
- -b, --background 启动后转入后台。
- -e, --execute=COMMAND 运行一个“.wgetrc”风格的命令。
- …(一般直接使用wget+URL即可。更详细的见参考链接3)
2、wget下载源码包后编译安装
(1)进入目录[root@YiYu local]# pwd /usr/local(2)下载.tar.gz包[root@YiYu test]# wget url(3)解压包[root@YiYu test]#tar -zxvf TAR_NAME(4)进入包目录[root@YiYu test]# cd ./TAR_FILE(5)执行./configure预编译(源码包内都会有),需要GCC编译器,没有则使用yum安装[root@YiYu test]#yum -y install gcc [root@YiYu test]#yum -y install gcc-c++ [root@YiYu test]# ./configure(6)使用make编译(包目录下)[root@YiYu test]# make(7)使用make install安装(包目录下)[root@YiYu test]# make install三、YUM
YUM(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。1、YUM工作原理
服务器(yum源)
在服务器上面存放了所有的RPM软件包,然后以相关的功能去分析每个RPM文件的依赖性关系,将这些数据记录成文件存放在服务器的某特定目录内。
客户端
如果需要安装某个软件时,先下载服务器上面记录的依赖性关系文件(可通过WWW或FTP方式),通过对服务器端下载的纪录数据进行分析,然后取得所有相关的软件,一次全部下载下来进行安装。2、 YUM参数大全
- yum install lrzsz:安装lrzsz软件包。
- yum search: YUM搜索软件包。
- yum list lrzsz:显示指定程序包安装情况lrzsz.
- yum list:显示所有已安装及可安装的软件包。
- yum remove lrzsz:删除程序包lrzsz。
- yum erase lrzsz:删除程序包lrzsz.
- yum update:内核升级或者软件更新。
- yum update lrzsz:更新lrzsz软件。
- yum checkupdate:检查可更新的程序。
- yum info lrzsz:显示安装包信息lrzsz。
- yum provides:列出软件包提供哪些文件。
- yum provides */rz":列出rz命令由哪个软件包提供。
- yum groupuplist: 查询可以用groupinstall安装的组名称。
- yum groupinstall “Chinese Support”:安装中文支持。
- yum groupremove Chinese Support" :删除程序组Chinese Support。
- yum deplist lrzsz: 查看程序lrzsz依赖情况。
- yum clean packages:清除缓存目录下的软件包
- yum clean headers:清除缓存目录下的headers
- yum clean all:清除缓存目录下的软件包和headers
常用命令:search:查找搜索,remove:卸载,info:显示信息,update:内核升级或软件更新,update package:更新包,check update:检查可更新的包 ,clean all:清除缓存
四、zip
Linux zip 命令用于压缩文件。zip 是个使用广泛的压缩程序,压缩后的文件后缀名为 .zip。1、语法
zip [-AcdDfFghjJKlLmoqrSTuvVwXyz$][-b <工作目录>][-ll][-n <字尾字符串>][-t <日期时间>][-<压缩效率>][压缩文件][文件...][-i <范本样式>][-x <范本样式>]2、部分参数
- -D: 压缩文件内不建立目录名称。
- -f :更新现有的文件。
- -F: 尝试修复已损坏的压缩文件。
- -q :不显示指令执行过程。
- -r :递归处理,将指定目录下的所有文件和子目录一并处理。
- -S: 包含系统和隐藏文件。
- -v :显示指令执行过程或显示版本信息。
- -V :保存VMS操作系统的文件属性。
- -w :在文件名称里假如版本编号,本参数仅在VMS操作系统下有效。
- -x:<范本样式> 压缩时排除符合条件的文件。
- -X :不保存额外的文件属性。
- -y :直接保存符号连接,而非该连接所指向的文件,本参数仅在UNIX之类的系统下有效。
- -z :替压缩文件加上注释。
- -$ :保存第一个被压缩文件所在磁盘的卷册名称。
- -<压缩效率> :压缩效率是一个介于1-9的数值。
- …(以上是常用参数,全部参数见参考链接4)
3、实例
将 /home/html/ 这个目录下所有文件和文件夹打包为当前目录下的 html.zip:[root@YiYu ~]# zip -q -r html.zip /home/html从压缩文件 cp.zip 中删除文件 a.c[root@YiYu ~]# zip -dv cp.zip a.c[url=https://blog.51cto.com/8950428/2103427]参考链接:RPM包命令详解
[url=https://www.geek-share.com/detail/2689416320.html]参考链接:linux Tar 命令参数详解
参考链接:wget命令详解
参考链接:Linux zip命令
- Linux软件管理之RPM、YUM、源码编译安装
- Linux基础3(用户/组管理,rpm,yum,源码安装软件)
- Linux下程序包管理rpm、yum及编译安装详解
- Linux基础--------监控系统、进程管理、软件包管理-------free、dd、kill、 rpm、yum、源码安装python
- 三、Linux软件包分类与管理(本篇包括: Linux软件包的多种安装的方式:编译安装、解压安装、rpm安装、yum安装。并结合编译安装httpd,解压安装jdk环境,rpm安装jdk环境等)
- 自行调研Linux下软件安装的几种方式(源码安装, rpm安装, yum安装). 重点要理解rpm安装和yum安装的区别.
- yum/apt-get,(wget,configure,make&&makeinstall),rpm,哪些是二进制,源码编译,安装
- linux下安装mysql的三种方法:rpm包安装、yum安装、源码包安装
- Linux运维学习历程-第十三天-yum前端工具与源码编译安装
- linux 安装卸载软件包的三种方式:源码、rpm、yum
- linux中wget 、apt-get、yum 这三种安装方式的区别是什么?
- Linux软件安装管理之--RPM与YUM详解
- linux程序包安装、管理工具rpm、yum和源码安装
- linux 安装卸载软件包的三种方式:源码、rpm、yum
- Linux下安装mysql的方式(yum和源码编译两种方式)
- linux的yum更换国内源、yum下载rpm包及源码包安装
- Linux下rpm、yum和源码三种安装方式详细介绍
- LINUX下PHP以编译方式安装,编译参数详解析!
- 运维笔记10 (Linux软件的安装与管理(rpm,yum))
- Linux程序包管理之yum仓库、源码编译安装