我有一个问题,一个进程的最大文件大小不同于用户的ulimit。 这个过程的日志文件基本上没有超过524288
PROC:
less /proc/20238/limits Limit Soft Limit Hard Limit Units ... Max file size 524288 524288 bytes ...
的ulimit:
ulimit -a ... file size (blocks, -f) unlimited ...
从我所知道的情况来看,在开始这个过程的脚本中没有设置任何限制。
我也看过/etc/security/limit.conf但只有nofile和nproc条目
问:你有什么想法还可以设置文件大小的限制?
如果有任何帮助的话,下面是启动过程的一个清理版本:
nohup java $WALLET_OPTS -DOracleName="FileSender" -DAPP=FILE_SDR -Dapp_props=$APP_PROPS -Dfile_name=${FILE_NAME} -XX:+UseParallelGC -XX:+DisableExplicitGC -XX:-EliminateLocks $APPMEM -DDEBUG_MQSERVER=TRUE -classpath $CLASSPATH com.some.path.FileSdrSrv 10 1>> $APP_LOG/filesdr.log 2>&1 &
java文件也不会设置ulimit
应用程序可以在启动时限制资源,总是可以设置比用户configuration的值更严格的资源限制。 看下面的例子:
[centos@be0 ~]$ ulimit -n 32000 [centos@be0 ~]$ ulimit -n 16000 [centos@be0 ~]$ ulimit -n 16000 [centos@be0 ~]$ ulimit -n 32000 -bash: ulimit: open files: cannot modify limit: Operation not permitted [centos@be0 ~]$