I have been trying multiple things including xrandr which i couldn’t get to work. Everytime i try to connect via NoMachine with a display attached to the desktop i can use it and see it. But once i disconnect the display it does not show any output on the machine i remote in from. Any tips or fixes?
You may need a “display emulator” for the remote computer. It’s a little device you plug into the HDMI or Displayport port. Don’t ask me why you need it but it works for me.
They are $5-10 on Amazon.
That may be the need to have the computer believe it has a monitor attached before it creates the monitor config that allows the desktop to be displayed. I would guess that emulator fakes out the monitor for the machine where it is attached.
Headless remote desktop based on Fedora Workstation and TigerVNC:
# Server
VNC_PASSWD="12345678"
sudo dnf -y install tigervnc-server
sudo sed -i -e "/=${USER}$/d" /etc/tigervnc/vncserver.users
sudo tee -a /etc/tigervnc/vncserver.users << EOF > /dev/null
:2=${USER}
EOF
mkdir -p ~/.vnc
tee ~/.vnc/config << EOF > /dev/null
session=gnome
securitytypes=vncauth,tlsvnc
geometry=2000x1200
localhost=0
alwaysshared
EOF
umask go=
vncpasswd -f << EOI | tee ~/.vnc/passwd > /dev/null
${VNC_PASSWD}
EOI
sudo systemctl enable vncserver@:2.service
sudo systemctl restart vncserver@:2.service
sudo firewall-cmd --permanent --add-service=vnc-server
sudo firewall-cmd --reload
# Client
sudo dnf -y install gnome-connections
gnome-connections vnc://host:5902
No physical monitor/display is required, tested and works for me on Fedora 37.
What’s wrong with ssh on a headless machine?
Many of my colleagues (scientists) working remotely have moved from VNC to things like jupyterlab (uses web browser for display) and RStudio server. They get ssh access to big machines and use tunnels for the remote servers.
This worked great on a fresh install of Fedora 39 Workstation. Thank-you!