ubuntu下执行ulimit返回“不允许的操作”,问题解决思路
在ubuntu下执行ulimit,希望修改允许的最大打开文件数,但返回“不允许的操作”。
使用ulimit -a查看当前配置
core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimited
scheduling priority (-e) 0
file size (blocks, -f) unlimited
pending signals (-i) 127837
max locked memory (kbytes, -l) 16384
max memory size (kbytes, -m) unlimited
open files (-n) 1024
pipe size (512 bytes, -p) 8
POSIX message queues (bytes, -q) 819200
real-time priority (-r) 0
stack size (kbytes, -s) 8192
cpu time (seconds, -t) unlimited
max user processes (-u) 127837
virtual memory (kbytes, -v) unlimited
file locks (-x) unlimited
一通搜索后,先使用如下解决办法,修改/etc下的文件,通过修改/etc/security/limits.conf这个配置文件来改变系统的默认限制。在文件的末尾追加一下内容:
* soft nofile 81920
* hard nofile 81920
*代表除root以外的所有用户,也可以设置为特定用户的名称,soft表示软限制,nofile表示文件描述符,81920是新的默认值。
如果需要修改root,需要专门指定 root soft nofile xxx
重启系统后,root已经生效,而普通用户的终端依然没有生效,查找资料,系统的相关修改,修改办法如下:
系统级别的限制
上面说到修改只对与某一个用户有效,Linux还有系统级别的文件描述符的限制,用户级别的设置是不能超过系统级别的。修改系统级的限制可以通 过sysctl命令修改:
1 |
|
file-max代表系统内核最多可以打开的文件描述符数量,如果要设置某个进程可以打开的文件描述符数量,可以通过修改nr_open:
1 |
|
使用sysctl命令所做的修改也是临时的,要永久修改系统的限制可以通过修改/proc/sys/fs/下的文件:
1 |
|
关于/proc/sys/fs/目录下各个文件的详细解释,可以阅读这篇文章fs.txt
然而是不相关的啊
最终看到有这么一句提到
PS: ,有时候更改完后使用ulimit -SHn时仍然会报错,这是需要在/etc/pam.d/common-session中加入session required pam_limits.so 再次PS ,有时候经过上面的更改后使用ulimit -n会看到默认值并没有改变,我在ubuntu中遇到这种情况,解决办法是先使用su username登录当前用户,然后 就可以使用ulimit命令了。原因可能是gnome terminal默认是none-login的,所以我们在配置文件中的修改并没有影响到当前的terminal。
在ubuntu的终端su username,输入密码后,看到默认值已经修改成正确的了。
core file size (blocks, -c)
data seg size (kbytes, -d) unlimited
scheduling priority (-e)
file size (blocks, -f) unlimited
pending signals (-i)
max locked memory (kbytes, -l)
max memory size (kbytes, -m) unlimited
open files (-n)
pipe size ( bytes, -p)
POSIX message queues (bytes, -q)
real-time priority (-r)
stack size (kbytes, -s)
cpu time (seconds, -t) unlimited
max user processes (-u)
virtual memory (kbytes, -v) unlimited
file locks (-x) unlimited
…………………………………………完
ubuntu下执行ulimit返回“不允许的操作”,问题解决思路的更多相关文章
- Ubuntu下执行mysql的sql文件
Ubuntu下执行mysql的.sql文件 方法一: 1.执行此命令,会提示输入mysql的root账户的密码,验证成功后,会在dbname这个数据库中执行filename.sql这个脚本,其中f ...
- laravel中ubuntu下执行php artisan migrate总是报错
ubuntu14.0 + xampp + laravel5下 laravel中ubuntu下执行php artisan migrate总是报错: [PDOException] could not fi ...
- ubuntu 下执行定时任务
Window shell文件在linux系统下执行不了的解决办法 一些人喜欢用vim来写linux shell script, 但是, 有的人喜欢在Windows下用一些方便的编辑器(比如鼎鼎大名的N ...
- yii2在ubuntu下执行定时任务
一.编辑yii console/controllers TestController.php 二./usr/ 包括与系统用户直接有关的文件和目录创建sh_scripts目录,/usr/sh_scrip ...
- Linux - Ubuntu下执行apt-get update报错:Some index files failed to download. They have been ignored, or old ones used instead.
报错命令 root@ubuntu:/etc/apt# apt-get update Err: http://mirrors.aliyun.com/ubuntu trusty InRelease Cou ...
- Ubuntu下对与rtl8723be网卡频繁断网问题解决
linux下对于rtl系列的无线网卡,大多数网友都在吐槽,总是频繁的掉网,就此将自己在网上安装时的经验写下. 1.下载网卡驱动,其中包含rtl的大多数包 sudo apt-get install li ...
- Ubuntu下重新安装软件 配置文件不重新生成得问题解决
apt-get remove nfs dpkg -P nfs apt-get install nfs 按照先remove然后dpkg -P再重新install的顺序.
- ubuntu下opencv的版本切换及遇到的问题解决
默认使用opencv 3.2的时候,使用SVM的时候,系统报错如下: error: ‘class MySVM’ has no member named ‘decision_func’ 解决方法:要把系 ...
- ubuntu下记录所有用户的登录和操作日志
一般我们可以用history命令来查看当前用户的操作记录,但是这个命令不能记录是所有用户登录操作的,也不能记录详细的操作时间,且不完整:所以误操作而造成重要的数据丢失,就很难查到是谁操作导致的. 在这 ...
随机推荐
- vuex中获取的数据使用v-model绑定出问题
get selectedProp() { return this.$store.state.selectedProp; } 获取的数据selectedProp直接绑定在表单元素上会有错,因为不能直接对 ...
- linux cfs 负载均衡
确定新的负载的时候,代码中给出的公式是: (old×(2^i-1) + new))/2^i 整理下来是: old + (new-old)/2^i i的范围是[1, 4],也就是说,i的层级越高,那么n ...
- 【bzoj4976】宝石镶嵌 乱搞+dp
题目描述 从$n$个数中选出$n-k$个,使得它们的二进制或(or)最大.输出这个值. 输入 第一行包含两个正整数$n,k(2\le n\le 100000,1\le k\le 100,k<n) ...
- 制作Windows10政府版的小白教程
制作Windows10政府版的小白教程 https://03k.org/make10entg.html 首先,宿主系统要比操作的系统新,因为低版本dism操作不了: 当然也可以单独下载ADK,提取最新 ...
- git使用笔记(一)入门
By francis_hao Nov 17,2016 本来是想把git的使用笔记写在一个文件里,但是越写越长,最后也不得不分开了.这样也好,每一篇一个侧重,可以写的详细一点. 初学乍练 在l ...
- 生日蛋糕 POJ - 1190
7月17日是Mr.W的生日,ACM-THU为此要制作一个体积为Nπ的M层生日蛋糕,每层都是一个圆柱体. 设从下往上数第i(1 <= i <= M)层蛋糕是半径为Ri, 高度为Hi的圆柱.当 ...
- PHP设计模式-代理模式
概念理解: 代理模式,是对简单处理程序(或指针)的增强,用于引用一个对象:这个指针被代理对象取代,代理对象位于客户端和真实程序之间,指针有一个可被多个目标利用的钩子. 参与者: client(参与者) ...
- Java节假日算法
类:Vacation package test; import java.io.Serializable; import java.util.Date; public class Vacation i ...
- 九大排序算法Java实现
之前学习数据结构与算法时花了三天时间整理九大排序算法,并采用Java语言来实现,今天第一次写博客,刚好可以把这些东西从总结的文档中拿出来与大家分享一下,同时作为自己以后的备忘录. 1.排序算法时间复杂 ...
- HDU 2084 DP经典例子---数塔问题
http://acm.hdu.edu.cn/showproblem.php?pid=2084 #include "iostream" #include "cstdio&q ...