博客
关于我
linux下的 lib文件的学习思考
阅读量:790 次
发布时间:2023-02-03

本文共 613 字,大约阅读时间需要 2 分钟。

某天,一台测试用的虚拟机可以PING其他机,但SSH连接却报错。运维同学仔细检查了SSHD_CONFIG配置文件,发现配置正确,理论上应该没问题。于是,他们进一步测试,发现无论是连接本地还是其他机器都无法成功。

经过深入排查,开发同学提到他们测试一个软件时,意外删除了某个库文件。这引起了我们的注意,我们核实后发现,确实缺少了两个库文件。我们通过挂载系统光盘或者从正常虚机复制这两个文件,将它们拷贝到 lib64 目录下,问题解决了。

这种经历让我对Linux中的库文件有了更深入的了解。Linux系统中的共享库和静态库主要区别在于程序运行时它们被如何加载。共享库是在运行时动态加载的,而静态库则是在编译时进行静态链接的。

默认情况下,GCC会优先使用共享库文件,因此大家在开发中如果遇到依赖缺失问题,优先检查是否缺少共享库。也要注意,遇到问题时保留配置文件和相关日志,以便快速排查原因。

在实际工作中,时常会遇到动态链接库的问题。我学习了如何使用 ldd 和 nopager命令来查看程序的依赖,并习惯了频繁使用这些工具来排查问题。通过实践,我也掌握了静态库和动态库的编译与使用技巧,特别是在多个开发环境之间切换时,无论是静态链接还是动态链接都能应对!

此次经历让我明白,了解基础知识不仅仅是为了应付问题,更是提升工作效率的重要途径。系统管理员和开发人员都应该时刻关注系统的稳定性和完整性,以及如何通过命令工具高效排查问题。

转载地址:http://xjzfk.baihongyu.com/

你可能感兴趣的文章
Linux中ftp连接530错误的解决方法
查看>>
Linux中install命令你有用过吗?用途很大!
查看>>
Linux中Kill进程的N种方法
查看>>
Linux中Mysql的简介和安装
查看>>
Linux中MySQL配置文件my.cnf参数优化
查看>>
Linux中rpm命令用法
查看>>
Linux中systemctl命令骨灰级详解
查看>>
Linux中telnet命令
查看>>
Linux中vim编辑器的使用
查看>>
Linux中yum和apt-get用法及区别
查看>>
linux中~和/的区别
查看>>
linux中下载和安装git2.3.0
查看>>
Linux中传输文件如何做到又快又安全?同学,scp命令了解一下!
查看>>
linux中出现不在 sudoers 文件中。此事将被报告的解决方法
查看>>
linux中分区工具的使用
查看>>