From: "Randy.Dunlap" <rdunlap@xenotime.net>
To: dreiners@iastate.edu
Cc: linux-kernel@vger.kernel.org
Subject: Re: VFAT: Can't create file named 'aux.h'?
Date: Mon, 20 Mar 2006 13:45:33 -0800 [thread overview]
Message-ID: <20060320134533.febb0155.rdunlap@xenotime.net> (raw)
In-Reply-To: <1142890822.5007.18.camel@localhost.localdomain>
On Mon, 20 Mar 2006 15:40:22 -0600 Dirk Reiners wrote:
>
> Hi everybody,
>
> while trying to back up a couple Linux directories to a FAT disk I ran
> into a weird situation: I can't create a file called aux.h on the FAT
> system!
>
> Here's how to reproduce it:
>
> cd /tmp
> dd if=/dev/zero of=vfat_img bs=1M count=1
> /sbin/losetup /dev/loop7 vfat_img
> /sbin/mkfs.vfat /dev/loop7
> mkdir vfat_mnt
> mount -t vfat /dev/loop7 vfat_mnt
> touch vfat_mnt/auy.h
> touch vfat_mnt/aux.h
>
> auy.h is happily created, aux.h gives "touch: setting times of
> `vfat_mnt/aux.h': No such file or directory", and no file is created.
> This happened to me on the system described below, but I could reproduce
> the same behavior on a system booted from RHEL4 CDs, an old Knoppix
> (3.4), and friends could reproduce it on other systems, too, so it
> doesn't seem to be very related to a specific version.
>
> As a workaround I tar/bzipped my dirs, but that behavior seems very
> unusual and doesn't inspire a lot of confidence in vfat... What am I
> missing here?
"AUX" is (was) a reserved "filename" in DOS. The Linux MS-DOS
filesystem preserves (protects) that. The extension part does not
matter; it only checks the first 8 characters of the filename.
You'll need to use a different filesystem or filename...
fs/msdos/namei.c:
for (reserved = reserved_names; *reserved; reserved++)
if (!strncmp(res, *reserved, 8))
return -EINVAL;
/* MS-DOS "device special files" */
static const unsigned char *reserved_names[] = {
"CON ", "PRN ", "NUL ", "AUX ",
"LPT1 ", "LPT2 ", "LPT3 ", "LPT4 ",
"COM1 ", "COM2 ", "COM3 ", "COM4 ",
NULL
};
---
~Randy
next prev parent reply other threads:[~2006-03-20 21:43 UTC|newest]
Thread overview: 33+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-03-20 21:40 Dirk Reiners
2006-03-20 21:45 ` Randy.Dunlap [this message]
2006-03-20 21:50 ` H. Peter Anvin
2006-03-21 7:57 ` Jan-Benedict Glaw
2006-03-21 17:41 ` Jan Engelhardt
2006-03-21 17:44 ` H. Peter Anvin
2006-03-21 17:58 ` Jan Engelhardt
2006-03-21 18:07 ` H. Peter Anvin
2006-03-21 18:11 ` Jan Engelhardt
2006-03-21 18:54 ` H. Peter Anvin
2006-03-21 19:06 ` Jan Engelhardt
2006-03-21 19:15 ` H. Peter Anvin
2006-03-21 19:55 ` Vadim Lobanov
2006-03-21 20:05 ` Hua Zhong
2006-03-21 19:57 ` John Stoffel
2006-03-21 20:02 ` Phillip Susi
2006-03-21 21:20 ` H. Peter Anvin
2006-03-22 19:39 ` OGAWA Hirofumi
2006-03-22 21:59 ` Phillip Susi
2006-03-22 22:22 ` linux-os (Dick Johnson)
2006-03-23 1:15 ` Phillip Susi
[not found] ` <442286CD.6070200@lsrfire.ath.cx>
2006-03-23 14:56 ` OGAWA Hirofumi
2006-03-22 21:57 ` Ulrich Mueller
2006-03-21 21:04 ` Paul Jackson
2006-03-21 4:28 ` Phillip Susi
2006-03-21 5:24 ` Randy.Dunlap
2006-03-20 21:46 ` Jan Engelhardt
2006-03-21 5:49 ` Yaroslav Rastrigin
2006-03-21 11:46 ` linux-os (Dick Johnson)
2006-03-21 15:06 ` Phillip Susi
2006-03-21 15:18 ` Phillip Susi
2006-03-21 17:43 ` Jan Engelhardt
2006-03-20 22:07 ` linux-os (Dick Johnson)
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20060320134533.febb0155.rdunlap@xenotime.net \
--to=rdunlap@xenotime.net \
--cc=dreiners@iastate.edu \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®