Linux软件安装方式 - Tarball&RPM&YUM( 四 )

rpm -ivh pkgname.i386.rpm --test--justdb使用时机: 由于 RPM 数据库破损或者是某些缘故产生错误时 , 可使用这个选项来更新软件在数据库内的相关信息 。--nosignature使用时机: 想要略过数码签章的检查时 , 可以使用这个选项 。--prefix 新路径使用时机: 要将软件安装到其他非正规目录时 。举例来说 , 你想要将某软件安装到 /usr/local 而非正规的 /bin, /etc 等目录 ,  就可以使用“ --prefix /usr/local ”来处理了 。--noscripts使用时机:不想让该软件在安装过程中自行执行某些系统指令 。说明: RPM 的优点除了可以将文件放置到定位之外 , 还可以自动执行一些前置作业的指令 , 例如数据库的初始化 。如果你不想要让 RPM 帮你自动执行这一类型的指令 , 就加上他吧!

  • RPM卸载软件&重建
# 卸载过程一定是由最上层删除到最下层的依赖, 否则容易出现错误# 尝试卸载 pam 软件$ rpm -qa | grep pam$ rpm -e pam # 发现pam被kbd、sudo等依赖error: Failed dependencies:libpam.so.0()(64bit) is needed by (installed) kbd-1.15.5-15.el7.x86_64libpam.so.0()(64bit) is needed by (installed) sudo-1.8.23-3.el7.x86_64......# 重建资料库$ rpm --rebuilddb
  • RPM 数字签名
# -Va: 列出目前系統上面所有可能被更動過的檔案;$ rpm -Va# -V: 後面加的是軟體名稱, 若該軟體所含的檔案被更動過, 才會列出來;$ rpm -V已安裝的軟體名稱# -Vp: 後面加的是檔案名稱, 列出該軟體內可能被更動過的檔案;$ rpm -Vp 某個 RPM 檔案的檔名# -Vf: 列出某個檔案是否被更動過$ rpm -Vf 在系統上面的某個檔案# 查看 Docker-ce 是否被更改过# 若无输出信息, 则表示没有文件被更改过$ rpm -V docker-ce# 查看 /etc/crontab 是否被修改过$ rpm -Vf /etc/crontabYUM# YUM 安装流程(离线、在线都可安装软件)- 配置网络(网络可通)- 修改数据源- 通过 yum install命令安装软件# YUM options- -y: 當 yum 要等待使用者輸入時, 這個選項可以自動提供 yes 的回應;- --installroot=/some/path: 將該軟體安裝在 /some/path 而不使用預設路徑;# YUM 常用查询命令- search:- info:- list:- provides:# YUM 常用安装&升级命令- install:- groupinstall:- update:
  • YUM查询
# yum [list|info|search|provides|whatprovides] 參數# 搜索 ifconfig 属于那个软件包# yum search 命令行/软件包$ yum search ifconfigLoaded plugins: fastestmirror# yum 系統自己找出最近的 yum serverLoading mirror speeds from cached hostfile # 找出速度最快的那一部 yum server * base: mirrors.ustc.edu.cn # 底下三個軟體庫 , 且來源為該伺服器! * extras: mirrors.aliyun.com * updates: mirrors.ustc.edu.cn====================================================== Matched: ifconfig ======================================================net-tools.x86_64 : Basic networking tools# 查找 net-tools 功能介绍# yum info 软件包$ yum info net-toolsLoaded plugins: fastestmirrorLoading mirror speeds from cached hostfile * base: mirrors.ustc.edu.cn * extras: mirrors.aliyun.com * updates: mirrors.ustc.edu.cnInstalled PackagesName: net-toolsArch: x86_64Version: 2.0Release: 0.25.20131004git.el7Size: 917 kRepo: installedFrom repo: baseSummary: Basic networking toolsURL: http://sourceforge.net/projects/net-tools/License: GPLv2+Description : The net-tools package contains basic networking tools,: including ifconfig, netstat, route, and others.: Most of them are obsolete. For replacement check iproute package.# 列出服务器所有软件名称$ yum listLoaded plugins: fastestmirrorLoading mirror speeds from cached hostfile * base: mirrors.ustc.edu.cn * extras: mirrors.aliyun.com * updates: mirrors.ustc.edu.cnInstalled Packages # 已安装的软件GeoIP.x86_641.5.0-13.el7@anaconda......Available Packages # 可安装的其他软件......# 软件名称版本在那个软件库[base|extras|updates]中# 列出可升级的软件$ yum list updatesLoaded plugins: fastestmirrorLoading mirror speeds from cached hostfile * base: mirrors.ustc.edu.cn * extras: mirrors.aliyun.com * updates: mirrors.ustc.edu.cnbase| 3.6 kB00:00:00docker-ce-stable| 3.5 kB00:00:00extras| 2.9 kB00:00:00updates| 2.9 kB00:00:00Updated Packages# 列出提供 passwd 文件的软件有哪些yum provides passwdLoaded plugins: fastestmirrorLoading mirror speeds from cached hostfile * base: mirrors.ustc.edu.cn * extras: mirrors.aliyun.com * updates: mirrors.ustc.edu.cnpasswd-0.79-6.el7.x86_64 : An utility for setting or changing passwords using PAMRepo: basepasswd-0.79-4.el7.x86_64 : An utility for setting or changing passwords using PAMRepo: @anaconda

经验总结扩展阅读