為什麼刪除 iptables 會「破壞」我的網路存取?

為什麼刪除 iptables 會「破壞」我的網路存取?

為了刪除 iptables,我使用了 yum :

# yum remove iptables -y

但這刪除了很多軟體包:

Remove      262 Package(s)

Installed size: 710 M
Downloading Packages:
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
Warning: RPMDB altered outside of yum.
  Erasing    : xorg-x11-drivers-7.3-13.4.el6.x86_64                                                                                                                                                                    1/262 
  Erasing    : ipa-client-3.0.0-37.el6.x86_64                                                                                                                                                                          2/262 
  Erasing    : firstboot-1.110.15-1.el6.x86_64                                                                                                                                                                         3/262 
  Erasing    : system-config-date-docs-1.0.11-1.el6.noarch                                                                                                                                                             4/262 
  Erasing    : system-config-date-1.9.60-2.el6.centos.noarch                                                                                                                                                           5/262 
  Erasing    : system-config-kdump-2.0.5-15.el6.noarch                                                                                                                                                                 6/262 
  Erasing    : system-config-network-tui-1.6.0.el6.2-1.el6.noarch                                                                                                                                                      7/262 
  Erasing    : dmraid-1.0.0.rc16-11.el6.x86_64                                                                                                                                                                         8/262 
  Erasing    : dmraid-events-1.0.0.rc16-11.el6.x86_64                                                                                                                                                                  9/262 
  Erasing    : compiz-gnome-0.8.2-24.el6.x86_64                                                                                                                                                                       10/262 
  Erasing    : gnome-disk-utility-2.30.1-2.el6.x86_64                                                                                                                                                                 11/262 
  Erasing    : compiz-0.8.2-24.el6.x86_64                                                                                                                                                                             12/262 
  Erasing    : xorg-x11-drv-ati-7.1.0-3.el6.x86_64                                                                                                                                                                    13/262 
  Erasing    : pulseaudio-module-bluetooth-0.9.21-14.el6_3.x86_64                                                                                                                                                     14/262 
  Erasing    : gnome-bluetooth-2.28.6-8.el6.x86_64                                                                                                                                                                    15/262 
  Erasing    : bluez-4.66-1.el6.x86_64                                                                                                                                                                                16/262 
  Erasing    : gnome-power-manager-2.28.3-7.el6_4.x86_64                                                                                                                                                              17/262 
  Erasing    : rhythmbox-0.12.8-1.el6.x86_64                                                                                                                                                                          18/262 
  Erasing    : xorg-x11-glamor-0.5.0-6.20130401git81aadb8.el6.x86_64                                                                                                                                                  19/262 
  Erasing    : mesa-libEGL-9.2-0.5.el6.x86_64                                                                                                                                                                         20/262 
  Erasing    : kexec-tools-2.0.0-273.el6.x86_64                                                                                                                                                                       21/262 
  Erasing    : xorg-x11-drv-modesetting-0.5.0-1.el6.x86_64                                                                                                                                                            22/262 
  Erasing    : 1:xorg-x11-drv-nouveau-1.0.1-4.el6.x86_64                                                                                                                                                              23/262 
  Erasing    : xorg-x11-drv-synaptics-1.6.2-13.el6.x86_64                                                                                                                                                             24/262 
...

很多包丟失了,我無法再使用連接到該系統ssh!我的命令列出了什麼問題?

答案1

我的命令列出了什麼問題?

沒有什麼。它做了你要求它做的事情——刪除了 iptables,並且據此推斷,刪除了依賴它的所有內容。一切都取決於這些事情等等。

remove -y正如 Kiwy 指出的那樣,在沒有先考慮可能發生的情況的情況下運行是相當魯莽的。我在 iptables 的背景故事中感受到了一些挫敗感?無論如何,為了將來的參考,據我所知,iptables 是預設安裝的,但沒有定義任何規則,所以如果你不想搞砸它,就不要做任何事情,它也不會。

提出這個問題,“為什麼它是這麼多東西的依賴?”,對此我沒有答案;我不認為這是因為真正的必要,但由於它默認是無牙的,並且被認為是任何普通 Linux 系統上的標準基本設備,也許這樣做有一些優點。

repoquery --whatrequires iptables

需要一兩分鐘(雖然依賴項是正常包元資料的一部分,但「依賴項」不是,所以這個查詢需要一些工作)並顯示一個相當大的列表(在Fedora 20 上對我來說大約有50 個包)。考慮到進一步附加到這些事物的事物鏈(「刪除 262 個軟體包...」),您的系統處於半癱瘓狀態也就不足為奇了。

無論如何,您可以從高級軟體包開始重新安裝其中許多東西。在這方面有用的是yum searchyum provides和等命令repquery --list。要恢復您的 ssh 用戶端:

yum install openssh-clients

當然,您需要另一種方式來訪問該系統,希望它不是在冰島的農場上,否則您將不得不撥打一些電話。您也因事物的外觀而失去了 X,因此當您插入螢幕和鍵盤時,請不要對此感到驚訝。

我們都會時不時、不經意地做出愚蠢的事。

相關內容