http://bugs.centos.org/bug_view_page.php?bug_id=3141&history=1 |
12월 10일 현재에도 위 버그에 대해 fix되어 나오지 않은 상태입니다.
아래 사항을 봐서는 CentOS 4.8 에서나 패치될 것으로 보입니다.
Bug # 456664
https://bugzilla.redhat.com/show_bug.cgi?id=461297
임시조치
iptables 의 모듈을 unload 할때 커널 패닉이 일어나는 현상 같은데
아래와 같이 스트립트를 수정하면 된다고 하네요
This will switch a couple of lines in the /etc/init.d/iptables file.
The original file (near line 200 or so):
Quote:
if [ "x$IPTABLES_MODULES_UNLOAD" = "xyes" ]; then
echo -n $"Unloading $IPTABLES modules: "
ret=0
rmmod_r ${IPV}_tables
let ret+=$?;
rmmod_r ${IPV}_conntrack
let ret+=$?;
[ $ret -eq 0 ] && success || failure
echo
fi
will be changed to:
Quote:
if [ "x$IPTABLES_MODULES_UNLOAD" = "xyes" ]; then
echo -n $"Unloading $IPTABLES modules: "
ret=0
rmmod_r ${IPV}_conntrack
let ret+=$?;
rmmod_r ${IPV}_tables
let ret+=$?;
[ $ret -eq 0 ] && success || failure
echo
fi
위 스크립트 상에서 rmmod_r 은 스크립트에서 사용하는 함수이며 함수 내부적으로 modprobe -r 을 호출하여 모듈을 제거합니다.
modprobe 의 man page 에서 -r 은 다음과 같네요
-r --remove
This option causes modprobe to remove, rather than insert a module. If the modules it depends on are also unused, modprobe will try to remove
them, too. Unlike insertion, more than one module can be specified on the command line (it does not make sense to specify module parameters when
removing modules).
There is usually no reason to remove modules, but some buggy modules require it. Your kernel may not support removal of modules.