mkCDrec Make CD-ROM Recovery
 
Web mkcdrec.sourceforge.net
  

Frequently Asked Questions (FAQ) List


Index



General Questions

Errors during "make" process

Boot Problems with mkCDrec

Once booted from the mkCDrec CD-ROM


Q:  How do I format a 1.722 Mb floppy

A:
Insert a 1.44 Mb floppy into drive A: and type the following: 
LD_LIBRARY_PATH=/usr/i486-linux-libc5/lib/; fdformat /dev/fd0u1722 

Q:  During "make" I see the error /dev/ram0: No such device

A:
The current linux kernel does not support DEV RAM and INITRD. Please check the file /usr/src/linux/.config for the following lines: 
  CONFIG_BLK_DEV_IDECD=y (or m)
  CONFIG_FAT_FS=y (or m)
  CONFIG_MSDOS_FS=y (or m)
  CONFIG_BLK_DEV_LOOP=y (or m) 
  CONFIG_ISO9660_FS=y (or m)
  CONFIG_JOLIET=y 
  CONFIG_BLK_DEV_RAM=y 
  CONFIG_BLK_DEV_RAM_SIZE=4096 or 8192 
  CONFIG_BLK_DEV_INITRD=y 
Therefore, re-run a make config on the linux sources and re-install vmlinuz + reboot the system. Then retry the mkcdrec make. See also the 'prerequisites' in the introduction document. 
Also have a look into the 'mkcdrec.log' file before sending me an e-mail. Sometimes the answer is in there ;-) 
 

Q:  Could not find any loop device

A:
This indicates that your current kernel does not support a loopback device (/dev/loop). Probably you will see an error message saying "The loopback mount of rd-base.img failed. " To resolve see the first question

Q:  Can I use a CD-writer under Windows for CDrec.iso

A:
For Easy CD: rename to cdrec.iso
For WinOnCD: rename to cdrec.raw

With Easy CD Creator:

Open Easy CD Creator 
Go to "File" 
then to "Create CD from disc image" 
make sure to change the bottom drop down menu ("Files of type:") to say 
"ISO image files" 

It will do the rest after you browse to the *.iso file 

With WinOnCD:

you can select a 
"track-image" project when you click the New button.  So long as you are 
in track mode, not file-system mode (how that looks depends on whether 
you have 3.0 or 3.5) then dragging a track image file onto the CD window 
should accept it as a raw track.  WinOnCD uses .RAW as its own 
extension. 

With CD-Record (under Unix/Linux):

CD-Writing HowTo: 
http://www.ibiblio.org/pub/Linux/docs/HOWTO/CD-Writing-HOWTO

For example: 
cdrecord -v speed=4 dev=4,0 CDrec.iso 
You get the number on the SCSI bus number with "cdrecord --scanbus" 
 

Q:  How to print the web pages?

A:
If you print the page in portrait mode, text on the right side of the page will be cut off. To print the entire width of the web page, choose landscape mode from your printer menu. To do this, you will either need to change the 'Page setup?' or adjust the 'Properties' for your printer with in the 'Print?.' dialog box. If you encounter trouble, consult the documentation or help within your browser. 

Q:  Does mkCDrec uses tar or dump to archive file systems

A:
mkCDrec uses GNU tar to create/extract file systems on CD-ROM or remote. Each tar-ball is compresses with bzip2 (or gzip) for further decrease the used file space. Note that Busybox also includes a tar, but we did not compile that one, as GNU tar has more options we want to use at restore time. 
 

Q:  During make I see the message "no space left"

A:
Error occurs during the run of rd-base.sh script :
This implicates that there is no space left in the /dev/ram. By default the size of the ram disk is 24 Mb. At boot time the ramdisk reserves 24 Mb for restoring the ram disk in memory. If rd-base.sh script detects a problem it will give a warning as continuing does not make much sense at this point. 
Error is also seen when ramdisk runs out of inodes (check with df -i).
A variable for the RAMDISK_SIZE  is defined in Config.sh

Error occurs during the run of initrd.sh :
By default the size of the initial ram disk is 2500 Kb, which is sufficient in most cases. However, since kernel 2.4.x was introduced (and a bigger libc) it could happen that this is not enough anymore. In Config.sh file there is a parameter INITRDSIZE=2500. The 2500 may be increased to 4096 which is the minimal size of an initrd as set by the kernel (see /usr/src/linux/.config file:  CONFIG_BLK_DEV_RAM_SIZE=4096). 
Or, with Mandrake 9.2 the initial ramdisk may run full because insmod and modprobe became static binaries instead of using shared libraries. Therefore, their size increased drastically which causes the "no space left on device" fatal error. MkCDrec v0.7.7 fixes this, or edit the initrd.sh script and remove "modprobe" from the list of binaries.
The latest Linux distributions which are based on the 2.6.x kernels tend to have a far bigger size then before. For this reason the initial ramdisk size of 4096 Kb is becoming too small. Some distributions have the config file present in the /proc filesystem, called /proc/config.gz. MkCDrec will check this file, if present, and report the size. If mkcdrec cannot detect the current size of the initial ramdisk the default value of 4096 will be used.
Furthermore, as a result of bigger kernels the bootflop.img is becoming too small too. The only solution is the install the "mkcdrec utilities" which uses isolinux instead of syslinux to boot from CD-ROM.

Error occurs during the run of bootflop.sh :
If you run out of disk space on the bootfloppy image then if probably means that the 
BOOT_FLOPPY_DENSITY=HD 
was set in the Config.sh file (means 1.44 Mb size). You can increase this to 2.88 Mb by replacing HD by ED. The drawback is with ED it is not possible anymore to make a physical boot floppy. 
If you still run out of disk space with the ED setting then something is seriously wrong! Check mkcdrec.log for details if any.
Please note that when mkCDrec Utilities are installed within mkcdrec directory then automatically isolinux is used instead of syslinux. The big advantage of isolinux is it doesn't emulate a bootfloppy, and therefore, has no size restriction of a floppy be it 1.44 or 2.88 Mb. The drawback is of course that no physical floppy can be made in this way.
Or, with Mandrake 9.2 the bigger initrd.gz file may be the cause that 2.88 Mb bootfloppy size is exceeded, and it fails with the message "bootfloppy is FULL". The solution is to reduce the size of initrd (see above).

Q:  Where is the syslog file?

A:
From v0.5.0 on the syslog is stored in de /var/log/messages file. 
 

Q:  Does mkCDrec make a log file?

A:
Yes. Check the file $MKCDREC_DIR/mkcdrec.log file for information captured during the make file . You will find information make by the scripts rd-base.sh (which makes the basic ram disk) and initrd.sh script (which makes the initial ram disk). 
Other log files are the output listing of the tar commands. These can be found on the $ISOFS_DIR directory and also on the final ISO image. 
 

Q:  Booting off the CDrec CD-ROM freezes at "linux.."

A:
Finding a single explanation for this behavior is not straightforward, nor easy. I can recommend the following steps which could lead to the cause of this problem. In fact I call these steps reverse engineering on how to make a boot image... 
1. Check the mkcdrec.log file for error messages. An example is included in doc/
2. Try to mount the CDrec.iso image as follow: 
 

# mount  -o loop  ./CDrec.iso  /mnt/cdrom
# cd  /mnt/cdrom
3. Mount the bootflop.img on /mnt/floppy 
 

# mount -t msdos -o loop ./bootflop.img /mnt/floppy
# cd /mnt/floppy
# ls -l
total 1224
-rwxr-xr-x   1 root     root       719078 Dec 22 14:00 initrd.gz
-r-xr-xr-x   1 root     root         5980 Dec 22 14:00 ldlinux.sys
-rwxr-xr-x   1 root     root       524314 Dec 22 14:00 linux
-rwxr-xr-x   1 root     root          488 Dec 22 14:00 mkcdrec.msg
-rwxr-xr-x   1 root     root           96 Dec 22 14:00 syslinux.cfg
4. Next step is to mount the initrd onto yet another mount-point ;-) 
 

# gunzip -c initrd.gz >/tmp/initrd
# mount -o loop /tmp/initrd /mnt/floppy1
# cd /mnt/floppy1
# ls -l
total 12
drwxr-xr-x   2 root     root         1024 Dec 22 14:00 bin
drwxr-xr-x   2 root     root         1024 Dec 22 14:00 dev
drwxr-xr-x   2 root     root         1024 Dec 22 14:00 etc
drwxr-xr-x   2 root     root         1024 Dec 22 14:00 lib
-rwx------   1 root     root         1516 Dec 22 14:00 linuxrc
drwxr-xr-x   2 root     root         1024 Dec 22 14:00 mnt
drwxr-xr-x   2 root     root         1024 Dec 22 14:00 proc
drwxr-xr-x   2 root     root         1024 Dec 22 14:00 sbin
drwxr-xr-x   3 root     root         1024 Dec 22 14:00 usr
drwxr-xr-x   3 root     root         1024 Dec 22 14:00 var
# cat linuxrc
If the last command (or the ls command) fails with the message "I/O error" you had luck and found the cause of the problem. The problems is your linux current kernel and gzip wrongly compresses the "nulls" on the ramdisk which corrupts the image at uncompressing. 
One known linux kernel which has this problem is:  - linux-2.2.10
5. If the initial ramdisk seems to be OK then the problem has to be with the linux kernel. Are you sure the linux kernel contains all the prerequisites mentioned in the introduction? 
  • Problems have been reported with gzip version below 1.2.4a - therefore, when in doubt grap the latest gzip distribution:
  • ftp://labrea.stanford.edu/pub/gnu/gzip
  • CONFIG_BLK_DEV_RAM_SIZE=4096 or 8192 is often misunderstood in the prerequisites! This is not the final ram size when  mkCDrec has been booted and is up and running (currently in 24 Mb). It is the amount of ram the initial bootstrap uses and 4 Mb is in most circumstances sufficient.

Q:  Cloning was successful, but at reboot I got a VFS panic

A:
Two possible errors are a bad reference in the /etc/lilo.conf file to a file system which does not exist on the cloned system, or something is wrong with the /etc/fstab file. 
Also, check /etc/HOSTNAME, /etc/hosts and the IP addresses on the cloned system! 
 

Q:  What does "bootflop.img" not found mean

A:
An error occured during the "bootflop.sh" script which makes the boot floppy image to make the CD boot under El Torito emulation. 
Most probably you did not included msdos support in your kernel. Yep, to make CDrec bootable one need "msdos" file system (you can hardly call it a file system) in your kernel. 
 

Q:  Could not mount bootflop.img

A:
If you an error message (see also included picture of the message): 
 

mount: could not find any device /dev/loop#
    ERROR:
Could not mount bootflop.img. Make sure that the "msdos" filesystem is in your kernel (or exist as module).

Type immediately the following command: 
# lsmod
Most likely the loop module will not be listed! That's the problem. To correct this type: 
# modprobe loop
This problem (not directly of mkcdrec by the way) will be corrected in v.0.5.1 and higher. If you do a make again it should work better now. 

Q:  During tape backup I get an I/O error

A:
If you see the following error message on your screen: 

I/O error
1882487+3 records in
1882488+1 records out an I/O error
then check the tape with the following command (e.g. on a HP-UX box): 
 

# mt -t /dev/rmt/0m stat
Drive:  HP C1537A
Format: DDS-1 format
Status: [a1111300] EOF EOT online compression immediate-report-mode
This clearly states that the tape reached the end of the tape, and therefore, tar had to stop with an I/O error. To be honest, the person got a warning before the tar started that it might not fit on the tape. 
Finding an easy way, before storing data on tape, how much data really fits on a tape is not yet implemented. It is on the ToDo list. 
 

Q:  During tar-it.sh I get a segmentation fault - what happens?

A:
If you see something like the following: 

/home/gratiend/src/recovery/mkcdrec/scripts/tar-it.sh: line 248:  5487 Segmentation fault       ${DEBUG} tar --create --verbose --same-owner --blocking-factor=512 --preserve-permissions --exclude-from=${TMP_DIR}/${_Fs}.exclude_list --${CMP_PROG} --file - .
      5488 Done                    | ${CUTSTREAM} 
Then it is not an error with mkCDrec, but there is something wrong with your system. Bad RAM, or disk problems. The mkCDrec Utilities has an excellent memory tester - check it out. 
See also http://www.BitWizard.nl/sig11/  for an in-depth explanation of the sig11 syndrome! 
 

Q:  Start-restore.sh stops with a weird fdisk message

A:
During start-restore.sh the script stops with the following message : 
 

sfdisk: I don't like these partitions - nothing changed
(If you really want this, use the --force options.)

You can solve it by editing the file /etc/recovery/sfdisk.hda  (replace hda with the correct disk name). Remember, vi is available to edit the file (or elvis), or whatever you have chosen to be the preferred editor. 
Before: 
 


sfdisk  /dev/hda  < /etc/recovery/partitions.hda

After: 
 


sfdisk  --force  /dev/hda  < /etc/recovery/partitions.hda
Restart the start-restore.sh  script and it won't complain this time ;-) 
 

Q:  CD was made OK, but it doesn't boot

A:
There are some points to check first: 
  • do a "make test" (should be successful)
  • check mkcdrec.log file for trivial errors
  • Check Config.sh: if BOOT_FLOPPY_DENSITY=HD tryED instead
  • redo "make", if it boots now then the bootflop.img was full but was not caught by the make procedure. It can happen that more space was needed than 1.44 Mb (HD), by using ED you have 2.88 Mb.
  • Check also if all loadable modules you need to mount the CD-ROM are copied to the initrd.img file. The mkcdrec.log file list the modules it finds.
  • Warning: Linux kernel 2.4.[0-3] are known for a buggy loopback device. Please upgrade to 2.4.4 or higher immediately!
  • Check if the space left on the initrd.img image was only a few bytes! If so, then increase the INITRDSIZE=2500 to 4096 and try again.
  • Make sure you're using the bash shell (check with "echo $SHELL")
  • Check the size of the iso image and compare with 'du -sk $ISOFS_DIR'. If the size of the iso image is 650 Mb and the other is much more than decrease the value of MAXCDSIZE=650000 to a lower value in the Config.sh file. Try again.
  • Install the mkcdrec utilities to force isolinux (instead of syslinux)
  • If booting of DVD's, then check if your PC's BIOS is capable of booting images bigger then 2 Gb
  • Check also question: "Permission denied" errors right after pivot_root call 
  • It still doesn't boot, then jump to the support pages of mkCDrec

Q: How to scroll back text on console

A:
Use the "Shift  PageUp" key to scroll back on text displayed on the console. 

Q:  Can mkCDrec work from cron?

A:
YES! But only from release v0.5.5 and higher. What is available?
  • make help  : shows below list.
  • make rescue  :  make a rescue CD-ROM only
  • make CD-ROM :  make rescue CD-ROM with backups on CD too
  • make device :  make rescue CD-ROM with backups on tape (TAPE_DEV in Config.sh must be a valid device otherwise no-go)
  • make path DESTINATION_PATH=/foo  :  make rescue CD-ROM with backups on destination path /foo
  • make OBDR: creates a bootable OBDR tape; set BURNCDR=n in Config.sh file to disable the creation of a CD-R as it is not needed with OBDR tapes.
  • make install: creates a simple /usr/sbin/mkcdrec script which points to mkCDrec's top directory and executes its make command including options passed to the mkcdrec command.
  • check also contributions/mkcdrec.sh script which can be used directly for cron purposes (please adapt the path to mkcdrec in specified script).

Q:  Backup/restore works ok, but after that LILO hangs at "L"

A:
The "L" is the first letter of the "LILO" prompt. If after the "L" you see some error code (a figure) you can search the bootdisk-HOWTO ( http://www.linuxdoc.org/HOWTO/Bootdisk-HOWTO/index.html , appendix B) 
If "L" is all you get, you probably used the keyword "linear" in your lilo.conf file. If then the disk is >1024 cylinders (probably is, use fdisk to know for sure), this might be a solution to your problem: 

"linear" is a very dangerous option.  It suppresses many diagnostic messages which could be produced at boot-install time, and defers the messages to actual boot-time.  This is when you are getting your failure. 

Try "lba32" instead of "linear".  This will address beyond cylinder 1023 using 32-bit disk addresses.  ("linear" uses 24-bits). Your BIOS must have the EDD packet call interface for this to work, but most post-1998 systems have such BIOS support. 
 

Q:  Please append a correct "root=" boot option

A1:
This error can occur when you type at a boot: prompt the following: 

boot:  linux  root=/dev/hda1

linux...
<snip.snip>
request_module[block-major-3]: Root fs not mounted
VFS: Cannot open root device "hda1" or 03:01
Please append a correct "root=" boot option
Kernel panic: VFS: Unable to mount root fs on 03:01

Then probably, the device driver for "ide" disk was NOT compiled into the kernel itself, but as a module. 
You will notice booting from mkCDrec CD-ROM that the linux kernel and initrd.gz are loaded into memory. Initrd does probably contain the ide loadable modules in /lib/modules/ 
If you ask for another "root" such as /dev/hda1, then initrd will not be loaded from the CD-ROM into memory, and the linux kernel will try to mount /dev/hda1 but cannot because of the missing ide device driver. 
Solution: recompile the linux kernel and select "y" for ide support (and not "m"). 
CONFIG_IDE=y 
CONFIG_BLK_DEV_IDE=y 
 
 
A2:
Mandrake 8 and 9 often return a kernel panic when booting from mkCDrec:

kmod: failed to exec /sbin/modprobe -s -k block-major-8, error=2
VFS: Cannot open root device "" or 08:05
Please append correct "root=" boot option.
Kernel panic: VFS: Unable to mount root fs on 08:05

Solution: Check the append= line in /etc/lilo.conf and add what is between the quotes to the variable KERNEL_APPEND in Config.sh file.
For Mandrake check if "devfs=mount" is not listed in the output command 'cat /proc/cmdline'. Yes? Add this the KERNEL_APPEND variable in Config.sh. MkCDrec v0.7.7 will check this during the "make test"

Q: "Permission denied" errors right after pivot_root call

A:
While booting from the CD-ROM you see the following errors : 

I believe the CD-ROM device is /dev/hdc 
Using pivot_root 
mount -n -o ro /dev/ram1 /new_root 
Devfs support does not seem to exist. 
My pid is 7. 
using bug circumvention for busybox. 
init started: Busybox v0.53pre( ... DATE ... ) multy-call binary 
Bummer, could not run '/etc/rc.d/rc.sysinit' : permission denied 
Bummer, could not run '/sbin/getty' : permission denied 
Bummer, could not run '/bin/sh' : permission denied 
Bummer, could not run '/sbin/getty' : permission denied 
Bummer, could not run '/bin/sh' : permission denied 
Bummer, could not run '/sbin/getty' : permission denied 
Bummer, could not run '/bin/sh' : permission denied 
Bummer, could not run '/sbin/getty' : permission denied 
Bummer, could not run '/bin/sh' : permission denied 
Bummer, could not run '/sbin/getty' : permission denied 
Bummer, could not run '/bin/sh' : permission denied 
(endless loop) 
 


This has in fact nothing to do wth the pivot_root call, but is a small bug 
in the way mkcdrec created the libraries for the rd-base image. 
Until now, these were created using objcopy (see rd-base.sh script), but objcopy does not retain the permissions of the libraries, which need to be executable (at least in 2.4 kernels, 2.2 kernels don't seem to be this strict). 
Now that the problem is found, it's easy to get around it, so expect the 
rd-base.sh script to be changed a bit (eg.: objcopy replaced by cp;strip 
solves this problem completely). 
From:  Franky Van Liedekerke <liedekef@pandora.be>
Note: this has been corrected in v0.5.8 - please update! 

Q: Kernel Panic: No init found.

A:
Warning: Unable to open an initial console.
Kernel Panic: No init found. Try passing init= option to kernel.
The question is are you using devfs? Mandrake 8.1 uses by default devfs. Therefore, change the following line in Config.sh file: 
KERNEL_APPEND="devfs=mount"
 

Q: reboot command does not work

A:
Sometimes the "shutdown", "reboot" commands do not work under mkCDrec. These commands are from the BusyBox bag-of-tools, and there is no clear reason why on some computers with a certain kernel version it does not work. 
Anyway, I wrote a small script "alt-ctrl-del" which is a kind of wrapper to perform a real reboot, and it is self-explaining. 
 

Q: start-restore.sh fails on disk of same size as original

A:
> I have re-done everything and still come up with an error trying to
> restore a Debian 3 using the start-restore.sh.
>
> This time I do not see any boundary problems with an fdisk -l on the
> machine I backed up.
>
> Disk /dev/hda: 32 heads, 63 sectors, 4187 cylinders
> Units = cylinders of 2016 * 512 bytes
>
> Disk /dev/hda: 255 heads, 63 sectors, 2434 cylinders
> Old situation:
> Units = cylinders of 8225280 bytes, blocks of 1024 bytes, counting from 0

The problem is that on the original OS it thinks /dev/hda: 32 heads, 63
sectors, 4187 cylinders and under mkcdrec it thinks Disk /dev/hda: 255 heads, 
63 sectors, 2434 cylinders. 
My advise is to read the Large Disk HOWTO for further details on this issue. 
It is explained well. The URL is: 
http://www.linuxdoc.org/HOWTO/Large-Disk-HOWTO.html#ss14.2
 

Q: Booting from CD results in "FD 2.88MB System Type-(19)"

A:
The Boot failed error message was caused by syslinux due to a buggy BIOS.
In the Makefile of mkCDrec there is an entry "SAFE_SYSLINUX=false" which is the default.  Sometimes it helps when you change the entry to "true" in the Makefile.
Do not change the entry  in the Makefile for fun as booting will become very slow.
 

Q: cdrom: This disc doesn't have any tracks I recognize

A:
On RedHat 7.3 with default cdrtools (cdrecord-1.10-11:7) installed the system may freeze with the above message recorded in the /var/log/messages file. Rebooting the system is the only resolution for that problem.
My humble advise is to download and install immediately the latest linux kernel (2.4.19 or higher) and a recent cdrtools-1.11 version which seems to resolve the problem.

Q: cramfs: wrong magic while booting from CD

RAMDISK Compressed image found at block 0
freeing initrd memory 1236k freed
cramfs: wrong magic
kernel panic: VFS: Unable to mount root fs on 01.00

A:
On Debian systems just change INITRD_FS=cramfs (instead of ext2) in the Config.sh file.

Q: mkcdrec.log: integrity testing: unexpected end of file

Doing integrity testing on backups.
                                                                               
cciss_c0d0p2._.log.gz:   OK
cciss_c0d0p2._.tar.gz:   OK
                                                                               
gzip: cciss_c0d0p3._daten.log.gz: unexpected end of file
  rd-base.img.bz2: ok

A:
The unexpected end of file message is from a log file which is still open (from a multi-volume CD session). Nothing to worry about as on the next CD it will be complete.

Q: bootfloppy image is too big to make backup image to the floppy/

Sometimes you see the following message in the mkcdrec.log file:
Unfortunately current bootfloppy image is too big to make a backup image to the floppy/ directory on CD-ROM
A:
Do not worry about it! Mkcdrec checks if the current bootfloppy image (usually 2.8 Mb) can be shrinked to 1.4 or 1.7 Mb image. If that is possible then it will create this backup image to the floppy/ directory on the first CDrec ISO image. The backup image can be "dd" to a physical floppy later.
It happens people loose their floppies or they get unuable. Or, the PC BIOS is not able to boot from CD.
In short, this message does not mean you have a problem with mkcdrec!

Q: cutstream compilation error with v0.7.4

With mkcdrec v0.7.4  people have reported the following problem while compiling cutstream (only on older distributions):
Fatal: cutstream: compilation failed - check MAXCDSIZE in Config.sh
The log shows;
make[2]: Entering directory `/var/opt/mkcdrec/cutstream'
gcc -o cutstream cutstream.c
cutstream.c:62: parse error before `char'
make[2]: *** [all] Error 1
make[2]: Leaving directory `/var/opt/mkcdrec/cutstream'
A:
To resolve the issue edit the cutstream/Makefile and replace "gcc" with "g++" or download latest version from the CVS tree. In mkcdrec v0.7.5 this is fixed though.

Q: bootflop.img exceeds 2.88 MB

It could happen that the bootflop.img becomes too big and the result is that booting from CD fails:
-rw-r--r--    1 root     root      2949120 Oct  6 20:21 bootflop.img

In this case, CD Booting comes error with message,

boot from CD:
1. FD 2.88MB System Type-(0F)
Boot failed
A:
Please install the latest mkcdrec_utilities! By doing this you will start using isolinux instead of syslinux and isolinux is not limited by size of 2.88Mb.

Q: On x86_64 platform a kernel panic happens with message mount not found

A: This means the system library /lib64/ld-linux-x86-64.so.2 is missing in the bigger ram disk. To fix this download the latest rd-base.script from mkcdrec CVS directories, or use at least v0.9.6 or higher.

Q: Invalid or corrupt kernel (Xen)

A: If the default GNU/Linux kernel is XEN capable then mkCDrec will not boot from CD-ROM. To solve this problem select another non-XEN capable GNU/Linux kernel, e.g. failsafe kernel.
Edit Config.sh and change the LINUX_VERSION="2.6.18-xxxx" variable into a proper existing kernel version.


Q: kernel panic: VFS: unable to mount root fs on 02:00 on RehHat 3

A: Edit the Config.sh file and change the following 2 entries:

KERNEL_APPEND="root=/dev/ram0 rw init=/init ramdisk_blocksize=1024 selinux=0"
INITRD_FS=ext2


Q: Using DVD-writer instead of CD-writer (introduction)

People reported that they are able to create a CDrec.iso image directly to DVD without using growisofs.
Edit Config.sh and set the following:
DVD_Drive=0
CDRECORD=dvdrecord
MAXCDSIZE=4700000

Using DVD_Drive=1 results into using the growisofs executable which writes directly to a DVD-R(W) without creating an ISO9660 image (/tmp/CDrec.iso)!!!

Q: What is One-Button Disaster Recovery (OBDR)?

A technical paper on OBDR of ZDnet explains it quiet well. Also on the HP site more information can be found.
To restore using OBDR the tape device must be powered on with the eject button held down. This will cause the tape device lights to alternate repeatedly. Set the computers BIOS to boot to SCSI. (Typically holding the delete key down while booting will invoke the computer's BIOS.) Enter the SCSI BIOS (the key sequence is SCSI specific, but is typically entered during the boot process also.) Scan the SCSI bus to determine which bus id represents the tape device. Setup the SCSI adapter to boot to the tape device id. Setup the device to start (or spin) at boot time. Setup BIOS support for Bootable CD-ROM. Exit the SCSI BIOS and while booting select boot form SCSI CD-ROM (again the key sequence is SCSI specific).
If above condition are met the tape drive will download from tape (if made by mkCDrec "make OBDR") the linux and initrd.img and thereafter download the bigger rd-base.img file. As an OBDR tape emulates a bootable CD-ROM there is no difference between a real CD-R made by mkCDrec (e.g. make CD-ROM).

Q: initrd.gz: No space left on device

In the mkcdrec.log file you find sometimes the following:
Copy the initial ram disk image to the boot floppy image.
`initrd.img.gz' -> `/home/nnroot/mkcdrec/stage/initrd.gz'
cp: writing `/home/nnroot/mkcdrec/stage/initrd.gz': No space left on device

Warning: initrd.img.gz is not copied to bootfloppy image

Warning: bootfloppy is FULL!
Will use "isolinux" instead.

Make syslinux.cfg file

Make CD-ROM bootable with isolinux
cp: cannot stat `/home/nnroot/mkcdrec/stage/initrd.gz': No such file or directory
Setting up bootable characteristics of the floppy(syslinux)
syslinux /home/nnroot/mkcdrec/tmp/bootflop.img
Copy the 1.44 or 2.88 Mb bootflop.img to ISOFS_DIR
`/home/nnroot/mkcdrec/tmp/bootflop.img' ->
`/backup/backup/bootflop.img'
Boot floppy is ready.
Unfortunately current bootfloppy image is too big to
make an extra 1.722 Mb image into floppy/ directory on the CD-ROM

A:
The answer comes in three-fold. First the blue line, then the red one and as last the green one.
The no space left means the bootfloppy disk image was too small to contain the compresses initial ramdisk and GNU/Linux kernel. Typically you will see these errors with kernel above 2.6.x
It really means mkCDrec is not able to successfully create a bootfloppy emulation to boot from, and the only solution is to use isolinux (boot directly from CD instead via bootfloppy emulation).
The will use "isolinux" instead message is the conclusion of the first error message, but mkCDrec will only use isolinux if mkCDrec_utilities are installed.
The "no such file or directory" is the result of mkCDrec deleted the corrupted initrd.gz file, and therefore, the error message is not a real error, only a conclusion that syslinux is unusable from now on. Remember, syslinux is used to make the bootfloppy image bootable (which is too small now to contain the initrd and linux kernel).
So, forget syslinux and bootfloppy emulation altogether. We must use isolinux!
Conclusion: install mkCDrec_utilities and do a "make clean" and then re-run "make CD-ROM/rescue"
Be aware that since v0.8.7 and higher there is no need to install mkCDrec_utilities anymore as "isolinux" has become the default way of booting.

Q: Mandrake: make test complains about MAKEDEV

During the "make test" phase you will notice in test 2 the message:
Please_install_the_MAKEDEV_package: you must have it!
On Mandrake you may gently ignore this message and continue. It reflects on Fedore Core 4 only.

Q: Where is the nightly CVS tarball?

Is available from SourceForge via URL: http://cvs.sourceforge.net/cvstarballs/mkcdrec-cvsroot.tar.bz2
However, be aware that the tarball does not contain BusyBox sources, therefore, also download the latest mkcdrec sources via the Download page.

Q: rpm -i mkcdrec-xyz.rpm error - perl is needed

Sometimes the following error is returned when installing the binary RPM version of mkcdrec:

# rpm -i mkcdrec-v0.9.2-fc4.i386.rpm
error: Failed dependencies:
        perl(are) is needed by mkcdrec-v0.9.2-1.i386

To work around this problem use the following option during the installation of mkcdrec:

# rpm -i --nodeps mkcdrec-v0.9.2-fc4.i386.rpm
WARNING: it seems that webmin isn't installed on that system.If you
install it later, don't forget to add mkcdrec to the list of modules in
/etc/webmin/webmin.acl to make mkcdrec's webmin module available.

Q: On FedoraCore 4: make test complains about missing ash

Unfortunately FedoraCore 4 doesn't ship the ash executable anymore. Install ash from the previous release FedoraCore 3 or download the rpm of FedoraCore 3 or the ash sources from here:

Q: Busybox compilation errors

Especially with mkCdrec v0.9.2 the following compilation error may occur:

logger (CONFIG_LOGGER) [Y/n/?] y
GEN include/bbconfigopts.h
GEN .depend
CC applets/applets.o
In file included from /usr/src/packages/BUILD/mkcdrec/busybox/include/busybox.h:29,
from /usr/src/packages/BUILD/mkcdrec/busybox/applets/applets.c:33:
/usr/src/packages/BUILD/mkcdrec/busybox/include/libbb.h:29:29:
selinux/selinux.h: No such file or directory

To fix the above error edit the .config.bb file (found in top directory of mkCDrec) and change the following line:

CONFIG_SELINUX=y

into

# CONFIG_SELINUX is not set

Q: Make test stops after checking architecture

Running make test stops immediately with the following error:

root@slfp-1:~/mkcdrec# make test
scripts/dispatch.sh test
Checking architecture...
make: *** [test] Error 2
root@slfp-1:~/mkcdrec#

This can be caused be installing the rpm or deb package and for some reason, e.g. missing dependency such as ash or mtools, the Config.sh file was not written, but saved as Config.sh.dpkg-new. Then above error will occur.

To fix this, simply copy or move the Config.sh.dpkg-new file to Config.sh

Q: Restore via an OBDR tape drive fails

While booting from an OBDR tape drive it works fine until the point where we get the following error:

/dev/nst0: No such device or address
OBDR: reading ram disk image into /dev/ram1 or /dev/rd/1
dd: opening `/dev/nst0': No such device or address
A:

Modify /etc/modprobe.d/modprobe.conf.dist. Locate the following file toward the very bottom of the file and comment it out.

# Certain tape management software needs SCSI generic loaded on st load in
# order to poke and twiddle various SCSI tape options automatically.
install st /sbin/modprobe --ignore-install st && /sbin/modprobe sg
Then run "mkcdrec clean" and rerun "mkcdrec OBDR" again.

IT3 Support needed?
   Support mkCDrec    IT3 Consultants    Valid XHTML 1.0 Transitional SourceForge