
為了刪除 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 search
、yum provides
和等命令repquery --list
。要恢復您的 ssh 用戶端:
yum install openssh-clients
當然,您需要另一種方式來訪問該系統,希望它不是在冰島的農場上,否則您將不得不撥打一些電話。您也因事物的外觀而失去了 X,因此當您插入螢幕和鍵盤時,請不要對此感到驚訝。
我們都會時不時、不經意地做出愚蠢的事。