명령 행을 사용하여 로그인 화면 잠금 해제


30

명령 행에서 13.04 Gnome 쉘 로그인 화면을 잠금 해제 할 수 있습니까? 사용자가 Gnome 쉘에 로그인했습니다.이 사용자로 콘솔에 로그인 할 수 있습니다. 또한 루트 액세스 권한이 있습니다.

암호를 입력하지 않고 VNC를 통해 활성 X11 디스플레이에 액세스하기위한 것입니다.

실행

gnome-screensaver-command -d

블로그 게시물 에서 제안한대로 도움이되지 않았습니다.

로그인 화면


ssh에서 출력이나 오류가 발생합니까?
브라이 암

@Braiam : 내가 할 수 ssh있는 문제는 아닙니다. VNC를 통해 활성 X11 디스플레이에 액세스하지만 암호를 입력하지 않아도됩니다.
krlmlr

답변:


33

나는 당신이 최신 리눅스 시스템을 가지고 있다고 가정합니다 systemd(예 : Ubuntu 16.04 이상).

자신의 세션잠금 해제 해야하는 경우 실행 loginctl unlock-session하십시오 (자신의 세션이므로 루트가 필요하지 않습니다). 여러 세션이 있고 하나만 선택하려면 loginctl list-sessions세션을 식별하기 위해 실행 한 다음 eg를 실행하십시오 loginctl unlock-session c187.

모든 세션의 잠금해제 해야하는 경우 실행하십시오 sudo loginctl unlock-sessions. 이렇게하면 화면 보호기를 실행중인 사용자에 관계없이 모든 세션이 즉시 잠금 해제됩니다.


올바른 세션을 식별하기 위해 추가 정보가 필요하면 다음과 같이 시도하십시오.

loginctl list-sessions --no-legend | while read id rest; do echo; loginctl show-session $id; done

3
이것은 16.04에 작동하는 유일한 답변입니다
lemonsqueeze

명백히 sudo 필요 없음
lemonsqueeze 2016 년

1
sudo모든 세션 (사용자 ID로 실행되지 않는 세션 포함)의 화면 보호기를 잠금 해제하려면 필요 합니다.
Mikko Rantalainen 2016 년

또한 마지막주의 s의를 unlock-sessions. 자신의 세션 만 잠금 해제하려면을 수행하십시오 loginctl unlock-session.
Mikko Rantalainen 2016 년

2
허용되는 답변이어야합니다!
Brice

16

gnome-screensaver-commandSSH 세션에서 와 같은 명령을 실행할 때의 문제점 은 일반적으로 활성 데스크탑 세션에 적합한 세션 버스에 자동으로 연결되지 않는다는 것입니다. 일반적으로 DISPLAY 변수를 설정하면 예를 들어 이러한 작업이 해결됩니다 ( 잠긴 X 세션을 소유 한 동일한 사용자로서 SSH : DISPLAY : 0) :

$ DISPLAY=:0 gnome-screensaver-command -d

잠금을 해제하고

$ DISPLAY=:0 gnome-screensaver-command -l

잠그기 위해.

다른 방법으로는 사용하여 활성 상태를 전환 할 수 있습니다 dbus-send- 예를 들어

$ export DISPLAY=:0
$ dbus-send --session \
          --dest=org.gnome.ScreenSaver \
          --type=method_call \
          --print-reply \
          --reply-timeout=20000 \
          /org/gnome/ScreenSaver \
          org.gnome.ScreenSaver.SetActive \
          boolean:false

출처 : https://people.gnome.org/~mccann/gnome-screensaver/docs/gnome-screensaver.html#gs-examples


1
불행히도 이러한 방법 중 어느 것도 내 시스템에 설치된 특정 화면 잠금을 해제하지 못했습니다 (스크린 샷 참조). 어쨌든 화면 잠금을 담당하는 프로세스를 어떻게 찾을 수 있습니까?
krlmlr

1
명령이 오류를 반환합니까? 그렇다면 게시하십시오. 다른 화면 보호기 당신이 시도 할 수 실행되고 있는지 확인하려면 ps -fu <username> | grep saver- 가능성이 xscreensaver대신 사용되는 gnome-screensaver경우에 당신이 시도 할 수 있습니다, DISPLAY=:0 xscreensaver-command -deactivate.
steeldriver

1
우분투 14.04 에서이 답변을 테스트했습니다. 작동하지 않습니다. 화면을 비우지 만 화면은 잠겨 있습니다.
kasperd 2016 년

5

다음은 나를 위해 일했습니다.

sudo killall gnome-screensaver

다른 사용자와 SSH를 통해 로그인 할 때 특히 유용합니다.


확인, 잠금 해제 화면에서 키보드를 입력하지 않았을 때이 문제가 있었지만 CTRL + ALT + F3을 사용하여 터미널로 전환 할 수 있었고이 화면 보호기 킬러가 도움이되었습니다. 그런 다음 방금 CTRL + ALT + F2를 잠긴 세션으로 다시 이동했습니다.)
jave.web

이것은 X2Go가 잠금 화면을 표시하고 응답하지 않을 때 작동합니다 :)
endolith

1

gnome 3의 화면 잠금 (스크린 세이버)이 빈 화면에 고정되는 데 문제가있었습니다. gnome-shell 창 관리자를 교체 하여 문제를 해결했습니다 .

Ctrl + Alt + F1을 누르고 가상 콘솔에 로그인 한 후 다음을 수행하십시오.

pkill -QUIT gnome-shell
DISPLAY=:0.0 gnome-shell -r &

( &새로운 gnome-shell을 배경으로하여 가상 콘솔에서 로그 아웃하고 계속 실행할 수 있습니다. 또는 Ctrl + Z를 사용하여 gnome-shell 프로세스를 일시 중단하고 bg배경을 지정합니다.)

우아하지는 않지만 결국에는 로그 아웃을 강제로하지 않고도 데스크톱 앱으로 돌아갈 수있었습니다.


감사 gnome-shell합니다. 다시 시작해도 문제가 없는지 확인해 보겠습니다 .
krlmlr

1

잠금 해제 화면이 때로는 키보드 입력을 허용하지 않는 비슷한 문제가있었습니다. 내가 마침내 해결 한 방법 은 하나의 프로세스 뿐만 아니라 실행중인 여러 gnome-screensaver 프로세스를 종료하는 것이 었습니다 gnome-screensaver-dialog. 2 개의 gnome-screensaver 세션이 생성되는 프로세스가 잠금 해제 화면을 망쳐 놓았다고 추측합니다. 실제로 xscreensaver를 대신 사용하고 있기 때문에 어쩌면 그와 엉망입니다.

어쨌든, Ctrl+Alt+F1실행중인 화면 보호기 프로세스를 찾아 ps -aux | grep screen모두 종료하십시오. 다른 답변에 나열된 gnome 및 xscreensaver 명령이 작동하지 않았습니다.

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