• rdri@lemmy.world
    link
    fedilink
    English
    arrow-up
    8
    arrow-down
    8
    ·
    5 months ago

    Linux still unable to catch up with NTFS when it comes to filename length, sadly. 256 bytes in an era of Unicode is ridiculous.

    • jabjoe@feddit.uk
      link
      fedilink
      English
      arrow-up
      20
      ·
      5 months ago

      NTFS also has a 255 limit, but it’s UTF16, so for unicode, you will get more out of it. High price to pay for UTF16. Windows basically is moving stuff between UTF16 and ASCII all the time. Most apps are ASCII but Windows is natively UTF16. All other modernly maintained OS do UTF8, which “won” unicode.

      The fact that all major Unix (not just Linux) filesystems are to 255 bytes says it’s not a feature in demand.

      I’d much rather have COW subvolume snapshotting and incremental backup of btrfs or zfs. Plus all the other things Linux has over Windows of course.

      • rdri@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        arrow-down
        6
        ·
        5 months ago

        NTFS also has a 255 limit, but it’s UTF16, so for unicode, you will get more out of it.

        I think this is a biased way of putting it. NTFS way is easy to understand and therefore manage. What’s more important is that ASCII basically means English only. I’ve seen enough of such “discrimination” (stuff breaks etc.) based on used language in software/technology and it should end for good.

        All other modernly maintained OS do UTF8, which “won” unicode.

        UTF8 is Unicode. UTF8 symbols can take more than 1 byte.

        Plus all the other things Linux has over Windows of course.

        There are also encryption methods that slash maximum length of each filename even further.

        • jabjoe@feddit.uk
          link
          fedilink
          English
          arrow-up
          5
          ·
          edit-2
          4 months ago

          Of course UTF8 is Unicode. The cool thing about UTF8 is that is ASCII, until it isn’t. It cover all of Unicode, but doesn’t need any bloat if you are just doing latin characters. Plus UTF8 will seamless go through ASCII code and things that understand it do, others just have patches of jibberish, but still work otherwise. It’s a way better approach. Better legacy handling and more efficient packing for latin languages. Which is why it “won” out. UTF16 pretty much only exists in Windows because it’s legacy it will be hard for it to escape.

          LUKS is by far the most common encryption setup on Linux. It’s done at block layer and the filesystem doesn’t know about it. No effect of filename length, or anything else.

          • rdri@lemmy.world
            link
            fedilink
            English
            arrow-up
            2
            arrow-down
            4
            ·
            4 months ago

            None of that helps or discards anything I’ve said above. But it allows to say that NTFS limit can be basically 1024 bytes. Just because you like what UTF-8 offers it doesn’t solve hurdles with Linux limits.

            LUKS is commonly used but not the only one.

            • jabjoe@feddit.uk
              link
              fedilink
              English
              arrow-up
              2
              ·
              edit-2
              4 months ago

              Linus’s VFS is where the 256 limit is hard. Some Linux filesystem, like RaiserFS, go way beyond it. If it was a big deal, it would be patched and widely spread. The magic of Linux, is you can try it yourself, run your own fork and submit patches.

              LUKS is the one to talk about as the others aren’t as good an approach in general. LUKS is the recommended approach.

              Edit: oh and NTFS is 512 bytes. UTF16 = 16bit = 2 bytes. 256*2 = 512

              • rdri@lemmy.world
                link
                fedilink
                English
                arrow-up
                1
                arrow-down
                1
                ·
                4 months ago

                The magic of Linux, is you can try it yourself, run your own fork and submit patches.

                Well it should probably go further and offer more of another kind of magic - where stuff works as user expects it to work.

                As for submitting patches, it sounds like you suggest people play around and touch core parts responsible for file system operations. Such an advice is not going to work for everyone. Open source software is not ideal. It can be ideal in theory, but that’s it.

                LUKS is the one to talk about as the others aren’t as good an approach in general. LUKS is the recommended approach.

                It looks like there are enough use cases where some people would not prefer LUKS.

                • jabjoe@feddit.uk
                  link
                  fedilink
                  English
                  arrow-up
                  1
                  ·
                  4 months ago

                  I have lived quite happily, on pretty much only open source for over 12 years now. Professionally and at home (longer at home). Debian I put with Wikipedia as an example of what humans can be.

                  There is no gate keepers in who can do what where. Only on who will accept the patches. Projects fork for all kinds of reasons, though even Google failed to fork the Linux kernel. If there is some good patch to extend the filename limit, it will get in. Enough pressure and maybe the core team of that subsystem will do it.

                  Open source already won I’m affriad. Most of the internet, IoT to super computers, runs open source. Has been that way for a while. If you use Windows, fine, but it is just a consumer end node OS for muggels. 😉

                  If you setup a new install, and say you want encryption, LUKS is what you get.

                  • rdri@lemmy.world
                    link
                    fedilink
                    English
                    arrow-up
                    1
                    ·
                    4 months ago

                    Does it look like I advocate for windows? Nah.

                    Open source is great when it works. “If there is some good patch…” and “Enough pressure and maybe…” is the sad reality of it. Why would people need to put pressure on order for Linux to start supporting features long available in file systems it supports? Why would I, specifically, should spend time on it? Does Linux want to become an os for everyone or only for people experimenting with dangerous stuff that make them lose data sometimes?

                    Don’t get me wrong, Linux is good even now. But there is no need to actively deny points of possible improvement. When they ask you how great XFS is compared to others you shouldn’t throw “exbibytes” word, you should first think what problems people might have with it, especially if they want to switch from windows.

                    If you setup a new install, and say you want encryption, LUKS is what you get.

                    And if I want to only encrypt some files? I need to create a volume specifically for that, right? Or I could just use something else.

    • magic_smoke@links.hackliberty.org
      link
      fedilink
      English
      arrow-up
      10
      arrow-down
      1
      ·
      edit-2
      5 months ago

      Linux might have a similar file name restriction, but what’s more important IMO, is the obnoxious file path restrictions NTFS has.

      Naming a file less than 255 chars is a lot easier than keeping its path down.

      Limiting file name is one thing, but dealing with limited path lengths when trying to move a custies folder full of subdir on subdirs is obnoxious when the share name its being transferred to makes it just too long.

      • fakeaustinfloyd@ttrpg.network
        link
        fedilink
        English
        arrow-up
        1
        ·
        edit-2
        4 months ago

        Can’t you work around that with the extended length prefix of \\?\ (\\?\C:\whateverlongpathhere\)? Though admittedly, it is a pain in the ass to use.

        (edited for clarity and formatting)

      • rdri@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        arrow-down
        3
        ·
        5 months ago

        True. Problem is, moving from more restricted system to less restricted system is a breeze, but painful otherwise. Linux is in a position where it would benefit from any little thing. People trying to switch to Linux will find path length feels like an upgrade, but file name limitation is clearly a downgrade.

          • rdri@lemmy.world
            link
            fedilink
            English
            arrow-up
            5
            arrow-down
            2
            ·
            edit-2
            5 months ago

            I guess something like ようこそ『追放者ギルド』へ ~無能なSランクパーティがどんどん有能な冒険者を追放するので、最弱を集めて最強ギルドを創ります~ 1 (ドラゴンコミックスエイジ) - 荒木 佑輔.epub - 92 characters, but 246 bytes. Where on Windows this file hits 35% of the limit, on Linux it hits 96%.

            The file is not some rare case. It’s from a torrent, uploaded somewhere just today. There are tons of files like this with slightly or much longer names. As of 2024, they can’t be served by Linux. Not in a pure file form, that is.

      • rdri@lemmy.world
        link
        fedilink
        English
        arrow-up
        5
        arrow-down
        2
        ·
        5 months ago

        Linux file system is shit? Otherwise I don’t get why you’ve used the “because” word. NTFS is certainly not shit.

        • Vilian@lemmy.ca
          link
          fedilink
          English
          arrow-up
          6
          ·
          edit-2
          5 months ago

          I re-read your comment and i completely misunderstood it sorry it’s 4am