使用SSH遠程連接Linux系統(tǒng)的ECS實例時,提示“could not set limit for ‘nofile’: Operation not permitted”錯誤怎么辦?
本文使用SSH遠程連接Linux系統(tǒng)的ECS實例時,提示“could not set limit for ‘nofile’: Operation not permitted”錯誤的原因和解決方案。
問題現(xiàn)象
使用SSH遠程連接Linux系統(tǒng)的ECS實例時,提示以下錯誤信息。
-bash: fork: retry: Resource temporarily unavailable.
pam_limits(sshd:session):could not sent limit for 'nofile':operaton not permitted.
Permission denied.
問題原因
該問題可能是Linux內(nèi)核中資源限制配置文件/etc/security/limits.conf
中nofile
值過大,超過內(nèi)核可打開的文件數(shù),導致無法使用SSH連接ECS實例。
解決方案
您可以根據(jù)業(yè)務需要,修改/etc/sysctl.conf
和/etc/security/limits.conf
配置文件以解決此問題。
以VNC方式遠程連接ECS實例。
具體操作,請參見連接方式概述。
分別執(zhí)行如下命令,查看
fs.file-max
和fs.nr_open
參數(shù)值。修改
/etc/sysctl.conf
配置文件。打開
/etc/sysctl.conf
配置文件。vim /etc/sysctl.conf
按
i
鍵進入編輯模式。修改
fs.file-max
和fs.nr_open
參數(shù)值。建議將
fs.file-max
和fs.nr_open
參數(shù)值都修改為大于65536。fs.file-max
:系統(tǒng)內(nèi)核級別所有進程可打開的文件數(shù)。fs.nr_open
:系統(tǒng)內(nèi)核級別單個進程可打開的文件數(shù)。
說明fs.file-max = 655360 fs.nr_open = 655360
修改
/etc/security/limits.conf
配置文件。打開
/etc/security/limits.conf
配置文件。vim /etc/security/limits.conf
按
i
鍵進入編輯模式。修改
* soft nofile
和* hard nofile
參數(shù)值。例如,將
* soft nofile
和* hard nofile
參數(shù)值都修改為大于65535。* soft nofile 655350 * hard nofile 655350
重啟ECS實例。
具體操作,請參見啟動實例。
依次執(zhí)行以下命令,確認
fs.file-max
和fs.nr_open
值修改成功。cat /proc/sys/fs/file-max cat /proc/sys/fs/nr_open