UUIDD(8) System Administration UUIDD(8)

# [NAME](#NAME)

uuidd - UUID generation daemon

# [SYNOPSIS](#SYNOPSIS)

**uuidd** \[options]

# [DESCRIPTION](#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](#OPTIONS)

**-C**, **--cont-clock**\[**=number**\[**hd**]]

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 'max\_clock\_offset'. This guarantees that a clock value of a UUID will always be within the range of 'max\_clock\_offset'.

The option **-C** or **--cont-clock** (without an argument) enables the feature with a default 'max\_clock\_offset' of 2 hours.

The option **-Cnumber** or **--cont-clock=number** enables the feature with a 'max\_clock\_offset' of *number* seconds. In case of an appended **h** or **d**, *number* is understood 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*.

**-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)](/man/os/util-linux/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.

**-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.

**-h**, **--help**

Display help text and exit.

**-V**, **--version**

Display version and exit.

# [EXAMPLE](#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](#AUTHOR)

The **uuidd** daemon was written by *Theodore Ts’o* &lt;tytso@mit.edu&gt;.

# [SEE ALSO](#SEE_ALSO)

[**uuid**(3)](/man/os/util-linux/uuid.3), [**uuidgen**(1)](/man/os/util-linux/uuidgen.1)

# [REPORTING BUGS](#REPORTING_BUGS)

For bug reports, use the *issue tracker* &lt;https://github.com/util-linux/util-linux/issues&gt;.

# [AVAILABILITY](#AVAILABILITY)

The **uuidd** command is part of the util-linux package which can be downloaded from *Linux Kernel Archive* &lt;https://www.kernel.org/pub/linux/utils/util-linux/&gt;.

2026-09-25 util-linux 2.42.4

---

Document: uuidd(8) from util-linux 2.42.4-r0 (Chainguard OS)
