A method for creating and exposing virtual disk images to a host server, during a keyboard, video and mouse, KVM, session, using an HTML5 KVM/virtual media client running in a Web browser of a user's device, the Web browser having both a temporary sandbox and a persistent sandbox, the method comprising: sending a selection to the host server of a specific virtual media device to be mapped on the host server, comprising the user selecting specific files and/or folders in response to a screen prompt presented by the HTML5 KVM/virtual media client; calculating, by the HTML5 KVM/virtual media client, based on the user selection, an expected total size of the virtual disk image size comprising obtaining, by the HTML5 KVM/virtual media client, a user's persistent storage requested quota size and a used persistent storage size; calculating, by the HTML5 KVM/virtual media client, the expected total size of the virtual disk image to include the user's persistent storage requested quota size and used persistent storage size; with the calculated total size determined, calling an Application Programming Interface, API, of the Web browser to obtain user permission to write a virtual disk image into the Web browser's persistent sandbox for the expected virtual disk image size; when permission to write a virtual disk image in the persistent sandbox is received, then using the HTML5 KVM/virtual media client to package the selected content using a selected format, and using the persistent sandbox of the Web browser into which the selected content is written, to create a disk image of the selected content in the persistent sandbox of the Web browser; notifying the host server of an available virtual disk image and exposing the virtual disk image present in the persistent sandbox for use to the host server; using the host server to obtain the virtual disk image from the persistent sandbox; using the host server to send a request to the HTML5 KVM/virtual media client for a portion of the data of the virtual disk image to retrieve; using the HTML5 KVM/virtual media client to translate the request into at least one specific file that makes up the virtual disk image, and to send bytes of data corresponding to the at least one specific file to the host server; and using the host server to receive the bytes of data corresponding to the at least one specific file. sending a selection to the host server of a specific virtual media device to be mapped on the host server, comprising the user selecting specific files and/or folders in response to a screen prompt presented by the HTML5 KVM/virtual media client; calculating, by the HTML5 KVM/virtual media client, based on the user selection, an expected total size of the virtual disk image size comprising obtaining, by the HTML5 KVM/virtual media client, a user's persistent storage requested quota size and a used persistent storage size; calculating, by the HTML5 KVM/virtual media client, the expected total size of the virtual disk image to include the user's persistent storage requested quota size and used persistent storage size; with the calculated total size determined, calling an Application Programming Interface, API, of the Web browser to obtain user permission to write a virtual disk image into the Web browser's persistent sandbox for the expected virtual disk image size; obtaining, by the HTML5 KVM/virtual media client, a user's persistent storage requested quota size and a used persistent storage size; calculating, by the HTML5 KVM/virtual media client, the expected total size of the virtual disk image to include the user's persistent storage requested quota size and used persistent storage size; with the calculated total size determined, calling an Application Programming Interface, API, of the Web browser to obtain user permission to write a virtual disk image into the Web browser's persistent sandbox for the expected virtual disk image size; when permission to write a virtual disk image in the persistent sandbox is received, then using the HTML5 KVM/virtual media client to package the selected content using a selected format, and using the persistent sandbox of the Web browser into which the selected content is written, to create a disk image of the selected content in the persistent sandbox of the Web browser; notifying the host server of an available virtual disk image and exposing the virtual disk image present in the persistent sandbox for use to the host server; using the host server to obtain the virtual disk image from the persistent sandbox; using the host server to send a request to the HTML5 KVM/virtual media client for a portion of the data of the virtual disk image to retrieve; using the HTML5 KVM/virtual media client to translate the request into at least one specific file that makes up the virtual disk image, and to send bytes of data corresponding to the at least one specific file to the host server; and using the host server to receive the bytes of data corresponding to the at least one specific file.