Ubuntu installation breaks Japanese file names on FAT32 patition

Bug #217121 reported by Jun Kobayashi
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Ubuntu
Incomplete
Undecided
Rolf Leggewie
Nominated for Hardy by Jun Kobayashi

Bug Description

If FAT32 patition(s) are set to mount in Ubuntu installer(see attachment image), some files named in Japanese characters on these patitions are renamed improperly.
This is Critical problem especially for users who uses Windows 95/98/Me Japanese edition. Ubuntu instration can bang up their windows environment.

Desktop CD version:
hardy-desktop-i386.iso (build on 20080413)

Steps to Reproduce:
1. Boot PC with Ubuntu 8.10 Beta Desktop CD
2. Double click the 'Install' icon
3. Go to "Select disk(s) to patition" step
4. Select 'Manual' and continue
5. Set FAT32 patition mount to somewhere(see attachment image)
6. Continue and finish instration
7. Boot Ubuntu and reboot
8. Boot Windows on FAT32
9. You can see some files renamed like '000'

Revision history for this message
Jun Kobayashi (jkbys) wrote :
description: updated
Revision history for this message
Jun Kobayashi (jkbys) wrote :

I found /var/log/fsck/checkfs includes rename log. attaching.

Revision history for this message
Jun Kobayashi (jkbys) wrote :

This seem to be because running dosfsck on FAT32 patition when ubuntu boots up.
But dosfsck has problem of multibyte characters - see #49217.

Ubuntu installer writes /etc/fstab as follows:
# /dev/sda1
UUID=3F19-1E0C /windows vfat utf8,umask=007,gid=46 0 1

To avoid running dosfsck on FAT32, this should be as follws:
# /dev/sda1
UUID=3F19-1E0C /windows vfat utf8,umask=007,gid=46 0 0

I'm not sure this solution is harmful or not for other languages, but parhaps it is no need to run fsck on windows patition.

Revision history for this message
Rolf Leggewie (r0lf) wrote :

There has been a lot of discussion among the participants of Ubuntu Japanese Kaizen project which confirms the problem. I don't have Windows. Kobayashi-San is this a duplicate of bug 49327?

Revision history for this message
Rolf Leggewie (r0lf) wrote :

> Kobayashi-San is this a duplicate of bug 49327?

Sorry, I meant bug 49217

Revision history for this message
Rolf Leggewie (r0lf) wrote :

FWIW, a simple "sudo dosfsck /dev/sdb1" on my USB stick which has Japanese file names on it did not break things. But I have been mostly using this stick from Linux and only occasionally from a friend's computer with Windows.

Revision history for this message
Jun Kobayashi (jkbys) wrote : Re: [Bug 217121] Re: Ubuntu installation breaks Japanese file names on FAT32 patition

> > Kobayashi-San is this a duplicate of bug 49327?
>
> Sorry, I meant bug 49217
>

bug 49217 seem to be a part of this bug.
The point of this bug is Ubuntu instllation process breaks
user's windows environment.

Revision history for this message
Jun Kobayashi (jkbys) wrote :

> FWIW, a simple "sudo dosfsck /dev/sdb1" on my USB stick which has
> Japanese file names on it did not break things. But I have been mostly
> using this stick from Linux and only occasionally from a friend's
> computer with Windows.

dosfsck seems to break filenames which includes 0x5c, this code equal to
the code of \(back slash).
I made some files includes 0x5c in my USB stick on windows, and then
connected it to Ubuntu box, run "sudo dosfsck -a /dev/sdb1", and those
files are renamed.

$ sudo mount /dev/sdc1 /mnt
$ ls /mnt
噂.txt 暴.txt 禄.txt
$ sudo umount /mnt
$ sudo dosfsck -a /dev/sdc1
dosfsck 2.11, 12 Mar 2005, FAT32, LFN
/:5P2.txt
  Bad file name.
  Auto-renaming it.
  Renamed to 000\0000000.\000XT
/:6Qq.txt
  Bad file name.
  Auto-renaming it.
  Renamed to 001\0000000.\000XT
/:7c4.txt
  Bad file name.
  Auto-renaming it.
  Renamed to 002\0000000.\000XT
Performing changes.
/dev/sdc1: 3 files, 1/501040 clusters
$ sudo mount /dev/sdc1 /mnt
$ ls /mnt
000 001 002

Revision history for this message
Qishuai Liu (lqs) wrote :

Yes, this is a duplicate of bug 49327, and following is a patch (against dosfsck/check.c) to solve it.

- char *bad_chars = atari_format ? "*?\\/:" : "*?<>|\"\\/:";
+ char *bad_chars = atari_format ? "*?/:" : "*?<>\"/:";

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.