在多用户环境下配置 Ubuntu 的 ulimit
设置,可以通过以下几种方法实现:
/etc/security/limits.conf
编辑 /etc/security/limits.conf
文件:
打开终端并使用文本编辑器(如 nano
或 vim
)编辑该文件:
sudo nano /etc/security/limits.conf
添加或修改用户限制:
在文件中添加或修改以下行来设置特定用户的资源限制。例如,为 username
用户设置软硬限制:
username soft nofile 65536
username hard nofile 65536
这里的 nofile
表示打开文件描述符的数量,65536
是一个示例值,可以根据需要调整。
保存并退出: 保存文件并退出编辑器。
重新登录:
修改 limits.conf
后,需要重新登录用户以使更改生效。
/etc/pam.d/common-session
和 /etc/pam.d/common-session-noninteractive
编辑 /etc/pam.d/common-session
文件:
sudo nano /etc/pam.d/common-session
添加以下行:
session required pam_limits.so
编辑 /etc/pam.d/common-session-noninteractive
文件:
sudo nano /etc/pam.d/common-session-noninteractive
添加以下行:
session required pam_limits.so
保存并退出: 保存文件并退出编辑器。
pam_limits.so
模块编辑 /etc/pam.d/login
、/etc/pam.d/sshd
等相关文件:
根据需要编辑这些文件,添加以下行:
session required pam_limits.so
保存并退出: 保存文件并退出编辑器。
systemd
服务配置如果你使用的是 systemd
,可以在服务单元文件中设置资源限制。
编辑服务单元文件:
例如,编辑 /etc/systemd/system/my_service.service
:
sudo nano /etc/systemd/system/my_service.service
添加 LimitNOFILE
指令:
在 [Service]
部分添加以下行:
[Service]
LimitNOFILE=65536
重新加载 systemd
配置并重启服务:
sudo systemctl daemon-reload
sudo systemctl restart my_service
通过以上方法,你可以在多用户环境下灵活地配置 ulimit
设置,以满足不同用户的需求。