Hi,
motivation
I am currently working on a wrapper for mount_msdosfs, because the normal binary has Problems if I mount a device with msdos filesystem that has files/folders with chinese/japanese names in it, especially if those were created by windows. I am not quiet sure, but I think it is the fact that windows is using UTF-16 as default.
If i mount an msdos device which has those by windows created names/files then in nautilus for example they will be displayed with this ending to the file/folder "(invalid encoding)"
Idea
Now I am using sysutils/fusefs-fusexmp_fh to loopback the mounted filesystem to a 2nd mount with charset conversion.
The commands are as follows:
So now I have renamed the mount_msdosfs and instead created a wrapper with the originally name, which does the 2 above listed commands automatically.
So whenever I now want to mount a msdos device I do:
And my wrapper does the work for me. This works without any problems.
Problem
I have named the wrapper mount_msdosfs, so that hal can use it in order to automount my devices.
The problem is, when HAL invokes the command, everything gets mounted, but the 2nd fuse mount will not display any folders/files with chinese/japanese names in it, not even with the suffix "(invalid encoding)".
From my debug output of the wrapper I see, that the wrapper does exactly the same when invoked by HAL, as it does when I invoke it manually with the root user.
So why is here are difference? Why are those files/folders not displayed when HAL invokes my wrapper? Is there any location I can check for errors on this?
Could it be a rights problem with HAL?
motivation
I am currently working on a wrapper for mount_msdosfs, because the normal binary has Problems if I mount a device with msdos filesystem that has files/folders with chinese/japanese names in it, especially if those were created by windows. I am not quiet sure, but I think it is the fact that windows is using UTF-16 as default.
If i mount an msdos device which has those by windows created names/files then in nautilus for example they will be displayed with this ending to the file/folder "(invalid encoding)"
Idea
Now I am using sysutils/fusefs-fusexmp_fh to loopback the mounted filesystem to a 2nd mount with charset conversion.
The commands are as follows:
Code:
root> mount_msdosfs -L zh_CN.GBK /dev/msdosfs/CW-P7EOS-X /mnt/tmp
root> fusexmp_fh -oallow_other,modules=iconv:subdir,from_code=GBK,subdir=/mnt/tmp /media/CW-P7EOS-X
So now I have renamed the mount_msdosfs and instead created a wrapper with the originally name, which does the 2 above listed commands automatically.
So whenever I now want to mount a msdos device I do:
Code:
root> mount_msdosfs /dev/msdosfs/CW-P7EOS-X /media/CW-P7EOS-X
Problem
I have named the wrapper mount_msdosfs, so that hal can use it in order to automount my devices.
The problem is, when HAL invokes the command, everything gets mounted, but the 2nd fuse mount will not display any folders/files with chinese/japanese names in it, not even with the suffix "(invalid encoding)".
From my debug output of the wrapper I see, that the wrapper does exactly the same when invoked by HAL, as it does when I invoke it manually with the root user.
So why is here are difference? Why are those files/folders not displayed when HAL invokes my wrapper? Is there any location I can check for errors on this?
Could it be a rights problem with HAL?