openzfsonwindows / ZFSin

OpenZFS on Windows port
https://openzfsonwindows.org
1.2k stars 68 forks source link

Cannot read/write files with certain characters #247

Open superbonaci opened 4 years ago

superbonaci commented 4 years ago

Can't read or write this file to zfs pool (the name is the problem): EXO 엑소 Obsession MV (2160p_24fps_VP9 LQ-128kbit_AAC).mkv

Unusual characters on filename fail on ZFS on Windows

Using version OpenZFSOnWindows-debug-20200402.exe.

lundman commented 4 years ago

Ah yes, I've not looked at any of the character encoding stuff, so it isn't entirely surprising. You should try creating a dataset with normalization=formD as well, in case it works better.

superbonaci commented 4 years ago

Recreated pool with zfs for linux instead of bsd, now I get this error:

   pool: zfs
     id: 13344720786029311627
  state: UNAVAIL
status: The pool can only be accessed in read-only mode on this system. It
        cannot be accessed in read-write mode because it uses the following
        feature(s) not supported on this system:
        org.zfsonlinux:userobj_accounting
        org.zfsonlinux:project_quota
action: The pool cannot be imported in read-write mode. Import the pool with
        "-o readonly=on", access the pool on a system that supports the
        required feature(s), or recreate the pool from backup.
 config:

        zfs                    UNAVAIL  unsupported feature(s)
          /dev/physicaldrive4  ONLINE
lundman commented 4 years ago

Yes, your Linux build has more features, you'll need to re-create it without using userobj and project, quotas.

superbonaci commented 4 years ago

Finally re-created it with freebsd and just -O normalization=formD, but now the error is different when trying to copy that file from pool to desktop:

An unexpected error is keeping you from copying the folder. If you continue to receive this error, you can use the error code to search for help with this problem. Error 0x80004005: Unespecified error

lundman commented 4 years ago

You don't have to recreate the pool, you can also "zfs create -o normalization=formD pool/formdtest" or similar

but yes, does seem to suggest that the locale code needs a bit of attention