보통 윈도우에서 개발하고, 리눅스에서 우지를 실행하게 되는데
윈도우 파일 포맷으로 저장한 파일을 리눅스에서 실행하려고 하면
아래와 같이 파일을 찾지 못하는 오류가 발생한다.
/usr/bin/env: python
: No such file or directory
Failing Oozie Launcher, Main class [org.apache.oozie.action.hadoop.ShellMain], exit code [1]
또 파일 포맷의 이상일 때 다음과 같은 오류가 발생할 수도 있다.
윈도우의 줄바꿈은 CR+LF(/r/n)이고,
유닉스의 줄바꿈은 LF(/n)라서 오류가 발생한다.
/bin/sh^M: bad interpreter: No such file or directory
이럴때 파일을 vi 로 열어보면 하단에 현재 파일의 저장 상태를 확인할 수 있다.
이를 확인해서 [dos] 로 되어 있다면 파일 포맷을 변경해서 다시 실행하면 된다.
vi의 명령어 입력모드에서 다음을 입력하면 됩니다.
# 파일 포맷 변경
set fileformat=unix
또는
set ff=unix
# 파일 내용 변경(/r 제거)
sed -i 's/\r//' filename
이클립스에서는 다음을 이용해서 파일 포맷을 변경할 수 있습니다.
File -> Convert Line Delimeters To -> Unix
반응형
'빅데이터 > oozie' 카테고리의 다른 글
[oozie] 우지 작업 리런 커맨드 (0) | 2018.11.16 |
---|---|
[oozie] 우지 명령어 실행중 발생하는 Oozie URL 설정 오류 (0) | 2018.07.30 |
[oozie] 우지런처 메모리 설정 (1) | 2018.04.19 |
[oozie] 코디네이터, 워크플로우 재작업(rerun)을 위한 cli 커맨드 (0) | 2018.02.06 |
[oozie] 워크플로우의 액션에 오류가 발생하면 retry 하게 설정 하기 (4) | 2017.12.22 |