Free Downloads, Community Forum,
FAQs and Developer Resources


Make /Tools Your Home | Link to us

Today's posts | Posts since last visit | Most Active Topics

All Forums Register Login Search Subscriptions My Profile Inbox
Tool Warehouse FAQs Resources Help Member List Address Book Logout

Filesystem case sensitivity

 
Logged in as: Guest
Users viewing this topic: none
  Printable Version
All Forums >> [SFU / Interix / SUA Technology] >> Tools Discussion Forum >> Filesystem case sensitivity Page: [1]
Login
Message << Older Topic   Newer Topic >>
Filesystem case sensitivity - Jun. 11, '06, 11:20:06 AM   
mnorris

 

Posts: 22
Joined: Jul. 16, '04,
Status: offline
I have SFU 3.5 installed with Windows XP pro SP2. When I installed SFU, I selected the option is use case sensitivity. Currently SFU consoles are case sensitive and Windows XP is case insensitive. In FAQ 1.13 it is recommended that the kernal be set for case sensitivity. I assume that if the kernal is set to be case sensitive, all Windows programs will become case sensitive with respect to file names, path names and drive names. This seems to be a significant departure from normal Windows operation. Can you expand on the recommendation in FAQ 1.13.

A point of note is that I principally use this machine as a Windows device which has Unix abilities.

Regards,
Mike Norris

_____________________________

Mnorris
Post #: 1
RE: Filesystem case sensitivity - Jun. 11, '06, 1:25:48 PM   
Rodney

 

Posts: 3728
Joined: Jul. 9, '02,
From: /Tools lab
Status: offline
The registry setting affects all subsystems, not just Interix, because the registry
setting is used by those "underlayers" (API's in the kernel) that provide the service
to the the system calls. Win32 can't properly use the system in case sensitive mode.
By properly I mean that if you have "Makefile" and "makefile" you will always get
the info about "Makefile" even if you ask for "makefile". Some Win32 based emulators
(such as U/Win) go through some serious twisting to be able to tell the difference.
Anyway, Win32 will do "case preserve". So if you create a file that doesn't exist
funkily named "MaKeFiLe" those will be the case letters it uses. But if you access
it by any of the names "MaKeFiLe", Makefile" or "makefile" it references the same file.
Win32 just doesn't "understand" that it is on a case sensitive filesystem rather
than a case preserving fileystem because it has never been programmed to understand.

Unix systems expect that you will be on a case sensitive filesystem. This is important
for many operations. So "Makefile" and "makefile" are different files (and expected to
be by the utilities). So when make runs it checks for a "makefile" before
checking for a "Makefile" because, as the man page says, the the priority of operations
for running recipes. If case INsensitive then this is messed up. There are a host of
other things messed up that you may or may not hit. But this doesn't mean that you can't
running fairly happy in this state a lot of the time. I'll note that any SMB drive
access forces case preserving regardless of the kernel setting (hence NFS often being
recommended).

Microsoft, as you may have noticed during the installation, has that warning saying it
is a security concern for Win32. The message, in my opinion, is overly doomish. I always
recommend that case sensitive be active. And, Microsoft does have a few documents that also
recommend case sensitive be active for best behaviour. That MS warning is more a CYA thing.
As long a Win32 programs stay out of the disk space where Interix stuff is then both will
be happier (I refer here also to that File Explorer changing ACL's thing). However, in most
circumstances even if Win32 programs look at files in Interix space there is no problem
because very few instances of "makefile/Makefile" happen, and where they do the Win32 programs
don't do anything with these files. The doom-message is to apply to a "trojan-horse" situation
where a file "foo" exists and someone, using Interix, adds "FOO" with something nasty in it.
Of course if this did happen then you have a bigger problem like security access. I've found
and removed several instances of spyware that was trivially found using common Interix
utilities that Win32 had little hope with (i.e. the "hosts" file attack that's used by some
spyware).

So you have to take it as a balance of risks.
If you run Internet Explorer (IE) as your regular browser that has proven to be risky too.
I'll place the use of IE as at least 1000 times more risky than case sensitive being on.
And by 1000 times I am meaning in the statistical sense which is a large margin of difference.
So for every 1000 IE actual risk occurrences 1 case sensitive *might* happen.

(in reply to mnorris)
Post #: 2
RE: Filesystem case sensitivity - Jun. 13, '06, 2:53:06 PM   
markfunk

 

Posts: 673
Joined: Mar. 31, '03,
Status: offline
assume that if the kernal is set to be case sensitive, all Windows programs will become case sensitive with respect to file names

This registry setting is for non-win32 subsystems only.
Don't get hung-up on the "Kernel" in the registry key name. That is misleading.

The default behaviour before win-xp was for non-win32 subsystems to be case-sensitive.
For XP, the default changed to case-insensitive - thus this registry key to reset to the old behaviour.

There is a valid security issue when you have multiple subsystems running concurrently
that have different case sensitivity behaviours. (The security issue is with the subsystem
that is case-insensitive.)
That's why the XP, win2003 default is to set all subsystems to have the same behaviour.
This is good for the majority of Windows users.
But for those users wanting to use SFU/SUA, you must explicitly turn on the old behaviour
and live with the security concern on the Win32 subsystem.

Note:
the case-sensitive behaviour only applies to local operations, not networked.
The Microsoft network filesystem re-director is always case-insensitive.

(in reply to Rodney)
Post #: 3
RE: Filesystem case sensitivity - Sep. 2, '06, 11:43:16 AM   
eperea

 

Posts: 71
Joined: Apr. 6, '05,
Status: offline
HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\kernel\obcaseinsensitive

is no longer on my system, probably thanks to "Norton Protection". I used to have to change the key every few days, but this time it was removed entirely. I assume it was type REG_DWORD? Anyhow, it would be helpful to update the FAQ to mention that it may need to be added rather than merely changed.

(And Peter, I hope you enjoy spending Symantec's money, curse you! :-)

(in reply to Rodney)
Post #: 4
RE: Filesystem case sensitivity - Sep. 2, '06, 12:18:27 PM   
Rodney

 

Posts: 3728
Joined: Jul. 9, '02,
From: /Tools lab
Status: offline
Correct. It's a "DWORD".

(in reply to mnorris)
Post #: 5
Page:   [1]
All Forums >> [SFU / Interix / SUA Technology] >> Tools Discussion Forum >> Filesystem case sensitivity Page: [1]
Jump to:





New Messages No New Messages
Hot Topic w/ New Messages Hot Topic w/o New Messages
Locked w/ New Messages Locked w/o New Messages
 Post New Thread
 Reply to Message
 Post New Poll
 Submit Vote
 Delete My Own Post
 Delete My Own Thread
 Rate Posts


Search All Forums -

Advanced search


SPONSORS



Forum Software © ASPPlayground.NET Advanced Edition 2.5 ANSI

0.047