使用方式 : sync
使用说明 : Linux 系统中欲写入硬盘的资料有的时候会了效率起见,
会写到 filesystem buffer 中,这个 buffer 是一块记忆体空间,
如果欲写入硬盘的资料存于此 buffer 中,而系统又突然断电的话,
那么资料就会流失了,sync 指令会将存于 buffer 中的资料强制写入硬盘中
--
sync命令 linux同步数据命令
格式: sync
用途:更新 i-node 表,并将缓冲文件写到硬盘中。
功能:sync命令是在关闭Linux系统时使用的。用户需要注意的是,不能用简单的关闭电源的方法关闭系统,因为Linux象其他Unix系统一样,在内存中缓存了许多数据,在关闭系统时需要进行内存数据与硬盘数据的同步校验,保证硬盘数据在关闭系统时是最新的,只有这样才能确保数据不会丢失。一般正常的关闭系统的过程是自动进行这些工作的,在系统运行过程中也会定时做这些工作,不需要用户干预。 sync命令是强制把内存中的数据写回硬盘,以免数据的丢失。用户可以在需要的时候使用此命令。
sync 命令运行 sync 子例程。如果必须停止系统,则运行 sync 命令以确保文件系统的完整性。sync 命令将所有未写的系统缓冲区写到磁盘中,包含已修改的 i-node、已延迟的块 I/O 和读写映射文件。
--
清除Linux缓存
# sync && echo 3 >/proc/sys/vm/drop_caches && sleep 2 && echo 0 >/proc/sys/vm/drop_caches
Writing to this will cause the kernel to drop clean caches, dentries and
inodes from memory, causing that memory to become free.(这样写将会使内核从内存中删除干净缓存、dentries和inodes,让内存有更多的可使用空间)
To free pagecache:
echo 1 > /proc/sys/vm/drop_caches
To free dentries and inodes:
echo 2 > /proc/sys/vm/drop_caches
To free pagecache, dentries and inodes:
echo 3 > /proc/sys/vm/drop_caches
As this is a non-destructive operation and dirty objects are not freeable, the
user should run `sync' first.
(dirty的inodes和dentries是没法释放的,所以如果想释放更多的内存,需要先sync一下。)
[root@server test]# cat /proc/sys/vm/drop_caches
0
/proc/sys/vm/drop_caches的值,默认为0(所以我们清空后,还再恢复它的值为0)
简单说,清除系统对内存的cache,使用root做下面几步:
sync; echo 3 > /proc/sys/vm/drop_caches
sync; echo 0 > /proc/sys/vm/drop_caches
写成一句就是:
# sync && echo 3 >/proc/sys/vm/drop_caches && sleep 2 && echo 0 >/proc/sys/vm/drop_