| 
  
   Size: 1499 
  
  Comment:  
 | 
  
   Size: 1355 
  
  Comment:  
 | 
| Deletions are marked like this. | Additions are marked like this. | 
| Line 9: | Line 9: | 
| `clonedomain.sh` | `domain_clone.sh` | 
| Line 40: | Line 40: | 
| ./clonedomain.sh clone | ./domain_clone.sh clone | 
| Line 43: | Line 43: | 
| == Cleanup == | == Console Access == | 
| Line 45: | Line 45: | 
| === Hostname === | Remove console access by [[Domain Editing|editing the domain]]. | 
| Line 47: | Line 47: | 
| Your new system will need a new hostname | == Memory == | 
| Line 49: | Line 49: | 
|  * /etc/hostname * /etc/hosts  | 
Increase or decrease amount of memory by [[Domain Editing|editing the domain]]. | 
| Line 52: | Line 51: | 
| {{{ sed -i 's/stretch-template/clone/g' /etc/hosts sed -i 's/stretch-template/clone/g' /etc/hostname }}} === sshd === Make sure the ssh keys are unique. {{{ rm /etc/ssh/ssh_host_* dpkg-reconfigure openssh-server }}}  | 
== sshd == | 
Domain Cloning
Once a template system has been installed, that system can be cloned. virt-clone will automatically change the MAC address of your network device.
Cloning
Use the script below to clone your template.
domain_clone.sh
   1 #!/bin/sh
   2 
   3 LVM_GROUP="vg2"
   4 NAME_ORIGINAL="stretch-template"
   5 LVM_NAME_ORIGINAL="kvm_${NAME_ORIGINAL}_vda"
   6 LVM_SIZE_ORIGINAL=`lvs /dev/${LVM_GROUP}/${LVM_NAME_ORIGINAL} -o LV_SIZE --noheadings --units B --nosuffix`
   7 NAME_CLONE="stretch-clone"
   8 LVM_NAME_CLONE="kvm_${NAME_CLONE}_vda"
   9 
  10 if [ $# -gt 0 ]
  11 then
  12         NAME_CLONE=${1}
  13         LVM_NAME_CLONE="kvm_${NAME_CLONE}_vda"
  14 fi
  15 
  16 if [ ! -e /dev/${LVM_GROUP}/${LVM_NAME_CLONE} ]
  17 then
  18         # create lvm partition
  19         lvcreate --size ${LVM_SIZE_ORIGINAL}B --name ${LVM_NAME_CLONE} ${LVM_GROUP}
  20 
  21         # clone the domain
  22         virt-clone --original ${NAME_ORIGINAL} --name ${NAME_CLONE} --file /dev/${LVM_GROUP}/${LVM_NAME_CLONE} --check path_in_use=off,path_exists=off
  23 else
  24         echo "${0}: refusing to overwrite existing domain"
  25 fi
Make a clone.
./domain_clone.sh clone
Console Access
Remove console access by editing the domain.
Memory
Increase or decrease amount of memory by editing the domain.