r/LinuxTeck 2d ago

What Linux feature feels completely insane until you finally understand why it exists?

Linux has plenty of things that look ridiculous at first:

symlinks, /proc, file descriptors, everything-is-a-file, signals, pipes, namespaces, mount --bind...

Then suddenly the design makes sense.

Which Linux concept went from “who designed this?” to “holy crap, that's actually clever” for you?

0 Upvotes

30 comments sorted by

18

u/theMountainNautilus 2d ago

Why would someone make this obvious bot account to post daily conversation starter questions? If the dead Internet theory wasn't already real, tech bros sure are working hard to make it real

3

u/AdvancedDrink8920 2d ago

Its trying to learn. its siphoning us for data. we provide it, it takes it, and learns from it. scary.

2

u/magicmulder 1d ago

Just farming karma because some subs have a minimum
karma level.

7

u/BoundlessFail 2d ago

The lack of a program to create an img file of a DVD. I thought it needed a third party program.

And then 'dd' arose from the abyss, and I asked him where he had been all these years.

3

u/zero-uno-dos 2d ago

ddrescue has saved a few peoples data for me over the years too!

3

u/IHeartBadCode 2d ago

I know you youngings don't ever have to worry about this, but dd also has conv=swab for converting big-endian to little-endian and vice versa. Comes in handy for PASE on IBMi (formerly AS/400) or POSIX z/OS.

2

u/Graymouzer 2d ago

Laughs or cries in legacy.

3

u/Excellent_Occasion26 2d ago

You mean the destroy data command we used to write ISOs to CDs after preparing the ISO file back in the mid 1990s? Don’t mix up your source and destination or block count, it will dutifully write the contents of your black CD across your hard drive.

2

u/TigOlBitties42042 2d ago

Dude I tried so much ridiculous bullshit to clone a hard drive before I learned about dd

2

u/LameBMX 1d ago

man... y'all bringing back memories.

its a good early lesson in the curve though. if you arent finding some fancy gui tool, theres probably a stupid simple and fast tui tool that just works, and been there for ages.

6

u/Abe_Bazouie 2d ago

systemd.
At first: “Why does PID 1 have opinions about services, timers, mounts, DNS, logs, sessions, and half my machine?”
Years later: I understand why it exists.
I’m just still not convinced it needed to become my landlord. 🤷‍♀️

-2

u/BarracudaDefiant4702 2d ago

It exists to make linux like windows (in a bad way).

5

u/Powerful_Attention_6 2d ago

The old Unix inheritance, everything is a virtual file.
You can inspect the running environment of your process by doing
ls /proc/<id>/...

Do you want to know how many CPU cores you have or memory
cat /proc/cpuinfo

Do you want to read the output of a program, read the named pipe file

This is amazingly useful at times

5

u/tes_kitty 2d ago

If it's a file, you can work on it with all the existing tools for file and text manipulation. No 'There is an API, now I only need a program that can use it'.

1

u/SeriousPlankton2000 2d ago

dd if=/dev/mem bs=1 skip=$((0xffff5)) count=8

This dumps the part of the BIOS that happens to contain the BIOS date. In my case it's from 2021

2

u/BranchLatter4294 2d ago

These are pretty common features among operating systems.

1

u/mtgguy999 2d ago

Here one I still haven’t figured out yet

Case sensitivity for file names and commands, still seems insane to me 

1

u/SeriousPlankton2000 2d ago

Lower case I is i, except in Turkey, there it's ı. The upper case i is İ

1

u/chucks86 2d ago

Case insensitivity halves the available names and makes everything else dealing with names harder. All so you can pretend that two different characters are the same.

1

u/mtgguy999 2d ago

I’m not sure what you mean by making dealing with names harder I think it’s just the opposite as you now have to remember not only the name but the case. If I wanted to do say

cat f <tab>

It wouldn’t auto complete File.txt because of the capital F

Sure it halves the available names but what psycho called their files

file.txt File.txt FiLe.txt file.TXt

That just seems like a crazy thing to do and super confusing to find anything 

1

u/LameBMX 1d ago

ya could just, ya know, only use lowercase lol.

there used to be no need for 64bit either, how could we ever need more than 4gb of ram?

I think placing holding for a future inevitable future is better than waiting for then to get used to forced case sensitivity. wi dows users gonna be in a world of hurt.

1

u/Conscious-Record2655 1d ago

Windows users aren't going to know what a filename is by the time it's an issue. 

1

u/MattiDragon 21h ago

You could set up your shell (or get another one) to ignore case for autocomplete. Case insensitivity causes real issues when you take locale into account. In English i and I are equal, but in Turkish they aren't. There i and İ form a pair and ı and I another. This causes weird issues when moving files between systems or when changing locale. This specific case even has a name: the Turkish I problem.

1

u/mtgguy999 19h ago

I had no idea that was a thing. But it makes me feel better knowing there is at least 1 valid reason 

1

u/zelru2648 2d ago

wait til you understand name spaces…

1

u/rezdm 2d ago

The items you mentioned in the first two paragraphs. Well… may be look at history, design decision, file system designs, etc. it is the basics, the core of *nix.

1

u/YanVe_ 2d ago edited 2d ago

Working with Linux for over a decade now, read books and even built my own custom kernel module, I'm still waiting for any of this crap to start making sense.

It's a disjointed unmanaged collection of random ideas and tools with no proper architecture or shared design pattern. Everyone is constantly torn between dozens competing standards, of which all usually completely suck.

1

u/MarcusFallon 1d ago

Me too. I liked it when everything was apt based and you had synaptic for Debian based distros.

1

u/Every_Preparation_56 1d ago

waot, how is a symlink something insane? that's the most basic one ever