diff --git a/docs.it4i/software/tools/virtualization.md b/docs.it4i/software/tools/virtualization.md
index b2bb0fd0e3e02b3d02bb219e47c52b45ff86d253..082680ebd88ccd7f1dee9c3bec20bd653412babc 100644
--- a/docs.it4i/software/tools/virtualization.md
+++ b/docs.it4i/software/tools/virtualization.md
@@ -12,7 +12,7 @@ There are situations when Anselm's environment is not suitable for user needs.
 * Application requires privileged access to operating system
 * ... and combinations of above cases
 
-We offer solution for these cases - **virtualization**. Anselm's environment gives the possibility to run virtual machines on compute nodes. Users can create their own images of operating system with specific software stack and run instances of these images as virtual machines on compute nodes. Run of virtual machines is provided by standard mechanism of [Resource Allocation and Job Execution](salomon/job-submission-and-execution/).
+We offer solution for these cases - **virtualization**. Anselm's environment gives the possibility to run virtual machines on compute nodes. Users can create their own images of operating system with specific software stack and run instances of these images as virtual machines on compute nodes. Run of virtual machines is provided by standard mechanism of [Resource Allocation and Job Execution][1].
 
 Solution is based on QEMU-KVM software stack and provides hardware-assisted x86 virtualization.
 
@@ -24,7 +24,7 @@ Anselm's virtualization does not provide performance and all features of native
 
 Virtualization has also some drawbacks, it is not so easy to setup efficient solution.
 
-Solution described in chapter [HOWTO](#howto)  is suitable for single node tasks, does not introduce virtual machine clustering.
+Solution described in chapter [HOWTO][2] is suitable for single node tasks, does not introduce virtual machine clustering.
 
 !!! note
     Please consider virtualization as last resort solution for your needs.
@@ -36,7 +36,7 @@ For running Windows application (when source code and Linux native application a
 
 ## Licensing
 
-IT4Innovations does not provide any licenses for operating systems and software of virtual machines. Users are ( in accordance with [Acceptable use policy document](http://www.it4i.cz/acceptable-use-policy.pdf)) fully responsible for licensing all software running in virtual machines on Anselm. Be aware of complex conditions of licensing software in virtual environments.
+IT4Innovations does not provide any licenses for operating systems and software of virtual machines. Users are (in accordance with [Acceptable use policy document][a]) fully responsible for licensing all software running in virtual machines on Anselm. Be aware of complex conditions of licensing software in virtual environments.
 
 !!! note
     Users are responsible for licensing OS e.g. MS Windows and all software running in their virtual machines.
@@ -49,7 +49,7 @@ We propose this job workflow:
 
 ![Workflow](../../img/virtualization-job-workflow.png)
 
-Our recommended solution is that job script creates distinct shared job directory, which makes a central point for data exchange between Anselm's environment, compute node (host) (e.g. HOME, SCRATCH, local scratch and other local or cluster file systems) and virtual machine (guest). Job script links or copies input data and instructions what to do (run script) for virtual machine to job directory and virtual machine process input data according instructions in job directory and store output back to job directory. We recommend, that virtual machine is running in so called [snapshot mode](virtualization/#snapshot-mode), image is immutable - image does not change, so one image can be used for many concurrent jobs.
+Our recommended solution is that job script creates distinct shared job directory, which makes a central point for data exchange between Anselm's environment, compute node (host) (e.g. HOME, SCRATCH, local scratch and other local or cluster file systems) and virtual machine (guest). Job script links or copies input data and instructions what to do (run script) for virtual machine to job directory and virtual machine process input data according instructions in job directory and store output back to job directory. We recommend, that virtual machine is running in so called [snapshot mode][3], image is immutable - image does not change, so one image can be used for many concurrent jobs.
 
 ### Procedure
 
@@ -77,11 +77,11 @@ You can convert your existing image using `qemu-img convert` command. Supported
 
 We recommend using advanced QEMU native image format qcow2.
 
-[More about QEMU Images](http://en.wikibooks.org/wiki/QEMU/Images)
+More about QEMU Images [here][b].
 
 ### Optimize Image of Your Virtual Machine
 
-Use virtio devices (for disk/drive and network adapter) and install virtio drivers (paravirtualized drivers) into virtual machine. There is significant performance gain when using virtio drivers. For more information see [Virtio Linux](http://www.linux-kvm.org/page/Virtio) and [Virtio Windows](http://www.linux-kvm.org/page/WindowsGuestDrivers/Download_Drivers).
+Use virtio devices (for disk/drive and network adapter) and install virtio drivers (paravirtualized drivers) into virtual machine. There is significant performance gain when using virtio drivers. For more information see [Virtio Linux][c] and [Virtio Windows][d].
 
 Disable all unnecessary services and tasks. Restrict all unnecessary operating system operations.
 
@@ -149,9 +149,7 @@ Example startup script maps shared job script as drive z: and looks for run scri
 
 ### Create Job Script for Executing Virtual Machine
 
-Create job script according recommended
-
-[Virtual Machine Job Workflow](#virtual-machine-job-workflow).
+Create job script according recommended [Virtual Machine Job Workflow][4].
 
 Example job for Windows virtual machine:
 
@@ -203,7 +201,7 @@ Run script runs application from shared job directory (mapped as drive z:), proc
 
 ### Run Jobs
 
-Run jobs as usual, see  [Resource Allocation and Job Execution](salomon/job-submission-and-execution/). Use only full node allocation for virtualization jobs.
+Run jobs as usual, see [Resource Allocation and Job Execution][1]. Use only full node allocation for virtualization jobs.
 
 ### Running Virtual Machines
 
@@ -414,3 +412,13 @@ For Windows guests we recommend these options, life will be easier:
 ```console
 $ qemu-system-x86_64 ... -localtime -usb -usbdevice tablet
 ```
+
+[1]: ../../salomon/job-submission-and-execution.md
+[2]: #howto
+[3]: #snapshot-mode
+[4]: #virtual-machine-job-workflow
+
+[a]: http://www.it4i.cz/acceptable-use-policy.pdf
+[b]: http://en.wikibooks.org/wiki/QEMU/Images
+[c]: http://www.linux-kvm.org/page/Virtio
+[d]: http://www.linux-kvm.org/page/WindowsGuestDrivers/Download_Drivers