linux ulimit命令详解

人气:728 ℃/2024-02-04 14:25:55

linux系统下ulimit命令是什么呢?下面是ulimit命令的具体介绍:

1、ulimit命令简介:

ulimit命令是一个计算机命令,用于shell启动进程所占用的资源,可用于修改系统资源限制。

2、类别:

shell内建命令

3、语法格式:

ulimit [-acdfHlmnpsStvw] [size]

4、参数介绍:

-H 设置硬件资源限制

-S 设置软件资源限制

-a 显示当前所有的资源限制

-c size:设置core文件的最大值.单位:blocks

-d size:设置数据段的最大值.单位:kbytes

-f size:设置创建文件的最大值.单位:blocks

-l size:设置在内存中锁定进程的最大值.单位:kbytes

-m size:设置可以使用的常驻内存的最大值.单位:kbytes

-n size:设置内核可以同时打开的文件描述符的最大值.单位:n

-p size:设置管道缓冲区的最大值.单位:kbytes

-s size:设置堆栈的最大值.单位:kbytes

-t size:设置CPU使用时间的最大上限.单位:seconds

-v size:设置虚拟内存的最大值.单位:kbytes

举例:

在Linux下写程序的时候,如果程序比较大,经常会遇到“段错误”(segmentation fault)这样的问题,这主要就是由于Linux系统初始的堆栈大小(stack size)太小的缘故,一般为10M。我一般把stack size设置成256M,这样就没有段错误了!命令为:

ulimit   -s 262140

如果要系统自动记住这个配置,就编辑/etc/profile文件,在 “ulimit -S -c 0 > /dev/null 2>&1”行下,添加“ulimit   -s 262140”,保存重启系统就可以了!

1]在RH8的环境文件/etc/profile中,我们可以看到系统是如何配置ulimit的:

#grep ulimit /etc/profile

ulimit -S -c 0 > /dev/null 2>&1

这条语句设置了对软件资源和对core文件大小的设置。

如果我们想要对由shell创建的文件大小作些限制,如:

#ll h

-rw-r--r-- 1 lee lee 150062 7月 22 02:39 h

#ulimit -f 100 #设置创建文件的最大块(一块=512字节)

#cat h>newh

File size limit exceeded

#ll newh

-rw-r--r-- 1 lee lee 51200 11月 8 11:47 newh

文件h的大小是150062字节,而我们设定的创建文件的大小是512字节x100块=51200字节

当然系统就会根据你的设置生成了51200字节的newh文件。

<上一篇下一篇>

推荐

首页/电脑版/地图
© 2024 JiaChangBa.com All Rights Reserved.