[리눅스 질문_초보] qsub 파일 실행 에러

mj1223의 이미지

nc파일들을 이용해 파이썬으로 OWZ라는 기후 관련 값을 구해서 nc 파일로 저장하려고 합니다. 아래 compute_OWZ.job파일은 원래 있던 소스고 여기서 경로만 제 리눅스 디렉토리 경로대로 바꾸라고 했습니다. 경로 설정 후 헷갈리는 내용이 있어 질문드립니다. compute_OWZ.job파일 내용은 바로 아래에 나와있습니다.

[2073088@prime01 OWZ]$ more compute_OWZ.job
#!/bin/bash

# Author : S. Bourdin
# Job to compute OWZ from ERA5 data
# Job run on ciclad.
# Calls compute_OWZ.job
# Writes OWZ file from monthly winds and vorticity files
# OWZ data stored in /data/sbourdin/OWZ_ERA5/

#PBS -N Compute_OWZ
#PBS -l nodes=1:ppn=3
#PBS -j eo
#PBS -q default
#PBS -l walltime=02:00:00
#PBS -l mem=15GB
#PBS -l vmem=20GB

ulimit -s unlimited
module purge
module load gnu/4.9.3

yr=2020

cd ~/TC_algorithms/study/TC_in_ERA5/OWZ

compute_owz() {
yr=$1
mth=$2
date=$yr$mth
echo $date

ERA_folder=/bdd/ERA5/NETCDF/GLOBAL_025
u_file=$ERA_folder/4xdaily/AN_PL/${yr}/u.${date}.aphe5.GLOBAL_025.nc
v_file=$ERA_folder/4xdaily/AN_PL/${yr}/v.${date}.aphe5.GLOBAL_025.nc
vo_file=$ERA_folder/4xdaily/AN_PL/${yr}/vo.${date}.aphe5.GLOBAL_025.nc
owz_file=/data/sbourdin/OWZ_ERA5/owz_${date}.nc

if ! [ -f $owz_file ]
then
echo 'Computing OWZ...'

# Extracting useful levels
if ! [ -f /data/sbourdin/OWZ_ERA5/tmp/u_${date}.nc ]; then cdo -select,level=500,850 $u_file /data/sbourdin/OWZ_ERA5/tmp/u_${date}.nc ; fi &
if ! [ -f /data/sbourdin/OWZ_ERA5/tmp/v_${date}.nc ]; then cdo -select,level=500,850 $v_file /data/sbourdin/OWZ_ERA5/tmp/v_${date}.nc ; fi &
if ! [ -f /data/sbourdin/OWZ_ERA5/tmp/vo_${date}.nc ]; then cdo -select,level=500,850 $vo_file /data/sbourdin/OWZ_ERA5/tmp/vo_${date}.nc ; fi &
wait

# Computing OWZ with the python script
python ~/TC_algorithms/study/TC_in_ERA5/OWZ/compute_OWZ.py /data/sbourdin/OWZ_ERA5/tmp/u_${date}.nc /data/sbourdin/OWZ_ERA5/tmp/v_${date}.nc /data/sbourdin/OWZ_ERA5/tmp/vo_${date}.nc $owz_file
ncatted -O -a calendar,time,o,c,"gregorian" $owz_file $owz_file
rm /data/sbourdin/OWZ_ERA5/tmp/*${date}.nc
echo 'OWZ computed'
else
echo "File already exists"
fi
}

for mth in 01 02 03 04 05 06 07 08 09 10 11 12
do
compute_owz $yr $mth
done
wait

sleep 30

1번 질문 : 위에 코드에서 ERA_folder는 ~/TC_algorithms/study/TC_in_ERA5/OWZ 경로에 이은 하위 디렉토리 경로 인건가요?
--> ERA_folder가 ~/TC_algorithms/study/TC_in_ERA5/OWZ/bdd/ERA5/NETCDF/GLOBAL_025 를 의미하는 건 궁금합니다.

2번 질문 : 이 job 파일을 실행시키려면 어떻게 해야하나요? qsub compute_OWZ.job을 이용해 실행시켜도 되는 건가요?
qsub compute_OWZ.job로 하면

[2073088@prime01 OWZ]$ qsub compute_OWZ.job
+2+1+1+72073088+0+7default2+172+282+11submit_args+02+15compute_OWZ.job+02+25+8Job_Name+02+15compute_OWZ.job+02+21+8Job_Name+02+11Compute_OWZ+02+282+13Resource_List+1+5nodes+71:ppn=3+02+13+9Join_Path+0+2eo+02+322+13Resource_List+1+8walltime+802:00:00+02+232+13Resource_List+1+3mem+415GB+02+242+13Resource_List+1+4vmem+420GB+02+132+10Checkpoint+0+1u+02+132+10Hold_Types+0+1n+02+132+10Keep_Files+0+1n+02+142+11Mail_Points+0+1a+02+11+8Priority+0+10+02+15+9Rerunable+0+4TRUE+02+212+14fault_tolerant+0+5FALSE+02+722+13init_work_dir+02+57/home/2073088/TC_algorithms/Zenodo_first_sub/trackers/OWZ+03+4442+13Variable_List+03+429PBS_O_HOME=/home/2073088,PBS_O_LANG=en_US.UTF-8,PBS_O_LOGNAME=2073088,PBS_O_PATH=/usr/lib64/qt-3.3/bin:/usr/torque/sbin:/usr/torque/bin:/usr/local/jspcmds:.:/home/2073088:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/opt/dell/srvadmin/bin:/opt/dell/srvadmin/iSM/bin,PBS_O_MAIL=/var/spool/mail/2073088,PBS_O_SHELL=/bin/bash,PBS_SERVER=ces_edu,PBS_O_WORKDIR=/home/2073088/TC_algorithms/Zenodo_first_sub/trackers/OWZ+0+0qsub: Error (15090 - Timed out wating for a reply) submitting job

이런 오류가 발생하는데 구글링을 해도 안나와서 어떤게 문제인지 모르겠습니다...

김정균의 이미지

1번 질문 : 위에 코드에서 ERA_folder는 ~/TC_algorithms/study/TC_in_ERA5/OWZ 경로에 이은 하위 디렉토리 경로 인건가요? --> ERA_folder가 ~/TC_algorithms/study/TC_in_ERA5/OWZ/bdd/ERA5/NETCDF/GLOBAL_025 를 의미하는 건 궁금합니다.

~/TC_algorithms/study/TC_in_ERA5/OWZ

의 경우, ~ 는 home directory를 의미합니다. 예를 들어 현재 사용자의 홈 디렉토리가 /home/user1 이라면 위의 full path는

/home/user1/TC_algorithms/study/TC_in_ERA5/OWZ

이 됩니다.

그럼 ERA_folder 는

ERA_folder=/bdd/ERA5/NETCDF/GLOBAL_025

와 같이 지정이 되어 있는데, linux 에서 경로가 '/' 로 시작하면 절대 경로가 됩니다. 그러니.. ~/TC_algorithms/study/TC_in_ERA5/OWZ의 하위 디렉토리가 아니라는 의미가 되는 거죠.

2번 질문 : 이 job 파일을 실행시키려면 어떻게 해야하나요? qsub compute_OWZ.job을 이용해 실행시켜도 되는 건가요?

compute_OWZ.job 는 bash script 입니다. 그러니 실행 권한을 주시고 다음과 같이 실행 하면 됩니다.

chmod 755 ./compute_OWZ.job
./compute_OWZ.job

권한 수정하기 귀찮으시다면 bash 로 실행하셔도 됩니다.

bash ./compute_OWZ.job

익명 사용자의 이미지

torque 를 사용하시는 것 같은데, 우선 설치가 제대로 되었는지 확인이 필요해보이네요.

echo "sleep 30" | qsub

는 잘 실행되는지,
pbsnodes -a


qstat

의 출력이 어떻게 되는지 확인해보세요

익명 사용자의 이미지

이게 무슨 뜻인지 모르겠다면, 위의 김정균님 답글처럼,
bash 로 실행시키는 것이 좋겠네요.
경로는 좀 더 수정할 곳이 필요해보이고요.

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.