在CentOS4.3 Server上安装MPPE+pptpd

装了个CentOS4.3Server,只有一张CD,装完后安装pptpd(http://www.poptop.org/),按照文档http://www.members.optushome.com.au/~wskwok/poptop_ads_howto_1.htm 安装。安装dkms-2.0.10-1.noarch.rpm成功,安装kernel_ppp_mppe-1.0.2-3dkms.noarch.rpm时出现:
DKMS: add Completed.
Module build for the currently running kernel was skipped
since the kernel source for this kernel does not seem to be
installed.
上网狂搜一轮,找到一个如何安装kernel源码和建立build环境的帖子(http://www.centos.org/modules/newbb/viewtopic.php?topic_id=4072),照着做了,出错依旧。又找到一个帖子说yum install kernel-devel就行了,结果还是不行。哦,我的uname -r是2.6.9-34.ELsmp,yum list|grep kernel看一下,还有个kernel-smp-devel,那就yum install kernel-smp-devel吧,怎么还不行?到底什么情况下才会出这个错误信息呢,再找,在kernel_ppp_mppe的安装源码目录/var/lib/dkms/kernel_ppp_mppe/1.0.2/source下(安装过程中有提示)找到一个kernel_ppp_mppe.spec文件中有这样一段:
if [ `uname -r | grep -c "BOOT"` -eq 0 ] && [ -e /lib/modules/`uname -r`/build/include ] ; then
        dkms build -m kernel_ppp_mppe -v %{version}
        dkms install -m kernel_ppp_mppe -v %{version}
elif [ `uname -r | grep -c "BOOT"` -gt 0 ]; then
        echo -e "Module build for the currently running kernel was skipped"
        echo -e "since you are running a BOOT variant of the kernel."
else
        echo -e "Module build for the currently running kernel was skipped"
        echo -e "since the kernel source for this kernel does not seem to be"
        echo -e "installed."

原来不存在/lib/module/`uname -r`/build/include时就会报这个错。我的uname -r是2.6.9-34.ELsmp,在/lib/modules/2.6.9-34.ELsmp下根本没有build目录,可/lib/modules/2.6.9-34.0.2.ELsmp下有一个叫build的symbolic link指向/usr/src/kernels/2.6.9-34.0.2.EL-smp-i686,再看看我刚才装的kernel-smp-kernel版本是2.6.9-34.0.2,难道是版本升级了的问题?在/lib/modules/2.6.9-34.ELsmp下ln -s /usr/src/kernels/2.6.9.34.0.2.ELsmp build,再rpm -ivh kernel_ppp_mppe-1.0.2-3dkms.noarch.rpm,一切正常,modprobe ppp-compress-18 && echo ok 显示ok,终于成功了。
升级ppp到2.4.3(pptpd1.3.0要求ppp2.4.3以上):rpm -Uvh ppp-2.4.3-5.rhel4.i386.rpm
安装pptpd:rpm -ivh pptpd-1.3.0-0.i386.rpm
终于搞定了。

原文地址:https://www.cnblogs.com/amonw/p/482276.html