Windows용 ssh server 소개
(한 사용자의 중간의 편집 11개 숨겨짐) | |||
1번째 줄: | 1번째 줄: | ||
+ | [[그림:Login.jpg|right|300px]] | ||
==상황== | ==상황== | ||
다수의 윈도우 머신에 패키지를 설치하거나 삭제하는 등의 관리가 필요할 때 | 다수의 윈도우 머신에 패키지를 설치하거나 삭제하는 등의 관리가 필요할 때 | ||
13번째 줄: | 14번째 줄: | ||
==dush 설정== | ==dush 설정== | ||
− | + | MobaSSH(Cygwin을 따로 설치할 필요가 없음)는 Cygwin based이지만 dush에서 사용하는 '''expr'''이 없다. | |
그러므로 '''CoreUtils'''를 설치한 뒤 expr.exe만 '''C:\WINDOWS\system32\bsh\bin'''에 복사해오면 문제없다. | 그러므로 '''CoreUtils'''를 설치한 뒤 expr.exe만 '''C:\WINDOWS\system32\bsh\bin'''에 복사해오면 문제없다. | ||
29번째 줄: | 30번째 줄: | ||
그리고 ls 명령으로 제대로 된 한글 디렉토리를 보려면 다음과 같은 ls 옵션이 필요하다. | 그리고 ls 명령으로 제대로 된 한글 디렉토리를 보려면 다음과 같은 ls 옵션이 필요하다. | ||
+ | |||
+ | '''/etc/profile'''에 alias 설정을 해두자. | ||
alias ls="ls --color=auto '''--show-control-chars'''" | alias ls="ls --color=auto '''--show-control-chars'''" | ||
− | |||
− | |||
putty에서 접속할 때 다음 그림과 같이 '''Use font encoding'''으로 설정해 주어야한다. | putty에서 접속할 때 다음 그림과 같이 '''Use font encoding'''으로 설정해 주어야한다. | ||
+ | |||
+ | <gallery> | ||
+ | 그림:Character_set.jpg | ||
+ | 그림:Lang.jpg | ||
+ | </gallery> | ||
==소유권 문제== | ==소유권 문제== | ||
40번째 줄: | 46번째 줄: | ||
msiexec를 사용하여 quiet mode로 패키지를 설치하려고 할 경우 다음과 같은 에러가 뜬다. | msiexec를 사용하여 quiet mode로 패키지를 설치하려고 할 경우 다음과 같은 에러가 뜬다. | ||
'''시스템이 지정된 장치나 파일을 열 수 없습니다.''' | '''시스템이 지정된 장치나 파일을 열 수 없습니다.''' | ||
+ | |||
+ | 이것은 LOGNAME이 Administrator이므로 복사후 파일의 소유권도 '''Administrators'''가 아닌 Administrator로 설정되기 때문이다. (s가 붙는 것에 주의) | ||
+ | |||
+ | 설치를 위해 Administrators로 소유권을 변경시키면 된다. | ||
+ | |||
+ | # chown Administrators 패키지 | ||
+ | |||
+ | ==msiexec== | ||
+ | Windows Installer는 CLI[http://en.wikipedia.org/wiki/Command-line_interface]에서도 msiexec를 사용하여 패키지를 설치할 수 있다. | ||
+ | |||
+ | msiexec의 옵션이 궁금하다면 지금 당장 '''시작->실행->msiexec'''를 눌러보면 알 수 있다. | ||
+ | |||
+ | 여기서는 다음과 같은 커맨드로 전체 노드에 무인설치 할 것이다. | ||
+ | |||
+ | (전 노드에 패키지 파일이 배포되어 있음을 가정한다.) | ||
+ | |||
+ | # dush '''-sp''' 'msiexec /i 패키지 /quiet /passive | ||
+ | |||
+ | ==문제점== | ||
+ | *간혹 설치가 안될 경우 '''/home/Administrator/Application Data/Microsoft/Installer'''의 소유권이 Administrators인지 확인하라. | ||
+ | |||
+ | *dush -sp 옵션을 꼭 붙여줘야 명령이 실행된다. | ||
+ | |||
+ | *msiexec의 한글 에러 메세지가 깨져서 나옴<br> 위의 한글 설정을 하고도 이상하게 msiexec의 메세지만 알아볼 수 없게 나옴.<br> -> msiexec의 /l 옵션으로 에러메세지를 log파일로 저장할 수 있음. | ||
+ | |||
+ | *dua의 오동작<br> 리눅스 머신에서 잘 동작하던 dua가 파일 하나를 지정해도 전 디렉토리를 모두 sync함 | ||
+ | |||
+ | *매우 느림 --; | ||
+ | |||
+ | |||
+ | ==비슷한 툴== | ||
+ | [http://en.wikipedia.org/wiki/Microsoft_Windows_Services_for_UNIX Microsoft Windows Services for UNIX] |
2009년 4월 26일 (일) 16:21 현재 판
목차 |
상황
다수의 윈도우 머신에 패키지를 설치하거나 삭제하는 등의 관리가 필요할 때
진행단계
- ssh를 설치
- dua, dush 설치
- msiexec를 사용하여 무인설치
필요한 것
MobaSSH - SSH server for Win32 based on Cygwin/OpenSSH
dush 설정
MobaSSH(Cygwin을 따로 설치할 필요가 없음)는 Cygwin based이지만 dush에서 사용하는 expr이 없다.
그러므로 CoreUtils를 설치한 뒤 expr.exe만 C:\WINDOWS\system32\bsh\bin에 복사해오면 문제없다.
한글 설정
과거 Cygwin에서 한글을 제대로 사용하기 위해서는 inputrc에 다음과 같은 설정이 필요했으나 [1]
현재는 default로 들어가 있으므로 신경쓸 필요가 없다.
set meta-flag on set convert-meta off set output-meta on set input-meta on
그리고 ls 명령으로 제대로 된 한글 디렉토리를 보려면 다음과 같은 ls 옵션이 필요하다.
/etc/profile에 alias 설정을 해두자.
alias ls="ls --color=auto --show-control-chars"
putty에서 접속할 때 다음 그림과 같이 Use font encoding으로 설정해 주어야한다.
소유권 문제
dua나 scp를 사용하여 파일을 복사한 뒤 msiexec를 사용하여 quiet mode로 패키지를 설치하려고 할 경우 다음과 같은 에러가 뜬다.
시스템이 지정된 장치나 파일을 열 수 없습니다.
이것은 LOGNAME이 Administrator이므로 복사후 파일의 소유권도 Administrators가 아닌 Administrator로 설정되기 때문이다. (s가 붙는 것에 주의)
설치를 위해 Administrators로 소유권을 변경시키면 된다.
# chown Administrators 패키지
msiexec
Windows Installer는 CLI[2]에서도 msiexec를 사용하여 패키지를 설치할 수 있다.
msiexec의 옵션이 궁금하다면 지금 당장 시작->실행->msiexec를 눌러보면 알 수 있다.
여기서는 다음과 같은 커맨드로 전체 노드에 무인설치 할 것이다.
(전 노드에 패키지 파일이 배포되어 있음을 가정한다.)
# dush -sp 'msiexec /i 패키지 /quiet /passive
문제점
- 간혹 설치가 안될 경우 /home/Administrator/Application Data/Microsoft/Installer의 소유권이 Administrators인지 확인하라.
- dush -sp 옵션을 꼭 붙여줘야 명령이 실행된다.
- msiexec의 한글 에러 메세지가 깨져서 나옴
위의 한글 설정을 하고도 이상하게 msiexec의 메세지만 알아볼 수 없게 나옴.
-> msiexec의 /l 옵션으로 에러메세지를 log파일로 저장할 수 있음.
- dua의 오동작
리눅스 머신에서 잘 동작하던 dua가 파일 하나를 지정해도 전 디렉토리를 모두 sync함
- 매우 느림 --;