Virt-manager filesystem passthrough not working
I'm new to the ubuntu/linux environment so I don't have a lot of knowledge before hand.
I'm currently trying to set up a filesystem passthrough between my host (Ubuntu 22.04 LTS) and my vm (Ubuntu 16.04 LTS). I tried setting it up by following a youtube link but when i tried to add a file to it the other party can not open the file (i.e when i add a text document from my vm, the host cannot open the file). how the filesystem passthrough is currently showing
This is the filesystem code that I am running on my vm:
<filesystem type="mount" accessmode="mapped">
<source dir="/home/kkuma30/VIRTUAL_BOX"/>
<target dir="/hostshare"/>
<address type="pci" domain="0x0000" bus="0x00" slot="0x09" function="0x0"/>
</filesystem>
One thing to note is in my virtual machine manager, there is no way to choose how to the type or mode in the filesystem passthrough. filesystem passthrough setting
Is there anyway to fix this? I am trying to emulate Ubuntu 16.04 to run FVCOM
do you know?
how many words do you know
See also questions close to this topic
-
Why my Windows10 host can't connect the virtual machine(Centos 7) running on another ubuntu host(20.04)?
Basic information :The virtual machine running on the ubuntu host had set the static IP and the Internet connection is available. The sshd.servicre is also running,the firewalld is disable. Moreover,the virtual machine can ping the ubuntu host and the ubuntu host can ping the virtual machine. Further,my windows10 host can also ping the ubuntu host. However, my windows10 host can't ping the virtual machine and can't connect the virtual machine.
My question is how to solve this confusing question?
-
VirtualBox Error NEM failed to map page(s) into the VM. (VERR_NEM_MAP_PAGES_FAILED)
Im getting this issue for the first time, im not sure how to fix it. Running Windows 10 Home, Virtualization enabled. My VM is Parrot OS
Complete error:
Failed to open a session for the virtual machine Parrot.
NEM failed to map page(s) into the VM. (VERR_NEM_MAP_PAGES_FAILED).
Result Code: E_FAIL (0x80004005) Component: ConsoleWrap Interface: IConsole {872da645-4a9b-1727-bee2-5585105b9eed}
I have no idea how to fix this and I cant find anything about it online.
-
Rebuild QEMU (For RISCV-GNU-TOOLCHAIN)
This is a follow-up from the following question Custom Instruction crashing with SIGNAL 4 (Illegal Instruction): RISC-V (32) GNU-Toolchain with QEMU (apologies if I have missed any etiquette points in advance or formatted this in an unsavoury way, as I am still new to posting here). I am using the latest version of the riscv-gnu-toolchain, so I am just wondering what caveats and differences this process will be for this platform.
I was following namely two guides to add custom RISC-V instructions to QEMU - namely https://www.ashling.com/wp-content/uploads/QEMU_CUSTOM_INST_WP.pdf and https://chowdera.com/2021/04/20210430120004272q.html.
After editing qemu/target/riscv/insn32.decode with a free opcode (following Ashling tutorial), and implementing translator function in insn_trans/trans_rvi.c.inc - QEMU hangs when calling the function as an .insn directive (I know this to work - ). Changing opcodes of existing instructions to test if disassembly changes indicated to me that QEMU was not registering the changes I made and that I didn't rebuild/recompile QEMU correctly. I simply ran
make clean
, reconfigured andmake
again in the QEMU directory to rebuild it - Is this the correct way to rebuild QEMU in this toolchain or is there something I missed.The code to call
#include <stdio.h> static int test_ins(int a, int b) { int result; asm volatile(".insn r 0x33, 7, 0x20, %0, %1, %2" : "=r"(result) : "r"(a), "r"(b)); return result; } int main() { int a, b, result; a = 2; b = 4; result = test_ins(a,b); printf("%d\n", result); }
Instruction in insn32.decode is as follows:
OPCODE = "0110011", FUNCT3 = "111" and FUNCT7 = "0100000".
Implementation of aforementioned instruction is as follows:
static bool trans_bitcnt(DisasContext *ctx, arg_bitcnt *a) { TCGLabel *loop_source1 = gen_new_label(); TCGLabel *loop_source2 = gen_new_label(); TCGv source1, source2, dstval, cntval; source1 = tcg_temp_local_new(); source2 = tcg_temp_local_new(); dstval = tcg_temp_local_new(); cntval = tcg_temp_local_new(); // Count all the bits set in rs1 and rs2 and put that number in rd gen_get_gpr(source1, a->rs1); gen_get_gpr(source2, a->rs2); tcg_gen_movi_tl(cntval, 0x0); /* Count the bits that are set in the first register */ gen_set_label(loop_source1); tcg_gen_andi_tl(dstval, source1, 0x1); tcg_gen_shri_tl(source1, source1, 0x1); tcg_gen_add_tl(cntval, cntval, dstval); tcg_gen_brcondi_tl(TCG_COND_NE, source1, 0x0, loop_source1); /* Count the bits that are set in the second register */ gen_set_label(loop_source2); tcg_gen_andi_tl(dstval, source2, 0x1); tcg_gen_shri_tl(source2, source2, 0x1); tcg_gen_add_tl(cntval, cntval, dstval); tcg_gen_brcondi_tl(TCG_COND_NE, source2, 0x0, loop_source2); /* Update the destination register with the bits total */ gen_set_gpr(a->rd, cntval); tcg_temp_free(source1); tcg_temp_free(source2); tcg_temp_free(dstval); tcg_temp_free(cntval); return true; }
-
How to print out all logs in Android Emulator
The help command:
$ANDROID_SDK/emulator/qemu/linux-x86_64/qemu-system-aarch64 --help
It says: "
-verbose
" is equal to "-debug-init
".-verbose same as '-debug-init' -debug <tags> enable/disable debug messages -debug-<tag> enable specific debug messages -debug-no-<tag> disable specific debug messages
The full help output:
Android Emulator usage: emulator [options] [-qemu args] options: -list-avds list available AVDs -sysdir <dir> search for system disk images in <dir> -system <file> read initial system image from <file> -vendor <file> read initial vendor image from <file> -writable-system make system & vendor image writable after 'adb remount' -delay-adb delay adb communication till boot completes -datadir <dir> write user data into <dir> -kernel <file> use specific emulated kernel -ramdisk <file> ramdisk image (default <system>/ramdisk.img -image <file> obsolete, use -system <file> instead -initdata <file> same as '-init-data <file>' -data <file> data image (default <datadir>/userdata-qemu.img -encryption-key <file> read initial encryption key image from <file> -logcat-output <file> output file of logcat(default none) -partition-size <size> system/data partition size in MBs -cache <file> cache partition image (default is temporary file) -cache-size <size> cache partition size in MBs -no-cache disable the cache partition -nocache same as -no-cache -sdcard <file> SD card image (default <datadir>/sdcard.img -quit-after-boot <timeout> qeuit emulator after guest boots completely, or after timeout in seconds -qemu-top-dir <dir> Use the emulator in the specified dir (relative or absolute path) -monitor-adb <verbose_level> monitor the adb messages between guest and host, default not -snapstorage <file> file that contains all state snapshots (default <datadir>/snapshots.img) -no-snapstorage do not mount a snapshot storage file (this disables all snapshot functionality) -snapshot <name> name of snapshot within storage file for auto-start and auto-save (default 'default-boot') -no-snapshot perform a full boot and do not auto-save, but qemu vmload and vmsave operate on snapstorage -no-snapshot-save do not auto-save to snapshot on exit: abandon changed state -no-snapshot-load do not auto-start from snapshot: perform a full boot -snapshot-list show a list of available snapshots -no-snapshot-update-time do not try to correct snapshot time on restore -wipe-data reset the user data image (copy it from initdata) -avd <name> use a specific android virtual device -avd-arch <target> use a specific target architecture -skindir <dir> search skins in <dir> (default <system>/skins) -skin <name> select a given skin -no-skin deprecated: create an AVD with no skin instead -noskin same as -no-skin -memory <size> physical RAM size in MBs -ui-only <UI feature> run only the UI feature requested -id <name> assign an id to this virtual device (separate from the avd name) -cores <number> Set number of CPU cores to emulator -accel <mode> Configure emulation acceleration -no-accel Same as '-accel off' -ranchu Use new emulator backend instead of the classic one -engine <engine> Select engine. auto|classic|qemu2 -netspeed <speed> maximum network download/upload speeds -netdelay <delay> network latency emulation -netfast disable network shaping -code-profile <name> enable code profiling -show-kernel display kernel messages -shell enable root shell on current terminal -no-jni deprecated, see dalvik_vm_checkjni -nojni deprecated, see dalvik_vm_checkjni -dalvik-vm-checkjni Enable dalvik.vm.checkjni -logcat <tags> enable logcat output with given tags -use-system-libs Use system libstdc++ instead of bundled one -bluetooth <vendorid:productid> forward bluetooth to vendorid:productid -stdouterr-file <file-name> redirect stdout/stderr to a specific file -no-qt disable qt windowing system -no-audio disable audio support -noaudio same as -no-audio -audio <backend> use specific audio backend -radio <device> redirect radio modem interface to character device -port <port> TCP port that will be used for the console -ports <consoleport>,<adbport> TCP ports used for the console and adb bridge -onion <image> use overlay PNG image over screen -onion-alpha <%age> specify onion-skin translucency -onion-rotation 0|1|2|3 specify onion-skin rotation -dpi-device <dpi> specify device's resolution in dpi (default DEFAULT_DEVICE_DPI) -scale <scale> scale emulator window (deprecated) -wifi-client-port <port> connect to other emulator for WiFi forwarding -wifi-server-port <port> listen to other emulator for WiFi forwarding -http-proxy <proxy> make TCP connections through a HTTP/HTTPS proxy -timezone <timezone> use this timezone instead of the host's default -change-language <language> use this language instead of the current one. Restarts the framework. -change-country <country> use this country instead of the current one. Restarts the framework. -change-locale <locale> use this locale instead of the current one. Restarts the framework. -dns-server <servers> use this DNS server(s) in the emulated system -net-tap <interface> use this TAP interface for networking -net-tap-script-up <script> script to run when the TAP interface goes up -net-tap-script-down <script> script to run when the TAP interface goes down -cpu-delay <cpudelay> throttle CPU emulation -no-boot-anim disable animation for faster boot -no-window disable graphical window display -qt-hide-window Start QT window but hide window display -no-sim device has no SIM card -lowram device is a low ram device -version display emulator version number -no-passive-gps disable passive gps updates -gnss-file-path <path> Use the specified filepath to read gnss data -gnss-grpc-port <port number> Use the specified port number to start grpc service to receive gnss data -virtio-console using virtio console as console -read-only allow running multiple instances of emulators on the same AVD, but cannot save snapshot. -is-restart <restart-pid> specifies that this emulator was a restart, and to wait out <restart-pid> before proceeding -report-console <socket> report console port to remote socket -gps <device> redirect NMEA GPS to character device -shell-serial <device> specific character device for root shell -tcpdump <file> capture network packets to file -bootchart <timeout> enable bootcharting -charmap <file> use specific key character map -studio-params <file> used by Android Studio to provide parameters -prop <name>=<value> set system property on boot -shared-net-id <number> join the shared network, using IP address 10.1.2.<number> -nand-limits <nlimits> enforce NAND/Flash read/write thresholds -gpu <mode> set hardware OpenGLES emulation mode -use-host-vulkan use host for vulkan emulation regardless of 'gpu' mode -camera-back <mode> set emulation mode for a camera facing back -camera-front <mode> set emulation mode for a camera facing front -webcam-list lists web cameras available for emulation -virtualscene-poster <name>=<filename> Load a png or jpeg image as a poster in the virtual scene -screen <mode> set emulated screen mode -selinux <disabled|permissive> Set SELinux to either disabled or permissive mode -unix-pipe <path> Add <path> to the list of allowed Unix pipes -fixed-scale Use fixed 1:1 scale for the initial emulator window. -wait-for-debugger Pause on launch and wait for a debugger process to attach before resuming -skip-adb-auth Skip adb authentication dialogue -metrics-to-console Enable usage metrics and print the messages to stdout -metrics-collection Enable usage metrics and send them to google play -metrics-to-file <file> Enable usage metrics and write the messages into specified file -detect-image-hang Enable the detection of system image hangs. -feature <name|-name> Force-enable or disable (-name) the features -icc-profile <file> Use icc profile from specified file -sim-access-rules-file <file> Use SIM access rules from specified file -phone-number <phone_number> Sets the phone number of the emulated device -acpi-config <file> specify acpi device proprerties (hierarchical key=value pair) -fuchsia Run Fuchsia image. Bypasses android-specific setup; args after are treated as standard QEMU args -window-size <size> Set window size for when bypassing android-specific setup. -allow-host-audio Allows sending of audio from audio input devices. Otherwise, zeroes out audio. -restart-when-stalled Allows restarting guest when it is stalled. -perf-stat <file> Run periodic perf stat reporter in the background and write output to specified file. -share-vid Share current video state in shared memory region. -grpc <port> TCP ports used for the gRPC bridge. -grpc-tls-key <pem> File with the private key used to enable gRPC TLS. -grpc-tls-cer <pem> File with the public X509 certificate used to enable gRPC TLS. -grpc-tls-ca <pem> File with the Certificate Authorities used to validate client certificates. -grpc-use-token Use the emulator console token for gRPC authentication. -idle-grpc-timeout <timeout> Terminate the emulator if there is no gRPC activity within <timeout> seconds. -waterfall <mode> Mode in which to run waterfall. -turncfg cmd Command to execute to obtain turn configuration for the webrtc video bridge. -rtcfps <fps> The frequency at which frames are delivered to webrtc video bridge. -rootcanal-hci-port <port> Rootcanal virtual hci port. -rootcanal-test-port <port> Rootcanal testing port. -rootcanal-link-port <port> Rootcanal link layer port. -rootcanal-controller-properties <file> Rootcanal controller_properties.json file. -rootcanal-default-commands-file <file> Rootcanal commands file to run on launch. -multidisplay index width height dpi flag config multiple displays. -google-maps-key <API key> API key to use with the Google Maps GUI. -no-location-ui Disable the location UI in the extended window. -use-keycode-forwarding Use keycode forwarding instead of host charmap translation. -record-session <file>,<delay>[,<duration>] Screen record the emulator session. -legacy-fake-camera Use legacy camera HAL for the emulated fake camera. -no-camera-hq-edge Disable high qualify edge processing for emulated camera. -no-direct-adb Use external adb executable for internal communication. -check-snapshot-loadable <snapshot name|exported snapshot tar file> Check if a snasphot is loadable. -no-hidpi-scaling Disable HiDPI scaling of guest display on macOS devices. -no-mouse-reposition Do not reposition the mouse to emulator window center if mouse pointer gets out of the window. -guest-angle Enable guest ANGLE as system driver. -usb-passthrough VID PID BUS PORTS Host USB device Passthrough -append-userspace-opt key=value Appends a property which is passed to the userspace. -qemu args... pass arguments to qemu -qemu -h display qemu help -verbose same as '-debug-init' -debug <tags> enable/disable debug messages -debug-<tag> enable specific debug messages -debug-no-<tag> disable specific debug messages -help print this help -help-<option> print option-specific help -help-disk-images about disk images -help-debug-tags debug tags for -debug <tags> -help-char-devices character <device> specification -help-environment environment variables -help-virtual-device virtual device management -help-sdk-images about disk images when using the SDK -help-build-images about disk images when building Android -help-all prints all help content
Here is the
Segmentation fault
when running emulator:... [ 75.175911][ T1] init: processing action (boot) from (/system/etc/init/hw/init.rc:1063) [ 75.355274][ T1] init: Command 'ifup lo' action=boot (/system/etc/init/hw/init.rc:1065) took 178ms and succeeded [ 75.724638][ T1] init: Command 'write /proc/sys/vm/overcommit_memory 1' action=boot (/system/etc/init/hw/init.rc:1075) took 306ms and succeeded [ 75.899002][ T1] init: Command 'mkdir /dev/sys/fs/by-name 0755 system system' action=boot (/system/etc/init/hw/init.rc:1085) took 102ms and succeeded [ 76.084154][ T1] init: Command 'write /dev/sys/block/by-name/userdata/queue/discard_max_bytes 134217728' action=boot (/system/etc/init/hw/init.rc:1103) took 77ms and failed: Unable to write to file '/dev/sys/block/by-name/userdata/queue/discard_max_bytes': Unable to write file contents: Invalid argument [ 76.146118][ T1] init: Command 'chmod 0660 /sys/devices/system/cpu/cpufreq/interactive/min_sample_time' action=boot (/system/etc/init/hw/init.rc:1113) took 58ms and succeeded [ 76.737396][ T1] init: Command 'verity_update_state' action=boot (/system/etc/init/hw/init.rc:1165) took 350ms and succeeded [ 77.530099][ T1] init: starting service 'hidl_memory'... [ 79.217922][ T1] init: starting service 'vendor.audio-hal'... [ 84.094401][ T1] init: starting service 'vendor.authsecret-1-0'... [ 87.444131][ T1] init: starting service 'btlinux-1.1'... [ 93.086893][ T1] init: starting service 'vendor.camera-provider-2-4'... [ 93.788099][ T1] init: starting service 'vendor.camera-provider-2-7-google'... [ 94.140000][ T1] init: starting service 'vendor.cas-hal-1-2'... [ 94.736886][ T1] init: starting service 'vendor.contexthub-hal-1-1-mock'... [ 95.349790][ T1] init: Could not start service 'vendor.drm-widevine-hal' as part of class 'hal': File /vendor/bin/hw/android.hardware.drm-service.widevine(labeled "u:object_r:vendor_file:s0") has incorrect label or no domain transition from u:r:init:s0 to another SELinux domain defined. Have you configured your service correctly? https://source.android.com/security/selinux/device-policy#label_new_services_and_address_denials. Note: this error shows up even in permissive mode in order to make auditing denials possible. [ 95.385078][ T1] init: starting service 'vendor.drm-hal-1-0'... [ 95.744955][ T1] init: starting service 'vendor.drm-clearkey-hal-1-4'... [ 96.110769][ T1] init: starting service 'vendor.drm-widevine-hal-1-4'... [ 96.556900][ T1] init: starting service 'vendor.gatekeeper-1-0'... [ 96.902685][ T1] init: starting service 'vendor.gralloc-3-0'... [ 97.350323][ T1] init: starting service 'vendor.hwcomposer-2-4'... [ 97.801508][ T1] init: starting service 'health-hal-2-1'... [ 98.309440][ T1] init: starting service 'android-hardware-media-c2-goldfish-hal-1-0'... [ 98.799439][ T1] init: starting service 'neuralnetworks_hal_service_sample_all'... [ 99.333017][ T1] init: starting service 'neuralnetworks_hal_service_sample_limited'... [ 99.814378][ T1] init: starting service 'vendor.power.stats-hal-1-0-mock'... [ 100.381543][ T1] init: starting service 'vendor.sensors-hal-2-1-multihal'... [ 100.939296][ T1] init: starting service 'vendor.thermal-hal-2-0-mock'... [ 101.502678][ T1] init: starting service 'vendor.usb-hal-1-0'... [ 102.086088][ T1] init: starting service 'vendor.wifi_hal_legacy'... [ 102.976636][ T1] init: starting service 'vendor.identity-default'... [ 103.133070][ T391] healthd: batteryCapacityLevelPath not found [ 103.133655][ T391] healthd: batteryChargeTimeToFullNowPath. not found [ 103.134003][ T391] healthd: batteryFullChargeDesignCapacityUahPath. not found [ 103.601328][ T1] init: starting service 'vendor.light-default'... [ 103.860390][ T391] healthd: battery l=100 v=5000 t=25.0 h=2 st=4 c=900000 fc=3000000 cc=10 chg= [ 104.150856][ T1] init: starting service 'vendor.power-default'... [ 104.782261][ T1] init: starting service 'vendor.rebootescrow-default'... [ 105.330918][ T1] init: starting service 'vendor.vibrator-default'... [ 105.892861][ T1] init: Command 'class_start hal' action=boot (/system/etc/init/hw/init.rc:1168) took 29153ms and succeeded [ 106.008920][ T1] init: starting service 'ranchu-setup'... [ 106.547017][ T1] init: starting service 'audioserver'... [ 107.090541][ T1] init: starting service 'credstore'... [ 107.878728][ T1] init: starting service 'gpu'... emulator: VERBOSE: MultiDisplay.cpp:435: setDisplayPose 0 x -1 y -1 w 1440 h 2560 dpi 72 Segmentation fault
I need to print all logs to trace the "
Segmentation fault
" after emulator calling the "MultiDisplay.cpp:435: setDisplayPose 0 x -1 y -1 w 1440 h 2560 dpi 72
".How to use "
-debug <tags>
" and "-debug-<tag>
" to print out more than the "-debug-init
"?How many
tags
can be used? How to know what tags are available in the-debug
option? -
Openstack cinder volume resize does not reflect without a vm reboot
When I extend a cinder volume which is "in-use" state, the volume gets extended but when I see inside the vm it does not show the extension it still shows the same size. Only after a reboot the change shows inside the vm - windows disk management. Is there a way to force this change, where I dont have to reboot the server and it shows the change on the fly. The problem is we can not stop the IO on the disk, so can not really afford a reboot. Any direction here, how to solve this problem. Thanks
Openstack version: Xena KVM hypervisor
-
Modify the value of CNTFRQ_EL0 in ARM KVM for the guest to boot
I found that there is a patch for Linux to run on systems that have misprogrammed CNTFRQ register. From the patch:
It is an unfortunate situation that CNTFRQ{,_EL0} is often misprogrammed from the firmware side, leaving it up to the kernel to work around it. This is usually done by providing an alternative frequency in the Device Tree.
Unfortunately, CNTFRQ is accessible from EL0, giving userspace the wrong frequency, and potentially a different frequency per CPU, which is definitely not what you want. A possible workaround is to trap this into the kernel and to emulate it (together with the VDSO being disabled), and this is what this series is achieving.From what I know, the CNTFRQ register is only writable from EL3 (monitor), and readable from all exception levels. Mine also has misconfigured CNTFRQ, it's set to 0 by bootloader (which I cannot modify).
What I want is to run Windows ARM on KVM on the host machine which also has misprogrammed CNTFRQ register. Windows just simply won't boot with CNTFRQ set to 0. Since Linux is an open source kernel, we can just apply patches in the code, but Windows is a commercial OS, so I think it's somewhat illegal to patch its code (and also harder to binary patch).
What I have think of:
- Trap and emulate the read from CNTFRQ in KVM
- Trap and emulate from QEMU
- (I think this is too slow) Use the same thing GDB use to list instructions from QEMU, then check if it's reading from CNTFRQ, then set the correct value to the read.
- Binary patch Windows (not sure where to patch).
Any ideas? Thank you in advance! Please correct me if I'm wrong.
Edit 1: I loaded
ntoskrnl.exe
to IDA and then use a script calledida-arm-system-highlight
.Then I searched for CNTFRQ and got 3 results:
Note: This is the patch I used to patch EDK2 to boot on my KVM, and it actually worked. The patch set the read
CNTFRQ_EL0
to be 26Mhz (26000000). So could I use that value to patchCNTFRQ_EL0
read inntoskrnl.exe
?Also, pretend that the value 26Mhz (
0x18CBA80
) works, when I tried replacingMRS X8, #3, c14, c0, #0
withLDR X8, =0x18CBA80
, it takes 3 instructions!Any ideas? Again, thanks a lot!
-
Docker image with /dev/kvm module
I want to use kvm in my docker image. kvm and qemu-system-x86_64 are installed under /usr/bin but when I run eg.
/usr/bin/qemu-system-x86_64 -enable-kvm
I'm gettingCould not access KVM kernel module: No such file or directory qemu-system-x86_64: failed to initialize KVM: No such file or directory
I was able to fix to error by adding
--device=/dev/kvm
to docker run command.
My question is why this kvm module need to be attached from my host? Why it's required to be under /dev directory? -
Which package provides virt-install CLI tool in Yocto?
Does anyone know which package provides virt-install CLI tool in Yocto or how to use virt-install tool in yocto environment? I have added below packages in my bb file but I don't see virt-install tool getting built
packagegroup-core-boot \ qemu \ libvirt \ libvirt-libvirtd \ libvirt-virsh \ libvirt-python \ kernel-module-kvm \ kernel-module-kvm-intel \ kernel-module-kvm-amd \
Please help me.
-
How to record the vm screen with libvirt in python?
I'm doing testautomation with python where I'm working with various hosts on a kvm server. To achieve this, I'm using libvirt and python3. Now I want to record the tests to see whats going on afterwards.
I tried something like
import libvirt conn = libvirt.open("...") vm = conn.lookupByName('win10') stream = conn.newStream() while True: img = vm.screenshot(stream, 0) ....
but this only renders about 9 images per second, thus its very laggy. Is there a way get this done faster / more performant?
The virtual machines are set to use the spice display server.
-
How to clear install media list in virt-manager createvm page
There is an install media list in Virt-Manager createvm page.
Create VM Page ISO/CDROM list UI
Some media files were deleted but still shown in the list.
I have checked all the files located in
/etc/libvirt
and/var/lib/libvirt
but there is not list. Also, I have deleted all the files in$HOME/.cache/virt-manager
, but nothing happened.How to clear the list?