Strange behavior of executable bit
Subsystems (2)
Hi!
We have an file server runninng RHEL3 and NFS. Clients are RHEL3 and FC1. We are having problems with an service that want's to change the executable bit on a file located on the NFS exported filesystem. The service is running on RHEL3.
Client:
Linux version 2.4.21-9.0.1.ELsmp ([email protected]) (gcc version 3.2.3 20030502 (Red Hat Linux 3.2.3-26)) #1 SMP Mon Feb 9 22:26:51 EST 2004 redhat-config-nfs-1.0.13-1
nfs-utils-1.0.6-21EL
Server:
Linux version 2.4.21-9.0.1.EL040519 (root@s1) (gcc version 3.2.3 20030502 (Red Hat Linux 3.2.3-20)) #2 SMP Wed May 19 14:56:39 CEST 2004 redhat-config-nfs-1.0.13-1
nfs-utils-1.0.6-21EL
The results are strange and listed below:
Running the following script:
for i1 in 0 1 2 3 4 5 6 7 8 9 ; do
for i2 in 0 1 2 3 4 5 6 7 8 9 ; do
for i3 in 0 1 2 3 4 5 6 7 8 9 ; do
ls -l "$joboption_directory/test.sh" 1>&2 /bin/usleep 100000
done
done
done
Produce these results:
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rwx------ 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rwx------ 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rwx------ 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rwx------ 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rwx------ 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rwx------ 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rwx------ 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rwx------ 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rwx------ 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rwx------ 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rwx------ 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rwx------ 1 auser auser 41 May 25 18:10 /disk/global/grid/ -rwx------ 1 auser auser 41 May 25 18:10 /disk/global/grid/
52341085501427351028959/test.sh
-rwx------ 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rwx------ 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rwx------ 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rwx------ 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rwx------ 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rwx------ 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rwx------ 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rwx------ 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rwx------ 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rwx------ 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rwx------ 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rwx------ 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rwx------ 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rwx------ 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rwx------ 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rwx------ 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rwx------ 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rwx------ 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rwx------ 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rw------- 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rwx------ 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
-rwx------ 1 auser auser 41 May 25 18:10 /disk/global/grid/52341085501427351028959/test.sh
And then it stabilizes.
I have no clue to what the problem might be. Is it client or server related?
Many regards
Jonas Lindemann
-------------------------------------------------------
This SF.Net email is sponsored by: Oracle 10g
Get certified on the hottest thing ever to hit the market... Oracle 10g. Take an Oracle 10g class now, and we'll give you the exam FREE.
http://ads.osdn.com/?ad_id=3149&alloc_id=8166&op=click
_______________________________________________
NFS maillist - [email protected]
https://lists.sourceforge.net/lists/listinfo/nfs
Quoted 12 lines · Jonas Lindemann
Running the following script:
for i1 in 0 1 2 3 4 5 6 7 8 9 ; do for i2 in 0 1 2 3 4 5 6 7 8 9 ; do for i3 in 0 1 2 3 4 5 6 7 8 9 ; do ls -l "
$joboption_directory/test.sh" 1>&2/bin/usleep100000
done
done
done
Quoted 3 lines
Produce these results:
And then it stabilizes.
I guess I'm a bit confused... What are the expected results or what do you mean by "stabilizes"?
SteveD.
-------------------------------------------------------
This SF.Net email is sponsored by: Oracle 10g
Get certified on the hottest thing ever to hit the market... Oracle 10g. Take an Oracle 10g class now, and we'll give you the exam FREE.
http://ads.osdn.com/?ad_id=3149&alloc_id=8166&op=click
_______________________________________________
NFS maillist - [email protected]
https://lists.sourceforge.net/lists/listinfo/nfs
Quoted 14 lines · Steve Dickson
Quoted 12 lines · Jonas Lindemann
Running the following script:
for i1 in 0 1 2 3 4 5 6 7 8 9 ; do for i2 in 0 1 2 3 4 5 6 7 8 9 ; do for i3 in 0 1 2 3 4 5 6 7 8 9 ; do ls -l "
$joboption_directory/test.sh" 1>&2/bin/usleep100000
done
done
done
Quoted 7 lines
Quoted 3 lines
Produce these results:
And then it stabilizes.
I guess I'm a bit confused... What are the expected results or what do you mean by "stabilizes"?
The file is uploaded via a gridftp. A special service is responsible for marking certain files as executable in the above case "test.sh". The testscript is called directly after this service has set the bit. The problem seems to be that this bit is not directly set, and execution of this file fails. Rebooting the server makes the problem go away for about a week, then it resurfaces again.
-- Jonas
Quoted 4 lines
SteveD.
Quoted 8 lines
-------------------------------------------------------
This SF.Net email is sponsored by: Oracle 10g
Get certified on the hottest thing ever to hit the market... Oracle 10g. Take an Oracle 10g class now, and we'll give you the exam FREE.
http://ads.osdn.com/?ad_id=3149&alloc_id=8166&op=click
_______________________________________________
NFS maillist - [email protected]
https://lists.sourceforge.net/lists/listinfo/nfs
-------------------------------------------------------
This SF.Net email is sponsored by: Oracle 10g
Get certified on the hottest thing ever to hit the market... Oracle 10g. Take an Oracle 10g class now, and we'll give you the exam FREE.
http://ads.osdn.com/?ad_id=3149&alloc_id=8166&op=click
_______________________________________________
NFS maillist - [email protected]
https://lists.sourceforge.net/lists/listinfo/nfs
A message that is not in the archive (sent off-list or not yet received): [email protected]
A message that is not in the archive (sent off-list or not yet received): [email protected]
Quoted 8 lines · Steve Dickson
Quoted 6 lines · Jonas Lindemann
Quoted 2 lines · Steve Dickson
I guess I'm a bit confused... What are the expected results or what do you mean by "stabilizes"?
Quoted 6 lines
Quoted 1 line
The file is uploaded via a gridftp. A special service is responsible for marking certain files as executable in the above case "
test.sh". The testscript is called directly after this service has set the bit. The problem seems to be that this bit is not directly set, and execution of this file fails. Rebooting the server makes the problem go away for about a week, then it resurfaces again.So are you saying that the client has the directory mounted and then this special service runs (on the server) setting the executable bit on
test.shbut the client never sees that bit being set?
The service runs on the client, and does not see this bit when queried.
Quoted 3 lines
SteveD.
-------------------------------------------------------
This SF.Net email is sponsored by: Oracle 10g
Get certified on the hottest thing ever to hit the market... Oracle 10g. Take an Oracle 10g class now, and we'll give you the exam FREE.
http://ads.osdn.com/?ad_id=3149&alloc_id=8166&op=click
_______________________________________________
NFS maillist - [email protected]
https://lists.sourceforge.net/lists/listinfo/nfs
Quoted 7 lines · Jonas Lindemann
Quoted 3 lines · Steve Dickson
So are you saying that the client has the directory mounted and then this special service runs (on the server) setting the executable bit on
test.shbut the client never sees that bit being set?The service runs on the client, and does not see this bit when queried.
hmm... so "chmod 700 test.sh ; ls -l test.sh" shows the file being set to the 0600 mode... with all changes being made from the client... Could you possibly make a compressed ethereal trace of this phenomenon available?
SteveD.
-------------------------------------------------------
This SF.Net email is sponsored by: Oracle 10g
Get certified on the hottest thing ever to hit the market... Oracle 10g. Take an Oracle 10g class now, and we'll give you the exam FREE.
http://ads.osdn.com/?ad_id=3149&alloc_id=8166&op=click
_______________________________________________
NFS maillist - [email protected]
https://lists.sourceforge.net/lists/listinfo/nfs
P=E5 on , 26/05/2004 klokka 04:05, skreiv Jonas Lindemann:
Quoted 6 lines
Hi!
=20
We have an file server runninng RHEL3 and NFS. Clients are RHEL3 and=20 FC1. We are having problems with an service that want's to change the=20 executable bit on a file located on the NFS exported filesystem. The=20 service is running on RHEL3.
So basically, you are changing the executable bit on the server, and wondering why that changes isn't propagated instantly to the client?
It's 'cos NFS client poll the server for attribute changes. The mount options that govern the polling period is documented in the "nfs" manpage (see the ac* flags).
Cheers,
Trond
-------------------------------------------------------
This SF.Net email is sponsored by: Oracle 10g
Get certified on the hottest thing ever to hit the market... Oracle 10g. Take an Oracle 10g class now, and we'll give you the exam FREE.
http://ads.osdn.com/?ad_id=3149&alloc_id=8166&op=click
_______________________________________________
NFS maillist - [email protected]
https://lists.sourceforge.net/lists/listinfo/nfs
Quoted 12 lines · Trond Myklebust
P=E5 on , 26/05/2004 klokka 04:05, skreiv Jonas Lindemann:
=20Quoted 8 lines
Hi!
We have an file server runninng RHEL3 and NFS. Clients are RHEL3 and=20 FC1. We are having problems with an service that want's to change the=20 executable bit on a file located on the NFS exported filesystem. The=20 service is running on RHEL3.
=20
Quoted 8 lines
So basically, you are changing the executable bit on the server, and wondering why that changes isn't propagated instantly to the client?
It's 'cos NFS client poll the server for attribute changes. The mount options that govern the polling period is documented in the "nfs" manpage (see the ac* flags).
=20
Sorry. I didn't explain it very well before. The system is a cluster=20 with a front-end running grid-middleware. A file server (a different=20 machine from the front-end) exports a number of filesystems both to the=20 front-end and to the nodes. On the front-end the middleware tries to set=20 the executable bit and fails with the described problem.
-- Jonas
Quoted 7 lines
Cheers,
Trond-------------------------------------------------------
This SF.Net email is sponsored by: Oracle 10g
Get certified on the hottest thing ever to hit the market... Oracle 10g.=
=20
Quoted 8 lines
Take an Oracle 10g class now, and we'll give you the exam FREE.
http://ads.osdn.com/?ad_id149&alloc_id=8166&op=3Dclick
_______________________________________________
NFS maillist - [email protected]
https://lists.sourceforge.net/lists/listinfo/nfs=20
-------------------------------------------------------
This SF.Net email is sponsored by: Oracle 10g
Get certified on the hottest thing ever to hit the market... Oracle 10g. Take an Oracle 10g class now, and we'll give you the exam FREE.
http://ads.osdn.com/?ad_id=3149&alloc_id=8166&op=click
_______________________________________________
NFS maillist - [email protected]
https://lists.sourceforge.net/lists/listinfo/nfs