不同版本的 `sync` 工具

不同版本的 `sync` 工具

man关于该工具有两页sync

(1)http://man7.org/linux/man-pages/man1/sync.1.html

NAME         

       sync - Synchronize cached writes to persistent storage

SYNOPSIS         top

       sync [OPTION] [FILE]...

DESCRIPTION         top

       Synchronize cached writes to persistent storage

       If one or more files are specified, sync only them, or their
       containing file systems.

       -d, --data
              sync only file data, no unneeded metadata

       -f, --file-system
              sync the file systems that contain the files

       --help display this help and exit

       --version
              output version information and exit

(2)http://manpages.ubuntu.com/manpages/trusty/en/man8/sync.8.html

NAME
       sync - synchronize data on disk with memory

SYNOPSIS
       sync [--help] [--version]

DESCRIPTION
       sync  writes any data buffered in memory out to disk.  This can include
       (but is not limited to)  modified  superblocks,  modified  inodes,  and
       delayed  reads and writes.  This must be implemented by the kernel; The
       sync program does nothing but exercise the sync(2) system call.

       The kernel keeps data in memory to avoid doing (relatively  slow)  disk
       reads  and  writes.   This  improves  performance,  but if the computer
       crashes, data may be lost or the  filesystem  corrupted  as  a  result.
       sync ensures that everything in memory is written to disk.

       sync  should  be  called  before  the processor is halted in an unusual
       manner (e.g., before causing a kernel panic when debugging  new  kernel
       code).    In   general,  the  processor  should  be  halted  using  the
       shutdown(8) or reboot(8) or halt(8) commands, which will attempt to put
       the  system  in  a  quiescent  state  before calling sync(2).  (Various
       implementations of these commands exist; consult your documentation; on
       some systems one should not call reboot(8) and halt(8) directly.)

第一个来自 ,coreutils而第二个来自fileutils。我尝试在 Ubuntu 14.04 中编译该sync工具,但得到的结果与 (2) 相同。coreutils 8.29sync

如何sync在 Ubuntu 14.04 上获取具有功能(1)的工具?

答案1

sync在 Ubuntu 中来自coreutils。检查它来自哪个包sync中描述的是sync(8)古董,可能从未在 Ubuntu 上提供,作为以下部分的一部分fileutils

This page describes sync as found in the fileutils-4.0  package;  other
versions may differ slightly.

fileutils-4.0是 1998 年的。

sync(1)您应该查看的手册页:14.0418.04。请注意 18.04 的手册页与 man7.org 手册页非常相似。

如果您sync从 coreutils 8.29 进行编译并且没有获得这些选项,那么您做错了什么,因为在 Ubuntu 16.04 上,使用synccoreutils 8.25 的默认设置,我确实获得了这些选项:

~ sync --help
Usage: sync [OPTION] [FILE]...
Synchronize cached writes to persistent storage

If one or more files are specified, sync only them,
or their containing file systems.

  -d, --data             sync only file data, no unneeded metadata
  -f, --file-system      sync the file systems that contain the files
      --help     display this help and exit
      --version  output version information and exit

GNU coreutils online help: <http://www.gnu.org/software/coreutils/>
Full documentation at: <http://www.gnu.org/software/coreutils/sync>
or available locally via: info '(coreutils) sync invocation'
~ sync --version
sync (GNU coreutils) 8.25
Copyright (C) 2016 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Written by Jim Meyering and Giuseppe Scrivano.

相关内容