日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

linux hosts文件如何修改_3 种方法教你在 Linux 中修改打开文件数量限制

發布時間:2024/7/5 linux 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux hosts文件如何修改_3 种方法教你在 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

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

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

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

方法二:使用PAM模塊

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

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

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

type:它指定被限制條目的類型??梢允莄ore(限制核心文件大小(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

要編輯所有用戶打開文件的最大數量,可以在文件末尾添加以下行:[root@localhost?~]#?vim?/etc/security/limits.conf?
*?hard?nofile?20000
*?soft?nofile?15000

之后,需要編輯文件/etc/pam.d/login配置文件,在最后添加以下一條內容:[root@localhost?~]#?vim?/etc/pam.d/login?
session????required?pam_limits.so

保存文件。然后退出登錄,或者重啟系統??梢钥吹杰浵拗坪陀蚕拗频闹刀夹薷某晒α?#xff1a;[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?

永久性設置,需要在/etc/sysctl.conf中設置,并讓它生效:[root@localhost?~]#?echo?"fs.file-max?=?1000000"?>>?/etc/sysctl.conf?
[root@localhost?~]#?sysctl?-p
fs.file-max?=?1000000
總結

所有進程打開的文件描述符數量不能超過/proc/sys/fs/file-max。單個進程打開的文件描述符數不能超過user limit中nofile的soft limit。nofile的soft limit不能超過其hard limit。

END

官方站點:www.linuxprobe.com

Linux命令大全:www.linuxcool.com

劉遄老師QQ:5604922

Linux技術交流群:193666693

(新群,火熱加群中……)

想要學習Linux系統的讀者可以點擊"閱讀原文"按鈕來了解書籍《Linux就該這么學》,同時也非常適合專業的運維人員閱讀,成為輔助您工作的高價值工具書!

點分享

點收藏

點點贊

點在看

總結

以上是生活随笔為你收集整理的linux hosts文件如何修改_3 种方法教你在 Linux 中修改打开文件数量限制的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。