为什么必须在dd之前卸载分区?

为什么必须在使用dd之前卸载分区? 例如,要将iso复制到闪存驱动器,我们必须在使用dd之前卸载驱动器。 我见过很多地方告诉我这样做,但从来没有理解为什么?

如果在仍然挂载此设备上的文件系统时将数据写入“原始”块设备,则更新已删除的文件系统时内核将出现问题。 例如,内核会定期将脏数据刷回安装的设备,或者可以进行文件查找。 如果基础块设备已经从根本上改变,那么内核将发现问题,这可能导致内核OOP消息甚至停止BUG_ON()检查。 因此,在更改块设备上的基础数据之前,请始终卸载文件系统。