• 9 Posts
  • 297 Comments
Joined 1 year ago
cake
Cake day: June 16th, 2023

help-circle
  • So, the original content is lost forever?

    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 of ls -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.


  • 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”:

    $ # List permissions of files in /mnt:
    $ # note that none of the directories have read, write nor execute permissions
    $ ls -la /mnt
    drwxr-xr-x   1 root root          168 May 31 23:13 .
    drwxr-xr-x   1 root root          128 May 31 23:14 ..
    d---------   1 root root            0 Aug  1  2020 a/
    d---------   1 root root            0 Feb 11  2022 b/
    d---------   1 root root            0 Aug 11  2021 vdisks/
    
    $ # No read permission on a directory => directory entries cannot be listed
    $ ls /mnt/a
    cannot open directory '/mnt/a': Permission denied
    
    $ sudo mount /dev/sda1 /mnt/a
    
    $ # List again the permissions in /mnt: the root of /dev/sda1
    $ # has rwxr-xr-x (or 755) permissions, which override the 000 of /mnt/a ...
    $ ls -la /mnt
    drwxr-xr-x   1 root root          168 May 31 23:13 .
    drwxr-xr-x   1 root root          128 May 31 23:14 ..
    drwxr-xr-x   1 root root            0 Aug  1  2020 a/
    d---------   1 root root            0 Feb 11  2022 b/
    d---------   1 root root            0 Aug 11  2021 vdisks/
    
    $ # ... and its contents can be accessed by the mounted filesystem's owner:
    $ ls -la /mnt/a
    drwxr-xr-x   1 user user          168 May 31 23:13 .
    drwxr-xr-x   1 root root          168 May 31 23:13 ..
    -rw-r--r-- 1 user user   0 Jul  4 22:13 'Hello World.txt'
    
    $ find /mnt
    /mnt
    /mnt/a
    /mnt/a/Hello World.txt
    find: ‘/mnt/b Permission denied
    find: ‘/mnt/vdisks’: Permission denied
    

    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.


  • 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.



  • I decided to simply create directories within /mnt, chmod 000 them and use them as fixed mountpoints;
    for manual temporary mounts I have /mnt/a, /mnt/b, … /mnt/f, but I never needed to use more than two of them at once.

    While this setup doesn’t really respect the filesystem hierarchy, I wouldn’t have used /mnt at all if I were constrained by its standard purpose since having one available manual mountpoint seems pretty limiting to me.
    Then again, I have 3 physical drives with ~ 10 partitions, plus one removable drive with its own dedicated mountpoint…















  • III. We’ve Already Seen Extensive Gains From-

    When I was younger, I read R.A Salvatore’s classic fantasy novel, The Crystal Shard. There is a scene in it where the young protagonist, Wulfgar, challenges a barbarian chieftain to a duel for control of the clan so that he can lead his people into a war that will save the world. The fight culminates with Wulfgar throwing away his weapon, grabbing the chief’s head with bare hands, and begging the chief to surrender so that he does not need to crush a skull like an egg and become a murderer.

    Well this is me. Begging you. To stop lying. I don’t want to crush your skull, I really don’t.


  • I have a few in my library:

    • Signalis (low-poly (not that you can notice), low-res, CRT effect)
    • CrossCode (2D, low-res)
    • Valheim (low-poly, low-res, still graphically intensive due to lighting)
    • Lethal Company (low-res, bitcoin miner levels of GPU load)
    • Super Alloy Ranger (2D, low-res)
    • Terraria (you know Terraria, don’t lie)
    • Iconoclasts (2D, low-res)
    • Starbound (Terraria, but a bit worse and in space)

    I don’t think these games aim for nostalgia, nostalgia alone is not a good reason to choose low-poly or low-res graphics.

    Low-res textures and sprites have the advantage of being much easier for artists not only to hand draw, but to explicitly choose what details to give to a certain surface.
    3D games with low-res rendering also have their own appeal, like you say: they tell you what you’re looking at but still leaves your imagination the burden of filling in the details.

    To me low-poly models don’t really have their own appeal, unlike pixelated visuals, however I also don’t mind them at all.
    I still occasionally play games like Perfect Dark and TLoZ: OoT on their recompiled PC ports, they look good despite their low-poly nature because they don’t need high-poly models and their animations would look uncanny if they did (goofy ahh textures though).

    However, there are some retro effects that I find to be straight up ugly: Signalis applies a CRT effect occasionally, which I can’t say I’m fond of.