Nvidia driver breaks vncserver on CentOS 7.4, is there a work around?libGL error: dlopen /usr/lib64/dri/nouveau_dri.so failed on CentOS 6.6CentOS 7 on Amazon ec2 hangs on rebootCreating profiles in WAS 8559 on CentOS 7CentOS 7 w/Gnome hangs on boot after Nvidia driver installation?OpenLDAP as proxy to Active Directory does not bind with bindDN from slapd.confvncserver for individual user doesn't workPXE boot CentOS 7.2 diskless fails with “Failed to start Switch Root”After CentOS 7.4 upgrade samba panicCan't get VNC server to work in CentOS 7.4NVIDIA-SMI can't communicate with NVIDIA driver

CSV how to trim values to 2 places in multiple columns using UNIX

Why are trash cans referred to as "zafacón" in Puerto Rico?

How come the nude protesters were not arrested?

Is it possible to have a wealthy country without a middle class?

Is it possible for a vehicle to be manufactured without a catalytic converter?

Bb13b9 confusion

Are there any important biographies of nobodies?

How to hide rifle during medieval town entrance inspection?

English word for "product of tinkering"

What is the maximum number of net attacks that one can make in a round?

GroupBy operation using an entire dataframe to group values

Why does Sin[b-a] simplify to -Sin[a-b]?

Why does logistic function use e rather than 2?

Second (easy access) account in case my bank screws up

How to ensure color fidelity of the same file on two computers?

Longest bridge/tunnel that can be cycled over/through?

What ways have you found to get edits from non-LaTeX users?

Let M and N be single-digit integers. If the product 2M5 x 13N is divisible by 36, how many ordered pairs (M,N) are possible?

Interval of parallel 5ths in the resolution of a German 6th chord

LuaLaTex - how to use number, computed later in the document

How to communicate to my GM that not being allowed to use stealth isn't fun for me?

How to decline a wedding invitation from a friend I haven't seen in years?

Artificer Creativity

How do you say "homebrewer" in Spanish?



Nvidia driver breaks vncserver on CentOS 7.4, is there a work around?


libGL error: dlopen /usr/lib64/dri/nouveau_dri.so failed on CentOS 6.6CentOS 7 on Amazon ec2 hangs on rebootCreating profiles in WAS 8559 on CentOS 7CentOS 7 w/Gnome hangs on boot after Nvidia driver installation?OpenLDAP as proxy to Active Directory does not bind with bindDN from slapd.confvncserver for individual user doesn't workPXE boot CentOS 7.2 diskless fails with “Failed to start Switch Root”After CentOS 7.4 upgrade samba panicCan't get VNC server to work in CentOS 7.4NVIDIA-SMI can't communicate with NVIDIA driver






.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty height:90px;width:728px;box-sizing:border-box;








2















CentOS Linux release 7.4.1708 (Core) 
uname -r output: 3.10.0-693.2.2.el7.x86_64
NVidia driver: NVIDIA-Linux-x86_64-375.66.run


When using the Nvidia graphics card driver with the Nvidia GeForce GT 720 graphics card on CentOS 7.4 it works fine for the wired computer monitor on the console. However, when attempting to connect to the vncserver, you only get a blank black screen on connection. I have removed the Nvidia driver, and VNC works again. Apparently I just recently found out that the Nouveau driver works with VNC, but it doesn't with the wired computer monitor on the console.



Is there a work around for using the Nvidia driver and be able to get VNC to work? Possible configuration files changes or a simpler GUI to use with Gnome? Currently I'm using metacity in the ~user/.vnc/xstartup file. Or is there another good alternative to using the vncserver/tigervnc?










share|improve this question






















  • What about SSH with X11 forwarding?

    – gf_
    Oct 26 '17 at 16:50











  • How would I set this up to try it?

    – Edward_178118
    Oct 30 '17 at 11:37






  • 1





    Actually, I'm quite sure you're able to find out on your own, but as a starting point, have a look at this question, for example.

    – gf_
    Oct 30 '17 at 12:00






  • 1





    What are you trying to achieve? Control the :0 display of X with VNC (the one displayed on your monitor by default)? If you open a separate session (like :1), display driver should have nothing to do with VNC, because in this case VNC works as a virtual X display, thus no driver is needed. Is this a solution for you?

    – sam_pan_mariusz
    Oct 31 '17 at 19:35












  • I'm trying to use this system with the Nvidia driver installed to be accessible by VNC. If I remove the Nvidia driver, then VNC works. With the Nvidia driver installed and working for the wired console, VNC just gets a blank black screen.

    – Edward_178118
    Nov 1 '17 at 15:45

















2















CentOS Linux release 7.4.1708 (Core) 
uname -r output: 3.10.0-693.2.2.el7.x86_64
NVidia driver: NVIDIA-Linux-x86_64-375.66.run


When using the Nvidia graphics card driver with the Nvidia GeForce GT 720 graphics card on CentOS 7.4 it works fine for the wired computer monitor on the console. However, when attempting to connect to the vncserver, you only get a blank black screen on connection. I have removed the Nvidia driver, and VNC works again. Apparently I just recently found out that the Nouveau driver works with VNC, but it doesn't with the wired computer monitor on the console.



Is there a work around for using the Nvidia driver and be able to get VNC to work? Possible configuration files changes or a simpler GUI to use with Gnome? Currently I'm using metacity in the ~user/.vnc/xstartup file. Or is there another good alternative to using the vncserver/tigervnc?










share|improve this question






















  • What about SSH with X11 forwarding?

    – gf_
    Oct 26 '17 at 16:50











  • How would I set this up to try it?

    – Edward_178118
    Oct 30 '17 at 11:37






  • 1





    Actually, I'm quite sure you're able to find out on your own, but as a starting point, have a look at this question, for example.

    – gf_
    Oct 30 '17 at 12:00






  • 1





    What are you trying to achieve? Control the :0 display of X with VNC (the one displayed on your monitor by default)? If you open a separate session (like :1), display driver should have nothing to do with VNC, because in this case VNC works as a virtual X display, thus no driver is needed. Is this a solution for you?

    – sam_pan_mariusz
    Oct 31 '17 at 19:35












  • I'm trying to use this system with the Nvidia driver installed to be accessible by VNC. If I remove the Nvidia driver, then VNC works. With the Nvidia driver installed and working for the wired console, VNC just gets a blank black screen.

    – Edward_178118
    Nov 1 '17 at 15:45













2












2








2


2






CentOS Linux release 7.4.1708 (Core) 
uname -r output: 3.10.0-693.2.2.el7.x86_64
NVidia driver: NVIDIA-Linux-x86_64-375.66.run


When using the Nvidia graphics card driver with the Nvidia GeForce GT 720 graphics card on CentOS 7.4 it works fine for the wired computer monitor on the console. However, when attempting to connect to the vncserver, you only get a blank black screen on connection. I have removed the Nvidia driver, and VNC works again. Apparently I just recently found out that the Nouveau driver works with VNC, but it doesn't with the wired computer monitor on the console.



Is there a work around for using the Nvidia driver and be able to get VNC to work? Possible configuration files changes or a simpler GUI to use with Gnome? Currently I'm using metacity in the ~user/.vnc/xstartup file. Or is there another good alternative to using the vncserver/tigervnc?










share|improve this question














CentOS Linux release 7.4.1708 (Core) 
uname -r output: 3.10.0-693.2.2.el7.x86_64
NVidia driver: NVIDIA-Linux-x86_64-375.66.run


When using the Nvidia graphics card driver with the Nvidia GeForce GT 720 graphics card on CentOS 7.4 it works fine for the wired computer monitor on the console. However, when attempting to connect to the vncserver, you only get a blank black screen on connection. I have removed the Nvidia driver, and VNC works again. Apparently I just recently found out that the Nouveau driver works with VNC, but it doesn't with the wired computer monitor on the console.



Is there a work around for using the Nvidia driver and be able to get VNC to work? Possible configuration files changes or a simpler GUI to use with Gnome? Currently I'm using metacity in the ~user/.vnc/xstartup file. Or is there another good alternative to using the vncserver/tigervnc?







centos7 vnc nvidia






share|improve this question













share|improve this question











share|improve this question




share|improve this question










asked Oct 15 '17 at 9:23









Edward_178118Edward_178118

4431721




4431721












  • What about SSH with X11 forwarding?

    – gf_
    Oct 26 '17 at 16:50











  • How would I set this up to try it?

    – Edward_178118
    Oct 30 '17 at 11:37






  • 1





    Actually, I'm quite sure you're able to find out on your own, but as a starting point, have a look at this question, for example.

    – gf_
    Oct 30 '17 at 12:00






  • 1





    What are you trying to achieve? Control the :0 display of X with VNC (the one displayed on your monitor by default)? If you open a separate session (like :1), display driver should have nothing to do with VNC, because in this case VNC works as a virtual X display, thus no driver is needed. Is this a solution for you?

    – sam_pan_mariusz
    Oct 31 '17 at 19:35












  • I'm trying to use this system with the Nvidia driver installed to be accessible by VNC. If I remove the Nvidia driver, then VNC works. With the Nvidia driver installed and working for the wired console, VNC just gets a blank black screen.

    – Edward_178118
    Nov 1 '17 at 15:45

















  • What about SSH with X11 forwarding?

    – gf_
    Oct 26 '17 at 16:50











  • How would I set this up to try it?

    – Edward_178118
    Oct 30 '17 at 11:37






  • 1





    Actually, I'm quite sure you're able to find out on your own, but as a starting point, have a look at this question, for example.

    – gf_
    Oct 30 '17 at 12:00






  • 1





    What are you trying to achieve? Control the :0 display of X with VNC (the one displayed on your monitor by default)? If you open a separate session (like :1), display driver should have nothing to do with VNC, because in this case VNC works as a virtual X display, thus no driver is needed. Is this a solution for you?

    – sam_pan_mariusz
    Oct 31 '17 at 19:35












  • I'm trying to use this system with the Nvidia driver installed to be accessible by VNC. If I remove the Nvidia driver, then VNC works. With the Nvidia driver installed and working for the wired console, VNC just gets a blank black screen.

    – Edward_178118
    Nov 1 '17 at 15:45
















What about SSH with X11 forwarding?

– gf_
Oct 26 '17 at 16:50





What about SSH with X11 forwarding?

– gf_
Oct 26 '17 at 16:50













How would I set this up to try it?

– Edward_178118
Oct 30 '17 at 11:37





How would I set this up to try it?

– Edward_178118
Oct 30 '17 at 11:37




1




1





Actually, I'm quite sure you're able to find out on your own, but as a starting point, have a look at this question, for example.

– gf_
Oct 30 '17 at 12:00





Actually, I'm quite sure you're able to find out on your own, but as a starting point, have a look at this question, for example.

– gf_
Oct 30 '17 at 12:00




1




1





What are you trying to achieve? Control the :0 display of X with VNC (the one displayed on your monitor by default)? If you open a separate session (like :1), display driver should have nothing to do with VNC, because in this case VNC works as a virtual X display, thus no driver is needed. Is this a solution for you?

– sam_pan_mariusz
Oct 31 '17 at 19:35






What are you trying to achieve? Control the :0 display of X with VNC (the one displayed on your monitor by default)? If you open a separate session (like :1), display driver should have nothing to do with VNC, because in this case VNC works as a virtual X display, thus no driver is needed. Is this a solution for you?

– sam_pan_mariusz
Oct 31 '17 at 19:35














I'm trying to use this system with the Nvidia driver installed to be accessible by VNC. If I remove the Nvidia driver, then VNC works. With the Nvidia driver installed and working for the wired console, VNC just gets a blank black screen.

– Edward_178118
Nov 1 '17 at 15:45





I'm trying to use this system with the Nvidia driver installed to be accessible by VNC. If I remove the Nvidia driver, then VNC works. With the Nvidia driver installed and working for the wired console, VNC just gets a blank black screen.

– Edward_178118
Nov 1 '17 at 15:45










4 Answers
4






active

oldest

votes


















1














TurboVNC + VirtualGL is a good alternative.



Pros:




  • Good performance.

  • Works with desktop environments, that require 3D acceleration (like Gnome3), with -3dwm.

  • Remote 3D rendering works even with headless GPUs.

The cons is that it might be tricky to config. I've just finished setting it up on my CentOS 7 and NVidia K80. I doubt my config is perfect, but here's a set of points I'd like to highlight:



  1. Official guides (1,2,3,4) might look somewhat too long and scary at the first glance, but they are rather easy to follow. They do miss some important pieces of information, though (1,2,3,4).


  2. I've used kmod-nvidia drivers from elrepo, blacklisting nouveau with two lines echo -e "blacklist nouveaunoptions nouveau modeset=0" > /etc/modprobe.d/disable-nouveau.conf, not with one single-line, like suggested in many other guides (1,2).


  3. Checking the following logs is a good starting point, when something goes wrong: /var/log/messages, /var/log/Xorg.0.log, ~/.vnc/*.log. Most error messages I ran into are already discussed and rather easy to google.


  4. Pay attention to the xdpyinfo -display :0 sanity check there. If it's not working, try answering n/n/n in vglserver_config and disabling selinux. Also, personally, I ended up replacing gdm with lightdm.


  5. Although in general Gnome3 works OK, some weird errors do happen time-to-time (e.g. Firefox works, but opening downloaded archive with the built-in archive manager fails with an error like this). So, I ended up installing KDE Plasma, so that -3dwm is no longer needed. (But I still like TurboVNC server, cause it's fast).





share|improve this answer
































    1














    My understanding the root cause is NVIDIA installs its own GL libraries which break other X environments.



    $ ldd /usr/bin/Xvnc | egrep GL
    libGL.so.1 => /lib64/libGL.so.1 (0x00007f7ed8f5b000)


    A cheat is to jumper-out the NVIDIA libGL.so by directing vncserver to the /usr/lib64 BEFORE /usr/lib64/nvidia:



    $ diff -cbtw /usr/bin/vncserver*
    *** /usr/bin/vncserver 2018-12-08 11:07:14.871180204 -0500
    --- /usr/bin/vncserver.rhel71 2014-03-10 12:17:32.000000000 -0400
    ***************
    *** 216,223 ****

    # Now start the X VNC Server

    ! $cmd = "export LD_LIBRARY_PATH=/usr/lib64:$LD_LIBRARY_PATH ; ";
    ! $cmd .= $exedir."Xvnc :$displayNumber";
    $cmd .= " -desktop " . &quotedString($desktopName);
    $cmd .= " -httpd $vncJavaFiles" if ($vncJavaFiles);
    $cmd .= " -auth $xauthorityFile";
    --- 216,222 ----

    # Now start the X VNC Server

    ! $cmd = $exedir."Xvnc :$displayNumber";
    $cmd .= " -desktop " . &quotedString($desktopName);
    $cmd .= " -httpd $vncJavaFiles" if ($vncJavaFiles);
    $cmd .= " -auth $xauthorityFile";
    [merc_user@pair-1-host ~]$


    This is working for me with Red Hat 7.1 and CUDA 9-2.






    share|improve this answer






























      0














      To continue working around the NVIDIA vs native graphics problem with the NVIDIA libGL issue, I have made the following cheats:



      $ mv /usr/sbin/gdm /usr/sbin/gdm.bin
      $ mv /usr/bin/Xorg /usr/bin/Xorg.bin
      $ # make edits - show results
      $ cat /usr/sbin/gdm
      #!/bin/sh
      #
      # workaround for libGL issue
      #

      LD_LIBRARY_PATH=/usr/lib64:$LD_LIBRARY_PATH
      export LD_LIBRARY_PATH

      exec /usr/sbin/gdm.bin "$@"
      $ cat /usr/bin/Xorg
      #!/bin/sh
      #
      # workaround libGL issue
      #

      LD_LIBRARY_PATH=/usr/lib64:$LD_LIBRARY_PATH
      export LD_LIBRARY_PATH

      exec /usr/bin/Xorg.bin "$@"





      share|improve this answer






























        0














        Here is my solution on a fedora 29 machine.
        I believe this is a distribution independent issue.

        Move or copy the distribution versions of libGL to /usr/local/vnclib:



        $ ls -l /usr/local/vnclib
        total 596
        lrwxrwxrwx 1 root root 14 Feb 14 07:11 libGL.so -> libGL.so.1.7.0
        lrwxrwxrwx 1 root root 14 Feb 14 07:11 libGL.so.1 -> libGL.so.1.7.0
        -rwxr-xr-x 1 root root 610208 Feb 14 07:11 libGL.so.1.7.0
        $

        make a /usr/local/bin/vncserver:

        $ cat /usr/local/bin/vncserver
        #!/bin/bash
        # added because nvidia driver overwrites these
        export LD_LIBRARY_PATH=/usr/local/vnclib:$LD_LIBRARY_PATH
        /usr/bin/vncserver $*





        share|improve this answer























          Your Answer








          StackExchange.ready(function()
          var channelOptions =
          tags: "".split(" "),
          id: "2"
          ;
          initTagRenderer("".split(" "), "".split(" "), channelOptions);

          StackExchange.using("externalEditor", function()
          // Have to fire editor after snippets, if snippets enabled
          if (StackExchange.settings.snippets.snippetsEnabled)
          StackExchange.using("snippets", function()
          createEditor();
          );

          else
          createEditor();

          );

          function createEditor()
          StackExchange.prepareEditor(
          heartbeatType: 'answer',
          autoActivateHeartbeat: false,
          convertImagesToLinks: true,
          noModals: true,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: 10,
          bindNavPrevention: true,
          postfix: "",
          imageUploader:
          brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
          contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
          allowUrls: true
          ,
          onDemand: true,
          discardSelector: ".discard-answer"
          ,immediatelyShowMarkdownHelp:true
          );



          );













          draft saved

          draft discarded


















          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fserverfault.com%2fquestions%2f878530%2fnvidia-driver-breaks-vncserver-on-centos-7-4-is-there-a-work-around%23new-answer', 'question_page');

          );

          Post as a guest















          Required, but never shown

























          4 Answers
          4






          active

          oldest

          votes








          4 Answers
          4






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes









          1














          TurboVNC + VirtualGL is a good alternative.



          Pros:




          • Good performance.

          • Works with desktop environments, that require 3D acceleration (like Gnome3), with -3dwm.

          • Remote 3D rendering works even with headless GPUs.

          The cons is that it might be tricky to config. I've just finished setting it up on my CentOS 7 and NVidia K80. I doubt my config is perfect, but here's a set of points I'd like to highlight:



          1. Official guides (1,2,3,4) might look somewhat too long and scary at the first glance, but they are rather easy to follow. They do miss some important pieces of information, though (1,2,3,4).


          2. I've used kmod-nvidia drivers from elrepo, blacklisting nouveau with two lines echo -e "blacklist nouveaunoptions nouveau modeset=0" > /etc/modprobe.d/disable-nouveau.conf, not with one single-line, like suggested in many other guides (1,2).


          3. Checking the following logs is a good starting point, when something goes wrong: /var/log/messages, /var/log/Xorg.0.log, ~/.vnc/*.log. Most error messages I ran into are already discussed and rather easy to google.


          4. Pay attention to the xdpyinfo -display :0 sanity check there. If it's not working, try answering n/n/n in vglserver_config and disabling selinux. Also, personally, I ended up replacing gdm with lightdm.


          5. Although in general Gnome3 works OK, some weird errors do happen time-to-time (e.g. Firefox works, but opening downloaded archive with the built-in archive manager fails with an error like this). So, I ended up installing KDE Plasma, so that -3dwm is no longer needed. (But I still like TurboVNC server, cause it's fast).





          share|improve this answer





























            1














            TurboVNC + VirtualGL is a good alternative.



            Pros:




            • Good performance.

            • Works with desktop environments, that require 3D acceleration (like Gnome3), with -3dwm.

            • Remote 3D rendering works even with headless GPUs.

            The cons is that it might be tricky to config. I've just finished setting it up on my CentOS 7 and NVidia K80. I doubt my config is perfect, but here's a set of points I'd like to highlight:



            1. Official guides (1,2,3,4) might look somewhat too long and scary at the first glance, but they are rather easy to follow. They do miss some important pieces of information, though (1,2,3,4).


            2. I've used kmod-nvidia drivers from elrepo, blacklisting nouveau with two lines echo -e "blacklist nouveaunoptions nouveau modeset=0" > /etc/modprobe.d/disable-nouveau.conf, not with one single-line, like suggested in many other guides (1,2).


            3. Checking the following logs is a good starting point, when something goes wrong: /var/log/messages, /var/log/Xorg.0.log, ~/.vnc/*.log. Most error messages I ran into are already discussed and rather easy to google.


            4. Pay attention to the xdpyinfo -display :0 sanity check there. If it's not working, try answering n/n/n in vglserver_config and disabling selinux. Also, personally, I ended up replacing gdm with lightdm.


            5. Although in general Gnome3 works OK, some weird errors do happen time-to-time (e.g. Firefox works, but opening downloaded archive with the built-in archive manager fails with an error like this). So, I ended up installing KDE Plasma, so that -3dwm is no longer needed. (But I still like TurboVNC server, cause it's fast).





            share|improve this answer



























              1












              1








              1







              TurboVNC + VirtualGL is a good alternative.



              Pros:




              • Good performance.

              • Works with desktop environments, that require 3D acceleration (like Gnome3), with -3dwm.

              • Remote 3D rendering works even with headless GPUs.

              The cons is that it might be tricky to config. I've just finished setting it up on my CentOS 7 and NVidia K80. I doubt my config is perfect, but here's a set of points I'd like to highlight:



              1. Official guides (1,2,3,4) might look somewhat too long and scary at the first glance, but they are rather easy to follow. They do miss some important pieces of information, though (1,2,3,4).


              2. I've used kmod-nvidia drivers from elrepo, blacklisting nouveau with two lines echo -e "blacklist nouveaunoptions nouveau modeset=0" > /etc/modprobe.d/disable-nouveau.conf, not with one single-line, like suggested in many other guides (1,2).


              3. Checking the following logs is a good starting point, when something goes wrong: /var/log/messages, /var/log/Xorg.0.log, ~/.vnc/*.log. Most error messages I ran into are already discussed and rather easy to google.


              4. Pay attention to the xdpyinfo -display :0 sanity check there. If it's not working, try answering n/n/n in vglserver_config and disabling selinux. Also, personally, I ended up replacing gdm with lightdm.


              5. Although in general Gnome3 works OK, some weird errors do happen time-to-time (e.g. Firefox works, but opening downloaded archive with the built-in archive manager fails with an error like this). So, I ended up installing KDE Plasma, so that -3dwm is no longer needed. (But I still like TurboVNC server, cause it's fast).





              share|improve this answer















              TurboVNC + VirtualGL is a good alternative.



              Pros:




              • Good performance.

              • Works with desktop environments, that require 3D acceleration (like Gnome3), with -3dwm.

              • Remote 3D rendering works even with headless GPUs.

              The cons is that it might be tricky to config. I've just finished setting it up on my CentOS 7 and NVidia K80. I doubt my config is perfect, but here's a set of points I'd like to highlight:



              1. Official guides (1,2,3,4) might look somewhat too long and scary at the first glance, but they are rather easy to follow. They do miss some important pieces of information, though (1,2,3,4).


              2. I've used kmod-nvidia drivers from elrepo, blacklisting nouveau with two lines echo -e "blacklist nouveaunoptions nouveau modeset=0" > /etc/modprobe.d/disable-nouveau.conf, not with one single-line, like suggested in many other guides (1,2).


              3. Checking the following logs is a good starting point, when something goes wrong: /var/log/messages, /var/log/Xorg.0.log, ~/.vnc/*.log. Most error messages I ran into are already discussed and rather easy to google.


              4. Pay attention to the xdpyinfo -display :0 sanity check there. If it's not working, try answering n/n/n in vglserver_config and disabling selinux. Also, personally, I ended up replacing gdm with lightdm.


              5. Although in general Gnome3 works OK, some weird errors do happen time-to-time (e.g. Firefox works, but opening downloaded archive with the built-in archive manager fails with an error like this). So, I ended up installing KDE Plasma, so that -3dwm is no longer needed. (But I still like TurboVNC server, cause it's fast).






              share|improve this answer














              share|improve this answer



              share|improve this answer








              edited Feb 22 '18 at 17:28

























              answered Feb 21 '18 at 19:39









              IgorIgor

              1214




              1214























                  1














                  My understanding the root cause is NVIDIA installs its own GL libraries which break other X environments.



                  $ ldd /usr/bin/Xvnc | egrep GL
                  libGL.so.1 => /lib64/libGL.so.1 (0x00007f7ed8f5b000)


                  A cheat is to jumper-out the NVIDIA libGL.so by directing vncserver to the /usr/lib64 BEFORE /usr/lib64/nvidia:



                  $ diff -cbtw /usr/bin/vncserver*
                  *** /usr/bin/vncserver 2018-12-08 11:07:14.871180204 -0500
                  --- /usr/bin/vncserver.rhel71 2014-03-10 12:17:32.000000000 -0400
                  ***************
                  *** 216,223 ****

                  # Now start the X VNC Server

                  ! $cmd = "export LD_LIBRARY_PATH=/usr/lib64:$LD_LIBRARY_PATH ; ";
                  ! $cmd .= $exedir."Xvnc :$displayNumber";
                  $cmd .= " -desktop " . &quotedString($desktopName);
                  $cmd .= " -httpd $vncJavaFiles" if ($vncJavaFiles);
                  $cmd .= " -auth $xauthorityFile";
                  --- 216,222 ----

                  # Now start the X VNC Server

                  ! $cmd = $exedir."Xvnc :$displayNumber";
                  $cmd .= " -desktop " . &quotedString($desktopName);
                  $cmd .= " -httpd $vncJavaFiles" if ($vncJavaFiles);
                  $cmd .= " -auth $xauthorityFile";
                  [merc_user@pair-1-host ~]$


                  This is working for me with Red Hat 7.1 and CUDA 9-2.






                  share|improve this answer



























                    1














                    My understanding the root cause is NVIDIA installs its own GL libraries which break other X environments.



                    $ ldd /usr/bin/Xvnc | egrep GL
                    libGL.so.1 => /lib64/libGL.so.1 (0x00007f7ed8f5b000)


                    A cheat is to jumper-out the NVIDIA libGL.so by directing vncserver to the /usr/lib64 BEFORE /usr/lib64/nvidia:



                    $ diff -cbtw /usr/bin/vncserver*
                    *** /usr/bin/vncserver 2018-12-08 11:07:14.871180204 -0500
                    --- /usr/bin/vncserver.rhel71 2014-03-10 12:17:32.000000000 -0400
                    ***************
                    *** 216,223 ****

                    # Now start the X VNC Server

                    ! $cmd = "export LD_LIBRARY_PATH=/usr/lib64:$LD_LIBRARY_PATH ; ";
                    ! $cmd .= $exedir."Xvnc :$displayNumber";
                    $cmd .= " -desktop " . &quotedString($desktopName);
                    $cmd .= " -httpd $vncJavaFiles" if ($vncJavaFiles);
                    $cmd .= " -auth $xauthorityFile";
                    --- 216,222 ----

                    # Now start the X VNC Server

                    ! $cmd = $exedir."Xvnc :$displayNumber";
                    $cmd .= " -desktop " . &quotedString($desktopName);
                    $cmd .= " -httpd $vncJavaFiles" if ($vncJavaFiles);
                    $cmd .= " -auth $xauthorityFile";
                    [merc_user@pair-1-host ~]$


                    This is working for me with Red Hat 7.1 and CUDA 9-2.






                    share|improve this answer

























                      1












                      1








                      1







                      My understanding the root cause is NVIDIA installs its own GL libraries which break other X environments.



                      $ ldd /usr/bin/Xvnc | egrep GL
                      libGL.so.1 => /lib64/libGL.so.1 (0x00007f7ed8f5b000)


                      A cheat is to jumper-out the NVIDIA libGL.so by directing vncserver to the /usr/lib64 BEFORE /usr/lib64/nvidia:



                      $ diff -cbtw /usr/bin/vncserver*
                      *** /usr/bin/vncserver 2018-12-08 11:07:14.871180204 -0500
                      --- /usr/bin/vncserver.rhel71 2014-03-10 12:17:32.000000000 -0400
                      ***************
                      *** 216,223 ****

                      # Now start the X VNC Server

                      ! $cmd = "export LD_LIBRARY_PATH=/usr/lib64:$LD_LIBRARY_PATH ; ";
                      ! $cmd .= $exedir."Xvnc :$displayNumber";
                      $cmd .= " -desktop " . &quotedString($desktopName);
                      $cmd .= " -httpd $vncJavaFiles" if ($vncJavaFiles);
                      $cmd .= " -auth $xauthorityFile";
                      --- 216,222 ----

                      # Now start the X VNC Server

                      ! $cmd = $exedir."Xvnc :$displayNumber";
                      $cmd .= " -desktop " . &quotedString($desktopName);
                      $cmd .= " -httpd $vncJavaFiles" if ($vncJavaFiles);
                      $cmd .= " -auth $xauthorityFile";
                      [merc_user@pair-1-host ~]$


                      This is working for me with Red Hat 7.1 and CUDA 9-2.






                      share|improve this answer













                      My understanding the root cause is NVIDIA installs its own GL libraries which break other X environments.



                      $ ldd /usr/bin/Xvnc | egrep GL
                      libGL.so.1 => /lib64/libGL.so.1 (0x00007f7ed8f5b000)


                      A cheat is to jumper-out the NVIDIA libGL.so by directing vncserver to the /usr/lib64 BEFORE /usr/lib64/nvidia:



                      $ diff -cbtw /usr/bin/vncserver*
                      *** /usr/bin/vncserver 2018-12-08 11:07:14.871180204 -0500
                      --- /usr/bin/vncserver.rhel71 2014-03-10 12:17:32.000000000 -0400
                      ***************
                      *** 216,223 ****

                      # Now start the X VNC Server

                      ! $cmd = "export LD_LIBRARY_PATH=/usr/lib64:$LD_LIBRARY_PATH ; ";
                      ! $cmd .= $exedir."Xvnc :$displayNumber";
                      $cmd .= " -desktop " . &quotedString($desktopName);
                      $cmd .= " -httpd $vncJavaFiles" if ($vncJavaFiles);
                      $cmd .= " -auth $xauthorityFile";
                      --- 216,222 ----

                      # Now start the X VNC Server

                      ! $cmd = $exedir."Xvnc :$displayNumber";
                      $cmd .= " -desktop " . &quotedString($desktopName);
                      $cmd .= " -httpd $vncJavaFiles" if ($vncJavaFiles);
                      $cmd .= " -auth $xauthorityFile";
                      [merc_user@pair-1-host ~]$


                      This is working for me with Red Hat 7.1 and CUDA 9-2.







                      share|improve this answer












                      share|improve this answer



                      share|improve this answer










                      answered Dec 8 '18 at 16:22









                      The Red Gator in VirginiaThe Red Gator in Virginia

                      112




                      112





















                          0














                          To continue working around the NVIDIA vs native graphics problem with the NVIDIA libGL issue, I have made the following cheats:



                          $ mv /usr/sbin/gdm /usr/sbin/gdm.bin
                          $ mv /usr/bin/Xorg /usr/bin/Xorg.bin
                          $ # make edits - show results
                          $ cat /usr/sbin/gdm
                          #!/bin/sh
                          #
                          # workaround for libGL issue
                          #

                          LD_LIBRARY_PATH=/usr/lib64:$LD_LIBRARY_PATH
                          export LD_LIBRARY_PATH

                          exec /usr/sbin/gdm.bin "$@"
                          $ cat /usr/bin/Xorg
                          #!/bin/sh
                          #
                          # workaround libGL issue
                          #

                          LD_LIBRARY_PATH=/usr/lib64:$LD_LIBRARY_PATH
                          export LD_LIBRARY_PATH

                          exec /usr/bin/Xorg.bin "$@"





                          share|improve this answer



























                            0














                            To continue working around the NVIDIA vs native graphics problem with the NVIDIA libGL issue, I have made the following cheats:



                            $ mv /usr/sbin/gdm /usr/sbin/gdm.bin
                            $ mv /usr/bin/Xorg /usr/bin/Xorg.bin
                            $ # make edits - show results
                            $ cat /usr/sbin/gdm
                            #!/bin/sh
                            #
                            # workaround for libGL issue
                            #

                            LD_LIBRARY_PATH=/usr/lib64:$LD_LIBRARY_PATH
                            export LD_LIBRARY_PATH

                            exec /usr/sbin/gdm.bin "$@"
                            $ cat /usr/bin/Xorg
                            #!/bin/sh
                            #
                            # workaround libGL issue
                            #

                            LD_LIBRARY_PATH=/usr/lib64:$LD_LIBRARY_PATH
                            export LD_LIBRARY_PATH

                            exec /usr/bin/Xorg.bin "$@"





                            share|improve this answer

























                              0












                              0








                              0







                              To continue working around the NVIDIA vs native graphics problem with the NVIDIA libGL issue, I have made the following cheats:



                              $ mv /usr/sbin/gdm /usr/sbin/gdm.bin
                              $ mv /usr/bin/Xorg /usr/bin/Xorg.bin
                              $ # make edits - show results
                              $ cat /usr/sbin/gdm
                              #!/bin/sh
                              #
                              # workaround for libGL issue
                              #

                              LD_LIBRARY_PATH=/usr/lib64:$LD_LIBRARY_PATH
                              export LD_LIBRARY_PATH

                              exec /usr/sbin/gdm.bin "$@"
                              $ cat /usr/bin/Xorg
                              #!/bin/sh
                              #
                              # workaround libGL issue
                              #

                              LD_LIBRARY_PATH=/usr/lib64:$LD_LIBRARY_PATH
                              export LD_LIBRARY_PATH

                              exec /usr/bin/Xorg.bin "$@"





                              share|improve this answer













                              To continue working around the NVIDIA vs native graphics problem with the NVIDIA libGL issue, I have made the following cheats:



                              $ mv /usr/sbin/gdm /usr/sbin/gdm.bin
                              $ mv /usr/bin/Xorg /usr/bin/Xorg.bin
                              $ # make edits - show results
                              $ cat /usr/sbin/gdm
                              #!/bin/sh
                              #
                              # workaround for libGL issue
                              #

                              LD_LIBRARY_PATH=/usr/lib64:$LD_LIBRARY_PATH
                              export LD_LIBRARY_PATH

                              exec /usr/sbin/gdm.bin "$@"
                              $ cat /usr/bin/Xorg
                              #!/bin/sh
                              #
                              # workaround libGL issue
                              #

                              LD_LIBRARY_PATH=/usr/lib64:$LD_LIBRARY_PATH
                              export LD_LIBRARY_PATH

                              exec /usr/bin/Xorg.bin "$@"






                              share|improve this answer












                              share|improve this answer



                              share|improve this answer










                              answered Dec 9 '18 at 4:34









                              The Red Gator in VirginiaThe Red Gator in Virginia

                              112




                              112





















                                  0














                                  Here is my solution on a fedora 29 machine.
                                  I believe this is a distribution independent issue.

                                  Move or copy the distribution versions of libGL to /usr/local/vnclib:



                                  $ ls -l /usr/local/vnclib
                                  total 596
                                  lrwxrwxrwx 1 root root 14 Feb 14 07:11 libGL.so -> libGL.so.1.7.0
                                  lrwxrwxrwx 1 root root 14 Feb 14 07:11 libGL.so.1 -> libGL.so.1.7.0
                                  -rwxr-xr-x 1 root root 610208 Feb 14 07:11 libGL.so.1.7.0
                                  $

                                  make a /usr/local/bin/vncserver:

                                  $ cat /usr/local/bin/vncserver
                                  #!/bin/bash
                                  # added because nvidia driver overwrites these
                                  export LD_LIBRARY_PATH=/usr/local/vnclib:$LD_LIBRARY_PATH
                                  /usr/bin/vncserver $*





                                  share|improve this answer



























                                    0














                                    Here is my solution on a fedora 29 machine.
                                    I believe this is a distribution independent issue.

                                    Move or copy the distribution versions of libGL to /usr/local/vnclib:



                                    $ ls -l /usr/local/vnclib
                                    total 596
                                    lrwxrwxrwx 1 root root 14 Feb 14 07:11 libGL.so -> libGL.so.1.7.0
                                    lrwxrwxrwx 1 root root 14 Feb 14 07:11 libGL.so.1 -> libGL.so.1.7.0
                                    -rwxr-xr-x 1 root root 610208 Feb 14 07:11 libGL.so.1.7.0
                                    $

                                    make a /usr/local/bin/vncserver:

                                    $ cat /usr/local/bin/vncserver
                                    #!/bin/bash
                                    # added because nvidia driver overwrites these
                                    export LD_LIBRARY_PATH=/usr/local/vnclib:$LD_LIBRARY_PATH
                                    /usr/bin/vncserver $*





                                    share|improve this answer

























                                      0












                                      0








                                      0







                                      Here is my solution on a fedora 29 machine.
                                      I believe this is a distribution independent issue.

                                      Move or copy the distribution versions of libGL to /usr/local/vnclib:



                                      $ ls -l /usr/local/vnclib
                                      total 596
                                      lrwxrwxrwx 1 root root 14 Feb 14 07:11 libGL.so -> libGL.so.1.7.0
                                      lrwxrwxrwx 1 root root 14 Feb 14 07:11 libGL.so.1 -> libGL.so.1.7.0
                                      -rwxr-xr-x 1 root root 610208 Feb 14 07:11 libGL.so.1.7.0
                                      $

                                      make a /usr/local/bin/vncserver:

                                      $ cat /usr/local/bin/vncserver
                                      #!/bin/bash
                                      # added because nvidia driver overwrites these
                                      export LD_LIBRARY_PATH=/usr/local/vnclib:$LD_LIBRARY_PATH
                                      /usr/bin/vncserver $*





                                      share|improve this answer













                                      Here is my solution on a fedora 29 machine.
                                      I believe this is a distribution independent issue.

                                      Move or copy the distribution versions of libGL to /usr/local/vnclib:



                                      $ ls -l /usr/local/vnclib
                                      total 596
                                      lrwxrwxrwx 1 root root 14 Feb 14 07:11 libGL.so -> libGL.so.1.7.0
                                      lrwxrwxrwx 1 root root 14 Feb 14 07:11 libGL.so.1 -> libGL.so.1.7.0
                                      -rwxr-xr-x 1 root root 610208 Feb 14 07:11 libGL.so.1.7.0
                                      $

                                      make a /usr/local/bin/vncserver:

                                      $ cat /usr/local/bin/vncserver
                                      #!/bin/bash
                                      # added because nvidia driver overwrites these
                                      export LD_LIBRARY_PATH=/usr/local/vnclib:$LD_LIBRARY_PATH
                                      /usr/bin/vncserver $*






                                      share|improve this answer












                                      share|improve this answer



                                      share|improve this answer










                                      answered May 23 at 19:42









                                      TerryTerry

                                      1




                                      1



























                                          draft saved

                                          draft discarded
















































                                          Thanks for contributing an answer to Server Fault!


                                          • Please be sure to answer the question. Provide details and share your research!

                                          But avoid


                                          • Asking for help, clarification, or responding to other answers.

                                          • Making statements based on opinion; back them up with references or personal experience.

                                          To learn more, see our tips on writing great answers.




                                          draft saved


                                          draft discarded














                                          StackExchange.ready(
                                          function ()
                                          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fserverfault.com%2fquestions%2f878530%2fnvidia-driver-breaks-vncserver-on-centos-7-4-is-there-a-work-around%23new-answer', 'question_page');

                                          );

                                          Post as a guest















                                          Required, but never shown





















































                                          Required, but never shown














                                          Required, but never shown












                                          Required, but never shown







                                          Required, but never shown

































                                          Required, but never shown














                                          Required, but never shown












                                          Required, but never shown







                                          Required, but never shown







                                          Popular posts from this blog

                                          Club Baloncesto Breogán Índice Historia | Pavillón | Nome | O Breogán na cultura popular | Xogadores | Adestradores | Presidentes | Palmarés | Historial | Líderes | Notas | Véxase tamén | Menú de navegacióncbbreogan.galCadroGuía oficial da ACB 2009-10, páxina 201Guía oficial ACB 1992, páxina 183. Editorial DB.É de 6.500 espectadores sentados axeitándose á última normativa"Estudiantes Junior, entre as mellores canteiras"o orixinalHemeroteca El Mundo Deportivo, 16 setembro de 1970, páxina 12Historia do BreogánAlfredo Pérez, o último canoneiroHistoria C.B. BreogánHemeroteca de El Mundo DeportivoJimmy Wright, norteamericano do Breogán deixará Lugo por ameazas de morteResultados de Breogán en 1986-87Resultados de Breogán en 1990-91Ficha de Velimir Perasović en acb.comResultados de Breogán en 1994-95Breogán arrasa al Barça. "El Mundo Deportivo", 27 de setembro de 1999, páxina 58CB Breogán - FC BarcelonaA FEB invita a participar nunha nova Liga EuropeaCharlie Bell na prensa estatalMáximos anotadores 2005Tempada 2005-06 : Tódolos Xogadores da Xornada""Non quero pensar nunha man negra, mais pregúntome que está a pasar""o orixinalRaúl López, orgulloso dos xogadores, presume da boa saúde económica do BreogánJulio González confirma que cesa como presidente del BreogánHomenaxe a Lisardo GómezA tempada do rexurdimento celesteEntrevista a Lisardo GómezEl COB dinamita el Pazo para forzar el quinto (69-73)Cafés Candelas, patrocinador del CB Breogán"Suso Lázare, novo presidente do Breogán"o orixinalCafés Candelas Breogán firma el mayor triunfo de la historiaEl Breogán realizará 17 homenajes por su cincuenta aniversario"O Breogán honra ao seu fundador e primeiro presidente"o orixinalMiguel Giao recibiu a homenaxe do PazoHomenaxe aos primeiros gladiadores celestesO home que nos amosa como ver o Breo co corazónTita Franco será homenaxeada polos #50anosdeBreoJulio Vila recibirá unha homenaxe in memoriam polos #50anosdeBreo"O Breogán homenaxeará aos seus aboados máis veteráns"Pechada ovación a «Capi» Sanmartín e Ricardo «Corazón de González»Homenaxe por décadas de informaciónPaco García volve ao Pazo con motivo do 50 aniversario"Resultados y clasificaciones""O Cafés Candelas Breogán, campión da Copa Princesa""O Cafés Candelas Breogán, equipo ACB"C.B. Breogán"Proxecto social"o orixinal"Centros asociados"o orixinalFicha en imdb.comMario Camus trata la recuperación del amor en 'La vieja música', su última película"Páxina web oficial""Club Baloncesto Breogán""C. B. Breogán S.A.D."eehttp://www.fegaba.com

                                          Vilaño, A Laracha Índice Patrimonio | Lugares e parroquias | Véxase tamén | Menú de navegación43°14′52″N 8°36′03″O / 43.24775, -8.60070

                                          Cegueira Índice Epidemioloxía | Deficiencia visual | Tipos de cegueira | Principais causas de cegueira | Tratamento | Técnicas de adaptación e axudas | Vida dos cegos | Primeiros auxilios | Crenzas respecto das persoas cegas | Crenzas das persoas cegas | O neno deficiente visual | Aspectos psicolóxicos da cegueira | Notas | Véxase tamén | Menú de navegación54.054.154.436928256blindnessDicionario da Real Academia GalegaPortal das Palabras"International Standards: Visual Standards — Aspects and Ranges of Vision Loss with Emphasis on Population Surveys.""Visual impairment and blindness""Presentan un plan para previr a cegueira"o orixinalACCDV Associació Catalana de Cecs i Disminuïts Visuals - PMFTrachoma"Effect of gene therapy on visual function in Leber's congenital amaurosis"1844137110.1056/NEJMoa0802268Cans guía - os mellores amigos dos cegosArquivadoEscola de cans guía para cegos en Mortágua, PortugalArquivado"Tecnología para ciegos y deficientes visuales. Recopilación de recursos gratuitos en la Red""Colorino""‘COL.diesis’, escuchar los sonidos del color""COL.diesis: Transforming Colour into Melody and Implementing the Result in a Colour Sensor Device"o orixinal"Sistema de desarrollo de sinestesia color-sonido para invidentes utilizando un protocolo de audio""Enseñanza táctil - geometría y color. Juegos didácticos para niños ciegos y videntes""Sistema Constanz"L'ocupació laboral dels cecs a l'Estat espanyol està pràcticament equiparada a la de les persones amb visió, entrevista amb Pedro ZuritaONCE (Organización Nacional de Cegos de España)Prevención da cegueiraDescrición de deficiencias visuais (Disc@pnet)Braillín, un boneco atractivo para calquera neno, con ou sen discapacidade, que permite familiarizarse co sistema de escritura e lectura brailleAxudas Técnicas36838ID00897494007150-90057129528256DOID:1432HP:0000618D001766C10.597.751.941.162C97109C0155020