iptables - "moddep 파일을 열 수 없습니다"

iptables - "moddep 파일을 열 수 없습니다"

커널 업데이트는 옵션이 아니며 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"

그렇지 않다면 적어도 커널 버전에 맞는 커널 모듈을 다시 빌드(또는 패키지에서 다시 설치)해야 한다고 생각합니다.

관련 정보