In a uuidd setup, the daemon is a singleton and can maintain it's own resources for time based UUID generation. This requires a dedicated 'clock sequence range' but does not need any further lock/update of the LIBUUID_CLOCK_FILE from uuidd. The range of available clock values is extended by a continuous handling of the clock updates - instead of updating the value to the current timestamp, it is incremented by the number of requested UUIDs.
95 lines
3.3 KiB
Text
95 lines
3.3 KiB
Text
//po4a: entry man manual
|
|
////
|
|
Copyright 2007 by Theodore Ts'o. All Rights Reserved.
|
|
This file may be copied under the terms of the GNU Public License.
|
|
////
|
|
= uuidd(8)
|
|
:doctype: manpage
|
|
:man manual: System Administration
|
|
:man source: util-linux {release-version}
|
|
:page-layout: base
|
|
:command: uuidd
|
|
|
|
== NAME
|
|
|
|
uuidd - UUID generation daemon
|
|
|
|
== SYNOPSIS
|
|
|
|
*uuidd* [options]
|
|
|
|
== DESCRIPTION
|
|
|
|
The *uuidd* daemon is used by the UUID library to generate universally unique identifiers (UUIDs), especially time-based UUIDs, in a secure and guaranteed-unique fashion, even in the face of large numbers of threads running on different CPUs trying to grab UUIDs.
|
|
|
|
== OPTIONS
|
|
|
|
*-C*, *--cont-clock* _opt_arg_::
|
|
Activate continuous clock handling for time based UUIDs. *uuidd* could use all possible clock values, beginning with the daemon's start time. The optional argument can be used to set a value for the max_clock_offset. This gurantees, that a clock value of a UUID will always be within the range of the max_clock_offset. '-C' or '--cont-clock' enables the feature with a default max_clock_offset of 2 hours. '-C<NUM>[hd]' or '--cont-clock=<NUM>[hd]' enables the feature with a max_clock_offset of NUM seconds. In case of an appended h or d, the NUM value is read in hours or days. The minimum value is 60 seconds, the maximum value is 365 days.
|
|
|
|
*-d*, *--debug*::
|
|
Run *uuidd* in debugging mode. This prevents *uuidd* from running as a daemon.
|
|
|
|
*-F*, *--no-fork*::
|
|
Do not daemonize using a double-fork.
|
|
|
|
*-k*, *--kill*::
|
|
If currently a uuidd daemon is running, kill it.
|
|
|
|
*-n*, *--uuids* _number_::
|
|
When issuing a test request to a running *uuidd*, request a bulk response of _number_ UUIDs.
|
|
|
|
*-P*, *--no-pid*::
|
|
Do not create a pid file.
|
|
|
|
*-p*, *--pid* _path_::
|
|
Specify the pathname where the pid file should be written. By default, the pid file is written to _{runstatedir}/uuidd/uuidd.pid_.
|
|
// TRANSLATORS: Don't translate _{runstatedir}_.
|
|
|
|
*-q*, *--quiet*::
|
|
Suppress some failure messages.
|
|
|
|
*-r*, *--random*::
|
|
Test uuidd by trying to connect to a running uuidd daemon and request it to return a random-based UUID.
|
|
|
|
*-S*, *--socket-activation*::
|
|
Do not create a socket but instead expect it to be provided by the calling process. This implies *--no-fork* and *--no-pid*. This option is intended to be used only with *systemd*(1). It needs to be enabled with a configure option.
|
|
|
|
*-s*, *--socket* _path_::
|
|
Make uuidd use this pathname for the unix-domain socket. By default, the pathname used is _{runstatedir}/uuidd/request_. This option is primarily for debugging purposes, since the pathname is hard-coded in the *libuuid* library.
|
|
// TRANSLATORS: Don't translate _{runstatedir}_.
|
|
|
|
*-T*, *--timeout* _number_::
|
|
Make *uuidd* exit after _number_ seconds of inactivity.
|
|
|
|
*-t*, *--time*::
|
|
Test *uuidd* by trying to connect to a running uuidd daemon and request it to return a time-based UUID.
|
|
|
|
include::man-common/help-version.adoc[]
|
|
|
|
== EXAMPLE
|
|
|
|
Start up a daemon, print 42 random keys, and then stop the daemon:
|
|
|
|
....
|
|
uuidd -p /tmp/uuidd.pid -s /tmp/uuidd.socket
|
|
uuidd -d -r -n 42 -s /tmp/uuidd.socket
|
|
uuidd -d -k -s /tmp/uuidd.socket
|
|
....
|
|
|
|
== AUTHOR
|
|
|
|
The *uuidd* daemon was written by mailto:tytso@mit.edu[Theodore Ts'o].
|
|
|
|
== SEE ALSO
|
|
|
|
*uuid*(3),
|
|
*uuidgen*(1)
|
|
|
|
include::man-common/bugreports.adoc[]
|
|
|
|
include::man-common/footer.adoc[]
|
|
|
|
ifdef::translation[]
|
|
include::man-common/translation.adoc[]
|
|
endif::[]
|