uuidgen(1) — Linux manual page


UUIDGEN(1)                    User Commands                   UUIDGEN(1)

NAME         top

       uuidgen - create a new UUID value

SYNOPSIS         top

       uuidgen [options]

DESCRIPTION         top

       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         top

       -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
           Print version 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.

       -C, --count num
           Generate multiple UUIDs using the enhanced capability of the
           libuuid to cache time-based UUIDs, thus resulting in improved
           performance. However, this holds no significance for other
           UUID types.

       -x, --hex
           Interpret name name as a hexadecimal string.

CONFORMING TO         top

       OSF DCE 1.1

EXAMPLES         top

       uuidgen --sha1 --namespace @dns --name "www.example.com"

AUTHORS         top

       uuidgen was written by Andreas Dilger for libuuid(3).

SEE ALSO         top

       uuidparse(1), libuuid(3), RFC 4122

REPORTING BUGS         top

       For bug reports, use the issue tracker at

AVAILABILITY         top

       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/>. This page
       is part of the util-linux (a random collection of Linux
       utilities) project. Information about the project can be found at
       ⟨https://www.kernel.org/pub/linux/utils/util-linux/⟩. If you have
       a bug report for this manual page, send it to
       util-linux@vger.kernel.org. This page was obtained from the
       project's upstream Git repository
       ⟨git://git.kernel.org/pub/scm/utils/util-linux/util-linux.git⟩ on
       2023-12-22. (At that time, the date of the most recent commit
       that was found in the repository was 2023-12-14.) If you discover
       any rendering problems in this HTML version of the page, or you
       believe there is a better or more up-to-date source for the page,
       or you have corrections or improvements to the information in
       this COLOPHON (which is not part of the original manual page),
       send a mail to man-pages@man7.org

util-linux 2.39.594-1e0ad      2023-09-01                     UUIDGEN(1)

Pages that refer to this page: uuidparse(1)uuid(3)uuid_generate(3)swaplabel(8)uuidd(8)