헤드리스 서버의 xclip


27

xclip을 사용하여 bash 명령의 출력을 다음과 같이 복사했습니다.

pwd | tr -d "\n" | xclip -selection c

그런 다음 출력을 다른 터미널 세션에 붙여 넣을 수 있습니다.

x없이 시작되는 헤드리스 서버 (ubuntu 13.04)에서 사용하려고했습니다. 오류가 발생하지 않습니다.

Error: Can't open display: (null)

이 주위에 방법이 있습니까? 프로그램을 xclip이라고하면 불가능할 수도 있습니다.

답변:


29

클립 보드는 X 서버에 의해 제공됩니다 . 서버가 헤드리스인지 여부는 중요하지 않습니다. 중요한 것은 원격 시스템에서 실행중인 프로그램에서 로컬 그래픽 세션을 사용할 수 있다는 것입니다. X의 네트워크 투명 설계 덕분에 가능합니다.

Linux를 실행하는 컴퓨터에서 SSH를 사용하여 원격 서버에 연결한다고 가정합니다. 클라이언트 구성 및 서버 구성 모두에서 X11 전달이 사용 가능한지 확인하십시오. 클라이언트 구성에서는 라인이 필요 ForwardX11 yes~/.ssh/config기본적으로 그것을 가지고하기를, 또는 옵션 건네 -X받는 ssh단지 세션 명령을 사용합니다. 서버 구성에서는 라인이 필요 X11Forwarding yes/etc/ssh/sshd_config(우분투에 기본적으로 존재).

X11 전달이 사용 가능한지 확인하려면 DISPLAY환경 변수 의 값을보십시오 echo $DISPLAY. 당신은 같은 값이 표시됩니다 localhost:10(원격 시스템에서 실행중인 응용 프로그램이 동일한 컴퓨터에서 실행중인 디스플레이에 연결하라고되어 있지만 디스플레이 연결은 클라이언트 측 디스플레이에 SSH에 의해 전달 된 사실이다). 참고 경우 것으로 DISPLAY설정되어 있지 않은, 수동으로 설정 아무 소용이 : 전달 장소에있는 경우 환경 변수가 항상 올바르게 설정되어 있습니다. SSH 연결 문제를 진단해야하는 경우 옵션 -vvv을 전달하여 ssh발생한 상황을 자세히 추적하십시오.

다른 방법으로 연결하는 경우 X11 전달을 수행하거나 수행하지 못할 수 있습니다. 클라이언트가 Windows를 실행중인 경우 PuTTY 는 X11 전달을 지원합니다. Xming 과 같은 Windows 시스템에서 X 서버를 실행해야합니다 .


+1 훌륭한 답변이지만, 언급 한 바와 같이이 서버는 x없이 실행되므로 Nykakins의 답변이 더 적합합니다.
아나 케

@Anake 나는 당신이 내 대답을 잘못 읽은 것을 두려워합니다. 원격 디스플레이에는 원격 시스템에서 실행중인 X 서버가 포함되지 않습니다. 당신은 가지고 있어야합니다xclip 설치 프로그램과 지원 라이브러리를하지만은 X 서버를 설치 포함되지 않습니다.
Gilles 'SO- 악마 그만'

2
이 방법이 OSX 클라이언트에서 헤드리스 Ubuntu 서버에 연결할 때 유효한지 궁금합니다.
ken

3
이것은 나를 위해 작동하지 않습니다. 나는 맥-> 리눅스 서버에서 간다. X11Forwarding yes서버의 sshd_config에 있으며 서버에 -Xssh 할 때 전달했습니다 . Error: Can't open display: (null)cat ~/.ssh/id_rsa.pub | xclip -selection clipboard
초비

1
좋아, 나는 pbcopy이미 내 Mac에서 로컬로 작동하기 때문에 작동 할 것이라고 생각했다 . Mac에서 x 서버를 어떻게 시작하고 어떻게 설정 $DISPLAY합니까?
chovy

4

배쉬 자체에는 클립 보드가 없습니다. X 기능입니다.xclipt명령 줄 인터페이스 일 뿐이며 보시다시피 display. 해결 방법은 임시 파일을 사용하는 것입니다.

$ echo 123 > /tmp/f
$ tr -d '2' < /tmp/f
13

4
나는 그것을 얻지 못한다.
chovy

나는 당신이 다른 게시물의 두 가지 답변을 결합했다고 생각합니다.
11
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.