linux中的管道
管道是什么?
在linux中,所有的一切都被当成文件来处理,我们把处理文件的过程叫做流,而管道就是控制流的方向。管道的专用符号是 “|”,当前一个流结束时,通过符号"|",前一个流的输出会自动变为后一个流的输入。
怎么诊断程序中的管道问题
但是具体应用过程中可能遇到一些问题,比如说提示错误:管道错误: 打开的文件过多,这个时候你先要知道是哪个进程的管道数超标。
使用top命令查看当前运行的进程动态
按b键,将当前执行程序进程高亮
截图:
验证该PID:ps -eo pid,lstart,etime|grep pid
截图:
时间对的上就是它了
查看该PID的文件打开数目:lsof -p pid |wc -l
截图:
怎么修改管道配置
查看管道配置:ulimit -a
其中open files就是限制文件打开数目,这个是已经修改后的,修改之前是1024,修改后变为65535
截图:
修改管道配置:vim vim /etc/security/limits.conf
在文档后面添加:
* soft nofile 65535
* hard nofile 65535
应用配置: vim /etc/pam.d/login
在文档后面添加:
session required /lib/security/pam_limits.so
查看修改情况:ulimit -a
截图: