相关疑难解决方法(0)

使用 mv(而不是 cp 后跟 rm)有什么危险吗?

我是一名研究生,可以访问我大学的研究小组 Linux 集群。这些年来,我积累了很多目录——我猜“文件夹”是 Windows/Mac 术语吗?-- 在我的主目录 ( ~) 中。当我进行新的模拟时,我在我的主目录中创建一个新目录mkdir,然后在该目录中运行模拟。

但是随着时间的推移,我在我的主目录中积累了许多这样的目录。现在我想将一些目录移动到子目录中。例如,我可能想创建一个名为的新目录simulations1_10,然后将目录simulation1, simulation2, ...移动simulation10到该目录中——这样我的主目录的根目录就会更有条理。

为此,我可以使用cp. 例如:

cp -r simulation1/ simulations1_10/
Run Code Online (Sandbox Code Playgroud)

将目录simulation1(及其所有内容)复制到目录simulations1_10。然后我可以删除simulation1.

但是,我的转让跨越文件系统边界,所以mv的速度比cp。(mv当然也允许我避免删除步骤。)例如:

mv simulation1/ simulations1_10/
Run Code Online (Sandbox Code Playgroud)

做的伎俩很快(不像cpmv默认情况下递归)。根据this answer to this questionmv速度要快得多,因为它“只是更新各个目录中的inode数据库”。

我的问题是,使用有什么危险mv吗?

我认为一个危险是,如果在传输过程中mv被中断(由于电源故障、用户按下Ctrl+C等),文件可能在源目标中都被损坏。这样对吗?

另外,如果我使用mv 很多,是否有可能“inode …

mv

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

在 RHEL/CentOS 7 中, mv 实际上是否在同一个文件系统上执行 cp & rm ?

根据 两个问题的答案,似乎在 RHEL/CentOS 7 下,mv即使在同一文件系统上实际上也在执行cpthen rm.

在以前版本的 CentOS/RHEL 中,mv即使在大文件(例如安装媒体或大视频的集合)上,同一文件系统(甚至从深层目录到新的深层目录)上的 a 也非常快。

但是,在我的个人 CentOS 服务器上,在查看mv移动大文件时实际执行的操作时,需要的时间cprm.

这让我想知道为什么这种行为显然从只是一个包装器变成了rename()(根据POSIX标准)。

这样对吗?如果是这样,为什么该mv实用程序会改变 CentOS 7 中的行为?

filesystems rhel centos cp mv

6
推荐指数
1
解决办法
1117
查看次数

标签 统计

mv ×2

centos ×1

cp ×1

filesystems ×1

rhel ×1