커널 업데이트는 옵션이 아니며 iptables를 실행하려고 하면 다음 메시지가 나타납니다.
root@mail:/etc/postfix# iptables -L
libkmod: ERROR ../libkmod/libkmod.c:554 kmod_search_moddep: could not open moddep file '/lib/modules/2.6.32-5-xen-amd64/modules.dep.bin'
iptables v1.4.14: can't initialize iptables table `filter': Table does not exist (do you need to insmod?)
Perhaps iptables or your kernel needs to be upgraded.
고쳐 쓰다:
달리고 난 후
root@mail:/home/admin# sudo depmod
알겠어요
ERROR: could not open directory /lib/modules/2.6.32-5-xen-amd64: No such file or directory
FATAL: could not search modules: No such file or directory
~ 후에
root@mail:/home/admin# sudo modinfo ip_tables
알겠어요
libkmod: ERROR ../libkmod/libkmod.c:554 kmod_search_moddep: could not open moddep file '/lib/modules/2.6.32-5-xen-amd64/modules.dep.bin'
ERROR: Module alias ip_tables not found.
커널 업데이트가 필요한 것 같습니다.
답변1
최근에 이 설치의 커널을 업그레이드하셨습니까? 일반적으로 iptables는 커널에 내장되어 있으며 기본적으로 외부 모듈이 아닙니다(보통 - 많은 경우 그렇지 않다고 확신합니다).
depmod 명령을 사용하여 모듈 로딩 순서를 다시 계산해 보면 문제가 해결되는 경우가 있습니다.
sudo depmod
적용하려면 depmod를 실행한 후 다시 시작해야 합니다. 오류가 발생하면 질문을 업데이트하세요.
그런 다음 ip_tables.ko
존재하는지 확인하십시오.
sudo modinfo ip_tables
로드되지 않으면 다음을 로드해 보십시오.
sudo modprobe ip_tables
마지막으로, 잠재적으로 귀중한 데이터 포인트로서 이 명령에서 사용되는 iptables 관련 커널 모듈을 확인하고 세부 사항으로 질문을 업데이트하십시오.
cat /proc/net/ip_tables_matches
찾을 수 없으면 파일이 시스템에 있는지 확인하십시오.
find / -name "ip_tables.ko"
그렇지 않다면 적어도 커널 버전에 맞는 커널 모듈을 다시 빌드(또는 패키지에서 다시 설치)해야 한다고 생각합니다.