# Author: Heath Howard # This script is a modified version of the choit script by # Laura Henry in OIT. The modified script changes the # permissions and groups (see below) for COSAM. # It creates, uses and deletes files in the pwd. # The person who runs it must have write permission in the pwd. # These commands set the file permissions: # chmod -f 664 *.gif # chmod -f 664 *.jpg # chmod -f 664 *.php # chmod -f 664 *.htm* # chmod -f 664 *.xls # chmod -f 664 *.doc # chmod -f 664 *.ppt # chmod -f 664 .htaccess # chmod -f 640 *.0* # and, for each subdirectory: chmod 775 subdirname # Group permissions are set via the following specs: # /academic/science_math/cosam - cosam # /academic/science_math - apple # .htaccess files - apple open (FIND,'|find /export/vol2/httpd/htdocs/academic/science_math/cosam -type d -print > InLiSt') || die "Invalid find command.\n"; close (FIND); #normal stuff &changeall; #class information - not used yet &changeclasses; #items for cosam it only as well as the text file for the au explore form &changeit; sub changeclasses { # open (CHGRP,"|chgrp -f oit_webct /export/vol2/httpd/htdocs/its/oit/support/students/webct"); # close (CHGRP); # open (CHGRP,"|chgrp -f oit_webct /export/vol2/httpd/htdocs/its/oit/support/employees/webct"); # close (CHGRP); # open (CHGRP,"|chgrp -f oit_webct /export/vol2/httpd/htdocs/its/oit/support/students/webct/*.*"); # close (CHGRP); # open (CHGRP,"|chgrp -f oit_webct /export/vol2/httpd/htdocs/its/oit/support/employees/webct/*.*"); # close (CHGRP); # open (CHGRP,"|chgrp -f oit_webct /export/vol2/httpd/htdocs/its/oit/support/students/webct/images/*.*"); # close (CHGRP); # open (CHGRP,"|chgrp -f oit_webct /export/vol2/httpd/htdocs/its/oit/support/employees/webct/images/*.*"); # close (CHGRP); # open (CHGRP,"|chgrp -f oit_webct /export/vol2/httpd/htdocs/its/oit/support/students/webct/tipsheets/*.*"); # close (CHGRP); # open (CHGRP,"|chgrp -f oit_webct /export/vol2/httpd/htdocs/its/oit/support/employees/webct/tipsheets/*.*"); # close (CHGRP); # open (CHGRP,"|chgrp -f oit_webct /export/vol2/httpd/htdocs/its/oit/support/students/webct/images"); # close (CHGRP); # open (CHGRP,"|chgrp -f oit_webct /export/vol2/httpd/htdocs/its/oit/support/employees/webct/images"); # close (CHGRP); # open (CHGRP,"|chgrp -f oit_webct /export/vol2/httpd/htdocs/its/oit/support/students/webct/tipsheets"); # close (CHGRP); # open (CHGRP,"|chgrp -f oit_webct /export/vol2/httpd/htdocs/its/oit/support/employees/webct/tipsheets"); # close (CHGRP); #This can be used in the future to change /academic/classes folders used by COSAM } sub changeit { # open (CHGRP,"|chgrp -f oit_webct /export/vol2/httpd/htdocs/its/oit/support/students/webct"); # close (CHGRP); # open (CHGRP,"|chgrp -f oit_webct /export/vol2/httpd/htdocs/its/oit/support/employees/webct"); # close (CHGRP); # open (CHGRP,"|chgrp -f oit_webct /export/vol2/httpd/htdocs/its/oit/support/students/webct/*.*"); # close (CHGRP); # open (CHGRP,"|chgrp -f oit_webct /export/vol2/httpd/htdocs/its/oit/support/employees/webct/*.*"); # close (CHGRP); # open (CHGRP,"|chgrp -f oit_webct /export/vol2/httpd/htdocs/its/oit/support/students/webct/images/*.*"); # close (CHGRP); # open (CHGRP,"|chgrp -f oit_webct /export/vol2/httpd/htdocs/its/oit/support/employees/webct/images/*.*"); # close (CHGRP); # open (CHGRP,"|chgrp -f oit_webct /export/vol2/httpd/htdocs/its/oit/support/students/webct/tipsheets/*.*"); # close (CHGRP); # open (CHGRP,"|chgrp -f oit_webct /export/vol2/httpd/htdocs/its/oit/support/employees/webct/tipsheets/*.*"); # close (CHGRP); # open (CHGRP,"|chgrp -f oit_webct /export/vol2/httpd/htdocs/its/oit/support/students/webct/images"); # close (CHGRP); # open (CHGRP,"|chgrp -f oit_webct /export/vol2/httpd/htdocs/its/oit/support/employees/webct/images"); # close (CHGRP); # open (CHGRP,"|chgrp -f oit_webct /export/vol2/httpd/htdocs/its/oit/support/students/webct/tipsheets"); # close (CHGRP); # open (CHGRP,"|chgrp -f oit_webct /export/vol2/httpd/htdocs/its/oit/support/employees/webct/tipsheets"); # close (CHGRP); open (CHGRP,"|chgrp -f apple /export/vol2/httpd/htdocs/academic/science_math/cosam/it"); close (CHGRP); open (CHGRP,"|chgrp -fR apple /export/vol2/httpd/htdocs/academic/science_math/cosam/it/*"); close (CHGRP); open (CHMOD,"|chmod -f 770 /export/vol2/httpd/htdocs/academic/science_math/cosam/it/it_staff"); close (CHMOD); open (CHMOD,"|chmod -f 773 /export/vol2/httpd/htdocs/academic/science_math/cosam/outreach/programs/auexplore/registration/import_files"); close (CHMOD); } sub changeall { $i = 0; open (INLIST, "InLiSt") || die "Could not open InLiSt \n"; while (defined($subdirname = )) { chop($subdirname); $parm = $subdirname . "/*"; ++$i; open (CHGRP,"|chgrp -f cosam $parm"); close (CHGRP); #change group on .htaccess files $parm = $subdirname . "/.htaccess"; open (CHGRP,"|chgrp -f apple $parm"); close (CHGRP); #change group for cosam subdirectory - for future use #$parm = $subdirname . "/*cosam*"; #open (CHGRP,"|chgrp -f cosam $parm"); #close (CHGRP); #change group for this file $parm = $subdirname . "/chcosam"; open (CHGRP,"|chgrp -f apple $parm"); close (CHGRP); open (CHMOD,"|chmod -f 775 $subdirname"); close (CHMOD); $parm = $subdirname . "/*.gif"; open (CHMOD,"|chmod -f 775 $parm"); close (CHMOD); $parm = $subdirname . "/*.jpg"; open (CHMOD,"|chmod -f 775 $parm"); close (CHMOD); $parm = $subdirname . "/*.jpeg"; open (CHMOD,"|chmod -f 774 $parm"); close (CHMOD); $parm = $subdirname . "/*.php"; open (CHMOD,"|chmod -f 664 $parm"); close (CHMOD); $parm = $subdirname . "/*.htm*"; open (CHMOD,"|chmod -f 664 $parm"); close (CHMOD); $parm = $subdirname . "/*.xls"; open (CHMOD,"|chmod -f 664 $parm"); close (CHMOD); $parm = $subdirname . "/*.ppt"; open (CHMOD,"|chmod -f 664 $parm"); close (CHMOD); $parm = $subdirname . "/*.doc"; open (CHMOD,"|chmod -f 664 $parm"); close (CHMOD); $parm = $subdirname . "/.htaccess"; open (CHMOD,"|chmod -f 664 $parm"); close (CHMOD); $parm = $subdirname . "/*.0*"; open (CHMOD,"|chmod -f 640 $parm"); close (CHMOD); } close(INLIST); printf ("\nGroup was set to cosam and permissions changed on all directories, \n"); printf ("*gif, *jpg, *htm*, *php, *xls, *doc, and *ppt files owned by you in the /cosam/ tree.\n\n"); # delete the inlist file after using it open (RM,"|rm InLiSt"); close(RM); } # end of subroutine changeall