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萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章