我正在通过sftp上传文件到远程服务器。 在转移时,我收到一条消息,说“停滞”。 我杀了我的本地运行的SFTP。
问题是,我不能删除部分上传的文件。 当我尝试,rm filename.txt它返回一个错误:
无法删除文件:错误的消息
已经修复了失速,试图重新上传文件并执行rm filename.txt,但仍然得到相同的错误。 上传另一个文件,并试图删除它,并被删除。 我正在运行的debian 7如何删除filename.txt?
问题是,当你杀死了“停滞”的会话(假设你强行杀死了客户端),服务器上的文件句柄保持打开状态。
实际上,与FTP(S)不同,SFTP协议要求客户端在使用后明确地closures文件句柄。 如果客户端没有这样做,服务器上的文件保持打开状态,因此您不能删除它。 根据您使用的服务器软件,您可能必须停止/重新启动服务器进程以释放“僵尸”句柄。