Slackware doesn’t fit onto one CD any more but the download sites don’t provide any DVD ISOs.
This annoyed me.
So I decided to make my own.
The theory is that we fetch all the ISOs, mount them on the loopback filesystem, copy all the files into one place, then make a new ISO from all the files, which we then burn to DVD.
You will need the following:
Fetch the ISOs..
Use a Slackware mirror. Not all mirrors have the ISOs so shop around if you need to.
If you just want a regular install, you can just get the first two. I got all four as they will all fit onto one DVD, so why not.
I also downloaded all the patches.
I intended to patch the install at this point by replacing the existing packages with the patched versions but the version numbers didn’t match and I didn’t think it would work.
Having the patches on the DVD is handy though and there’s enough space for it so I kept them.
Mount each ISO on loopback
You now need to mount each ISO on the loopback interface.
To do this you will need the loopback support in your kernel (this should not be a problem usually).
To mount the first ISO I issued the following commands (I needed to be root to do the mount):
mkdir /tmp/dvd-iso
mkdir /tmp/image
mount -o loop slackware-10.0-install-d1.iso /tmp/image
cp -a /tmp/image/* /tmp/dvd-iso
umount /tmp/image
That copies the files from the first ISO.
Note: There are some files that have the same name on more than ISO, which will get overwritten on each subsequent copy.
I didn’t mind about this as they were all unimportant README files and the like.
If you want to make sure that the retained files are the ones from the first ISO then mount and copy the ISOs in reverse order (this ensures the README files from ISO one overwrite the ones from any other ISOs).
If you’re tight on disk space you could get away with deleting that ISO file now, but I’d not recommend it in case you make a mistake and need to start again from scratch.
If you delete it and your disk space free doesn’t appear to change, make sure you actually unmounted it (run mount to check).
Next mount and copy the files from ISO two.
mount -o loop slackware-10.0-install-d2.iso /tmp/image
cp -a /tmp/image/* /tmp/dvd-iso
umount /tmp/image
Repeat for ISOs 3 and 4 if you downloaded them, and copy in all the patches if you got them too.
I fetched everything and after I was done it took up 2.8G (du /tmp/dvd-iso
) of space.
Make the ISO
I followed the instructions on the first ISO to create the disk image as that makes it bootable.
The command I used was:
cd /tmp/dvd-iso
mkisofs -o /tmp/dvd-image.iso -R -J -V "Slackware Install" -hide-rr-moved -v -d -N -no-emul-boot -boot-load-size 4 -boot-info-table -sort isolinux/iso.sort -b isolinux/isolinux.bin -c isolinux/isolinux.boot -A "Slackware Install CD" .
Burn DVD
My DVD burner is on Windows but the software (Nero) allows you to burn an ISO file so I copied it over the network and burnt it from there.
I guess you could use cdrecord if your DVD burner is on Linux, but if it is, you probably already know how to burn a DVD.
When the DVD is done, reboot to test.
Mine worked perfectly and I used it to install Slackware 10 on a new PC.
Good luck if you decide to try it yourself!
Post a comment if you get stuck, or spot a mistake etc.
hi mate just asking this possable to make isos through windows and also id like to say thanks mate cause ive been looking on internet to find a page like this should work with other isos like debian
I did a quick search and found a guide to making Slackware bootable ISOs under Windows.
Good luck!
Hi there
I read that you burned an iso to dvd using Nero.
I’m in the process of creating a Fedora dvd also using Nero (6.3). The trouble i’m having is getting the dvd to boot after burning. My question is obviusly is how to create a bootable iso for dvd in Nero.
Hope you can help me!
Thnx
Peter
Hi.
The ISO has to be made to be bootable at the time you run mkisofs.
Nero has nothing to do with making it bootable.
The example I give for mkisofs relies on certain files being present
(these are of course part of the Slackware install).
You need to find out if Fedora has these files too.
If you have instructions for making a bootable CD then you can use
those, as that’s all I did.
Good luck.
Darren
Tanks for your quick reaction to my problem.
Problem solved, was missing a boot.img file.
Once i retrieved the file everything work fine.
Fedora is now installing on an old pentium 3.
cheers
Hello,
thanks for this article, it it very helpful. I have one question thoug.
I’ve unpacked all the files from the four CD-s and it looks a lot like slackware-current directory of http://ftp.slackware.com (of course with older programs).
I was wondering if it is possible to download slackware-current, and make that into a bootable, installable DVD with your method?
Gergely
Really good article, congrats
I was wondering if anyone has tried to make a Boootable DVD with multiple distros, souds realy cool but i dont have any idea to do this.
Any idea???
mkisofs: Missing pathspec
Just to warn you about the pitfalls of forgetting the peropd ‘.’ at the end of the command. I realized it after 5-10mins of frustration. This is really a very cool quick & dirty guide.
Thumbs up
I want to create a DVD where in I can put 2-3 distros and all are installable. DVD should be bootable and a menu should appear that what distro you want to install any clues..
Kindly let me know as soon as possible.
How do I do this in Mandrake? I mean which sort tables and boot files to use?
Thanks
I’m having a problem with creating the DVD ISO that is greater than 2GB in size. If I use all 4 Slackware CD iso’s then the DVD iso will be 2.8GB in size. How did you get around this issue?
Fantastic! I love this guide! Used it with my slackware 10.1 isos.
To simplify the steps.
mkdir /tmp/dvd-iso && mkdir /tmp/image
then change (
cd bleh
) into where you’re iso(s) aremount -o loop slackware-10.0-source-d4.iso /tmp/image && cp -a /tmp/image/* /tmp/dvd-iso && umount /tmp/image && mount -o loop slackware-10.0-source-d3.iso /tmp/image && cp -a /tmp/image/* /tmp/dvd-iso && umount /tmp/image && mount -o loop slackware-10.0-install-d2.iso /tmp/image && cp -a /tmp/image/*
/tmp/dvd-iso && umount /tmp/image && mount -o loop slackware-10.0-install-d1.iso /tmp/image && cp -a /tmp/image/* /tmp/dvd-iso && umount /tmp/image
then
cd /tmp/dvd-iso && mkisofs -o /tmp/dvd-image.iso -R -J -V "Slackware Install" -hide-rr-moved -v -d -N -no-emul-boot -boot-load-size 4 -boot-info-table -sort isolinux/iso.sort -b isolinux/isolinux.bin -c isolinux/isolinux.boot -A "Slackware Install CD" .
I think maybe you could mash it into one step, but some unix systems would hang because of the overly large command.
cp –reply=yes -a ./* /home/louis/SlackDVD
that avoids the need to say yes to overwrite all the time…
Thanks for the guide. I created mine under windows using the Win32 compiled version of MKISOFS which can be found here:
http://smithii.com/?q=node/view/9
One important thing to note if your doing this is to ensure that you copy the files in reverse order (ie, make sure Disk1 files are copied into your compilation dir last). Otherwise it will screw-up.
I used ISObuster (or I could have mounted them with daemon-tools) to extract the ISO images to a single dir, then from a command-promt in that dir I ran:
mkisofs -o c:/temp/slackware.iso -R -J -V “Slackware Install” -hide-rr-moved -v -d -N -no-emul-boot -boot-load-size 32 -boot-info-table -sort ISOLINUX/iso.sort -b ISOLINUX/isolinux.bin -c ISOLINUX/isolinux.boot -A “Slackware Install CD” .
**Addendum to my last post**
OK, turns out that method didnt work right (booted, but in setup not all the packages where in install).
Turns out using ISObuster to extract all the files had the effect of upper-casing everthing (not good for making linux scripts happy right…).
Thats why my command line above was edited to caps for the ISOLINUX locations.
So.. Did it again, this time mounting the ISO with Deamon-Tools and manually copying everthing into a single dir. Then ran this command-line in that location:
mkisofs -o c:/temp/slackware.iso -R -J -V “Slackware Install” -hide-rr-moved -v -d -N -no-emul-boot -boot-load-size 32 -boot-info-table -sort isolinux/iso.sort -b isolinux/isolinux.bin -c isolinux/isolinux.boot -A “Slackware Install CD” .
Now it works. Horah (and I didnt even get a coaster as im playing mounting ISO for install in VMWare).
Thank you very much, I use this to make a slackware-current DVD.
But I have added a -iso level 3 to the mkisofs, current has some longer names.
try this link …
http://www.cdshell.org
You may find it interesting.
It offers the posibility to boot multiple images.
I think…
I haven’t tryed it yet.
Good luck
For some reason the newer versions of mkisofs barf on the command now. It was good when this worked 🙁
mkisofs: Missing pathspec.
Usage: mkisofs [options] file…
Use mkisofs -help
to get a list of valid options.
solution is described here http://linuxfromscratch.org/pipermail/blfs-support/2003-April/039113.html
Antinous Kalisto – note the period at the end of the command..
mkisofs -o c:/temp/slackware.iso -R -J -V “Slackware Install” -hide-rr-moved -v -d -N -no-emul-boot -boot-load-size 32 -boot-info-table -sort isolinux/iso.sort -b isolinux/isolinux.bin -c isolinux/isolinux.boot -A “Slackware Install CD” .
🙂
I made a dvd like this, it boots on other systems except mine. So probably my BIOS have a problem booting this dvd. It boots from other original linux DVD (another distribution) but doesn’t from the dvd that I made with slack 10.1 and 10.2.
To the guy that’s having a problem with the 2gig limit, check that the filesystem is not vfat, it has a 2 gig limit
Great work, I just created a remastered version of slackware using your idea as a basis.
This is proboboly stupid but why do you create two directories? /tmp/dvd-iso /tmp/image? Shouldn’t you only need one? Dont both contain the same files?
I followed the instructions on the first ISO to create the disk image as that makes it bootable.
How do I view these instructions? Do I open the iso in a text editor? Sorry im a noob.
Thanks.
For those who have trouble or can’t be bothered to make your own Slackware DVD you can download an ISO from a few sites
ftp://ftp.slackware.no/pub/linux/ISO-images/Slackware/Current-ISO-build/
and
http://mirrors.unixsol.org/slackware/slackware-10.2-iso-unofficial/
its works with 10.2!
thanks!
http://www.drand.ru/linux/slackware-10.2-iso-to-dvd.sh
much more accurate script.
Mirror `slackware-10.2-iso` dir from FTP.
Invoke # slackware-10.2-iso-to-dvd.sh 10.2
Invoke # cat slackware-10.2-dvd.iso.aa slackware-10.2-dvd.iso.ab … >slackware-10.2-dvd.iso
For Windows invoke # copy /B slackware-10.2-dvd.iso.aa+slackware-10.2-dvd.iso.ab+… slackware-10.2-dvd.iso
I have just done this for slackware 10.2 (first 2 disks) it booted well and installed just fine.
Just change 10.0 > 10.2
Thanks,
I presume this will work for any distro.
Hey guys, why all the comotion with loop back mount?
The important things to remember are that the boot image is isolinux/isolinux.bin and to put the catalog in isolinux/isolinux.boot, then I guess it’d work just dumping packages into slakware, as in the good old days.