터미널 창에서 Wine의 애플리케이션을 시작하는 방법

터미널 창에서 Wine의 애플리케이션을 시작하는 방법

저는 일부 오래된 Windows 응용 프로그램을 실행하기 위해 Linux 서버에서 Wine을 실행하고 있습니다.

이제 스크립트가 실행되고 있는지 확인하는 스크립트를 작성해야 합니다.

서버에 SSH 연결을 생성하고 애플리케이션을 시작할 수 있습니까?

예를 들어, 내가 데스크탑에 있다면 터미널 창을 열고 다음을 실행하세요.

wine "Z:\home\user\Desktop\application"

응용 프로그램이 열립니다. 하지만 SSH를 통해 연결하고 실행하면

wine "Z:\home\user\Desktop\application"

나는 얻다:

Application tried to create a window, but no driver could be loaded.
Make sure that your X server is running and that $DISPLAY is set correctly.
err:systray:initialize_systray Could not create tray window
Application tried to create a window, but no driver could be loaded.
Make sure that your X server is running and that $DISPLAY is set correctly. 

내 생각엔 그걸 말해야 할 것 같아어디그냥 실행하는 대신 애플리케이션을 시작했지만 수행 방법을 모르시나요?


추가 정보:

저는 현재 Windows PC에서 작업 중이며 Putty를 사용하여 Linux/Wine 서버에 연결하고 있습니다. (데스크톱을 볼 수 있도록 RDP 연결도 있습니다.)

장기적으로 이 스크립트를 Linux/Wine 서버에 SSH로 연결하여 관리할 다른 Linux 서버(MgmtSrv)에서 실행할 것입니다. MgmtSrv는 Wine을 설치하지 않았으며 X-Display를 설정하지 않았습니다.

답변1

짐작할 수 있듯이 Wine에 애플리케이션을 표시할 위치를 알려주어야 합니다. Wine 서버에는 X 모니터가 있으므로 다음과 같을 수 있습니다 :0.

DISPLAY=:0 wine ...

이렇게 하면 문제가 해결됩니다(X 인증 쿠키가 괜찮다고 가정하고 그렇지 않은 경우 Invalid MIT-MAGIC-COOKIE오류 메시지가 표시됩니다).

답변2

애플리케이션 유형에 따라 다음 접근 방식을 취할 수 있습니다.

  • 애플리케이션이 콘솔 기반(그래픽 없음)인 경우 다음을 사용하세요.wineconsole(아니요 wine).
  • DISPLAYX 서버가 설치되어 있는 경우 올바른 화면을 가리키도록 변수를 지정해야 합니다 .
  • 다음을 통해 애플리케이션을 실행하려는 경우X11 전달,구성X11ForwardingSSH 구성에서.
  • 그래픽 프로그램을 헤드리스로 실행하려면 설치를 고려하십시오.X 가상 프레임버퍼.

답변3

일반 사용자로 로그인하면 이 문제를 해결할 수 있습니다.

질문:

/root *# wine .....

문제를 해결하세요:

/root # exit

해결책:

/normal_user> ./wine yourappname  OR ./wine64 yourappname

관련 정보