Note: You are currently viewing documentation for Moodle 1.9. Up-to-date documentation for the latest stable version is available here: Step-by-step Install Guide for Ubuntu.

Step-by-step Install Guide for Ubuntu: Difference between revisions

From MoodleDocs
m (removed redundant info)
(redirect)
 
(50 intermediate revisions by 21 users not shown)
Line 1: Line 1:
== What you need to start ==
#redirect [[Step-by-step Installation Guide for Ubuntu]]
 
*[http://www.ubuntu.com/products/GetUbuntu/download#lts Ubuntu 6.06 LTS server CD]
*A test x86 desktop computer, keyboard, monitor, mouse, and firewalled internet connection.
*One hour of time. (seriously!)
 
== Directions ==
 
=== Install Ubuntu ===
Start computer and use F12 to boot from CD.
 
Select '''Install to hard drive'''.
 
Select your '''language''', '''country''', and '''keyboard layout''' (i.e. English, United States, American English)
 
Select '''[http://help.ubuntu.com/6.06/ubuntu/serverguide/C/network-configuration.html manually configure]''' and set an IP address (or autoconfig if you don't know).
 
Enter your servername (i.e. moodletest)
 
Select to '''manually edit the partition table'''.  I’m doing my testing on a standard 40GB harddrive and will modify these sizes for production.
 
:<table>
:<tr><td width=%10>/boot</td><td width=%10>ext3</td><td align=right width=%10>200MB</td><td align=center width=%10>bootable</td>
<td>([http://www.redhat.com/docs/manuals/enterprise/RHEL-4-Manual/ref-guide/s1-grub-whatis.html may need to be under cylinder 1024 on your harddrive to be bootable])</td></tr>
:<tr><td>/</td><td>ext3</td><td align=right>10GB</td><td></td><td>(files are relatively static)</td></tr>
:<tr><td>swap</td><td></td><td align=right>4GB</td><td></td>
<td>(4xRAM if you don't have much memory, down to 1xRAM if you have gobs of memory)</td></tr>
:<tr><td>/var</td><td>ext3</td><td align=right>26GB</td><td></td><td>(variable content – uses rest of the drive)</td></tr>
:</table>
 
Select your '''timezone'''. (i.e. Central)
 
Set clock to '''Universal Time'''.
 
Enter Administrators '''full name'''. (i.e. Joe Smith)
 
Enter '''account name'''. (i.e. joesmith)
 
Enter a secure password.  (‘abcde’ is not a good one!)
 
Let the computer restart.
 
Log in your account.
 
Edit the ''/etc/apt/sources.list'' file. Remove the ''#'' mark on lines 22 and 38 to enable access to the universe package source and universe security updates. You will need to re-enter your account password when ''sudo'' asks for it.
<pre>
sudo nano /etc/apt/sources.list 
</pre>
Now to get all the security updates.
<pre>
sudo apt-get update
 
sudo apt-get dselect-upgrade
</pre>
Normally you would just use ''[http://help.ubuntu.com/6.06/ubuntu/serverguide/C/apt-get.html sudo apt-get upgrade]''.
 
And reboot to run on the new kernel!
<pre>
sudo reboot
</pre>
 
=== Install MySQL ===
At this point we'll need to log in again to the server and type:
 
<pre>
sudo apt-get install mysql-server
</pre>
Press ''Y'' to continue the install.
 
 
Replace the following string ''NewRootDatabasePassword'' with a secure password of your own choosing.
 
There is no space between the ''-p'' and the password on the second command.
<pre>
mysqladmin –u root password NewRootDatabasePassword
 
mysqladmin -u root -h localhost password NewRootDatabasePassword -pNewRootDatabasePassword
</pre>
 
=== Install Apache ===
 
The following mod-security, ldap, and odbc libraries are optional.
<pre>
sudo apt-get install apache2 libapache2-mod-php5 php5-gd php5-mysqli
 
sudo apt-get libapache2-mod-security php5-ldap php5-odbc
</pre>
 
Restart Apache
<pre>
sudo /etc/init.d/apache2 restart
</pre>
 
=== Install other software ===
On the command line, type:
<pre>
sudo apt-get install ntp ntp-simple openssh-server unattended-upgrades
 
sudo apt-get install clamav unzip zip aspell-en
sudo apt-get install clamav
 
sudo apt-get install libapache2-mod-security php5-ldap php5-odbc
</pre>
Press ''Y'' to continue the install after each of these apt-get commands.
 
The clamav package will support virus checking on file uploads into Moodle. May have to run it again to configure properly.
 
Additional languages are available for aspell.
 
The LDAP and ODBC packages will help our Moodle authenticate via Active Directory and enroll via an Oracle database.
 
=== Install Moodle ===
On the command line, type:
<pre>
cd /var/www
 
sudo wget http://download.moodle.org/stable17/moodle-latest-17.tgz
 
sudo tar –zxf moodle-latest-17.tgz
 
sudo mkdir /var/moodledata
 
sudo chown –R www-data.www-data /var/moodledata /var/www/moodle
</pre>
We now need to edit the location of the default web site.  On lines four and nine, replace ''/var/www'' with ''/var/www/moodle''. Restart Apache.
<pre>
sudo nano /etc/apache2/sites-available/default 
 
sudo /etc/init.d/apache2 restart
</pre>
Finally, we need to create the Moodle database and Moodle user in MySQL.
 
Enter your ''RootDatabasePassword'' at the prompt and replace ''NewMoodleDatabasePassword'' with a secure password of your own choosing.
<pre>
mysql -u root -p
CREATE DATABASE moodle;
GRANT ALL ON moodle.* TO moodle@localhost IDENTIFIED BY 'NewMoodleDatabasePassword';
FLUSH PRIVILEGES;
QUIT;
</pre>
 
=== Configure Moodle website ===
ifconfig (look for your server’s ip address on the 2nd line)
 
On another computer open a web browser and put in your server address
 
Complete the Moodle install using a secure username and password
 
Go to a bar for a few hours.
 
Come back and tell your boss that you FINALLY got the test server running.
 
== Other Resources ==
 
* Ubuntu 6.06 Server Guide - [http://help.ubuntu.com/6.06/ubuntu/serverguide/C/index.html HTML] [http://help.ubuntu.com/6.06/pdf/ubuntu/C/serverguide.pdf PDF]
* Ubuntu - [http://help.ubuntu.com/community/Security 1] [http://www.computerworld.com/action/article.do?command=printArticleBasic&articleId=9002691  2] security
* Debian - [http://www.debian.org/security/ 1] [http://www.us.debian.org/doc/user-manuals#securing 2] security
* Linux - [http://www.linux-sec.net/ 1] [http://www.puschitz.com/SecuringLinux.shtml 2] [http://www.linuxsecurity.com/docs/LDP/Security-HOWTO/ 3] security
* MySQL - [http://dev.mysql.com/doc/refman/5.0/en/security.html 1] [http://www.securityfocus.com/infocus/1667 2] security
* Apache - [http://httpd.apache.org/docs/2.0/misc/security_tips.html 1] [http://www.cisecurity.org/bench_apache.html 2] security
* [http://www.modsecurity.org/documentation/index.html Modsecurity apache2 module]
* Another [http://help.ubuntu.com/community/MySQLMoodle Ubuntu and Moodle install] document
* Moodle [[Security]]
 
[[Category:Administrator]]

Latest revision as of 08:51, 27 February 2010