[Pkg-sysvinit-devel] Bug#514209: initscripts: doesn't fsck /dev/disk/by-label with spaces

Arthur Marsh arthur.marsh at internode.on.net
Tue Jul 7 20:52:45 UTC 2009



Petter Reinholdtsen wrote, on 08/07/09 05:48:
> [Arthur Marsh]
>> I added "-r" to the "read" command in /etc/init.d/checkroot.sh, then added:
>>
>> /dev/disk/by-label/W-98\x20SE /win98se vfat  
>> defaults,users,uid=65534,gid=65534,umask=000,shortname=win95        0     2
> 
> Btw, where did you find the \x20 notation?  The one I know about uses
> \040 for space.  Does it work any better with
> /dev/disk/by-label/W-98\040SE?
> 
> Happy hacking,

In the directory listing:

# ls -al /dev/disk/by-label
total 0
drwxr-xr-x 2 root root  60 2009-07-08 14:43 .
drwxr-xr-x 6 root root 120 2009-07-08 14:43 ..
lrwxrwxrwx 1 root root  10 2009-07-08 14:43 W-98\x20SE -> ../../hdc1
victoria:/usr/src/sound/grub2svn# fsck.vfat -a '/dev/hdc1'
dosfsck 3.0.3, 18 May 2009, FAT32, LFN
/dev/hdc1: 59394 files, 3478308/3577496 clusters
victoria:/usr/src/sound/grub2svn# fsck.vfat -a /dev/disk/by-label/W-98\040SE
dosfsck 3.0.3, 18 May 2009, FAT32, LFN
open /dev/disk/by-label/W-98040SE:No such file or directory

I also tried:

strace fsck.vfat -a '/dev/disk/by-label/W-98 SE'

and received the output:

open("/dev/disk/by-label/W-98 SE", O_RDWR|O_LARGEFILE) = -1 ENOENT (No 
such file or directory)

Interestingly, when I use /dev/disk/by-label/W-98\x20SE in /etc/fstab, 
the mount command using the mount point works, but if I use 
/dev/disk/by-label/W-98\040SE in /etc/fstab, the mount command using the 
mount point fails.

To successfully mount from the command line (not using the /etc/fstab 
entries, I have to do:

# mount '/dev/disk/by-label/W-98\x20SE' /win98se
# mount|grep win98se
/dev/hdc1 on /win98se type vfat (rw)

as the following fails:

# mount '/dev/disk/by-label/W-98 SE' /win98se
mount: special device /dev/disk/by-label/W-98 SE does not exist

Regards,

Arthur.





More information about the Pkg-sysvinit-devel mailing list