linux教程之Linux体系下检察文件挪用情形Shell命令
使用gcc或g++进行编译,使用gdb进行调试;ldd/full/path/conmmand
1、起首ldd不是一个可实行程序,而只是一个shell剧本
2、ldd可以显现可实行模块的dependency,其道理是经由过程设置一系列的情况变量,以下:LD_TRACE_LOADED_OBJECTS、LD_WARN、LD_BIND_NOW、LD_LIBRARY_VERSION、LD_VERBOSE等。当LD_TRACE_LOADED_OBJECTS情况变量不为空时,任何可实行程序在运转时,它城市只显现模块的dependency,而程序其实不真正实行。要不你能够在shell终端测试一下,以下:
(1)exportLD_TRACE_LOADED_OBJECTS=1
(2)再实行任何的程序,如ls等,看看程序的运转了局
3、ldd显现可实行模块的dependency的事情道理,实在质是经由过程ld-linux.so(elf静态库的装载器)来完成的。我们晓得,ld-linux.so模块会先于executable模块程序事情,并取得把持权,因而当上述的那些情况变量被设置时,ld-linux.so选择了显现可实行模块的dependency.
4、实践上能够间接实行ld-linux.so模块,如:/lib/ld-linux.so.2――listprogram(这相称于lddprogram)ldd命令利用办法(摘自ldd――help)称号ldd-打印共享库的依附干系
纲目ldd[选项]…… 文件……
形貌ldd输入在命令行上指定的每一个程序或共享库必要的共享库。
选项
――version
打印ldd的版本号
-v――verbose
打印一切信息,比方包含标记的版本信息
-d――data-relocs
实行标记重部署,并呈报短少的方针工具(只对ELF格局合用)
-r――function-relocs
对方针工具和函数实行从头部署,并呈报短少的方针工具和函数(只对ELF格局合用)
――help用法信息
注重:
ldd的尺度版本与glibc2一同供应。Libc5与老版本之前供应,在一些体系中还存在。在libc5版本中长选项不撑持。另外一方面,glibc2版本不撑持-V选项,只供应等价的――version选项。
假如命令行中给定的库名字包括/,这个程序的libc5版本将利用它作为库名字;不然它将在尺度地位搜刮库。运转一个以后目次下的共享库,加前缀"./".
毛病:
ldd不克不及事情在a.out格局的共享库上。
ldd不克不及事情在一些十分老的a.out程序上,这些程序在撑持ldd的编译器刊行前已创立。假如你在这类范例的程序上利用ldd,程序将实验argc=0的运转体例,其了局不成预知</p>
系统做了些什么,这需要时间去掌握,(背命令不是一件好的学习方法,相信我你一定会在你背完之前全部忘光),尽量掌握常用命令; 我想即使Linux高手也很难快速准确精练的回答你。 有疑问前,知识学习前,先用搜索。 直到学习Linux这门课以后,我才知道,原来我错了。? 我们这一代90后,从小接触的是windows98,家里条件好的自己有电脑装的是2000,后来又有了XP,上大学时又有了win7。 学习Linux系统在服务中的配置方法及使用方法。Linux在服务器中应用相当广,应对常用的apache,samba,ftp等服务器基本配置清楚了解。[重点,应巩固学习] linux鸟哥的私房菜,第三版,基础篇,网上有pdf下的,看它的目录和每章的介绍就行了,这个绝对原创! 下面看看一个让人无法回答的问题:“救命各位高手,向你们请教一些问题:如何在Linux下配制HTTP、FTP、Samba、DNS、DHCP、Sendmail服务器,谢谢”这样的问题。
页:
[1]