使用SSH登錄ECS提示“Could not set limit for ‘nofile’: Operation not permitted”的解決方法
問題描述
在limits.conf文件中修改可打開的文件數(shù)后,通過SSH登錄ECS實例,提示以下信息。
pam_limits(crond:session): Could not set limit for ’nofile’: Operation not permitted
問題原因
若需要修改可打開的文件數(shù),一般修改limits.conf文件的nofile即可,但是如果將此值修改太大,會導(dǎo)致SSH無法登錄,因為打開的文件數(shù)會超過內(nèi)核可打開的文件數(shù)。
解決方案
阿里云提醒您:
?如果您對實例或數(shù)據(jù)有修改、變更等風(fēng)險操作,務(wù)必注意實例的容災(zāi)、容錯能力,確保數(shù)據(jù)安全。
?如果您對實例(包括但不限于ECS、RDS)等進行配置與數(shù)據(jù)修改,建議提前創(chuàng)建快照或開啟RDS日志備份等功能。
?如果您在阿里云平臺授權(quán)或者提交過登錄賬號、密碼等安全信息,建議您及時修改。
1.在修改可打開文件數(shù),建議先修改內(nèi)核可打開文件數(shù)。在/etc/sysctl.conf中修改fs.file-max和fs.nr_open值。
說明:
?fs.file-max:系統(tǒng)內(nèi)核級別所有進程可打開的文件數(shù)。
?fs.nr_open:系統(tǒng)內(nèi)核級別單個進程可打開的文件數(shù)。
2.修改完成后,編輯/etc/security/limits.conf文件,修改如下配置,本文將值修改為65535,具體數(shù)值以實際環(huán)境為準(zhǔn)。
* soft nofile 65535
* hard nofile 65535
3.重啟系統(tǒng),然后依次執(zhí)行以下命令,確認(rèn)fs.file-max和fs.nr_open值修改成功。
cat /proc/sys/fs/file-max
cat /proc/sys/fs/nr_open

