¿Cómo soluciono el iptables: command not found
problema que le sucedió a Debian 7.6?
batman@gotham:~$ uname -a
Linux gotham 3.14-0.bpo.2-amd64 #1 SMP Debian 3.14.13-2~bpo70+1 (2014-07-31) x86_64 GNU/Linux
batman@gotham:~$ iptables -L
bash: iptables: command not found
batman@gotham:~$ sudo apt-get install iptables
[sudo] password for batman:
Reading package lists... Done
Building dependency tree
Reading state information... Done
iptables is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
batman@gotham:~$
Busqué en Google extensamente y la mayoría de las respuestas fueron para CentOS y Fedora que datan de 2005 y 2009.
echo $PATH
?PATH
así que es lo quesudo
te estás perdiendo.Respuestas:
El
iptables
comando solo se puede ejecutar útilmente como root, no como otro usuario. Por lo tanto, no está en la ruta de búsqueda de comandos predeterminada para usuarios que no sean root.Para ejecutarlo
iptables
, ejecútelo como root, con cualquiera de estos comandos:El ejecutable se encuentra en
/sbin
, que está en la ruta de búsqueda de comando predeterminada para root.fuente
Es porque
iptables
no figura en suPATH
variable. Creo que debería funcionar con elsudo
comando. Tratar:Si eso tampoco funciona, entonces debe verificar dónde está el
iptables
binario y luego agregarlo a laPATH
variable.En la mayoría de los casos debería estar adentro
/sbin/
. Aún así, solo verifique en Debian7. Si está dentro/sbin/
, puede abrir el.bashrc
archivo y proporcionarlo al final:fuente
you should checkout where the iptables binary is
¿Qué comando debo escribir para ubicar el binario iptables?then you can open .bashrc file and
¿Dónde está la ubicación del.bashrc
archivo?dpkg -L iptables
enumerar los archivos.vim ~/.bashrc
dpkg -L iptables
mostrará dónde se instalan los archivos desde el paqueteiptables
.Puede verificar la ubicación del
iptables
archivo binario. Para mí en Ubuntu está en/sbin/iptables
.Así que corre con
/sbin/iptables -L
y comprueba.fuente