Displays different since UEFI update

Forum / NoMachine for Linux / Displays different since UEFI update

Viewing 9 posts - 1 through 9 (of 9 total)
  • Author
    Posts
  • #52597
    Barry_IA
    Participant

    Hi!

    NoMachine (v. 8.16.1) is displaying a different desktop from that on the remote machines. It seems this problem started with UEFI updates on the various Linux (Ubuntu 22.04 and 24.04) machines I am trying to connect to (from an Ubuntu 22.04 machine). Prior to the various recent UEFI updates NoMachine displayed the desktop of the remote machine properly (“mirrored”?).

    On a handy remote machine:

    env | grep DISPLAY

    WAYLAND_DISPLAY=wayland-0

    GNOME_SETUP_DISPLAY=:1

    DISPLAY=:0

    But running the same command to that machine via NoMachine:

    env | grep DISPLAY

    WAYLAND_DISPLAY=no

    DISPLAY=:1001

    (I’m thinking the Display :1001 means something like ‘Virtual’ which is why the two different displays but just a guess.)

    On my side (server? – the machine I’m sitting at to remotely connect to the other computers – so clients?) there is no “Switch Monitor” icon. Both the NoMachine and real computers have two displays I can select from but they are not the same between the two.

    Thanks!

    Barry

     

    #52606
    Britgirl
    Keymaster

    Hi

    On my side (server? – the machine I’m sitting at to remotely connect to the other computers – so clients?) there is no “Switch Monitor” icon. Both the NoMachine and real computers have two displays I can select from but they are not the same between the two.

    First some clarification about server and client in the NoMachine model. The “server” is considered the computer that receives incoming connections, i.e the computer you are connecting to. Clients are the devices you are connecting from.

    Is the server computer you are connecting to headless? In that case, NoMachine detects no physical display and so it starts a virtual desktop (which would be the correct behaviour). If the server is not headless, then NoMachine should not be starting a virtual display. In that case we need logs and with debug enabled, they will help us to understand why the server seems to be unable to detect the physical display. You can extract them using the instructions here: https://kb.nomachine.com/DT07S00243

    Send them to forum[at]nomachine[dot]com or attach here. If you send them by email, please use the title of this topic as the subject. Thanks!

    #52610
    Barry_IA
    Participant

    Hi Britgirl!

    Thanks for the clarification on server and client — I was correct but didn’t want to misstate and confuse.

    My two machines in question are — umm — ‘semi-headless’ which probably means NoMachine sees them as headless and so creates the virtual monitor – things are starting to make sense!   By ‘semi-headless’ they have a tiny monitor connected, but via a HDMI to AV adapter — bet no EDID.  A second monitor connection goes to a HDMI switch — know that doesn’t get an EDID signal unless the switch is set to that input.

    (The ‘tiny’ monitor is 4″, basically just to keep an eye on things.  The HDMI switch selects amongst several computers, connects to a full-size monitor, and is the one used if I need to do work.)

    I’ve got a potential work-around in mind now that I have been told why the problem is occurring.  Thanks! Barry

    #52613
    Britgirl
    Keymaster

    Now it’s clear 🙂 I forgot to mention this article that have about headless hosts. You might find some useful information there as well: https://kb.nomachine.com/AR03P00973.

    #52617
    Barry_IA
    Participant

    Hi Britgirl!

    Thanks for the updated suggestion! In the meantime what I tried. (Will get back to the “Connecting to Linux headless machines with NoMachine” knowledgebase article after.)

    The original ‘wiring diagram’:

    DisplayPort (DP) → DP to HDMI cable → HDMI-to-AV adapter → 4.3” monitor

    HDMI → HDMI switch → 17” monitor

    (4.3” monitor is always on; 17” monitor switched in when something noted going on but not all that comfortable to work at.)

    The two monitors show the same display.

    Try #1:

    Add HDMI splitter:

    DisplayPort (DP) → DP to HDMI cable → Splitter → HDMI-to-AV adapter → 4.3” monitor

                                                                                      |

                                                                                        → Dummy Monitor

    Result: Dummy Monitor’s LED on; 4.3” monitor just gave ‘no signal colour bars’. Not useful to me.

    Try #2:

    Add HDMI splitter:

    HDMI →Splitter → HDMI switch → 17” monitor

                          |

                            → Dummy Monitor

    Result: Dummy Monitor’s LED on; 17” monitor blank (so some sort of signal captured).

    NoMachine still giving virtual screen.

    OK, on to “Connecting to Linux headless machines with NoMachine” knowledgebase (https://kb.nomachine.com/AR03P00973)

    What to do if you see a black or white screen or the screen is frozen

    A specific case which leads to various symptoms (e.g. black screen or white screen or frozen screen) on Linux is when the X server is running but it is not rendering because the video card is turned off. In this case NoMachine doesn’t use its own virtual display because it detects that the X server running.

    I’m thinking the video card (built in to the CPU should that detail make a difference) is on/active as I get active video: clock updates, etc. (Both the DP/4.3” monitor and the HDMI outputs.)

    1) Use a X virtual framebuffer

    …Well, at the end of the section says “will create own virtual frambuffer” and it seems like that’s what it’s doing now.

    2) Use a fake display dongle

    Tried that (above ramblings). ..Well, I didn’t try directly (no splitter).

    For the Enterprise Desktop: how to enable the creation of NoMachine display service

    (Section mentions ‘virtual display’, plus I don’t think I’m ‘Enterprise’ – as long as I don’t let the smoke out! ….)

    /usr/NX/etc/server.cfg

    CreateDisplay Originally commented and 0

    Try: uncomment and 1 (per KB instructions)

    DisplayOwner Originally commented and “”

    Try uncomment, and USERNAME – no double quotes

    In the cfg were comments on setting DisplayGeometry if reset the CreateDisplay but down in that section said default is 1280×800 which I’m figuring should work fine with the display; left commented.

    NoMachine was not connected to an remote devices; also did sudo /etc/NX/nxserver --restart just in case.

    Ah poop! NoMachine giving same virtual screen as before. Will copy my cfg backup back in.

    Do you want me to do the extract logs step or have something else in mind?

    And thanks for reading through all this: I tend to be overly detailed but so the person helping knows what I am doing/seeing on my side.

    Thanks again!

    Barry

    #52627
    Britgirl
    Keymaster

    So we need the logs from the server-side host and with debug enabled, they will help us to understand why the server seems to be unable to detect the physical display. You can extract them using the instructions here: https://kb.nomachine.com/DT07S00243.

    #52631
    Barry_IA
    Participant

    Hi Britgirl!

    Attached (hopefully!) the log.  May have found a problem:  the Collect Logs knowledgebase says the command is nxserver --debug -- enable all.  My Linux (Ubuntu 22.04) system was not able to find nxserver (which nxserver –>  no result).  Instead needed the full path: sudo /usr/NX/bin/nxserver --debug --enable all (as well as requiring ‘sudo’); same for the other commends.  May or may not be a clue as to why my issue.

    And now for the log…..

    Thanks! Barry

    #52686
    Britgirl
    Keymaster

    Hi, we need additional logs and further information.

    1. Edit ‘/usr/NX/etc/server.cfg’ file, remove the # from the key name and set the following key:
    SessionLogLevel 8

    2. Restart the NoMachine server:
    $ sudo /etc/NX/nxserver --restart

    3. reproduce the problem and upload log archive:
    $ sudo /etc/NX/nxserver --debug --collect

    It would also be useful to show some information about the physical session:

    4. Show the X server process:
    $ ps aux | grep X

    5. Show the X server process environment variables:
    $ cat /proc/<X server pid>/environ

    6. List the user sessions:
    $ loginctl list-sessions

    7. Show information about the physical session (with Type=wayland):
    $ loginctl show-session <session-id>

    8. Show information about the session owner (parameter “User=” from the previous request):
    $ loginctl show-user <user-id>

    #52695
    Barry_IA
    Participant

    Hi Britgirl!

    Hopefully the attached logs help figure out my virtual display issue….

    Barry

Viewing 9 posts - 1 through 9 (of 9 total)

You must be logged in to reply to this topic. Please login .