
WSL2에서 Windows 10 Home으로의 Firefox 바로가기를 만들려고 하는데 실패했습니다. 저는 자동으로 시작되도록 설정한 VcXsrv를 사용하고 있습니다. Windows 11이 아니기 때문에 WSLg를 사용할 수 없습니다.
수동으로 내보내지 않고도 Windows 바로가기에서 Firefox와 같은 앱을 사용할 수 있습니까 DISPLAY
?
답변1
당신처럼 들리네요:
이미
DISPLAY
변수가 올바르게 설정되어 있으며 VcXsrv의 명령줄에서 Firefox를 실행할 수 있습니다. 정말 좋은 시작이네요.하지 않다아직 변수를 수동으로 내보내야 한다고 언급했으므로
DISPLAY
에서 변수를 내보냈습니다 .~/.bashrc
그렇다면 먼저 시작 구성에서 변수를 내보내야 합니다. 이 부분을 이미 완료했다면 다음 단계로 건너뛰세요."바로가기 명령줄"아래 섹션.
시작 시 DISPLAY 내보내기
다음을 다음 항목에 추가하세요 ~/.bashrc
.
export DISPLAY="$(hostname).local:0"
mDNS를 사용하여 내 정보를 기반으로 적절한 IP 주소를 선택합니다.그 주제에 대해 여기에 대답해 보세요. 자신에게 적합한 다른 설정이 있는 경우 DISPLAY
이를 대신 사용할 수 있지만 hostname
대부분의 경우 기반 접근 방식이 가장 쉽다고 생각합니다.
그 다음에:
source ~/.bashrc
구성을 다시 읽도록 합니다. 확인하기 위해 셸을 다시 시작할 수도 있습니다. 그런 다음 Firefox가 실행되는지 확인하세요.
바로가기 명령줄
위의 작업은인터렉티브rc 파일은 대화형 쉘용으로 제공되기 때문입니다. 그러나 바로가기를 통해 Firefox를 실행하는 경우에는 해당 명령을 사용해야 하며 wsl.exe
기본적으로그렇지 않다대화형(또는 로그인) 쉘.
여기 메모리에서 Windows 바로 가기를 다음으로 설정해 보세요.
wsl -e bash -lic "firefox"
그러면 Bash가 실행됩니다.
-l
귀하의 소스를 제공하는 로그인 셸( )로~/.bash_profile
-i
소스를 제공하는 대화형 셸( )~/.bashrc
-c
그리고 ( ) Firefox 명령을 실행하세요.
답변2
다음 구문을 사용하는 것이 좋습니다.
wsl -e bash -lic "nohup firefox &"
Linux에서 "&"는 "백그라운드에서 시작"을 의미합니다. "&"가 없으면 상위 프로세스(bash)가 있는 활성 창이 있고, "&"가 있지만 "nohup"이 없으면 프로세스가 상위 프로세스(bash 창)와 함께 종료됩니다.
"nohup"과 "&"를 사용하면 모두 보기 좋게 보입니다. Firefox 프로세스에서만 가능합니다.
답변3
추가로:
- @세르게이 소콜로프'에스답변:
wsl -e bash -lic "nohup firefox &"
- @NotTheDr01ds'에스
답변:
wsl -e bash -lic "firefox"
Windows 바로가기(대상 명령)
이것이 WSL2 Debian이 설치된 Windows 10과 같은 특정 상황에서 나에게 가장 좋고 가장 안정적으로 작동하는 것입니다.
C:\Windows\System32\wsl.exe -d Debian -- bash -lic "nohup firefox &"
참고(GWSL에서 마이그레이션하는 경우)
WSL2로 업그레이드하기 전에 GUI 앱을 실행하기 위해 GWSL을 사용한 경우 ~/.bashrc
& ~/.profile
(또는 ~/.bash_profile
) 파일을 다시 확인하여 GWSL에 의해 배치된 구성을 제거해야 합니다. 이로 인해 실수로 DISPLAY
환경 변수를 이름 서버를 포함하는 유효하지 않은 항목으로 덮어쓸 수 있습니다. IP 주소( /etc/resolve.conf
).
내 경우에는 레거시 GWSL 구성이 으로 설정되어 DISPLAY
문제 가 발생했습니다 1.1.1.1:0.0
.:0
답변4
필요한 환경과 작업 디렉터리를 사용하여 WSL에서 Xilinx IDE를 실행하려고 시도하는 동안 다음과 같은 결과가 나왔습니다.
wsl.exe -e bash -lic ". /opt/Xilinx/14.7/ISE_DS/settings64.sh && cd /mnt/c/Users/%username%/Documents/ISE_Projects && nohup ise &"
&&를 사용하여 명령을 연결하면 프로그램을 시작하기 전에 원하는 환경과 작업 디렉터리를 강제로 적용할 수 있었습니다.
%username% 대체가 작동하는 것 같습니다.