Welcome
Tuesday
To apply opatch in database
This post has been written on request of one of regular visitor of my blog (Altaaf). This post is all about Oracle Patching Utility (OPATCH) and various options that can be used along with Opatch.
We will begin the discussion by knowing what exactly is Opatch?
- OPatch is a java based utility that allow the application and rolling back of interim patches to an Oracle product. The program has sub-commands that may take arguments. The program requires java(JVM) to be present on the current system.OPatch expects users to have commands such as fuser, jar, ar and make on Unix platforms and jar on Windows platforms to be available in their PATH.
Opatch Details
How to check the Opatch version?
-bash-3.00$ ./opatch version
Invoking OPatch 10.2.0.3.0
OPatch Version: 10.2.0.3.0
OPatch succeeded.
How to know which version is the correct version of Opatch for your RDBMS home?
You can verify whether the Opatch version for your RDBMS release is correct or not using metalink note ID 357221.1.
This note ID gives the copatibilities between OPatch version and RDBMS version.
How to get the latest version of OPatch?
You can download the latest version of OPatch from metalink using following URL.
http://updates.oracle.com/download/6880880.html
In the release dropdown you can select the OPatch release that you want to download based on your RDBMS version. Please read the README.txt before applying the patch.
What is Oracle Database Inventory and where it is located?
Oracle Inventory is the location or the place where all the information about an Oracle Home is stored and maintained. When ever we install an RDBMS Oracle Home, a new inventory gets created. Applying any new patch to Oracle Home will update the invnrtory for that Oracle Home and record the details for the patch applied. This inventory is in the form of XML files.
The location of inventory is defined in a file called oraInst.loc. The path for this file is provided while installing Oracle Home. If we dont supply any path, the is file will be present at central location /etc/oraInst.loc. Also we can have a central inventory if its not used by any other oracle installation. If the central inventory is used by previous Oracle installation we can create local inventory. The content of oraInst.loc file is as shown below.
-bash-3.00$ cd $ORACLE_HOME
-bash-3.00$ cat oraInst.loc
inventory_loc=/slot/ems2029/appmgr/apps/tech_st/10.1.2/oraInventory
inst_group=ems2029
-bash-3.00$
Here “inventory_loc” gives the location of Inventory directory where as inst_group gives the name of the group which is the owner of this inventory.
How to create Local Inventory?
You can create local inventory at any location while installing Oracle Home. You need to use -invPtrLoc variable along with runInstaller command and give the location of oraInst.loc. Otherwise the default path assumed for oraInst.loc is /etc/oraInst.loc.
./runInstaller -invPtrLoc /slot/ems2029/appmgr/apps/tech_st/10.1.2/oraInst.loc
After the installation starts it will ask for location of oraInventory directory and group which should own it. It will make entry of these into oraInst.loc file.
Having know the above information about opatch, now we will move to details about using opatch and various options available.
Opatch help
You can get all the options using opatch -help
-bash-3.00$ ./opatch -help
Invoking OPatch 11.1.0.6.0
Oracle Interim Patch Installer version 11.1.0.6.0
Copyright (c) 2007, Oracle Corporation. All rights reserved.
Usage: opatch [ -help ] [ -r[eport] ] [ command ]
command := apply
lsinventory
prereq
query
rollback
util
version
:= -help Displays the help message for the command.
-report Print the actions without executing.
example:
‘opatch -help’
‘opatch apply -help’
‘opatch lsinventory -help’
‘opatch prereq -help’
‘opatch rollback -help’
‘opatch util -help’
OPatch succeeded.
You can get specific help for any command of opatch using opatch -help. Example opatch apply -help.
Applying single patch using opatch
1. You MUST read the Readme.txt file included in opatch file, look for any prereq. steps/ post installation steps or and DB related changes. Also, make sure that you have the correct opatch version required by this patch.
2.Make sure you have a good backup of database.
3. Make a note of all Invalid objects in the database prior to the patch.
4. Shutdown All the Oracle Processes running from that Oracle Home , including the Listener and Database instance, Management agent etc.
5. You MUST Backup your oracle Home and Inventory
tar cvf - $ORACLE_HOME $ORACLE_HOME/oraInventory | gzip > Backup_Software_Version.tar.gz
6. Unzip the patch in $ORACLE_HOME/patches
If you are applying a single intrim patch to oracle home, then change the location to the directory of that patch and then invoke following command.
Example if I need to apply patch 6972343 to RDBMS Oracle Home
-bash-3.00$ cd 6972343
-bash-3.00$ pwd
/slot/ems2029/oracle/db/tech_st/11.1.0/patches/6972343
-bash-3.00$ ls
etc files README.txt
$ORACLE_HOME/OPatch/opatch apply
If you have created local inventory then you need to give the correct path for local inventory stored in oraInst.loc. If you have updated /etc/oraInst.loc with correct location of your inventory, then above command will work, If not you can give the correct location by giving local oraInst.loc file.
$ORACLE_HOME/OPatch/opatch apply -invPtrLoc /slot/ems2029/oracle/db/tech_st/11.1.0/oraInst.loc
Remember that when we are applying patch, patch number is NOT provided as an input to opatch command. So we have to to be in the directory of patch since opatch will pick the patch files from current directory.
Rolling back a patch
In case if a patch did not fix the issue or if you has applied wrong patch to oracle home, you can always rollback the patch using following comamnd.
opatch rollback -id
Applying bundle patches
Some times if you have to apply bundle patch having many patches, example lets say you want to a bundle patch 6778860 ( 11.1.0.6 BUNDLED PATCH FOR EBS 11I)) containing many other patches to RDBMS home, OPatch provides a facility to apply many patches to RDBMS home using a single comamnd. Following command should be used for applying bundle patches.
Download the patch and extract the same. You will see many directories (one for each patch) inside the main patch directory. Execute following command to apply all patches.
$ORACLE_HOME/OPatch/opatch util NApply -invPtrLoc /slot/ems2029/oracle/db/tech_st/11.1.0/oraInst.loc
NApply -> Will apply all patches to RDBMS home.
You can also use -phBaseDir to point to the directory where bundle patch is installed. So you can run opatch command from any location
$ORACLE_HOME/OPatch/opatch util NApply -phBaseDir /slot/ems2029/oracle/db/tech_st/11.1.0/patches/6778860 -invPtrLoc /slot/ems2029/oracle/db/tech_st/11.1.0/oraInst.loc
You can also apply specific patches using NApply
opatch util napply -id 1,2,3 -skip_subset -skip_duplicate
This will apply patches 1, 2, and 3 which are under < the patch_location> directory. OPatch will skip duplicate patches and subset patches (patches under that are subsets of patches installed in the ORACLE_HOME)
You can see all the options for NApply using following help command.
$ORACLE_HOME/OPatch/opatch util NApply -help
Query the inventory for patches applied
We can query the inventory to check various components installed for database as well as to check various patches applied to database. Use following command to get a minimum information from inventory about patches applied and components installed.
$ORACLE_HOME/OPatch/opatch lsinventory -invPtrLoc /slot/ems2029/oracle/db/tech_st/11.1.0/oraInst.loc
Patch 5763576 : applied on Wed May 28 03:20:53 PDT 2008
Created on 6 Feb 2008, 02:26:04 hrs PST8PDT
Bugs fixed:
5763576
If you are using central inventory then -invPtrLoc variable is not required.
You can also get the detailed view of inventory using following command. In case of detail information it gives which are the files that this patch have touched.
$ORACLE_HOME/OPatch/opatch lsinventory -detail -invPtrLoc /slot/ems2029/oracle/db/tech_st/11.1.0/oraInst.loc
Patch 6318357 : applied on Wed May 28 03:33:27 PDT 2008
Created on 4 Dec 2007, 22:02:16 hrs PST8PDT
Bugs fixed:
6318357
Files Touched:
udjvmrm.sql –> ORACLE_HOME/javavm/install/udjvmrm.sql
Patch Location in Inventory:
/slot/ems2029/oracle/db/tech_st/11.1.0/inventory/oneoffs/6318357
Patch Location in Storage area:
/slot/ems2029/oracle/db/tech_st/11.1.0/.patch_storage/6318357_Dec_4_2007_22_02_16
Which options are installed in Oracle Home?
You can check the options installed in RDBMS home using above command. The options installed will be listed at the start of output.
Example: $ORACLE_HOME/OPatch/opatch lsinventory -detail -invPtrLoc /slot/ems2029/oracle/db/tech_st/11.1.0/oraInst.loc
The complete output of this command can be seen at this location.
Opatch Log files
Log file for Opatch utility can be found at $ORACLE_HOME/cfgtoollogs/opatch
Advanced Option for OPatch
Here are some of the advanced options of OPatch utility.
UpdateRemoteNodes
It is used to propagate/remove files/directories to/from remote nodes using files under ORACLE_HOME/.patch_storage//rac/*.
The directories listed in copy_dirs.txt will be copied to remote nodes.
The files listed in copy_files.txt wil be copied to remote nodes.
The directories listed in remove_dirs.txt will be deleted from remote nodes.
The files listed in remove_files.txt will be deleted from remote nodes.
This is used where RAC setup is present.
Cleanup
It is used to clean up ‘restore.sh, make.txt’ files and ‘rac, scratch, backup’ directories in the ORACLE_HOME/.patch_storage directory. If -ps option is used, then it cleans the above specified areas only for that patch, else for all patches under ORACLE_HOME/.patch_storage. You will be still able to rollback patches after this cleanup.
Example: opatch util cleanup -ps 6121183_Ju _21_2007_04_19_42
CopyListedFiles
It is used to copy all files listed in ORACLE_HOME/.patch_storage//rac/copy_files.txt to remote nodes. If -fp option is used, then one can specify the path of the file containing the list of files to be copied. The files mentioned in this file will be copied to the remote nodes.
Example: opatch util copylistedfiles -fp a -remote_nodes ceintcb-a5
This is used where RAC setup is present.
CopyListedFilesTest
It is used to copy a single file to remote nodes. The usage remains the same as CopyListedFiles.
Example: opatch util copylistedfilestest -fp /home/oracle/a -remote_nodes ceintcb-a5
This is used where RAC setup is present.
CopyListedDirs
It is used to recursively copy all directories listed in ORACLE_HOME/.patch_storage//rac/copy_dirs.txt to remote nodes. If -dp option is used, then one can specify the path of the file containing the list of directories to be copied. The directories mentioned in this file will be copied to the remote nodes.
This is used where RAC setup is present.
CopyListedDirsTest
It is used to copy a single file to remote nodes. The usage remains the same as CopyListedDirs.
This is used where RAC setup is present.
RemoveListedFiles
It is used to remove files listed in ORACLE_HOME/.patch_storage//rac/remove_files.txt on remote nodes. If -fr option is used, then one can specify the path of the file containing the list of files to be removed. The files mentioned in this file will be removed from the remote nodes.
This is used where RAC setup is present.
RemoveListedFilesTest
It is used to remove a single file from remote nodes. The usage remains the same as RemoveListedFiles.
This is used where RAC setup is present.
RemoveListedDirs
It is used to recursively remove directories listed in ORACLE_HOME/.patch_storage//rac/remove_dirs.txt from remote nodes. If -dr option is used, then one can specify the path of the file containing the list of directories to be removed. The directories mentioned in this file will be removed from the remote nodes.
This is used where RAC setup is present.
RemoveListedDirsTest
It is used to remove a single directory from remote nodes. The usage remains the same as RemoveListedDirs.
This is used where RAC setup is present.
RunLocalMake
It is used to invoke re-link on the local node. The make commands are stored in ORACLE_HOME/.patch_storage//make.txt. You need to use the -ps option to specify the Patch ID with timestamp. A directory by this name will be present under ORACLE_HOME/.patch_storage. The make.txt file present under ORACLE_HOME/.patch_storage// will be used to perform the local make operation. This command cannot be run if you have already run Cleanup as it would have removed these make.txt files.
Example: opatch util runlocalmake -ps 6121250_ un_21_2007_04_16_11
RunRemoteMake
It is used to invoke re-link on remote nodes. The make commands are stored in
ORACLE_HOME/.patch_storage//rac/makes_cmd.txt. The usage remains the same as RunLocalMake.
This is used where RAC setup is present.
RunAnyCommand
It is used to run any command on remote nodes. The command should be specified using the -cmd option.
Example: opatch util runanycommand -remote_nodes ceintcb-a5 -cmd ls
This is used where RAC setup is present.
LoadXML
It is used to check the validity of an XML file. The -xmlInput option can be used to specify the path of the xml file.
@ Support can use this utility to verify the integrity of XML files contained in the local and central inventory.
Example: opatch util loadxml -xmlInput $ORACLE_HOME/inventory/ContentsXML/comps.xml
Verify
It is used to run the patch verification process to ensure that the patch was applied to the ORACLE_HOME. It uses the defined ORACLE_HOME and the given patch location via -ph, to run the check.
@ Support can use this utility to re-run the OPatch verification stage, if required for patch diagnosis. The patch staging area has to be present or created.
Example: opatch util verify -ph ~/6646853/6121183
Troubleshooting
Some times the inventory get corrupted because of some issues. In that case you need to repair the inventory. Following are the two methods which I know can be used to repair the inventory.
1) Development has released a utility (checkinv) which can be use to repair the inventory if it becomes corrupted for some reason.
Please note that this version of checkinv works only for 9.2 and 10.1 releases of oracle database. This doesn’t work for 10.2 releases of oracle database.
You can download the checkinv utility from Patch 4121946.
To cleanup the components, you should determine the unwanted or dangling components, then specify those using the option “-remcomp”, to cleanup the component list.
The utility detects and asks user’s permission to repair a bad inventory. In case you want to repair the inventory, the utility will first back up the files before any modification.
However, it is better that you backup the inventory before running the tool.
For more details, check metalink note ID 298906.1
2) Creating a new inventory using Oracle Universal Installer (OUI).
References:
Metalink note ID : 298906.1
Metalink note ID : 554417.1
Metalink note ID : 374092.1
Metalink note ID : 357221.1
Saturday
NFS Mounting on Linux
Most often it is required to do a NFS mount of your disks across different servers. This particularly useful for doing Applications Installations and Patching. There are two aspects of configuration involved here. One is the sever that is the which is sharing the file system and the other is client which the host that is mounting the shared file system.
Supposing you want to mount a u01/hemanth on Node_A to Node_B
Configurations on Node_A
edit the /etc/exports file
vi /etc/exports
add the filesystem to mount
/u01/sam ro Node_B
you can either use the option ro which means read only or in case you wish to allow node_b to write into the filesystem use the rw option which is read writeable.
The change in exports file takes effect only after the restart of your NFS service daemon. use the service command to do that.
# service nfs restart
Shutting down NFS mountd: [ OK ]
Shutting down NFS daemon: [ OK ]
Shutting down NFS quotas: [ OK ]
Shutting down NFS services: [ OK ]
Starting NFS services: [ OK ]
Starting NFS quotas: [ OK ]
Starting NFS daemon: [ OK ]
Starting NFS mountd: [ OK ]
Configuration for Node_B
On Node_B simply create the mount point to hold the shared file system and mount it using the mount command.
#mkdir hemanth
#mount -t nfs Node_A:/u01/hemanth /hemanth
11.5.10 prerequisites
Oracle® Applications Installation Update Notes
Release 11i (11.5.10) for Linux x86, Solaris SPARC, Microsoft Windows, HP-UX PA-RISC, HP-Tru64, IBM AIX
Oracle® Applications
Installation Update Notes
Release 11i (11.5.10) for Linux x86, Solaris SPARC, Microsoft Windows, HP-UX PA-RISC, HP-Tru64, IBM AIX
Required Packages and Patches
The following table lists the packages and individual patches required for each operating system. Unless otherwise note, the packages and patches must be installed manually.
Additional Information:
Refer to the vendor's operating system installation manual or the operating system media for information on obtaining and applying these patches.
Operating System Required Patches
Red Hat Enterprise Linux AS/ES 2.1
* pdksh-5.s.14-13 (Oracle Discoverer)
* openmotif-2.1.30-x
Red Hat Enterprise Linux AS/ES 3.0* Quarterly Update 1 or higher (Minimum required version)
Note: See Certify on OracleMetaLink for information on specific Quarterly Updates requirements.
Red Hat Enterprise Linux AS/ES 3.0* Quarterly Update 4 (Recommended version)
Note: From the Package Group Selection screen, select Legacy Software Development. The following components will be installed automatically:
* compat-db-4.0.14-5.1
* compat-gcc-7.3-2.96.128
* compat-libstdc++-7.3-2.96.128
* compat-gcc-c++-7.3-2.96.128
* compat-libstdc++-devel-7.3-2.96.128
* setarch-1.3-1
* pdksh-5.2.14-21 (Oracle Discoverer)
The following required component must be installed manually:
* openmotif-2.1.30-x
Note: Available on Disk 3 of Quarterly Update 4 media.
Red Hat Enterprise Linux AS/ES 4.0* Legacy Software Development package and X Software Development package
Note: Select these packages from the Package Group Selection screen. If the operating system is already installed, use System Settings > Add/Remove Applications to install these two packages.
The following components will be installed automatically:
* compat-db-4.1.25-9
* compat-gcc-32-3.2.3-47.3yyyyyyyyy
* compat-gcc-32-c++-3.2.3-47.3
* compat-oracle-rhel4-1.0-5yyyyyyyyy
* compat-libcwait-2.0-2yyyyyyyyyyy
* compat-libgcc-296-2.96-132.7.2
* compat-libstdc++-296-2.96-132.7.2
* compat-libstdc++-33-3.2.3-47.3
* xorg-x11-deprecated-libs-devel-6.8.1-23.EL
* xorg-x11-deprecated-libs-6.8.1-23.EL
The following required component must be installed manually:
* openmotif-2.1.30-x
Note: For information on downloading the openmotif component, see the instructions at the following URL: https://rhn.redhat.com/errata/RHSA-2005-412.html
SUSE Linux Enterprise Server 8 The following required components must be installed manually:
* openmotif-2.1.30-x
* gcc 2.95.3
* SUSE Linux Enterprise Server 8 Service Pack 3
Note:You can download "openmotif-2.1.30-x" at the following URL:
http://support.novell.com/techcenter/search/search.do?cmd=displayKC&externalId=70bbf5fc1e287442b21b3c602acd7f71html
You can download the SUSE Linux Enterprise Server 8 Service Pack 3 at the following URL:
http://download.novell.com/directed
gcc 2.95.3 is included in the SUSE Linux Enterprise Server 8 operating system CDs named as gcc_old package
Install glibc-devel during the installation of the operating system by selecting the "C/C++ Compiler and Tools" option. If the operating system is already installed, manually select the package when installing SUSE Linux Enterprise Server 8 Service Pack 3.
SUSE Linux Enterprise Server 9 The following required components must be installed manually:
* openmotif-2.1.30-x
* gcc 2.95.3
* orarun-1.8-109
Note:
* /suse/s390/openmotif21-libs-2.1.30MLI4-119.1.s390.rpm is available in SUSE Linux Enterprise Server 9 CD2
* gcc 2.95.3 is included in the SUSE Linux Enterprise Server 9 operating system CDs named as gcc_old package
* orarun-1.8-109 can be downloaded from http://ftp.novell.com/partners/oracle/sles-9/
Solaris 8 (2.8) None
Solaris 9 (2.9) 113886-22, 113887-22, 113096-03, 112785-42
HP-UX PA-RISC 11.00 C++ Compiler C.03.27** (or higher)
HP-UX PA-RISC 11.11 PHCO_25452, PHNE_25084, PHNE_25642, PHSS_24638 (C++), GOLDQPK11i-December 01, C++ Compiler C.03.27** (or higher)
HP-UX PA-RISC 11.23 C++ Compiler A.03.60** (or higher)
HP-UX Itanium 11.23 None
IBM AIX 5L (5.1, 5.2, 5.3) Visual Age C++ 6.0.0.5 and Oct. 2003 PTF (or higher) or IBM XL 7.0 C/C++** (or higher)
Windows 2000 Service Pack 2. See also General Requirements for Windows.
Windows Server 2003 See General Requirements for Windows.
*After installing these patches, run ldconfig -v.
Setting Kernel Parameters
Most oracle products require certain kernel parameters to be set as a pre requisite for installation. Common kernel parameters include parameters for shared memory .
The /etc/sysctl.conf file takes care of your kernel parameters.
#vi /etc/sysctl.conf
kernel.shmmax = 2147483648
kernel.shmmni = 128
kernel.shmall = 2097152
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
However changes made to this file take effect only after the next reboot.
The sysctl command can be used to set the kernel parameter at runtime in linux.
sysctl -p
sysctl -w kernel.shmmax=2147483648
11.5.10.2 Prerequisites
Oracle® Applications Installation Update Notes
Release 11i (11.5.10.2) for Linux x86, Solaris SPARC, Microsoft Windows, HP-UX PA-RISC, HP-Tru64, IBM AIX
Required Packages and Patches
The following table lists the packages and individual patches required for each operating system. Unless otherwise noted, the packages and patches must be installed manually.
Additional Information:
See the installation instructions (software and hardware requirements section) for information on the RDBMS-specific version for your platform. See also the vendor's operating system installation manual or the operating system media for information on obtaining and applying patches.
Operating System Required Patches
Oracle Enterprise Linux 4*
Quarterly Update 4 or higher (Recommended Version)
* compat-db-4.1.25-9
* compat-gcc-32-3.2.3-47.3
* compat-gcc-32-c++-3.2.3-47.3
* compat-oracle-rhel4-1.0-5 (from Oracle patch 4198954)
* compat-libcwait-2.1-1 (from Oracle patch 4198954)
* compat-libgcc-296-2.96-132.7.2
* compat-libstdc++-296-2.96-132.7.2
* compat-libstdc++-33-3.2.3-47.3
* xorg-x11-deprecated-libs-devel-6.8.2-1.EL.13.37
* xorg-x11-deprecated-libs-6.8.2-1.EL.13.37
* openmotif-2.2.3-10.RHEL4.5
Oracle Enterprise Linux 5*
Red Hat Enterprise Linux 5* (base and Advanced Platform)
Update 1 (OEL 5.1) or higher is required
Update 1 (RHEL 5.1) or higher is required.
The following packages are not part of the OEL 5 or RHEL 5 distribution media and must be installed manually:
* compat-libstdc++-egcs-1.1.2-11
* compat-libcwait-2.1-11
* compat-oracle-el5-1.0-51
* openmotif21-2.1.30-11.EL51
* binutils-2.152
The following packages must be installed from the OEL 5 or RHEL 5 distribution media:
* libXp-1.0.0-8.1.el5
* compat-libgcc-296-2.96-138
* compat-libstdc++-33-3.2.3-61
* compat-db-4.2.52-5.1
Note :
1: Download from http://oss.oracle.com/projects/compat-oracle/files/Enterprise_Linux/ (for both OEL 5 and RHEL 5)
2: GNU linker (ld) version 2.15 is required for relinking the modules in Advanced Planning & Scheduling (MSC, MSO, MSR) - download binutils-2.15 from http://oss.oracle.com/projects/compat-oracle/files/Enterprise_Linux/
(for both OEL 5 and RHEL 5)
Red Hat Enterprise Linux AS/ES 2.1
* pdksh-5.s.14-13 (Oracle Discoverer)
* openmotif-2.1.30-x
* Note: In accordance with the Red Hat Enterprise Linux Errata Support Policy, the 7 year life-cycle of Red Hat Enterprise Linux AS/ES 2.1 has ended effective June 1, 2009. For instructions on migrating Red Hat Enterprise Linux 2.1 or 3 to Red Hat Enterprise Linux 4, see My Oracle Support Document 303237.1.
Red Hat Enterprise Linux AS/ES 3* Quarterly Update 1 or higher (Minimum required version)
Note: See Certifications on My Oracle Support for information on specific Quarterly Updates requirements.
Red Hat Enterprise Linux AS/ES 3* Quarterly Update 4 (Recommended version)
Note: From the Package Group Selection screen, select Legacy Software Development. The following components will be installed automatically:
* compat-db-4.0.14-5.1
* compat-gcc-7.3-2.96.128
* compat-libstdc++-7.3-2.96.128
* compat-gcc-c++-7.3-2.96.128
* compat-libstdc++-devel-7.3-2.96.128
* setarch-1.3-1
* pdksh-5.2.14-21 (Oracle Discoverer)
The following required component must be installed manually:
* openmotif-2.1.30-x
Note: Available on Disk 3 of Quarterly Update 4 media.
Red Hat Enterprise Linux AS/ES 4* Legacy Software Development package and X Software Development package
Note: Select these packages from the Package Group Selection screen. If the operating system is already installed, use System Settings > Add/Remove Applications to install these two packages.
The following components will be installed automatically:
* compat-db-4.1.25-9
* compat-gcc-32-3.2.3-47.3
* compat-gcc-32-c++-3.2.3-47.3
* compat-oracle-rhel4-1.0-5 (from Oracle patch 4198954)
* compat-libcwait-2.1-1 (from Oracle patch 4198954)
* compat-libgcc-296-2.96-132.7.2
* compat-libstdc++-296-2.96-132.7.2
* compat-libstdc++-33-3.2.3-47.3
* xorg-x11-deprecated-libs-devel-6.8.1-23.EL
* xorg-x11-deprecated-libs-6.8.1-23.EL
The following required component must be installed manually:
* openmotif-2.1.30-x
Note: For information on downloading the openmotif component, see the instructions at the following URL: https://rhn.redhat.com/errata/RHSA-2 005-412.html
SUSE Linux Enterprise Server 8 The following required components must be installed manually:
* openmotif-2.1.30-x
* gcc 2.95.3
* SUSE Linux Enterprise Server 8 Service Pack 3
Note:
* Download "openmotif-2.1.30-x" from:
http://support.novell.com/techcenter/search/search.do?cmd=displayKC&externalId 061;70bbf5fc1e287442b21b3c602acd7f71html
* Download the SUSE Linux Enterprise Server 8 Service Pack 3 from: http://download.novell.com/directed
* gcc 2.95.3 is included in the SUSE Linux Enterprise Server 8 operating system CDs named as gcc_old package
* Install glibc-devel during the installation of the operating system by selecting the "C/C++ Compiler and Tools" option. If the operating system is already installed, manually select the package when installing SUSE Linux Enterprise Server 8 Service Pack 3.
SUSE Linux Enterprise Server 9 The following required components must be installed manually:
* openmotif-2.1.30-x
* gcc 2.95.3
* orarun-1.8-109
Note:
* /suse/s390/openmotif21-libs-2.1.30MLI4-119.1.s390.rpm is available in SUSE Linux Enterprise Server 9 CD2
* gcc 2.95.3 is included in the SUSE Linux Enterprise Server 9 operating system CDs named as gcc_old package
* orarun-1.8-109 can be downloaded from http://ftp.novell.com/partners/oracle/sles-9/
SUSE Linux Enterprise Server 10 Service Pack 1 (SP1) or higher is required. The following components must also be installed manually:
* db1-1.85-991
* gcc 2.95.3 1
* gdbm-devel-1.8.3-243.22
* binutils-2.153
Additionally, the following must be installed manually from the SLES 10 distribution media if not already on the system:
* openmotif21-libs-2.1.30MLI4-143.2
* orarun-1.9-21.2 (for SLES 10 SP1) / orarun-1.9-21.24 (for SLES 10 SP2)
Note :
1: Download from the Novell site: ftp://ftp.novell.com/partners/oracle/ebiz11i
2: Install from SLES 10 distribution media if not already installed as part of "C/C++ Compiler & Tools" Development package
3: GNU linker (ld) version 2.15 is required for relinking the modules in Advanced Planning & Scheduling (MSC, MSO, MSR) - install it from the Novell site: ftp://ftp.novell.com/partners/oracle/ebiz11i
Solaris 8 (5.8), 9 (5.9)
J2SE Solaris Recommended Patch Cluster, dated 7/05/05 or later
HP-UX PA-RISC 11.11
PHCO_25452, PHNE_25084, PHNE_25642, PHSS_24638 (C++), GOLDQPK11i-December 01, C++ Compiler C.03.27 (or higher) or HP C/aC++ Developer's Bundle**
HP-UX PA-RISC 11.23, 11.31 C++ Compiler A.03.60 (or higher) or HP C/aC++ Developer's Bundle**
HP-UX Itanium 11.23, 11.31 None
IBM AIX 5L (5.2, 5.3)
Visual Age C++ 6.0.0.5 (or higher)3 and Oct. 2003 PTF, or IBM XL 7.0 C/C++1,2,3 runtime libraries , or IBM XL 8.0 C/C++1,2 runtime libraries. For other minimum software versions and patches required to support Oracle Products on IBM pSeries, see
My Oracle Support Document 282036.1.
For installations on 32-bit kernel AIX 5.3 Technology Level (TL) 6 with Service Pack 4 and below, please install the APAR IZ05077 or use the 64-bit kernel.
IBM AIX 6 (6.1) Service Pack 1 (AIX 6100-00-01) or higher. IBM XL 8.0 C/C++ (at least at the November 2007 PTF level - 8.0.0.17) runtime libraries. APAR IZ10223 ('Olson Timezone settings is not working for 64-bit Applications') for base level AIX (6100-00).
Windows 2000 Service Pack 2. See also General Requirements for Windows.
Windows Server 2003 None. See General Requirements for Windows.
Tuesday
Apps 11.5.10 or 11.5.10 CU1 to CU2
My database version 9.2.0.5.0
If the release level of your system is 11.5.10 or 11.5.10 CU1, follow the instructions in this section to apply CU2.
Update Steps See Metalink document-316366.1
1.Compile invalid objects
2.Run auto config on Apps and DB tier
3.Install and run the Technology Stack Validation utility to verify minimum technology component versions and other configuration requirements.
Install the utility by applying patch 4318672 on all application tier server nodes.
See the patch readme file for instructions.
Note:Follow the instructions provided by the utility to fix any failures or warnings reported. Run it again on each node that reported a failure. We highly recommend that you also correct all warnings.
Then, perform the following tasks in the order listed.
* Apply AD patch 4229931.
* Apply patch 4297568 on the concurrent processing server node.
* Apply the CU2 driver (u3460000.drv).
Post-update Steps
If you have licensed Incentive Compensation (CN) or Human Resources Intelligence (HRI), you must complete additional Discoverer End User Layer (EUL) implementation steps after you apply CU2. See Discoverer 4i End User Layer (EUL) Maintenance for Oracle Applications 11i (Doc ID: 182106.1).
If you have Forms: 6.0.8.27.x --> You are on Developer 6i Patch 18
If you have Forms: 6.0.8.26.x --> You are on Developer 6i Patch 17
If you have Forms: 6.0.8.25.x --> You are on Developer 6i Patch 16
If you have Forms: 6.0.8.24.x --> You are on Developer 6i Patch 15
************* Start of AutoPatch session *************
AutoPatch version: 11.5.0
AutoPatch started at: Mon Oct 04 2010 22:21:59
AutoPatch end time at: Oct 05 06:30
Configure Linux sendmail with GMAIL
Configure Linux sendmail with GMAIL
1.Backup /etc/mail/sendmail.mc and /etc/mail/sendmail.cf
2.Create certs dir in /etc/mail
3.Edit sendmail.mc
Add this lines
define(`CERT_DIR', `/etc/mail/certs')
define(`confCACERT_PATH', `CERT_DIR')
define(`confCACERT', `CERT_DIR/ca-bundle.crt')
define(`confCRL', `CERT_DIR/ca-bundle.crt')
define(`confSERVER_CERT', `CERT_DIR/sendmail.pem')
define(`confSERVER_KEY', `CERT_DIR/sendmail.pem')
define(`confCLIENT_CERT', `CERT_DIR/sendmail.pem')
define(`confCLIENT_KEY', `CERT_DIR/sendmail.pem')
define(`confAUTH_OPTIONS', `A')dnl
define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
TRUST_AUTH_MECH(`EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
FEATURE(`authinfo', `Hash -o /etc/mail/authinfo')dnl
define(`SMART_HOST', `smtp.gmail.com')dnl
define(`RELAY_MAILER_ARGS', `TCP $h 587')
define(`ESMTP_MAILER_ARGS', `TCP $h 587')
Note: Sometime the quotes will not copy properly, check the quotes(two different quotes is there)4. Create authinfo file in /etc/mail dir
#touch authinfo
5.Copy the following commands in the authinfo file ( Replace gmail username and password)
AuthInfo:smtp.gmail.com "U:root" "I:yourid@gmail.com" "P:
AuthInfo:smtp.gmail.com:587 "U:root" "I:yourid@gmail.com" "P:
6. Go to /etc/mail/certs dir
Run these following commands to create certificates ( give appropriate values )
#openssl req -new -x509 -keyout cakey.pem -out cacert.pem -days 3650
#openssl req -nodes -new -x509 -keyout sendmail.pem -out sendmail.pem -days 3650
7. Compile sendmail.mc file using following command
#m4 sendmail.mc > sendmail.cf
8. Restart sendmail Service
#service sendmail restart
9. Check whether mails are going
#mailx -s “Test Mail” mailid@gmail.com
Test message
.
CC .
Check the log file
#tail –f /var/log/maillog
Now we can able to use this smtp relay with other application
Note:
Give smtp server name as “ localhost “ and Port 25 . it will work with localhost name only.
In Oracle Applications - We can use this . In OAM workflow mailer configuration give outbound server name “localhost” .
Then you can receive workflow notification mails, alert mails and all Apps related mails.
Friday
View Oracle Apps Table space free size and used in percentage
SELECT /* + RULE */ df.tablespace_name "Tablespace",
df.bytes / (1024 * 1024) "Size (MB)",
SUM(fs.bytes) / (1024 * 1024) "Free (MB)",
Nvl(Round(SUM(fs.bytes) * 100 / df.bytes),1) "% Free",
Round((df.bytes - SUM(fs.bytes)) * 100 / df.bytes) "% Used"
FROM dba_free_space fs,
(SELECT tablespace_name,SUM(bytes) bytes
FROM dba_data_files
GROUP BY tablespace_name) df
WHERE fs.tablespace_name (+) = df.tablespace_name
GROUP BY df.tablespace_name,df.bytes
UNION ALL
SELECT /* + RULE */ df.tablespace_name tspace,
fs.bytes / (1024 * 1024),
SUM(df.bytes_free) / (1024 * 1024),
Nvl(Round((SUM(fs.bytes) - df.bytes_used) * 100 / fs.bytes), 1),
Round((SUM(fs.bytes) - df.bytes_free) * 100 / fs.bytes)
FROM dba_temp_files fs,
(SELECT tablespace_name,bytes_free,bytes_used
FROM v$temp_space_header
GROUP BY tablespace_name,bytes_free,bytes_used) df
WHERE fs.tablespace_name (+) = df.tablespace_name
GROUP BY df.tablespace_name,fs.bytes,df.bytes_free,df.bytes_used
ORDER BY 4 DESC;
Sample output:
Tablespace Size (MB) Free (MB) % Free % Used
------------------------------ ---------- ---------- ---------- ----------
UNDOTBS1 65 17.8125 27 73
EXAMPLE 100 22.625 23 77
USERS 5 1.0625 21 79
TEMP 20 2 10 90
SYSAUX 625.125 54.5 9 91
SYSTEM 700 9.0625 1 99
Wednesday
Error Oacore while starting
Usually Apache wont cause any problem while coming up.
Following error can be seen in $INST_TOP/log/ora/10.1.3/opmn/oacore_default_group_1/oacorestd.err file.
==========================================================
08/02/03 21:39:32 Error:
08/02/03 21:39:33 *** (SEVERE) Failed to set the internal configuration of the OC4J JMS Server with: XMLJMSServerConfig[file:/slot/ems1696/appmgr/inst/apps/mz2st121_rws60050rems/ora/10.1.3/j2ee/oacore/config/jms.xml]
08/02/03 21:39:34 Error initializing server: Error initializing ejb-modules: Resource exception(OracleASjms) for MessageDrivenBean event during endpoint activation: failure looking up ConnectionFactoryJndiName:jms/XAQueueConnectionFactory: javax.resource.spi.ResourceAdapterInternalException: Looking up jms/XAQueueConnectionFactory: javax.naming.NameNotFoundException: jms/XAQueueConnectionFactory not found
08/02/03 21:42:28 Error:
When we start the services, a lock file will be generated for the process and this lock file will persist till the time services are up
This is a “safety feature” within the lightweight (pure java) OC4J Java Messaging System (JMS) implementation. The OC4J Java Messaging System creates a lock file to constrain access to a specific persistent message store to the single OC4J instance that created it.
The persistence lock file captures information about the OC4J instance that owns or previously owned the persistence store and this information includes the IP address of the owning oc4j instance. During startup if the OC4J Java Messaging System (JMS) discovers that a persistence store it has been configured to use has a lock file that it doesn’t own it will abort the startup procedure to avoid data corruption.When we bring down the services, the lock file will be removed automatically.
Now when the services are not brought down gracefully then in that case the lock file will be still present and this file will create problem when we try to bring up the environment. Because for system, the message store is owned by some other OC4J instance and so it won’t allow any other OC4J instance to start the service.
Solution to this problem is to remove these lock files and start the service. Lock files will be present at the below locations.
In case of OACORE services, lock file will be present at $INST_TOP/ora/10.1.3/j2ee/oacore/persistence/oacore_default_group_1 directory.
Remove all the files under this directory and start the oacore service.
In case even the forms are not opening and giving the same error, then lock files for forms can be located at $INST_TOP/ora/10.1.3/j2ee/forms/persistence/forms_default_group_1 directory and all the files under this directory can be removed. Forms services will come up, once these lock files are removed.
Tuesday
Computer Network Fundamentals
Introduction
A computer network allows computers to communicate with many other computers and to share resources and information. The Advanced Research Projects Agency (ARPA) funded the design of the "Advanced Research Projects Agency Network" (ARPANET) for the United States Department of Defense. It was the first operational computer network in the world.Development of the network began in 1969, based on designs begun in the 1960s.
Network classification
Types of networks
Below is a list of the most common types of computer networks in order of scale.
Personal area network
A personal area network (PAN) is a computer network used for communication among computer devices close to one person. Some examples of devices that are used in a PAN are personal computers, printers, fax machines, telephones, PDAs, scanners, and even video game consoles. Such a PAN may include wired and wireless connections between devices. The reach of a PAN is typically at least about 20-30 feet (approximately 6-9 meters), but this is expected to increase with technology improvements.
Local area network
A local Area Network (LAN) is a computer network covering a small physical area, like a home, office, or small group of buildings, such as a school, or an airport. Current wired LANs are most likely to be based on Ethernet technology, although new standards like ITU-T G.hn also provide a way to create a wired LAN using existing home wires (coaxial cables, phone lines and power lines)
For example, a library may have a wired or wireless LAN for users to interconnect local devices (e.g., printers and servers) and to connect to the internet. On a wired LAN, PCs in the library are typically connected by category 5 (Cat5) cable, running the IEEE 802.3 protocol through a system of interconnected devices and eventually connect to the Internet. The cables to the servers are typically on Cat 5e enhanced cable, which will support IEEE 802.3 at 1 Gbit/s. A wireless LAN may exist using a different IEEE protocol, 802.11b, 802.11g or possibly 802.11n. The staff computers (bright green in the figure) can get to the color printer, checkout records, and the academic network and the Internet. All user computers can get to the Internet and the card catalog. Each workgroup can get to its local printer. Note that the printers are not accessible from outside their workgroup.
Typical library network, in a branching tree topology and controlled access to resources
All interconnected devices must understand the network layer (layer 3), because they are handling multiple subnets (the different colors). Those inside the library, which have only 10/100 Mbit/s Ethernet connections to the user device and a Gigabit Ethernet connection to the central router, could be called "layer 3 switches" because they only have Ethernet interfaces and must understand IP. It would be more correct to call them access routers, where the router at the top is a distribution router that connects to the Internet and academic networks' customer access routers.
The defining characteristics of LANs, in contrast to WANs (Wide Area Networks), include their higher data transfer rates, smaller geographic range, and lack of a need for leased telecommunication lines. Current Ethernet or other IEEE 802.3 LAN technologies operate at speeds up to 10 Gbit/s. This is the data transfer rate. IEEE has projects investigating the standardization of 40 and 100 Gbit/s.
Campus area network
A campus area network (CAN) is a computer network made up of an interconnection of local area networks (LANs) within a limited geographical area. It can be considered one form of a metropolitan area network, specific to an academic setting.
In the case of a university campus-based campus area network, the network is likely to link a variety of campus buildings including; academic departments, the university library and student residence halls. A campus area network is larger than a local area network but smaller than a wide area network (WAN) (in some cases).
The main aim of a campus area network is to facilitate students accessing internet and university resources. This is a network that connects two or more LANs but that is limited to a specific and contiguous geographical area such as a college campus, industrial complex, office building, or a military base. A CAN may be considered a type of MAN (metropolitan area network), but is generally limited to a smaller area than a typical MAN. This term is most often used to discuss the implementation of networks for a contiguous area. This should not be confused with a Controller Area Network. A LAN connects network devices over a relatively short distance. A networked office building, school, or home usually contains a single LAN, though sometimes one building will contain a few small LANs (perhaps one per room), and occasionally a LAN will span a group of nearby buildings.
Metropolitan area network
A metropolitan area network (MAN) is a network that connects two or more local area networks or campus area networks together but does not extend beyond the boundaries of the immediate town/city. Routers, switches and hubs are connected to create a metropolitan area network.
Wide area network
A wide area network (WAN) is a computer network that covers a broad area (i.e. any network whose communications links cross metropolitan, regional, or national boundaries [1]). Less formally, a WAN is a network that uses routers and public communications links. Contrast with personal area networks (PANs), local area networks (LANs), campus area networks (CANs), or metropolitan area networks (MANs), which are usually limited to a room, building, campus or specific metropolitan area (e.g., a city) respectively. The largest and most well-known example of a WAN is the Internet. A WAN is a data communications network that covers a relatively broad geographic area (i.e. one city to another and one country to another country) and that often uses transmission facilities provided by common carriers, such as telephone companies. WAN technologies generally function at the lower three layers of the OSI reference model: the physical layer, the data link layer, and the network layer.
Global area network
A global area networks (GAN) (see also IEEE 802.20) specification is in development by several groups, and there is no common definition. In general, however, a GAN is a model for supporting mobile communications across an arbitrary number of wireless LANs, satellite coverage areas, etc. The key challenge in mobile communications is "handing off" the user communications from one local coverage area to the next. In IEEE Project 802, this involves a succession of terrestrial WIRELESS local area networks (WLAN).
Virtual private network
A virtual private network (VPN) is a computer network in which some of the links between nodes are carried by open connections or virtual circuits in some larger network (e.g., the Internet) instead of by physical wires. The data link layer protocols of the virtual network are said to be tunneled through the larger network when this is the case. One common application is secure communications through the public Internet, but a VPN need not have explicit security features, such as authentication or content encryption. VPNs, for example, can be used to separate the traffic of different user communities over an underlying network with strong security features.
A VPN may have best-effort performance, or may have a defined service level agreement (SLA) between the VPN customer and the VPN service provider. Generally, a VPN has a topology more complex than point-to-point.
A VPN allows computer users to appear to be editing from an IP address location other than the one which connects the actual computer to the Internet.
Internetwork
An Internetwork is the connection of two or more distinct computer networks or network segments via a common routing technology. The result is called an internetwork (often shortened to internet). Two or more networks or network segments connect using devices that operate at layer 3 (the 'network' layer) of the OSI Basic Reference Model, such as a router. Any interconnection among or between public, private, commercial, industrial, or governmental networks may also be defined as an internetwork.
In modern practice, interconnected networks use the Internet Protocol. There are at least three variants of internetworks, depending on who administers and who participates in them: Intranet Extranet Internet
Intranets and extranets may or may not have connections to the Internet. If connected to the Internet, the intranet or extranet is normally protected from being accessed from the Internet without proper authorization. The Internet is not considered to be a part of the intranet or extranet, although it may serve as a portal for access to portions of an extranet.
Intranet
An intranet is a set of networks, using the Internet Protocol and IP-based tools such as web browsers and file transfer applications, that is under the control of a single administrative entity. That administrative entity closes the intranet to all but specific, authorized users. Most commonly, an intranet is the internal network of an organization. A large intranet will typically have at least one web server to provide users with organizational information.
Extranet
An extranet is a network or internetwork that is limited in scope to a single organization or entity but which also has limited connections to the networks of one or more other usually, but not necessarily, trusted organizations or entities (e.g., a company's customers may be given access to some part of its intranet creating in this way an extranet, while at the same time the customers may not be considered 'trusted' from a security standpoint). Technically, an extranet may also be categorized as a CAN, MAN, WAN, or other type of network, although, by definition, an extranet cannot consist of a single LAN; it must have at least one connection with an external network.
Internet
The Internet consists of a worldwide interconnection of governmental, academic, public, and private networks based upon the networking technologies of the Internet Protocol Suite. It is the successor of the Advanced Research Projects Agency Network (ARPANET) developed by DARPA of the U.S. Department of Defense. The Internet is also the communications backbone underlying the World Wide Web (WWW). The 'Internet' is most commonly spelled with a capital 'I' as a proper noun, for historical reasons and to distinguish it from other generic internetworks.
Participants in the Internet use a diverse array of methods of several hundred documented, and often standardized, protocols compatible with the Internet Protocol Suite and an addressing system (IP Addresses) administered by the Internet Assigned Numbers Authority and address registries. Service providers and large enterprises exchange information about the reachability of their address spaces through the Border Gateway Protocol (BGP), forming a redundant worldwide mesh of transmission paths.
Basic hardware components
All networks are made up of basic hardware building blocks to interconnect network nodes, such as Network Interface Cards (NICs), Bridges, Hubs, Switches, and Routers. In addition, some method of connecting these building blocks is required, usually in the form of galvanic cable (most commonly Category 5 cable). Less common are microwave links (as in IEEE 802.12) or optical cable ("optical fiber"). An Ethernet card may also be required.
Network interface cards
A network card, network adapter, or NIC (network interface card) is a piece of computer hardware designed to allow computers to communicate over a computer network. It provides physical access to a networking medium and often provides a low-level addressing system through the use of MAC addresses.
Repeaters
A repeater is an electronic device that receives a signal and retransmits it at a higher power level, or to the other side of an obstruction, so that the signal can cover longer distances without degradation. In most twisted pair Ethernet configurations, repeaters are required for cable which runs longer than 100 meters.
Hubs
A network hub contains multiple ports. When a packet arrives at one port, it is copied unmodified to all ports of the hub for transmission. The destination address in the frame is not changed to a broadcast address.
Bridges
A network bridge connects multiple network segments at the data link layer (layer 2) of the OSI model. Bridges do not promiscuously copy traffic to all ports, as hubs do, but learn which MAC addresses are reachable through specific ports. Once the bridge associates a port and an address, it will send traffic for that address only to that port. Bridges do send broadcasts to all ports except the one on which the broadcast was received.
Bridges learn the association of ports and addresses by examining the source address of frames that it sees on various ports. Once a frame arrives through a port, its source address is stored and the bridge assumes that MAC address is associated with that port. The first time that a previously unknown destination address is seen, the bridge will forward the frame to all ports other than the one on which the frame arrived.
Bridges come in three basic types:
Local bridges: Directly connect local area networks (LANs)
Remote bridges: Can be used to create a wide area network (WAN) link between LANs. Remote bridges, where the connecting link is slower than the end networks, largely have been replaced with routers.
Wireless bridges: Can be used to join LANs or connect remote stations to LANs
Switches
A network switch is a device that forwards and filters OSI layer 2 datagrams (chunk of data communication) between ports (connected cables) based on the MAC addresses in the packets.This is distinct from a hub in that it only forwards the packets to the ports involved in the communications rather than all ports connected. Strictly speaking, a switch is not capable of routing traffic based on IP address (OSI Layer 3) which is necessary for communicating between network segments or within a large or complex LAN. Some switches are capable of routing based on IP addresses but are still called switches as a marketing term. A switch normally has numerous ports, with the intention being that most or all of the network is connected directly to the switch, or another switch that is in turn connected to a switch.
Switch is a marketing term that encompasses routers and bridges, as well as devices that may distribute traffic on load or by application content (e.g., a Web URL identifier). Switches may operate at one or more OSI model layers, including physical, data link, network, or transport (i.e., end-to-end). A device that operates simultaneously at more than one of these layers is called a multilayer switch.
Overemphasizing the ill-defined term "switch" often leads to confusion when first trying to understand networking. Many experienced network designers and operators recommend starting with the logic of devices dealing with only one protocol level, not all of which are covered by OSI. Multilayer device selection is an advanced topic that may lead to selecting particular implementations, but multilayer switching is simply not a real-world design concept.Routers
A router is a networking device that forwards packets between networks using information in protocol headers and forwarding tables to determine the best next router for each packet. Routers work at the Network Layer of the OSI model and the Internet Layer of TCP/IP.
Protocol (computing)
In computing, a protocol is a set of rules which is used by computers to communicate with each other across a network. A protocol is a convention or standard that controls or enables the connection, communication, and data transfer between computing endpoints. In its simplest form, a protocol can be defined as the rules governing the syntax, semantics, and synchronization of communication. Protocols may be implemented by hardware, software, or a combination of the two. At the lowest level, a protocol defines the behavior of a hardware connection.Typical properties
While protocols can vary greatly in purpose and sophistication, most specify one or more of the following properties
Detection of the underlying physical connection (wired or wireless), or the existence of the other endpoint or node
Negotiation of various connection characteristics
How to start and end a message
Procedures on formatting a message
What to do with corrupted or improperly formatted messages (error correction)
How to detect unexpected loss of the connection, and what to do next
Termination of the session and/or connection.
Importance
The protocols in human communication are separate rules about appearance, speaking, listening and understanding. All these rules, also called protocols of conversation, represent different layers of communication. They work together to help people successfully communicate. The need for protocols also applies to network devices. Computers have no way of learning protocols, so network engineers have written rules for communication that must be strictly followed for successful host-to-host communication. These rules apply to different layers of sophistication such as which physical connections to use, how hosts listen, how to interrupt, how to say good-bye, and in short how to communicate, what language to use and many others. These rules, or protocols, that work together to ensure successful communication are grouped into what is known as a protocol suite.
The widespread use and expansion of communications protocols is both a prerequisite for the Internet, and a major contributor to its power and success. The pair of Internet Protocol (or IP) and Transmission Control Protocol (or TCP) are the most important of these, and the term TCP/IP refers to a collection (a "protocol suite") of its most used protocols. Most of the Internet's communication protocols are described in the RFC documents of the Internet Engineering Task Force (or IETF).
Object-oriented programming has extended the use of the term to include the programming protocols available for connections and communication between objects.
Generally, only the simplest protocols are used alone. Most protocols, especially in the context of communications or networking, are layered together into protocol stacks where the various tasks listed above are divided among different protocols in the stack.
Whereas the protocol stack denotes a specific combination of protocols that work together, a reference model is a software architecture that lists each layer and the services each should offer. The classic seven-layer reference model is the OSI model, which is used for conceptualizing protocol stacks and peer entities. This reference model also provides an opportunity to teach more general software engineering concepts like hiding, modularity, and delegation of tasks. This model has endured in spite of the demise of many of its protocols (and protocol stacks) originally sanctioned by the ISO.
Common protocols
IP (Internet Protocol)
UDP (User Datagram Protocol)
TCP (Transmission Control Protocol)
DHCP (Dynamic Host Configuration Protocol)
HTTP (Hypertext Transfer Protocol)
FTP (File Transfer Protocol)
Telnet (Telnet Remote Protocol)
SSH (Secure Shell Remote Protocol)
POP3 (Post Office Protocol 3)
SMTP (Simple Mail Transfer Protocol)
IMAP (Internet Message Access Protocol)
SOAP (Simple Object Access Protocol)
PPP (Point-to-Point Protocol)
RFB (Remote Framebuffer Protocol)
Protocol testing
In general, protocol testers work by capturing the information exchanged between a Device Under Test (DUT) and a reference device known to operate properly. In the example of a manufacturer producing a new keyboard for a personal computer, the Device Under Test would be the keyboard and the reference device, the PC. The information exchanged between the two devices is governed by rules set out in a technical specification called a "communication protocol". Both the nature of the communication and the actual data exchanged are defined by the specification. Since communication protocols are state-dependent (what should happen next depends on what previously happened), specifications are complex and the documents describing them can be hundreds of pages.
The captured information is decoded from raw digital form into a human-readable format that permits users of the protocol tester to easily review the exchanged information. Protocol testers vary in their abilities to display data in multiple views, automatically detect errors, determine the root causes of errors, generate timing diagrams, etc.
Some protocol testers can also generate traffic and thus act as the reference device. Such testers generate protocol-correct traffic for functional testing, and may also have the ability to deliberately introduce errors to test for the DUT's ability to deal with error conditions.
Protocol testing is an essential step towards commercialization of standards-based products. It helps to ensure that products from different manufacturers will operate together properly ("interoperate") and so satisfy customer expectations.
What is Computer POST & beep codes for all BIOS Chips
The steps of a POST
Each time the computer boots up the computer must past the POST. Below is the common steps a POST performs each time your computer starts.
- Test the power supply to ensure that it is turned on and that it releases its reset signal.
- CPU must exit the reset status mode and thereafter be able to execute instructions.
- BIOS checksum must be valid, meaning that it must be readable.
- CMOS checksum must be valid, meaning that it must be readable.
- CPU must be able to read all forms of memory such as the memory controller, memory bus, and memory module.
- The first 64KB of memory must be operational and have the capability to be read and written to and from, and capable of containing the POST code.
- I/O bus / controller must be accessible.
- I/O bus must be able to write / read from the video subsystem and be able to read all video RAM.
AMI BIOS beep codes
Below are the AMI BIOS Beep codes that can occur. However, because of the wide variety of different computer manufacturers with this BIOS, the beep codes may vary.
Beep Code | Descriptions |
|
1 short | DRAM refresh failure |
|
2 short | Parity circuit failure |
|
3 short | Base 64K RAM failure |
|
4 short | System timer failure |
|
5 short | Process failure |
|
6 short | Keyboard controller Gate A20 error |
|
7 short | Virtual mode exception error |
|
8 short | Display memory Read/Write test failure |
|
9 short | ROM BIOS checksum failure |
|
10 short | CMOS shutdown Read/Write error |
|
11 short | Cache Memory error |
|
1 long, 3 short | Conventional/Extended memory failure |
|
1 long, 8 short | Display/Retrace test failed |
|
Below are Award BIOS Beep codes that can occur. However, because of the wide variety of different computer manufacturers with this BIOS, the beep codes may vary.
Beep Code | Description |
|
1 long, 2 short | Indicates a video error has occurred and the BIOS cannot initialize the video screen to display any additional information |
|
Any other beep(s) | RAM problem. |
|
If any other correctable hardware issues, the BIOS will display a message.
Below are IBM BIOS Beep codes that can occur. However, because of the wide variety of models shipping with this BIOS, the beep codes may vary.
Tones | Error |
Error Tone. (two sets of different tones) | Problem with logic board or SCSI bus. |
Startup tone, drive spins, no video | Problem with video controller. |
Powers on, no tone. | Logic board problem. |
High Tone, four higher tones. | Problem with SIMM. |
Below are the beep codes for PHOENIX BIOS Q3.07 OR 4.X
Beep Code | Description / What to Check |
1-1-1-3 | Verify Real Mode. |
1-1-2-1 | Get CPU type. |
1-1-2-3 | Initialize system hardware. |
1-1-3-1 | Initialize chipset registers with initial POST values. |
1-1-3-2 | Set in POST flag. |
1-1-3-3 | Initialize CPU registers. |
1-1-4-1 | Initialize cache to initial POST values. |
1-1-4-3 | Initialize I/O. |
1-2-1-1 | Initialize Power Management. |
1-2-1-2 | Load alternate registers with initial POST values. |
1-2-1-3 | Jump to UserPatch0. |
1-2-2-1 | Initialize keyboard controller. |
1-2-2-3 | BIOS ROM checksum. |
1-2-3-1 | 8254 timer initialization. |
1-2-3-3 | 8237 DMA controller initialization. |
1-2-4-1 | Reset Programmable Interrupt Controller. |
1-3-1-1 | Test DRAM refresh. |
1-3-1-3 | Test 8742 Keyboard Controller. |
1-3-2-1 | Set ES segment to register to 4 GB. |
1-3-3-1 | 28 Autosize DRAM. |
1-3-3-3 | Clear 512K base RAM. |
1-3-4-1 | Test 512 base address lines. |
1-3-4-3 | Test 512K base memory. |
1-4-1-3 | Test CPU bus-clock frequency. |
1-4-2-4 | Reinitialize the chipset. |
1-4-3-1 | Shadow system BIOS ROM. |
1-4-3-2 | Reinitialize the cache. |
1-4-3-3 | Autosize cache. |
1-4-4-1 | Configure advanced chipset registers. |
1-4-4-2 | Load alternate registers with CMOS values. |
2-1-1-1 | Set Initial CPU speed. |
2-1-1-3 | Initialize interrupt vectors. |
2-1-2-1 | Initialize BIOS interrupts. |
2-1-2-3 | Check ROM copyright notice. |
2-1-2-4 | Initialize manager for PCI Options ROMs. |
2-1-3-1 | Check video configuration against CMOS. |
2-1-3-2 | Initialize PCI bus and devices. |
2-1-3-3 | Initialize all video adapters in system. |
2-1-4-1 | Shadow video BIOS ROM. |
2-1-4-3 | Display copyright notice. |
2-2-1-1 | Display CPU type and speed. |
2-2-1-3 | Test keyboard. |
2-2-2-1 | Set key click if enabled. |
2-2-2-3 | 56 Enable keyboard. |
2-2-3-1 | Test for unexpected interrupts. |
2-2-3-3 | Display prompt Press F2 to enter SETUP. |
2-2-4-1 | Test RAM between 512 and 640k. |
2-3-1-1 | Test expanded memory. |
2-3-1-3 | Test extended memory address lines. |
2-3-2-1 | Jump to UserPatch1. |
2-3-2-3 | Configure advanced cache registers. |
2-3-3-1 | Enable external and CPU caches. |
2-3-3-3 | Display external cache size. |
2-3-4-1 | Display shadow message. |
2-3-4-3 | Display non-disposable segments. |
2-4-1-1 | Display error messages. |
2-4-1-3 | Check for configuration errors. |
2-4-2-1 | Test real-time clock. |
2-4-2-3 | Check for keyboard errors |
2-4-4-1 | Set up hardware interrupts vectors. |
2-4-4-3 | Test coprocessor if present. |
3-1-1-1 | Disable onboard I/O ports. |
3-1-1-3 | Detect and install external RS232 ports. |
3-1-2-1 | Detect and install external parallel ports. |
3-1-2-3 | Re-initialize onboard I/O ports. |
3-1-3-1 | Initialize BIOS Data Area. |
3-1-3-3 | Initialize Extended BIOS Data Area. |
3-1-4-1 | Initialize floppy controller. |
3-2-1-1 | Initialize hard-disk controller. |
3-2-1-2 | Initialize local-bus hard-disk controller. |
3-2-1-3 | Jump to UserPatch2. |
3-2-2-1 | Disable A20 address line. |
3-2-2-3 | Clear huge ES segment register. |
3-2-3-1 | Search for option ROMs. |
3-2-3-3 | Shadow option ROMs. |
3-2-4-1 | Set up Power Management. |
3-2-4-3 | Enable hardware interrupts. |
3-3-1-1 | Set time of day. |
3-3-1-3 | Check key lock. |
3-3-3-1 | Erase F2 prompt. |
3-3-3-3 | Scan for F2 key stroke. |
3-3-4-1 | Enter SETUP. |
3-3-4-3 | Clear in-POST flag. |
3-4-1-1 | Check for errors |
3-4-1-3 | POST done--prepare to boot operating system. |
3-4-2-1 | One beep. |
3-4-2-3 | Check password (optional). |
3-4-3-1 | Clear global descriptor table. |
3-4-4-1 | Clear parity checkers. |
3-4-4-3 | Clear screen (optional). |
3-4-4-4 | Check virus and backup reminders. |
4-1-1-1 | Try to boot with INT 19. |
4-2-1-1 | Interrupt handler error. |
4-2-1-3 | Unknown interrupt error. |
4-2-2-1 | Pending interrupt error. |
4-2-2-3 | Initialize option ROM error. |
4-2-3-1 | Shutdown error. |
4-2-3-3 | Extended Block Move. |
4-2-4-1 | Shutdown 10 error. |
4-3-1-3 | Initialize the chipset. |
4-3-1-4 | Initialize refresh counter. |
4-3-2-1 | Check for Forced Flash. |
4-3-2-2 | Check HW status of ROM. |
4-3-2-3 | BIOS ROM is OK. |
4-3-2-4 | Do a complete RAM test. |
4-3-3-1 | Do OEM initialization. |
4-3-3-2 | Initialize interrupt controller. |
4-3-3-3 | Read in bootstrap code. |
4-3-3-4 | Initialize all vectors. |
4-3-4-1 | Boot the Flash program. |
4-3-4-2 | Initialize the boot device. |
4-3-4-3 | Boot code was read OK. |