this post was submitted on 24 May 2025
87 points (96.8% liked)

Linux

7409 readers
353 users here now

A community for everything relating to the GNU/Linux operating system

Also check out:

Original icon base courtesy of lewing@isc.tamu.edu and The GIMP

founded 2 years ago
MODERATORS
 

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, and some tweakable parameters.

❤️🐧

top 18 comments
sorted by: hot top controversial new old
[–] timhh@programming.dev 6 points 5 hours ago

Yeah but please don't actually use this. Use a proper UUID library that works cross-platform and lets you choose the UUID type and can be seeded etc.

[–] clif@lemmy.world 4 points 7 hours ago

This is awesome. Thank you

[–] notfromhere@lemmy.ml 5 points 8 hours ago

I’ve used this in some bash scripts, very useful!

[–] bleistift2@sopuli.xyz 9 points 10 hours ago

That’s what you get when you define a file system as “a system that names things”.

[–] Redjard@lemmy.dbzer0.com 15 points 11 hours ago

boot_id seems to be static, probably set at boot.
So don't use it for a random uuid.

[–] kionite231@lemmy.ca 4 points 10 hours ago

Thank you so much for sharing this!

[–] pelya@lemmy.world 1 points 8 hours ago

Works in Termux on Android

[–] Hamartiogonic@sopuli.xyz 0 points 6 hours ago (2 children)

See also: /dev/null

It’s basically a black hole where you can throw anything.

[–] DaPorkchop_@lemmy.ml 3 points 5 hours ago

Yes, but what if it were a subscription? May I present: /dev/null-as-a-Service.

[–] victorz@lemmy.world 4 points 6 hours ago (4 children)
cat /proc/sys/kernel/random/uuid | /dev/null
[–] DaPorkchop_@lemmy.ml 12 points 5 hours ago (1 children)

Would have to be cat /proc/sys/kernel/random/uuid > /dev/null

You can't pipe to a file, only to programs, and since /dev/null isn't an executable your command will simply give an error.

To make it more clear, consider using dd, which lets you explicitly specify an input and output file. For example: dd if=/proc/sys/kernel/random/uuid of=/dev/sda1 wait shit that wasn't the right output oh god oh fu

[–] sixtoe@lemmy.blahaj.zone 1 points 2 hours ago

i saw this and came to do THE THING but you beat me too it. GOOD ANYA

[–] Hamartiogonic@sopuli.xyz 1 points 3 hours ago (2 children)

That reminds me of the CPU stress test I ran many years ago.

dd if=/dev/random of=/dev/null

If you have 8 cores, just open 8 terminals, and run that code in each of them.

[–] lime@feddit.nu 2 points 2 hours ago* (last edited 2 hours ago)
for i in {1..n}  # where n == number of cores
do
  dd if=/dev/urandom of=/dev/null &
done

# to stop:
jobs -p | xargs kill
[–] YerbaYerba@lemm.ee 2 points 2 hours ago

/dev/urandom should stress the CPU more. /dev/random can be entropy limited

[–] henfredemars@infosec.pub 2 points 4 hours ago (1 children)

The information will be evenly distributed upon its surface and some believe one day it will be be radiated back out into the rest of the system.

[–] Hamartiogonic@sopuli.xyz 2 points 3 hours ago

That's a horrifying concept. Better not think about it.