使用yum管理RPM软件包
yum概念
yum的关键之处是要有可靠的软件仓库,可以是HTTP站点、FTP站点或者是本地软件池,但必须包括rpm的header,header包括了RPM软件包的各种信息,包括描述、功能、提供的文件以及依赖性等。正是收集了这些header并加以分析,其才能自动化地完成余下的任务。 yum的特点
repo是yum源软件仓库的配置文件默认存储在/etc/yum.repos.d目录中 例如:方括号[]里面是软件源的名称,会被yum识别;Centos是软件仓库的名称,$releaserver定义了发行版本,baseurl是指定了软件包来源,支持的协议有http://(HTTP网站)、ftp://(FTP网站)以及file:///(本地源)这三种。enabled表示仓库中定义的源是否启用,0表示禁用,1表示启用。gpgcheck表示对从这个软件仓库中下载的RPM软件包将进行GPG校验,已确定该软件包的来源是有效和安全。gpgkey是定义用于校验的GPG密钥 [[email?protected] ~]# cat /etc/yum.repos.d/CentOS-Sources.repo # CentOS-Sources.repo # # The mirror system uses the connecting IP address of the client and the # update status of each mirror to pick mirrors that are updated to and # geographically close to the client. You should use this for CentOS updates # unless you are manually picking other mirrors. # # If the mirrorlist= does not work for you,as a fall back you can try the # remarked out baseurl= line instead. # # [base-source] name=CentOS-$releasever - Base Sources baseurl=http://vault.centos.org/centos/$releasever/os/Source/ gpgcheck=1 enabled=0 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7 #released updates [updates-source] name=CentOS-$releasever - Updates Sources baseurl=http://vault.centos.org/centos/$releasever/updates/Source/ gpgcheck=1 enabled=0 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7 #additional packages that may be useful [extras-source] name=CentOS-$releasever - Extras Sources baseurl=http://vault.centos.org/centos/$releasever/extras/Source/ gpgcheck=1 enabled=0 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7 #additional packages that extend functionality of existing packages [centosplus-source] name=CentOS-$releasever - Plus Sources baseurl=http://vault.centos.org/centos/$releasever/centosplus/Source/ gpgcheck=1 enabled=0 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
创建本地软件仓库要在本地磁盘上创建本地软件仓库配置软件仓库配置文件,还要将linux系统安装光盘中的软件包复制到系统中。
例如:创建配置文件/etc/yum.repos.d/rhel.repo内容如下 [[email?protected] ~]# mkdir /root/yum.repos.d [[email?protected] ~]# vi /root/yum.repos.d/rhel.repo [[email?protected] ~]# cat /root/yum.repos.d/rel.repo cat: /root/yum.repos.d/rel.repo: No such file or directory [[email?protected] ~]# cat /root/yum.repos.d/rhel.repo name=Red Hat Enterprise Linux 7 baseurl=file:///root/fhel enabled=1 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
[root@localhost ~]# createrepo /root/rhel
如果提示createrepo命令不存在时执行以下命令 [root@localhost ~]# yum -y install createrepo
yum命令可以安装、更新、删除、显示软件包。yum可以自动进行系统更新,基于软件仓库的元数据分析,解决软件包依赖性关系。命令语法:yum [选项] [命令]
yum目录部分描述
tar包:用户将文件和目录进行归档或压缩以做备份用。比如:将许多文件一起一个单独的磁带或磁盘归档,并能从归档中单独还原所需文件命令语法:tar [选项] [文件|目录]
例如:归档/root/abc目录,生成文件为/root/abc.tar [[email?protected]t ~]# tar cvf /root/abc.tar /root/abc tar: Removing leading `/‘ from member names /root/abc [[email?protected] ~]# ls -l /root/abc.tar -rw-r--r--. 1 root root 10240 Jul 23 18:21 /root/abc.tar
使用tar命令指定选项时可以不在选项前面输入-,比如cvf和-cvf起到作用是一样的 例2:将文件/root/abc/d添加到/root/abc.tar归档文件中 [[email?protected] ~]# touch /root/abc d [[email?protected] ~]# tar rvf /root/abc.tar /root/abc/d tar: Removing leading `/‘ from member names tar: /root/abc/d: Cannot stat: Not a directory tar: Exiting with failure status due to previous errors [[email?protected] ~]# tar tvf /root/abc.tar -rw-r--r-- root/root 282 2019-07-17 18:20 root/abc
tar命令特殊使用:在打包或解包的同时调用其他的压缩程序,比如调用gzip、bzip2和xz等。
gzip是GNU组织开发的一个压缩程序,以".gz“结尾的文件就是gzip压缩的结果,与gzip想对应的解压缩程序是gunzip、tar目录中使用-z选项来调用gzip 例子:将/root/abc目录压缩成/root/abc.tar.gz文件 [[email?protected] ~]# tar tvf /root/abc.tar -rw-r--r-- root/root 282 2019-07-17 18:20 root/abc [[email?protected] ~]# tar zcvf /root/abc.tar.gz /root/abc tar: Removing leading `/‘ from member names /root/abc [[email?protected] ~]# ls -l /root/abc.tar.gz -rw-r--r--. 1 root root 243 Jul 23 18:54 /root/abc.tar.gz
bzip2是一个压缩能力更强的压缩程序,以".bz2"结尾的我呢见就是bzip2压缩的结果,与bzip相对应的解压程序是bunzip2. tar命令中使用-j选项来调用bzip2 例子:将/root/abc目录压缩成/root/abc.tar.bz2文件 [[email?protected] ~]# tar jcvf /root/abc.tar.bz2 /root/abc tar: Removing leading `/‘ from member names /root/abc [[email?protected] ~]# ls -l /root/abc.tar.bz2 -rw-r--r--. 1 root root 0 Jul 23 18:59 /root/abc.tar.bz2
xz是一个使用LZMA压缩算法的无损数据压缩文件格式,以".xz"结尾的文件就是xz压缩的结果。tar目录中使用-J选项来调用。 例子:将/root/abc目录压缩成/root/abc/tar.xz [[email?protected] ~]# tar Jcvf /root/abc.tar.xz /root/abc tar: Removing leading `/‘ from member names /root/abc [[email?protected] ~]# ls -l /root/abc.tar.xz -rw-r--r--. 1 root root 300 Jul 23 19:07 /root/abc.tar.xz
查看压缩文件/root/abc.tar.xz [email?protected] ~]# tar Jtvf /root/abc.tar.xz -rw-r--r-- root/root 282 2019-07-23 18:47 root/abc
将压缩文件/root/abc.tar.xz文件解压缩出来 摘自:《Linux实用教程》人民邮电出版社出版发行 於岳编著root@localhost ~]# tar Jxvf /root/abc.tar.xz root/abc
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |