For proof of concept we need a machine, a kernel source to get the module from, and some RPM packages provided by SuSE.
We install Ubuntu Intrepid on a test machine. We will eventually try to install on Hardy, but there is a kernel module involved, which may give hard to debug problems. Intrepid has a 2.6.27 kernel, as does OpenSuSE 11.1, so we try to make POC with these versions first. On the test/packaging machine, we also need a few packages:
sudo apt-get install alien rpm lzma dkms build-essential linux-headers-`uname -r` linux-headers-generic debhelper dh-make subversion pbuilder ubuntu-dev-tools dpatch
And we run apt-get dist-upgrade and reboot, so we can be sure to have the headers and modules for the running kernel.
From SuSE we need two things: the kernel source and a bunch of packages. The kernel we want to use is from the OpenSuSE distribution, which is the SuSE testbed. I picked an OpenSuSE mirror close to me, and downloaded: wget http://mirror.mydomain/pub/os/linux/distr/opensuse/update/11.1/rpm/i586/kernel-source-2.6.27.19-3.2.1.i586.rpm
The Novell Client, as it is called, is distributed by Novell on a separate CD image that doesn't contain much else. It can be fetched as Novell_Client_11.0-i386-20081003-CD1.iso from the Novell site. The site requires registration, but that is free of charge. And the RuG has licenses for SuSE, so we can even use an official account.
Note | |
---|---|
There are multiple versions of the CD available, and 64-bit versions exist as well. This section is about the 32-bit case and the mentioned version. |
So we mount the CD and get the packages, then we delete a few we 're not going to use:
sudo mount -o loop,ro novell-client-2.0-sp2-sle11-i586.iso /mnt/
mkdir novfs-packages
cp /mnt/suse/i586/*.rpm novfs-packages/
cd novfs-packages/
rm yast2-novell-client-2.0.0-22.i586.rpm novell-*plugin*
ls
nici-2.7.4-6.i586.rpm novell-filesystem-0.0.1-21.i586.rpm novell-qtgui-3.0.b508-17.i586.rpm novell-xtier-base-3.1.6-12.i586.rpm
novell-client-2.0.0-29.i586.rpm novell-nmasclient-3.4.0-21.i586.rpm novell-ui-base-3.0.b508-5.i586.rpm novell-xtier-core-3.1.6-12.i586.rpm
novell-client-script-2.0.0-32.i586.rpm novell-novfsd-3.0.0-14.i586.rpm novell-xplatlib-1.0.3-39.i586.rpm novell-xtier-xplat-3.1.6-12.i586.rpm
So, with all necessities fetched, the tree looks like this:
novfs-hack/
novfs-hack/sources
novfs-hack/sources/novell-client-2.0-sp2-sle11-i586.iso
novfs-hack/sources/kernel-source-2.6.27.19-3.2.1.i586.rpm
novfs-hack/wd
novfs-hack/novfs-rpms/novell-xtier-xplat-3.1.6-12.i586.rpm
novfs-hack/novfs-rpms/novell-xtier-core-3.1.6-12.i586.rpm
novfs-hack/novfs-rpms/novell-xtier-base-3.1.6-12.i586.rpm
novfs-hack/novfs-rpms/novell-xplatlib-1.0.3-39.i586.rpm
novfs-hack/novfs-rpms/novell-ui-base-3.0.b508-5.i586.rpm
novfs-hack/novfs-rpms/novell-qtgui-3.0.b508-17.i586.rpm
novfs-hack/novfs-rpms/novell-novfsd-3.0.0-14.i586.rpm
novfs-hack/novfs-rpms/novell-nmasclient-3.4.0-21.i586.rpm
novfs-hack/novfs-rpms/novell-filesystem-0.0.1-21.i586.rpm
novfs-hack/novfs-rpms/novell-client-script-2.0.0-32.i586.rpm
novfs-hack/novfs-rpms/novell-client-2.0.0-29.i586.rpm
novfs-hack/novfs-rpms/nici-2.7.4-6.i586.rpm
In the rest of this section, unless specified, we work from ~/novfs-hack