utf8 is not a recommended IO charset for FAT filesystems

Forum Forums Official Releases antiX-21/22 “Grup Yorum” utf8 is not a recommended IO charset for FAT filesystems

  • This topic has 9 replies, 4 voices, and was last updated Sep 24-6:53 pm by oops.
Viewing 10 posts - 1 through 10 (of 10 total)
  • Author
    Posts
  • #89633
    Member
    Wallon

      Dear users,

      I have this message in my dmesg file.

      
      [   18.268470] FAT-fs (sda3): utf8 is not a recommended IO charset for FAT filesystems, filesystem will be case sensitive!
      

      sda1 (swap) and sda2 (root,home…) are in my fstab.
      sda3 is not in my fstab.

      I don’t understand this message well.
      Is it dangerous for my data?
      Is there anything I need to change in antiX and how do I do it?

      Best regards,
      Wallon

      
      $ sudo inxi -Fxxz
      
      System:
        Kernel: 5.10.142-antix.2-amd64-smp arch: x86_64 bits: 64 compiler: gcc
          v: 10.2.1 Desktop: IceWM v: 2.9.9 dm: slimski
          Distro: antiX-21_x64-full Grup Yorum 31 October 2021
          base: Debian GNU/Linux 11 (bullseye)
      Machine:
        Type: Laptop System: Dell product: Latitude 5590 v: N/A serial: <filter>
          Chassis: type: 10 serial: <filter>
        Mobo: Dell model: 0VYDFF v: A00 serial: <filter> UEFI-[Legacy]: Dell
          v: 1.24.0 date: 07/12/2022
      Battery:
        ID-1: BAT0 charge: 61.2 Wh (100.0%) condition: 61.2/68.0 Wh (90.0%)
          volts: 8.2 min: 7.6 model: SMP DELL GD1JP65 serial: <filter> status: full
      CPU:
        Info: quad core model: Intel Core i5-8350U bits: 64 type: MT MCP
          arch: Coffee Lake rev: A cache: L1: 256 KiB L2: 1024 KiB L3: 6 MiB
        Speed (MHz): avg: 3452 high: 3601 min/max: 400/3600 cores: 1: 2413
          2: 3601 3: 3600 4: 3600 5: 3600 6: 3601 7: 3600 8: 3601 bogomips: 30399
        Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx
      Graphics:
        Device-1: Intel UHD Graphics 620 vendor: Dell driver: i915 v: kernel
          arch: Gen9.5 ports: active: eDP-1 empty: DP-1,HDMI-A-1,HDMI-A-2
          bus-ID: 00:02.0 chip-ID: 8086:5917
        Device-2: Microdia Integrated_Webcam_HD type: USB driver: uvcvideo
          bus-ID: 1-5:2 chip-ID: 0c45:6717
        Display: x11 server: X.Org v: 1.20.11 driver: X: loaded: intel gpu: i915
          display-ID: :0.0 screens: 1
        Screen-1: 0 s-res: 1920x1080 s-dpi: 96
        Monitor-1: eDP-1 mapped: eDP1 model: BOE Display 0x06cb res: 1920x1080
          dpi: 143 diag: 395mm (15.5")
        OpenGL: renderer: Mesa Intel UHD Graphics 620 (KBL GT2)
          v: 4.6 Mesa 20.3.5 direct render: Yes
      Audio:
        Device-1: Intel Sunrise Point-LP HD Audio vendor: Dell
          driver: snd_hda_intel v: kernel bus-ID: 00:1f.3 chip-ID: 8086:9d71
        Sound Server-1: ALSA v: k5.10.142-antix.2-amd64-smp running: yes
      Network:
        Device-1: Intel Ethernet I219-LM vendor: Dell driver: e1000e v: kernel
          port: N/A bus-ID: 00:1f.6 chip-ID: 8086:15d7
        IF: eth0 state: up speed: 1000 Mbps duplex: full mac: <filter>
        Device-2: Intel Wireless 8265 / 8275 driver: iwlwifi v: kernel pcie:
          speed: 2.5 GT/s lanes: 1 bus-ID: 02:00.0 chip-ID: 8086:24fd
        IF: wlan0 state: down mac: <filter>
      Drives:
        Local Storage: total: 298.23 GiB used: 46.8 GiB (15.7%)
        ID-1: /dev/nvme0n1 vendor: SK Hynix model: PC401 NVMe 256GB
          size: 238.47 GiB speed: 31.6 Gb/s lanes: 4 serial: <filter> temp: 23.9 C
        ID-2: /dev/sda type: USB vendor: Samsung model: Flash Drive
          size: 59.75 GiB serial: <filter>
      Partition:
        ID-1: / size: 35 GiB used: 7.33 GiB (21.0%) fs: f2fs dev: /dev/sda2
      Swap:
        ID-1: swap-1 type: partition size: 1 GiB used: 0 KiB (0.0%) priority: -2
          dev: /dev/sda1
      Sensors:
        System Temperatures: cpu: 47.0 C pch: 40.0 C mobo: N/A
        Fan Speeds (RPM): cpu: 0
      Info:
        Processes: 204 Uptime: 19m Memory: 15.24 GiB used: 1.29 GiB (8.5%)
        Init: SysVinit v: 2.96 runlevel: 5 default: 5 Compilers: gcc: 10.2.1
        alt: 10 Packages: apt: 1643 Shell: Bash v: 5.1.4 running-in: roxterm
        inxi: 3.3.19
      
      #89639
      Member
      oops
        Helpful
        Up
        0
        ::

        Hi,
        It is into the antix kernel configuration:

        CONFIG_FAT_DEFAULT_IOCHARSET=”ascii” (or: “iso8859-1” for Latin-1 ou Europe occidentale)
        into antiX kernel it is “utf8”

        Default iocharset for FAT (FAT_DEFAULT_IOCHARSET)
        CONFIG_FAT_DEFAULT_IOCHARSET:
        Set this to the default input/output character set you'd
        like FAT to use. It should probably match the character set
        that most of your FAT filesystems use, and can be overridden
        with the "iocharset" mount option for FAT filesystems.
        Note that "utf8" is not recommended for FAT filesystems.
        If unsure, you shouldn't set "utf8" here - select the next option
        instead if you would like to use UTF-8 encoded file names by default.
        See <file:Documentation/filesystems/vfat.rst> for more information.
        Enable any character sets you need in File Systems/Native Language
        Support.
        Symbol: FAT_DEFAULT_IOCHARSET [=iso8859-1]

        ex: to see into your kernel config the default setting:
        zcat /proc/config.gz | grep _DEFAULT_IOCHARSET
        CONFIG_FAT_DEFAULT_IOCHARSET=”iso8859-1″
        CONFIG_EXFAT_DEFAULT_IOCHARSET=”utf8″

        … So only anticapitalista know the why.

        • This reply was modified 7 months, 2 weeks ago by oops.
        • This reply was modified 7 months, 2 weeks ago by oops.
        #89643
        Forum Admin
        anticapitalista
          Helpful
          Up
          0
          ::

          … So only anticapitalista know the why.

          This will be changed in next kernel update.

          Philosophers have interpreted the world in many ways; the point is to change it.

          antiX with runit - leaner and meaner.

          #89645
          Member
          Wallon
            Helpful
            Up
            0
            ::

            Thank you both.

            Dear oops,

            Here is the result of the command on my laptop;

            
            $ zcat /proc/config.gz | grep _DEFAULT_IOCHARSET
            CONFIG_FAT_DEFAULT_IOCHARSET="utf8"
            CONFIG_EXFAT_DEFAULT_IOCHARSET="utf8"
            

            I see that you have this as your answer;
            CONFIG_FAT_DEFAULT_IOCHARSET=”iso8859-1″

            This makes me think that I never install the language packages;
            fr_BE@euro ISO-8859-15
            fr_BE ISO-8859-1

            I only install the following two packages;
            fr_BE.UTF-8 UTF-8
            en_US.UTF-8 UTF-8

            I thought Debian only worked with UTF-8 but you explain that a kernel also works with iso8859-1.

            Is it necessary to install all 3 fr_BE packages for the kernel to work properly or is it irrelevant. There is no relation between the both?

            Linux is not always easy for foreign languages.

            Best regards,
            Wallon

            • This reply was modified 7 months, 2 weeks ago by Wallon.
            #89648
            Member
            oops
              Helpful
              Up
              0
              ::

              …@Wallon

              It is just a case sensitive behavior. (do not to much worry about that)

              You have to wait the new antiX kernel or mount by hand your FAT system with the right option:
              “… and can be overridden with the “iocharset” mount option for FAT filesystems.”

              #89650
              Member
              Wallon
                Helpful
                Up
                0
                ::

                Dear oops,

                Yes I understood that I had to wait for the new kernel.

                But if you reread the beginning of this thread, my sda3 (FAT32) partition on my Samsung USB stick is not in my fstab. It is mounted automatically by antiX. I have no control over mounting this partition.

                Best regards,
                Wallon

                #89651
                Member
                Robin
                  Helpful
                  Up
                  1
                  ::

                  This will be changed in next kernel update.

                  @anticapitalista : Please be carefully with changing this setting. It can cause a lot of trouble with invalid characters when storing or copying files to an FAT file system then, when the filename contains characters other than the ones supported by the respective code page of the user. Remeber all the question marks in file names which turn up when the code page doesn’t match… This might even make fail scripts or programs which rely on consistent presence of UTF-8 in antiX by now. So please check out the consequences of this change before applying it. I believe it doesn’t matter whether it is “not recommended” to use it. It simply works fine the way it is, that’s what counts.

                  FAT directory entries do support only short names (the old DOS 8.3 format) anyway, in the current codepage. Wheras FAT32 and VFAT allow long filenames in UTF format if I’m not mistaken. So antiX should make use of this feature, whatever warnings are displayed.

                  Windows is like a submarine. Open a window and serious problems will start.

                  #89659
                  Member
                  oops
                    Helpful
                    Up
                    0
                    ::

                    … This remains the good practice (ascii instead utf8 for FAT), but maybe only for the antiX23 version and kernels.
                    (for the compatibility with the others distribs too)

                    • This reply was modified 7 months, 2 weeks ago by oops.
                    #89662
                    Member
                    Wallon
                      Helpful
                      Up
                      0
                      ::

                      I did a test with a file on my FAT32 partition.
                      I created a file name with the symbols used in our language and not in English.
                      In particular the Euro € of my Azerty keyboard [Alt Gr + e] and the cent ¢ of my Azerty keyboard [Alt Gr + c].
                      I can copy and modify this file. I don’t see any problem.

                      Here is the name of my file;

                      New_file-test on FAT32 with Latin symbols € ¢ ã é ç è ù à î ï $ µ £ , ;.txt

                      But on my FAT32 partition, I cannot create a “c:” directory.

                      On my F2FS partition, I am able to create a “c:” directory (as a mount point) to remind me that it is my internal drive.

                      As Robin says, this may be a false warning.

                      #89664
                      Member
                      oops
                        Helpful
                        Up
                        0
                        ::


                        As Robin says, this may be a false warning.

                        It is not a false warning, it is a good practice.

                      Viewing 10 posts - 1 through 10 (of 10 total)
                      • You must be logged in to reply to this topic.