Q. I’m getting an error as follows while trying to run a shell script over remote ssh session:
/bin/bash: bad interpreter: Text file busy
How do I fix this error message and run the script?
A. This error means some other process or user is accessing your file. Your script file is open and hence bash giving out this error.
To list open file use lsof command, enter:
# lsof | grep myscript.sh
cat 4995 root 1w REG 8,2 1374 28409914 /home/vivek/myscript.sh cat 5031 root 1w REG 8,2 1374 28409914 /home/vivek/myscript.sh cat 5069 root 1w REG 8,2 1374 28409914 /home/vivek/myscript.sh
You can wait or simply kill those process with kill command:
# kill 4995 5031 5069
Now, try to run script again: