Upgrading Oracle Enterprise Manager 12c R1 to 12c R2

As you might know, release 2 of Oracle Cloud Control 12c is released. If you already have installed 12c R1, upgrading to R2 is a simple process. 1-system upgrade approach is the only way to upgrade, even you have installed bundle patch 1 or not. Basically, upgrade contains two steps; upgrading Oracle Management Service and its repository (installer handles both upgrades) and upgrading agents. Here are the steps on Linux :

1. Download installation files from OEM Downloads page and unzip them. A disk space of 5.3 GB is required for decompressed installation files.

2. Stop OMS. You can also stop the service when installer prompts you to say it is still running.

$ emctl stop oms

3. Run the installer

$ ./runInstaller

 As a prerequisite, emkey should be configured properly. Run the following command:

$ emctl config emkey -copy_to_repos_from_file -repos_host <host_fqdn> -repos_port <port_number> -repos_sid <database_sid> -repos_user sysman -emkey_file /u01/app/Oracle/Middleware/wlserver_10.3.5/oms/sysman/config/emkey.ora

During installation process, repository database is also upgraded.

4. After the upgrade process, as the second phase, you need to upgrade agents. Logon to OEM, from menu Setup -> Manage Cloud Control -> Upgrade Agents. Click "Add"  and select agents to upgrade, then submit the job.

Linux based agents are marked as upgradable right away. However, when you check not upgradable agent from the Upgrade Agents page, you will see Windows based agent are listed. Because they need an extra step. Agent software should be updated from Setup -> Extensibility -> Self Update. Find the new versions of Microsoft Windows agents under Agent Software and download them. After download (you may select "Notify me" option for the download job), apply update. Following these steps, you may find your Windows based agents in upgradable agents list.

Finally, if you have upgraded Linux based agents with a non-root user, you need to run root.sh script located in <agent_home>/core/

NFS Sharing for Linux

Sharing a directory using NFS to other Linux systems is a common and handy way. To be able to explain briefly, let me separate tasks into two as server and client side. I use Oracle Linux 6 and Oracle Linux 5 respectively as server and client, though just the opposite goes through same steps. However these commands should run on every Red Hat based system.

On the server that you will create the share, edit the export file:

$ vi /etc/exports

Add line(s) to file such as:
/share_dir *(rw,sync,fsid=0) 

Pay attention not to use extra space on a line, it may cause a problem. Here, instead of "*" - which means sharing is for every one, to world - you can use client's IP or FQDN as shown above. Also if it's going to be read-only share write "ro" instead of "rw". We use "fsid=0" parameter not to get "mount.nfs4: Operation not permitted" error.

Permissions of directory, "/share_dir" and/or "/shares/nfs", should be read and execute to others if it's a read-only share or read-write and execute to others if it's writable. Otherwise you will face with "mount.nfs4: Permission denied" error when mounting the share. So alter permissions of directory:

$ chmod 757 /share_dir

Restart related services (If your server is Linux 5, use portmap instead of portreserve. ):

$ /etc/init.d/portreserve restart
$ /etc/init.d/nfs restart

You can check shares by:

$ showmount -e <server_ip> 
$ exportfs -avr

On the client simply mount the share by:

$ mount -t nfs4 <server_ip_or_host_name>:/ /mnt

Notice that, even the shared directory is "/share_dir" or "/shares/nfs" we use "/" only.