1 问题
在服务器上停掉jar包服务后,重新启动服务时报如下错误:
-bash: /xxx/appService.jar: bad interpreter: Text file busy
2 原因
在执行service appService stop 时,本意是节省时间,在服务还未完全停止时,就通过ftp替换对应的jar包,此时ftp上传jar包处于阻塞状态,当时不明所以,就停止上传文件,但此时ftp客户端就处于刷新状态,所以就重开了一个ftp客户端,重新上传了一个jar包文件,但再开启服务时就报了 “Text file busy” 的错误。
3 解决
使用 fuser 服务名称 命令(需要在root用户下执行)可以查看对应的服务进程号,然后关闭该进程:
# fuser appService
appService: 2476
# kill -9 2476