다른 SSH 세션에서 화면을 강제로 분리하려면 어떻게합니까?


158

SSH 세션 내에서 Screen을 실행했습니다. 터미널이 멈췄습니다. 터미널을 다시 시작한 후에도 해당 화면 세션은 여전히 ​​연결된 것으로 간주합니다. 아마 그렇습니다. 아마도 그게 무슨 뜻인지 모르겠습니다.

새로운 SSH 로그인으로 해당 스크린 세션에 연결하고 싶습니다. 중요한 일이저기서 일어나고 있기 때문에 그 스크린 세션을 죽이고 싶지 않습니다. :)

내가 생각하는 옵션 (아무도 해결 방법을 모릅니다) :

  • 해당 스크린 세션을 어떻게 분리합니까?
  • 해당 스크린 세션이 연결된 SSH 세션을 어떻게 종료합니까?

답변:


252

호세가 대답 한대로 screen -d -r속임수를 쓰십시오. 이 매뉴얼 페이지에서 가져온 두 명령의 조합입니다.

screen -d이미 실행중인 화면 세션을 분리하고 screen -r기존 세션을 다시 연결합니다. 을 실행 screen -d -r하면 화면을 강제로 분리 한 다음 세션을 다시 시작합니다.

capital을 사용하면 -D -RR너무 넘겨서 매뉴얼 페이지를 인용합니다.

여기와 지금 첨부하십시오. 그게 뭐든간에 그냥 해

참고 : 항상 "screen -list"를 사용하여 세션 상태를 확인하는 것이 좋습니다.


3
당신은 또한 할 수있는 screen -x빠른 유형이다,하지만 완전히 동일하지 않습니다. 먼저 분리하지 않고 세션을 두 번째로 연결하여 다중 디스플레이 모드가됩니다.
jlh

10
"스크린 닥터"를 기억하십시오; screen -Dr
user5359531 2016 년


6

짧은 답변

  1. 다른 사람을 꺼내지 않고 다시 연결하십시오. screen -x
  2. 디스플레이 목록 가져 오기 : ^A *, 연결을 끊을 것을 선택하고d


설명 된 답변

배경 : 동일한 문제 설명이있는 솔루션을 찾을 때 항상이 답변을 찾았습니다. 더 합리적인 솔루션을 제공하고 싶습니다. (예 : 연결된 다른 화면의 크기가 다르므로 터미널에서 크기를 조정할 수 없습니다.)

참고 : PREFIX 일반적으로 ^A=ctrl+a

참고 : 디스플레이다음 과 같이 호출 될 수도 있습니다.

  • "사용자 프론트 엔드" ( at화면의 명령 매뉴얼에서)
  • "client" (이 기능이있는 TMux 어휘 detach-client)
  • "터미널" (사용자 인터페이스에서 창을 호출 할 때) /에 따라

1. 세션을 다시 연결하십시오 .screen -x

-x분리 하지 않고 분리 되지 않은 스크린 세션에 연결

2. 이 세션의 표시 목록 :PREFIX *

의 기본 키 바인딩입니다 PREFIX :displays. 화면 내에서 연결을 해제하고 분리하려는 다른 디스플레이 (예 : 더 작은 크기)를 식별하십시오 . 선택하지 않으면 현재 디스플레이 가 더 밝은 색 / 굵게 표시됩니다 .

term-type   size         user interface           window       Perms
---------- ------- ---------- ----------------- ----------     -----
 screen     240x60         you@/dev/pts/2      nb  0(zsh)        rwx
 screen      78x40         you@/dev/pts/0      nb  0(zsh)        rwx

화살표를 사용 하여 대상 디스플레이를 선택하십시오 누릅니다. d 아무 일도 일어나지 않으면 자체 디스플레이를 분리하려고 시도했지만 화면이 분리되지 않습니다. 1 초 또는 2 초 안에 다른 항목 인 경우 항목이 사라집니다.

프레스 ENTER 목록을 종료하십시오.

선택 사항 : 컨텐츠를 화면에 맞추 려면 리플 로우 :PREFIX F (대문자 F)

화면 맨 페이지에서 발췌 :

표시

현재 연결된 모든 사용자 프런트 엔드 (디스플레이)의 테이블 형식 목록을 표시합니다. 이것은 다중 사용자 세션에 가장 유용합니다. 디스플레이 목록에서 다음 키를 사용할 수 있습니다.

  • mouseclick선택한 줄로 이동하십시오. "mousetrack"이 켜져있는 경우 사용할 수 있습니다.
  • space 목록 새로 고침
  • d 해당 디스플레이 분리
  • D 디스플레이 분리
  • C-g, enter또는 escape목록 종료

-2

명령을 시도하십시오 screen -d -r. 이것은 나를 위해 일했다 ..!


2
허용 6 세의 대답을 반복하면 도움이되지 않습니다
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.