linux中的管道详解

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
截图:
在这里插入图片描述

发布了30 篇原创文章 · 获赞 24 · 访问量 1万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章