一.linux 下安装软件的方式
1.码源安装
码源安装就是安装源代码,采用编译安装,卸载直接删除源代码就可以。安装过程容易出错
2.二进制包安装
就是直接安装已经编译过的源代码,不能看到源代码。安装过程相对简单,不过具有依耐性 可以通过命令直接查询 安装 卸载 升级
3.脚本安装
就是把复杂的安装过程写成脚本 傻瓜式安装(安装的实质还是码源包或者二进制包)
二rpm包安装管理
1.rpm包的依赖性:①树形依赖(从输的末尾安装)②环形依赖(同时安装)③库依赖(一般是.so文件,可以直接去www.rpmfind.net这个网站搜索 然后安装包含的文件)
2.rpm的命名规则:
比如说这个qpm包
3.rpm包 安装 升级 卸载
①安装 rpm -ivh 包全名 (要写包全名,且要绝对路径或cd到目录下安装)
(-i(install) 安装; -v(verbose) 详细信息; -h(hash) 进度; --nodeps 不检测依赖性(绝少使用))
② 升级 rpm -Uvh 包全名(要升级到的软件版本)
如果没有安装这个软件的任何版本,这个命令可以代替rpm -ivh。
③ 卸载 rpm -e 包名(比如Httpd,不需要包全名)
这个命令不同于安装和升级,它可以在任何目录运行,原理是去/var/lib/rpm目录中的数据库(如__db0)中查找对应的软件包(已经安装过的rpm包都在这些数据库中),然后卸载。
***注意***:--nodeps这个选项不管是在安装和卸载的时候,最好都不要使用.
4.rpm包 查询
rpm -q libffi-3.0.13-11.el7.i68 查询这个包是否安装。
rpm -qa 查询已经安装的所有rpm包列表。
rpm -qa |grep http 正则匹配所有已经安装的带个http的rpm包
rpm -qi libffi-3.0.13-11.el7.i68 查询已经安装的rpm包信息
rpm -qip libffi-3.0.13-11.el7.i68 查询未安装的rpm包信息
rpm -qR 包名 (-R 查询软件包的依赖性 ,requires )
rpm -qRp 包名 (-p 查询未安装包信息 ,package)
rpm -ql 包名 (l , list,列表) rpm -qlp 包名 (查询未安装包信息,package):查询包中文件安装位置
5.rpm包 系统文件提取
命令: rpm2cpio 系统文件存在的包全名 | cpio -idv ./bin/ls。
cpoi 选项 < [文件|设备]
-i : copy-in 模式, 还原
-d : 还原时自动新建目录
-v : 显示还原过程
比如 bin下的ls命令损坏了。修复:
① 
② rpm2cpio /mnt/cdrom/Packages/coreutils-8.4-19.el6.i686.rpm | cpio -idv ./bin/ls
③ 把提取的复制到原来损坏的地方
cp /root/bin/ls /bin/
6.rpm包 系统文件校验
rpm -V 包名
例如执行 rpm -V httpd 后, 无任何提示, 代表该文件没有被做任何修改
若提示为:S.5....T. c /etc/httpd/conf/httpd.conf
表示配置文件的 大小 文件内容 修改时间被改变了,通过下面的判断
1-2) 验证内容中的8个信息
S : 文件大小是否改变
M : 文件的类型或文件的权限( rwx )是否被改变
5 : 文件MD5 校验和是否改变( 可以看成文件内容是否改变 )
D : 设备的主从代码是否改变
L : 文件路径是否改变
U : 文件的属主( 所有者 ) 是否改变
G : 文件的属组是否改变
T : 文件的修改时间是否改变
1-3) 验证内容中的文件类型
c (config file) : 配置文件
d (documentation) : 普通文档
g (ghost file) : "鬼"文件, 很少见, 就是该文件不应该被这个RPM包包含
L (license file)
Linux 软件下载安装个人经验
最新推荐文章于 2025-07-07 19:47:35 发布