阿里云组播代理安装

因为项目中需要用到组播,但是阿里云默认不支持组播,需要安装组播代理:https://help.aliyun.com/document_detail/73698.html,我这里使用的是Linux内核态组播工具。

首先是阿里云提供的安装kernel-devel的命令可能不能正确安装,我们需要执行下列命令:

yum install kernel-devel

按照阿里云提供的命令编译rpm的时候发现出现了一个问题:

make -C kmod
make[1]: Entering directory `/home/multi/multicast_proxy-master/multicast_kernel/rpmbuild_multicast/BUILD/multi_server-1.1/kmod'
make -C /lib/modules/`uname -r`/build M=/home/multi/multicast_proxy-master/multicast_kernel/rpmbuild_multicast/BUILD/multi_server-1.1/kmod modules
make: Entering an unknown directory
make: *** /lib/modules/2.6.32-573.el6.x86_64/build: No such file or directory.  Stop.
make: Leaving an unknown directory
make[1]: *** [default] Error 2
make[1]: Leaving directory `/home/multi/multicast_proxy-master/multicast_kernel/rpmbuild_multicast/BUILD/multi_server-1.1/kmod'
make: *** [all] Error 2
error: Bad exit status from /var/tmp/rpm-tmp.6TYV75 (%build)


RPM build errors:
    Bad exit status from /var/tmp/rpm-tmp.6TYV75 (%build)
cp: cannot stat `/home/multi/multicast_proxy-master/multicast_kernel/rpmbuild_multicast/RPMS/x86_64/multi_server-1.1-1.x86_64.rpm': No such file or directory

日志显示/lib/modules/2.6.32-573.el6.x86_64/build不存在,我们查看一下,发现这个是一个软链接,而且并且发现一直在闪烁标识这个链接文件不存在。
只要我们重新创建这个链接就可以了:

ln -fs /usr/src/kernels/2.6.32-754.el6.x86_64/ /lib/modules/2.6.32-573.el6.x86_64/build

这样重新执行编译就可以了。