18

I m running on a remote server a python script using nohup.

  • First I connected to the remote machine using a VPN and SSH
  • Second I run a python script using the following command:

    nohup python backmap.py mpirun -np 48 &

The python script contains the following lines:

frame = []
file_in = open("Traj_equil_prot.pdb", "r")
for line in file_in:
    if line.startswith('TITLE'):
        frame.append(line[127:134])

import os
for fileNum in range(631, 29969):
    os.system("./initram-v5.sh -f Traj_equil_prot_frame" +  str(fileNum) + ".pdb -o Traj_equilprot_aa_frame" + str(frame[fileNum]) + ".gro -to amber -p topol.top")

The script was running just fine the whole day. but now it just crashed and when I try to re-launch it again I'm getting the following error:

Traceback (most recent call last): File "", line 1, in IOError: [Errno 5] Input/output error

The file is in the working directory. I tried to disconnect/connect again but still the same problem. I don't know what I'm missing. Any help, please?

Sociopath
  • 13,068
  • 19
  • 47
  • 75
FZJ
  • 197
  • 1
  • 1
  • 7
  • I'm not sure if related, but you have never closed `file_in` – Elazar Sep 17 '18 at 23:34
  • I just tried to open the file in python and close it with file_in.close(). Disconnect and reconnect to the remote machine and run the script again but I'm still getting the same error :/ – FZJ Sep 17 '18 at 23:43

3 Answers3

27

I had the same problem, I used to run my script using this command:

python MY_SCRIPT.py &

The script will run in the background and the output will be displayed on the terminal until you logout or exit.

By logging out, the script is still running but it's output has nowhere to display thus, exceptions will be made when the script wants to display something (e.g. calling print).


Solution:

I've piped the output to somewhere other than the actual terminal display:

python MY_SCRIPT.py >/dev/null &

Checkout this link for more details:

https://stackoverflow.com/a/38238281/6826476

Omid N
  • 947
  • 2
  • 11
  • 24
0

I finally fixed the problem by opening the file "file_in", modifying it (just adding a point in the REMARK line for example) and saving the changes.

FZJ
  • 197
  • 1
  • 1
  • 7
0

I had this error trying to load some files or to copy them using shutil library. It has been solve launching my code with an output file for the buffer:

python my_code.py >> output.txt

The tqdm will still be visible, making the advancement of the code easy to fallow.

Robin maltaros
  • 211
  • 3
  • 5