bash: iptables: कमांड नहीं मिला


14

मैं iptables: command not foundडेबियन 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:~$

मैं बड़े पैमाने पर googled और ज्यादातर जवाब CentOS और फेडोरा के लिए थे जो 2005 और 2009 तक वापस आ गए थे।


का आउटपुट क्या है echo $PATH?
ब्रिअम

1
iptables आपके पास होना चाहिए PATHताकि यह sudoगायब हो।
वैलेंटाइन बजरमी

जवाबों:


14

iptablesआदेश काफी केवल उपयोगी रूट के रूप में, नहीं किसी अन्य उपयोगकर्ता के रूप में चलाया जा सकता है। तो यह रूट के अलावा अन्य उपयोगकर्ताओं के लिए डिफ़ॉल्ट कमांड सर्च पथ में नहीं है।

चलाने के लिए iptables, इसे रूट के रूप में चलाएं , इनमें से कोई भी कमांड:

su 'iptables --some-option …'
sudo iptables --some-option …

निष्पादन योग्य में स्थित है /sbin, जो रूट के लिए डिफ़ॉल्ट कमांड सर्च पथ में है।


7

यह इसलिए iptablesहै क्योंकि आपके PATHचर में सूचीबद्ध नहीं है । मुझे लगता है कि इसे sudoकमांड के साथ काम करना चाहिए । प्रयत्न:

sudo iptables -L

यदि वह भी काम नहीं करता है, तो आपको चेकआउट करना चाहिए कि iptablesबाइनरी कहाँ है और फिर इसे PATHचर में जोड़ें ।

ज्यादातर मामलों में यह होना चाहिए /sbin/। फिर भी, बस डेबियन 7 में सत्यापित करें। यदि यह है /sbin/तो आप .bashrcफ़ाइल को खोल सकते हैं और इसे अंत में प्रदान कर सकते हैं :

PATH=/sbin/:$PATH

you should checkout where the iptables binary isIptables बाइनरी का पता लगाने के लिए मुझे क्या कमांड टाइप करनी चाहिए?
user70167

then you can open .bashrc file and.bashrcफ़ाइल का स्थान कहाँ है ?
user70167

1
क्या आपने सूडो के साथ जांच की? dpkg -L iptablesफ़ाइलों को सूचीबद्ध करने का प्रयास करें।
फ्लीमिंगोविरस

क्या .bashrc फ़ाइल के बारे में? यह कहाँ स्थित है?
user70167

2
खैर ये मूल बातें हैं। ठीक है यह आपके घर निर्देशिका में है। अपने टर्मिनल से खोलने की कोशिश कर रहा है। vim ~/.bashrc
फ़्लीमिंगोविरस

1

dpkg -L iptablesदिखाएगा कि पैकेज से फाइलें कहां स्थापित की गई हैं iptables

dpkg -L iptables | grep iptables$

आप iptablesबाइनरी फ़ाइल के स्थान की जांच कर सकते हैं । मेरे लिए उबंटू में है /sbin/iptables

इसलिए साथ चलाएं /sbin/iptables -L और जांच करें।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.