システムリソースの制限/コンフィギュレーション・ファイル・ディスクリプタ

システムのリソース制限

彼は説明しました:

さまざまなリソースを使用して、Linuxシステムでは、デフォルトのしきい値を変更したい場合は、一時的なコマンド(のulimit)または構成ファイル(/etc/security/limits.confをと/etc/security/limits.d/ディレクトリを通じて行うことができ、限定されていますファイルの下で)永久に二つの方法で有効になります。

limits.confを設定手順(有効にするには再起動します)

注意を払います

/etc/security/limits.confををカバーする/etc/security/limits.confをされ、そして/etc/security/limits.d/ディレクトリは、/ etc /セキュリティ/ limits.d /設定リソースの使用プロファイルを制限コンフィギュレーション

制約リソースの種類:

作成されたカーネルファイルのサイズ、プロセスデータ・ブロックのサイズ、シェルプロセスのファイルサイズを作成するために、ロックされたメモリのサイズ、永久メモリーのサイズを設定し、最大スタックサイズを割り当てられたオープンファイル記述子の数、CPU時間、
スレッドの最大数単一ユーザ、使用可能な最大仮想メモリシェルプロセス。同時に、それはハードとソフトのリソースリソースの制限をサポートしています。

設定ファイルの形式

#<項目> <値> <種類の> <ドメイン>  *ソフトコア0 
#rootハードコア100000  *ハードRSS 10000 
学生ハードNPROC @#20 
学部ソフトNPROC @#20 
学部ハードNPROC @#50 FTPハードNPROC 0 FTP - chroot環境 / FTP 
#1 @学生 - MAXLOGINS 4 
-----------自身-----------以下が追加され、テンプレート・コンフィギュレーション・ファイル上記の行を、分割します------------- 
*ソフトNOFILE 655350 #は、ユーザーがファイル記述子の最大数を開くことができ表し
 NOFILEハード* 655350 
*ソフトNPROC 655350#は、ユーザーが任意の開くことができるプロセスの最大数を示します
 *ハードNPROC 655350 
@studentハードNOFILE 65535 最大65,535の誰#studentグループにオープンファイル記述子の数を、そしてときに開い警告65000を発行します
@studentソフトNOFILE 65000 
@studentハードNPROC 50     誰#studentグループは、50の以上のプロセスを持つことができない、とプロセスが30ある場合に警告します
@studentソフトNPROC 30を
コードの表示

説明:
最初の列はユーザーグループと(最初の@)を示しています。2番目の列はソフト制限またはハードリミットを示し、第3列は、リソースの制約のタイプを示し、第4列は、の上限を表し
、ハードとソフトとの間の差である:ソフト警告値であるが、それはハードしきい値の本当の意味であり、エラーよりも、通常の状況下では同じ値に設定されています。
コアカーネルファイル、NOFILEファイルディスクリプタで、noprocは、ファイル記述子の数とプロセスの十分な数制限通常の状況下では、プロセスで

のヒントを:
ユーザに対する制限は、ユーザーのホームディレクトリにbashrcにファイルの種類を設定することができますulimitコマンド

ulimitの使用

共通のコマンド・
ulimitの - すべてのリソース制限は、ビュー
のulimit - -n のn-デフォルトソフトリミットの閲覧
のulimitを - Hnの限度ビューハード
のulimit -Sn 160000が    設定され、ほとんどのソフトリミットは、注意がソフトリミットの上限ハードよりも小さくなければならない
のulimit -Hn 160000     のulimit -Hnによってほとんどのハード制限の設定
コードの表示


チューニングシステム

1 )無制限のいくつかのリソース()の無制限の使用に配置さ:
データ長のulimit - D無制限
最大メモリサイズのulimit - M無制限の
スタック・サイズのulimit - S無制限の
CPU時間:のulimit - T無制限
の仮想メモリ:のulimit - V無制限
  
これらは、ulimitコマンドを使用してセッション中にログインシェルのためだけに一時的にしています。
恒久的、対応ulimitのステートメントのようなログインシェル、ユーザ・リソース・ファイルに固有のシェルによって読み取られたファイルに追加することによって:

2 プロセスの最大数およびオープンファイルの制限の最大数を持ち上げる)Linuxシステム:
 VI /など/セキュリティ/ limits.confをの
#は、以下の行を追加し
、ソフトnoprocを* 11000 
*ハードnoproc 11000 
*ソフトNOFILE 4100 
*ハードNOFILE 4100  
説明:* すべてのユーザーの代理
プロセスの最大数を表すnoproc 
NOFILEが開いているファイルの最大数を表している

3)SSHログインログインプログラムを受け入れることを可能に容易にすることであるのsshビューのulimitクライアント- リソース制限を:
A、viのは/ etc / sshを / sshd_configファイル
にuserloginの値がyesに変更し、コメント#の削除
:SSHDサービス再起動し、Bを
 /etc/init.d/のsshdの再起動

4 )すべてのユーザーのLinuxファイルの環境変数を変更する:
 viのは/ etc / プロフィール
のulimit -u 10000 
のulimit -n 4096 
のulimit - D無制限
のulimit - M無制限
のulimit - S無制限
のulimit- トン無制限
のulimit -v無制限
コードの表示

 

ファイル記述子のリソース制限

ファイルディスクリプタfd:

Linuxカーネルのファイルディスクリプタは、IO、オペレーティング・システム・コールのすべてがファイル記述子を使用している、開いているファイルに作成された効率的な管理のための指標です。
記述子が作成される各開いているファイルは、ファイルポインタおよびファイル記述子は、記述子は、非負整数、3が0でデフォルトのファイル記述子、すなわち、標準入力、標準出力を示し、標準エラー出力。
図3は、ファイルディスクリプタテーブルに書き込まから開始されたファイルを開きます。PCB(プロセス制御ブロック)内の各プロセスは、ファイルディスクリプタテーブルが格納されているプロセス制御ブロックです。
どのくらいのファイルディスクリプタを開くことができますか?あなたはファイル記述子を開くことができますが、カーネルのメモリ管理は、一般的に(システムの制限)の10%であるどのくらいのメモリのための理論。
ファイル記述子の制限システムリソースの制約の一部ですが、またのulimitを委託するか、二つの方法limits.confを。
コードの表示

ビュー

システムの制限を確認してください:
方法1
[Webaルート-136〜@]#sysctlを-a | grepをfs.file-MAX
fs.file-MAX = 98622
方法2
[Webaルート-136〜@]#のCATの/ proc / SYS / FS /ファイル-最大
98の622
ビュー、ユーザーレベルの制限:
ulimitの-n


修正

システムの制約の変更
、一時的変更
[ルートWeba-136〜@]#sysctlを-w-MAX = 400000 fs.fileの
fs.file-MAX = 400000
/の/ var /スプール/メールでルートを新たに新しいメールを持っているあなたによって
[Weba @ルート-136 〜]#350000> / procの/ SYS / FS /ファイルの-maxのエコー
[136-Webaルート@〜]#sysctlを-a | grepをfs.file-MAX
fs.file-MAX = 350000
〜@ [Webaルート-136] #は
恒久的に変更
fs.file-MAXを= 400000 /etc/sysctl.confのは、設定ファイルに追加しました。

ユーザーレベルの変更(個々のプロセスのオープンファイルの最大数)
を一時的に再起動に失敗する修正
-shn 10240#修正を開くことができるのulimit数にファイル記述子の制限を

永続的な変更は、すべてのユーザーが有効になります。(ファイルへのハード、ソフトの書き込みは、ファイル形式は#<ドメイン> @ユーザー名またはグループ名である、または* <タイプ>制限の種類、ハード、ソフトの<item>リソース名<値>上限値)
のvimの/ etc /セキュリティ/ limits.confを
永続的な変更は、すべてのユーザーが有効になります。システムは最初にそのようなファイルを読み込みます/etc/security/limits.d/*.confでは、このファイルには、コメントの内容ことを示唆し、プロジェクト内のプロジェクトを/etc/security/limits.confを上書きします。
永続的な変更は、単一のユーザーを変更し、ユーザー環境変数を書くulimitが10240書か.bash_profileの-shn
エコー「のulimit -shn 10240」>> /ルート/ .bash_profileファイルを、または起動スクリプトに記述されたアプリケーションのulimit -n 10240で

おすすめ

転載: www.cnblogs.com/fanggege/p/11323950.html