云计算学习路线教程大纲课件:使用RPM工具管理RPM包:
====================================================================================
需要考虑:
-
OS版本,e.g. Centos6/7 # cat /etc/redhat-release
-
系统架构,e.g. i386/x86_64 # uname -m
-
依赖关系,e.g. ntfs-3g-devel 需要依赖ntfs-3g
- rpm包的版本, e.g. 2015/2017
==安装
rpm -ivh local_path
rpm -ivh url_path
[root@tianyun ~]# rpm -ivh ntfs-3g-2017.3.23-1.el7.x86_64.rpm 套件名
[root@tianyun ~]# rpm -Uvh ntfs-3g-2017.3.23-1.el7.x86_64.rpm 套件名
[root@tianyun ~]# rpm -ivh http://dl.fedoraproject.org/pub/epel/7/x86_64/n/ntfs-3g-devel-2017.3.23-1.el7.x86_64.rpm
额外选项:
--nosignature //不检验软件包的签名
--force //强制安装软件包 yum reinstall
--nodeps //忽略依赖关系
软件卸载
#rpm -e 软件名称
-e erase
--force 在安装的时候用(强制覆盖安装)
--nodeps 在卸载的时候用(卸载的时候不检查依赖关系)
RPM包安装信息存储到本地RPM数据库中。。。
==查询
(从本地的rpm数据库)
[root@tianyun ~]# rpm -q ntfs-3g //查询指定包是否安装
[root@tianyun ~]# rpm -qa |grep ntfs
[root@tianyun ~]# rpm -ql ntfs-3g //查询ntfs-3g安装的文件
[root@tianyun ~]# rpm -qf /usr/bin/ntfs-3g //查询该文件属于哪个rpm包
[root@tianyun ~]# rpm -qi ntfs-3g //查询包的information
[root@tianyun ~]# rpm -qc ntfs-3g //查询某个包安装的配置文件
[root@tianyun ~]# rpm -qd vsftpd //查安装的帮助文档
==卸载
[root@tianyun ~]# rpm -e ntfs-3g
[root@tianyun ~]# rpm -e ntfs-3g --nodeps !!!!!!!!!!!!!!不检测依赖关系 直接卸载
案例3:安装如下软件包
vsftpd
samba
nfs-utils
httpd
dhcp
postfix
mysql-server
php
lftp
dos2unix
unix2dos
tigervnc
[root@tianyun Packages]# pwd
/media/cd/Packages
[root@tianyun Packages]# rpm -ivh samba-3.0.33-3.37.el5.i386.rpm samba-common-3.0.33-3.37.el5.i386.rpm
rpm工具管理软件包总结:
-
很难解决包依赖关系
- 如果某个文件没有,很难知道它由哪个rpm包提供,例如 semanage 或 tree 命令是由哪个包提供?
远程拷贝
[root@test tmp]# scp /tmp/aa.txt 172.16.110.1:/tmp/
[root@robin ~]# scp /root/install.log 172.16.110.30:/tmp/
[root@robin ~]# scp 172.16.110.30:/tmp/aa.txt 172.16.110.40:/tmp/