is patch applied?
Patch Utility: Applying patch for 6.0.8.2 on LINUX (32-bit) /bin/chmod: changing permissions of `/d01/5216496': Operation not permitted /bin/chmod: changing permissions of `/d01/5216496/patch.sh': Operation not permitted /bin/chmod: changing permissions of `/d01/5216496/relink.sh': Operation not permitted /bin/chmod: changing permissions of `/d01/5216496/optweb#ifzprs.o': Operation not permitted /bin/chmod: changing permissions of `/d01/5216496/README.txt': Operation not permitted /bin/chmod: changing permissions of `/d01/5216496/genshlib': Operation not permitted /bin/chmod: changing permissions of `/d01/5216496/opt#ifzprs.o': Operation not permitted Using /d01/app/PROD/apps/tech_st/10.1.2/lib as temporary working directory This procedure assumes that: - Your current working directory /d01/5216496 is where you have restored this patch archive to. - You have read the README.* file. - You have at least 1 Mb available in the following filesystem. /d01/app/PROD/apps/tech_st/10.1.2 - You have at least 1 Mb available in following filesystem /d01/app/PROD/apps/tech_st/10.1.2/lib - You have shutdown all database instances under this ORACLE_HOME before running this script. - YOU WILL NOT INTERRUPT THIS PROCEDURE! Are you ready to continue? [N] => Patch installation terminated |
Administrator
|
No. It seems you have permission problems.
Change the permissions of the patch directory before applying this patch. Make the owner of the directories application owner for ex: applmgr, and retry. USe chown and chmod to organize the permissions. I guess the patch owner is root in your situation. It should be applmgr account |
can i run this from root/
|
Administrator
|
with root runr > chown -R applmgr:applmgr /patchdirectory
then su - applmgr cd /patchdirectory and run your "sh command" |
same eroor
|
Administrator
|
send the patch.sh script. Attach the file here.
|
/bin/sh
# 28th March 2003. v2.17 trap 'echo "Patch installation aborted!";$UNDO;exit 1' 1 2 3 15 #============================================================== # if you want to see the workings set the environment variable # ORACLE_TRACE to T - This will enable the -xv option for the # bourne shell. case $ORACLE_TRACE in T) set -xv ;; esac setup(){ BUG= PATCHSET_FLAG=y VERSION="6.0.8.27" PLATFORM="LINUX (32-bit)" SAVE_SUFFIX="pre"$BUG"_"$VERSION MANDATORY_FILES="" NEW_FILES="" OPTIONAL_FILES="" LIBS_OBJECTS="lib:libiff.a:opt#ifzprs.o lib:libiffw.a:optweb#ifzprs.o" MAKE_TRIPLETS="" EXECUTABLES="" SHUTDOWN=true DO_MAKE=true AGENT_PATCH=false #================================================================ MANDATORY_LIBS="" ALL_FILES="$MANDATORY_FILES $OPTIONAL_FILES" CHMOD="/bin/chmod" OS_NAME=`uname` PATCH_HOME=`pwd` #File where instructions to UNDO the patch are stored UNDO=$PATCH_HOME/undo_$SAVE_SUFFIX.sh #================================================================ } do_relink(){ cd $PATCH_HOME chmod 755 relink.sh if [ -x ./relink.sh ]; then echo " " echo "Relinking Forms." sh relink.sh echo "cd "$PATCH_HOME >> $UNDO echo "sh $PATCH_HOME/relink.sh " >> $UNDO echo " " fi } setup_part2(){ # Make sure we do not produce non writable new files $CHMOD -R u+w $PATCH_HOME umask 022 # OS Specific bits if [ "$OS_NAME" = 'Linux' ]; then ECHOFLAG='-e'; fi } setup_undo(){ #================================================================ #Create $UNDO file empty and with correct protections. Also test #to see if we have one already, to try and prevent reapplication #of a previously run patch, of course this means they would have #to be in the same directory etc. There is a better way but this #simple check will have to do for now. # if [ -f $UNDO ]; then echo " The UNDO file;" echo " " echo " $UNDO" echo " " echo " was found. This indicates the patch script has already" echo " been run, do you wish run this first, just continue or" echo " quit?" echo " " echo $ECHOFLAG " [R]un,[C]ontinue or [Q]uit [Default=Q] \c" read RCQ if [ "$RCQ" = "Q" -o "$RCQ" = "q" -o "$RCQ" = "" ]; then echo ' Patch installation aborted.' exit 1 fi if [ "$RCQ" = "R" -o "$RCQ" = "r" ]; then . $UNDO fi fi echo ' Continuing with patch installation' echo ' ' rm -f $UNDO touch $UNDO $CHMOD 744 $UNDO echo "#!/bin/sh" >> $UNDO } check1(){ #================================================================ # Check customer install has mandatory files and libraries. # Parse library list from LIBS_OBJECTS and MANDATORY_FILES for entry in $LIBS_OBJECTS; do dir=`echo $entry|awk -F: '{print $1}'` lib=`echo $entry|awk -F: '{print $2}'` MANDATORY_LIBS=$MANDATORY_LIBS" `echo $dir/$lib`" done #echo $MANDATORY_LIBS ABORTFLAG=false; TMP_MANDATORY_FILES="" for entry in $MANDATORY_FILES; do dir=`echo $entry|awk -F: '{print $1}'` obj=`echo $entry|awk -F: '{print $2}'` obj=`echo $obj|sed 's/,/ /g'` for ob1 in $obj; do obprefix="" obprefix=`echo $ob1|awk -F# '{print $1}'` if [ $obprefix = $ob1 ]; then ob=$ob1 obprefix="" else obprefix=`echo $ob1|awk -F# '{print $1}'`"#" ob=`echo $ob1|awk -F# '{print $2}'` fi TMP_MANDATORY_FILES=$TMP_MANDATORY_FILES" `echo $dir/$ob`" done done # Check to see if all the necessary files and libraries exist. for FILE in $TMP_MANDATORY_FILES $MANDATORY_LIBS; do if [ ! -f $ORACLE_HOME/$FILE ]; then echo " File $ORACLE_HOME/$FILE is missing" ABORTFLAG=true; fi if [ ! -w $ORACLE_HOME/$FILE ]; then echo " File $ORACLE_HOME/$FILE is not writable" ABORTFLAG=true; fi done if $ABORTFLAG; then echo ' Patch can not be installed.' exit 1 fi } check_space(){ #================================================================ # generate some stats to test if we are going to install # successfully, this needs work and testing against different # platforms, it's a start... size=0 sizeall=0 sizetmp=0 maxlib=0 #Calculate space requirements in $ORACLE_HOME for FILE in $MANDATORY_LIBS; do sizelib=`ls -l $ORACLE_HOME/$FILE| awk '{printf "%d",$5/1024/1024*2}'` if [ $sizelib -gt $maxlib ];then maxlib=$sizelib fi done sizeall=$maxlib #Get current TMPDIR if [ -z "$TMPDIR" ]; then TMPDIR=$ORACLE_HOME/lib; export TMPDIR echo "Using $TMPDIR as temporary working directory" fi #Calculate space requirements in $ORACLE_HOME and $TMPDIR for FILE in $EXECUTABLES; do sizeexe=`ls -l $ORACLE_HOME/$FILE| awk '{printf "%d",$5/1024/1024}'` sizeall=`expr $sizeexe \* 2 + $sizeall` if [ $sizeexe -gt $sizetmp ]; then sizetmp=$sizeexe fi done if [ $sizetmp -eq 0 ]; then sizetmp=1; fi if [ $sizeall -eq 0 ]; then sizeall=1; fi } check_space2(){ #================================================================ # More checking to ensure we will succeed. # HP does slightly different, need to look into. if [ "$OS_NAME" != 'HP-UX' ]; then #Verify that the required space in $ORACLE_HOME is available freedisk=`df -k $ORACLE_HOME | sed '1d' | awk '{printf "%d",$2/1024}'` if [ $freedisk -lt $sizeall ]; then echo "Not enough free space found in $ORACLE_HOME" echo "Needed: "$sizeall"Mb, found: "$freedisk"Mb" exit 1 fi if $DO_MAKE; then #Verify that the required temporary space in $TMPDIR is available freedisk=`df -k $TMPDIR | sed '1d' | awk '{printf "%d",$2/1024}'` if [ $freedisk -lt $sizetmp ]; then echo "Not enough free space found in $TMPDIR" echo "Needed: "$sizetmp"Mb, found: "$freedisk"Mb" exit 1 fi fi fi } check_instance(){ #================================================================ #Verify that no database is running, this is ok for pre 8i, however #at 8i and after there is no fool proof way to determine this with #100% confidence... # if $SHUTDOWN; then SIDLIST=/tmp/$$ ps -ef | grep smon | grep -v grep | cut -d_ -f3 > $SIDLIST for sid in `cat $SIDLIST` do if [ -f $ORACLE_HOME/dbs/init$sid.ora ]; then echo "Seems that some databases in $ORACLE_HOME are active" echo "Patch installation aborted" echo "Found instance: $sid open" rm $SIDLIST exit 1 fi done rm $SIDLIST fi } #================================================================ disclaimer(){ echo " This procedure assumes that: - Your current working directory $PATCH_HOME is where you have restored this patch archive to. - You have read the README.* file. - You have at least $sizeall Mb available in the following filesystem. $ORACLE_HOME" $DO_MAKE && echo " - You have at least $sizetmp Mb available in following filesystem $TMPDIR" $SHUTDOWN && echo " - You have shutdown all database instances under this ORACLE_HOME before running this script." echo " - YOU WILL NOT INTERRUPT THIS PROCEDURE!" echo $ECHOFLAG " Are you ready to continue? [N] => \c" read YN echo " " if [ "$YN" != 'Y' -a "$YN" != 'y' ];then echo ' Patch installation terminated' exit 1 fi } do_objects(){ if [ ! -z "$LIBS_OBJECTS" ]; then for pair in $LIBS_OBJECTS; do dir=`echo $pair|awk -F: '{print $1}'` lib=`echo $pair|awk -F: '{print $2}'` obj=`echo $pair|awk -F: '{print $3}'|sed 's/,/ /g'` cd $ORACLE_HOME/$dir for ob1 in $obj; do obprefix="" obprefix=`echo $ob1|awk -F# '{print $1}'` if [ $obprefix = $ob1 ]; then ob=$ob1 obprefix="" else obprefix=`echo $ob1|awk -F# '{print $1}'`"#" ob=`echo $ob1|awk -F# '{print $2}'` fi AR_CMD="ar" if [ "$OS_NAME" = 'AIX' ]; then CHECK_AIX_64=`file $PATCH_HOME/$ob1` AIX_64=`echo $CHECK_AIX_64|grep "64-bit"` if [ "$AIX_64" != "" ]; then AR_CMD="ar -X64" fi fi qqq=`$AR_CMD -t $ORACLE_HOME/$dir/$lib $ob 2>/dev/null|wc -c|awk '{print $1}'` rrr=`echo $ob|wc -c|awk '{print $1}'` if [ $qqq -eq $rrr ]; then echo " cd `pwd` " >> $UNDO if [ -f $ob ]; then echo "The file $ob already exists in this directory, renaming: " echodo mv $ob .$ob.$SAVE_SUFFIX.dup fi echodo $AR_CMD -x $ORACLE_HOME/$dir/$lib $ob echodo mv $ob .$obprefix$ob.$SAVE_SUFFIX echo "echodo mv .$obprefix$ob.$SAVE_SUFFIX $ob" >> $UNDO echodo cp $PATCH_HOME/$obprefix$ob ./$ob echodo $AR_CMD crl $ORACLE_HOME/$dir/$lib $ob echo "echodo $AR_CMD crl $ORACLE_HOME/$dir/$lib $ob" >> $UNDO echodo rm -f $ob echo "echodo rm -f $ob" >> $UNDO if [ -f .$ob.$SAVE_SUFFIX.dup ]; then echo "echodo mv .$ob.$SAVE_SUFFIX.dup $ob" >> $UNDO fi else #This is a new object. if [ "$obprefix" = "NEW#" ]; then echodo cp $PATCH_HOME/$obprefix$ob ./$ob echodo $AR_CMD crl $ORACLE_HOME/$dir/$lib $ob echo "echodo $AR_CMD d $ORACLE_HOME/$dir/$lib $ob" >> $UNDO echodo rm -f $ob else echo $ob not found in library $ORACLE_HOME/$dir/$lib . $UNDO rm $UNDO exit 1 fi fi done done else echo No object modules to process. fi } relink(){ #================================================================ #Relink executables if $DO_MAKE && [ ! -z "$MAKE_TRIPLETS" ]; then echo "*** Starting relinking of new executables" for triplet in $MAKE_TRIPLETS; do echo $triplet directory=`echo $triplet|awk -F: '{print $1}'` makefile=`echo $triplet|awk -F: '{print $2}'` target=`echo $triplet|awk -F: '{print $3}'` target=`echo $target|sed 's/,/ /g'` cd $ORACLE_HOME/$directory if echodo make -f $makefile $target; then echo "cd $ORACLE_HOME/$directory" >> $UNDO echo "echodo make -f $makefile $target" >> $UNDO else echo "Errors occurred during relink of $target" echo "Deinstalling patch..." . $UNDO rm $UNDO echo "Fix error and try again" exit 1 fi done echo "%%% Done relinking new executables" echo "Patch applied succesfully." echo "Patch can be deinstalled by using $UNDO script" else if [ ! -z "$MAKE_TRIPLETS" ]; then echo " You choose not to relink the executable" echo " Please perform the following commands to finish applying the patch:" for triplet in $MAKE_TRIPLETS; do directory=`echo $triplet|awk -F: '{print $1}'` makefile=`echo $triplet|awk -F: '{print $2}'` target=`echo $triplet|awk -F: '{print $3}'` target=`echo $target|sed 's/,/ /g'` echo "cd $ORACLE_HOME/$directory; make -f $makefile $target" done echo " Be sure to have at least "$sizetmp"Mb in your TMPDIR at relink time" fi fi } update_agent_patch_info(){ #================================================================ # for v2.15 # # If the patch is for Intelligent Agent, update the patch info # in $ORACLE_HOME/PATCH_INFO # # if $AGENT_PATCH; then INSTALLDATE=`date +%m/%d/%y` THREE_DIGITVS=`echo $VERSION|cut -c1-5` if [ ! -f $ORACLE_HOME/PATCH_INFO ] then echo "Product PatchId Install Date" > $ORACLE_HOME/PATCH_INFO echo "" >> $ORACLE_HOME/PATCH_INFO fi # Now write the patch details to the PATCH_INFO file if this file doesn't # aready contain the bug. # # -- the file will already contain the bug if the patch is being reapplied PATCH_STATUS=`grep $BUG $ORACLE_HOME/PATCH_INFO` if [ $? -ne 0 ] then echo "OEMAGENT $THREE_DIGITVS"_bug"$BUG $INSTALLDATE" >> $ORACLE_HOME/PATCH_INFO fi # Write to the undo script to allow this update to be backed out echo "grep -v $BUG $ORACLE_HOME/PATCH_INFO > $ORACLE_HOME/PATCH_INFO_$$" >> $UNDO echo "mv $ORACLE_HOME/PATCH_INFO_$$ $ORACLE_HOME/PATCH_INFO" >> $UNDO fi } new_files(){ #================================================================ #Copy new files if [ ! -z "$NEW_FILES" ]; then echo "*** Starting copying new files" for FILE in $NEW_FILES; do new_dir=`echo $FILE|awk -F: '{print $1}'` new_obj=`echo $FILE|sed "s?$new_dir:??"|sed 's/,/ /g'` for new_ob1 in $new_obj; do new_obprefix="" new_obprefix=`echo $new_ob1|awk -F# '{print $1}'` if [ $new_obprefix = $new_ob1 ]; then new_ob=$new_ob1 new_obprefix="" else new_obprefix=`echo $new_ob1|awk -F# '{print $1}'`"#" new_ob=`echo $new_ob1|awk -F# '{print $2}'` fi cd $ORACLE_HOME/$new_dir echo "echodo rm $ORACLE_HOME/$new_dir/$new_ob" >> $UNDO echodo cp $PATCH_HOME/$new_ob1 $ORACLE_HOME/$new_dir/$new_ob done echo "%%% Finished copying new files" done fi } mandatory_files(){ #================================================================ #Copy mandatory files if [ ! -z "$MANDATORY_FILES" ]; then echo "*** Starting copying mandatory files" for FILE in $MANDATORY_FILES; do man_dir=`echo $FILE|awk -F: '{print $1}'` man_obj=`echo $FILE|sed "s?$man_dir:??"|sed 's/,/ /g'` for man_ob1 in $man_obj; do man_obprefix="" man_obprefix=`echo $man_ob1|awk -F# '{print $1}'` if [ $man_obprefix = $man_ob1 ]; then man_ob=$man_ob1 man_obprefix="" else man_obprefix=`echo $man_ob1|awk -F# '{print $1}'`"#" man_ob=`echo $man_ob1|awk -F# '{print $2}'` fi cd $ORACLE_HOME/$man_dir echodo mv $ORACLE_HOME/$man_dir/$man_ob $ORACLE_HOME/$man_dir/.$man_ob.$SAVE_SUFFIX echo "echodo mv $ORACLE_HOME/$man_dir/.$man_ob.$SAVE_SUFFIX $ORACLE_HOME/$man_dir/$man_ob" >> $UNDO echodo cp $PATCH_HOME/$man_ob1 $ORACLE_HOME/$man_dir/$man_ob done done echo "%%%Finished copying mandatory files" fi } optional_files(){ #================================================================ #Copy optional files (if they exist) OPTIONAL_FILES_FOUND="" if [ ! -z "$OPTIONAL_FILES" ]; then echo "*** Starting copying optional files" for FILE in $OPTIONAL_FILES; do opt_dir=`echo $FILE|awk -F: '{print $1}'` opt_obj=`echo $FILE|sed "s?$opt_dir:??"|sed 's/,/ /g'` for opt_ob1 in $opt_obj; do opt_obprefix="" opt_obprefix=`echo $opt_ob1|awk -F# '{print $1}'` if [ $opt_obprefix = $opt_ob1 ]; then opt_ob=$opt_ob1 opt_obprefix="" else opt_obprefix=`echo $opt_ob1|awk -F# '{print $1}'`"#" opt_ob=`echo $opt_ob1|awk -F# '{print $2}'` fi cd $ORACLE_HOME/$opt_dir # # If file exists, then deal with it. Otherwise, do nothing, since it # is optional. # if [ -f $opt_ob ] then echodo mv $ORACLE_HOME/$opt_dir/$opt_ob $ORACLE_HOME/$opt_dir/.$opt_ob.$SAVE_SUFFIX echo "echodo mv $ORACLE_HOME/$opt_dir/.$opt_ob.$SAVE_SUFFIX $ORACLE_HOME/$opt_dir/$opt_ob" >> $UNDO echodo cp $PATCH_HOME/$opt_ob1 $ORACLE_HOME/$opt_dir/$opt_ob OPTIONAL_FILES_FOUND="$OPTIONAL_FILES_FOUND $opt_dir:$opt_ob" fi done done echo "%%%Finished copying optional files" fi } conflicts(){ #================================================================ # Find potential conflicts with patches previously installed. # Variable that is used to determine if, for a patch that # has already been applied, whether the user has asked to reapply the patch. ASK_QUESTION_IF_ALREADY_APPLIED=true if [ ! -z "$LIBS_OBJECTS" ]; then for pair in $LIBS_OBJECTS; do cnf_dir=`echo $pair|awk -F: '{print $1}'` cnf_lib=`echo $pair|awk -F: '{print $2}'` cnf_obj=`echo $pair|awk -F: '{print $3}'|sed 's/,/ /g'` for cnf_ob1 in $cnf_obj; do cnf_obprefix="" cnf_obprefix=`echo $cnf_ob1|awk -F# '{print $1}'` if [ $cnf_obprefix = $cnf_ob1 ]; then cnf_ob=$cnf_ob1 cnf_obprefix="" else cnf_obprefix=`echo $cnf_ob1|awk -F# '{print $1}'`"#" cnf_ob=`echo $cnf_ob1|awk -F# '{print $2}'` fi cd $ORACLE_HOME/$cnf_dir rrr=`echo $cnf_ob|wc -c|awk '{print $1}'` prefile="" prefile=`ls .$cnf_ob.pre* 2>/dev/null` if [ ! -z "$prefile" ]; then for prefile1 in $prefile; do if [ $prefile1 = .$cnf_ob.$SAVE_SUFFIX ]; then # Don't Put up this warning if previously displayed if $ASK_QUESTION_IF_ALREADY_APPLIED ; then echo "" echo "The patch for $BUG has been applied previously to this ORACLE_HOME" echo "" echo $ECHOFLAG "Are you sure you want to continue? [N] \c" read YN echo " " if [ "$YN" != 'Y' -a "$YN" != 'y' ];then echo ' Patch installation terminated' exit 1 else # don't ask again ASK_QUESTION_IF_ALREADY_APPLIED=false; fi fi else # put check in for version ver_chk=`echo $prefile1|awk -F_ '{print $1}'|wc -c|awk '{print $1}'` ver_chka=`expr $ver_chk + 1` if [ $PATCHSET_FLAG = y ]; then ver_chkb=`expr $ver_chk + 9` VER_MOD2=$VERSION else ver_chkb=`expr $ver_chk + 5` VER_MOD2=`echo $VERSION|cut -c1-5` fi ver_cmp=`echo $prefile1 | cut -c$ver_chka-$ver_chkb ` if [ -z "$ver_cmp" ]; then uconflict=`echo $prefile1 | cut -f 4 -d "." ` uconflict=`echo $uconflict | cut -c4- ` uexist="FALSE" for ulist1 in $ulist; do if [ "uconflict" = "ulist1" ] then uexist="TRUE" fi done if [ "$uexist" = "FALSE" ] then ulist=`echo "$ulist $uconflict"` fi else if [ "$VER_MOD2" = "$ver_cmp" ]; then conflict=`echo $prefile1 | cut -f 1 -d "_" ` count=`expr $rrr + 5` conflict1=`echo $conflict | cut -c$count- ` exist="FALSE" for list1 in $list; do if [ "$conflict1" = "$list1" ] then exist="TRUE" fi done if [ "$exist" = "FALSE" ] then list=`echo "$list $conflict1"` fi fi fi fi done fi done done else echo No object modules to process. fi COMPARISONS="$MANDATORY_FILES $OPTIONAL_FILES $NEW_FILES" for pair in $COMPARISONS; do cnf_dir=`echo $pair|awk -F: '{print $1}'` cnf_obj=`echo $pair|sed "s?$cnf_dir:??"|sed 's/,/ /g'` for cnf_ob1 in $cnf_obj; do cnf_obprefix="" cnf_obprefix=`echo $cnf_ob1|awk -F# '{print $1}'` if [ $cnf_obprefix = $cnf_ob1 ]; then cnf_ob=$cnf_ob1 cnf_obprefix="" else cnf_obprefix=`echo $cnf_ob1|awk -F# '{print $1}'`"#" cnf_ob=`echo $cnf_ob1|awk -F# '{print $2}'` fi cd $ORACLE_HOME/$cnf_dir rrr=`echo $cnf_ob|wc -c|awk '{print $1}'` prefile="" prefile=`ls .$cnf_ob.pre* 2>/dev/null` if [ ! -z "$prefile" ]; then for prefile1 in $prefile; do if [ $prefile1 = .$cnf_ob.$SAVE_SUFFIX ]; then # Don't Put up this warning if previously displayed if $ASK_QUESTION_IF_ALREADY_APPLIED ; then echo "" echo "The patch for $BUG has been applied previously to this ORACLE_HOME" echo "" echo $ECHOFLAG "Are you sure you want to continue? [N] \c" read YN echo " " if [ "$YN" != 'Y' -a "$YN" != 'y' ];then echo ' Patch installation terminated' exit 1 else # don't ask again ASK_QUESTION_IF_ALREADY_APPLIED=false; fi fi else # put check in for version ver_chk=`echo $prefile1|awk -F_ '{print $1}'|wc -c|awk '{print $1}'` ver_chka=`expr $ver_chk + 1` if [ $PATCHSET_FLAG = y ]; then ver_chkb=`expr $ver_chk + 9` VER_MOD2=$VERSION else ver_chkb=`expr $ver_chk + 5` VER_MOD2=`echo $VERSION|cut -c1-5` fi ver_cmp=`echo $prefile1 | cut -c$ver_chka-$ver_chkb ` if [ -z "$ver_cmp" ]; then uconflict=`echo $prefile1 | cut -f 4 -d "." ` uconflict=`echo $uconflict | cut -c4- ` uexist="FALSE" for ulist1 in $ulist; do if [ "uconflict" = "ulist1" ] then uexist="TRUE" fi done if [ "$uexist" = "FALSE" ] then ulist=`echo "$ulist $uconflict"` fi else if [ $VER_MOD2 = $ver_cmp ]; then conflict=`echo $prefile1 | cut -f 1 -d "_" ` count=`expr $rrr + 5` conflict1=`echo $conflict | cut -c$count- ` exist="FALSE" for list1 in $list; do if [ "$conflict1" = "$list1" ] then exist="TRUE" fi done if [ "$exist" = "FALSE" ] then list=`echo "$list $conflict1"` fi fi fi fi done fi done done if [ ! -z "$list" -o ! -z "$ulist" ]; then echo "" echo "A previously applied patch(es) may be in conflict with $BUG"; echo "" if [ ! -z "$list" ]; then echo " The patch(es) for Version $VERSION, that may be in" echo " conflict with this patch are:" echo "" echo " $list" echo "" fi if [ ! -z "$ulist" ]; then if [ ! -z "$list" ]; then echo " In addition, the following patch(es) were found and could be" else echo " The following patch(es) were found and could be" fi echo " in conflict with this patch; but we were unable to" echo " determine what version they are for:" echo "" echo " $ulist" echo "" fi echo "Continuing could overwite all or parts the patch(es) in conflict." echo "You may want to contact support to get a merge of bug $BUG and" echo "the above conflicting bug(s)." echo "" echo "Are you sure you want to continue? [N]" read YN echo " " if [ "$YN" != 'Y' -a "$YN" != 'y' ];then echo ' Patch installation terminated' exit 1 fi fi } setup if [ $PATCHSET_FLAG = y ]; then ver_chk=7 else ver_chk=5 fi VER_MOD=`echo $VERSION | cut -c-$ver_chk ` echo ' ' echo Patch Utility: Applying patch $BUG for $VER_MOD on $PLATFORM echo ' ' setup_part2 check_instance check_space disclaimer check1 #conflicts check_space2 setup_undo new_files mandatory_files optional_files do_objects relink do_relink update_agent_patch_info # #================================================================ # We change the values here to suit the patch/One-off, do not # change anything else. # # What do these mean: # # SAVE_SUFFIX - this tags the files as they were prior to applying # the patch. We use pre<One-off request #>_<$VERSION> # # e.g SAVE_SUFFIX=pre1234567_8.1.7.2.0 # # MANDATORY_FILES - Files we expect to be on the customer site. # Rooted from ORACLE_HOME by default so we have # to specify the full path and filename. This *must* # follow the format in the example, space separated # file list. # # e.g MANDATORY_FILES="lib:abc.txt,def.txt rdbms/lib:xyz.a jdbc/admin:eee.xxx" # # NEW_FILES - For whatever reason a new file is required at the # customer site, as it's new it is not checked for. # Setup and usage as MANDATORY_FILES. # # OPTIONAL_FILES - Files which may or may not exist on the customer # site, however it still needs to be delivered as # part of the fix, if a version exists then it is # backed up. Setup and usage as MANDATORY_FILES. # # LIBS_OBJECTS - These are objects shipped as part of a One-off. # The setup and usage is almost the same as the # MANDATORY_FILES but the additional things are; # # 1) A ":" separates the lib path and location from # the contained objects. # # 2) when shipping objects withe the same name a # prefix can be used followed by the "#" sign. # The script will look for the named file and # rename it correctly so in our example 32#b.o # is archived as b.o. We can use this when we # ship for example 32 and 64 bit version of an # object. # # e.g LIBS_OBJECTS="rdbms/lib:libabc.a:a.o lib:libxyz.a:32#b.o,c.o" # # 3) Files which are new objects should be tagged # with "NEW#" e.g "dir:libsome8.a:NEW#afile.o" # else the file is rejected. # # MAKE_TRIPLETS - This represents the make files and targets to be # executed and built. This is represented as three # elements separated by ":", the first part is the # location based of $ORACLE_HOME, the second is the # make file to us and the third is the target to build. # The restriction of only one target has been lifted # multiple targets are comma separated. # # e.g MAKE_TRIPLETS="rdbms/lib:ins_rdbms.mk:ioracle,isvrmgrl" # # EXECUTABLES - This is used to help in sizing the required space. # It lists the executables we are going to rebuild. # The setup and syntax is the same as MANDATORY_FILES. # # e.g EXECUTABLES="bin/oracle bin/svrmgrl" # # SHUTDOWN - test to see that the instance is down. This is under # review for 8.1+ patches as the method we used is no # longer an option. The current test is not 100% certain # but is "good enough". # # DO_MAKE - This is used, primarily for debugging this script but # can also be used to defer the relink phase for the # application of this one-off . # |
Administrator
|
are you sure about the permissions? did you executed chown -R applmgr:applmgr send me a sceeenshot displaying your files and permissions. 25 Kas 2014 12:27 tarihinde "afnan [via Erman Arslan's Oracle Forum]" <[hidden email]> yazdı:
/bin/sh |
[applmgr@Prod 5216496]$ sh patch.sh
Patch Utility: Applying patch for 6.0.8.2 on LINUX (32-bit) Using /d01/app/PROD/apps/tech_st/10.1.2/lib as temporary working directory This procedure assumes that: - Your current working directory /d01/5216496 is where you have restored this patch archive to. - You have read the README.* file. - You have at least 1 Mb available in the following filesystem. /d01/app/PROD/apps/tech_st/10.1.2 - You have at least 1 Mb available in following filesystem /d01/app/PROD/apps/tech_st/10.1.2/lib - You have shutdown all database instances under this ORACLE_HOME before running this script. - YOU WILL NOT INTERRUPT THIS PROCEDURE! Are you ready to continue? [N] => y File /d01/app/PROD/apps/tech_st/10.1.2/lib/libiff.a is missing File /d01/app/PROD/apps/tech_st/10.1.2/lib/libiff.a is not writable Patch can not be installed. [applmgr@Prod 5216496]$ sh patch.sh Patch Utility: Applying patch for 6.0.8.2 on LINUX (32-bit) Using /d01/app/PROD/apps/tech_st/10.1.2/lib as temporary working directory This procedure assumes that: - Your current working directory /d01/5216496 is where you have restored this patch archive to. - You have read the README.* file. - You have at least 1 Mb available in the following filesystem. /d01/app/PROD/apps/tech_st/10.1.2 - You have at least 1 Mb available in following filesystem /d01/app/PROD/apps/tech_st/10.1.2/lib - You have shutdown all database instances under this ORACLE_HOME before running this script. - YOU WILL NOT INTERRUPT THIS PROCEDURE! Are you ready to continue? [N] => n Patch installation terminated [applmgr@Prod 5216496]$ |
Administrator
|
libiff.a is missing 25 Kas 2014 12:57 tarihinde "afnan [via Erman Arslan's Oracle Forum]" <[hidden email]> yazdı:
[applmgr@Prod 5216496]$ sh patch.sh |
Administrator
|
1. Apply Patch:5042134 on top of 10.1.2.0.2 . Alternatively you can apply the Patch 5488476 which supersedes Patch 5042134, and contains other important Forms fixes. or Apply Patch:5841985 on top of 10.1.2.2 For Forms 10.1.2.3, Patch:7121788 has to be applied. 2. After applying patches, the following steps are mandatory. cd $ORACLE_HOME/bin 2014-11-25 13:06 GMT+02:00 afnan [via Erman Arslan's Oracle Forum] <[hidden email]>: then??????? Erman Arslan, MBA Oracle Certified Expert Certified Exadata Administrator Certified Linux Administrator Blog: ermanarslan.blogspot.com Forum: http://ermanarslan.blogspot.com/p/forum.html
M: 05301567803 |
for the patch 5488476
prerequisite is ; > cd /usr/java131 # > cp -fpR * $ORACLE_HOME/jdk but there is no java131 dri in /usr |
Administrator
|
afnan are you sure that the problematic patch is suitable for your needs? where did you read that? 25 Kas 2014 16:21 tarihinde "afnan [via Erman Arslan's Oracle Forum]" <[hidden email]> yazdı:
for the patch 5488476 |
Administrator
|
In reply to this post by afnan
I mean 5216496 ; what makes you think thar it must be applied? 25 Kas 2014 16:44 tarihinde "Erman Arslan" <[hidden email]> yazdı:
|
Free forum by Nabble | Edit this page |