在虚拟机Ubuntu系统中安装openstack的过程中,出现的问题:
在安装Cinder的时候,按照官网教程需要安装
apt-get install iscsitarget iscsitarget-dkms
但是安装iscsitarget-dkms过程中会出错,错误提示如下:
Kernel preparation unnecessary for this kernel. Skipping...
Building module:
cleaning build area....
make KERNELRELEASE=3.2.0-5-generic -C /lib/modules/3.2.0-5-generic/build M=/var/lib/dkms/iscsitarget/1.4.20.2/build......(bad exit status: 2)
Error! Bad return status for module build on kernel: 3.2.0-5-generic (x86_64)
Consult /var/lib/dkms/iscsitarget/1.4.20.2/build/make.log for more information.
结果就是之后启动iscsitarget服务的时候会报错:
FATAL: Module iscsi_trgt not found.
这是由于编译的时候缺少头文件<linux/export.h>和<linux/module.h>造成的。最新版本的iscsitarget已经解决了这个问题。iscsitarget最新版本可以在这里找到:
https://launchpad.net/ubuntu/+source/iscsitarget
因为通过apt-get install的iscsitarget并不是最新版本,所以会造成上述错误。解决办法如下:
到https://launchpad.net/ubuntu/+ppas 搜索"iscsitarget",如图所示
然后选择包含最新版本iscsitarget的源,比如:
然后添加源并更新:
add-apt-repository ppa:smb/iscsitarget
apt-get update
之后
apt-get install iscsitarget iscsitarget-dkms
就可以一路成功了。