How to Install Moodle 2.3 on Ubuntu Server 12.04

Moodle (Modular Object-Oriented Dynamic Learning Environment) is a free and opensource software course management system web based, developed in PHP Script and MySQL database that allows the creation and management of courses via web. It designed to help educators create quality online courses. One of the main advantages of Moodle over other systems is a strong grounding in social constructionist pedagogy.

Moodle has features that allow it to scale to very large deployments and hundreds of thousands of students, yet it can also be used for a primary school or an education hobbyist. Many institutions use it as their platform to conduct fully online courses, while some use it simply to augment face-to-face courses

Many of Moodle users love to use the activity modules such as forums, databases and wikis to build richly collaborative communities of learning around their subject matter (in the social constructionist tradition), while others prefer to use Moodle as a way to deliver content to students (such as standard SCORM packages) and assess learning using assignments or quizzes.

Moodle has been released in 2.3.2 stable version on 10th September, 2012. comes with many features and changes, for more detail about it you can see at moodle 2.3 release notes .Moodle currenly available in the officialy ubuntu repository, but it still in version 1.9. On ubuntu server 12.04,  there are two methods to install moodle, First method using the apt-get. Second method,  installing moodle 2.3 manually.

Step by Step to installing  moodle using apt-get

Step 1. First, Make sure Apache2 web server,Mysql database and PHP5 (called LAMP Server) already installed on ubuntu server 12.04.

sudo apt-get install lamp-server^

or, install lamp server using command tasksel

sudo tasksel

Select  LAMP server

tasksel lamp server How to Install Moodle 2.3 on Ubuntu Server 12.04

Step 2. Install moodle with following command:

sudo apt-get install moodle

Enter URL for moodle site

Moodle URL Site How to Install Moodle 2.3 on Ubuntu Server 12.04

Next  instalation procedure will ask you with database manger  you will use, recommended use MySQL Database

Configure database manager How to Install Moodle 2.3 on Ubuntu Server 12.04

Step 3. Now moodle installation finished and Moodle already in use by opening web browser then type http://hostname/moodle

Step by Step Installing moodle 2.3 manually

Step 1.Make sure LAMP server has been installed on Ubuntu Server 12.04.

sudo apt-get install lamp-server^ php5-intl

Step 2. Download the installation archive from the Moodle download page, download it using wget command

wget -O moodle-latest.tgz

Step 3. Extract moodle-latest.tgz and copy or move in to directory /var/www

tar -zxvf moodle-latest.tgz
sudo mv moodle /var/www

Step 4. Change an ownership of all Drupal installation files to user and group (www-data).

sudo chown -R www-data:www-data moodle/

Step 5. Create directory for moodle data, then set access directory moodle data to user and group (www-data)

sudo mkdir /var/moodledata
sudo chown -R www-data:www-data /var/moodledata

Step 6. Create a MySQL database for moodle installation. Log in to mysql server as root user:

mysql -u root -p

Create mysql database with name “dbmoodle”

ALTER DATABASE dbmoodle charset=utf8;

Create mysql database user with username “moodleuser”

CREATE USER moodleuser;

Set password for user “moodleuser”

SET PASSWORD FOR moodleuser = PASSWORD("moodlepass");

Set privillage for “moodleuser”, then log out from mysql server

GRANT ALL PRIVILEGES ON dbmoodle.* TO moodleuser@localhost IDENTIFIED BY "moodlepass";

Step 7. Now moodle ready to install via web browser, open your favorite browser then navigate to [http://ipserver/moodle].

Note: This guide also work on ubuntu server 12.10, ubuntu server 11.10,ubuntu server 11.04  and Debian Server

Link Reference:

Tags: #Apache2 #Education #Moodle #MySQL #PHP

How to Install LAMP in Ubuntu Server 14.04 LTS
How to Install LAMP in Ubuntu Server 14.04 LTS
This tutorial will explains basic step how
  • mulata

    step #7 can’t work in my pc. pls help me!

  • Anil Kesariya

    I have followed these steps. moodle is setup correctly but while I am trying to create course from outside or custom service I am getting this error. do you have any idea regarding this?

    Server Traceback (most recent call last):
    File “/home/serpentcs/workspace/OpenERP/7.0/web/addons/web/”, line 90, in send
    return openerp.netsvc.dispatch_rpc(service_name, method, args)
    File “/home/serpentcs/workspace/OpenERP/7.0/server/openerp/”, line 281, in dispatch_rpc
    result = ExportService.getService(service_name).dispatch(method, params)
    File “/home/serpentcs/workspace/OpenERP/7.0/server/openerp/service/”, line 614, in dispatch
    res = fn(db, uid, *params)
    File “/home/serpentcs/workspace/OpenERP/7.0/server/openerp/osv/”, line 169, in execute_kw
    return self.execute(db, uid, obj, method, *args, **kw or {})
    File “/home/serpentcs/workspace/OpenERP/7.0/server/openerp/osv/”, line 123, in wrapper
    return f(self, dbname, *args, **kwargs)
    File “/home/serpentcs/workspace/OpenERP/7.0/server/openerp/osv/”, line 179, in execute
    res = self.execute_cr(cr, uid, obj, method, *args, **kw)
    File “/home/serpentcs/workspace/OpenERP/7.0/server/openerp/osv/”, line 166, in execute_cr
    return getattr(object, method)(cr, uid, *args, **kw)
    File “/home/serpentcs/workspace/OpenERP/7.0/addons/event/”, line 125, in button_confirm
    self.check_registration_limits(cr, uid, ids, context=context)
    File “/home/serpentcs/workspace/OpenERP/7.0/addons/openerp-event-moodle-7/”, line 185, in check_registration_limits
    response_courses = moodle_pool.create_moodle_courses(cr, uid, moodle_config_wiz_id, dic_courses, context=context)
    File “/home/serpentcs/workspace/OpenERP/7.0/addons/openerp-event-moodle-7/”, line 107, in create_moodle_courses
    return sock.core_course_create_courses(courses)
    File “/usr/lib/python2.7/”, line 1225, in __call__
    return self.__send(self.__name, args)
    File “/usr/lib/python2.7/”, line 1582, in __request
    File “/usr/lib/python2.7/”, line 1265, in request
    return self.single_request(host, handler, request_body, verbose)
    File “/usr/lib/python2.7/”, line 1299, in single_request
    print “Parse:::::::::::”, self.parse_response(response)
    File “/usr/lib/python2.7/”, line 1471, in parse_response
    File “/usr/lib/python2.7/”, line 558, in feed
    self._parser.Parse(data, 0)
    ExpatError: not well-formed (invalid token): line 11, column 8

Must read×