I recently had the need to update my shiny new FreeBSD jailed server because I wanted to migrate to WordPress. I didn’t want to bring down the existing server while I did the install and converted my content so I managed to clone my existing jailed server using warden:

 warden export name_of_jail --dir=/directory_for_warden_file 

This will take a while… Once done, you can import the warden file creating a new jail:

 warden import jail_warden_file.wdn --host=jailbird --ipv4=192.168.1.105/24 

You’ve now got a cloned jail and a template for creating other jailed servers.

If you’re like me and prefer the command line to the GUI, here’s a trick and script to help you manage your Solaris VMs.

  1. Enable a serial port for the VM.
    1. Enable Port 1
    2. Port Number COM1
    3. Port Mode: Host Pipe
    4. Create Pipe
    5. Port/File Path: /tmp/vb-VM-NAME-console
  2. Perform a reconfiguration boot on the VM.
  3. Install socat on the host system

    sudo apt-get install socat
  4. Change the eeprom console device for the VM:

    eeprom console=ttya
  5. Change the /boot/grub/menu.lst for the VM:

    ...
    # To enable grub serial console to ttya uncomment the following lines
    # and comment out the splashimage line below
    # WARNING: don't enable grub serial console when BIOS console serial
    #       redirection is active!!!
    serial --unit=0 --speed=9600
    terminal serial
    #
    # Uncomment the following line to enable GRUB splashimage on console
    #splashimage /boot/grub/splash.xpm.gz
    #
    # To chainload another OS
    ...
  6. Bring down the VM:

    init 5
  7. Once this is done, we can now tell VirtualBox to boot the VM headless and connect with socat

    VBoxManage startvm node1 --type headless && socat -,raw,echo=0 /tmp/vb-node1-console

    I wrote a perl script to handle booting and connecting the console. Feel free to download: vb.pl


    $ vb.pl -h
    usage:

    vb.pl -l
    vb.pl -n VM -b
    vb.pl -n VM -p
    vb.pl -h

    -l : list VirtualBox machines
    -n : name of the VirtualBox machine
    -b : power on and boot machine
    -p : power off machine
    -h : this message.