Closed omernaveedxyz closed 1 year ago
Hello there 👋 Thanks for submitting your first issue to the Quickemu project 🐛 We'll try and take a look at your issue soon ⏲
In the meantime you might want to join the Wimpys World Discord 🗣 where we have a large community of Linux 🐧 enthusiasts and passionate open source developers 🧑💻
You might also be interested in following Wimpys World Twitch 📡 channel where Wimpy streams let's code video, including this project, several times a week. A back catalog of past live stream and other Linux related content is available on Wimpys World YouTube 📺 channel.
Tested by updating the smbd check to use command -v smbd
, but it turns out that QEMU also requires this path (/usr/sbin/smbd
) to be filled. So this isn't an issue on QuickEMU's end.
For those also on NixOS, you will need to add an overlay for the QEMU package to enable smbdSupport on top of having samba installed.
qemu = prev.qemu.override { smbdSupport = true; };
Re-opening this issue as it seems like updating the smbd filepath check is in fact required for NixOS alongside enabling smbdSupport for QEMU.
I have a fork that is working for me on NixOS. There is only a single line-change involved; however, I have not tested this on other devices.
--- a/quickemu
+++ b/quickemu
@@ -886,7 +886,7 @@ function vm_boot() {
fi
# If smbd is available and ~/Public is present export it to the guest via samba
- if [[ -e "/usr/sbin/smbd" && -n ${PUBLIC} ]]; then
+ if [[ -x "$(command -v smbd)" && -n ${PUBLIC} ]]; then
NET="${NET},smb=${PUBLIC}"
echo " - smbd: On guest: smb://10.0.2.4/qemu"
fi
As best as I can tell this is not fixed.
I have set smbdSupport = true
overriding my nix qemu package and conf, but the only way I can use quickemu
is by remove samba from my nixos config.
This error appears to come from qemu
perhaps smbdSupport
is not working anymore.
Is there any way of disabling samba manually in the quickemu conf ( I don't see one)?
If I delete smb=/home/USER/Public,
from ./ubuntu-23.04/ubuntu-23.04.sh
the VM starts fine.
❯ quickemu -vm ubuntu-23.04.conf
Quickemu 4.9.1 using /nix/store/hkcnadnp482ps6whjsr2v2j78hpvcgr4-qemu-8.1.3/bin/qemu-system-x86_64 v8.1.3
- Host: "NixOS 24.05 (Uakari)" running Linux 6.6 (desktop)
- CPU: 12th Gen Intel(R) Core(TM) i7-12700K
- CPU VM: 1 Socket(s), 8 Core(s), 2 Thread(s), 32G RAM
- BOOT: EFI (Linux), OVMF (/nix/store/dii0icxmvymcn7mxc3xxz5jjmf835p6a-OVMF-202311-fd/FV/OVMF_CODE.fd), SecureBoot (off).
- Disk: ubuntu-23.04/disk.qcow2 (50G)
Looks unused, booting from ubuntu-23.04/ubuntu-23.04-desktop-amd64.iso
- Boot ISO: ubuntu-23.04/ubuntu-23.04-desktop-amd64.iso
- Display: SDL, virtio-vga-gl, GL (on), VirGL (on)
- Sound: intel-hda
- ssh: On host: ssh user@localhost -p 22220
- WebDAV: On guest: dav://localhost:9843/
- 9P: On guest: sudo mount -t 9p -o trans=virtio,version=9p2000.L,msize=104857600 Public-avi ~/Public
- smbd: On guest: smb://10.0.2.4/qemu
- Network: User (virtio-net)
- Monitor: On host: nc -U "ubuntu-23.04/ubuntu-23.04-monitor.socket"
or : socat -,echo=0,icanon=0 unix-connect:ubuntu-23.04/ubuntu-23.04-monitor.socket
- Serial: On host: nc -U "ubuntu-23.04/ubuntu-23.04-serial.socket"
or : socat -,echo=0,icanon=0 unix-connect:ubuntu-23.04/ubuntu-23.04-serial.socket
qemu-system-x86_64: -netdev user,hostname=ubuntu-23.04,hostfwd=tcp::22220-:22,smb=/home/USER/Public,id=nic: Could not find '/usr/sbin/smbd', please install it
cat: ubuntu-23.04/ubuntu-23.04.pid: No such file or directory
- Process: Starting ubuntu-23.04.conf as ubuntu-23.04 ()
Confirming that this is still an issue for me as well. Something is still not quite right here. ~Could this be re-opened?~ Edit: Still not sure if it's a NixOS-specific issue -- disabling the system service worked for me too.
I've just had the same issue. It only works when disabling Samba on my config.
-quickemu
+(quickemu.override { qemu = qemu_full; })
Works for me.
Expected behaviour
With the samba package installed on NixOS, QuickEMU should detect smbd and enable access to the guest VM
Actual behaviour
Even with samba package installed, the smbd service is not detected and therefore the mount is unavailable in the guest VM.
Steps to reproduce the behaviour
Temporary solution
I was able to get the samba mount working by symlinking the path for smbd on NixOS to /usr/sbin/smbd
So perhaps there is another way QuickEMU should try to detect for smbd as opposed to how it is currently done. (reference)
Quickemu output
Linux Distribution & Kernel
Run the following and paste the output.