我不小心创建了 800 万个文件,每次我尝试删除它们时,服务器几乎死机,因为 rm 进程吃掉了所有磁盘 IO(服务器是远程的,没有控制台)。
像这样的事情应该起作用吗?即调用 ionice?
sudo find /var/lib/php5/ -type f -exec ionice -c3 rm -f {} \;
答案1
答案2
我会做这样的事情:
import os
os.nice(19)
dir = "/var/lib/php5/"
bad_files = [os.join(dir, file) for file in os.listdir(dir)
if is_bad(os.join(dir, file))]
for junk in bad_files:
os.unlink(junk)
time.sleep(0.1)
答案3
也许太傻了。
删除整个目录结构怎么样?
find /var/lib/php5 -type d -print > /tmp/directories
rm -r /var/lib/php5
cat /tmp/directories | xargs mkdir