sync命令可强制将内存缓存刷入磁盘:不加参数同步全部挂载文件系统;加路径参数可指定文件或目录;-d选项跳过元数据仅写文件内容;-f选项确保整个文件系统落盘。

直接运行 sync 命令就能把内存中尚未写入磁盘的缓存数据强制刷到硬盘,这是最简单也最常用的方式。
基础用法:不加参数直接同步全部
在终端输入:
sync
这条命令会触发内核将所有挂载文件系统中待写的数据(包括文件内容、目录结构、权限、时间戳等元数据)全部落盘。它不需要 root 权限,普通用户也能执行,但只能刷自己有读写权限的文件对应的部分缓存。
按需同步:只刷指定文件或目录
如果只想确保某个关键文件或挂载点的数据落盘,可以加路径参数:
- sync /home/user/report.txt —— 只同步这个文件的数据和元数据
- sync /mnt/backup —— 同步该目录所在文件系统的所有脏缓存(不只是目录本身)
加快速度:跳过元数据,只刷文件内容
对大文件做快速同步时,可省略权限、时间戳等元数据写入,用 -d 或 --data 选项:
sync -d /var/log/large.log
这能减少 I/O 开销,适合日志追加、临时数据暂存等场景,但注意:此时文件的修改时间、访问时间等不会更新。
确保整个文件系统落盘:用 -f 选项
当操作的是一个挂载点(比如 U 盘、外部硬盘),建议用 -f 显式指定文件系统:
sync -f /mnt/usb
它会同步 /mnt/usb 所在的整个文件系统,比只 sync 该路径更稳妥,避免因路径未覆盖全部脏页而遗漏数据。
不复杂但容易忽略。日常在拷贝完重要数据、卸载设备前、或关机前手动跑一次 sync,是防止断电丢数据的有效习惯。











