iptables -L ---> 用法:/etc/init.d/iptables {start|stop|restart|condrestart|status|panic|save}

iptables -L ---> 用法:/etc/init.d/iptables {start|stop|restart|condrestart|status|panic|save}

我正在运行 CentOS 5。当我输入

iptables -L

我明白

用法:iptables {start|stop|restart|condrestart|status|panic|save}

它出什么问题了?

答案1

你能告诉我们你的$PATH和 的输出吗which iptables?乍一看,我觉得你似乎/etc/init.d/iptables更喜欢/sbin/iptables

如果是这样,解决方法是找出 /etc/init.d 是如何进入您的 PATH 的,然后将其删除。将它放在那里似乎很有吸引力,但拾取错误的东西的可能性太大了(例如,sendmail,您可能会拾取服务启动脚本而不是实际的 MTA 二进制文件,并且类似的命令sendmail -q -v也会出错)。

答案2

尝试这个:

From your user account:

su - 

iptables -L

Cent 不会像其他发行版那样默认将 /sbin/ 添加到用户帐户路径中,所以我敢打赌你以自己的身份登录,通过某种未正确更新环境的方式获得 root 访问权限(或者你在发布之前尝试将奇怪的东西添加到路径中以解决问题),现在你正在运行 iptables 的 init 脚本。上述方法可让你在 root 环境中获得 root 访问权限。

相关内容