Mass Storage Device
MSD (Mass Storage Drive) lets One-KVM emulate virtual CD/DVD or flash drives. This enables BIOS/UEFI recovery or OS reinstallation with virtual media.
MSD notes
- CD-ROM images are limited to 2.2 GB (Linux kernel limit). Specially adapted systems have no such limit (currently OneCloud and CumeBox 2).
- Flash images have no size limit
Warning
For OneCloud, do not unmount images when the USB male-to-male cable (OTG) is disconnected or the target machine is powered off. Otherwise the kernel may spam errors, the log service can reach 100% CPU, and the system becomes unstable. MSD remains unavailable until OTG is restored.
Using MSD¶
Basic configuration¶
After build 20241004, MSD is enabled by default (uses /var/lib/kvmd/msd) and switches from a mounted partition to a directory.
Upload images manually¶
Upload image files to /var/lib/kvmd/msd.
Change MSD path¶
After build 201204, you can set any directory in /etc/kvmd/override.yaml. If you lack permission, run chown kvmd -R /var/lib/kvmd/msd/ to make it writable.
Writable flash drive¶
When emulating a flash drive, you can allow the target host to write files into the image. After stopping the drive, download and open the image on the local host. This is useful for retrieving files from the target.
Create a Ventoy bootable image¶
For versions earlier than 20241004 (not including 20241004), run kvmd-helper-otgmsd-remount rw before manipulating the directory to remount internal storage as read/write.
-
Create an empty image file in
/var/lib/kvmd/msd. Example:flash.imgwith size 4096 MB. -
In the web menu, select Drive -> Image -> flash.img, switch from cd-rom to flash, then connect MSD to the host.
-
On the target machine, open Ventoy and install to the virtual disk.

The flash image is ready. Mount it when needed.
File exchange¶
Related options:
Appendix: MSD partition mounting (legacy)¶
MSD partition mount (before 20241004)
If you still need partition mounting, comment out remount_cmd: /bin/true under msd in /etc/kvmd/override.yaml (set it to #remount_cmd: /bin/true) so the MSD partition has correct permissions.
Choose one of the following methods. For beginners, the third method is recommended, as it uses a virtual disk file and avoids partitioning physical disks.
Use OneCloud eMMC space
The author provides a system image with this software in the installation section (Netdisk path: /One-KVM related/gparted_on_armbain_usbdisk.zip). Flash it to a USB drive, plug it into the USB port near the Ethernet jack, boot, SSH (root/1234), and run gparted to open the partition tool.
If you do not see the GParted GUI, check whether your SSH client supports X11 forwarding.
In GParted, right-click /dev/mmcblp1p2 and choose Resize/Move, enter the new partition size in Free space following (e.g., 4096), format the free space as ext4, then click the "√" button in the toolbar to apply changes.
Use SD card
Avoid low-quality cards (some work in Windows but are detected yet unreadable on Linux).
Use a virtual disk file
Create a new img file for MSD. This method has been tested.
Mount the partition
Confirm the partition path (e.g., /dev/mmcblk1, /dev/mmcblk0p3, /root/diska.img). The example below uses /dev/mmcblk0.
Manual upload
One-KVM stores images in a special partition mounted at /var/lib/kvmd/msd. If it is read-only, run:






