uuidgen
UUIDGEN(1) User Commands UUIDGEN(1)
NAME
uuidgen - create a new UUID value
SYNOPSIS
uuidgen [options]
DESCRIPTION
The uuidgen program creates (and prints) a new universally unique
identifier (UUID) using the libuuid(3) library. The new UUID can
reasonably be considered unique among all UUIDs created on the local
system, and among UUIDs created on other systems in the past and in the
future.
There are three types of UUIDs which uuidgen can generate: time-based
UUIDs, random-based UUIDs, and hash-based UUIDs. By default uuidgen
will generate a random-based UUID if a high-quality random number
generator is present. Otherwise, it will choose a time-based UUID. It
is possible to force the generation of one of these first two UUID
types by using the --random or --time options.
The third type of UUID is generated with the --md5 or --sha1 options,
followed by --namespace namespace and --name name. The namespace may
either be a well-known UUID, or else an alias to one of the well-known
UUIDs defined in RFC 4122, that is @dns, @url, @oid, or @x500. The name
is an arbitrary string value. The generated UUID is the digest of the
concatenation of the namespace UUID and the name value, hashed with the
MD5 or SHA1 algorithms. It is, therefore, a predictable value which may
be useful when UUIDs are being used as handles or nonces for more
complex values or values which shouldn't be disclosed directly. See the
RFC for more information.
OPTIONS
-r, --random
Generate a random-based UUID. This method creates a UUID consisting
mostly of random bits. It requires that the operating system has a
high quality random number generator, such as /dev/random.
-t, --time
Generate a time-based UUID. This method creates a UUID based on the
system clock plus the system's ethernet hardware address, if
present.
-h, --help
Display help text and exit.
-V, --version
Display version information and exit.
-m, --md5
Use MD5 as the hash algorithm.
-s, --sha1
Use SHA1 as the hash algorithm.
-n, --namespace namespace
Generate the hash with the namespace prefix. The namespace is UUID,
or '@ns' where "ns" is well-known predefined UUID addressed by
namespace name (see above).
-N, --name name
Generate the hash of the name.
-x, --hex
Interpret name name as a hexadecimal string.
CONFORMING TO
OSF DCE 1.1
EXAMPLES
uuidgen --sha1 --namespace @dns --name "www.example.com"
AUTHORS
uuidgen was written by Andreas Dilger for libuuid(3).
SEE ALSO
libuuid(3), RFC 4122 <https://tools.ietf.org/html/rfc4122>
REPORTING BUGS
For bug reports, use the issue tracker at
https://github.com/karelzak/util-linux/issues.
AVAILABILITY
The uuidgen command is part of the util-linux package which can be
downloaded from Linux Kernel Archive
<https://www.kernel.org/pub/linux/utils/util-linux/>.
util-linux 2.37.2 2021-06-02 UUIDGEN(1)
Man Pages Copyright Respective Owners. Site Copyright (C) 1994 - 2025
Hurricane Electric.
All Rights Reserved.