16.04로 업그레이드 한 후 로그인 루프


16

xenial 베타를 최신 업데이트로 업데이트 한 후 로그인 루프가 발생했습니다.

나는 많은 것을 시도했다.

  • xauthority또는 /tmp특권 변경

  • nvidia 드라이버 재설치, 제거

  • 다시 설치 unity, unity-greeter, ubuntu-desktop, upstart, lightdmcompiz.

  • 재설정 compizunity설정 ( dbus시작 오류가 발생 함 :

    Failed to commit changes to dconf: error spawning command line 'dbus-launch -auto launch=..................)
    
  • 이전 커널 및 안전 장치 사용 (실패 보고서가 화면을 찾을 수 없음)

  • 다른 DE (스팀 큰 그림)를 시작하려고했습니다.

xsession 오류 로그는 다음과 같습니다.

unity:
open connection: connect: No such file or directory
Cannot connect to brltty at :0
upstart: gnome-session (unity) main process (5441) terminated with status 1
upstart unity-settings-daemon main process (5434) killed by TERM signal

steam big picture:
open connection: connect: No such file or directory
Cannot connect to brltty at :0
ERROR: ld.so: object '/usr/lib/i386-linux-gnu/libmodeswitch_inhibitor.so' from LD_PRELOAD cannot be preloaded (cannot open shared object file(: ignored.
ERROR: ld.so: object '/usr/lib/i386-linux-gnu/libmodeswitch_inhibitor.so' from LD_PRELOAD cannot be preloaded (cannot open shared object file(: ignored
ERROR: ld.so: object '/usr/lib/i386-linux-gnu/libmodeswitch_inhibitor.so' from LD_PRELOAD cannot be preloaded (cannot open shared object file(: ignored
Could not create GLX context
ERROR: ld.so: object '/usr/lib/i386-linux-gnu/libmodeswitch_inhibitor.so' from LD_PRELOAD cannot be preloaded (cannot open shared object file(: ignored

Unity (Compiz) 로그에는 OpenGL 플러그인에 대한 많은 오류가 있습니다

Compiz (opengl) - Fatal: glXQueryExtenisonsString is NULL for screen 0

그리고 opengl 때문에 많은 플러그인이 언로드되었습니다.

Lightdm에 로그에 사전 오류가없는 갑작스런 SIGTERM 신호가 있습니다.

xserver에는 2 개의 오류가 있습니다 :

xf86EnablePorts: failed to set IOPL for I/O (Operation not permitted)
(EE) Failed to initialize GLX extension (Compatible NVIDIA X driver not found)

그러나 갑자기 종료 될 때까지 입력 작업을 계속합니다.

답변:


18

필자의 경우 원래 엔비디아 드라이버가 원인이었고 오픈 소스로 다시 전환하는 것이 도움이되었습니다. 먼저 엔비디아에서 모든 것을 제거했습니다.

sudo apt-get remove --purge 'nvidia-*'
sudo apt-get install ubuntu-desktop
sudo rm /etc/X11/xorg.conf
echo 'nouveau' | sudo tee -a /etc/modules

(출처 : nvidia 드라이버를 완전히 제거하려면 어떻게해야합니까? )

그 후 로그인 할 수는 있지만 유니티가로드되지 않았으며 런처 등이 없었습니다. Unity 플러그인을 다시 활성화해야했습니다.

sudo apt-get install compizconfig-settings-manager
DISPLAY=:0 ccsm
Find the Unity plugin and enable it.

(출처 : Unity가로드되지 않고, 런처, 대시가 나타나지 않음)


제거는 nvidia-*나를위한 주요 해결책이었습니다. 에서 ~/.xsession.errors나는 메시지했다 cannot connect to brltty at 0NVIDIA 관련이있다.
Jon

1
나는이 정확한 단계를 수행했지만 그것은 나를 위해 작동하지 않았다
Hakaishin

또한 Nvidia 드라이버를 사용해야하는 경우에는 작동하지 않습니다.
Hakaishin

@Hakaishinrare 당신은 그것을 해결할 수 있습니까?
sagarr

3

문제는 Ubuntu를 업데이트 할 때 (및 호출하는 특정 프로그램을 설치하더라도 /sbin/ldconfig)에 변경 사항이 있다는 것 /etc/ls.so.cache입니다.

사용해보십시오 ld.so.cache. 설치 / 업데이트 후 파일의 크기가 작업 전과 다릅니다.

Ubuntu 16.04에서는 lightDM에서 로그인 할 때 로그인 루프가 발생합니다. 따라서 ld.so.cache설치 / 업데이트 후에 새 버전이 생성되면 lightDM이 더 이상 인증되지 않으므로 원본의 사본을 보관해야 합니다.

나는이 문제를 여러 번 가지고 있었고 이것에 매우 조심해야했습니다. 나는 항상 /etc/ld.so.cache.orig로그인 루프없이 로그인 할 수 있도록 원래 파일 ( ) 의 사본을 보관 하고 로그인에 사용합니다. 그런 다음 성공적으로 로그인하면 새 파일 ( /etc/ld.so.cache.new)을 복사합니다 . 이를 위해 ~/.bash_profile파일 을 수정 하고 다음 줄을 추가했습니다.

sudo /bin/cp /etc/ld.so.cache.new /etc/ld.so.cache

그런 다음 세션을 종료 할 때 원본 파일을 다시 복사하여 다음에 이익을 얻으려면 다음 줄에 /etc/gdm/PostSession/Default다음 줄을 추가했습니다 .

/bin/cp /etc/ld.so.cache.orig /etc/ld.so.cache

이를 위해 권한이없는 사용자가 copy 명령을 실행할 수 있도록 /etc/sudoers(실행하여 sudo vosudo) 수정 했습니다 .

ALL     ALL= NOPASSWD: /bin/cp /etc/ld.so.cache.new /etc/ld.so.cache

이것은 못생긴 해킹처럼 보일 수 있지만이 로그인 루프 문제를 해결하고 새 /etc/ld.so.cache파일 을 유지 합니다.


1
Lo siento, pero el 질문이나 리뷰를 남겨주세요 ingles. La respuesta pero como es en Castellano, la tube que borrar에서 무료로 제공됩니다. 고아, 고아 비엔, 엘 잉글 레스, 헤라 미 엔 타스 코우메 라 구글 번역 기사에게 기부하십시오.
terdon

he he, la traduje yo ya que tiene pinta de ser una solución buena. Pero en el futuro, Google Translate에 대한 선호도.
terdon

3

16.04에서도 같은 오류가 발생했습니다. 제 경우에는 NVidia 드라이버 문제였습니다. 저는 8 개의 모니터를 가지고 있으며 NVidia 다이버의 성능을 좋아합니다. 그래서 작동하게하려면 :

  1. 프레스 CTRL+ ALT+ F1프롬프트에 로그인 할 때와 단말기를 통해에 로그인.

  2. /etc/X11/xorg.conf8 개의 모니터를 구성 하기가 어려워 백업 파일 이 오래되었을 수 있습니다 .

  3. NVidia에서 드라이버 파일을 다운로드했습니다. NVIDIA-Linux-x86_64-367.44.run

  4. 다음 명령을 실행하십시오 sudo service lightdm stop(이 단계를 건너 뛰면 드라이버 설치가 실패합니다).

  5. 드라이버 재설치 : sudo ./NVIDIA-Linux-x86_64-367.44.run자동 생성 된 스크립트가 완료되지 않았으며 설치를 계속할 수있는 옵션이 있다는 알림을 받았습니다. 또한 드라이버를 커널 모듈로 설치하고 프로그램에서 새 xorg.conf파일을 생성하도록 선택 했습니다 (이전에 백업). 프로세스가 끝나면 lib에 대한 링크 누락에 대해 불평했지만 링크에 대한 지침을 제공했습니다. 나는 나중에 그 문제를 해결했다.

  6. 재부팅되어 GUI를 통해 로그인 할 수있었습니다.


1

xfce를 사용하고 있었고 각 폴더와 파일의 이름을 바꾸어 수동으로 확인했습니다. 삭제 ~/.config/xfce4/xfconf/xfce-perchannel-xml/displays.xml가 나를 위해 일했습니다.

엔비디아 드라이버도 있었지만 루트 및 백업 사용자로 로그인하면 정상적으로 작동했습니다.


0

필자의 경우,이 문제는 실수로 UEFI에서 보안 부팅을 활성화하여 타사 드라이버 (예 : Nvidia)에서 사용할 수없는 결과로 인해 발생했습니다. X 세션 오류가 발생했습니다. 보안 부팅을 비활성화 한 후 모든 것이 정상으로 돌아 왔습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.