PHP Startup: Unable to load dynamic library '/usr/lib64/php/modules/mysql.so' - libmysqlclient.so.16:...on line 0 ldconfig -v | grep mysql ls -lhrnt /usr/lib64/mysql echo /usr/lib64/mysql >> /etc/ld.so.conf
:在查找过程中,同时进行插入或者删除数据; 内查找:全部过程中都在内存中进行,为内查找; 外查找:全部过程中需要访问外存,为外查找; 性能评价:ASL(Average Search Length),平均比较长度...,需要比较n次; 平均时间复杂度:ASL = (n+...+1)/n = (n+1)/2,O(n); 二分查找:二分查找又称为折半查找;思想是将查找的关键字与中间记录关键字进行比较,如果相等则查找结束...;效率介于顺序查找和二分查找之间; 平均查找长度:二分查找 > 分块查找 > 顺序查找; 适用性:顺序搜索无条件限制,二分查找要求数据有序;分块查找要求分块有序; 存储结构:顺序查找和分块查找适用于顺序表和链表...;二分查找适用于顺序表; 分块查找优点:分块查找效率介于顺序查找和二分查找之间,可以用于动态数据查找; 广度优先搜索(BFS):Breadth First Search; 从树的根开始,从上打下,从左到右遍历树的节点...; 深度优先搜索(DFS): Depth First Search; 沿着树的深度优先遍历树的节点,直到到达叶子节点,再进行回溯;根绝根节点遍历顺序的不同,又分为先序,中序和后序遍历; 关于深度优先搜索和广度优先搜索
下面的内容大多都是连接中的,穿插我自己的笔记 牵扯到ELF格式,gcc编译选项待补,简单实用的说明一下,对Linux下的so文件有个实际性的认识。 1.so文件是什么?...这个特性使得在Linux下,升级使得共享库的程序和定位错误变得十分容易。 ...在Linux中,应用程序通过使用soname,来指定所希望库的版本,库作者可以通过保留或改变soname来声明,哪些版本是兼容的,这使得程序员摆脱了共享库版本冲突问题的困扰。...-lc: -l 是直接加上某库的名称,如-lc是libc库 -L 是库的路径,搜索的时候优先在-L目录下搜索 ———————————————————————— 一个头文件:s.h #ifndef...下面的还没细看,汗 4.库的初始化,解析: windows下的动态库加载,卸载都会有初始化函数以及卸载函数来完成库的初始化以及资源回收,linux当然也可以实现。
/lib/ld-linux.so.2以及它的64位版本/lib64/ld-linux-x86-64.so.2虽然看起来是共享库文件,但实际上他们可以独立运行。他们的功能是负责动态加载。
一、动态库so的编译 以一个例子来说明。...这里有三个so_test.h, test_a.c, test_b.c #ifndef _SO_TEST_H_ #define _SO_TEST_H_ void test_a(); void test_b.../so 表示当前路径的上一层目录的so子文件夹中) -l参数:指明要连接的库的名字,如-ltest 表示要链接libtest.so库 三、运行main 现象:运行出错,报错信息: error while...如:ldd main,得到: linux-gate.so.1 => (0xb776f000) libtest.so => /usr/lib/libtest.so (0xb7754000...) libc.so.6 => /lib/i386-linux-gnu/libc.so.6 (0xb75a3000) /lib/ld-linux.so.2 (0xb7770000
,查询改进程的权限为80,这也就说明 Linux下进程的优先级本质就是数字。 ...其实Linux下优先级是可以被修改的,修改范围为 [60, 99] 这40范围内,且 进程的默认权限值是80。而优先级 数字越小,表示该进程的 优先级越高!...其实,Linux系统支持用户调整优先级,但并 不是让用户直接修改 pri 值,而是修改 nice 值。而 nice 值 不是 优先级,而是 优先级的 修正数据。...Linux的调度与切换 Linux调度切换是学习Linux系统编程重要知识,我们提前了解一下: 我们之前说过,CPU并不会把一个进程全部执行完才切换下一个进程,而是 基于时间片进行轮转执行的。...进程的独立性是学习Linux系统编程特别重要的一个知识,多个进程在系统里同时运行,但是他们互不干扰,一个进程挂了不会影响另外的进程,就算是父子进程也是如此。
LInux中的查找 一、grep 二、find 2.1 基本用法 2.2 -exec 命令选项 2.3 配合 xargs 命令 三、awk 一、grep Global Regular Expression...1、查找时不区分字符串的大小写 grep -i ${“查找的字符串”文件名} 2、查找时使用正则表达式,匹配符合的字符串 grep -e ${“正则表达式”文件名} 3、查找不匹配指定字符串的行: grep...-v ${“被查找的字符串”文件名} 4、查找时显示被查找字符串所在的行数 grep -n ${“查找的字符串”文件名} 5、其他 -q 或 --quiet或--silent : 不显示任何信息。...-amin n 查找系统中最后N分钟访问的文件 -atime n 查找系统中最后n*24小时访问的文件 -cmin n 查找系统中最后N分钟被改变文件状态的文件 -ctime n 查找系统中最后...n*24小时被改变文件状态的文件 -mmin n 查找系统中最后N分钟被改变文件数据的文件 -mtime n 查找系统中最后n*24小时被改变文件数据的文件 示例 根据关键字查找 # 在当前目录查找以
一般我们在linux下有多种查找命令,比如whereis、locate等等。...find用于指定文件目录(和子目录)中查找文件路径中包含指定字符串的所有文件。 参考:http://www.howsoftworks.net/linux-tutorial-tools
常用命令 which:命令查找 whereis:在系统特定目录下查找文件 locate:利用数据库查找文件 find:文件查找 命令查找 which which 命令用于查找指定命令(脚本文件)的可执行文件路径...】环境变量所规范的路径,去查找执行文件的文件名,有些命令不在环境变量所指定的路径中,则无法查找到 在系统特定目录下查找文件 whereis whereis 命令只是在特定目录下查找文件并返回路径,并没有查找硬盘上的所有文件...,所以查找速度非常快。...命令格式: whereis [参数] 文件名或目录名 # 参数 -l:列出 whereis 会查找的几个主要目录 -b:只查找 binary 二进制格式的文件 -m:只查找说明文件 manual 路径下的文件.../man1/ls.1.gz 利用数据库查找文件 locate locate 命令查找的数据是由已建立的数据库 /var/lib/mlocate/ 里面的数据所进行的,并没有查找硬盘上的所有文件,所以查找速度非常快
find '目标目录' | grep '文件名'
在Linux中描述进程的结构体叫做task_struct。...一个进程可以有几个状态(在Linux内核里,进程有时候也叫做任务)。...4.1 基本概念 cpu资源分配的先后顺序,就是指进程的优先权(priority) 优先权高的进程有优先执行权利。...配置进程优先权对多任务环境的linux很有用,可以改善系统性能 还可以把进程运行到指定的CPU上,这样一来,把不重要的进程安排到某个CPU,可以大大改善系统整体性能 4.2 查看系统进程 在linux...,那么该程序将会优先级值将变小,即其优先级会变高,则其越快被执行 所以,调整进程优先级,在Linux下,就是调整进程nice值 nice其取值范围是-20至19,一共40个级别 4.2.2 PRI vs
但是linux下的比较少,本文记录一下如何编译。 zlib官方网站:http://www.zlib.net 首先,下载源码来安装zlib软件包。目前最新的版本是1.2.8。.../configure #make 这个时候在当前目录就会有3个libz.so的文件了,我们把这个文件copy到自己的工程目录就可以了。
简介 之前写了个hookso的工具,用来操作linux进程的动态链接库行为,本文从so注入与热更新入手,简单讲解一下其中的原理,配合源码阅读效果更佳。...这里要介绍一下linux的ptrace函数。...函数查找 我们知道,linux的可执行文件是elf文件格式,动态链接库其实也是elf格式。关于elf,有很多资料,这里简单讲一下elf结构。...查找过程 查找函数地址的过程也分为两步,查找so起始内存地址,查找函数所在so偏移,两者相加就是函数的地址 查找so起始地址 首先,我们要查找某个so的函数,就得先找到so所在的内存位置才行。...查找函数所在so偏移 前面我们找到了so的起始地址,也分析了elf格式,剩下的就是照着elf关系图,通过名字查找函数了。
操作完成之后查看libc.so.6,发现还是之前的引用,但输入node命令可正常使用 总结 1....由于不是个人服务器,达到目的即可,就不再深入的操作 2. libc.so.6本身就是Linux的核心类库,之前操作过一次就发生了很大的问题 3. 内网办公限制着实很多,但是只要耐心问题都能解决 4....操作Linux 时需 谨慎!再谨慎!(以免后悔) end
在windows下还是很容易使用,如何使用的案例比比皆是,而且很容易就找到已经编译好的动态库进行测试,但是最后在linux下部署的时候,发现不好找已经编译好的so库文件,最后没办法只好自理更生。...我是使用腾讯的SDK里面附带的curl库的源码(ps,腾讯SDK的示例代码貌似没在linux测试过,我编译后使用他们的代码,发现很容易崩溃,需要修改才能运行,但是windows正常)。...然后为了能够方便的移植我们的程序,把include/lib下面的头文件和so库文件拷贝到自己的工程目录就能使用curl库了。
如果对前面Linux进程不太熟悉可以先阅读: Linux进程 本篇主要内容: 僵尸进程和孤儿进程 Linux进程优先级 1. 僵尸进程 僵尸进程就是处于僵尸状态下的进程!...配置进程优先权对多任务环境的linux很有用,可以改善系统性能。...NI :NICE值,表示优先级的修改数据 NICE其取值范围是-20至19,一共40个级别 Linux进程的优先级数值范围:60~99 Linux中默认进程的优先级都是:80 Linux是支持动态优先级调整的...NICE取值范围判断 我们通过视频可以看到Linux下的优先级取值范围是60 ~ 99,所以NI的取值范围是 -20 ~ 19,当输入的NI值小于-20时系统会自动将NI变成-20,当输入的NI值大于19...总结 本篇文章前部分紧贴上篇Linux进程,分析完了Linux下常见的进程状态,然后初步了解了Linux进程优先级,而进程优先级与前面内容相差较大,希望大家能够多花点时间理解!
在命令行中按名称、部分名称或日期查找文件的最简单方法 如果要在 Linux 系统上查找文件,find 命令可以轻松实现。您可以使用“查找”按名称、部分名称、日期、修改时间、大小等搜索文件。...如果没有,您可以从根 (/) 目录开始搜索整个 Linux 系统。...这篇wikiHow文章将教你如何在Linux中使用find命令来查找任何文件,从你下载的文件到配置文件 你应该知道的事情 find 的基本语法是 find <search...find /path -type f -iname filename您可以使用此命令的变体来查找 Linux 计算机上的任何文件或目录。我们将命令分解为简单的部分。...find / -type d -iname "*lib*" 此命令查找 Linux 文件系统上包含字符串“lib”的所有目录。 使用该命令使搜索结果更易于管理。
对于文件查找,我们最好用的还是属于find命令了,在说find命令之前,先把另外几个查找命令介绍一下。...locate命令 locate也能查询命令的相关路径以及帮助等,但是它不是从PATH路径中进行遍历的,它是从Linux中的一个数据库mlocate.db进行查询的,mlocate.db数据库位于/var...这是由于locate进行查找是在mlocate.db数据库进行查找的,但是我们刚刚创建的这个文件并不在这个数据库中,所以我们需要使用updatedb进行更新数据库 ?...对于find命令的使用有一个大致的公式 find 要查找的位置 [限制条件] 要查找的文件名 举个例子,从根目录下寻找所有的文件名中包含balabala的文件 ?...推荐阅读 这居然是一个RCE漏洞 Linux重定向及反弹shell详解 部署IIS+PHP+Oracle环境 Linux目录结构及开机流程详解 部署IIS+PHP+SQL server环境
在linux的日常管理中,find的使用频率很高,熟练掌握对提高工作效率很有帮助。 find的语法比较简单,常用参数的就那么几个,比如 -name、 -type、 -ctime等。...find语法如下: find(选项)(参数) 根据文件名查找 列出当前目录以及子目录下的所有文件 find . 找到当前目录下名字为 11.png的文件 find ...../*[0-9]+\.png" 根据路径查找 找出当前目录下,路径中包含 wysiwyg的文件/路径。 find ....-path "*wysiwyg*" 根据文件类型查找 通过 -type进行文件类型的过滤。...f 普通文件 l 符号连接 d 目录 c 字符设备 b 块设备 s 套接字 p Fifo 举例,查找当前目录下,路径中包含 wysiwyg的文件 find .
3、find命令的选项: -depth:在查找文件时,首先查找当前目录中的文件,然后再在其子目录中查找。 ...-name:按照文件名查找 -perm:按照文件权限来查找 -prune:可用使find命令不在当前制定的目录中查找,如果同时使用-depth选项,那么-prune将被...find忽略 -user:按照文件属主查找 -group:按照文件属组查找 -nouser:查找无有效属主的文件 -nogroup...2)根据关键字查找:(查找当前目录以.log结尾的文件) [root@bogon log]# find ....工作特点:查找速度快,模糊查找,非实时查找。 -i 执行区分大小写的搜索 -n x 只列举前x个匹配选项
领取专属 10元无门槛券
手把手带您无忧上云