this post was submitted on 04 Jul 2024
125 points (98.4% liked)
Linux
48356 readers
759 users here now
From Wikipedia, the free encyclopedia
Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).
Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.
Rules
- Posts must be relevant to operating systems running the Linux kernel. GNU/Linux or otherwise.
- No misinformation
- No NSFW content
- No hate speech, bigotry, etc
Related Communities
Community icon by Alpár-Etele Méder, licensed under CC BY 3.0
founded 5 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
Adding to what the other comment explained:
I use
chown 000
so that regular users fail to access a directory when no filesystem is mounted on it; in practice it never happens, because "regular users" = { me }, but I like being pedantic.As for /mnt, it is supposed to be a single temp. mountpoint, but I use it as the parent directory of multiple mountpoints some of which are just for temporary use.
My dummy brain can't understand it man.
Isn't someone can't access a directory when no filesystem is mounted on it the default behaviour?
No, directories without anything mounted on them are normal directories - which checks out, since you can mount anything anywhere; unlike Windows volume letters, which only exist when volumes are mounted or detected by the OS.
When you mount a filesystem onto a directory, the OS "replaces" its contents AND permissions with that of the filesystem's root.
Here's an example with my setup (hopefully you're somewhat familiar with Bash and the output of
ls -l
).Imagine some random filesystem in
/dev/sda1
owned by "user" which only contains a file named "/Hello World.txt":Please note that me setting permissions is just extreme pedantry, it's not necessary at all and barely changes anything and if you're still getting familiar with how the Linux VFS and its permissions work you can just ignore all of this.
So, the original content is lost forever?
So, what's the actual use case of it though? Even though it's pedantry, it still there has to be some benefits, right?
I mean, What's the need for you to deny the access of
/mnt/a
untill has mounted with something? One can just leave it as it is, right?No, but it becomes invisible and inaccessible* as long as the filesystem is mounted over it - see this Stack Exchange question and accepted answer.
The benefits are marginal, for example I can see if a filesystem is mounted by simply typing
ll /mnt
(ll
being an alias ofls -lA
) - it comes handy with my system due to how I manage a bunch of virtual machines and their virtual disks, and it's short and easy to type.Some programs may refuse to write inside inaccessible directories, even if the root user can always modify regular files and directories as long as the filesystem supports it.
It's not a matter of security, it's more of a hint that if I'm trying to create something inside those directories then I'm doing something wrong (like forgetting to mount a filesystem) and "permission denied" errors let me know that I am.
Now I understand.
This is all new to me bro.
Even I don't know if I will go this further to explain something to someone.
Thanks Chad.