md5sum命令以及ldd命令

2024-04-24 13:48
文章标签 命令 md5sum ldd

本文主要是介绍md5sum命令以及ldd命令,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

[root@test root]# md5sum [-bct] filename
[root@test root]# md5sum [--status|--warn] --check filename
参数说明:
-b :使用 binary 的读档方式,预设为 Windows/DOS 档案型态的读取方式;
-c :检验 md5sum 档案指纹;
-t :以文字型态来读取 md5sum 的档案指纹。
范例:
[root@test root]# md5sum grep-2.5.1-7.8.i386.rpm
5a0c3fcfcd4c3f937644b8cd71a0cf89 grep-2.5.1-7.8.i386.

============================================

root@test1:~# md5sum php-5.2.9.tar.bz2
280d6cda7f72a4fc6de42fda21ac2db7  php-5.2.9.tar.bz2

网站提供的md5

md5: 280d6cda7f72a4fc6de42fda21ac2db7

完全相同,证明软件是安全的。

==========================================================================

ldd命令

[root@test root]# ldconfig [-f conf] [-C cache] [-p]
参数说明:
-f conf :那个 conf 指的是某个文件名称,也就是说,使用 conf 作为 libarary
     函式库的取得路径,而不以 /etc/ld.so.conf 为默认值
-C cache:那个 cache 指的是某个文件名称,也就是说,使用 cache 作为快取暂存
     的函式库资料,而不以 /etc/ld.so.cache 为默认值
-p   :列出目前有的所有函式库资料内容(在 /etc/ld.so.cache 内的资料!)
范例:
[root@test root]# vi /etc/ld.so.conf
/usr/kerberos/lib
/usr/X11R6/lib
/usr/lib/mysql <==这一行是新加入的喔!
 
[root@test root]# ldconfig
# 画面上不会显示任何的信息,不要太紧张!正常的!
 
[root@test root]# ldconfig -p
680 libs found in cache `/etc/ld.so.cache'
libzvt.so.2 (libc6) => /usr/lib/libzvt.so.2
libz.so.1 (libc6) => /usr/lib/libz.so.1
libz.so (libc6) => /usr/lib/libz.so
libx11globalcomm.so.1 (libc6) => /usr/lib/libx11globalcomm.so.1
........

透过上面的动作,我们可以将 MySQL 的相关函式库给他读入快取当中,这样可以加快函式库读取的效率呢!在某些时候,您可能会自行加入某些 Tarball 安装的动态函式库,而您想要让这些动态函式库的相关连结可以被读入到快取当中,这个时候您可以将动态函式库所在的目录名称写入/etc/ld.so.conf 当中,然后执行 ldconfig 就可以啦!

----------------------------------------------------------------------------------------------

说了这么多,那么我如何判断某个可执行的 binary 档案含有什么动态函式库呢?很简单,利用 ldd
就可以晓得了!例如我想要知道 /usr/bin/passwd 这个程序含有的动态函式库有哪些,可以这样做:
[root@test root]# ldd [-vdr] [filename]
参数说明:
-v :列出所有内容信息;
-d :重新将数据有遗失的 link 点秀出来!
-r :将 ELF 有关的错误内容秀出来!
范例:
[root@test root]# ldd /usr/bin/passwd
libuser.so.1 => /usr/lib/libuser.so.1 (0x40021000)
....(略)....
libpam.so.0 => /lib/libpam.so.0 (0x40107000)
....(略)....
# 我们前言的部分不是一直提到 passwd 有使用到 pam 的模块吗?!怎么知道?
# 利用 ldd 察看一下这个档案,看到 libpam.so 了吧?这就是 pam 提供的函式库
[root@test root]# ldd /lib/libc.so.6
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
[root@pc510 vbird]# ldd -v /lib/libc.so.6
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
Version information:
/lib/libc.so.6:
ld-linux.so.2 (GLIBC_2.1) => /lib/ld-linux.so.2
ld-linux.so.2 (GLIBC_2.0) => /lib/ld-linux.so.2
ld-linux.so.2 (GLIBC_PRIVATE) => /lib/ld-linux.so.2
未来如果您常常升级安装 RPM 的套件时( 下一章节会介绍 ),应该常常会发现那个『相依属性』的问题吧!?没错!我们可以先以 ldd 来视察『相依函式库』之间的相关性!以先取得了解!例如上面的例子中,我们检查了 libc.so.6 这个在 /lib 当中的函式库,结果发现他其实还跟 ld-linux.so.2 有关!所以我们就需要来了解一下,那个档案到底是什么套件的函式库呀!?使用 -v 这个参数还可以得知该函式库来自于哪一个套件!像上面的数据中,就可以得到该 libc.so.6 其实可以支持GLIBC_2.1 等的版本!

这篇关于md5sum命令以及ldd命令的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/931926

相关文章

零基础学习Redis(10) -- zset类型命令使用

zset是有序集合,内部除了存储元素外,还会存储一个score,存储在zset中的元素会按照score的大小升序排列,不同元素的score可以重复,score相同的元素会按照元素的字典序排列。 1. zset常用命令 1.1 zadd  zadd key [NX | XX] [GT | LT]   [CH] [INCR] score member [score member ...]

30常用 Maven 命令

Maven 是一个强大的项目管理和构建工具,它广泛用于 Java 项目的依赖管理、构建流程和插件集成。Maven 的命令行工具提供了大量的命令来帮助开发人员管理项目的生命周期、依赖和插件。以下是 常用 Maven 命令的使用场景及其详细解释。 1. mvn clean 使用场景:清理项目的生成目录,通常用于删除项目中自动生成的文件(如 target/ 目录)。共性规律:清理操作

利用命令模式构建高效的手游后端架构

在现代手游开发中,后端架构的设计对于支持高并发、快速迭代和复杂游戏逻辑至关重要。命令模式作为一种行为设计模式,可以有效地解耦请求的发起者与接收者,提升系统的可维护性和扩展性。本文将深入探讨如何利用命令模式构建一个强大且灵活的手游后端架构。 1. 命令模式的概念与优势 命令模式通过将请求封装为对象,使得请求的发起者和接收者之间的耦合度降低。这种模式的主要优势包括: 解耦请求发起者与处理者

linux 判断某个命令是否安装

linux 判断某个命令是否安装 if ! [ -x "$(command -v git)" ]; thenecho 'Error: git is not installed.' >&2exit 1fi

jenkins 插件执行shell命令时,提示“Command not found”处理方法

首先提示找不到“Command not found,可能我们第一反应是查看目标机器是否已支持该命令,不过如果相信能找到这里来的朋友估计遇到的跟我一样,其实目标机器是没有问题的通过一些远程工具执行shell命令是可以执行。奇怪的就是通过jenkinsSSH插件无法执行,经一番折腾各种搜索发现是jenkins没有加载/etc/profile导致。 【解决办法】: 需要在jenkins调用shell脚

Linux命令(4):fg与bg命令

fg、bg、jobs、&、ctrl + z都是跟系统任务有关的,虽然现在基本上不怎么需要用到这些命令,但学会了也是很实用的 一.& 最经常被用到 这个用在一个命令的最后,可以把这个命令放到后台执行 二.ctrl + z 可以将一个正在前台执行的命令放到后台,并且暂停 三.jobs 查看当前有多少在后台运行的命令 四.fg 将后台中的命令调至前台继续运行 如果后台中有多个命令,可以

Linux命令(3):sz与rz命令

一般来说,linux服务器大多是通过ssh客户端来进行远程的登陆和管理的,使用ssh登陆linux主机以后,如何能够快速的和本地机器进行文件的交互呢,也就是上传和下载文件到服务器和本地; 与ssh有关的两个命令可以提供很方便的操作: sz:将选定的文件发送(send)到本地机器 rz:运行该命令会弹出一个文件选择窗口,从本地选择文件上传到服务器(receive) rz,sz是便是Linux

Detectorn2预训练模型复现:数据准备、训练命令、日志分析与输出目录

Detectorn2预训练模型复现:数据准备、训练命令、日志分析与输出目录 在深度学习项目中,目标检测是一项重要的任务。本文将详细介绍如何使用Detectron2进行目标检测模型的复现训练,涵盖训练数据准备、训练命令、训练日志分析、训练指标以及训练输出目录的各个文件及其作用。特别地,我们将演示在训练过程中出现中断后,如何使用 resume 功能继续训练,并将我们复现的模型与Model Zoo中的

Linux命令(11):系统信息查看命令

系统 # uname -a # 查看内核/操作系统/CPU信息# head -n 1 /etc/issue # 查看操作系统版本# cat /proc/cpuinfo # 查看CPU信息# hostname # 查看计算机名# lspci -tv # 列出所有PCI设备# lsusb -tv

Android下执行linux命令

最近在开发过程中 使用了几个命令来对   手机的文件的权限进行修改;现在记录一下: 用到的方法: 1:判断是否有Root权限;  /**      * 判断当前手机是否有ROOT权限      * @return      */     public static boolean isRoot(){         boolean bool = false;         try{