For this process, you will need two computers, a USB thumbdrive, and a CD burner. One computer will need an internet connection to download the build script and unzip it since the SUSE pc will not have an internet connection. When it comes to moving files back and forth between the two PCs, I use a 512mb USB thumb drive. This works well because most of the files are small and I can move them all over at a time.
For this, I am using a 32bit computer. Using a 64 bit computer to compile the kernel will put files in a different directory structure, and give you different options when you compile the kernel.
The SUSE 10.0 DVD is available for download from one of the mirrors listed at
Novell ZENworks 6.5 Build Script BUILDSCRIPT.ZIP is located for download from forge.novell.com.
My corrected .config and network.s files are contained in the custom65iso.zip download
WARNING: This will erase everything you have on the SUSE computer. YOU WILL LOSE ALL DATA ON THE HARD DRIVE. Do this only if you want to erase what’s on your drive. If you don’t want to lose info on this pc, find another one. Follow these instructions at your own risk.
- Boot to the DVD and Install SUSE 10
- Next on English
- Accept the licensing
- New Install and click NEXT
- Set your time if you so please. Not necessary so I just hit NEXT.
- Select KDE and hit NEXT
- Click Software to Change
- click on C/C++ compiler and tools, select GCC, and GLIBC-DEVEL, NCURSES-DEVEL
- click on Kernel Development and select KERNEL SOURCE, QT3-DEVEL.
- click on Accept.
- Click on Continue to approve the automatic changes
- Click on Accept
- Click on I AGREE on flash player.
- Click on INSTALL
- Grab a cup of coffee. It will take a few minutes to install. PC will reboot automatically.
- Enter in your Root password and click NEXT
- NO Skip the internet test and click NEXT
- Local on authentication method and Click NEXT
- Leave the info blank and click NEXT on Local User
- Click YES
- Click NEXT on release notes
- Click NEXT on hardware configuration
- Click FINISH
- Log in as ROOT
- Close the welcome screen and any other hello screens that pop up.
- I like to reboot once here, just because I want everything to come up good at least 1 time.
- After the reboot, log back in as ROOT
Click NEXT on network configuration – you don’t need to configure anything, you won’t use it anyway.
SUSE 10 is now installed and ready to work. To complete the next part, you will need the ZFD6.5-BUILD.TGZ file, the .config file, and the corrected network.s script put on your USB thumbdrive.
Go ahead and plug the thumbdrive into the SUSE PC and get it ready. Anywhere I reference copying a file, I use the graphical interface and not a command line. If you are familiar enough with Linux to do this, you should be able to figure out the correct commands to get the files where they need to be.
Lets compile the kernel first
Copy over the special .config file into /usr/src/linux-2.6.13-15 on your SUSE PC. This is the .config file that I have constructed.
Start a terminal – the terminal icon on your task bar on the bottom is handy shortcut for this.
Cd into the linux source directory
If you want to add or remove any modules or drivers, do this in xconfig
Edit the .config file from here, add what you need if you need, remove what you don’t. Be careful, add too much the kernel is too large, remove what you shouldn’t and your kernel may not work.
Compile the kernel
Make clean dep bzImage modules modules_install
If you get an error like Inconsistent Kallsyms Data, go back into Make xconfig and set the CONFIG_KALLSYMS_EXTRA_PASS to y Save and exit, then delete the /lib/modules/linux-2.6.13-15-default directory and re-compile the kernel.
After it finishes compiling, change to the /root directory and leave the terminal window open for the next step.
Now lets make the ISO.
- We need the zfd6.5-build.tgz from your zip thumbdrive.
- copy zfd6.5-build.tgz into /root on your SUSE PC.
- Untar the file in your terminal screen. You should be at /root.
- Tar –xvzf zfd6.5-build.tgz
- Edit your environ.cfg. In your terminal screen still in /root, do the following
- Cd zfd6.5
- Kwrite environ.cfg
- Change the file to point to the correct kernel version and path and removing the pcmcia part to read like the following:
Save it and exit kwrite
Copy the network.s script from your thumb drive to /root/zfd6.5/minix/bin overwriting the existing file.
You can edit the NWDRIVERLIST file located in /root/zfd6.5/minix/etc. I removed the unneeded nics, and added the e1000 and e100. Put in the ones that you know you will have in your PCs.
If you want to add any scripts, put them into /root/zfd6.5/minix/bin
If you want to customize the menu that comes up on the screen at bootup, edit the boot.msg file located in /root/zfd6.5/sources/syslinux. You can also edit the isolinux.cfg if you know what you are doing. I leave it alone for this.
We’re ready, lets build this baby!
Back at the console, still at /root/zfd6.5 type in the following to build the images
When it’s done, you will see
If you don’t use my .config file and you receive any errors such as insufficient room to copy, you will have to go back to your terminal window and go into /usr/src/linux-2.6.13-15 and run MAKE XCONFIG and check the CONFIG_BLK_DEV_RAM_SIZE= and make sure it is set to 16384. You may also want to go back in and add or remove drivers as needed. Print out my .config file and use that as a guide for which modules you can remove and what needs to stay. If you have to recompile the kernel, be sure to delete the /lib/modules/linux-2.6.13-15-default directory before re-running the compile command again. If you do re-compile, be sure to go back to the /root/zfd6.5 and run the ./mk_all.s to rebuild the ISO.
At this point, I copy the BOOTCD.ISO file located in /root/zfd6.5/images to my USB thumbdrive. Other files created are the linux.1, linux.2 and addon.tgz should you need them.
From here, take the USB thumbdrive to a pc with a CD burner on it, edit the bootcd.iso with WinISO and add your settings.txt, save then burn it to cd and you’re ready to image.