今天我犯了一个很严重的错误,我想备份整个网站文件夹(public_html),但没有意识到它有24GB大小,现在它正在占用磁盘空间,而我不知道该如何停止。我使用的命令是:
tar -cvpzf /home/mywebsite/public_html/backup.tar.gz /home/mywebsite/public_html/
我从目录中删除了现有的backup.tar.gz文件,但命令仍在运行,仍在占用磁盘空间(即使.tar.gz文件已不存在)。 我该如何停止这个命令?
今天我犯了一个很严重的错误,我想备份整个网站文件夹(public_html),但没有意识到它有24GB大小,现在它正在占用磁盘空间,而我不知道该如何停止。我使用的命令是:
tar -cvpzf /home/mywebsite/public_html/backup.tar.gz /home/mywebsite/public_html/
我从目录中删除了现有的backup.tar.gz文件,但命令仍在运行,仍在占用磁盘空间(即使.tar.gz文件已不存在)。 我该如何停止这个命令?
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
无论如何,一旦该进程停止,磁盘空间将被清除。删除文件没有帮助,因为正在运行的进程仍然打开了该文件。只有在文件被删除且没有在任何进程中打开时,才能真正删除文件。