O Ubuntu não pode logar após setar o LD_LIBRARY_PATH para CUDA

2

Estou tendo um problema com minha configuração da variável de ambiente LD_LIBRARY_PATH para UBUNTU.

A configuração do meu sistema é a seguinte: UBUNTU 17.10 CUDA 8.0 (exigido pela Tensorflow) NVIDIA DRIVER 387.26

Meu LD_LIBRARY_PATH atual é definido como segue no arquivo .profile: export LD_LIBRARY_PATH="/ usr / lib / nvidia-387: / usr / local / cuda / lib64 $ {LD_LIBRARY_PATH: +: $ {LD_LIBRARY_PATH}}"

Eu tive que incluir também / usr / lib / nvidia-387 por causa disso

Eu também tive que configurar meu controlador gráfico primário para "INTEL" porque eu queria minha GPU livre de qualquer outro processo gráfico (basicamente eu rodava sudo prime-select intel)

No entanto, quando o / usr / lib / nvidia-387 está definido, não consigo mais entrar no meu perfil: após a entrada da senha, fico com uma tela preta por vários segundos e, eventualmente, retorno à tela de login.

Eu também anexe meu conf XORG atual (copiado e colado de outro tópico similar).

Section "ServerLayout"
  Identifier "layout"
  Screen 0 "nvidia"
  Inactive "intel"
EndSection

Section "Device"
  Identifier "intel"
  Driver "modesetting"
  BusID "PCI:0@0:2:0"
  Option "AccelMethod" "None"
EndSection

Section "Screen"
   Identifier "intel"
   Device "intel"
EndSection

Section "Device"
   Identifier "nvidia"
   Driver "nvidia"
   BusID "PCI:1@0:0:0"
   Option "ConstrainCursor" "off"
EndSection

Section "Screen"
   Identifier "nvidia"
   Device "nvidia"
   Option "AllowEmptyInitialConfiguration" "on"
   Option "IgnoreDisplayDevices" "CRT"
EndSection

Alguma ideia de como resolver? É importante manter o LD_LIBRARY_PATH como está.

Obrigado pela sua ajuda.

    
por luke035 09.01.2018 / 23:50

1 resposta

2

Eu não resolvi o problema. Mas eu tenho uma solução para você.

1. editar /etc/default/grub

Modifique GRUB_CMDLINE_LINUX_DEFAULT para

GRUB_CMDLINE_LINUX_DEFAULT='pcie_port_pm=off acpi_backlight=none acpi_osi=Linux acpi_osi=! acpi_osi="Windows 2009"'

Este passo é prevenir a tela em branco após o login.

2. mover diretórios da biblioteca nvidia para /etc/ld.so.conf.d/nvidia.conf

O conteúdo de nvidia.conf é

/usr/lib/nvidia-390
/usr/lib32/nvidia-390

Esses diretórios dependem da versão do driver no seu computador.

3. crie /etc/init.d/nvidia

Para desativar e ativar bibliotecas de tempo de execução nvidia.

#!/bin/sh
### BEGIN INIT INFO
# Provides:          nvidia 
# Required-Start:    $all
# Required-Stop:     $all
# Default-Start:     5
# Default-Stop:      0 6
# Short-Description: load/unload nvidia library
# Description:       load/unload nvidia library
### END INIT INFO

PRIME=$(prime-select query)
if [ "$PRIME" = "nvidia" ]; then
    exit 0
fi

case "$1" in
  start)
    sleep 10
    cd /etc/ld.so.conf.d
    mv nvidia.conf.bak nvidia.conf
    ldconfig
    nvidia-smi
    ;;
  stop)
    cd /etc/ld.so.conf.d
    mv nvidia.conf nvidia.conf.bak
    ldconfig
esac

4. executar update-rc.d nvidia defaults

Você deve encontrar SXXnvidia em /etc/rc5.d/ e KXXnvidia em /etc/rc6.d/ , /etc/rc0.d/ .

Tente executar /etc/init.d/nvidia stop e nvidia-smi , você verá mensagens de erro de bibliotecas não encontradas.

Tente executar /etc/init.d/nvidia start e, em seguida, nvidia-smi está bom novamente.

Se tudo estiver OK, você pode reiniciar agora. Espera-se que você faça login na área de trabalho.

5. Se algo der errado

O problema mais possível é o nvidia script não executado. Se isso acontecer, você pode pressionar Ctrl + Alt + F1 para o modo tty, executar /etc/init.d/nvidia stop; reboot . Então você pode voltar para a unidade desktop para depurar.

6. efeito colateral conhecido

Quando usar Intel como GPU principal, unity-control-center (configurações do sistema) não será iniciado.

GLib-CRITICAL **: g_strsplit: assertion 'string != NULL' failed.

Nota: minha especificação do sistema

# uname -r
4.13.0-32-generic
# lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 16.04.3 LTS
Release:    16.04
Codename:   xenial
# dpkg -l | grep cuda
ii  cuda-9-0                                    9.0.176-1                                    amd64        CUDA 9.0 meta-package
ii  cuda-command-line-tools-9-0                 9.0.176-1                                    amd64        CUDA command-line tools
ii  cuda-core-9-0                               9.0.176-1                                    amd64        CUDA core tools
ii  cuda-cublas-9-0                             9.0.176.1-1                                  amd64        CUBLAS native runtime libraries
ii  cuda-cublas-dev-9-0                         9.0.176.1-1                                  amd64        CUBLAS native dev links, headers
ii  cuda-cudart-9-0                             9.0.176-1                                    amd64        CUDA Runtime native Libraries
ii  cuda-cudart-dev-9-0                         9.0.176-1                                    amd64        CUDA Runtime native dev links, headers
ii  cuda-cufft-9-0                              9.0.176-1                                    amd64        CUFFT native runtime libraries
ii  cuda-cufft-dev-9-0                          9.0.176-1                                    amd64        CUFFT native dev links, headers
ii  cuda-curand-9-0                             9.0.176-1                                    amd64        CURAND native runtime libraries
ii  cuda-curand-dev-9-0                         9.0.176-1                                    amd64        CURAND native dev links, headers
ii  cuda-cusolver-9-0                           9.0.176-1                                    amd64        CUDA solver native runtime libraries
ii  cuda-cusolver-dev-9-0                       9.0.176-1                                    amd64        CUDA solver native dev links, headers
ii  cuda-cusparse-9-0                           9.0.176-1                                    amd64        CUSPARSE native runtime libraries
ii  cuda-cusparse-dev-9-0                       9.0.176-1                                    amd64        CUSPARSE native dev links, headers
ii  cuda-demo-suite-9-0                         9.0.176-1                                    amd64        Demo suite for CUDA
ii  cuda-documentation-9-0                      9.0.176-1                                    amd64        CUDA documentation
ii  cuda-driver-dev-9-0                         9.0.176-1                                    amd64        CUDA Driver native dev stub library
ii  cuda-drivers                                390.12-1                                     amd64        CUDA Driver meta-package
ii  cuda-libraries-9-0                          9.0.176-1                                    amd64        CUDA Libraries 9.0 meta-package
ii  cuda-libraries-dev-9-0                      9.0.176-1                                    amd64        CUDA Libraries 9.0 development meta-package
ii  cuda-license-9-0                            9.0.176-1                                    amd64        CUDA licenses
ii  cuda-misc-headers-9-0                       9.0.176-1                                    amd64        CUDA miscellaneous headers
ii  cuda-npp-9-0                                9.0.176-1                                    amd64        NPP native runtime libraries
ii  cuda-npp-dev-9-0                            9.0.176-1                                    amd64        NPP native dev links, headers
ii  cuda-nvgraph-9-0                            9.0.176-1                                    amd64        NVGRAPH native runtime libraries
ii  cuda-nvgraph-dev-9-0                        9.0.176-1                                    amd64        NVGRAPH native dev links, headers
ii  cuda-nvml-dev-9-0                           9.0.176-1                                    amd64        NVML native dev links, headers
ii  cuda-nvrtc-9-0                              9.0.176-1                                    amd64        NVRTC native runtime libraries
ii  cuda-nvrtc-dev-9-0                          9.0.176-1                                    amd64        NVRTC native dev links, headers
ii  cuda-repo-ubuntu1604                        9.1.85-1                                     amd64        cuda repository configuration files
ii  cuda-runtime-9-0                            9.0.176-1                                    amd64        CUDA Runtime 9.0 meta-package
ii  cuda-samples-9-0                            9.0.176-1                                    amd64        CUDA example applications
ii  cuda-toolkit-9-0                            9.0.176-1                                    amd64        CUDA Toolkit 9.0 meta-package
ii  cuda-visual-tools-9-0                       9.0.176-1                                    amd64        CUDA visual tools
ii  libcuda1-390                                390.12-0ubuntu1                              amd64        NVIDIA CUDA runtime library
ii  libcudnn7                                   7.0.5.15-1+cuda9.0                           amd64        cuDNN runtime libraries
ii  libcudnn7-dev                               7.0.5.15-1+cuda9.0                           amd64        cuDNN development libraries and headers
# dpkg -l | grep nvidia
ii  nvidia-390                                  390.12-0ubuntu1                              amd64        NVIDIA binary driver - version 390.12
ii  nvidia-390-dev                              390.12-0ubuntu1                              amd64        NVIDIA binary Xorg driver development files
ii  nvidia-modprobe                             390.12-0ubuntu1                              amd64        Load the NVIDIA kernel driver and create device files
ii  nvidia-opencl-icd-390                       390.12-0ubuntu1                              amd64        NVIDIA OpenCL ICD
ii  nvidia-prime                                0.8.2                                        amd64        Tools to enable NVIDIA's Prime
ii  nvidia-settings                             390.12-0ubuntu1                              amd64        Tool for configuring the NVIDIA graphics driver
    
por Ping Chu Hung 06.02.2018 / 18:25