나는 주변을 둘러 보았고 현재 제안 된 두 가지 방법이있다. Linux 용 Windows 서브 시스템 향상을 설치하고 XServer를 설치합니다.
어떤 방법이 가장 번거롭지 않고 (설치 및 사용하기 쉬운 지) 어떤 방법이 메모리를 덜 사용하는지 알고 싶습니다.
시냅틱과 CMake를 원합니다. 이것이 내장 기능이 아닌 이유는 무엇입니까?
나는 주변을 둘러 보았고 현재 제안 된 두 가지 방법이있다. Linux 용 Windows 서브 시스템 향상을 설치하고 XServer를 설치합니다.
어떤 방법이 가장 번거롭지 않고 (설치 및 사용하기 쉬운 지) 어떤 방법이 메모리를 덜 사용하는지 알고 싶습니다.
시냅틱과 CMake를 원합니다. 이것이 내장 기능이 아닌 이유는 무엇입니까?
답변:
WSL이 아직이 기능을 지원하지 않기 때문에 짧은 대답입니다. WSL은 Linux 커널을 사용한 전체 Linux 설치가 아니며 Windows (Microsoft) 커널에서 일부 기본 Linux 명령 / 이진을 실행할 수 있으며 제한이 있습니다.
https://github.com/Microsoft/WSL/issues/2356을 참조 하십시오.
그러나 xming과 같은 타사 X 서버를 설치하고 WSL에 ssh를 설치할 수 있습니다.
이 튜토리얼은 유비쿼터스 (X over ssh)이므로 여기에서 복사하지 않았으며 일부 앱은이 기술로도 작동하지 않을 것으로 예상합니다.
DISPLAY하면 잘 가실 수 있습니다 (어쨌든 xming 및 VcXsrv 용).
VcXsrvWSL (Linux 용 Windows 10 Subsystem)에서 사용하기로 선택했습니다 . Windows 10 Ubuntu 16.04에서 GUI (Graphical User Interface) 지원을 위해 하나를 선택하기 전에 모두가 xming(답변)과 VcXsrv 를 조사하는 것이 좋습니다 .
설치가 간단합니다. 2019 년 3 월 17 일부터 간단히 기본값을 수락 할 수 있습니다. geditBash Shell / Terminal에서 전화를 걸려면 ~/.bashrc다음 줄 을 편집 하고 삽입해야합니다.
export DISPLAY=localhost:0.0
나는 달릴 수 있었다 :
sudo apt install ubuntu-desktop
sudo apt install yad
sudo apt install gedit
... GUI 데스크탑 소프트웨어를 설치합니다. 이 다음 날 실행을 허용 gedit하고 nautilus. 또한 apt또는 apt-get명령을 사용하여 CLI (명령 줄 인터페이스)를 통해 특정 GUI 응용 프로그램을 설치할 수있었습니다 .
내가 시도 할 때 WSL에서 내 우분투 bash는 스크립트의 많은 VcXsrv은 이렇게 설치해야합니다 zenity및 yadX-창 대화 상자는 사용자 입력이 표시됩니다.
다른 사람들이 WSL 내의 GUI가 완벽하지 않다는 것을 지적 했으므로 일부 문제를 해결하는 데 시간을 할애 할 수 있습니다. 또한 일부 GUI 소프트웨어는 WSL에서 작동하지 않습니다.
/etc/environmentGUI 드롭 다운 메뉴를 조정 하도록 수정 했습니다.
PATH="/mnt/e/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"
export LIBGL_ALWAYS_INDIRECT=Yes
export DISPLAY=localhost:0.0
/mnt/e/binWindows 10 이중 부팅 WSL과 Ubuntu 16.04 이중 부팅에 사용되는 스크립트를 저장하기 때문에 특별한 경로입니다. 대부분의 사용자는 이것을 컴퓨터에 포함시키지 않을 것입니다.gedit은 우분투 데스크탑 경험에 익숙한 것입니다. 또한 많은 bash 스크립트는 zenity또는 yadx-windows 대화 상자를 사용합니다. 이 bash 스크립트 VcXsrv는 설치되어 있지 않으면 실행되지 않습니다 .
export DISPLAY=:0. 지금은 실행할 수 있습니다 xhost, xeyes그리고 gnuplot우분투 (이 프로그램은 이미 우분투 WSL에 설치되어있는 경우).
export LIBGL_ALWAYS_INDIRECT=1VcXsrv
Windows의 Ubuntu에서 Win 10 Bash에서 VcXsrv에 대해 매우 긍정적 인 경험을했습니다 (Ubuntu 16.04 Xenial x86_64 Linux 4.4.0-17074-Microsoft). 쓸모없고 리소스 소비가 많기 때문에 Unity 데스크톱을 실행하는 데 집중하지 않았습니다. XServer를 사용하여 Windows10 데스크톱의 GUI 모드에서 bash에서 앱을 실행했습니다.
Sourceforge 에서 여기에서 VcXsrv를 설치 하십시오.
VcXsrv 앱을 직접 실행하고 XLaunch를 시작하지 마십시오. 당신은 볼 수 localhost:0.0 - 0 clients당신이 Win10 작업 표시 줄의 아이콘에 마우스를 가져 가면
우분투 배쉬 열기 :
cd /mnt
(localhost @ localhost : / mnt $에 결과)
cd ..
(localhost @ localhost : / $는이 명령으로 WSL에서 볼 수있는 한 하드 드라이브의 시작 부분을 의미합니다 ...)
sudo apt-get install dbus synaptic nautilus --install-suggests --show-progress
(이는 "dbus"를 설치하여 unity-desktop 용 GUI, "Synaptic Package Manager"및 "Nautilus"파일 탐색기 용 가상 커넥터를 만듭니다.
cd /usr/share/dbus-1 && sudo vi session.conf
( session.confvi 편집기에서 열 때 )
을 눌러 i삽입 모드로 들어가서 추가
<!-- <listen>unix:tmpdir=/tmp</listen> || Original Command --> to preserve original rules
추가하는 것보다 :
<listen>tcp:host=localhost,bind=0.0.0.0,port=0</listen>
<auth>EXTERNAL</auth>
<auth>DBUS_COOKIE_SHA1</auth>
<auth>allow_anonymous</auth>
파일 편집이 끝나면 ESC를 누르고 파일 :wq을 저장하십시오.
다음 명령을 실행하고 출력을 확인하십시오.
$ export DISPLAY=localhost:0
$ sudo service dbus start
* Starting system message bus dbus [OK]
$ echo $DISPLAY
localhost:0
끝났습니다! 이제 Bash에서 시냅틱, 노틸러스 또는 파이어 폭스를 실행하면 Win10 데스크톱에로드됩니다. 이와 같은 GUI 옵션은 버그가 있지만 작동합니다. 당신은 설치할 수 있습니다 ubuntu-desktop, unity, ccsm, compiz및 실행하려고 우분투 유니티 데스크톱 . 아직 "Unreal"을 실행하기 위해 rying하면서 어려움을 겪고 있기 때문에 "Steam"을 설정하려고하지 않았습니다. 행운을 빌어 요 :)
누군가가 gnome-terminalXTerm 대신 XServer 에서 실행하는 방법을 알고 있다면 공유하십시오 ...
PS VcXsrv를 Win10 부팅 가능으로 추가
할 수 있습니다
원본 게시물에 지정된 "증기"를 사용하여 소스를 최대한 활용하려면 네트워크 패키지 관리 (대기 시간 단축) 및 CPU / GPU 우선 순위 지정을 위해 Windows를 약간 조정하여 Win10XBox를 만드십시오… :)
"Unix"에서 "Steam"을 실행하더라도 쉘은 여전히 "Windows"이며 "Unix"에서 "Steam"을 시작할 수 있습니다.
TCP 준비 :;
regedit에서 :
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Tcpip\Parameters\Interfaces
여기에서 인터넷에 연결하는 데 사용되는 네트워크 어댑터 항목을 찾으려면 하위 키 목록을 살펴 봐야합니다. DHCP를 사용 하는 경우 올바른 어댑터를 찾으려면 DhcpIPAdddress항목 (시스템 데이터 값이 NOT :0.0.0.0)을 찾아야합니다.
올바른 키를 찾았 으면 마우스 오른쪽 단추를 클릭하고 새로 작성> Dword (32 비트) 값을 선택하십시오 .
이름을 TcpFrequency로 지정하고 확인 을 클릭하십시오 ok.
나중에 값을 두 번 클릭하고 10 진수 값을 1로 설정하십시오. 기본 설정을 복원하려면 값을 2로 변경하거나 키를 삭제하십시오. 이제 다음 키로 이동하십시오. HKEY_LOCAL_MACHINE\Software\Microsoft\MSMQ
키를 다시 마우스 오른쪽 단추로 클릭하고 새로 작성> Dword (32 비트) 값을 선택하십시오 .
새 매개 변수 이름을 TcpDelay로 지정하십시오.
나중에 두 번 클릭하고 10 진수 값을 1로 변경하십시오. (나중에 키를 복원하려면 0으로 변경하거나 키를 삭제하십시오)
Nagle 알고리즘은보다 효율적인 전송을 위해 여러 개의 작은 패킷을 하나의 큰 패킷으로 결합합니다. 이것은 데이터 전송의 처리 효율을 향상 시키도록 설계되었습니다. "나일 링"을 비활성화하면 일부 게임에서 대기 시간 / 핑을 줄일 수 있습니다. Nagle의 알고리즘은 기본적으로 Windows에서 활성화되어 있습니다. 이 조정을 구현하려면 다음 레지스트리 키를 수정하십시오.
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\{NIC-id}
의 경우 {NIC-id}IP 주소가 나열된 주소를 찾으십시오. 이 {NIC-id}키 아래에 다음 DWORD 값을 작성하십시오.
노트 :
일부 보고서에 따르면 Dota 2와 League of Legends를 재생할 때 조정을 통해 대기 시간이 줄어들었지만 일부에서는 작동하지 않습니다. 나는 그것을 시도했고 Dota 2를 재생할 때 대기 시간이 110에서 90ms (SEA 서버)로 향상되었습니다.
Windows는 네트워크 조절 메커니즘을 구현합니다. 이러한 조절의 기본 개념은 네트워크 패킷 처리가 자원 집약적 인 작업이 될 수 있다는 것입니다. 최대 처리량을 달성하기 위해 이러한 조절을 해제하는 것이 좋습니다.
이 조정을 구현하려면 regedit를 실행하고 레지스트리를 수정하십시오.
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Multimedia\SystemProfile.
SystemProfile 아래 에서 DWORD 값을 작성하고 NetworkThrottlingIndex 로 이름을 지정한 다음 게임 및 최대 처리량의 16 진 값을 ffffffff로 설정하십시오. ffffffff는 조절을 완전히 사용하지 않습니다.
멀티미디어 스트리밍 및“MMCSS (Multimedia Class Scheduler)”서비스를 사용하는 일부 게임은 CPU의 최대 80 % 만 사용할 수 있습니다. “MMCSS (Multimedia Class Scheduler)”서비스는 우선 순위가 낮은 백그라운드 애플리케이션에 대한 CPU 자원을 거부하지 않고 CPU 자원에 대한 우선 순위 액세스를 보장합니다.
이 조정을 구현하려면 regedit를 실행하고 레지스트리 키를 수정하십시오.
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Multimedia\SystemProfile.
거기에서 새 DWORD를 만들고 SystemResponsiveness로 이름을 지정하여 순수한 게임 / 스트리밍을 위해 10 진수 값을 00000000으로 설정하십시오.
위의 조정과 동일한 레지스트리 하이브에서 게임의 우선 순위를 변경할 수도 있습니다. 이 조정을 구현하려면
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Multimedia\SystemProfile\Tasks\Games
다음 레지스트리 값을 변경하십시오.
이 Windows = Xbox 조정의 "알 수 없음"(내가 지시를 복사 한 이후로 잠시만 기다려주십시오)에 대한 모든 건배 ...
PPS : XServer가 실패한 경우 Docker로 해결 방법을 찾으십시오.
<auth>allow_anonymous</auth>에 <auth>ANONYMOUS</auth>다음 service dbus restart과 gnome-terminal작동합니다
전체 GUI 데스크탑 환경이 Microsoft에서 '공식적으로'지원되지는 않지만 작동 할 수 있습니다.
Windows 기능을 켜거나 끄
리눅스 윈도우 서브 시스템을 사용
다시 컴퓨터
를 시작 마이크로 소프트 스토어
우분투에 대한 검색
앱에서 선택 우분투 18.04
가져 오기를 클릭
우분투를 실행하고 설치를 기다릴
설정 사용자 이름과 암호를
다음 명령을 실행하십시오.
sudo apt-get update -y
sudo apt-get install ubuntu-desktop -y
sudo apt-get install xfce4 xorg xrdp -y
sudo sed -i 's/port=3389/port=3390/g' /etc/xrdp/xrdp.ini
.xsession 생성 및 수정
cd /home/user/
sudo vim .xsession
텍스트 추가 :
gnome-session --session=ubuntu-2d
vi를 저장하고 종료
sudo chmod 755 .xsession
sudo systemctl enable xrdp
우분투에서 두 번째 계정이 필요합니다
sudo adduser remote
sudo usermod -aG sudo remote
startwm.sh 수정
cd /etc/xrdp
sudo chmod 777 startwm.sh
vim startwm.sh
하단 두 줄 주석 처리
#test -x /etc/X11/Xsession && exec /etc/X11/Xsession
#exec /bin/sh /etc/X11/Xsession
텍스트 추가 :
startxfce4
vi를 저장하고 종료
exit
Windows에서 Ubuntu를 다시 시작하고 다음을 실행하십시오.
sudo /etc/init.d/xrdp start
Windows에서 mstsc.exe
컴퓨터를 실행하십시오 . 127.0.0.1:3390
사용자 이름을 비워두고
연결
세션 : Xorg
사용자 이름 : 원격
비밀번호 : 비밀번호
xfce를 즐기십시오!
완료되면 원격 데스크톱 연결을 닫습니다
. Ubuntu 명령 줄로 돌아 가기
sudo /etc/init.d/xrdp stop
exit
당신이 쉽게 원하기 때문에 ... x410 이라는 Microsoft Store에 앱이 있습니다 . 기본적으로 Cygwin 자체를 사용하지 않는 Cygwin X11 서버입니다. 설치 후 (제로 구성) WSL X11 Apps를 실행할 수 있습니다! (또는 전체 데스크톱). WSL 사용자 계정의 .bashrc에 다음 줄을 삽입하여 bash 터미널에서 앱을 실행할 수 있습니다.
### Setup a D-Bus instance that will be shared by all X-Window apps
pidof dbus-launch 1> /dev/null || dbus-launch --exit-with-x11 1> /dev/null 2>
/dev/null
## Export
export DISPLAY=127.0.0.1:0.0
나는 약 5 유로에 대해 x410을 샀다. 그래서 그것이 너무 많으면, 아마도 판매를 기다린다!
간편하게 선반 솔루션을 원한다면 MobaXTerm을 사용 하십시오 . WSL을 직접 지원하는 뛰어난 멀티탭 터미널 에뮬레이터이며 최적화 된 X 서버가 내장되어 있습니다. 나는 Moba에서 항상 시냅스를 사용합니다. 심지어 RStudio.
Panther의 답변은 유일한 것이 아니라 정답이기 때문에 선택했습니다. GUI 앱을 실행하는 번거롭지 않은 방법이 없습니다.
xfce데스크톱이 왜 필요한지 모르겠 기 때문에 설치 하지 않았습니다.Multiple Windows에서 XLaunch(하나의 거대한 창 따라서 필요가 없습니다 아니 DE)어떤 GUI 앱을 설치 했습니까? Synaptic과 CMake 만 있습니다. wsl에 필요한 다른 것을 실제로 생각할 수 없기 때문입니다.
Panther가 지적한 것과 같은 이유로 VM / Dual Boot를 수행하지 않습니다. 풀 플렉스 OS가 아닌 편리한 (나에게) 개발 환경이 필요합니다.
내 연구에 따르면 wsl은 원래 GUI 사용자를 위해 설계되지 않았습니다. 그러나 타사에서 X 서버 를 설치하여 GUI를 표시 할 수 있습니다. 적절한 설정으로 VcXsrv 를 사용하여 Debian Linux-desktop을 표시 할 수 있는지 테스트했습니다 .
Windows 서브 시스템 Linux Debian에서 mate-desktop (GUI)을 표시하기 위해 접근 방식이 원활하게 작동한다고 생각합니다. wsl 데비안에서 mate-desktop (GUI) 을 처음부터 설치하고 표시하는 방법에 대한 비디오를 만들었습니다 . 링크 : https://youtu.be/QjogEWudpaM
우분투 에 메이트 데스크탑 설치 는 약간 다릅니다.
1 단계 : wsl 설치
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux2 단계 : 메이트 데스크탑과 같은 그래픽 사용자 인터페이스를 설치합니다.
대한 데비안 사용자 :
sudo apt-get update하십시오. Enter 키를 누르십시오.sudo apt install task-mate-desktop후을 입력하고 Enter 키를 누르십시오.또는 Ubuntu 사용자의 경우 :
sudo apt install tasksel하고 Enter 키를 누르십시오sudo apt update하고 Enter 키를 누르십시오sudo tasksel install ubuntu-mate-desktop하고 Enter 키를 누르십시오3 단계 : Windows 10에 X 서버 설치. VcXsrv라는 오픈 소스 서버를 사용했습니다. https://sourceforge.net/projects/vcxsrv/ 에서 다운로드 할 수 있습니다 .
설치가 완료되면 :
Windows 10에서 XLauch 열기
다음 설정을 수행하십시오.
"One large window"Display number: 0nextStart no clientnextfinish4 단계 : Linux 콘솔에서 설정 :
유형 export DISPLAY=:0
유형 export LIBGL_ALWAYS_INDIRECT=1(이 칭찬이 필요하지 않을 수도 있음)
5 단계 : 메이트 데스크탑 GUI 표시 :
데비안 사용자를 mate-session위한 유형
입력 mate-session또는 lightdm-session를위한 우분투 사용자
내 설명이 혼란 스러우면 YouTube 비디오 설치 GUI (메이트 데스크탑)를 Microsoft Windows Subsystem Linux로 확인할 수 있습니다.
sudo service ssh start ssh -Y 10.0.2.2일반적으로 VirtualBox 게스트의 호스트는 10.0.2.2에 도달 할 수 있습니다.
이제 완벽한 Windows에서도 Fedora 데스크탑의 모든 WSL X 프로그램을 사용할 수 있습니다.