Maximillian Xavier Brampton
1998-Jan-26 21:23 UTC
DOS style 8.3 filename mangling issues??!
Okay, I've run through all of the tests in the DIAGNOSE, which my 1.9.18p1 SAMBA server (and NT4SP3/W95 clients) pass with flying colours. server box: Linux 2.0.33, gcc 2.7.2.2, libc 5.4.33, shadow, quota on (usr+grp), and my smb.conf is summarised (by testparm output) below: Problem is this: with respect to programs not long filename-aware/compliant, users cannot "double-click" on files (long filenames or files within long filenamed directories)... (Nor can they run older (pre-long filename supported) executables named or existing within long filenamed directories)... For instance: t:\Security Software\test\test.exe will fail to load (test.exe being a 3.1X Windows app).... but if I change the directory name of "Security Software" to "Security"... everything's peachy and glorious. Same thing happens inside of an older version of Protel (Circuit PCB layout program). Users double-click on a long filename, the Protel program launches, but never opens up the file. User must go through the File...menu (Open), whereupon the usual 8.3 mangled crap appears, and the user can select and edit them just fine. But double-clicking on the file in NT Explorer doesn't seem to work. I dunno who is dropping the ball with respect to the file handling. BTW, this behaviour is not present on local NTFS volumes, or NT served filesystems. By the way... as a word (or a few more) of strong compliments and encouragements... compiling and installing samba (this latest release) was painless and easy. It took me longer to hunt down a quota package than to compile the entire setup and get it going. I started with the sample config file, and followed the instructions (NT4 or OSR2 users DEFINITELY save yourself pain by using smbpasswd, and security=user, if at all feasible). I can't tell you the joy it gave me after setting up all of my NT4/OSR2 users up on the linux box with account names and passwords (smbpasswd) to be the same as the one they use for their NT Domain login password how everything just worked with zero user intervention or disruptions. It just plain worked without a single hassle. Hell, I was expecting to have to enter usernames and passwords on the clients again to set them up, and I was denied even THAT "privilege" :))) It handed off the requests transparently as it would for any "real" NT server. Performance is extrememly good. While it's difficult to directly compare machine to machine, etc.... There's no question samba is at least as fast as NT's file server, but in looking at network utilisation and throughput, I'd daresay Linux (with its much more intelligent usage of memory, buffering, caching, and overall superior TCP-IP protocol implementation) is faster in any test. I see near perfect ethernet speeds between decent clients and the Linux box, which I rarely did with NT's file server. It's also very telling to note that the Linux box (with its FULL suite of internet services running, including Mark Crispin's IMAP4r1 package for mail, SSL-enabled Apache (SSLeay is very cool!), ssh, LDAP (slapd), the whole nine yards... runs on a machine with 1/2 the physical memory of the NT4 server. And of course, there's no question about "machine thrash" comparisons. When I point some fast clients at NT4, it grinds to a bloody (and unusable) halt during the battery. (It's a SCSI drive based server with comparable PCI ethernet card as the Linux box), while with Samba I've rarely seen more than 8-10% CPU utilisation, and normal client operations seem relatively unaffected by the 1.05MB/sec sustained traffic going on. (You can see the difference starkly in the way the two os's handle disk i/o - the drive light on the linux box doesn't stay lit so long (lots of buffering and write holding-before-committing), under NT it seems to be bashing the drive constantly. I know ext2 doesn't frag anywhere nearly as badly as NTFS seems to... But who knows the real reasons why... it's simply what I observe... (the Linux has much more files on it than the NT box does, although aggregate storage sizes are about the same -- 9GB or so). I dunno, I'm sure the difference (overall) isn't too dramatic, but... I'm content that you could run a good sized enterprise server on very modest hardware with the Linux solution, compared with the NT one. And one thing is most certainly true: you won't have "Registry problems", needs to reinstall your OS for no reason, and no more need to spend another dime on upgrades you shouldn't have to buy [anyone seen "Forever Never Dies"? That software exec reporting how they released software with dozens of bugs, ensuring years of "upgrades" must have resonated with not a few system admins.] Anyhow... I'll climb down from my little soapbox. I'm simply amazed this works so damned well... speed is awesome, security is excellent (F00F bug, teardrop attacks, splatterbombs, et al, get resolved in mere days while many of those attacks can still take down my NT4SP3 server). My mom told me there was never a thing called a "free lunch" - but maybe, with a little patience and being open-minded, one can find a lunch that tastes great, is filling, and didn't cost much... and doesn't clog your arteries. A fine job, you Samba dudes, a fine job. =Max -------------- Except of smb.conf (dumped with testparms) Load smb config files from /usr/local/lib/smb.conf Processing section "[homes]" Processing section "[Public]" Processing section "[Applications]" Processing section "[Projects]" Loaded services file OK. WARNING: You have some share names that are longer than 8 chars These may give errors while browsing or may not be accessible to some older clients Press enter to see a dump of your service definitions # Global parameters debuglevel = 2 syslog = 1 syslog only = No protocol = NT1 security = USER max disk size = 0 lpq cache time = 10 announce as = NT encrypt passwords = Yes getwd cache = Yes read prediction = Yes read bmpx = Yes read raw = Yes write raw = Yes use rhosts = No load printers = No null passwords = No strip dot = No interfaces bind interfaces only = No password server socket options = TCP_NODELAY netbios name netbios aliases smbrun = /usr/local/bin/smbrun log file = /usr/local/var/log.%m config file smb passwd file = /usr/local/private/smbpasswd hosts equiv preload server string = Samba 1.9.18p1 Server on Linux printcap name = /etc/printcap lock dir = /usr/local/var/locks root directory = / default service message command dfree command passwd program = /usr/local/bin/smbpasswd passwd chat = *old*password* %o\n *new*password* %n\n *new*password* %n\ n *changed* valid chars workgroup = PAYPC username map character set logon script logon path = \\%N\%U\profile logon drive logon home = \\%N\%U remote announce remote browse sync socket address = 0.0.0.0 homedir map announce version = 4.2 max log size = 100 mangled stack = 50 max mux = 50 max xmit = 65535 max packet = 65535 password level = 0 username level = 0 keepalive = 0 deadtime = 60 time offset = 0 read size = 16384 shared mem size = 102400 coding system client code page = 850 os level = 0 max ttl = 14400 max wins ttl = 259200 min wins ttl = 21600 lm announce = Auto lm interval = 60 dns proxy = No wins support = No wins proxy = No wins server = preferred master = No local master = Yes domain master = No domain logons = No browse list = Yes unix realname = No NIS homedir = No time server = Yes printer driver file = /usr/local/lib/printers.def # Default service parameters comment copy include exec postexec root preexec root postexec alternate permissions = No revalidate = No default case = lower case sensitive = No preserve case = Yes short preserve case = Yes mangle case = No mangling char = ~ browseable = Yes available = Yes path username guest account = nobody invalid users = root admin @wheel samson gaijin butthole valid users admin users read list write list volume force user force group read only = Yes max connections = 0 min print space = 0 create mask = 0744 force create mode = 00 directory mask = 0755 force directory mode = 00 set directory = No status = Yes hide dot files = Yes delete veto files = No veto files hide files = /.*/DesktopFolderDB/Trash-For%m/resource.frk/*Desktop DB*/* Desktop DF*/*OpenFolderList*/*Network Trash Folder*/Network Trash Folder*/Icon*/ %Icon*/ veto oplock files guest only = No guest ok = No print ok = No postscript = No map system = No map hidden = No map archive = Yes locking = Yes strict locking = No share modes = Yes oplocks = Yes only user = No wide links = Yes follow symlinks = Yes sync always = No mangled names = Yes fake oplocks = No printing = bsd print command = lpr -r -P%p %s lpq command = lpq -P%p lprm command = lprm -P%p %j lppause command lpresume command printer printer driver = NULL printer driver location hosts allow = hosts deny dont descend = /proc,/dev magic script magic output mangled map delete readonly = No dos filetimes = No [homes] comment = Home Directories browseable = No valid users = @quanta peter read only = No [Public] comment = Public Stuff path = /Public write list = @quanta read only = No guest ok = Yes [Applications] comment = Applications path = /Applications/ valid users = @quanta peter write list = @quantgod read only = No [Projects] comment = Project Directories path = /projects valid users = @quanta peter write list = @quanta read only = No [IPC$] comment = IPC Service (Samba 1.9.18p1 Server on Linux) path = /tmp status = No guest ok = Yes