증상 : 일부 또는 모든 사용자가 HP-UX 시스템에 ftp를 수행할 수 없습니다.
- 사전 점검
(1) 주어진 시스템에 ftp를 실행할 수 있는 사용자가 없으면 우선 시스템에서 inetd가 실행 중인지 확인합니다.
$ ps -ef | grep inetd |
실행 중이 아니면 inetd를 시작합니다.
$ /usr/sbin/inetd |
(2) ftp 서비스가 해제되어 있을 수도 있습니다. /etc/inetd.conf에서 다음 줄을 확인합니다.
ftp stream tcp nowait root /usr/lbin/ftpd ftpd -l
이 줄이 없거나 주석 처리가 되어 있으면(파운드 기호(#)가 앞에 있으면) 이 줄을 추가하고(또는 파운드 기호를 제거하고) inetd를 다시 시작합니다.
/usr/sbin/inetd -c |
(3) SAM을 사용하여 ftp의 상태를 확인하고 필요한 경우 설정할 수도 있습니다. Networking and Communications/Network Services로 이동합니다.
- 문제 해결
ftp는 기본적으로 고정 목록에 대해 암호 정보(즉, 로그인하려는 사용자에 대한 /etc/passwd의 항목)를 확인하는 getusershell을 호출합니다. 이 쉘이 목록에 없으면 ftp는 사용자가 들어오지 못하게 하므로 자체 시스템에도 ftp를 수행하지 못할 수 있는 비정상적인 쉘을 사용하게 됩니다.
getusershell 은 /etc/shells 파일을 참조하는데, 만약 /etc/shells 파일이 없거나 읽을 수 없는 상태라면 아래와 같은 시스템에서 기본적으로 제공하는 쉘을 리턴합니다.
/sbin/sh
/usr/bin/sh
/usr/bin/rsh
/usr/bin/ksh
/usr/bin/rksh
/usr/bin/csh
/usr/bin/keysh
(1) 해결1
/etc/passwd 에서 해당 계정의 쉘을 시스템에서 기본적으로 제공하는쉘로 혹은 /etc/shells 에 있는 쉘로 수정
(2) 해결2
/etc/shells 에 해당 계정이 사용하는 쉘을 추가
자세한 내용은 getusershell(3C), shells(4)를 참조하십시오.
'system > unix' 카테고리의 다른 글
HP-UX에서 ps 명령 -o 옵션 사용하기 (0) | 2008.09.18 |
---|---|
HP-UX 이더넷 설정 확인 (0) | 2008.09.18 |
[SunOS] /home 디렉토리에서 계정 생성이 안될 때 (0) | 2008.09.18 |
su 명령 사용 허가하기 (0) | 2008.09.17 |
bash 환경 설정 (0) | 2008.09.17 |