CYGWIN 환경 변수에서 "tty"옵션 감지


12

최근에 Windows 7 시스템에 cygwin을 다시 설치하고 cygwin 디렉토리를 경로에 추가하여 Windows 명령 행과 완벽하게 작동합니다. 명령을 실행할 때마다 실제 출력보다 다음과 같은 결과가 나타납니다.

"tty" option detected in CYGWIN environment variable.
CYGWIN=tty is no longer supported.  Please remove it from your
CYGWIN environment variable and use a terminal emulator like mintty,
xterm, or rxvt.

성가신 헤더없이 명령 줄에서 cygwin을 사용할 수 있도록 어떻게 이것을 제거 할 수 있습니까?


경고의 조언을 따르려고 했습니까?
ak2

"CYGWIN 환경 변수에서 제거"하는 방법은 무엇입니까? windows 명령 줄에서 cygwin 명령을 완벽하게 사용하는 것이 좋기 때문에 오히려 에뮬레이터를 사용하지 않을 것입니다.
ewok February

1
CYGWIN 환경 변수를 어딘가에 설정해야합니다 (예 : 명령 프롬프트를 시작하는 데 사용하는 스크립트 또는 글로벌 Windows 환경). 제어판의 시스템-> 고급-> 환경 변수에서 후자를 찾을 수 있습니다. (적어도 이곳은 XP에 있습니다; 그들은 7에 옮겼을 것입니다.)
ak2

그것을 발견. 환경 변수에있었습니다. 답변을 게시하여 수락 할 수 있음
ewok

답변:


18

나는 같은 문제가 있었지만 CYGWIN스크립트 나 컴퓨터 속성 (제어판)에서 환경 변수에 대한 설정이 없었습니다 .

그런 다음 sshd서비스가 CYGWINWindows 레지스트리의 다음 키 아래 환경 변수에 대한 설정을 가지고 있음을 발견했습니다 .

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\sshd\Parameters\Environment

문자열 에서 tty옵션 을 제거하면 @CYGWIN더 이상 사용 중단 경고가 표시되지 않습니다.


예, 이것은 저에게 효과적이며 ak2'a 답변은 그렇지 않습니다. 당신은 어떻게 그것에 빠져 들었습니까?
barlop

고마워, 나도 일했다! 나는 그것을 결코 발견 하지 못했을 것이다 .
MarcoS

1
sshd섹션에는이 기능이 없었지만에서을 찾았습니다 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment. 레지스트리를 검색하면 tty많은 오 탐지가 발생합니다. 검색하는 binmode것이 훨씬 더 효과적입니다.
Royce Williams

@CYGWIN에서 tty 옵션을 어떻게 제거 했습니까?
ingh.am 2016 년

3

CYGWIN 환경 변수를 어딘가에 설정해야합니다 (예 : 명령 프롬프트를 시작하는 데 사용하는 스크립트 또는 글로벌 Windows 환경). 제어판의 시스템-> 고급-> 환경 변수에서 후자를 찾을 수 있습니다. (적어도 이곳은 XP에 있고 7에 옮겨 졌을 수도 있습니다.)


에 대한 CYGWIN변수 sshd가 설정되어 있지 않습니다.
reinierpost

1

VirtualStaticVoid의 경우 +1

여기에서 설정을 볼 수 있습니다.

$ cat /proc/registry/HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/services/sshd/Parameters/Environment/CYGWIN
tty ntsec

그러나 읽기 전용입니다. ssh 액세스로만 수정하는 방법은 다음과 같습니다.

sshd-env.reg 만들기

$ cat <<EOF >sshd-env.reg
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\sshd\Parameters\Environment]
"CYGWIN"="ntsec"
EOF

레지스트리로 가져 오십시오.

$ regedit.exe -s sshd-env.reg

필요한지 확인하십시오.

$ cat /proc/registry/HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/services/sshd/Parameters/Environment/CYGWIN
ntsec

어떻게 든 sshd를 다시 시작하십시오.

cygrunsrv에 --restart 옵션이없는 것 같습니다. 부끄러움. crontab이 설치되어 있지 않은 경우 (기본적으로는 아님) 컴퓨터를 재부팅하는 것이 가장 쉬울 수 있습니다. 결국 창문입니다.

$ shutdown -r -t 0

훌륭한 답변, 명령 줄을 사용하여 모든 작업을 수행 할 수 있음
Ludovic Kuty
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.