*-core
description: Motherboard
product: 440BX Desktop Reference Platform
vendor: Intel Corporation
physical id: 0
version: None
serial: None
*-firmware
description: BIOS
physical id: 0
version: 6.00
date: 04/14/2014
size: 87KiB
capabilities: isa pci pcmcia pnp apm upgrade shadowing escd cdboot bootselect edd int5printscreen int9keyboard int14serial int17printer int10video acpi smartbattery biosbootspecification netboot
*-cpu:0
description: CPU
product: Intel(R) Xeon(R) CPU E5-2697 v3 @ 2.60GHz
vendor: Intel Corp.
physical id: 4
bus info: cpu@0
version: Intel(R) Xeon(R) CPU E5-2697 v3 @ 2.60GHz
slot: CPU socket #0
size: 2600MHz
capacity: 4230MHz
width: 64 bits
The current limits are :
core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimited
file size (blocks, -f) unlimited
max locked memory (kbytes, -l) unlimited
max memory size (kbytes, -m) unlimited
open files (-n) 1024
pipe size (512 bytes, -p) 1
stack size (kbytes, -s) 8192
cpu time (seconds, -t) unlimited
max user processes (-u) 1418
virtual memory (kbytes, -v) unlimited
$ lscpu
Architecture: x86_64
CPU op-mode(s): 32-bit, 64-bit
Byte Order: Little Endian
CPU(s): 8
On-line CPU(s) list: 0-7
Thread(s) per core: 1
Core(s) per socket: 4
Socket(s): 2
NUMA node(s): 1
Vendor ID: GenuineIntel
CPU family: 6
Model: 63
Model name: Intel(R) Xeon(R) CPU E5-2697 v3 @ 2.60GHz
Stepping: 2
CPU MHz: 2593.993
BogoMIPS: 5187.98
Hypervisor vendor: VMware
Virtualization type: full
L1d cache: 32K
L1i cache: 32K
L2 cache: 256K
L3 cache: 35840K
NUMA node0 CPU(s): 0-7
答案1
这与您的 CPU 无关。它是您可以拥有的打开文件描述符数量的设置。可以使用 显示ulimit -n
。每个进程的默认值为 1024。
用户可以拥有的最大限制可以在 中设置/etc/security/limits.conf
。
可以使用命令查看当前配置的系统最大值
$ cat /proc/sys/fs/file-max
601126
该值是系统总数,而不是每个进程的值。
这可以通过将新值写入同一位置来更改,例如echo 1000000 | sudo tee /proc/sys/fs/file-max
。这是上限。
使用中的值显示在 中/proc/sys/fs/file-nr
,它有三个数字。第一个是当前正在使用的文件描述符,第二个是已分配但空闲的描述符,第三个是系统配置的最大值。
每个进程的 uliit 可以由用户更改,最大可达以下描述的值/etc/security/limits.conf
:
[~]$ ulimit -n
1024
[~]$ ulimit -n 2048
[~]$ ulimit -n
2048
此外,您有两种限制。硬限制和软限制。您可以使用软限制,但只有 root 可以提高硬限制。要显示硬限制,请运行ulimit -H -n
。用户可以降低硬性限制,但绝不会提高它们,即使降低也回到初始值。
[~]$ ulimit -H -n
4096
[~]$ ulimit -H -n 2048
[~]$ ulimit -H -n 4096
bash: ulimit: open files: cannot modify limit: Operation not permitted
[~]$
如果你对限制还有疑问,我建议你问一个更具体的问题,因为这个问题比较开放。没有受到推崇的值;不同的过程需要不同的方法。默认值对于大多数应用程序来说都是合理的,而有些应用程序可能会遇到问题。
简短的回答是,除非遇到问题,否则不必担心。