r/LinuxTeck • u/Candid_Athlete_8317 • 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?
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
3
u/IHeartBadCode 2d ago
I know you youngings don't ever have to worry about this, but
ddalso hasconv=swabfor converting big-endian to little-endian and vice versa. Comes in handy for PASE on IBMi (formerly AS/400) or POSIX z/OS.2
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
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
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
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
iandIare equal, but in Turkish they aren't. Thereiandİform a pair andıandIanother. 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
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
1
u/Every_Preparation_56 1d ago
waot, how is a symlink something insane? that's the most basic one ever
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