So legen Sie in Solaris 10 ulimits fest

7

Normalerweise verwende ich pam_limits.sound /etc/security/limits.confum ulimits für Dateigröße, CPU-Zeit usw. für die regulären Benutzer festzulegen , die sich bei meinem Server anmelden, auf dem Ubuntu ausgeführt wird. Was ist der beste Weg, um mit Solaris 10 etwas Ähnliches zu tun?

Ich denke, es wird mit gemacht /etc/system, aber ich habe keine Ahnung, was ich der Datei hinzufügen soll oder ob es tatsächlich die richtige Datei ist. Ich bin besonders daran interessiert, mich einzurichten, ulimit -fohne den .profileWeg zu gehen.

Peter Mortensen
quelle

Antworten:

5

Unter Solaris können Sie diesen Parameter systemweit als Hard- oder Soft-Limit festlegen, ODER Sie können dies auch für eine bestimmte Anwendung tun, damit die Laufzeit die richtige Anzahl offener Dateideskriptoren enthält.

Bearbeiten Sie die /etc/systemfolgenden Einträge, um eine systemweite Änderung vorzunehmen

# Hard limit on file descriptors for single process
set rlim_fd_max = 4096

# Soft limit on the file descriptors for a single process
set rlim_fd_cur = 1024

HINWEIS: Ohne die rlim_fd_maxoben gezeigte Einstellung beträgt der Standardwert für Dateideskriptoren oder Nofiles die Hälfte des rlim_fd_curWerts. Also ist es am besten, beide einzustellen.

Wenn Sie ein Solaris-Projekt für einen Anwendungsbereich wie Oracle Database verwenden, können Sie die maximalen Dateideskriptoren im Projekt wie folgt festlegen:

projadd -U oracle -K “process.max-file-descriptor=(priv,4096,deny)” user.oracle

Darüber hinaus können Sie es ulimitdirekt in der Shell-Startdatei des Besitzers einer Anwendung festlegen . Zum Beispiel ist es möglich , max Dateideskriptoren zu etablieren , indem Sie ulimitin dem .profilevon den Webserver des Besitzer ulimit -s 32768und die von dem Start / Stop - Skript aufrufen.

Wie Sie sehen, gibt es viele Möglichkeiten und Möglichkeiten, dies zu tun.

Netlinxman
quelle
3

Erwähnenswert ist auch Plimit. Dadurch können bereits ausgeführte Prozesse angezeigt oder begrenzt werden.


# plimit 7028
7028:   /usr/lib/gconfd-2 18
   resource              current         maximum
  time(seconds)         unlimited       unlimited
  file(blocks)          unlimited       unlimited
  data(kbytes)          unlimited       unlimited
  stack(kbytes)         10240           unlimited
  coredump(blocks)      unlimited       unlimited
  nofiles(descriptors)  512             65536
  vmemory(kbytes)       unlimited       unlimited
Twirlip
quelle
2

Es ist möglich, maximale Dateideskriptoren festzulegen, indem ulimit im .profile des Besitzers des Webservers auf ulimit -s 32768 gesetzt wird

ulimit -n 32768 - ist korrekt

blacksaifer
quelle
1

Dieser Link enthält detaillierte Informationen zur Verwendung von Solaris 10 "Projekten".

Dieses PDF enthält alle Teile in einer Datei. Die für diese Frage relevanten Informationen finden Sie auf Seite 59.

Nicht jetzt
quelle