相关疑难解决方法(0)

如何递归地粉碎整个目录树?

我有一个目录树,我想用 Linux 'shred' 实用程序对其进行粉碎。不幸的是,shred 没有-R递归粉碎的选项。

如何递归地粉碎整个目录树?

security rm data-destruction

56
推荐指数
6
解决办法
10万
查看次数

从目录中删除数十亿个文件,同时查看进度

我有一个 30 TB 的目录,里面有数十亿个文件,这些文件正式都是 JPEG 文件。我正在删除这样的文件的每个文件夹:

sudo rm -rf bolands-mills-mhcptz
Run Code Online (Sandbox Code Playgroud)

这个命令只是运行并且不显示任何它是否工作。

我想看看它正在删除文件或命令的当前状态。

rm progress-information

43
推荐指数
4
解决办法
2万
查看次数

iotop 显示 1.5 MB/s 的磁盘写入,但所有程序都有 0.00 B/s

我不明白iotop输出:它显示大约 1.5 MB/s 的磁盘写入(右上角),但所有程序都有 0.00 B/s。为什么?

在此处输入图片说明

该视频是在我使用 perl -e 'for(<*>){((stat)[9]<(unlink))}', 在 Kubuntu 14.04.3 LTS x64 上删除包含数百万个文件的文件夹的内容时拍摄的。

iotop是使用sudo iotop.

linux process monitoring io

24
推荐指数
1
解决办法
1万
查看次数

删除目录中所有文件和子文件夹的最快方法是什么?

一个程序创建了许多嵌套的子文件夹。我尝试使用命令 rm -fr *将它们全部删除。但它很慢。我想知道有没有更快的方法将它们全部删除?

linux deleted-files

18
推荐指数
4
解决办法
6万
查看次数

如何快速删除包含大量子文件夹的文件夹?

我有一个包含 266778 个子文件夹的文件夹。我怎样才能删除它?

我试过了

cd ~/.local/share/Trash/
sudo rm -rf *
Run Code Online (Sandbox Code Playgroud)

但这需要很多时间。在 1 分 25 秒的实时时间和 0.072 秒的用户时间后,它仅删除了 2500 个文件夹。这样,删除这个文件夹需要两个多小时。

有没有更快的方法来删除这个文件夹?为什么用户时间和实时时间相差这么大?

real    1m25.474s
user    0m0.072s
sys     0m28.142s
Run Code Online (Sandbox Code Playgroud)

我使用 Linux 2.6.32(Ubuntu 10.04.4 LTS)。

filesystems rm

15
推荐指数
2
解决办法
1万
查看次数

重置 ext4 文件系统而不更改文件系统 UUID

我有一个文件系统,其中包含许多我定期删除的小文件(这些文件是可以轻松重新生成的缓存)。rm -rf简单地创建一个新的文件系统比运行或rsync删除所有文件要快得多(即有效删除包含数千个文件的大目录)。

创建新文件系统来擦除文件系统的唯一问题是它的 UUID 发生变化,从而导致例如/etc/fstab.

有没有一种方法可以简单地从 ext4 文件系统中“取消链接”目录,或者完全清除其 inode 列表?

ext4 inode

15
推荐指数
5
解决办法
2544
查看次数

删除大量文件的更快方法

我有一个目录,其中非常快速地生成了许多缓存文件。由于这些文件非常小,因此它会很快消耗我的所有 inode。

目前我正在运行以下命令来查找所有早于 12 小时的文件并删除它们。

$ find ./cache -mtime +0.5 -exec rm {} \;
Run Code Online (Sandbox Code Playgroud)

但是此命令删除的速度比生成文件的速度慢。有人可以告诉我一些快速删除大量文件的替代方法。

linux find rm

13
推荐指数
2
解决办法
6万
查看次数

用sftp递归删除?

我有一台只能通过 sftp、scp 和 rsync 访问的主机——没有 ssh。我有一大堆要删除的目录树,但我的 sftp 客户端显然不支持递归rms 或rmdirs。在帮助屏幕中,它显示我可以执行递归put,但这对我没有帮助。

如何删除我的文件?

sftp recursive

8
推荐指数
1
解决办法
2万
查看次数

精简使用硬链接的备份的最有效方法

我有一个备份磁盘,其中包含来自不同日期的同一台机器的数百个备份。备份是使用 rsync 和硬链接进行的,即如果文件没有更改备份脚本,则只是在旧备份中创建到文件的硬链接。因此,如果一个文件永远不会改变,你有本质上的备份磁盘一个副本,但说100个硬连接到它代表每个日期的备份每个目录(比如back-1back-2... back-n)。如果我想精简它,我会删除其中的一个子集,但不是全部。假设我想删除back_5, back_6, ... back_10(仅举个例子,在我真正的 szenario 中还有更多)。然后我尝试通过以下方式对其进行并行化:

echo back_5 back_6 back_10 | xargs -n 1 -P 0 rm -rf
Run Code Online (Sandbox Code Playgroud)

这需要几个小时。那么有没有更快的方法来做到这一点?

command-line filesystems backup parallelism

5
推荐指数
1
解决办法
616
查看次数

在 Lustre 上删除包含大量小文件的目录

我有一个包含大量非常小的文件的目录,我想删除这些文件,而简单地删除该目录rm -rf /path/to/the/dir已经需要多天时间了。

这听起来可能很奇怪,但该目录不是常规文件系统上的目录。它是集群的 Lustre 文件系统上的一个目录。

我在rm安装了 Lustre 的集群的节点 A 上运行命令,但 Lustre 的后端是 2 个 ZFS 文件系统,一个在节点 B 上,一个在节点 C 上,因此所有网络流量可能是rm变慢的原因。

有没有人知道比我的方法更快的删除目录的方法?

directory files lustre

4
推荐指数
1
解决办法
1837
查看次数

我不小心将 400 万个小文本文件写入一个文件夹,如何最好地摆脱它们?

由于脚本错误(file_put_contents($text, $filename, FILE_APPEND)而不是file_put_contents($filename, $text, FILE_APPEND)我现在在一个文件夹中有 400 万个小文本文件。

我宁愿不破坏整个文件夹,因为那里有一些有用的文件。

所有不需要的文件的文件名中间都有“jpg”,但没有一个需要的文件。

删除这些的最快方法是什么?目前我什至不能在ls没有它挂在我的控制台的情况下做- 这使得识别我想要保留的文件的名称很难,否则我只是将它们移出文件夹然后删除整个文件夹。

find . -name "*jpg*" -delete最好的选择,还是有更好/更快的方法?

find rm files

2
推荐指数
1
解决办法
118
查看次数

高效删除数百万个文件,无需先生成所有要删除的文件列表

我一直在试图弄清楚如何从安装的 NAS 驱动器中删除数百万个文件。我正在访问它的操作系统是 RHEL 7.6。

该目录正在积极写入,每天有数万或数十万个附加文件。

当我尝试运行删除技术时,例如:

rsync -av --delete empty_dir/ millions_of_files_dir/
Run Code Online (Sandbox Code Playgroud)

它首先会使用大量 CPU/MEM,并带有“发送增量文件列表”消息。这种情况会一直持续下去,CPU/MEM 的使用量会慢慢减少到最低限度。

我的理论是,这是因为文件列表永远不会结束;不断有更多的文件被添加。

SO:是否有一种删除技术在删除之前不需要完整的文件列表,但会在找到它们时“流删除”吗?

linux performance filesystems rsync delete

2
推荐指数
1
解决办法
165
查看次数