进程启动与动态加载库信息

来源:互联网 发布:qq没有软件升级 编辑:程序博客网 时间:2024/05/20 17:27
    通过ipsec start命令启动
ipsec 实际是一个可执行脚本,放在/usr/local/sbin下,他实际调用了/usr/local/libexec/ipsec/目录下的starter。

通过ldd命令可以查看相关进程的依赖库信息。
[root@flexbng-dev ipsec]# ll
total560
-rwxr-xr-x.1 root root 98048Oct1614:50 charon
-rwxr-xr-x.1 root root 16741Oct1614:50 _copyright
-rwxr-xr-x.1 root root121656Oct1614:50 scepclient
-rwxr-xr-x.1 root root234203Oct1614:50 starter
-rwxr-xr-x.1 root root 70709Oct1614:50 stroke
-rwxr-xr-x.1 root root 19225Oct1614:50 _updown
[root@flexbng-dev ipsec]# ldd-r charon
linux-vdso.so.1=> (0x00007ffff65ff000)
libstrongswan.so.0=>/usr/local/lib/ipsec/libstrongswan.so.0(0x00007fbfc0cb3000)
libhydra.so.0=>/usr/local/lib/ipsec/libhydra.so.0(0x00007fbfc0aac000)
libcharon.so.0=>/usr/local/lib/ipsec/libcharon.so.0(0x00007fbfc07f6000)
libm.so.6=>/lib64/libm.so.6(0x00007fbfc04e6000)
libpthread.so.0=>/lib64/libpthread.so.0(0x00007fbfc02c9000)
libdl.so.2=>/lib64/libdl.so.2(0x00007fbfc00c5000)
libc.so.6=>/lib64/libc.so.6(0x00007fbfbfd04000)
libunwind.so.8=>/lib64/libunwind.so.8(0x00007fbfbfae9000)
/lib64/ld-linux-x86-64.so.2(0x00007fbfc0fa6000)

可以看到,主要的charon进程,依赖与libcharon.so、libstrongswan.so、libhydra.so。这几个so在/usr/local/lib/ipsec目录下
再看一下各个lib的依赖关系,可以看到 strongswan是基本的,hydra依赖与strongswan,charon依赖于他们两个。

进程动态运行时,需要找动态库,按照/etc/ld.so.conf指明的目录去加载


0 0
原创粉丝点击