{"id":11538,"date":"2018-08-12T12:50:28","date_gmt":"2018-08-12T10:50:28","guid":{"rendered":"https:\/\/www.dbi-services.com\/blog\/documentum-silent-install-d2\/"},"modified":"2018-08-12T12:50:28","modified_gmt":"2018-08-12T10:50:28","slug":"documentum-silent-install-d2","status":"publish","type":"post","link":"https:\/\/www.dbi-services.com\/blog\/documentum-silent-install-d2\/","title":{"rendered":"Documentum &#8211; Silent Install &#8211; D2"},"content":{"rendered":"<p>In previous blogs, we installed in silent the <a title=\"Documentum \u2013 Silent Install \u2013 Things to know, binaries &amp; JMS installation\" href=\"https:\/\/www.dbi-services.com\/blog\/documentum-silent-install-things-to-know-binaries-jms-installation\/\" target=\"_blank\" rel=\"noopener\">Documentum binaries<\/a>, a <a title=\"Documentum \u2013 Silent Install \u2013 Docbroker &amp; Licences\" href=\"https:\/\/www.dbi-services.com\/blog\/documentum-silent-install-docbroker-licences\/\" target=\"_blank\" rel=\"noopener\">docbroker<\/a> (+licence(s) if needed) as well as several <a title=\"Documentum \u2013 Silent Install \u2013 Docbases\/Repositories\" href=\"https:\/\/www.dbi-services.com\/blog\/documentum-silent-install-docbasesrepositories\/\" target=\"_blank\" rel=\"noopener\">repositories<\/a>. In this one, we will see how to install D2 on a predefined list of docbases\/repositories (on the Content Server side) and you will see that, here, the process is quite different.<\/p>\n<p>D2 is supporting the silent installation since quite some time now and it is pretty easy to do. At the end of the D2 GUI Installer, there is a screen where you are asked if you want to generate a silent properties (response) file containing the information that have been set in the D2 GUI Installer. Therefore, this is a first way to start working with silent installation or you can just read this blog ;).<\/p>\n<p>So, let&#8217;s start this with the preparation of a template file. I will use a lot of placeholders in the template and will replace the values with sed commands, just as a quick look at how you can script a silent installation with a template configuration file and some properties prepared before.<\/p>\n<pre class=\"brush: bash; gutter: true; first-line: 1\">[dmadmin@content_server_01 ~]$ vi \/tmp\/dctm_install\/D2_template.xml\n[dmadmin@content_server_01 ~]$ cat \/tmp\/dctm_install\/D2_template.xml\n&lt;?xml version=\"1.0\" encoding=\"UTF-8\"?&gt;\n&lt;AutomatedInstallation langpack=\"eng\"&gt;\n  &lt;com.izforge.izpack.panels.HTMLHelloPanel id=\"welcome\"\/&gt;\n  &lt;com.izforge.izpack.panels.UserInputPanel id=\"SelectInstallOrMergeConfig\"&gt;\n    &lt;userInput&gt;\n      &lt;entry key=\"InstallD2\" value=\"true\"\/&gt;\n      &lt;entry key=\"MergeConfigs\" value=\"false\"\/&gt;\n    &lt;\/userInput&gt;\n  &lt;\/com.izforge.izpack.panels.UserInputPanel&gt;\n  &lt;com.izforge.izpack.panels.HTMLInfoPanel id=\"readme\"\/&gt;\n  &lt;com.izforge.izpack.panels.PacksPanel id=\"UNKNOWN (com.izforge.izpack.panels.PacksPanel)\"&gt;\n    &lt;pack index=\"0\" name=\"Installer files\" selected=\"true\"\/&gt;\n    &lt;pack index=\"1\" name=\"D2\" selected=\"###WAR_REQUIRED###\"\/&gt;\n    &lt;pack index=\"2\" name=\"D2-Config\" selected=\"###WAR_REQUIRED###\"\/&gt;\n    &lt;pack index=\"3\" name=\"D2-API for Content Server\/JMS\" selected=\"true\"\/&gt;\n    &lt;pack index=\"4\" name=\"D2-API for BPM\" selected=\"###BPM_REQUIRED###\"\/&gt;\n    &lt;pack index=\"5\" name=\"DAR\" selected=\"###DAR_REQUIRED###\"\/&gt;\n  &lt;\/com.izforge.izpack.panels.PacksPanel&gt;\n  &lt;com.izforge.izpack.panels.UserInputPanel id=\"UserInputPanel.0\"&gt;\n    &lt;userInput&gt;\n      &lt;entry key=\"jboss5XCompliant\" value=\"false\"\/&gt;\n      &lt;entry key=\"webappsDir\" value=\"###DOCUMENTUM###\/D2-Install\/war\"\/&gt;\n    &lt;\/userInput&gt;\n  &lt;\/com.izforge.izpack.panels.UserInputPanel&gt;\n  &lt;com.izforge.izpack.panels.UserInputPanel id=\"UserInputPanel.2\"&gt;\n    &lt;userInput&gt;\n      &lt;entry key=\"pluginInstaller\" value=\"###PLUGIN_LIST###\"\/&gt;\n    &lt;\/userInput&gt;\n  &lt;\/com.izforge.izpack.panels.UserInputPanel&gt;\n  &lt;com.izforge.izpack.panels.UserInputPanel id=\"UserInputPanel.3\"&gt;\n    &lt;userInput&gt;\n      &lt;entry key=\"csDir\" value=\"###DOCUMENTUM###\/D2-Install\/D2-API\"\/&gt;\n      &lt;entry key=\"bpmDir\" value=\"###JMS_HOME###\/server\/DctmServer_MethodServer\/deployments\/bpm.ear\"\/&gt;\n      &lt;entry key=\"jmsDir\" value=\"###JMS_HOME###\/server\/DctmServer_MethodServer\/deployments\/ServerApps.ear\"\/&gt;\n    &lt;\/userInput&gt;\n  &lt;\/com.izforge.izpack.panels.UserInputPanel&gt;\n  &lt;com.izforge.izpack.panels.UserInputPanel id=\"UserInputPanel.4\"&gt;\n    &lt;userInput&gt;\n      &lt;entry key=\"installationDir\" value=\"###DOCUMENTUM###\/D2-Install\/DAR\"\/&gt;\n    &lt;\/userInput&gt;\n  &lt;\/com.izforge.izpack.panels.UserInputPanel&gt;\n  &lt;com.izforge.izpack.panels.UserInputPanel id=\"UserInputPanel.5\"&gt;\n    &lt;userInput&gt;\n      &lt;entry key=\"dfsDir\" value=\"\/tmp\/###DFS_SDK_PACKAGE###\"\/&gt;\n    &lt;\/userInput&gt;\n  &lt;\/com.izforge.izpack.panels.UserInputPanel&gt;\n  &lt;com.izforge.izpack.panels.UserInputPanel id=\"UserInputPanel.7\"&gt;\n    &lt;userInput&gt;\n      &lt;entry key=\"COMMON.USER_ACCOUNT\" value=\"###INSTALL_OWNER###\"\/&gt;\n      &lt;entry key=\"install.owner.password\" value=\"###INSTALL_OWNER_PASSWD###\"\/&gt;\n    &lt;\/userInput&gt;\n  &lt;\/com.izforge.izpack.panels.UserInputPanel&gt;\n  &lt;com.izforge.izpack.panels.UserInputPanel id=\"UserInputPanel.8\"&gt;\n    &lt;userInput&gt;\n      &lt;entry key=\"SERVER.REPOSITORIES.NAMES\" value=\"###DOCBASE_LIST###\"\/&gt;\n      &lt;entry key=\"setReturnRepeatingValue\" value=\"true\"\/&gt;\n    &lt;\/userInput&gt;\n  &lt;\/com.izforge.izpack.panels.UserInputPanel&gt;\n  &lt;com.izforge.izpack.panels.UserInputPanel id=\"UserInputPanel.9\"&gt;\n    &lt;userInput&gt;\n      &lt;entry key=\"securityRadioSelection\" value=\"true\"\/&gt;\n    &lt;\/userInput&gt;\n  &lt;\/com.izforge.izpack.panels.UserInputPanel&gt;\n  &lt;com.izforge.izpack.panels.UserInputPanel id=\"UIPD2ConfigOrClient\"&gt;\n    &lt;userInput\/&gt;\n  &lt;\/com.izforge.izpack.panels.UserInputPanel&gt;\n  &lt;com.izforge.izpack.panels.UserInputPanel id=\"UIPChooseUsetheSameDFC\"&gt;\n    &lt;userInput\/&gt;\n  &lt;\/com.izforge.izpack.panels.UserInputPanel&gt;\n  &lt;com.izforge.izpack.panels.UserInputPanel id=\"UIPChooseReferenceDFCForConfig\"&gt;\n    &lt;userInput\/&gt;\n  &lt;\/com.izforge.izpack.panels.UserInputPanel&gt;\n  &lt;com.izforge.izpack.panels.UserInputPanel id=\"UIPDocbrokerInfo\"&gt;\n    &lt;userInput\/&gt;\n  &lt;\/com.izforge.izpack.panels.UserInputPanel&gt;\n  &lt;com.izforge.izpack.panels.UserInputPanel id=\"UIPEnableDFCSessionPool\"&gt;\n    &lt;userInput\/&gt;\n  &lt;\/com.izforge.izpack.panels.UserInputPanel&gt;\n  &lt;com.izforge.izpack.panels.UserInputPanel id=\"UIPDFCKeyStoreInfo\"&gt;\n    &lt;userInput\/&gt;\n  &lt;\/com.izforge.izpack.panels.UserInputPanel&gt;\n  &lt;com.izforge.izpack.panels.UserInputPanel id=\"UIPSetD2ConfigLanguage\"&gt;\n    &lt;userInput\/&gt;\n  &lt;\/com.izforge.izpack.panels.UserInputPanel&gt;\n  &lt;com.izforge.izpack.panels.UserInputPanel id=\"UIPEnableD2BOCS\"&gt;\n    &lt;userInput\/&gt;\n  &lt;\/com.izforge.izpack.panels.UserInputPanel&gt;\n  &lt;com.izforge.izpack.panels.UserInputPanel id=\"UIPSetHideDomainforConfig\"&gt;\n    &lt;userInput\/&gt;\n  &lt;\/com.izforge.izpack.panels.UserInputPanel&gt;\n  &lt;com.izforge.izpack.panels.UserInputPanel id=\"UIPSetTemporaryMaxFiles\"&gt;\n    &lt;userInput\/&gt;\n  &lt;\/com.izforge.izpack.panels.UserInputPanel&gt;\n  &lt;com.izforge.izpack.panels.UserInputPanel id=\"10\"&gt;\n    &lt;userInput\/&gt;\n  &lt;\/com.izforge.izpack.panels.UserInputPanel&gt;\n  &lt;com.izforge.izpack.panels.UserInputPanel id=\"11\"&gt;\n    &lt;userInput\/&gt;\n  &lt;\/com.izforge.izpack.panels.UserInputPanel&gt;\n  &lt;com.izforge.izpack.panels.UserInputPanel id=\"UIPChooseReferenceDFCForClient\"&gt;\n    &lt;userInput\/&gt;\n  &lt;\/com.izforge.izpack.panels.UserInputPanel&gt;\n  &lt;com.izforge.izpack.panels.UserInputPanel id=\"UIPDocbrokerInfoForClient\"&gt;\n    &lt;userInput\/&gt;\n  &lt;\/com.izforge.izpack.panels.UserInputPanel&gt;\n  &lt;com.izforge.izpack.panels.UserInputPanel id=\"12\"&gt;\n    &lt;userInput\/&gt;\n  &lt;\/com.izforge.izpack.panels.UserInputPanel&gt;\n  &lt;com.izforge.izpack.panels.UserInputPanel id=\"13\"&gt;\n    &lt;userInput\/&gt;\n  &lt;\/com.izforge.izpack.panels.UserInputPanel&gt;\n  &lt;com.izforge.izpack.panels.UserInputPanel id=\"14\"&gt;\n    &lt;userInput\/&gt;\n  &lt;\/com.izforge.izpack.panels.UserInputPanel&gt;\n  &lt;com.izforge.izpack.panels.UserInputPanel id=\"15\"&gt;\n    &lt;userInput\/&gt;\n  &lt;\/com.izforge.izpack.panels.UserInputPanel&gt;\n  &lt;com.izforge.izpack.panels.UserInputPanel id=\"16\"&gt;\n    &lt;userInput\/&gt;\n  &lt;\/com.izforge.izpack.panels.UserInputPanel&gt;\n  &lt;com.izforge.izpack.panels.UserInputPanel id=\"17\"&gt;\n    &lt;userInput\/&gt;\n  &lt;\/com.izforge.izpack.panels.UserInputPanel&gt;\n  &lt;com.izforge.izpack.panels.UserInputPanel id=\"18\"&gt;\n    &lt;userInput\/&gt;\n  &lt;\/com.izforge.izpack.panels.UserInputPanel&gt;\n  &lt;com.izforge.izpack.panels.UserInputPanel id=\"19\"&gt;\n    &lt;userInput\/&gt;\n  &lt;\/com.izforge.izpack.panels.UserInputPanel&gt;\n  &lt;com.izforge.izpack.panels.UserInputPanel id=\"20\"&gt;\n    &lt;userInput\/&gt;\n  &lt;\/com.izforge.izpack.panels.UserInputPanel&gt;\n  &lt;com.izforge.izpack.panels.UserInputPanel id=\"21\"&gt;\n    &lt;userInput\/&gt;\n  &lt;\/com.izforge.izpack.panels.UserInputPanel&gt;\n  &lt;com.izforge.izpack.panels.UserInputPanel id=\"22\"&gt;\n    &lt;userInput\/&gt;\n  &lt;\/com.izforge.izpack.panels.UserInputPanel&gt;\n  &lt;com.izforge.izpack.panels.UserInputPanel id=\"UIPSetTransferMode\"&gt;\n    &lt;userInput\/&gt;\n  &lt;\/com.izforge.izpack.panels.UserInputPanel&gt;\n  &lt;com.izforge.izpack.panels.UserInputPanel id=\"24\"&gt;\n    &lt;userInput\/&gt;\n  &lt;\/com.izforge.izpack.panels.UserInputPanel&gt;\n  &lt;com.izforge.izpack.panels.UserInputPanel id=\"25\"&gt;\n    &lt;userInput\/&gt;\n  &lt;\/com.izforge.izpack.panels.UserInputPanel&gt;\n  &lt;com.izforge.izpack.panels.UserInputPanel id=\"UIPEnableAuditing\"&gt;\n    &lt;userInput\/&gt;\n  &lt;\/com.izforge.izpack.panels.UserInputPanel&gt;\n  &lt;com.izforge.izpack.panels.UserInputPanel id=\"UIPchooseWebAppServer\"&gt;\n    &lt;userInput\/&gt;\n  &lt;\/com.izforge.izpack.panels.UserInputPanel&gt;\n  &lt;com.izforge.izpack.panels.UserInputPanel id=\"UIPAskWebappsDir\"&gt;\n    &lt;userInput\/&gt;\n  &lt;\/com.izforge.izpack.panels.UserInputPanel&gt;\n  &lt;com.izforge.izpack.panels.UserInputPanel id=\"UIPAskNewWarDir\"&gt;\n    &lt;userInput\/&gt;\n  &lt;\/com.izforge.izpack.panels.UserInputPanel&gt;\n  &lt;com.izforge.izpack.panels.InstallPanel id=\"UNKNOWN (com.izforge.izpack.panels.InstallPanel)\"\/&gt;\n  &lt;com.izforge.izpack.panels.XInfoPanel id=\"UNKNOWN (com.izforge.izpack.panels.XInfoPanel)\"\/&gt;\n  &lt;com.izforge.izpack.panels.FinishPanel id=\"UNKNOWN (com.izforge.izpack.panels.FinishPanel)\"\/&gt;\n&lt;\/AutomatedInstallation&gt;\n\n[dmadmin@content_server_01 ~]$<\/pre>\n<p>&nbsp;<\/p>\n<p>As you probably understood by looking at the above file, I&#8217;m using &#8220;\/tmp\/&#8221; for the input elements needed by D2 like the DFS package, the D2 installer or the D2+Pack Plugins and I&#8217;m using &#8220;$DOCUMENTUM\/D2-Install&#8221; as the output folder where D2 generates its stuff into.<\/p>\n<p>Once you have the template ready, you can replace the placeholders as follow (this is just an example of configuration based on the other silent blogs I wrote so far):<\/p>\n<pre class=\"brush: bash; gutter: true; first-line: 1\">[dmadmin@content_server_01 ~]$ export d2_install_file=\/tmp\/dctm_install\/D2.xml\n[dmadmin@content_server_01 ~]$\n[dmadmin@content_server_01 ~]$ cp \/tmp\/dctm_install\/D2_template.xml ${d2_install_file}\n[dmadmin@content_server_01 ~]$\n[dmadmin@content_server_01 ~]$ sed -i \"s,###WAR_REQUIRED###,true,\" ${d2_install_file}\n[dmadmin@content_server_01 ~]$ sed -i \"s,###BPM_REQUIRED###,true,\" ${d2_install_file}\n[dmadmin@content_server_01 ~]$ sed -i \"s,###DAR_REQUIRED###,true,\" ${d2_install_file}\n[dmadmin@content_server_01 ~]$\n[dmadmin@content_server_01 ~]$ sed -i \"s,###DOCUMENTUM###,$DOCUMENTUM,\" ${d2_install_file}\n[dmadmin@content_server_01 ~]$\n[dmadmin@content_server_01 ~]$ sed -i \"s,###PLUGIN_LIST###,\/tmp\/D2_pluspack_4.7.0.P18\/Plugins\/C2-Install-4.7.0.jar;\/tmp\/D2_pluspack_4.7.0.P18\/Plugins\/D2-Bin-Install-4.7.0.jar;\/tmp\/D2_pluspack_4.7.0.P18\/Plugins\/O2-Install-4.7.0.jar;,\" ${d2_install_file}\n[dmadmin@content_server_01 ~]$\n[dmadmin@content_server_01 ~]$ sed -i \"s,###JMS_HOME###,$DOCUMENTUM_SHARED\/wildfly9.0.1,\" ${d2_install_file}\n[dmadmin@content_server_01 ~]$\n[dmadmin@content_server_01 ~]$ sed -i \"s,###DFS_SDK_PACKAGE###,emc-dfs-sdk-7.3,\" ${d2_install_file}\n[dmadmin@content_server_01 ~]$\n[dmadmin@content_server_01 ~]$ read -s -p \"  ----&gt; Please enter the Install Owner's password: \" dm_pw; echo; echo\n  ----&gt; Please enter the Install Owner's password: &lt;TYPE HERE THE PASSWORD&gt;\n[dmadmin@content_server_01 ~]$ sed -i \"s,###INSTALL_OWNER###,dmadmin,\" ${d2_install_file}\n[dmadmin@content_server_01 ~]$ sed -i \"s,###INSTALL_OWNER_PASSWD###,${dm_pw},\" ${d2_install_file}\n[dmadmin@content_server_01 ~]$\n[dmadmin@content_server_01 ~]$ sed -i \"s\/###DOCBASE_LIST###\/Docbase1\/\" ${d2_install_file}\n[dmadmin@content_server_01 ~]$<\/pre>\n<p>&nbsp;<\/p>\n<p>A short description of these properties as well as some notes on the values used above:<\/p>\n<ul>\n<li>langpack: The language you are usually using for running the installers&#8230; English is fine if you use this template<\/li>\n<li>entry key=&#8221;InstallD2&#8243;: Whether or not you want to install D2<\/li>\n<li>entry key=&#8221;MergeConfigs&#8221;: Whether or not you want to merge the actual configuration\/installation with the new one. I&#8217;m always restarting a D2 installation from scratch (removing the D2 hidden files for that) so I always set this to false<\/li>\n<li>pack index=&#8221;0&#8243; name=&#8221;Installer files&#8221;: Always set this to true to install D2 on a CS<\/li>\n<li>pack index=&#8221;1&#8243; name=&#8221;D2&#8243;: Whether or not you want to generate the D2 WAR file. This is usually true for a &#8220;Primary&#8221; Content Server and can be set to false for other &#8220;Remote&#8221; CSs<\/li>\n<li>pack index=&#8221;2&#8243; name=&#8221;D2-Config&#8221;: Same as above but for the D2-Config WAR file<\/li>\n<li>pack index=&#8221;3&#8243; name=&#8221;D2-API for Content Server\/JMS&#8221;: Whether or not you want the D2 Installer to put the D2 specific libraries into the JMS lib folder (path defined in: entry key=&#8221;jmsDir&#8221;). Even if you set this to true, you will still need to manually put a lot of D2 libs into the JMS lib folder because D2 only put a few of them but much more are required to run D2 properly (see documentation for the full list)<\/li>\n<li>pack index=&#8221;4&#8243; name=&#8221;D2-API for BPM&#8221;: Same as above but for the BPM this time (path defined in: entry key=&#8221;bpmDir&#8221;)<\/li>\n<li>pack index=&#8221;5&#8243; name=&#8221;DAR&#8221;: Whether or not you want to generate the DARs. This is usually true for a &#8220;Primary&#8221; Content Server and can be set to false for other &#8220;Remote&#8221; CSs<\/li>\n<li>entry key=&#8221;jboss5XCompliant&#8221;: I guess this is for the JBoss 5 support so if you are on Dctm 7.x, leave this as false<\/li>\n<li>entry key=&#8221;webappsDir&#8221;: The path the D2 Installer will put the generated WAR files into. In this example, I set it to &#8220;$DOCUMENTUM\/D2-Install\/war&#8221; so this folder MUST exist before running the installer in silent<\/li>\n<li>entry key=&#8221;pluginInstaller&#8221;: This one is a little bit trickier&#8230; It&#8217;s a semi-colon list of all D2+Pack Plugins you would like to install in addition to the D2. In the above, I&#8217;m using the C2, D2-Bin as well as O2 plugins. The D2+Pack package must obviously be extracted BEFORE running the installer in silent and all the paths MUST exist (you will need to extract the plugins jar from each plugin zip files). I opened a few bugs &amp; enhancements requests for these so if you are facing an issue, let me know, I might be able to help you<\/li>\n<li>entry key=&#8221;csDir&#8221;: The path the D2 Installer will put the generated libraries into. In this example, I set it to &#8220;$DOCUMENTUM\/D2-Install\/D2-API&#8221; so this folder MUST exist before running the installer in silent<\/li>\n<li>entry key=&#8221;bpmDir&#8221;: The path the D2 Installer will put a few of the D2 libraries into for the BPM (it&#8217;s not all needed JARs and this parameter is obviously not needed if you set ###BPM_REQUIRED### to false)<\/li>\n<li>entry key=&#8221;jmsDir&#8221;: Same as above but for the JMS this time<\/li>\n<li>entry key=&#8221;installationDir&#8221;: The path the D2 Installer will put the generated DAR files into. In this example, I set it to &#8220;$DOCUMENTUM\/D2-Install\/DAR&#8221; so this folder MUST exist before running the installer in silent<\/li>\n<li>entry key=&#8221;dfsDir&#8221;: The path where the DFS SDK can be found. The DFS SDK package MUST be extracted in this folder before running the installer in silent<\/li>\n<li>entry key=&#8221;COMMON.USER_ACCOUNT&#8221;: The name of the Documentum Installation Owner<\/li>\n<li>entry key=&#8221;install.owner.password&#8221;: The password of the Documentum Installation Owner. I used above a &#8220;read -s&#8221; command so it doesn&#8217;t appear on the command line, but it will be put in clear text in the xml file&#8230;<\/li>\n<li>entry key=&#8221;SERVER.REPOSITORIES.NAMES&#8221;: A comma separated list of all docbases\/repositories (without spaces) that need to be configured for D2. The DARs will be installed automatically on these docbases\/repositories and if you want to do it properly, it mustn&#8217;t contain the GR. You could potentially add the GR in this parameter but all D2 DARs would be installed into the GR and this isn&#8217;t needed&#8230; Only the &#8220;D2-DAR.dar&#8221; and &#8220;Collaboration_Services.dar&#8221; are needed to be installed on the GR so I only add normal docbases\/repositories in this parameter and once D2 is installed, I manually deploy these two DARs into the GR (I wrote a blog about deploying DARs easily to a docbase a few years ago if you are interested). So, here I have a value of &#8220;Docbase1&#8221; but if you had two, you could set it to &#8220;Docbase1,Docbase2&#8221;<\/li>\n<li>entry key=&#8221;setReturnRepeatingValue&#8221;: Whether or not you want the repeating values. A value of true should set the &#8220;return_top_results_row_based=false&#8221; in the server.ini<\/li>\n<li>entry key=&#8221;securityRadioSelection&#8221;: A value of true means that D2 have to apply Security Rules to content BEFORE applying AutoLink and a value of false means that D2 can do it AFTER only<\/li>\n<li>That&#8217;s the end of this file because I&#8217;m using D2 4.7 and in D2 4.7, there is no Lockbox anymore! If you are using previous D2 versions, you will need to put additional parameters for the D2 Lockbox generation, location, password, aso&#8230;<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<p>Once the properties file is ready, you can install D2 using the following command:<\/p>\n<pre class=\"brush: bash; gutter: true; first-line: 1\">[dmadmin@content_server_01 ~]$ $JAVA_HOME\/bin\/java -DTRACE=true -DDEBUG=true -Djava.io.tmpdir=$DOCUMENTUM\/D2-Install\/tmp -jar \/tmp\/D2_4.7.0_P18\/D2-Installer-4.7.0.jar ${d2_install_file}<\/pre>\n<p>&nbsp;<\/p>\n<p>You now know how to install D2 on a Content Server using the silent installation provided by D2. As you saw above, it is quite different compared to all Documentum components silent installation, but it is working so&#8230; Maybe at some point in the future, D2 will switch to use the same kind of properties file as Documentum.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In previous blogs, we installed in silent the Documentum binaries, a docbroker (+licence(s) if needed) as well as several repositories. In this one, we will see how to install D2 on a predefined list of docbases\/repositories (on the Content Server side) and you will see that, here, the process is quite different. D2 is supporting [&hellip;]<\/p>\n","protected":false},"author":20,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[197,525],"tags":[129,101,1417],"type_dbi":[],"class_list":["post-11538","post","type-post","status-publish","format-standard","hentry","category-application-integration-middleware","category-enterprise-content-management","tag-documentum","tag-installation","tag-silent"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.2 (Yoast SEO v27.2) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Documentum - Silent Install - D2 - dbi Blog<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.dbi-services.com\/blog\/documentum-silent-install-d2\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Documentum - Silent Install - D2\" \/>\n<meta property=\"og:description\" content=\"In previous blogs, we installed in silent the Documentum binaries, a docbroker (+licence(s) if needed) as well as several repositories. In this one, we will see how to install D2 on a predefined list of docbases\/repositories (on the Content Server side) and you will see that, here, the process is quite different. D2 is supporting [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.dbi-services.com\/blog\/documentum-silent-install-d2\/\" \/>\n<meta property=\"og:site_name\" content=\"dbi Blog\" \/>\n<meta property=\"article:published_time\" content=\"2018-08-12T10:50:28+00:00\" \/>\n<meta name=\"author\" content=\"Morgan Patou\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@MorganPatou\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Morgan Patou\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"13 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/documentum-silent-install-d2\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/documentum-silent-install-d2\/\"},\"author\":{\"name\":\"Morgan Patou\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/c4d05b25843a9bc2ab20415dae6bd2d8\"},\"headline\":\"Documentum &#8211; Silent Install &#8211; D2\",\"datePublished\":\"2018-08-12T10:50:28+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/documentum-silent-install-d2\/\"},\"wordCount\":1255,\"commentCount\":0,\"keywords\":[\"Documentum\",\"Installation\",\"Silent\"],\"articleSection\":[\"Application integration &amp; Middleware\",\"Enterprise content management\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.dbi-services.com\/blog\/documentum-silent-install-d2\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/documentum-silent-install-d2\/\",\"url\":\"https:\/\/www.dbi-services.com\/blog\/documentum-silent-install-d2\/\",\"name\":\"Documentum - Silent Install - D2 - dbi Blog\",\"isPartOf\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#website\"},\"datePublished\":\"2018-08-12T10:50:28+00:00\",\"author\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/c4d05b25843a9bc2ab20415dae6bd2d8\"},\"breadcrumb\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/documentum-silent-install-d2\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.dbi-services.com\/blog\/documentum-silent-install-d2\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/documentum-silent-install-d2\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Accueil\",\"item\":\"https:\/\/www.dbi-services.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Documentum &#8211; Silent Install &#8211; D2\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#website\",\"url\":\"https:\/\/www.dbi-services.com\/blog\/\",\"name\":\"dbi Blog\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.dbi-services.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/c4d05b25843a9bc2ab20415dae6bd2d8\",\"name\":\"Morgan Patou\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/secure.gravatar.com\/avatar\/5d7f5bec8b597db68a09107a6f5309e3870d6296ef94fb10ead4b09454ca67e5?s=96&d=mm&r=g\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/5d7f5bec8b597db68a09107a6f5309e3870d6296ef94fb10ead4b09454ca67e5?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/5d7f5bec8b597db68a09107a6f5309e3870d6296ef94fb10ead4b09454ca67e5?s=96&d=mm&r=g\",\"caption\":\"Morgan Patou\"},\"description\":\"Morgan Patou has over 12 years of experience in Enterprise Content Management (ECM) systems, with a strong focus in recent years on platforms such as Alfresco, Documentum, and M-Files. He specializes in the architecture, setup, customization, and maintenance of ECM infrastructures in complex &amp; critical environments. Morgan is well-versed in both engineering and operations aspects, including high availability design, system integration, and lifecycle management. He also has a solid foundation in open-source and proprietary technologies - ranging from Apache, OpenLDAP or Kerberos to enterprise-grade systems like WebLogic. Morgan Patou holds an Engineering Degree in Computer Science from ENSISA (\u00c9cole Nationale Sup\u00e9rieure d'Ing\u00e9nieurs Sud Alsace) in Mulhouse, France. He is Alfresco Content Services Certified Administrator (ACSCA), Alfresco Content Services Certified Engineer (ACSCE) as well as OpenText Documentum Certified Administrator. His industry experience spans the Public Sector, IT Services, Financial Services\/Banking, and the Pharmaceutical industry.\",\"sameAs\":[\"https:\/\/blog.dbi-services.com\/author\/morgan-patou\/\",\"https:\/\/x.com\/MorganPatou\"],\"url\":\"https:\/\/www.dbi-services.com\/blog\/author\/morgan-patou\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Documentum - Silent Install - D2 - dbi Blog","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.dbi-services.com\/blog\/documentum-silent-install-d2\/","og_locale":"en_US","og_type":"article","og_title":"Documentum - Silent Install - D2","og_description":"In previous blogs, we installed in silent the Documentum binaries, a docbroker (+licence(s) if needed) as well as several repositories. In this one, we will see how to install D2 on a predefined list of docbases\/repositories (on the Content Server side) and you will see that, here, the process is quite different. D2 is supporting [&hellip;]","og_url":"https:\/\/www.dbi-services.com\/blog\/documentum-silent-install-d2\/","og_site_name":"dbi Blog","article_published_time":"2018-08-12T10:50:28+00:00","author":"Morgan Patou","twitter_card":"summary_large_image","twitter_creator":"@MorganPatou","twitter_misc":{"Written by":"Morgan Patou","Est. reading time":"13 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.dbi-services.com\/blog\/documentum-silent-install-d2\/#article","isPartOf":{"@id":"https:\/\/www.dbi-services.com\/blog\/documentum-silent-install-d2\/"},"author":{"name":"Morgan Patou","@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/c4d05b25843a9bc2ab20415dae6bd2d8"},"headline":"Documentum &#8211; Silent Install &#8211; D2","datePublished":"2018-08-12T10:50:28+00:00","mainEntityOfPage":{"@id":"https:\/\/www.dbi-services.com\/blog\/documentum-silent-install-d2\/"},"wordCount":1255,"commentCount":0,"keywords":["Documentum","Installation","Silent"],"articleSection":["Application integration &amp; Middleware","Enterprise content management"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.dbi-services.com\/blog\/documentum-silent-install-d2\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.dbi-services.com\/blog\/documentum-silent-install-d2\/","url":"https:\/\/www.dbi-services.com\/blog\/documentum-silent-install-d2\/","name":"Documentum - Silent Install - D2 - dbi Blog","isPartOf":{"@id":"https:\/\/www.dbi-services.com\/blog\/#website"},"datePublished":"2018-08-12T10:50:28+00:00","author":{"@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/c4d05b25843a9bc2ab20415dae6bd2d8"},"breadcrumb":{"@id":"https:\/\/www.dbi-services.com\/blog\/documentum-silent-install-d2\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.dbi-services.com\/blog\/documentum-silent-install-d2\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.dbi-services.com\/blog\/documentum-silent-install-d2\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Accueil","item":"https:\/\/www.dbi-services.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Documentum &#8211; Silent Install &#8211; D2"}]},{"@type":"WebSite","@id":"https:\/\/www.dbi-services.com\/blog\/#website","url":"https:\/\/www.dbi-services.com\/blog\/","name":"dbi Blog","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.dbi-services.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/c4d05b25843a9bc2ab20415dae6bd2d8","name":"Morgan Patou","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/5d7f5bec8b597db68a09107a6f5309e3870d6296ef94fb10ead4b09454ca67e5?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/5d7f5bec8b597db68a09107a6f5309e3870d6296ef94fb10ead4b09454ca67e5?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/5d7f5bec8b597db68a09107a6f5309e3870d6296ef94fb10ead4b09454ca67e5?s=96&d=mm&r=g","caption":"Morgan Patou"},"description":"Morgan Patou has over 12 years of experience in Enterprise Content Management (ECM) systems, with a strong focus in recent years on platforms such as Alfresco, Documentum, and M-Files. He specializes in the architecture, setup, customization, and maintenance of ECM infrastructures in complex &amp; critical environments. Morgan is well-versed in both engineering and operations aspects, including high availability design, system integration, and lifecycle management. He also has a solid foundation in open-source and proprietary technologies - ranging from Apache, OpenLDAP or Kerberos to enterprise-grade systems like WebLogic. Morgan Patou holds an Engineering Degree in Computer Science from ENSISA (\u00c9cole Nationale Sup\u00e9rieure d'Ing\u00e9nieurs Sud Alsace) in Mulhouse, France. He is Alfresco Content Services Certified Administrator (ACSCA), Alfresco Content Services Certified Engineer (ACSCE) as well as OpenText Documentum Certified Administrator. His industry experience spans the Public Sector, IT Services, Financial Services\/Banking, and the Pharmaceutical industry.","sameAs":["https:\/\/blog.dbi-services.com\/author\/morgan-patou\/","https:\/\/x.com\/MorganPatou"],"url":"https:\/\/www.dbi-services.com\/blog\/author\/morgan-patou\/"}]}},"_links":{"self":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/11538","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/users\/20"}],"replies":[{"embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/comments?post=11538"}],"version-history":[{"count":0,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/11538\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/media?parent=11538"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/categories?post=11538"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/tags?post=11538"},{"taxonomy":"type","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/type_dbi?post=11538"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}