{"id":35,"date":"2013-09-15T18:12:45","date_gmt":"2013-09-15T22:12:45","guid":{"rendered":"http:\/\/netapp.tynsoe.org\/wordpress\/?p=35"},"modified":"2013-09-15T18:12:45","modified_gmt":"2013-09-15T22:12:45","slug":"ocum-centos","status":"publish","type":"post","link":"https:\/\/ybontap.tynsoe.org\/?p=35","title":{"rendered":"Installing OnCommand Unified Manager on CentOS"},"content":{"rendered":"<p>CentOS is my favorite Linux distribution because it is the closest to RedHat you can find (<a href=\"http:\/\/en.wikipedia.org\/wiki\/CentOS\">for a reason<\/a>). And I like RedHat for the simple reason that it is the most supported Linux distribution for any enterprise applications. I know usually both RedHat and SuSE are supported, but SuSE and I was never a love story and I will save you the history of this little drama for this time.<\/p>\n<p>So, the idea is not to run CentOS in a production environment, unless you really have the heart of a warrior and do not care about being supported by a rock solid editor, but instead to run your <a title=\"Setting up your very own lab with VMware Fusion Pro 5\" href=\"http:\/\/netapp.tynsoe.org\/wordpress\/lab\/\">OnCommand Core lab<\/a> on a free OS.<\/p>\n<p>I used a CentOS 6 minimal install for this tutorial.<\/p>\n<p><!--more--><\/p>\n<h1>The problem<\/h1>\n<p>Here is what happens if you try to install the package right away after downloading it from NetApp download site :<\/p>\n<pre># chmod 755 occore-setup-5-2-linux-x64.sh \n# .\/occore-setup-5-2-linux-x64.sh \nPreparing to install OnCommand Core Package\nUnpacking files needed for the installation ...\nerror: This is not a supported platform.<\/pre>\n<p>See ? We will have to trick the installer to force the installation<\/p>\n<h1>The solution<\/h1>\n<p>[EDIT] Thanks to Hadrian in the comments, there is actually a very simple way :<\/p>\n<pre># .\/occore-setup-5-2RC1-linux-x64.sh -o<\/pre>\n<p>That&rsquo;s it !<\/p>\n<p>I leave the rest of the original article for the archives !<\/p>\n<p>The trick is just to interrupt the installer before it gets a chance to remove the uncompressed installation folder, the easiest way I found to do that is to use gdb (the linux debugger) and break on \u00ab\u00a0unlink()\u00a0\u00bb which is the C function that removes files on disk. It sounds complicated like this, but it is really trivial, as you can see : (you might have to install gdb with \u00ab\u00a0yum install gdb\u00a0\u00bb if it is not present on your system)<\/p>\n<pre>[root@localhost ~]# <strong>gdb .\/occore-setup-5-2-linux-x64.sh<\/strong> \nGNU gdb (GDB) Red Hat Enterprise Linux (7.2-60.el6_4.1)\nCopyright (C) 2010 Free Software Foundation, Inc.\nLicense GPLv3+: GNU GPL version 3 or later &lt;http:\/\/gnu.org\/licenses\/gpl.html&gt;\nThis is free software: you are free to change and redistribute it.\nThere is NO WARRANTY, to the extent permitted by law. Type \"show copying\"\nand \"show warranty\" for details.\nThis GDB was configured as \"x86_64-redhat-linux-gnu\".\nFor bug reporting instructions, please see:\n&lt;http:\/\/www.gnu.org\/software\/gdb\/bugs\/&gt;...\nReading symbols from \/root\/occore-setup-5-2-linux-x64.sh...done.\n(gdb) <strong>break unlink<\/strong>\nBreakpoint 1 at 0x400d28\n(gdb)<strong> r<\/strong><\/pre>\n<p>At this point, the installer will run and just stop when it tries to remove temporary files<\/p>\n<pre>Starting program: \/root\/occore-setup-5-2-linux-x64.sh \nPreparing to install OnCommand Core Package\nUnpacking files needed for the installation ...\nDetaching after fork from child process 2020.\nerror: This is not a supported platform.\n\nBreakpoint 1, 0x00007ffff7b343b0 in unlink () from \/lib64\/libc.so.6\nMissing separate debuginfos, use: debuginfo-install glibc-2.12-1.7.el6.x86_64\n(gdb) <strong>q<\/strong>\nA debugging session is active.\nInferior 1 [process 2017] will be killed.\nQuit anyway? (y or n) <strong>y<\/strong><\/pre>\n<p>Here we just quit with \u00ab\u00a0q\u00a0\u00bb and confirm to do so with \u00ab\u00a0y\u00a0\u00bb.<\/p>\n<p>Ok, now let&rsquo;s move the installer to a safer place :<\/p>\n<pre># mv \/tmp\/dfmsetup-*\/ ~\/dfmsetup\n# cd ~\/dfmsetup<\/pre>\n<p>Now we just have to edit the installation script and disable the system check.<\/p>\n<p>Just edit dfmsetup.sh and change the line :<\/p>\n<pre>check_os_flag=1<\/pre>\n<p>with<\/p>\n<pre>check_os_flag=0<\/pre>\n<p>Now you can run the installer :<\/p>\n<p>Note that \u00ab\u00a0NTAPdfm\u00a0\u00bb here is whatever the RPM package is named before the version string. For example, mine is called : <strong>NTAPdfm<\/strong>-5.2-16233.x86_64.rpm.<\/p>\n<p>If you are instaling an OEM release like IBM&rsquo;s, it might be different.<\/p>\n<pre>#  .\/dfmsetup.sh -p NTAPdfm\n\nWARNING: A minimum of 3072 MB of RAM is required for proper functioning of OnCommand Core Package.\nYou have only 989 MB RAM on this host.\n\nBy default, the DataFabric Manager server sends AutoSupport event messages\nand weekly reports to NetApp Technical Support. Messages are sent\nover secure HTTPS, HTTP or SMTP(HTTPS by default). This information is used to\nassist you with troubleshooting and problem resolution. AutoSupport will\nsignificantly speed problem determination and resolution should a problem occur\non the system.\nStatus AutoSupport event messages will be sent to NetApp once per\nweek and will start 24 hours after installation. If you do not want\nAutoSupport event messages sent to NetApp, you can disable\nAutoSupport by setting the AutoSupport Enabled global option to \"No\".\nThis option will initially be set to \"Unknown\" unless manually set, and\nwill automatically become \"Yes\" after 24 hours if not set manually to \"No\".\nIf you do not want to include private data such as IP addresses, host names,\nand user names, set the AutoSupport Content global option to \"minimal\".\nPlease respond with \"Yes\" if you have read and agree with the use of the\nAutoSupport feature on this DataFabric Manager server or \"No\" to abort the\ninstallation.[y,n,?]:<strong>y<\/strong>\n\nStorage systems running Data ONTAP 8 operate either in 7-Mode or\nin Cluster-Mode. Each installation of OnCommand Core can manage storage\nsystems operating in one of the two modes:\n\n[1] Cluster-Mode\n Data ONTAP 8 operating in Cluster-Mode.\n\n[2] 7-Mode\n Data ONTAP 7G and Data ONTAP 8 operating in 7-Mode.\n\nWhich kind of storage will you manage with this installation\nof OnCommand Core Package?.[1,2](default 1):\n\nEnter your NetApp DataFabric Manager server license key [?,q]: **************\nBeginning the OnCommand Core Package installation ...\nVerifying checksum of OnCommand Core Package package.\nPr\u00e9paration...              ########################################### [100%]\n   1:NTAPdfm                ########################################### [100%]\nInstalling scripts in \/etc\/init.d directory.\nCreating the DataFabric Manager server keystore.\n\n[...]\n\n        The Standard edition of the OnCommand Core Package, including the DataFabric Manager server, has\n        been installed on your computer.\n\n        You can now access OnCommand console at\n\n            http:\/\/localhost:8080\/start.html\n\n        to configure and monitor hosts and storage with DataFabric Manager server.\n\n        For help on the dfm command, enter\n\n            dfm help\n\n        at the command prompt.\n#<\/pre>\n<p>DFM should be up and running, you can point your browser to the address mentioned at the end of the installation.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>CentOS is my favorite Linux distribution because it is the closest to RedHat you can find (for a reason). And I like RedHat for the simple reason that it is the most supported Linux distribution for any enterprise applications. I know usually both RedHat and SuSE are supported, but SuSE and I was never a [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[6,7],"tags":[15,18,21],"_links":{"self":[{"href":"https:\/\/ybontap.tynsoe.org\/index.php?rest_route=\/wp\/v2\/posts\/35"}],"collection":[{"href":"https:\/\/ybontap.tynsoe.org\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/ybontap.tynsoe.org\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/ybontap.tynsoe.org\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/ybontap.tynsoe.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=35"}],"version-history":[{"count":0,"href":"https:\/\/ybontap.tynsoe.org\/index.php?rest_route=\/wp\/v2\/posts\/35\/revisions"}],"wp:attachment":[{"href":"https:\/\/ybontap.tynsoe.org\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=35"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/ybontap.tynsoe.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=35"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/ybontap.tynsoe.org\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=35"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}