From 8565335efcde85e58f73739d90ef25eaa6aedbd5 Mon Sep 17 00:00:00 2001 From: rharmonson Date: Thu, 26 Jun 2014 14:27:11 -0700 Subject: [PATCH] revisions --- ...acks-2.2.2-on-CentOS-6.5-Minimal-x86_64.md | 64 +++++++++---------- 1 file changed, 29 insertions(+), 35 deletions(-) diff --git a/Installing-Tracks-2.2.2-on-CentOS-6.5-Minimal-x86_64.md b/Installing-Tracks-2.2.2-on-CentOS-6.5-Minimal-x86_64.md index e9745c0..fa0a651 100644 --- a/Installing-Tracks-2.2.2-on-CentOS-6.5-Minimal-x86_64.md +++ b/Installing-Tracks-2.2.2-on-CentOS-6.5-Minimal-x86_64.md @@ -1,8 +1,4 @@ -# Installing Tracks 2.2.2 on CentOS 6.5 Minimal x86_64 (draft) - -_**document state: draft in-progress**_ - -The purpose of this document is describe the installation process for Tracks 2.2.2 on CentOS 6.5 Minimal x86_64 using epel repository, rvm, mysql, apache, and phusion passenger. This is but one method of installing Tracks. I am open to suggestions and constructive criticism. +The purpose of this document is to describe the installation process for Tracks 2.2.2 on CentOS 6.5 Minimal x86_64 using epel repository, rvm, mysql, apache, and phusion passenger. This is but one method of installing Tracks, and I am open to suggestions and constructive criticism. Build Overview @@ -10,18 +6,14 @@ Build Overview 1. Prerequisite packages 1. User account & sudo 1. MySQL database -1. Ruby Version Manager +1. Ruby Version Manager (rvm) 1. Ruby 1.9 1. Bundler 1. Phusion Passenger 1. Tracks 2.2.2 1. Apache2 1. Done(?) - -Other Considerations -1. SELinux Passenger Module -1. Phusion Passenger, Rails, & Sub-URIs -1. Nginx reverse proxy +1. Other Considerations ## 1. Base operating system @@ -37,16 +29,18 @@ Base CentOS Installation Task Overview ### Obtain media If you are new to Linux or new to CentOS minimal installations, I would advise reviewing all the information at the URL below. Otherwise, scroll down and select the download URL under section 2. We will be using x86_64 version, also, known as 64 bit. The 32 bit version *should* work as well. -http://wiki.centos.org/Manuals/ReleaseNotes/CentOSMinimalCD6.5 + +Reference: http://wiki.centos.org/Manuals/ReleaseNotes/CentOSMinimalCD6.5 ### Installation -Boot from media and, generally, accept the defaults. You have an opportunity to provide time zone, a host name, configure network interfaces, provide DNS IPs, and domain search. If configured at this point, the installation script automatically configures the resulting installation using these settings. It is a time saver, however, I am going to assume either these setting have not been set or changes will be needed. +Boot from media and, generally, accept the defaults. You have an opportunity to provide time zone, a host name, configure network interfaces, provide DNS IPs, and domain search. If configured at this point, the installation script automatically configures the resulting installation using these settings. It is a time saver, however, I am going to assume these setting have not been set or changes will be needed. -You may skip to the section titled "Verify Operation" if you complete all the settings using the installation GUI. +You may skip to the section titled "Verify operation" if you completed all the settings using the installation GUI. ### Basic configuration Network interface settings -http://www.centos.org/docs/5/html/Deployment_Guide-en-US/s1-networkscripts-interfaces.html + +Reference: http://www.centos.org/docs/5/html/Deployment_Guide-en-US/s1-networkscripts-interfaces.html The default interface settings will be as follows with the exception that your HWADDR and UUID will differ: ``` @@ -111,7 +105,7 @@ lo Link encap:Local Loopback RX bytes:0 (0.0 b) TX bytes:0 (0.0 b) ``` -If you are going to use a static IP address, then update ifcfg-eth0 options with values for your network. Note the NM-CONROLLED can be safely ignored ore removed for on CentOS minimal installations, NM or Network Manager is not installed. +If you are going to use a static IP address, then update ifcfg-eth0 options with values for your network. Note the NM-CONROLLED can be safely ignored or removed for on CentOS minimal installations, NM or Network Manager is not installed. ``` [root@localhost ~]# cd /etc/sysconfig/network-scripts [root@localhost network-scripts]# vi ifcfg-eth0 @@ -170,7 +164,7 @@ Destination Gateway Genmask Flags Metric Ref Use Iface link-local * 255.255.0.0 U 1002 0 0 eth0 ``` -Update the "network" file with both the network and fully qualified domain name (FQDN). This will result with a default layer 3 or routing gateway. Note a log off and on or reboot is needed to see 'hostname' updated. +Update the "network" file with both the network and your host's fully qualified domain name (FQDN). This will result with a default layer 3 or routing gateway. Note a log off and on or reboot is needed to see 'hostname' updated. ``` [root@localhost ~]# vi /etc/sysconfig/network @@ -221,7 +215,7 @@ Bringing up interface eth0: Determining if ip address 192.168.113.150 is alread ``` ### Resolution settings -Configure DNS resolution settings. Current setting shown below are a result of using DHCP, initially. Your resolv.conf may differ. +Configure DNS resolution settings. Current settings shown below are a result of using DHCP, initially. Your resolv.conf may differ. ``` [root@www ~]# cat /etc/resolv.conf @@ -255,7 +249,7 @@ rtt min/avg/max/mdev = 8.256/9.808/13.490/1.924 ms ``` ###Time zone -After installation, the default time zone is America/New_York. Changing the time can be done several ways. My preference is to first identify the time zone by listing /usr/share/zoneinfo. For example, /usr/share/zoneinfo/America/Los_Angeles, then update /etc/sysconfig/clock. +After installation, the default time zone is America/New_York. Changing the time can be done several ways. My preference is to first identify the time zone by listing `/usr/share/zoneinfo`. For example, `/usr/share/zoneinfo/America/Los_Angeles`, then update `/etc/sysconfig/clock`. ``` [root@www ~]# cat /etc/sysconfig/clock ZONE="America/New_York" @@ -299,14 +293,12 @@ ZONE="America/New_York" ``` ###EPEL -EPEL installation steps are as follows: +EPEL repository installation steps are as follows: +* Install the repository's key, so the package can be verified and trusted. +* Installl the repository package for your distribution. +* Configure, if desired, the repository configuration files found `/etc/yum.repos.d`. - Install the repository's key, so the package can be verified and trusted. - Installl the repository package for your distribution. - Configure, if desired, the repository configuration files found /etc/yum.repos.d. - - -Install key and package on CentOS 6.5 64 bit +For CentOS 6.5 64 bit ``` # rpm --import http://ftp.riken.jp/Linux/fedora/epel/RPM-GPG-KEY-EPEL-6 # rpm -ivh http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm @@ -426,9 +418,13 @@ Restart to utilize the new packages and drivers. ##2. Prerequisite packages Including RVM prerequisites, mysql server, apache, and system-config packages for ease of administration. -reference: https://rvm.io/rvm/prerequisites <-- their list is incomplete! + +Reference: https://rvm.io/rvm/prerequisites <-- their list is incomplete! + Note: sqlite-devel package is required for Tracks and bundler. -Note: libxml2-devel, libxslt, and libxslt-devel packagea is required for Tracks, specifically for nokogiri. + +Note: libxml2-devel, libxslt, and libxslt-devel packagea is required for Tracks, specifically, nokogiri. + Note: httpd-devel and libcurl-devel and dependencies packages are required for passenger. ``` @@ -543,7 +539,7 @@ Is this ok [y/N]: ``` ##3. User account & sudo -A decision needs to be made to either use root or an user account. In practice, using a dedicated user could decreases the risk of root exploits, however, this assumes you do not granting sudo with wide open privileges (command access) to the user. I am over simplifying, so do some googling and decide for yourself. I will be using a user account named tracks with the intent of removing sudo access after testing is complete. +You may use root or an user account to install Tracks. In practice, using a dedicated user could decrease the risk of root exploits, however, this assumes you do not granting sudo with wide open privileges (command access) to the user. I am over simplifying, so do some googling and decide for yourself. I will be using a user account named tracks with the intent of removing sudo access after testing is complete. Create user 'tracks' ``` @@ -555,7 +551,7 @@ Configure tracks user to use 'sudo'; # visudo ``` -Add the following which essentially gives user tracks root equivalent privileges using sudo. +Add the following which essentially gives user tracks root equivalent privileges when using sudo. ``` tracks ALL=(ALL) ALL ``` @@ -576,16 +572,14 @@ to PermitRootLogin No ``` -For the changes to take effect immediately, or you can wait until next system restart +For the changes to take effect immediately, restart sshd. ``` $ sudo service sshd restart ``` ##4. MySQL database -Initial MySQL configuration. - -Start mysql +Start mysqld. ``` $ sudo service mysqld start ``` @@ -600,7 +594,7 @@ Enable automatic startup and shutdown; init script. $ sudo chkconfig mysqld on ``` -Create a new database, user, and grant privileges. Replace dbuser and with your own values. +Create a new database, user, and grant privileges. Replace dbuser and password with your own values. ``` $ mysql -u root -p