I finally solve my problem : The problem is the /proc pseudo file system which may contain some 64 bits process information. These files can't be accessed by the default find command available in Solaris 7. This explain the following error message. find: cannot open /: Value too large for defined data type find misses a exclude options, so it is not possible to prevent it from scanning the /proc file system. The only things that may be done are to grep the output or use the fstype ufs options, but these options will not prevent find to scan /proc but only not return any of its content. find was then still scanning /proc and getting an error. I then manage to get the source of GNU find @ http://www.gnu.org/software/findutils/findutils.html and then compile find for sparc 64 bits with gcc 3.3 The new find 64 bits command is now able to scan everything. Some errors may output in /proc, but these error are only related to unlink files. So I am using 2>/dev/null after the find command to prevent this. -----Original Message----- From: Bousquet Francois [mailto:Francois.Bousquet@cgi.com] Sent: January 21, 2005 11:11 AM To: Mailing List - SunManagers (E-mail) Subject: 64 bits version of the find command I am trying to run a script that is doing a find for suid and guid files on a system. Basically I am using this command : find / -perm 4000 -print On one of my server (E450 with Solaris 7) this command returns an error : # find / -perm 4000 -print find: cannot open /: Value too large for defined data type # I have investigate the problem a bit more and found that it is /proc the problem # find /proc -perm 4000 -print find: cannot open /proc: Value too large for defined data type # I also found this bug ID 4638523 http://sunsolve.sun.com/search/document.do?assetkey=1-1-4638523-1&searchclau se=%22Value%20too%20large%20for%20defined%20data%20type%22%20%20%20find The conclusion is proposing a script : find / ! \( -name proc -prune \) to solve the problem. But it is buggy, as it will exclude proc files or directory on a deep directory tree (ex : /opt/application/proc). So I am trying to find a 64 bits version of find for Solaris 7. These are the only 64 bits command I can find : # ls -l /usr/bin/sparcv9 total 1380 -r-xr-xr-x 1 bin bin 192488 Jun 29 1999 adb -r-xr-xr-x 1 bin bin 19640 Sep 1 1998 gcore -r-xr-sr-x 1 bin sys 15480 Sep 1 1998 ipcs -r-xr-xr-x 1 bin bin 27296 Sep 1 1998 kgmon -r-xr-xr-x 1 bin bin 23184 Sep 1 1998 ls -r-xr-xr-x 1 bin bin 14584 Sep 1 1998 plimit -r-xr-xr-x 1 bin bin 81536 Sep 1 1998 prex -r-sr-xr-x 1 root sys 36456 Sep 1 1998 ps -r-xr-xr-x 1 bin bin 17168 May 20 1999 pvs -r-xr-xr-x 1 bin bin 16360 Jun 29 1999 savecore -r-xr-xr-x 1 bin bin 11744 Sep 1 1998 setuname -r-xr-xr-x 1 bin bin 11840 Sep 1 1998 tnfxtract -r-xr-xr-x 1 bin bin 178408 Jun 29 1999 truss -r-sr-xr-x 2 root bin 15584 Sep 1 1998 uptime -r-sr-xr-x 2 root bin 15584 Sep 1 1998 w # Anyone know where I can find a 64 bits version of find ? Frangois Bousquet Counselor - Unix System Administrator INET - Internet Maintenance CGI - LBC Services Email : Francois.Bousquet@CGI.com _______________________________________________ sunmanagers mailing list sunmanagers@sunmanagers.org http://www.sunmanagers.org/mailman/listinfo/sunmanagers _______________________________________________ sunmanagers mailing list sunmanagers@sunmanagers.org http://www.sunmanagers.org/mailman/listinfo/sunmanagersReceived on Wed Jan 26 13:50:50 2005
This archive was generated by hypermail 2.1.8 : Thu Mar 03 2016 - 06:43:42 EST