DRBL logo DRBL FAQ/Q&A DRBL logo

Common

Type: General FAQ
  • What is NCHC ?
  • What are the differences between DRBL and LTSP ?
  • What kind of server and client should I buy if I want to use DRBL ?
  • Where can I download the source codes ?

  • System

    Type: About DRBL system
  • Where is the corresponding DRBL client directory in the server ?
  • How can I append the Linux kernel boot time parameters to the DRBL clients ?
  • How can I debug in the PXE initrd when clients boot ?
  • How can I start a DRBL client service (e.g. cron, sysklogd, klogd...) in the server ?
  • How can I run vmplayer in the DRBL client machine ?
  • Is it possible to run a script on the client after Clonezilla finishes cloning ?
  • When I reboot the DRBL client in Ubuntu Breezy Linux, it hangs, What should I do ?
  • How can I put my own kernel for DRBL clients ?
  • How can I create module for some hardware, like Nvidia, ATI VGA card, to use in client ?
  • How can I share the printer in the server to clients ?
  • How can I insert bios flash program and firmware to the freedos so that I can upgrade the BIOS in client ?
  • How to get Japanese (Chinene, Korean) input method in English environment ?
  • How can I hide the mounted NFS icons in my KDE desktop environment ?
  • What the differences between Full DRBL, Full Clonezilla, DRBL SSI and Clonezilla Box modes ?
  • How can I make a common directory where clients on any box can read, copy and delete files freely ?
  • How can I make a local apt mirror in my Debian or Ubuntu DRBL server and use that as an apt repository ?
  • How can I upgrade DRBL and related packages ?
  • How can I hide the mounted NFS share icons in KDE desktop ?
  • How can I debug the clonezilla if it fails ?
  • I have some clients which mainboard include NIC, the mainboard supports RPL. How to make the clients to support PXE?
  • When I use clonezilla to clone MS windows, there is no any problem when saving an image from template machine. However, after the image is restored to another machine, it fails to boot, the error message is "Missing Operating System" or just a blinking underscore. What's going on ?
  • How can I calibrate the clock of clients ?
  • A message "tftp: client does not accept options" appears in syslog file in server , shall I do someting ?
  • How can I restore the image from small harddisk to larger one ?
  • What's the difference between clonezilla and G4L or G4U ?
  • How can I change the yum repository in OpenSuSE/SuSe before I run drblsrv ?
  • How can I assign the kernel to let client use that ?
  • If my client computer only supports RPL instead of PXE, can it work with DRBL ?
  • I am sure that the GNU/Linux I have is compatible with the GNU/Linux distribution which DRBL supports, how can I install drbl on that ?
  • I put a script file like "myscript.sh" in /opt/drbl/share/ocs/prerun or /opt/drbl/share/ocs/postrun, and I check the option "-o0/--run-prerun-dir", or "-o1/--run-postrun-dir", but mscript.sh is not run. Why ?
  • How can I add a package, say ncpfs, in Clonezilla live ?
  • How can I create my own custom script to run in clonezilla live ?
  • What if I have 2 or more casper files (filesystem.squashfs) in my system, how can I assign clonezilla live to boot ?
  • How can I compile a kernel module in the DRBL client so that I can use it for DRBL clients ?
  • How can I mirror drbl packages ?
  • There is an existing DHCP service in my environment, so it's impossible for me to use the dhcp service comes with DRBL server. Any solution ?
  • I have a weird problem when restoring an image. I always got an error message "Can't read the following volume file: ... /stdin.001".
  • How can I remaster Clonezilla iso file ?
  • How can I put the kickstart file for netinstall GNU/Linux ?
  • How can I configure FreeBSD network installation in DRBL server ?
  • How can I restore those *.ntfs-img.* images into a partition manually ?
  • Is that possible I can read the content of a NTFS image created by Clonezilla ?
  • Is there any way I can save image to CD-RW or DVD-RW directly ?
  • Is that possible I can put clonezilla live in my harddrive which already has an OS installed ?
  • How to create Clonezilla live from scratch ?
  • When I use Clonezilla server edition to do a multicast clone, the client machines just stay in "Please Wait...", any hint ?
  • I'd like to translate Clonezilla to other language, how can I help ?
  • How can I config my DRBL clients to use Active Directory authentication ?

  • Common

    Type: General FAQ
  • What is NCHC ?     ^TOP^
  •  The National Center for High-Performance Computing is located in Hsinchu, Taiwan. For more details, please visit the NCHC website at http://www.nchc.org.tw

  • What are the differences between DRBL and LTSP ?     ^TOP^
  •  DRBL uses PXE or etherboot, which is similar to Linux Terminal Server Project (LTSP), to boot the client machine. While LTSP is a centralized server, all the client machine users' access the LTSP server to run their applications on it. The client's keyboard and mouse are used to input whereas the client's monitor is used to display the results. This is great when useing a thin client. The server requirements must be increased when more than 20 or 30 clients are being used. On the other hand, DRBL uses NFS and NIS to provide boot services to the client machines. In essence, the DRBL server is just a NFS and NIS server. All users from all client machines just access the DRBL server to request files or authentication. Packages are loaded to the client machines and they use their own CPU and RAM for processing. A regular PC can be used as the DRBL server since it is only serving files and authenticating. The client machines, however, should be powerful enough to run the applications they need. Typical installations using DRBL to deploy the Linux classroom have around 30 to 40 clients.
    ///NOTE/// From LTSP 5.0, there is a fat client (diskless workstation, LowFat client) mode, it's basically quite similar to DRBL.
    Besides the diskless (fat/powerful) client mode provided by DRBL, DRBL provides other functions, such as:
    (a) Clonezilla, the opensource clone system. It's a server version of imaging tool, similar to Ghost server edition, True image or Rembo. By using Clonezilla, you can clone a 5.6 GBytes system image to 40 computers within 10 minutes via multicasting.
    (b) Small Linux diskless soltion. DRBL provides Damn Small Linux (DSL), PuppyLinux... for clients. You can import those small Linux distributions and let client boot from PXE without hardisk, CD or USB flash drive.
    (c) Diskless FreeDOS for clients.
    (d) Diskless memtest for clients.
    (e) Install GNU/Linux (Debian, Ubuntu, Fedora, CentOS, Mandriva, SuSE...) for clients from network.
    LTSP and DRBL each have their own benefits. Choose the one that is best suited to your needs.

  • What kind of server and client should I buy if I want to use DRBL ?     ^TOP^
  •  

    This depends on what kind of application and GNU/Linux distribution you want to run.
    For the education environment, we recommend the following, but faster and newer equipment will always be better, especially if you want to run "moden" GNU/Linux distribution, such as Fedora 7 or Ubuntu 7.04 with OpenOffice 2.x or Firefox 2.x...:

    • Server:
        • x86 CPU at least 450 MHz
        • Memory at least 256 MB
        • Two or more fast ethernet network interface cards (NICs)
        • At least 10 GB HD space
    • Client:
        • x86 CPU at least 200 MHz
        • Memory at least 128 MB
        • One fast ethernet network interface cards
    • Fast ethernet switch
        • An ethernet hub is NOT acceptable. It's too slow for network booting and NFS. A fast ethernet switch will reduce the collision domain and give you much smoother deployment. The fast ethernet switch should have enough ports for your clients and your server. You can find low cost 12 and 16-port fast ethernet switches just about anywhere. The 40+ port switches are nice but they typically cost more.

    Since DRBL will work with any Pentium class hardware, you can start your PC cluster with just about any machine you have laying around. You can expand your cluster as your budget allows.


  • Where can I download the source codes ?     ^TOP^
  •  You can find all the source codes about DRBL/Clonezilla in
    http://free.nchc.org.tw/drbl-core/src/


    System

    Type: About DRBL system
  • Where is the corresponding DRBL client directory in the server ?     ^TOP^
  •  It's in /tftpboot/nodes/$IP, where IP is the client's IP address, like /tftpboot/nodes/192.168.0.1.
    There are directories:
    dev etc root var
    under /tftpboot/nodes/$IP.
    For common root directory it's in /tftpboot/node_root, where all clients share this same one directory.

  • How can I append the Linux kernel boot time parameters to the DRBL clients ?     ^TOP^
  •  You can modify the
    /tftpboot/nbi_img/pxelinux.cfg/default
    It's almost similar to grub syntax. And if you are familiar with syslinux, it's the same thing.
    Say, if you want to append "vga=791" for client, you can find the "label drbl", and modify or append the "append" like
    ------------
    append initrd=initrd-pxe.img ramdisk_size=12288 devfs=nomount drblthincli=off selinux=0 vga=791
    ------------

  • How can I debug in the PXE initrd when clients boot ?     ^TOP^
  •  In the early stage in PXE initrd when client boots, there is NO log file. However, you can try to debug by:
    1. edit /usr/lib/mkpxeinitrd-net/initrd-skel/linuxrc
    or
    "/usr/lib/mkpxeinitrd-net/initrd-skel/linuxrc/udhcpc-post"
    insert some code to debug, or just put a shell (/bin/sh) so you can enter the shell.
    2. run "/opt/drbl/sbin/mknic-nbi" to generate the PXE initrd.
    3. reboot the client, then you can see some logs or enter the shell.

  • How can I start a DRBL client service (e.g. cron, sysklogd, klogd...) in the server ?     ^TOP^
  •  Only some necessary services of DRBL client are on, so if you need more services, like cron, sysklogd, klogd..., then:
    In DRBL server, take service "cron" as an example, run:
    /opt/drbl/sbin/drbl-client-service cron on
    Then
    (1) Reboot the clients, or
    (2) Run /opt/drbl/bin/drbl-doit -u root "/etc/init.d/cron start"
    if clients are already on.

  • How can I run vmplayer in the DRBL client machine ?     ^TOP^
  •  Here we take vmware-player 1.0.0-19317 as an example, and this method only works in the CPU arch matches each other in the server and client:
    0. Make sure client's kernel is same with server, i.e.
    For server, "uname -r"
    For client, "cat /tftpboot/nbi_img/kernel_version_in_initrd.txt"
    These two must match each other.
    The CPU arch must be the same, too.
    For server, "uname -m"
    For client, "cat /tftpboot/nbi_img/client_kernel_arch.txt"
    These two must match each other.
    If not, you have to run "/opt/drbl/sbin/drblsrv -i" again, and let kernel of
    client is same with that of server, or reinstall the kernel in the server to make it same with that in client.
    1. wget http://download3.vmware.com/software/vmplayer/VMware-player-1.0.1-19317.i386.rpm
    Or get the in http://www.vmware.com 2. sudo rpm -Uvh VMware-player-1.0.1-19317.i386.rpm
    3. sudo vmware-config.pl
    4. sudo /opt/drbl/sbin/dcs , then choose "others" -> re_deploy
    or
    run "/opt/drbl/sbin/drblpush -i" again.
    5. Just in case, remove the file /etc/vmware/not_configured in every client by:
    sudo /opt/drbl/sbin/drbl-rm-host /etc/vmware/not_configured
    6. sudo /opt/drbl/sbin/drbl-client-service vmware on
    7. If client is already on, you can run
    sudo /opt/drbl/bin/drbl-doit "/etc/init.d/vmware start"
    or
    reboot the client
    8. login client, run vmplayer
    The principle is: (a) The client must have the modules "vmmon" and "vmnet" that vmware need, and they exist in the client's kernel modules. For example, in CentOS 4.2, they exist in /tftpboot/node_root/lib/modules/2.6.9-22.0.1.EL/misc.
    (b) The file "/tftpboot/nodes/$IP/etc/vmware/not_configured" should not exist if well configured (by vmware-config.pl).

  • Is it possible to run a script on the client after Clonezilla finishes cloning ?     ^TOP^
  •  Yes, but not from /opt/drbl/sbin/dcs. You have to use /opt/drbl/sbin/drbl-ocs like this:
    /opt/drbl/sbin/drbl-ocs -l 0 startdisk restore -p "mount -t ntfs /dev/hda1 /mnt; chntpwd...; reboot -f -n"
    For more info, check "/opt/drbl/sbin/drbl-ocs --help".

  • When I reboot the DRBL client in Ubuntu Breezy Linux, it hangs, What should I do ?     ^TOP^
  •  This is a kernel problem, check this for more details:
    http://ubuntuforums.org/showthread.php?t=85379
    Maybe "reboot=h" will work for you, you can try to put it in /tftpboot/nbi_img/pxelinux.cfg/default like this:
    ---------------
    label drbl
    MENU DEFAULT
    # MENU HIDE
    MENU LABEL Clonezilla: unicast restore to primary IDE HD partition 1 (hda1)
    # MENU PASSWD
    kernel vmlinuz-pxe
    append initrd=initrd-pxe.img ramdisk_size=12288 devfs=nomount drblthincli=off selinux=0 reboot=h
    ---------------

  • How can I put my own kernel for DRBL clients ?     ^TOP^
  •  Ex: The kernel you compiled yourself: name is 2.6.11-1.steven with CPU arch i686.
    a. Put these files to DRBL server
    1. 3 filres in /boot
    System.map-2.6.11-1.steven
    config-2.6.11-1.steven
    vmlinuz-2.6.11-1.steven
    2. put the kernel and modules in /lib/modules, like:
    /lib/modules/2.6.11-1.steven
    b. depmod -a 2.6.11-1.steven
    c. /opt/drbl/sbin/mknic-nbi -k 2.6.11-1.steven -i i686
    -k: specifly the kernel name
    -i: specify the CPU arch for DRBL clients, such as i386/i586/i686

    Now you can boot the client to use the i686 kenrel 2.6.11-1.steven.

  • How can I create module for some hardware, like Nvidia, ATI VGA card, to use in client ?     ^TOP^
  •  1. If the client uses different kernel with that of server, install the kernel in the server which client is using. Here we take 2.6.12-10-686 as an example.
    If you do not know the kernel name and CPU arch, run
    cat /tftpboot/nbi_img/kernel_version_in_initrd.txt
    cat /tftpboot/nbi_img/client_kernel_arch.txt
    to get that.
    2. Boot the server to the kernel 2.6.12-10-686
    3. Compile and install the module for your hardware, such as download the necessary source from NVidia or ATI website
    4. Run
    /opt/drbl/sbin/mknic-nbi -k 2.6.12-10-686 -i i686
    5. Boot the client, the client now will have the compiled modules.

  • How can I share the printer in the server to clients ?     ^TOP^
  •  Take Fedora Core 3 as an example:
    Assume the DRBL server IP address is 192.168.0.254,
    1. Installed the driver and setup the local printer in DRBL server (such as via LPT PORT)¡Aand config the CUPS to share the printer (Note: in Fedora Core 3, the default setting of CUPS is DENY ALL¡Aso remember to open that to clents in /etc/cups/cupsd.conf).
    2. In DRBL server, config the CUPS network printer¡Awhich means set the local printer as network printer. The path is CUPS ipp://192.168.0.254/printers/epsonc60 (You can find the string in /etc/cups/cupsd.conf)¡Aand set the network printer as the default printer. Here epsonc60 is just an example, so use yours.
    3. Run "/opt/drbl/sbin/drblpush -i" again
    4. Boot the client, you will see the network printer, which is the default printer.

  • How can I insert bios flash program and firmware to the freedos so that I can upgrade the BIOS in client ?     ^TOP^
  •  Take Asus A8V-MX (client's motherboard) as an example (use the freedos 1.0-8drbl or later version provided by DRBL):
    In server:
    1. Download
    bios firmware:
    wget http://dlsvr01.asus.com/pub/ASUS/mb/socket939/A8V-MX/A8V-MX-0503.zip
    and flash program:
    wget http://dlsvr01.asus.com/pub/ASUS/mb/socket939/A8V-MX/AFUDOS217.zip

    2. unzip them:
    unzip A8V-MX-0503.zip
    unzip AFUDOS217.zip

    3. put them into a directory:
    mkdir bios
    mv AFUDOS.exe A8V-MX-ASUS-0503.ROM bios

    4. As root, run /opt/drbl/sbin/insert-file-fdos.sh to put them into the freedos image in /tftpboot/nbi_img/:
    /opt/drbl/sbin/insert-file-fdos.sh bios
    Then a modified freedos image "/tftpboot/nbi_img/fdos1440_drbl.img" is created.

    In client:
    5. Now you can PXE boot the client into freedos, and the programs you put are in A:\DRBL\BIOS. You can follow your BIOS manual to upgrade the bios.

  • How to get Japanese (Chinene, Korean) input method in English environment ?     ^TOP^
  •  Take Fedora Core 4 as an example:
    Find a user, say it's john, login as John
    0. cd ~/
    1. mkdir -p ~/.xinput.d
    2. ln -s /etc/X11/xinit/xinput.d/scim ~/.xinput.d/default

    To apply this setting to all users,
    0. login in the server as root
    1. cd ~john/.xinput.d
    2. /opt/drbl/sbin/drbl-cp-user -d .xinput.d default

    If in the future, you want to remove the directory .xinput.d for every user, run
    /opt/drbl/sbin/drbl-rm-user .xinput.d

    If you want to make new user can apply this, you can try to add that setting in /etc/skel in the server like this:
    0. in server, as root
    1. cd /etc/skel
    2. mkdir -p ~/.xinput.d
    3. ln -s /etc/X11/xinit/xinput.d/scim ~/.xinput.d/default

    Therefore, if you add new user later, that file will be automatically copied.

  • How can I hide the mounted NFS icons in my KDE desktop environment ?     ^TOP^
  •  In KDE desktop, right click mouse -> configure desktop -> behavior -> device icons -> uncheck "Mounted NFS Share"

    If you want to modify the config file for user, just edit the file in his/her home directory:
    ~/.kde/share/config/kdesktoprc
    [Media]
    exclude=media/hdd_mounted,media/nfs_mounted,media/floppy5_unmounted,media/hdd_unmounted

    To edit the system file, this one:
    /usr/share/config/kdesktoprc
    ...
    [Media]
    enabled=true
    exclude=media/hdd_mounted,media/floppy5_unmounted,media/floppy_unmounted,media/hdd_unmounted/nfs_mounted,media


  • What the differences between Full DRBL, Full Clonezilla, DRBL SSI and Clonezilla Box modes ?     ^TOP^
  •  
    Full DRBL Full Clonezilla DRBL SSI Clonezilla Box
    /etc, /var of clients NFS-based NFS-based tmpfs-based tmpfs-based
    modified files in /etc and /var of client after reboot kept kept gone gone
    extra space in server per client ~ 50 MB ~ 50 MB 0 0
    max client no per ethernet card in server 253 253 253 253


  • How can I make a common directory where clients on any box can read, copy and delete files freely ?     ^TOP^
  •  You can make a directory in server, say /home/share and open its mode to everyone like this:
    1. mkdir /home/share
    2. chmod a+rwx /home/share
    If you want the file created by some user and can only be deleted by that user, you have to add this:
    3. chmod o+t /home/share
    i.e. make it directory "sticky", like dir /tmp/

    Then every clients can use the directory /home/share.

  • How can I make a local apt mirror in my Debian or Ubuntu DRBL server and use that as an apt repository ?     ^TOP^
  •  1. Use the mirror tools to mirror the files in the server, such as:
    a. mkdir -p /opt/apt/drbl-core
    b. cd /opt/apt/drbl-core; lftp -e "o ftp://linux.nchc.org.tw/dists/drbl-core/ && mirror -e dists && mirror -e pool && quit"

    2. edit /etc/apt/sources.list, add a line like this:
    ----------------------------------------
    deb file:/opt/apt/drbl-core/drbl-core drbl stable
    ----------------------------------------
    3. Follow the standard installation procedure to finish it.

  • How can I upgrade DRBL and related packages ?     ^TOP^
  •  Refer to this.

  • How can I hide the mounted NFS share icons in KDE desktop ?     ^TOP^
  •  To apply to the whole system, you can modify
    /usr/share/config/kdesktoprc
    ...
    [Media]
    enabled=true
    exclude=media/hdd_mounted,media/floppy5_unmounted,media/floppy_unmounted,media/hdd_unmounted/nfs_mounted,media
    append

    To
    ...
    [Media]
    enabled=true
    exclude=media/hdd_mounted,media/floppy5_unmounted,media/floppy_unmounted,media/hdd_unmounted/nfs_mounted,media
    ----------
    I.e. append the nfs_mounted,media, then those new login user won't have NFS share icons. But those already user, you can ask them to modify manually by:
    1. right click in the desktop -> configure desktop -> behavior -> device icons -> uncheck "mounted NFS share"
    Or you can modify their ~/.kde/share/config/kdesktoprc as the above.

  • How can I debug the clonezilla if it fails ?     ^TOP^
  •  0. use /opt/drbl/sbin/dcs to switch the mode you want, like clonezilla-start -> save disk, then you will got a complete drbl-ocs command like:
    "/opt/drbl/sbin/drbl-ocs --clients-to-wait 1 -x -z3 -l en startdisk save".
    1. in server, run /opt/drbl/sbin/dcs -> remote-linux-txt
    2. boots the client
    3. When client shows the text mode login prompt, in server, run the above command you got, this time, add two extra parameters:"-p true -nogui", like: "/opt/drbl/sbin/drbl-ocs -p true -nogui -v --clients-to-wait 1 -x -z3 -l en startdisk save".
    4. login client
    5. in client, run "bash -x /etc/rc1.d/S19ocs-run -d start" to get the verbose messages when runing clonezilla.

  • I have some clients which mainboard include NIC, the mainboard supports RPL. How to make the clients to support PXE?     ^TOP^
  •  Usually the machine supports RPL can be changed to PXE in the BIOS or NIC firmware. For example, the Realtek 8139 NIC, you can press "SHIFT+F10" when booting, then you can change that. An example is shown here:
    http://www.embeddedpc.net/doc/eBox_Boot_ROM_setup_manual.pdf
    However, some very old NIC does only have RPL only, then the only solution is to use etherboot or buy a PXE NIC.

  • When I use clonezilla to clone MS windows, there is no any problem when saving an image from template machine. However, after the image is restored to another machine, it fails to boot, the error message is "Missing Operating System" or just a blinking underscore. What's going on ?     ^TOP^
  •  Usually this is because GNU/Linux and M$ windows interpret the CHS (cylinder, head, sector) value of harddrive differently. Some possible solutions:
    1. Maybe you can change the IDE harddrive setting in BIOS, try to use LBA instead of auto mode.
    2. Try to choose
    [ ] -j0 Use dd to create partition table instead of sfdisk
    and
    [ ] -t1 Client restores the prebuilt MBR from syslinux (For Windows only)
    when you restore the image.
    3. You can try to boot the machine with MS Windows 9x bootable floppy, and in the DOS command prompt, run: "fdisk /mbr".
    4. You can try to boot the machine with MS Windows XP installation CD, enter recovery mode (by pressing F10 key in MS XP, for example), then in the console, run "fixmbr" to fix it. Maybe another command "fixboot" will help, too. For more info, refer to this doc
    5. Use ntfsreloc to adjust FS geometry on NTFS partitions. For more info, refer to http://www.linux-ntfs.org/doku.php?id=contrib:ntfsreloc

  • How can I calibrate the clock of clients ?     ^TOP^
  •  You have to install and turn on the ntp server. Take Ubuntu as an example,
    1. install ntp service in the server by "apt-get install ntp"
    2. re-deploy clients by /opt/drbl/sbin/dcs -> others -> re-deploy
    3. turn on the ntp server for client by "/opt/drbl/sbin/drbl-client-service ntp on"
    Then everytime when client boot, the service will query the ntp server to calibrate time.

  • A message "tftp: client does not accept options" appears in syslog file in server , shall I do someting ?     ^TOP^
  •  Do not worry. This is common when you use PXE clients. For more info, check here:http://syslinux.zytor.com/archives/2003-June/002093.html

  • How can I restore the image from small harddisk to larger one ?     ^TOP^
  •  Clonezilla is NOT able to restore the image from LARGE harddisk to smaller one, but it CAN restore the image from small harddisk to larger one. Three choices are available. Here they are:
    Choice (1).
    0. Save the image in the Clonezilla server.
    1. Do a normal restoration to target machine by clonezilla.
    2. When clone is finished, use gparted to resize or move the partition. You can install gparted in the DRBL server, then boot the client into remote-linux-gra (dcs -> remote-linux-gra) mode, login client as root, run gparted to do that. Or you can use gparted LiveCD or LiveUSB to do that. A gparted-clonezilla dual boot live CD is available, for more info, check http://gparted.free.fr/GParted-Clonezilla/ or http://www.icewalkers.com/jump.php?AID=2917&src=home.
    Choice (2).
    0. Save the image in the Clonezilla server.
    1. Prepare a partition table (manually created by fdisk in the target machine, then use "sfdisk -d /dev/hda > pt.sf", or you can manually edit that file if you are familiar with that), and backup /home/partimag/$IMA_NAME/pt.sf, then overwrite the /home/partimag/$IMA_NAME/pt.sf.
    2. Now use dcs -> clonezilla-start -> clonezilla-restore-disk in server, remember to choose option -r (Resize the partition when restoration finishes).
    3. boot the client,
    Choice (3).
    0. Save the image in the Clonezilla server.
    1. Boot the target machine as remote-linux-txt (dcs -> remote-linux-txt).
    2. Login in as root in the target machine, use fdisk to create the partitions you want. Remember every partition size should be larger than that in the image file.
    3. Now use dcs -> clonezilla-start -> clonezilla-restore-disk in server, remember to choose option -k (Do NOT create partition in target harddisk in client), and option -r (Resize the partition when restoration finishes).
    4. boot the client,
    That's all. The above scenario I am assuming you are cloning M$ windows (ntfs or fat) or Linux ext2/ext3, since that resize action need ntfsresize (already in /opt/drbl/sbin/), parted and resize2fs. These programs are already in DRBL environment. For other file systems, such as reiserfs, xfs or jfs, you have to install those resize programs in the server, and maybe manually resize is necessary after clone.

  • What's the difference between clonezilla and G4L or G4U ?     ^TOP^
  •  If file system is supported (ext2, ext3, reiserfs, xfs, jfs, fat, ntfs), only used blocks in harddisk are saved and restored. This increase the clone efficiency. For unsupported file system, sector-to-sector copy is done by dd in Clonezilla. This is different from G4U or G4L.

  • How can I change the yum repository in OpenSuSE/SuSe before I run drblsrv ?     ^TOP^
  •  1. Remove all *.repo in /etc/yum.repos.d/ to avoid confusion,
    rm -f /etc/yum.repos.d/*
    2. Edit the *.repo in /opt/drbl/setup/yum-repos/, change opensuse*.repo or drbl*.repo. For example, for OpenSuSE 10.2, you can modify /opt/drbl/setup/yum-repos/opensuse-updates-10.2.repo as the following:
    --------------------------------------------------------------
    [updates]
    name=OpenSuSE $releasever updates packages
    baseurl=http://ftp.twaren.net/Linux/SuSE/update/$releasever/
    enabled=1
    gpgcheck=1
    --------------------------------------------------------------
    and /opt/drbl/setup/yum-repos/opensuse-10.2.repo as:
    --------------------------------------------------------------
    [base]
    name=OpenSuSE $releasever packages
    baseurl=http://ftp.twaren.net/Linux/OpenSuSE/distribution/$releasever/repo/oss/suse/
    enabled=1
    gpgcheck=1
    --------------------------------------------------------------

  • How can I assign the kernel to let client use that ?     ^TOP^
  •  Two methods are available when you install DRBL, one is to use the running kernel in the server, the other one is to use the kernel package (rpm or deb):
    (1)/opt/drbl/sbin/drblsrv-offline -s `uname -r`
    This means you will let client use the same kernel which DRBL server is running.
    (2)To use some kernel rpm or deb to let client use, you have to download the kernel package first, for example, download kernel-2.6.18-8.1.4.el5.i686.rpm from any rpm repository, then:
    /opt/drbl/sbin/drblsrv-offline -k kernel-2.6.18-8.1.4.el5.i686.rpm
    The kernel you specify for client to use must comply with the CPU arch of client. If you are not sure, you can try to use i586 kernel. However, you will lose the optimization.
    For more options about drblsrv-offline, you can run "/opt/drbl/sbin/drblsrv-offline -h" to show that.

  • If my client computer only supports RPL instead of PXE, can it work with DRBL ?     ^TOP^
  •  Yes, if your network card is supported by etherboot. The following explains how to use a RPL client in DRBL environment in Debian.
    1. Setup a DRBL server with everything ready
    2. apt-get install rpld
    3. edit /etc/rpld.conf, make it like:
    --------------------------------
    HOST
    {
    ethernet = 44:4d:50:00:01:8e; // This is the mac address of the client

    FILE
    {
    path = "/tftpboot/nbi_img/rtl8139.zrom";
    load = 0x1000;
    };
    execute = 0x1006;
    };
    rtl8139.zrom can be found in /opt/drbl-etherboot/ or from http://www.rom-o-matic.org.
    If it's not Realtek chipset, replace the right one for your NIC of client.
    4. Edit /etc/default/rpld, make it like:
    START_RPLD=yes
    (actually 4 is not necessary if you manually start rpld)
    5. Find the network card connecting to clients, for example, eth1, then start rpld by
    /usr/sbin/rpld -i eth1

  • I am sure that the GNU/Linux I have is compatible with the GNU/Linux distribution which DRBL supports, how can I install drbl on that ?     ^TOP^
  •  Yes, the only difference is in step <2b> when you install DRBL. You can use drblsrv-offline to make it. For example, Scientific Linux 5.0 is compatible with Fedora or CentOS, you can make it by:
    a. Follow the installation doc in the website, in step <2a>, install DRBL rpm package drbl-current.rpm
    b. cp /opt/drbl/setup/yum-repos/drbl.repo /etc/yum.repos.d/
    c. It is recommended to turn on GPG key checking, i.e. set
    gpgcheck=1
    in /etc/yum.repos.d/sl.repo and /etc/yum.repos.d/sl-security.repo
    d. Run "/opt/drbl/sbin/drblsrv-offline -r" to see which required packagesshould be installed in DRBL server.
    e. yum install dhcp tftp-server nfs-utils ypserv ypbind yp-tools mkinitrd ntp firstboot iptables wget dialog initscripts rsync parted tcpdump bc grub dos2unix curl lftp openssh-server openssh-clients coreutils gzip bzip2 nc file ethtool net-tools syslinux
    yum install mkpxeinitrd-net clonezilla drbl-partimage drbl-ntfsprogs drbl-chntpw drbl-lzop udpcast drbl-etherboot freedos
    yum install lvm2 ntfs-3g
    f. /opt/drbl/sbin/drblsrv-offline -s `uname -r`
    This command means you will let client use the same running kernel in the DRBL server. If you want to assign some kernel rpm to let client use, you have to download the kernel rpm first, for example, kernel-2.6.18-8.1.4.el5.i686.rpm, then run:
    /opt/drbl/sbin/drblsrv-offline -k kernel-2.6.18-8.1.4.el5.i686.rpm
    The kernel you specify for client to use must comply with the CPU arch of client. If you are not sure, try to use i586 kernel is a good idea. However, you will lost the optimization.
    For more options about drblsrv-offline, you can run "/opt/drbl/sbin/drblsrv-offline -h" to show that.
    g. /opt/drbl/sbin/drblpush -i
    You might see some warning messages, but normally it's fine to live with that.

  • I put a script file like "myscript.sh" in /opt/drbl/share/ocs/prerun or /opt/drbl/share/ocs/postrun, and I check the option "-o0/--run-prerun-dir", or "-o1/--run-postrun-dir", but mscript.sh is not run. Why ?     ^TOP^
  •  This is the file name issue, and it normally happens in Deiban or Ubuntu, and won't be in RedHat-like distributions. The main reason is, in DRBL/Clonezilla, the programs in /opt/drbl/share/ocs/prerun or /opt/drbl/share/ocs/postrun are run by the program "run-parts". The file name for run-parts in Debian only accepts that the names must consist entirely of upper and lower case letters, digits, underscores, and hyphens. Therefore your file name has an illegal character ".", therefore run-parts won't run it.
    BTW, you can test it by:
    run-parts --test /opt/drbl/share/ocs/postrun
    For more info, check this:
    http://www.debian.org/News/weekly/2002/45/index.de.html

  • How can I add a package, say ncpfs, in Clonezilla live ?     ^TOP^
  •  Please refer to this faq.

  • How can I create my own custom script to run in clonezilla live ?     ^TOP^
  •  Refer to this.

  • What if I have 2 or more casper files (filesystem.squashfs) in my system, how can I assign clonezilla live to boot ?     ^TOP^
  •  This normally happens when you put a clonezilla live or Debian live in your harddisk, and use clonezilla live CD/USB to boot the system. You can add boot parameter (Ex. bootfrom=/dev/hdc) when booting your clonezilla live. i.e.
    1. Boot clonezilla live,
    2. In isolinux boot menu, when you see "press [TAB] to edit options", press Tab key.
    3. Append the boot parameter, for example, your Clonezilla live CD is /dev/hdc, then you can force casper to use the capser system in /dev/hdc by appending "bootfrom=/dev/hdc", make it like:
    vmlinuz initrd=initrd.gz boot=casper vga=788 bootfrom=/dev/hdc

  • How can I compile a kernel module in the DRBL client so that I can use it for DRBL clients ?     ^TOP^
  •  1. Make sure the client's IP address where you want to compile, you can get the ip address by:
    /sbin/ifconfig -a
    In this case, we take 192.168.120.1 for example.
    2. In DRBL server, edit /etc/exports, find the following:
    /tftpboot/node_root 192.168.120.1(ro,sync,async,no_root_squash,subtree_check)
    Modify it, change ro to be rw like this:
    /tftpboot/node_root 192.168.120.1(rw,sync,async,no_root_squash,subtree_check)
    3. Reload your nfs service, like
    /etc/init.d/nfs-kernel-server reload (in Debian-like system)
    or
    /etc/init.d/nfs reload (in RedHat-like system)
    4. Now you can start to compile the module in you DRBL client, and install that in the system (make, make install...).
    5. ///NOTE/// When you finish the compilation and installation, before rebooting the client, remember to restore the /etc/exports in the server, i.e. change rw to ro as you have done in step 2, and run step 3 to make it work. If you do not do it, you might mess the system up.

  • How can I mirror drbl packages ?     ^TOP^
  •  Since rsync serice is not available in free.nchc.org.tw, lftp is recommended. You can use the following script to mirror that. Remember to change the settings.
    --------------------------------
    #!/bin/sh
    # Settings
    URL="ftp://free.nchc.org.tw/drbl-core"
    local_mirror_dir="/var/www/drbl-core"
    [ ! -d $local_mirror_dir ] && mkdir -p $local_mirror_dir

    # start mirror...
    lftp -e "o $URL && lcd $local_mirror_dir/ && mirror -e --exclude old --exclude legacy --exclude RPMS.drbl-legacy --exclude SRPMS.drbl-legacy && quit"
    --------------------------------

  • There is an existing DHCP service in my environment, so it's impossible for me to use the dhcp service comes with DRBL server. Any solution ?     ^TOP^
  •  Basically there are 4 solutions:
    1. Use different port to run DHCP service in DRBL server, this won't conflict with your existing DHCP service. This can be done after you install and configure your DRBL server. Here we take Debian as an example. Make sure your DRBL is version 1.9.0-35 or later:
      1. Edit your /etc/dhcp3/dhcpd.conf in drbl server, add these two lines:
        local-port 1067;
        remote-port 1068;
        Then restart dhcp service like this:
        /etc/init.d/dhcp3-server restart
      2. Run this command on DRBL server:
        /opt/drbl/sbin/mknic-nbi --udhcpc-port 1068
      3. Create Etherboot boot floppy or iso file, which will be used to boot the clients. Use this website http://www.rom-o-matic.net, choose network card and the type you want to create, and the most important is to choose "3. (optional) To customize ROM configuration press:", then check "ALTERNATE_DHCP_PORTS_1067_1068". You will get a dsk for iso file which you can put in the floppy or CD to boot it.
      4. For more details, refer to this discussion.
    2. Another solution is to provide static IP addresses to your DRBL clients by locking them with MAC address. The can be done when you run drblpush to configure your DRBL environment. By doing this, the DHCP service in DRBL server will only provide IP address to your specifiy clients.
    3. If you still need to provide floating IP address to your DRBL cient, you can try to use DRBL 1.8.0-15 or newer version. By uncomment the 'allow members of "DRBL-Client";' in /etc/dhcp3/dhcpd.conf, the DHCP service in DRBL server will only provide IP address to PXE, Etherboot or DRBL client. This mechanism won't affect your existing DHCP service. However, you have to make sure all the PXE or Etherboot clients are DRBL clients.
    4. You can merge the dhcpd.conf in DRBL server with your existing DHCP services. Then remove the DHCP service in DRBL server.
    There are some other possibilities to solve this problem. If you need some example, you can refer to this discussion:
    https://sourceforge.net/forum/message.php?msg_id=5341768
    Thanks to Nikolay Kasatkin.

  • I have a weird problem when restoring an image. I always got an error message "Can't read the following volume file: ... /stdin.001".     ^TOP^
  •  Most of the cases, the reason of the problem is when it saved:
    (1) If the image is saved by lzo (-z3 option), and you put the image in the network-based directory, maybe you can try to use gzip to save it (-z1). Lzo need good quality network.
    (2) If you are restoring a local image (not in network-based directory), and the image is saved from an ext3 partition of Fedora linux. This is the limitation of partimage. The "Blocks per group" of ext2/3 is always 32768 in partimage. However, in Fedora linux, sometimes this is always true.
    Check this for more info: https://sourceforge.net/forum/message.php?msg_id=4553522 You can use upgrade to drbl 1.8.1 with drbl-partimage 0.6.7_beta2 or later. This bug was fixed in partimage 0.6.7_beta2.

  • How can I remaster Clonezilla iso file ?     ^TOP^
  •  There are many tools that you can use them to remaster Clonezilla iso, for example:
    1. http://littlesvr.ca/isomaster/
    2. A script provide by Casual J. Programmer
    http://www.freewebs.com/casualprogrammer/Downloads/editCZCD
    You can use that to mount Clonezilla live iso as filesystem, and copy the contents to a r/w location. There any part of the Live-CD can be modified, then made into a new iso image to burn to CD. Thanks to Casual for providing this program.

  • How can I put the kickstart file for netinstall GNU/Linux ?     ^TOP^
  •  0. Make sure you already put the netinstall in your DRBL server. If not, run "/opt/drbl/sbin/drbl-netinstall -i all" followed by "/opt/drbl/sbin/generate-pxe-menu". Then use /opt/drbl/sbin/dcs to switch the netinstall.
    1. Put your kickstart file in your http or ftp server, in the example, we put ks.cfg in apache server 192.168.120.254.
    2. Take CentOS 5.1 as an example, edit /tftpboot/nbi_img/pxelinux.cfg/default, put "ks=http://192.168.120.254/ks.cfg" like this:
    label netinstall-CentOS-5.1-i386
    # MENU DEFAULT
    # MENU HIDE
    MENU LABEL CentOS 5.1 i386 installation via network
    # MENU PASSWD
    kernel vmlinuz-netinstall-CentOS-5.1-i386
    append initrd=initrd-netinstall-CentOS-5.1-i386.img ramdisk_size=65535 ks=http://192.168.120.254/ks.cfg

  • How can I configure FreeBSD network installation in DRBL server ?     ^TOP^
  •  Take FreeBSD 7.0 as an example, and here we assume the client IP address is 192.168.120.2:
    1. Download FreeBSD 7.0 boot ISO:
    wget ftp://ftp.twaren.net/BSD/FreeBSD/releases/i386/ISO-IMAGES/7.0/7.0-RELEASE-i386-bootonly.iso
    2. mount -o loop 7.0-RELEASE-i386-bootonly.iso /mnt
    3. mkdir /pxeroot/
    4. cp -a /mnt/boot /pxeroot/
    cp /mnt/boot/pxeboot /tftpboot/nbi_img/FreeBSD-7.0-pxeboot.0
    (You must have the file end with .0, since this tells pxelinux that it is a PXE image)
    Add the following in /pxeboot/boot/loader.conf:
    ---------
    vfs.root.mountfrom="ufs:/dev/md0c"
    ---------
    which means that the later booting process will use a ramdisk as root instead of NFS.
    5. append the following in /tftpboot/nbi_img/pxelinux.cfg/default
    ---------
    label FreeBSD 7.0 netinstall
    # MENU DEFAULT
    # MENU HIDE
    MENU LABEL FreeBSD 7.0 netinstall
    # MENU PASSWD
    kernel FreeBSD-7.0-pxeboot.0
    ---------
    6. Append one line by edit /etc/exports:
    ---------
    /pxeroot/ 192.168.120.2(ro,sync,async,no_root_squash,subtree_check)
    ---------
    then restart nfs service (Ex. /etc/init.d/nfs-kernel-server restart)

    PS. If you want to assign different PXE root, you can set an option in dhcpd.conf like this:
    option root-path "/freebsd7.0-pxeroot/";
    Remember to modify /etc/exports and put the files in the corresponding dir.
    Ref: http://www.hack.org/mc/freebsd-x60.html; http://www.fefe.de/netboot/how-to-netboot-installer.html

  • How can I restore those *.ntfs-img.* images into a partition manually ?     ^TOP^
  •  Say if your image is /home/partimag/YOURIMAGE/, and the image is /home/partimag/YOURIMAGE/hda1.ntfs-img.aa, hda1.ntfs-img.ab..., and you want to restore the image to /dev/hda2.
    Before you do it, make sure the partition size of /dev/hda2 is equal to or larger than the original partition size of hda1 image.
    Now you can run:
    "file /home/partimag/YOURIMAGE/hda1.ntfs-img.aa"
    to see it's gzip, bzip or lzop image. Say it's gzip, then you can run
    cat /home/partimag/YOURIMAGE/hda1.ntfs-img.* | gzip -d -c | ntfsclone --restore-image -o /dev/hda2 -

  • Is that possible I can read the content of a NTFS image created by Clonezilla ?     ^TOP^
  •  Yes, but it's not straightforward. Here you are:
    1. Prepare a large disk in Linux
    2. Say if your image is /home/partimag/YOURIMAGE/, and the image is /home/partimag/YOURIMAGE/hda1.ntfs-img.aa, hda1.ntfs-img.ab...
    run
    "file /home/partimag/YOURIMAGE/hda1.ntfs-img.aa"
    to see it's gzip, bzip or lzop image. Say it's gzip, then you can run
    cat /home/partimag/YOURIMAGE/hda1.ntfs-img.* | gzip -d -c | ntfsclone --restore-image -o hda1.img -
    Then you will have a "hda1.img" which you can mount it by
    mount -o loop -t ntfs hda1.img /mnt

    Then all the files are in /mnt/

  • Is there any way I can save image to CD-RW or DVD-RW directly ?     ^TOP^
  •  Yes, check this for more details: https://sourceforge.net/forum/message.php?msg_id=4848130

  • Is that possible I can put clonezilla live in my harddrive which already has an OS installed ?     ^TOP^
  •  Yes.
    Here we use grub boot loader as an example. You have to put the clonezilla live files in a FAT, ext2/3, reiserfs or any grub supported partition.
    If you do not have such a partition, you can use gparted to resize your partition and create another partition to put clonezilla live. Here we assume you already have a FAT partition /dev/hda4 to put clonezilla live. This is how to do that:
    1. Boot the OS in the harddrive, saying it's GNU/Linux.
    2. Mount /dev/hda4 as /mnt, you can make it by: mount /dev/hda4 /mnt
    3. Download clonezilla live zip file, and unzip all the files in /mnt, make sure you put all the files in /mnt, say, makeboot.bat is in /mnt/, not in any subdir. You can make it by something like: "unzip clonezilla-live-*.zip -d /mnt" (Replace clonezilla-live-*.zip with the file name you just downloaded).
    4. Edit your grub config file /boot/grub/menu.lst, and append the following:
    -----------
    title Clonezilla live
    root (hd0,3)
    kernel /live/vmlinuz1 boot=live union=aufs vga=788 toram bootfrom=/dev/hda ip=frommedia
    initrd /live/initrd1.img
    boot
    -----------
    //NOTE// Here we put an extra param "toram" so that later later you can mount /dev/hda4 as clonezilla image dir if you want.
    Remember to check parameters in syslinux/syslinux.cfg from the zip file, copy them to here. It might be different from here, say vmlinuz1 path, username and hostname maybe different.

  • How to create Clonezilla live from scratch ?     ^TOP^
  •  1. Download Clonezilla live 1.2.0-25 or later version.
    2. Boot the downloaded clonezilla live, after language and keyboard are selected, choose "Start_Clonezilla" -> "device-image", then mount a working directory, the space should large enough to put the live CD and some temp files. It's recommended to choose local_dev to mount local partition as /home/partimag, since live-helper will use some low level commands and it might fail in network-based directory. Also make sure the partition is the filesystem of Linux, like ext3 or reiserfs, _NOT_ FAT or NTFS filesystem, because they do not support some file types in Linux.
    3. When Clonezilla live asks you to choose save or restore disk/partition, choose "exit" to enter command line prompt
    4. Run "sudo su -" to become root
    5. Run "ocs-live-netcfg" to configure the network so that we can access Debian repository later
    6. If you want to add more packages in Clonezilla live, and you are sure the packages are included in Debian repository, e.g. ncpfs, you can edit /opt/drbl/conf/drbl.conf, append ncpfs in variable PKG_FROM_DBN_WHICH_OCS_LIVE_NEED.
    7. cd /home/partimag/
    8. apt-get update; apt-get -y install live-helper cdebootstrap
    9. If you want some special kernel version, and you are sure it exists in Debian repository, e.g. kernel 2.6.18-6 or 2.6.24-etchnhalf.1, you can make Debian live by:
    create-debian-live -l e -b unstable -k 2.6.18-6 -i customized
    or
    create-debian-live -l e -b unstable -k 2.6.24-etchnhalf.1 -i customized
    ("-l e" means to use the live-experimental branch in drbl respository, this also means packages from live-stable, live-testing or live-unstable can be used. "-b unstable" means to use the unstable branch of drbl, this also means packages from stable and testing branches can be used.). You can refer to this URL to check the packages in DRBL repository http://free.nchc.org.tw/drbl-core/pool/drbl/).
    If everything runs smooth, you will get a Debian live with file name "debian-live-for-ocs-customized.iso". Later we will use this Debian live as a template for Clonezilla live.
    If you want to use the latest kernel, you can just run it without "-k 2.6.18-6" (This method only works for Debian Lenny. For Etch, you have to assign the kernel version), i.e.:
    create-debian-live -l e -d lenny -b unstable -i customized
    or
    create-debian-live -d lenny -i customized
    For more options about create-debian-live, you can run "create-debian-live --help".
    10. Run:
    ocs-iso -s -j debian-live-for-ocs-customized.iso -i customized
    ocs-live-dev -c -s -j debian-live-for-ocs-customized.iso -i customized
    then 2 files, clonezilla-live-customized.iso and clonezilla-live-customized.zip will be created, respectively.

  • When I use Clonezilla server edition to do a multicast clone, the client machines just stay in "Please Wait...", any hint ?     ^TOP^
  •  Normally you can find the clues in the log files (/var/log/messages or /var/log/daemon.log) about udpcast in your DRBL server. Try to find the keyword "udpcast" in the log files to see the status and why it won't start.
    Basically there are some possibilities:
    1. The network switch has blocked multicast packets. In this case, you have to enable that in your network switch, or check the "-brdcst" in the advanced parameters when you start multicast clonezilla. On the other hand, nn unmanaged network switch is another good choice in this case.
    2. There are more than one network switches in your DRBL environment, and you did not link those switches with cables. If not, do that.
    3. You assign the number of clients, but maybe some of them fail to join the multicast clone due to some reason, say, the hardware problem. Check your clients to see if all of them in the same status.
    4. Make sure your firewall in the DRBL server does NOT block the multicast packets.

  • I'd like to translate Clonezilla to other language, how can I help ?     ^TOP^
  •  Thanks for that if you'd like to help this. However, please keep in mind that you will be bothered everytime before a new version is release. :)
    1. Please download DRBL tarball fie: http://free.nchc.org.tw/drbl-core/src/. It is recommended to use the one in the unstable branch if it is available.
    2. Untar it by something like: tar jvzf drbl-1.9.1-29.tar.bz2
    3. You will find two files:
      • lang/bash/en_US: For DRBL/Clonezilla both
      • lang/perl/en_US: For setting up a DRBL server (Clonezilla SE)
    So far we haven't use gettext for locales. What you have to do now is just to translate those 2 files and save them as your locale name, e.g. ja_JP for Japanese. Then post it in the mailing list or email to steven _at_ nchc org tw.
    We will include them in the future release if you finish that.

  • How can I config my DRBL clients to use Active Directory authentication ?     ^TOP^
  •  
    1. Setup DRBL server by "drblsrv -i" and "drblpush -i" as mentioned in http://drbl.sourceforge.net/one4all/ normally.
    2. Append "compat winbind" to any client's nsswitch.conf, say /tftpboot/nodes/192.168.100.1/etc/nsswitch.conf
    3. Run "/opt/drbl/sbin/drbl-cp-hosts /tftpboot/nodes/192.168.100.1/etc/nsswitch.conf /etc/"
    4. Run "/opt/drbl/sbin/drbl-client-service samba on"
    5. Run "/opt/drbl/sbin/drbl-client-service winbind on" Ref: https://sourceforge.net/forum/message.php?msg_id=5307193


    Last modified: Sun Sep 28 16:32:40 UTC 2008