如何查看Linux上程序或进程用到的依赖库
发表于:2025-02-12 作者:千家信息网编辑
千家信息网最后更新 2025年02月12日,本篇文章给大家分享的是有关如何查看Linux上程序或进程用到的依赖库,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。有时候我们会遇到这样一
千家信息网最后更新 2025年02月12日如何查看Linux上程序或进程用到的依赖库
本篇文章给大家分享的是有关如何查看Linux上程序或进程用到的依赖库,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
有时候我们会遇到这样一个场景: 一台Linux电脑要执行某个还没有安装好的程序,如果有这个程序的安装包我们可以直接安装,或者联网安装,但如果没有这个程序的安装包电脑又不能联网,我们可以从另一台已经装了该程序的电脑(确保一样的平台和系统)把这个程序以及依赖库文件拷过去,因此,你需要知道该程序用到的依赖库。 下面介绍怎么查看Linux上程序或进程用到的依赖库。
查看可执行程序的共享库依赖关系
$ ldd /path/to/program
$ ldd /bin/ls linux-vdso.so.1 => (0x00007fff73b06000) libselinux.so.1 => /lib/x86_64-linux-gnu/libselinux.so.1 (0x00007f0ba2672000) libacl.so.1 => /lib/x86_64-linux-gnu/libacl.so.1 (0x00007f0ba246a000) libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f0ba20a3000) libpcre.so.3 => /lib/x86_64-linux-gnu/libpcre.so.3 (0x00007f0ba1e65000) libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f0ba1c61000) /lib64/ld-linux-x86-64.so.2 (0x00007f0ba28b9000) libattr.so.1 => /lib/x86_64-linux-gnu/libattr.so.1 (0x00007f0ba1a5b000)
注意!并不推荐为任何不可信的第三方可执行程序运行ldd,因为某些版本的ldd可能会直接调用可执行程序来明确其库文件依赖关系,这样可能不安全。
取而代之的是用一个更安全的方式来显示一个未知应用程序二进制文件的库文件依赖,使用如下命令: $objdump -p /path/to/program | grep NEEDED
$ objdump -p /bin/ls | grep NEEDED NEEDED libselinux.so.1 NEEDED libacl.so.1 NEEDED libc.so.6
查看运行进程的共享库依赖关系
如果你想要找出被一个运行中的进程载入的共享库,你可以使用pmap命令,它报告一个进程的内存映射,也能显示出运行进程的库文件依赖: $ sudo pmap
$ pmap 52715271: vim /home/linjc/test/test/a.txt0000000000400000 2420K r-x-- vim.gnome000000000085d000 4K r---- vim.gnome000000000085e000 96K rw--- vim.gnome0000000000876000 60K rw--- [ anon ]00000000023b7000 4276K rw--- [ anon ]00007fba38e1f000 44K r-x-- libnss_files-2.19.so00007fba38e2a000 2044K ----- libnss_files-2.19.so00007fba39029000 4K r---- libnss_files-2.19.so00007fba3902a000 4K rw--- libnss_files-2.19.so00007fba3902b000 44K r-x-- libnss_nis-2.19.so00007fba39036000 2044K ----- libnss_nis-2.19.so00007fba39235000 4K r---- libnss_nis-2.19.so00007fba39236000 4K rw--- libnss_nis-2.19.so00007fba39237000 92K r-x-- libnsl-2.19.so00007fba3924e000 2044K ----- libnsl-2.19.so00007fba3944d000 4K r---- libnsl-2.19.so00007fba3944e000 4K rw--- libnsl-2.19.so00007fba3944f000 8K rw--- [ anon ]00007fba39451000 36K r-x-- libnss_compat-2.19.so00007fba3945a000 2044K ----- libnss_compat-2.19.so00007fba39659000 4K r---- libnss_compat-2.19.so00007fba3965a000 4K rw--- libnss_compat-2.19.so00007fba3965b000 4K ----- [ anon ]00007fba3965c000 8192K rw--- [ anon ]00007fba39e5c000 5748K r---- locale-archive......
以上就是如何查看Linux上程序或进程用到的依赖库,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注行业资讯频道。
程序
进程
库文件
电脑
运行
安全
命令
更多
知识
篇文章
实用
取而代之
二进制
内存
场景
就是
工作会
平台
应用程序
报告
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
2018蓝盾杯网络安全
易语言程序如何与传奇服务器对接
软件开发工程师工资表
服务器有线无法联网
订单号数据库中的类型
重庆双桥水果软件开发
物联网络技术专业有前景
面对网络安全有何疑问及思考
成为数据库管理员
上海中兴无线部软件开发
内网服务器绑定域名
涉密软件开发 标准
数据库耗用cpu高
红旗区集乐网络技术
香港cn2服务器免实名
数据库技术是编程吗
vss服务器安装
网络安全攻击例子
反思主题网络安全
商业数据库技术大全
软件开发工程监理费
全球网络安全测试
网络技术第四道大题
IDC服务器 排名
erp系统显示数据库连接失败
软件开发工具包简称
网络安全法规一万至五万
数据库中如何添加列名
xbox不同服务器存档
北华大学图书馆数据库多少个