That’s all. I just found this in a random script. Generates a random UUID every time it’s called. I didn’t know.

Of course I can also use uuidgen or pipe /dev/(u)random into something to get a random alphanumeric string - but this is built right into the kernel!

In /proc/sys/kernel/random/, there’s also boot_id which seems to do the same is static, and some tweakable parameters.

❤️🐧

  • lnxtx (xe/xem/xyr)@feddit.nl
    link
    fedilink
    English
    arrow-up
    2
    ·
    edit-2
    6 hours ago

    Interesting,
    non-scientific speed test:

    kernel 6.1.0-37-amd64:

    $ time for i in $(seq 1 100000); do cat /proc/sys/kernel/random/uuid > /dev/null; done
    
    real    3m53,388s
    user    1m37,366s
    sys     2m13,847s
    
    $ for i in $(seq 1 100000); do cat /proc/sys/kernel/random/uuid ; done | wc -l
    100000
    

    vs. uuid 1.6.2-1.5+b11:

    $ time for i in $(seq 1 100000); do uuid -v4 > /dev/null; done
    
    real    4m44,854s
    user    1m37,867s
    sys     3m4,414s
    
    $ for i in $(seq 1 100000); do uuid -v4 ; done | wc -l
    100000
    

    EDIT: I’m blind (wrong result).