vsftpd错误:500 OOPS:setuid

当我想通过ftplogin时,有时会出现错误。 错误是500 OOPS: setuid 。 我无法弄清楚为什么有时会发生这种情况,但有时却不行。 我已经把每个用户的进程限制为无限制,但是这仍然发生。 我正在运行Fedora Core 10。

来自vsftpd wiki :

我得到:500 OOPS:setuid – 为什么?

setuid(2)为进程设置用户标识。 如果有问题的用户用完了进程 – ulimit(1) – 这将失败,并且vsftpd将返回所述错误。

这种行为在embedded式设备上是最常见的,用户被允许产生的进程数量实际上是有限的。 在大多数普通的Linux发行版中,这是无限制的。

你可以通过检查用户名vsftpd在ps -ef | grep ftp下运行来validation ps -ef | grep ftp

然后使用su - [username, for example root]命令以该用户身份login,并使用ulimit -u检查进程数的限制。

在我的CentOS机器上,root帐户被限制在2047个进程。
如果需要,使用ulimit -u [number of processes, for example 5000]提高此数字,或者对无限数量的进程使用ulimited -u unlimited