如果我只在一个分区内工作,我可以移动文件吗?这个想法是刷新 SD 卡以防止位损坏,但无需再次将文件移出和移入。
答案1
mv
只会改变文件的元数据。如果您希望将文件的全新副本写入磁盘,mv
请将文件复制到临时的新位置,然后cp
将其放回原位。一旦您验证了成功的副本,您就可以获取rm
原件。
答案2
如果有空间,请使用递归cp
或rsync
在分区中创建第二个副本,然后删除第一个副本。
如果没有,您可以将每个文件复制到自身上。系统和SSD不应该注意到数据是相同的,因此应该为其分配一个新的块。您可以用于dd conv=notrunc
此目的。它的优点是保留硬链接,即使中断,数据也不会损坏。例如
dd if=myfile of=myfile conv=notrunc
您可能希望保留文件属性。对于修改的时间,先用 保存touch -r myfile tmp
,然后用相反的操作恢复touch -r tmp myfile
。仍然存在不会刷新的目录和符号链接。