Hello. I believe that I've done my due diligence in researching what info. is currently available on this issue. I have been jacking with this for days, & believe that I have tried all possible solutions. I am basically trying to move a [Merant] PVCS installation from an OS/2 file server to a SuSE/Samba file server. This installation consists of 'standard' source archives, client setup files, binary executables, archive meta-data files, temporary transfer directories, & administrative configuration files. The primary issue is that the archive files are generally marked 'read-only' from the Windows clients. Whenever User1 checks in, labels, promotes, creates, etc. a source archive, he then becomes the owning user of that file. Now, User2 is not able to remove the 'read-only' bit, which is most necessary for the library to function. 'solutions' tried: 1) use 'store dos attributes' in smb.conf , so that the 'read-only' bit is kept in EAs, rather than removing the 'w' Unix permission bit for UGO . User2 has 'rwx' access to the file through their primary group. When User2 tries to remove the 'read-only' bit from the file, smbd hangs hard. I can't even kill the process, nor do an 'ls' in the local directory where the archive file lives. I receive this in log.smbd: smbd/nttrans.c:call_nt_transact_ioctl(2076) \ call_nt_transact_ioctl(0x90028): Currently not implemented. I've tried this with 'dos filemode' set to both yes & no, with no difference in the result. 2) Use 'extended' ACLs to explicitly give User2 'rwx' rights to the archive. Whenever User1's PVCS client software marks the archive 'read-only' the ACL 'mask' loses the 'w' permission, which obviously screws User2 . 3) In researching this on USENET (& the archives of this list), some people have recommended using 'force user' in smb.conf , so that the *nix OS sees all Samba users of the service as the same user. This solves some problems, but leaves me with the issue of now having no administrative users. There are files/directories in the PVCS installation which need to be protected from standard library users. 'Solution' #1 above feels cleanest to me, & is what I would like to implement long-term. However, there appears to be a bug or missing function in this area in Samba @ this point. I have tried Samba versions 2.2.8, 2.2.8-SuSE, 2.2.9, 3.0.2a, 3.0.4-SuSE, & 3.0.4 . Any direction would be appreciated. Please feel free to ask questions if my explanation is not clear. This is a fairly specific issue, & I think that I can sufficiently answer related questions. Gary R. Webster
On Wed, Jul 14, 2004 at 02:07:35PM -0400, webster@lexmark.com wrote:> > 1) use 'store dos attributes' in smb.conf , so that the 'read-only' bit > is kept in EAs, rather than removing the 'w' Unix permission bit for UGO . > User2 has 'rwx' access to the file through their primary group. When > User2 tries to remove the 'read-only' bit from the file, smbd hangs hard. > I can't even kill the process, nor do an 'ls' in the local directory where > the archive file lives. I receive this in log.smbd: > smbd/nttrans.c:call_nt_transact_ioctl(2076) \ > call_nt_transact_ioctl(0x90028): Currently not implemented. > I've tried this with 'dos filemode' set to both yes & no, with no > difference in the result.This is the correct fix. When you say it "hangs hard" what exactly do you mean ? Is it unkillable via kill -9 ? What does strace say ? Sounds like a kernel EA bug. What filesystem are you using ? Jeremy.
Thanks for the reply. Indeed, the smbd process is unkillable via kill -9 . Also, all Samba clients are out-to-lunch at this point. Here are the last few lines from strace(the file is named 'afile'): stat64("afile", {st_mode=S_IFREG|0664, st_size=320, ...}) = 0 getxattr("afile", "user.DOSATTRIB", 0xbfffb220, 256) = 4 getxattr("afile", "user.DOSATTRIB", 0xbfffb220, 256) = 4 stat64("afile", {st_mode=S_IFREG|0664, st_size=320, ...}) = 0 getxattr("afile", "system.posix_acl_access", 0xbfffaff0, 132) = -1 ENODATA (No data available) stat64("afile", {st_mode=S_IFREG|0664, st_size=320, ...}) = 0 getxattr("afile", "user.DOSATTRIB", 0xbfffb070, 256) = 4 setxattr("afile", "user.DOSATTRIB", 0xbfffb1c0, 4, The owner of the file can flip the 'read-only' bit on & off all day. But, when another user tries it(on or off), I get the aforementioned 'hang.' SuSE 9.1 uses reiserfs by default, with EAs & ACLs enabled. That is what I'm using. Gx Jeremy Allison <jra@samba.org> 07/14/04 02:32 PM Please respond to Jeremy Allison To: webster@lexmark.com cc: samba@lists.samba.org Subject: Re: [Samba] hosting library (ie. PVCS) on Samba On Wed, Jul 14, 2004 at 02:07:35PM -0400, webster@lexmark.com wrote:> > 1) use 'store dos attributes' in smb.conf , so that the 'read-only' bit > is kept in EAs, rather than removing the 'w' Unix permission bit for UGO.> User2 has 'rwx' access to the file through their primary group. When > User2 tries to remove the 'read-only' bit from the file, smbd hangshard.> I can't even kill the process, nor do an 'ls' in the local directorywhere> the archive file lives. I receive this in log.smbd: > smbd/nttrans.c:call_nt_transact_ioctl(2076) \ > call_nt_transact_ioctl(0x90028): Currently not implemented. > I've tried this with 'dos filemode' set to both yes & no, with no > difference in the result.This is the correct fix. When you say it "hangs hard" what exactly do you mean ? Is it unkillable via kill -9 ? What does strace say ? Sounds like a kernel EA bug. What filesystem are you using ? Jeremy.
OK; this appears to be working fine w/ ext3 . Thanks for the suggestion. Now, I just have to select & learn how to optimize another filesystem. I guess it will be either XFS or ext3 ... Gx Jeremy Allison <jra@samba.org> 07/14/04 08:10 PM Please respond to Jeremy Allison To: webster@lexmark.com cc: Jeremy Allison <jra@samba.org>, samba@lists.samba.org Subject: Re: [Samba] hosting library (ie. PVCS) on Samba On Wed, Jul 14, 2004 at 04:43:40PM -0400, webster@lexmark.com wrote:> Thanks for the reply. > > Indeed, the smbd process is unkillable via kill -9 . > Also, all Samba clients are out-to-lunch at this point. > > Here are the last few lines from strace(the file is named 'afile'): > stat64("afile", {st_mode=S_IFREG|0664, st_size=320, ...}) = 0 > getxattr("afile", "user.DOSATTRIB", 0xbfffb220, 256) = 4 > getxattr("afile", "user.DOSATTRIB", 0xbfffb220, 256) = 4 > stat64("afile", {st_mode=S_IFREG|0664, st_size=320, ...}) = 0 > getxattr("afile", "system.posix_acl_access", 0xbfffaff0, 132) = -1ENODATA> (No data available) > stat64("afile", {st_mode=S_IFREG|0664, st_size=320, ...}) = 0 > getxattr("afile", "user.DOSATTRIB", 0xbfffb070, 256) = 4 > setxattr("afile", "user.DOSATTRIB", 0xbfffb1c0, 4, > > The owner of the file can flip the 'read-only' bit on & off all day. > But, when another user tries it(on or off), I get the aforementioned > 'hang.' > > SuSE 9.1 uses reiserfs by default, with EAs & ACLs enabled. > That is what I'm using.Looks like a kernel bug with reiserfs and EA's. Can you test with another EA supporting filesystem and see if the same problem occurs ? Jeremy.
Maybe Matching Threads
- Newbie to Samba - getting '^M' characters from NT into PVCS o n UN IX
- 2.2.2 runaway SMBD process
- upgarde smbd to 3.0.6 and keep winbind to 3.0.2a, possible ?
- Permission denied for home, even when it's 777
- Able to Mount home, but getting failure errors in logs