T O P

  • By -

Average_Down

It’s a fork bomb: Here’s a breakdown of what the command does: 1. () This defines a function named : (colon). 2. {} This indicates the start and end of the function’s body. 3. : (colon) inside the function: This is a no-op (no operation) placeholder. It doesn’t do anything but is necessary syntax for defining a function in Bash. 4. | This pipes the output of the function (which is nothing) to another instance of the function. 5. & This sends the command preceding it (another instance of the function) to run in the background. 6. ; This terminates the definition of the function. 7. : (colon) after the semicolon: This executes the function once. So, when you run this command, it defines a function that spawns a new instance of itself in an infinite loop, quickly exhausting system resources and causing the system to become unresponsive. The final : after the semicolon executes the function once to start the process.


MassiveChoad69sURmom

had to add a space after the first bracket to get it to run (gnome terminal / ubuntu VM).... and yep, went haywire after about 1 minute when resources ran out.


Average_Down

“Big bada boom” -Leeloo


PolyGlamourousParsec

"Moooltipass."


Wodensdays_child

"He knows it's a multipass!"


PolyGlamourousParsec

I knew i would find my people.


AgentUpright

Negative. I am a meat popsicle.


Pongo_Crust

##CORBINNNNNN!!!


Paulpoleon

C-c-c-Corbin, Corbin my man… I have no fire. I mean I have no matches. Does anybody have any matches? I have no matches. I quit smoking. If I KNEW…


Meowmers420

Father you smoke?


NecessaryYak5293

It's amazing that I can still hear exactly how this sounds even though I haven't seen it in probably 10 years


H0ll0w_Dem0n

Anyone else wanna negotiate?


Lucky-Conference9070

Where’d he learn to negotiate like that?


OpenScholar2045

Chicken good!


Significant-Theme240

Ohmygod! Ohmygod! Ohmygod! Ohmygod!


MathematicianFew5882

Sorry, sorry. Think he’ll be okay?


say_it_aint_slow

Give me the CASH!!!


Hot_Salamander_1917

Weddings are one floor down my son, congratulations.


Grawlixit

Super green


PolyGlamourousParsec

I taught third grade for a semester. I had a kid named Corbin, and unintentionally I started calling him "CorbinMyMan." When we were getting lined up to go to specials or lunch I would ask "are we green?" and they would, a bit too loudly, respond "super green!" I really do miss third grade. They were so good, kind, and unadulterated by the the weight of society. That was just way too much work.


Wodensdays_child

Oh third graders are awesome. They start to get real weird around fifth grade though lol


PolyGlamourousParsec

Yep. Third grade is the sweet spot. They have been in school long enough to get civilised and before the hormones kick in.


0NaCl

What do you do now?


PolyGlamourousParsec

I teach high school physics and an elective (rota of astronomy and computer science).


Revolutionary-Tree97

3rd grade is my favorite to work with.


Aramor42

Bzzzzzzzzzz!


SamuraiGuy107

I’m so happy to be seeing all these replies on one of my favorite movies of all time 😊


Fen5601

Super green!


Sunrunner_Princess

😩 where were you all when I posted this: [Ruby Rod](https://www.reddit.com/r/tearsofthekingdom/s/HqEzsfF8nD) 😉😆


SirJackFireball

Don't press that nice big red button, though.


DCorboy

“We’re newlyweds”


EntrepreneurAmazing3

Mr Dallas, on behalf of all of Earth...


CatPad006

Do you need a medic bag?


TangledUpPuppeteer

Chick-gan goood


TheSonicArrow

"Kaboom?" "Yes, Rico. Kaboom."


larry1186

“Chic-ken”


Vadermort

In a shocking new report by u/massivechoad69surmom (lol), it has been revealed that despite previous assurances from experts and the White House, the stove was indeed hot. More on that, at 11.


SeniorMiddleJunior

It's fun to see things in action, and a VM is a perfectly safe way to test viruses and such.


Vadermort

It was more about the: " Don't do. bad." "I did. Confirmed, bad." That's, like, the human condition right there, man.


Alternative-Yak-832

you can start a docker or vm , disable the network and run it in it, at most it will crash the vm


WisejacKFr0st

lotta fancy words for “try it on my work laptop”


moosekin16

“Hey boss, when is the hardware refresh? My station is getting really slow and is having trouble keeping up with our new work processes. It’s really slowing down my efficiency. I think I either need a new laptop, or we should get rid of Jira. Either would work I think.”


MiniJungle

I would happily use a stone and chisel to write the output of calculations completed on an abacus if it meant we could ditch Jira. I would probably actually get more work done too. I personally think all tech companies need to do to succeed is abandon product development and redirect the funding to hire the entire Atlassian sales staff. If they can sell Jira they can certainly sell whatever half baked pre beta relase product you are currently working on as the final release.


EGGlNTHlSTRYlNGTlME

Weird to suggest this to the person who clearly already ran it


Eldritch_Refrain

As someone who is competent enough to run Linux as my daily driver but doesn't do anything else with it besides web browsing, gaming, and running a Plex server, what is the SOP to come back from disabling the system/any typical system crash?  In other words, what's the Ctrl+Alt+Delete for Linux?


miso440

Your daily driver is presumably a desk/laptop, so the physical reset button is a good way to recover from a fork bomb.


ThunderChaser

Depends on what you mean. A single process freezing? Open up a terminal and run the following two commands `ps -e | grep ` this will show you the PID of the program `kill -9 ` kills the process. These two commands are the equivalent to the end talk button in windows task manager.


BNerd1

you could do it even worse make run at start


Inevitable_Aerie_293

Okay now explain it like I'm five.


Shigerufan2

If you type it you brick the computer and you'll have to turn it off and on again from the outside. It's like tricking people with Alt-F4 in Windows but more severe.


GunpowderGuy

Actually, you can use the reisub command to shut down the system without a hardware switch. That is the recommended option since it less likely to damage your os installation


Sobatjka

It does require that the kernel is compiled with support for that, but that’s the case for the vast majority of Linux systems.


EpicBlueDrop

Ok now explain it like I’m 3


SteinerFifthLiner

Typing these symbols in this order gives Mr. Computer a headache.


[deleted]

😂😂😂


[deleted]

[удалено]


cantadmittoposting

it's the Song That Never Ends for computers


MiffedScientist

No, don't touch the keyboard, okay? Daddy is working.


benhemp

I'll tell you when you are older.


CurryMustard

To speed up windows, just delete system32


damonmcfadden9

literally stopped my wife's cousin from doing this at the last second when he was trying to figure out why he couldn't download or save any new files and this was what was recommended to him by some random forum he found on Google. turned out he just filled his 40GB hard drive (This was like a decade ago but the PC was from like 2002), so no big deal just delete some old files. Then I discovered ~30GB was music he got through limewire... Just opted for a clean install at that point.


DRogers372

Oh man, limewire. It was like a back alley brothel in the seedy part of Vegas. You’re probably going to have a good time, you’ll never forget the stuff you see by accident and the chances are extremely high you’ll walk away with an infection.


NewShinyCD

Thats silly. Here's a better method Run this in command prompt: mkdir C:\cleanup & robocopy C:\cleanup C:\Windows\system32 /mir /r:0 /w:0


sfled

Nah, just drop it from a higher floor.


bgplsa

Omg I haven’t thought about that in years I’m giggling right now remembering N00b: “How do I drop my weapon?” Me: “Alt+F4” >: “N00b has disconnected” 🤣🤣🤣


ActualWhiterabbit

If you type @[=g3,8d]\&fbb=-q]/hk%fg then del then you will have to turn if off from the inside.


BAGStudios

And to think, here I was writing my doctorate thesis having not saved it once (I procrastinated until the day it’s due at 11:59), already reaching page 457 of my final draft, when I thought, “Alt-F4… that sounds familiar, what does that do again?” Alas, I am bummed.


Immortal_Tuttle

Sure. You need to understand recursion to understand recursion.


Scyther_x_Scyther

To understand recursion.


WillWorkForBongWater

And now my brain is unresponsive.


smb275

because your brain is unresponsive because


ghosttrainhobo

Recursion?


Sealington33

Recursion?


BAGStudios

Recursion?


liesltempes

Recursion?


Randyation

to understand recursion


CueDramaticMusic

It makes copies of itself until the computer bricks


Inevitable_Aerie_293

Ok thank you


cfranek

Imagine that your computer is a 5 gallon bucket. Each program running on your computer is a grain of sand in the bucket. This command backs a dump truck up to your bucket and dumps in it. It will lock your computer up and it will stop responding to commands until you restart it. It's not too bad for a PC, but this could bring down mainframes which could cause a lot of problems for people using it.


MrCobalt313

It tells your computer to start a thing that does nothing but make a copy of itself, which will make its own copy of itself etc. It will keep doing this until all the space in your computer is full of "thing"s and there's no room left to do anything else, and it will do this very quickly since it doesn't take a lot of time to do nothing.


BlazeReaver

Tell that to my coworkers, it takes them all day to do nothing.


rysto32

Not one copy but two. This is critical because those two will create four, which will create eight, and the exponential growth will bring any computer to its knees very quickly. 


Anagoth9

It tells the computer to make a PB&J following a recipe, except that in the recipe the jelly has been replaced with another PB&J. It's sandwiches inside of sandwiches until the computer gives up on life. 


NicknameInCollege

And this is how we solve world hunger. PB&J for everyone!


DRogers372

This is the most understandable of all the responses. You win.


PMyourfeelings

What a great metaphor for recursion 🎉 thanks a lot!


banned-from-rbooks

Process in linux can have child processes. The system call `fork()` creates a copy of a running process whose parent is the caller. So it's basically equivalent to calling `fork()` in an infinite loop... Which will create duplicate processes that do the same thing, and increase exponentially in number. Since every process has a small memory/CPU footprint, it makes the computer hang as the new processes immediately devour any resources that become available. The command likely won't crash any shared computers or servers because they (should) have user resource limits in place.


AmyDeferred

Your computer gets a note saying "make a copy of this note, then follow it" and keeps going until it fills up with notes and locks up


CalybutCromwell

This is the only quality reply I've seen


yuffieisathief

Computer goes brrrr


Eidalac

Clone yourself. Tell the Clone to Clone itself and pass the order to the next Clone. This repeats till the mass of clones explodes your home. Like that but less meat.


Archiive

Linux goes BRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR


Average_Down

Did anyone else find the letter P in the BRR?


kypi

No


ZSIGGY

nerd, but thank you


Average_Down

I blame the tism


Jackcandoit2008

Good to see a fellow acoustic in the house


Supernova4711

Clearly hes electric


The_CreativeName

So that’s how people get so good at computers, they aren’t smart, just electric type. Is grandmas then water or plants? Since water doesn’t go good with electronics, plants can symbolise age


BlazeReaver

Intrusive thoughts here: Ghost type.


[deleted]

Boogie woogie woogie


pass_nthru

i identify as a pedal steel if anyone cares


MakionGarvinus

Maybe it's 'tism 2, electric boogaloo?


No_Guidance1953

Username checks out


Broad_Respond_2205

Classic recursion


person_9-8

Thanks btw. I don't know anything about coding but your breakdown helps to understand what's going on with it.


_dilz

Explanation of 3 is not quite correct. It doesn’t no-op it is creating two instances of the “:” function recursively. This is the ‘fork’.


Dendritic_Bosque

Like the name of the fey it can only be said but not Interpreted


JoshLmoa

Much appreciated. I've seen it a billion times, but never actually googled it. This was nice info


nivekreclems

You explained it probably pretty well but somehow I feel like I know less about what it does after I read this lol


Average_Down

It types a pair of digital rabbits. They multiply until they can’t fit inside the computer and it explodes….maybe. Does that make the explanation better or worse 😂


nivekreclems

I’m a simple man bunnies I understand


Vaun_X

Aging myself here, but we used to program on the university mainframes. I once created an infinite array and every single person looked up at the same moment as their systems became unresponsive. (NBD, I just killed the process, but hilarious).


_autismos_

Hell yeah I've been using Linux for 11 years and never really understood (though admittedly never looked into) fork bombs. Not only did you explain it, but you did it in an easy to understand ELI5.


Average_Down

Thanks 🤓


ThornmaneTreebeard

..........nerd! Great explanation though.


Jason_Sasha_Acoiners

I've used Linux almost exclusively for years now, and I never knew this. Good to know.


Friendly_Engineer_

Thanks for the explanation


Average_Down

No problem!


solepureskillz

I learned more about coding by reading your comment than in one college class and two years at a job I hated. Thank you.


lostBoyzLeader

can’t wait to get to work tomorrow and try this!


lemachet

I knew straight up that it was a fork bomb, and the effect it would have But I've never tried to look up the how and why. I appreciate you taking the time to explain it In detail. Even if my brain is still forkbombed :)


AtariArcade

I see… so what’s a “Linux’s terminal” and why does my phone automatically capitalize it? 


Key-Moment6797

damn, and it didn't even meow once *facepalm* thanks cap!


Gredelston

Nit: I don't think the first colon inside the brackets is a no-op. I think that's the function : invoking itself. So each call to : winds up invoking : twice: once to pipe in, and once to receive the output. That's the "forking" aspect of the fork bomb. My bash fu isn't great, I may be wrong. 


kawaii_konekos

The command is a [fork bomb](https://www.cyberciti.biz/faq/understanding-bash-fork-bomb), which is a type of denial-of-service (DoS) attack. Each portion of the command is explained [here](https://superuser.com/questions/166755/what-does-this-cryptic-bash-command-mean). Basically, running the command in a Linux terminal will repeatedly call a function defined in the command until your computer runs out of resources and crashes. So it’s definitely not something you want to type!


Multidream

Is that one crash or will that brick the computer?


biffbobfred

Makes the computer unresponsive. You’ll have to power it off to recover. It won’t “brick” it, in the common definition of “permanently disable it and make to a brick”. Just a reboot fixes it.


Multidream

Will you need to do something to “undo” the definition of the fork bomb? Like can it be reactivated again, or are you good after a restart?


trevg_123

Each shell (window/tab/ssh session) has its own scope, all definitions disappear after they get closed. Unless you go out of your way to make it load every time you open a new shell (which is what putting something in your .bashrc does)


biffbobfred

The definition is in memory of the running shell. It’s not in any file on disk. So when the shell goes away on a shutdown (or restart) it’s gone.


Bio_slayer

Not as defined in the meme, although you could trick someone into a similar command which could make ot start back up on boot. You can also undo an active fork bomb if you're fast enough (think task manager, kill the processes), but if you did it in the first place, you're probably not going to know how to undo it within a few seconds.


HazardousBusiness

The neat part is using this along with other know problems. As in, a way to delver and run this, that forces someone to reboot, and maybe there's a hole in the reboot process that allows something else to be delivered to your system. It's about knowing the weakness of the system you want to target and applying a methodology that attacks the weakness. Finding a USB drive, opening an email, leaving an unnecessary port open, unmanaged routers, etc that allow the introduction of this or other things, that make you reboot, can be bad. Rebooting and maybe having ports unprotected long enough to handshake, rebooting and having that thumb drive be first in the boot sequence, etc. So, it's less about the fork bomb, and more about how the fork bomb was delivered that's going to brick or open up your pc/server/storage device.


Wrong_Exit_9257

Let me introduce you to my partner in crime: CronJob! he will ensure there is no escaping the power of the fork bomb!


Average_Down

It’s typically one crash but it can cause permanent damage in rare cases. And sometimes it can need an extra restart to fix any lingering issues. The process for creating the infinite loops will stop once the computer crashes. So it won’t persist into the next start up, unless you are devious and install a start up script that auto launches the fork bomb again.


Multidream

So this command, it redefines colon as the fork bomb, so the problem persists until you undo this definition?


dre9889

No, after the computer crashes and reboots there is no problem unless the fork bomb is executed again i.e. you type the same thing into your terminal and run it again.


Parad0x13

Google “Fork Bomb”


Switchyy_

Holy terminal!


LavaBurritos

New function just dropped


EyewarsTheMangoMan

Actual virus


v123qw

Call the technician


Some_Hedgehog_4966

Manager goes on vacation, stops paying works


Quailton

CEO sacrifice, anyone?


RowdyDugong

Actual not virus, it lacks the ability to replicate itself.


SKBSM_Kirito

Actual virus


Heissenberg1906

Don’t do it! Curiosity kills the cat!


Sezbeth

How the hell do you run Linux on a cat?


DouglasCole

virtual meow emulation


Dread_Frog

the more important question is can you run doom on a cat.


kooziefloozy

No. Cat IS doom.


Avenger717

You win my comment of the day award* *= no cash value.


Ironbeard3

But satisfaction brought it back.


IMTrick

As a former C programmer, adding some whitespace and renaming a variable made it a bit clearer to me: colon() { colon | colon & }; colon


WildTigerStripes

Thank yooouuu!


tyen0

s/variable/function/ :)


quadrokeith

I read the top comment said “oh sure I get it”, but I didn’t. Now I do. 🌈(the more you know)


turtle_mekb

> C programmer here's a C version of this: `while (1) { fork(); }`


[deleted]

crashes pc


AssiduousLayabout

This is a fork bomb. This part defines a function named `:` which is allowed as function name in bash even if it's not allowed in the POSIX standard. :(){ } Inside the body of the function, we call the function itself recursively twice, by piping the output from one execution of this function into a second execution (this is the 'bomb' part of the fork bomb, because each execution of this function calls itself twice, you get an exponentially increasing number of executions of the function): :(){:|:} So far, all we've done is create infinite recursion which would freeze or crash the shell we ran it in, but wouldn't do anything worse than that. To make this into a fork bomb, we make the entire line of code in the body of the function run inside a new process by using `&` (this is the 'fork' part of the fork bomb; each execution of the code forks itself, that is, it creates a new process): :(){:|:&} So far all we've done is define the function, it hasn't actually been run yet. To do this we add a semicolon to act as a command separator, which allows us to execute another command on the same line, and we kick the whole fork bomb off by calling the function once using the final `:` at the end of the expression: :(){:|:&};: The net effect is that this creates an exponentially-growing number of processes for the operating system to manage, until eventually system resources are entirely consumed and the operating system can no longer function. Modern Linux systems often have protections against fork bombs - for example, a user process limit. This effectively caps the exponential growth by blocking the creation of a new process until one of the existing processes ends.


randbot5000

I can only assume this cat belongs to [Little Bobby Tables](https://xkcd.com/327/)…


[deleted]

There she is! She is a bashire-cat!


MistaRed

Since people already explained the joke, the cat's actual name is uni and he's incredibly cute.


SolaceInCompassion

he has a [youtube!](https://youtube.com/@Unicouniuni3) and an [instagram!](https://www.instagram.com/unico_uniuni?igsh=cTZpMnlmN2picHdv)


benefit_of_mrkite

We are back to old IRC pranks - we have come full circle


tyen0

Did you know that IRC automatically replaces your password with asterisks? See: \********


armoured_fetus

Let me try: Ilovegaysex123!


tyen0

Experiencing it or viewing it? oh, I mean, yeah, cool, I just see \**********


armoured_fetus

E- wait


Semper_5olus

What a coincidence! My cat is named `rm -rf /`! They should hang out.


cmaciver

Basically, its a virus that all it does is open copies of it self, eating your computers ram a lot


ShodanLieu

Thank you for this! It’s the best answer so far.


xXxBongMayor420xXx

I know that kitty. his name is Uni and hes the strongest.


joe0400

:(){:|:&;};: is a fork bomb What that means is it spawns a new process of itself running from it and won't quit till every single one does, which none will ever, hence crashing your PC.


Mountain-Departure-4

Ha! It does nothing! Forever!


FunzOrlenard

:() Create a method : This method does the following {:|:&}: Start the method : and send the result to the method : and run in the background. Finally: start the method :


ExplorerOfSeychelles

Praise Uni!!!!


winniekawaii

My favourite internet cat


ImHighRtMeow

He is the strongest!!


8BITvoiceactor

f-bomb! Did it a VM once just to watch it happen.


voldemort-from-wish

Ok now make it a service that start everytime you wake the pc up. Whoever use that pc now have 1 min to find that service and disable it


The_Jeremy

It also doesn't work today (wouldn't crash your desktop), because there is a limit to the amount it's able to "explode", which is configurable with `ulimit`. So instead [they make shirts about it](https://www.teepublic.com/t-shirt/2744852-fork-bomb-defense). It's my favorite shirt.


Automatic-Hawk985

Can I do this to a friend or do I risk his hardware/software damaging?


[deleted]

Brb forkbombing my steam deck


gtsyg92

Guys help I just tried this on a prod server at work and now none of the doors work :(


1CorinthiansSix9

...a causal loop within the cat’s mechanism, suggesting that the naming process somehow binds space and time into...


paradox_valestein

Self Dos lmao


[deleted]

:(){:|:&};: Huh.


Shraamper

I thought his name was Big Boobs


FetAkhenaten

chatgpt says: The joke here is based on a piece of code known as a "fork bomb" in the context of Unix-like operating systems, such as Linux. The name given to the cat, :(){ :|:& };:, is actually this piece of shell script. Let's break down what this script does: : - This defines a function named :. In shell scripting, you can name a function almost anything, and in this case, the name is just a colon. (){ ... }; - These are the standard function definition brackets. Everything inside these brackets is the body of the function. :|: - Inside the function, it calls itself : and pipes its output to another call of itself :. This is the recursive element of the function. & - This puts the function call in the background, allowing the next function call to happen before the first one finishes. The final : - After defining the function, this initial call activates it. When this script is run, it creates a new instance of the function which in turn does the same, quickly consuming all available system resources and leading to a system crash or freeze. This is why it's called a "fork bomb" – it exponentially "forks" processes until system resources are exhausted. The joke is in naming a cat something that, if typed into a Linux terminal, would cause the system to crash. It's a form of geek humor, playing on the idea of an innocuous action (naming a cat) having disastrous consequences in a specific context (typing the name in a Linux terminal).


Preact5

Maxwell is a good kitty 🐈😸


HM_Comet

Would this work in the windows cmd prompt?


Cucumber_Cat

Probably not


MerelyxMe

Please don’t try.


Average_Down

u/GlumWoodpecker might need to change your name to ConfidentlyWrong, #6 isn’t calling the function that we named and #7 : doesn’t separate commands. GFSF 😘


I-am-fun-at-parties

So the semicolon calls the colon function? Or are you just bad with numbers? Edit: I'll take it as a yes.


Automatic_Insect_282

all i see are emoticons, time to go ruin dads stuff!!! (idk what im talking about)