中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

在Linux中如何修改打開文件數量限制

發布時間:2021-10-27 13:50:45 來源:億速云 閱讀:410 作者:小新 欄目:系統運維

這篇文章主要為大家展示了“在Linux中如何修改打開文件數量限制”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“在Linux中如何修改打開文件數量限制”這篇文章吧。

Linux上的進程受到許多限制,這些限制也阻礙它們正確地執行,而且每個進程都有幾個與之相關的限制。shell限制程序可以同時打開的文件句柄的數量。

系統環境

Centos7

為什么要限制打開文件的數量?

因為操作系統需要內存來管理每個文件,所以可以打開的文件數可能會受到限制。由于程序也可以關閉文件處理程序,它可以創建任意大小的文件,直到所有可用磁盤空間都已滿為止。在這種情況下,安全性的一個方面是通過施加限制來防止資源耗盡。

可以看到Linux系統中打開的文件描述符的最大數量,如下所示:

[root@localhost ~]# cat /proc/sys/fs/file-max   180965

<以上代碼可復制粘貼,可往左滑>

該值顯示用戶每次登錄會話可以打開的文件數,你會注意到,結果可能會因系統而異。出于某些原因,可能需要增加限制集的值。這就是為什么Linux系統提供了修改這些限制的可能性(增加或減少),方法是更改每個進程和每個系統打開文件數的最大值。

方法一:使用ulimit命令

ulimit命令可用來增加在shell中打開文件的數量。這個命令是系統內置命令,因此它只影響bash和從它啟動的程序。ulimit語法如下:

ulimit  [選項] [限制數值]

<以上代碼可復制粘貼,可往左滑>

下面選項決定了什么是有限的:

  •  -a 顯示當前所有限制的報告

  •  -f (文件限制)限制shell能創建文件的大小

  •  -n 限制打開的文件描述符的數量。

  •  -H和-S 它們分別被設置為硬限制和軟限制。硬限制可能不會隨之增加,但軟限制可能會增加。如果沒有提供任何選項,ulimit將同時設置硬限制和軟限制。

查看當前打開文件的軟限制,可以使用下面命令:

[root@localhost ~]# ulimit -a |grep open  open files                      (-n) 1024  或者  [root@localhost ~]# ulimit -n  1024

<以上代碼可復制粘貼,可往左滑>

如果需要查看硬限制,適應下面命令:

[root@localhost ~]# ulimit -Hn  4096

<以上代碼可復制粘貼,可往左滑>

下面修改打開文件的數量:

[root@localhost ~]# ulimit -n 2048

<以上代碼可復制粘貼,可往左滑>

然后來查看一下:

[root@localhost ~]# ulimit -Hn  2048  [root@localhost ~]# ulimit -Sn  2048

<以上代碼可復制粘貼,可往左滑>

在Linux中如何修改打開文件數量限制

發現,設置ulimit 值的時候,沒有指定-H或者-S,兩個限制都會設定相同的值。

現在的問題是,如果退出登錄或者重新啟動計算機,該值將被重置。請記住,要使生效,需要編輯用戶的.bashrc或者.bash_profile配置文件,通過將ulimit命令行添加到文件的末尾,可以使參數生效。

[root@localhost ~]# echo "ulimit -n 2048" >> ~/.bashrc

<以上代碼可復制粘貼,可往左滑>

在Linux中如何修改打開文件數量限制

方法二:使用PAM模塊

最好通過名為pam_limits的PAM模塊實現這種限制。需要通過編輯/etc/security/limits.conf文件來配置它。這個文件包含四個基本字段:

domain:描述了在哪些實體中應用限制。它可以是user、group(組名前面加@表示組)或匹配所有用戶,使用(*)通配符。通配符不適應與root用戶。

type:這里表示限制為硬限制還是軟限制?硬限制是由系統管理員添加的,在任何情況下都不能超過,而用戶可以臨時超過軟限制。還可以使用破折號-來表示一個限制是硬的和軟的。請注意,軟限制可以增加到硬限制的值

type:它指定被限制條目的類型。可以是core(限制核心文件大小(KB)),data(最大數據大小(KB)),fsize(最大文件大小(KB)),nofile(打開的文件描述符的最大數目),nproc(最大進程數),等類型。更多類型可以使用man limits.conf查看。

type: 這里使填寫應用限制的數值。

下面實例可以對照了解一下。

[root@localhost ~]# tail -12 /etc/security/limits.conf   #  #  #*               soft    core            0  #*               hard    rss             10000  #@student        hard    nproc           20  #@faculty        soft    nproc           20  #@faculty        hard    nproc           50  #ftp             hard    nproc           0  #@student        -       maxlogins       4  # End of file

<以上代碼可復制粘貼,可往左滑>

在Linux中如何修改打開文件數量限制

要編輯所有用戶打開文件的最大數量,可以在文件末尾添加以下行:

[root@localhost ~]# vim /etc/security/limits.conf   * hard nofile 20000  * soft nofile 15000

<以上代碼可復制粘貼,可往左滑>

在Linux中如何修改打開文件數量限制

之后,需要編輯文件/etc/pam.d/login配置文件,在最后添加以下一條內容:

[root@localhost ~]# vim /etc/pam.d/login   session    required pam_limits.so

<以上代碼可復制粘貼,可往左滑>

在Linux中如何修改打開文件數量限制

保存文件。然后退出登錄,或者重啟系統。可以看到軟限制和硬限制的值都修改成功了:

[root@localhost ~]# ulimit -Sn  15000  [root@localhost ~]# ulimit -Hn  20000

方法三:

查看系統最大打開文件描述符數量:

[root@localhost ~]# cat /proc/sys/fs/file-max   180965

臨時設置該值:

[root@localhost ~]# echo "1000000" > /proc/sys/fs/file-max

在Linux中如何修改打開文件數量限制

永久性設置,需要在/etc/sysctl.conf中設置,并讓它生效:

[root@localhost ~]# echo "fs.file-max = 1000000" >> /etc/sysctl.conf   [root@localhost ~]# sysctl -p  fs.file-max = 1000000

以上是“在Linux中如何修改打開文件數量限制”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

芦山县| 长泰县| 土默特左旗| 南投县| 丰原市| 巧家县| 保康县| 安仁县| 蕉岭县| 内黄县| 衢州市| 庆阳市| 高青县| 保康县| 宜春市| 通江县| 新邵县| 宜昌市| 翁源县| 洪湖市| 临海市| 石楼县| 大城县| 麻阳| 泽普县| 昌平区| 新竹县| 安岳县| 蕉岭县| 兰坪| 什邡市| 无锡市| 都江堰市| 华容县| 凉城县| 丰顺县| 五原县| 衢州市| 厦门市| 攀枝花市| 行唐县|