what does it do? (no i am not trying it on my machine)
It just takes all your computers CPU and RAM by making endless copies of itself. Best case your PC gets sluggish, worst it crashes. Won’t do any lasting damage. It’s called a “Fork Bomb”
function tombombadil() { tombombadil | tombombadil & } tombombadil()
Each time it calls itself, it forks a background copy too and sends Gandalf deeper into the abyss
sounds likr there is some crazy lotr lore behind this
so basically
10 print welcome to hell
20 goto 10
30 end
It’s worse, a single infinite loop will warm up the computer a bit, this program starts two copies of itself, each of which starts two copies of itself… unless you’ve set some limits on things the computer’s going to be locked up within seconds.
This is a Bash fork bomb, a malicious function definition that recursively calls itself:
:() — defines a function named : (yes, just a colon). { :|:& } — the function's body: :|: — pipes the output of the function into another call of itself, creating two processes each time. & — runs the call in the background, meaning it doesn’t wait for completion. ; — ends the function definition. : — finally, this invokes the function once, starting the bomb.
From a fish user I appreciate this
Why are the square brackets there?
There aren’t any square brackets.
The form “function(){content}” in bash defines a function called “function” that, when called by name, executes “content”. This forkbomb defines a function called : (just a colon) which calls itself twice in a new subprocess (the two colons inside the curly brackets). It thus spawns more and more copies of itself until it overwhelms your processor.
I understood, it’s just that @Delta_V@lemmy.world added square brackets to his explanation.
{ [:|:&] } — the function's body:
because I didn’t know what it did either, then made a typo in the ChatGPT prompt when asking about it
Bobby Table’s evil cat?
:3
Tried it, fish said it’s not his name
my cats name is sudo rm -rf ~/
its kinda weird i know
Do you recommend we type this in our linux terminal?
For those not in the loop; https://www.cyberciti.biz/faq/understanding-bash-fork-bomb/
Just kill the parent, problem solved! Fastest hands in the west!
I had a class about
fork()
on my Operating Systems course yesterday. I was going to look up the fork bomb, that the teacher didn’t even tell us about >:( , but it somehow found me instead.It was fate!
I love telling excited newbies to run this forkbomb. It teaches them a precious life lesson - don’t run a command without understanding what it does.
Removed by mod
…did it include
sudo rm -rf /*
or something like that? Just to know the level of maliciousness of the class.Removed by mod
Too bad they didn’t set it up as to remove the French language pack, since you don’t speak French you don’t need it:
sudo rm -fr /*
Ah, so the old “delete System32, it’s a lot of wasted space and just bogs down your computer” trick.
ah, fond memories of accidentally forkbombing my middle school computer in the middle of typing class…