/usr/bin/ld: cannot find -lxxx 解决思路


问题描述
/usr/bin/ld: cannot find -lxxx
其中 xxx 即表示函式库文件名称,其命名规则是:lib+库名(即xxx)+.so。

可能原因:
1.安装,但相对应的 lib 版本不兼容。
我们需要的是 libjpeg.so.8.0,但安装的是 libjpeg.so.6.0。或者是需要 arm 平台上的 lib,但我们安装的是 X86 架构的,或反之本来是要编译 arm 平台上的却忘了指定交叉编译器,我们需要 32 位但我们安装的是 64 位的。
2.安装了,版本也对了,但 lib(.so.version-num) 的 symbolic link 不正确,没有连结到正确的函式库文件(.so)。
我们需要的是 libjpeg.so.8.0,也安装上了。但是实际使用时我们是查找的 libjpeg.so,就需要相应的一个名为 libjpeg.so 的 link 指向 libjpeg.so.8.0。
3.目录中确实没有相对应的 lib。
系统中没有安装相对应的 lib,安装了,但不在这个目录且不在环境变量中。









阅读全文

一次被入侵和删除木马程序的经历


木马名称
Linux.BackDoor.Gates.5

中午服务器出现流量超高,平时只有几百 M 的流量,那时候发现流量上 G 了,而且提示阿里云有 DDOS 流量攻击行为。
开始也没有什么头绪,就是 ps 查进程,netstat 查端口号,nload 查流量。一时也没发现什么异常。
后来发现 root 的家目录下存在 conf.n 这个文件。
然而我并未创建这个文件,也是感觉问题来了。

/bin/ps,/bin/netsta 程序都是1.2M的大小,然后默认的只有几百 KB。
木马截图.png






阅读全文

Linux tr 命令


tr主要替换字符.
替换字符

[root@myserver test]# cat aaa 
asdsad
asdasd
asdasd
asdasd

[root@myserver test]# cat aaa | tr '\n' ','
asdsad,asdasd,asdasd,asdasd,[root@myserver test]# 

阅读全文