Linux:如何停止tar命令?

5

今天我犯了一个很严重的错误,我想备份整个网站文件夹(public_html),但没有意识到它有24GB大小,现在它正在占用磁盘空间,而我不知道该如何停止。我使用的命令是:

tar -cvpzf  /home/mywebsite/public_html/backup.tar.gz /home/mywebsite/public_html/

我从目录中删除了现有的backup.tar.gz文件,但命令仍在运行,仍在占用磁盘空间(即使.tar.gz文件已不存在)。 我该如何停止这个命令?


结束 tar 进程? - Behe
杀死 -9 `pgrep tar` - aarosil
@Behe 这会清除命令使用的磁盘空间吗?我一直在犹豫是否要这样做。(编辑:啊,是的,它确实清除了!) - Mark Hedberg
这是关于终止Unix进程的内容。由于它是tar文件,没有任何相关的派生。 - Raúl Salinas-Monteagudo
1个回答

11
ps -ef | grep tar

找出 tar 命令的 PID,然后用 kill 命令杀掉它。

kill <pid>

例如,如果它是 PID 1234,则执行 kill 1234 命令。稍等片刻,如果进程没有优雅地退出,则使用 sledgehammer 强制结束。

kill -9 <pid>

或者,您可以使用一条命令杀死所有正在运行的tar命令。

pkill tar

# if necessary
pkill -9 tar

无论如何,一旦该进程停止,磁盘空间将被清除。删除文件没有帮助,因为正在运行的进程仍然打开了该文件。只有在文件被删除且没有在任何进程中打开时,才能真正删除文件。


1
谢谢!我运行了这个命令,它立刻停止了整个操作。磁盘使用情况也得到了清理! - Mark Hedberg

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接