Linux网络系统管理1/24项目5linux软件包管理Linux网络系统管理2/24掌握利用RPM对软件进行安装、升级和卸载的方法掌握利用TAR对文件进行压缩和解压缩项目学习目标Linux网络系统管理3/24知识背景在一个操作系统下,需要安装实现各种功能的软件包。这些软件包一般都有各自的程序,同时还需要解决其安装、配置、卸载的自动化问题。为此,RedHat针对自己的系统提出了一个较好的办法来管理成千上百的软件。这就是RPM管理系统。RPM即RedHatPackageManagement,在系统中安装了RPM管理系统以后,只要是符合RPM文件标准的打包程序都可以方便地安装、升级、卸载。Linux网络系统管理4/24项目需求某公司架设了一台Linux服务器,项目主管要求新分来的员工小王完成RPM包的下载安装,并将一些重要目录进行打包备份。Linux网络系统管理5/24实施方案①熟练使用rpm操作命令。②下载安装Linuxqq的rpm软件包(微课)。③打包某些文件和目录,并压缩备份。Linux网络系统管理6/24RPM包的管理TAR归档管理任务分解Linux网络系统管理7/24任务5.1RPM包的管理5.1.1RPM简介在Linux操作系统中,有一个系统软件包,它的功能类似于Windows里面的“添加/删除程序”,但是功能又比“添加/删除程序”强很多,它就是RedHatPackageManager(简称RPM)。此工具包最先是由RedHat公司推出的,后来被其他Linux开发商所借用。由于它为Linux使用者省去了很多时间,所以被广泛应用于在Linux下安装、删除软件。Linux网络系统管理8/24任务5.1RPM包的管理5.1.2安装软件包命令语法:rpm-ivh[RPM包文件名称]选项说明:i:表示安装软件包。v:表示在安装过程中显示详细的信息。h:表示显示水平进度条。例5.1安装foo-2.0-1.i386.rpm软件包[root@localhost~]#rpm-ivhfoo-2.0-1.i386.rpmLinux网络系统管理9/24任务5.1RPM包的管理5.1.3卸载软件包命令语法:rpm–e[RPM包名称]选项说明:e:表示卸载软件包,如:[root@localhost~]#rpm-efoo5.1.4升级软件包命令语法:rpm–Uvh[RPM包文件名称]选项说明:U:表示升级软件包(删除与安装的组合)如:[root@localhost~]#rpm-Uvhfoo-2.0-1.i386.rpmLinux网络系统管理10/24任务5.1RPM包的管理5.1.5刷新软件包命令语法:rpm-Fvh[RPM包文件名称]选项说明:F:表示刷新软件包,升级新版本。注意:如果某软件包先前没有安装,RPM刷新选项将不会安装该软件包。这和升级选项不同,因为不管其早期版本是否已安装,升级选项都会安装该软件包。Linux网络系统管理11/24任务5.1RPM包的管理5.1.6查询软件包使用“rpm–q”命令查询软件包安装的信息。1.查询指定软件包的详细信息。功能说明:使用该命令会显示已安装软件包的名称、版本和发行号码。命令语法:rpm-q[RPM包名称]例5-8查询foo软件包是否安装[root@localhost~]#rpm-qfooLinux网络系统管理12/24任务5.1RPM包的管理2.查询系统中所有已安装的RPM软件包。命令语法:rpm–qa例5-8查询系统中所有已安装的RPM软件包[root@localhost~]#rpm–qabasesystem-8.0-4chkconfig-1.3.13.2-1checkpolicy-1.17.5-1…Linux网络系统管理13/24任务5.1RPM包的管理3.查询指定已安装软件包的描述信息。功能说明:显示软件包的名称、描述、发行版本、大小、制造日期、生产商以及其他杂项。命令语法:rpm–qi[RPM包名称]4.查询指定已安装软件包的文件列表。命令语法:rpm–ql[RPM包名称]例5-12查询bind软件包所包含的文件列表[root@localhost~]#rpm–qllinuxwacomLinux网络系统管理14/24任务5.1RPM包的管理5.查询软件包的依赖要求。命令语法:rpm–qR[RPM包名称]6.查询系统中指定文件属于哪个软件包(必须是完整路径)。命令语法:rpm–qf[文件名]例5-14查询/etc/logrotate.d/named文件属于哪个软件包[root@localhost~]#rpm–qf/etc/logrotate.d/namedLinux网络系统管理15/24任务5.2TAR归档管理5.2.1TAR包简介打包——是指将许多文件和目录变成一个总的文件压缩——是将一个大的文件通过压缩算法变成一个小文件Linux系统下最常用的打包程序是tar,使用tar程序打出来的包称为tar包,tar包文件的命令通常都是以.tar结尾的。生成tar包后,就可以用其他的程序来进行压缩了。Linux网络系统管理16/24任务5.2TAR归档管理5.2.1TAR包简介tar最初被用来在磁带上创建备份,现在,用户可以在任何设备上创建备份。利用tar命令可以把一大堆的文件和目录打包成一个文件,这对于备份文件或将几个文件组合成为一个文件进行网络传输是非常有用的。利用tar命令,用户不仅可以为某一特定文件创建备份,还可以在备份中改变文件,或者向备份中加入新的文件。Linux网络系统管理17/24任务5.2TAR归档管理5.2.2TAR包使用和管理命令语法:tar[主选项+辅选项][文件或者目录]说明:tar命令的选项有很多,使用该命令时,主选项是必须要有的,它告诉tar要做什么事情,辅选项是辅助使用的,可以选用。主选项:c:创建新的档案文件。r:把要存档的文件追加到档案文件的未尾。t:列出档案文件的内容,查看已经备份了哪些文件。u:更新文件,用新增的文件取代原备份文件。x:从档案文件中释放文件。Linux网络系统管理18/24任务5.2TAR归档管理辅助选项:f:使用档案文件或设备,这个选项通常是必选的。m:在还原文件时,把所有文件的修改时间设定为现在。M:创建多卷的档案文件,以便在几个磁盘中存放。v:详细报告tar处理的文件信息。如无此选项,tar不报告文件信息。w:每一步都要求确认。z:用gzip来压缩/解压缩文件,加上该选项后可以将档案文件进行压缩,但还原时也一定要使用该选项进行解压缩。…Linux网络系统管理19/24例5.19把/root/abc目录包括它的子目录全部做备份,备份文件为abc.tar[root@localhost~]#tarcvfabc.tar/home/abc/home/abc//home/abc/a/home/abc/b/home/abc/cc:创建新的档案文件。v:详细报告tar处理的文件信息。如无此选项,tar不报告文件信息。f:使用档案文件或设备,这个选项通常是必选的。任务5.2TAR归档管理Linux网络系统管理20/24例5.20查看abc.tar备份文件的内容,并显示出来[root@localhost~]#tartvfabc.tardrwxr-xr-xroot/root02015-09-2000:52:57home/abcdrwxr-xr-xroot/root02015-09-2000:52:57home/abc/adrwxr-xr-xroot/root02015-09-2000:52:57home/abc/bdrwxr-xr-xroot/root02015-09-2000:52:57home/abc/ct:列出档案文件的内容,查看已经备份了哪些文件。任务5.2TAR归档管理Linux网络系统管理21/24例5.21将打包文件abc.tar解包出来[root@localhost~]#tarxvfabc.tarx:从档案文件中释放文件。例5.21将文件d添加到abc.tar包里面去[root@localhost~]#tarrvfabc.tardr:把要存档的文件追加到档案文件的未尾。任务5.2TAR归档管理Linux网络系统管理22/24任务5.2TAR归档管理5.2.3TAR包的特殊使用tar可以在打包或解包的同时调用其他的压缩程序,比如调用gzip、bzip2等。1.tar调用gzipgzip是GNU组织开发的一个压缩程序,以.gz结尾的文件就是gzip压缩的结果。与gzip相对应的解压程序是gunzip,tar中使用参数“z”来调用gzip。如:[root@localhost~]#tarzcvfabc.tar.gz/home/abcLinux网络系统管理23/24任务5.2TAR归档管理2.tar调用bzip2bzip2是一个压缩能力更强的压缩程序,以.bz2结尾的文件就是bzip2压缩的结果。与bzip2相对应的解压程序是bunzip2。tar中使用参数“j”来调用gzip。3.tar调用compresscompress也是一个压缩程序,.Z结尾的文件就是bzip2压缩的结果。与compress相对的解压程序是uncompress。tar中使用Z这个参数来调用gzip。Linux网络系统管理24/24在Linux操作系统下,几乎所有的软件均通过RPM进行安装、卸载及管理等操作。RPM有五种操作模式,分别为:安装、卸载、升级、查询和验证。另外,如果需要对Linux文件和目录创建备份,则用tar命令进行打包和压缩。项目小结Linux网络系统管理25/24