tklbam-restore - Backing up a Hub server to a local VM?

DirtyBirdNJ's picture


I have a server running on the cloud that's doing great, and I want to duplicate it so another developer can work on the system without mucking with my server.

I created a fresh VM from the LAMP appliance, ran the tklbam-init function with my api key, and ran the tklbam-restore (id) command... and now I'm waiting.

The backup itself is 1.2gb compressed, about 3.4gb uncompressed. The Local Virtual Machine I made was provisioned with 1gb of ram and 8gb of HDD space.

The restore process appears hung, it's still working (I think) and the last line says: "IOError: [Errno 28] No space left on device.

I'm curious why 8gb of storage isn't enough to restore my 1.2/3.4gb backup server? The Appliance running on the cloud is the same one I created my VirtualBox image from (LAMP). Is this an error message I can ignore, or is the restore process effectively "hung" at this point?

I can't leave my computer on overnight, so I have to wait till tomorrow to try to run the command again. I saw another thread on here about tklbam-restore commands taking a while, they suggested a binding for the /tmp/mnt directory... but it's unclear to me whether or not these commands will help me trying to restore the Cloud image to my local VM.

Jeremy Davis's picture

It's probably running out of room. AFAIK TKLBAM downloads to /tmp then extracts, then copies so the best bet is to start again with a bigger vHDD. Or you could add another vHDD and bind it to /tmp

DirtyBirdNJ's picture


Thanks for the response. I just spun up another local vm, this time with 18gb of storage and I still ran into the same issue. Could the problem be that I am using dynamically allocated Virtual Machine Images instead of fixed size virtual disks?

Also, I created an extra disk, but I'm not sure how to bind that disk to the /tmp location. In the thread I listed above, they cite the following commands: 

mkdir -p /mnt/tmp
mount --bind /mnt/tmp /tmp

I ran these commdands, and no errors or anything came up. However, I keep getting the following messages during the restore now: 

Download: s3:// (attempt #5, reason: SSLError: The read operation timed out)

Jeremy Davis's picture

I'm out of ideas. Perhaps it might be worth emailing Alon or Liraz (TKL devs). They often read the forums, but not so much when they're deep in a production cycle.

DirtyBirdNJ's picture


Better a delayed reply than no reply! 

I think my problem is two fold:

  1. I was not correctly mounting my Dynamically Sized Virutal Disk to the /mnt/tmp because...
  2. I am running out of space because my local VM is not connected to S3 (see #1)

I did some digging and found out that VirtualBox does not allow instances of Linux to mount dynamically sized VirtualDiskImages... so that wasn't going to work no matter how hard I tried.

I also tried tklbam-restore with a VM that had an 8gb fixed VirtualDisk... and ran into the same "out of space" error.

Do you know of any guides or information on how to set up the  LAMP appliance in VirtualBox (or any other virtualization tool) for purposes of exporting a Turnkey Hub server?

I feel like the reason it's not working is that I may not be installing the appliance properly ... what are the extra steps for provisioning enough storage for /tmp? FYI we are using the same appliance on the Hub Server as well as our VirtualBox local servers.

Jeremy Davis's picture

So mount the new drive to /mnt then use the above commands to bind it. Sorry for lack of detail, it's just that I'm on my tablet and typing sucks! The other thing to do would be to just add the extra space to the LVM (search lvm on this site).

I'm sure that the TKL prebuilt VM images have dynamic vHDD. They have a default size of 20GB IIRC but certainly aren't 20GB downloads.

Post new comment