{"id":3114,"date":"2016-04-23T18:44:54","date_gmt":"2016-04-23T18:44:54","guid":{"rendered":"http:\/\/blog.shineservers.com\/?p=3096"},"modified":"2016-04-23T18:44:54","modified_gmt":"2016-04-23T18:44:54","slug":"add-gnome-centos-minimal-install","status":"publish","type":"post","link":"https:\/\/www.shineservers.com\/2016\/04\/23\/add-gnome-centos-minimal-install\/","title":{"rendered":"Add GNOME to a CentOS Minimal Install"},"content":{"rendered":"<h1>Introduction<\/h1>\n<p>In most instances, the Linux servers I setup are used to host the Oracle database software and only require using the Command-Line Interface (CLI) for the OS. This is beneficial because I only need to perform a minimal installation and can add only those required Linux packages (RPMs) needed to support the database. However, there are situations where I need to access a graphical desktop in order to install or run certain Graphical User Interface (GUI) applications.<\/p>\n<p>This guide provides the steps needed to add the GNOME Desktop to a CentOS minimal installation where the OS was installed without the X Window System.<\/p>\n<p><a name=\"CentOS 6\"><\/a><\/p>\n<h1>CentOS 6<\/h1>\n<p>In this section, the GNOME desktop will be added to a new server running CentOS 6.2 (x86_64) after performing a &#8220;Minimal&#8221; install.<\/p>\n<h2>Install Desktop Packages<\/h2>\n<table class=\"codeExampleTable\">\n<tbody>\n<tr>\n<td>\n<pre>\n# <b>yum -y groupinstall \"Desktop\" \"Desktop Platform\" \"X Window System\" \"Fonts\"<\/b><\/pre>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>You can also install the following optional GUI packages.<\/p>\n<table class=\"codeExampleTable\">\n<tbody>\n<tr>\n<td>\n<pre>\n# <b>yum -y groupinstall \"Graphical Administration Tools\"<\/b>\n\n# <b>yum -y groupinstall \"Internet Browser\"<\/b>\n\n# <b>yum -y groupinstall \"General Purpose Desktop\"<\/b>\n\n# <b>yum -y groupinstall \"Office Suite and Productivity\"<\/b>\n\n# <b>yum -y groupinstall \"Graphics Creation Tools\"<\/b><\/pre>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Finally, if you wanted to add the K Desktop Environment (KDE).<\/p>\n<table class=\"codeExampleTable\">\n<tbody>\n<tr>\n<td>\n<pre>\n# <b>yum -y groupinstall kde-desktop<\/b><\/pre>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>When using\u00a0<tt>yum groupinstall<\/tt>, the\u00a0<tt>groupinstall<\/tt>\u00a0option only installs\u00a0<i>default<\/i>\u00a0and\u00a0<i>mandatory<\/i>\u00a0packages from the group. There are times when you also want to include\u00a0<i>optional<\/i>\u00a0packages within a group. I have not figured out (yet) how to control which package types to install (group package &#8220;policy&#8221;) from the command-line using\u00a0<tt>yum<\/tt>. The only method I know of to also include\u00a0<i>optional<\/i>\u00a0packages is to edit the\u00a0<tt>\/etc\/yum.conf<\/tt>\u00a0file and add the following to the\u00a0<tt>[main]<\/tt>\u00a0section:<\/p>\n<table class=\"codeExampleTable\">\n<tbody>\n<tr>\n<td>\n<pre>\ngroup_package_types=default mandatory <span style=\"color: #0000ff;\">optional<\/span><\/pre>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>The reason I mention this is because I wanted to install &#8220;Terminal emulator for the X Window System&#8221; (<tt>xterm<\/tt>) which is under the group &#8220;Legacy X Window System compatibility&#8221;.\u00a0<tt>xterm<\/tt>\u00a0happens to be an optional package and did not get installed until I added\u00a0<tt>group_package_types=default mandatory optional<\/tt>\u00a0to\u00a0<tt>\/etc\/yum.conf<\/tt>.<\/p>\n<table class=\"codeExampleTable\">\n<tbody>\n<tr>\n<td>\n<pre>\n# <b>yum -y groupinstall \"Legacy X Window System compatibility\"<\/b><\/pre>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>I did find a plug-in for\u00a0<tt>yum<\/tt>\u00a0that allows users to specify which package types within a package group should be installed when using\u00a0<tt>yum groupinstall<\/tt>.<\/p>\n<p><a class=\"noLinkBlue\" href=\"http:\/\/projects.robinbowes.com\/yum-grouppackagetypes\/trac\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/projects.robinbowes.com\/yum-grouppackagetypes\/trac<\/a><\/p>\n<h2>Enable GNOME<\/h2>\n<p>Since the server was previously running on CLI mode, we need to change the initialization process for the machine to boot up in GUI mode.<\/p>\n<p>Open\u00a0<tt>\/etc\/inittab<\/tt>\u00a0using a text editor and change following line:<\/p>\n<table class=\"codeExampleTable\">\n<tbody>\n<tr>\n<td>\n<pre>\nid:3:initdefault:<\/pre>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>To:<\/p>\n<table class=\"codeExampleTable\">\n<tbody>\n<tr>\n<td>\n<pre>\nid:<span style=\"color: #0000ff;\">5<\/span>:initdefault:<\/pre>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>After making the change, reboot the machine.<\/p>\n<table class=\"codeExampleTable\">\n<tbody>\n<tr>\n<td>\n<pre>\n# <b>init 6<\/b><\/pre>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Note that you can switch from GUI to CLI mode manually by using following method:<\/p>\n<blockquote><p><b>GUI to CLI<\/b>:\u00a0<tt>Ctrl + Alt + F6<\/tt><br \/>\n<b>CLI to GUI<\/b>:\u00a0<tt>Ctrl + Alt + F1<\/tt><\/p><\/blockquote>\n<h2>Installing Additional Applications<\/h2>\n<p>After logging in to the GNOME Desktop, you can now go to\u00a0<b>System &gt; Administration &gt; Add\/Remove Software<\/b>\u00a0to manage application in CentOS.<\/p>\n<p>By using this wizard, you can install various applications similar to\u00a0<tt>yum<\/tt>\u00a0but through a GUI. Applications installed using this method will appear in the\u00a0<b>Application<\/b>\u00a0menu list.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Introduction In most instances, the Linux servers I setup are used to host the Oracle database software and only require using the Command-Line Interface (CLI) for the OS. This is beneficial because I only need to perform a minimal installation and can add only those required Linux packages (RPMs) needed to support the database. However, [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"inline_featured_image":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[60],"tags":[223,224,225,226],"class_list":["post-3114","post","type-post","status-publish","format-standard","hentry","category-linux","tag-centos-desktop","tag-gnone","tag-install-centos","tag-kde"],"acf":[],"aioseo_notices":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.shineservers.com\/wp-json\/wp\/v2\/posts\/3114","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.shineservers.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.shineservers.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.shineservers.com\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.shineservers.com\/wp-json\/wp\/v2\/comments?post=3114"}],"version-history":[{"count":0,"href":"https:\/\/www.shineservers.com\/wp-json\/wp\/v2\/posts\/3114\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.shineservers.com\/wp-json\/wp\/v2\/media?parent=3114"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.shineservers.com\/wp-json\/wp\/v2\/categories?post=3114"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.shineservers.com\/wp-json\/wp\/v2\/tags?post=3114"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}