如何查询已安装RPM包的权限及文件权限?
查询已安装RPM包的文件权限方法
嘿,我来帮你搞定这个RPM权限查询的问题~其实你已经摸到门道了,只是差一点点参数调整而已:
- 对于已安装的RPM包,不需要依赖原RPM文件,直接用
rpm -qlv命令就行!这里的关键是去掉你提到的-p参数——因为-p是专门用来指定未安装的RPM包文件的,已安装的包在系统里已经有完整的元数据记录,直接用包名查询就够了。
举个实际例子,如果你想查已安装的 httpd 包所有文件的权限,执行这条命令:
rpm -qlv httpd
输出的每一行开头部分,就是对应文件的权限、所属用户和用户组,格式和 ls -l 是一致的,一目了然。
- 如果只想定位某个特定文件的权限,可以结合
grep过滤,比如找httpd的主程序权限:
rpm -qlv httpd | grep "/usr/sbin/httpd"
再帮你梳理下两种场景的区别:
未安装的RPM包文件:
rpm -pqlv package-name.rpm(需要指定包文件路径)
已安装的RPM包:rpm -qlv package-name(直接用包名,无需原文件)
这样不管有没有原RPM文件,都能轻松查到权限信息啦!
内容的提问来源于stack exchange,提问作者Zack




