Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon
Moodle 2 Administration
Moodle 2 Administration

Moodle 2 Administration: Moodle is the world’s most popular virtual learning environment and this book will help systems administrators and technicians administer the system effectively. Based on real-world scenarios with plenty of screenshots, it’s an essential practical gui

eBook
$9.99 $32.99
Paperback
$54.99
Subscription
Free Trial
Renews at $19.99p/m

What do you get with Print?

Product feature icon Instant access to your digital eBook copy whilst your Print order is Shipped
Product feature icon Paperback book shipped to your preferred address
Product feature icon Download this book in EPUB and PDF formats
Product feature icon Access this title in our online reader with advanced features
Product feature icon DRM FREE - Read whenever, wherever and however you want
OR
Modal Close icon
Payment Processing...
tick Completed

Shipping Address

Billing Address

Shipping Methods
Table of content icon View table of contents Preview book icon Preview Book

Moodle 2 Administration

Chapter 1. Moodle Installation

Let's get started by installing Moodle.

After providing an overview that describes which setup is most suitable, software and hardware requirements will be outlined.

We will then cover the following:

  • Installation of Moodle in a LAMP/Unix environment

  • Installation of Moodle in a Windows environment

  • Installation of Moodle in a Mac OS X environment

  • Installation of Moodle via the Command Line Interface (CLI)

  • Upgrading Moodle manually and via CLI, CVS, and GIT

You will only need to study the section(s) of the operating system(s) you are planning to use. Moodle can be scaled from a single instructor to an entire institution. We will only be able to cover the most "popular" installations and present solutions to some common problems. We assume that you are familiar with the basic system administration of the operating system on which you will be installing Moodle.

Moodle installation an overview


Before we start installing Moodle, you have to decide which setup is right for your organization. Once you have come to a conclusion, there are a number of prerequisites that you will need before we can get started.

Choosing the best setup

There are a number of different environments in which you can set up Moodle. The three main criteria that should dictate the choice of the correct setup are:

  • Flexibility: If you want to have full control over your system, be able to tweak system settings, and make frequent changes to the setup, then you are best off hosting your own server. However, if your preferred choice is to only administer your system while somebody else is looking after the operating system, the web server, and backups, then you are better off with a professionally-hosted setup, and particularly offerings provided by authorized Moodle Partners.

  • Scalability: This is entirely driven by the number of concurrent users; that is, the number of active learners and teachers logged in to Moodle at the same time. A Moodle on a USB memory stick or on a single-processor desktop computer will not be able to cope with hundreds of simultaneously logged-in users. A load-balanced cluster, on the other hand, would be overkill for a small institution with a handful of learners. The following table provides some indicative setups for different types of educational organizations but is by no means complete:

    Organization

    Likely setup

    Single instructor

    Desktop, laptop, memory stick

    Small school/company

    Shared server

    Large school/company

    Dedicated server

    Medium to-large college

    Dedicated application and database servers

    University/corporate

    Load-balanced cluster

    Organizations require a server (either dedicated or shared) that is either hosted in-house or externally. If you decide to go down the hosted route, it is highly recommended to avoid a "cheap hosting" package, as their systems are not optimized for Moodle usage. This will have a significant impact on the performance of the system, especially with an increasing number of users.

  • Cost: Budgetary constraints will certainly play an important role in your setup. Unless you already have the appropriate infrastructure in place, it is likely to be more cost-effective to host your Moodle system externally, as it saves you from having to purchase servers and provide a 24/7 data connection that caters to your learners' needs. Licensing cost is significantly higher if you use commercial operating systems, web servers, and database systems, instead of an open source solution. Either way, Moodle is designed to support a wide range of possible infrastructures suitable to your organization's IT policy needs.

In addition to these three key criteria that usually influence the decision about the underlying infrastructure, there are other factors that will have an impact on your decision, such as in-house expertise, compatibility with other systems, personal preference, and existing resources.

We will cover the three most popular operating systems for hosting Moodle Linux, Windows, and Mac OS. For other setups such as on a memory stick, in a virtualized environment, or a larger multiserver cluster, please consult your local Moodle Partner (www.moodle.com). Some hosting companies offer quick one-click installations (often via the Fantastico installer, which usually doesn't contain the latest version). While the resulting Moodle system is sufficient for experimental sites, it is certainly unsuitable for production environments.

Moodle prerequisites

There are a number of hardware and software requirements that must be installed before we can start installing Moodle.

Hardware requirements

These requirements apply if you host Moodle yourself or if it is hosted on an external server (shared, virtual, dedicated, or clustered). On cheaper hosting packages, the hardware configuration is often insufficient to run Moodle efficiently.

  • Disk space: Moodle takes up between 150 and 200 MB of disk space. However, this only provides you with an empty system and does not take into account the space you require for any learning resources. The faster the disks, the better. RAIDed disks are recommended, but are not essential on smaller installations.

  • Memory: The (absolute) minimum requirement is 256 MB for a single-user instance, but more is necessary in a multiuser setup. A good rule of thumb is to have 1 GB of RAM for every 30-50 concurrent users. You have to double this calculation on Windows-based systems due to the higher overhead of the operating system.

Note

The more RAM the better. The faster the RAM the better.

  • Network: While Moodle can run on a standalone machine, its full potential lies in a networked environment. A fast network card is essential, as is good upload and download speed if the VLE is accessed over the Internet.

Software requirements

For Moodle 2, you must have the following components up and running on your server:

  • Database: Moodle officially supports four database systems: MySQL (version 5.0.25 or later; the ACID-compliant InnoDB storage engine is highly recommended), PostgreSQL (version 8.3 or later), Microsoft SQL Server (version 2005 or later), and Oracle (version 10.2 or later).

  • Web server: Apache is the preferred web server option, but Moodle works well with any other web server that supports PHP, such as Microsoft IIS.

  • PHP: PHP 5.3.3 is required to run Moodle 2. There are a number of PHP settings which you might have to change in the php.ini or the .htaccess file (see http://docs.moodle.org/en/Installing_Moodle for more details).

  • PHP extensions: Moodle makes use of a number of extensions, most of which are compiled into PHP by default. They are as follows:

    • Compulsory extensions: iconv, curl, ctype, zip, simplexml, spl, pcre, dom, xml, and json

    • Recommended extensions: intl, mbstring, openssl, tokenizer, xmlrpc, soap, and gd

    • Conditional extensions: mysql, pgsql, odbc (depending on database) and ldap, ntlm, and so on (depending on authentication mechanism used)

Depending on your specific setup, additional software and hardware might be required. It is assumed that the database, web server, PHP, and its extensions have been installed correctly, as this is not a VLE administrator task. Once this is the case, we are ready to go.

Note

Internet Explorer 6 is not supported by Moodle. A modern web browser (Internet Explorer 7+, Firefox 3+, Google Chrome, or Safari 3+) is required to access Moodle.

Installation in a LAMP environment


Moodle is developed in Linux using Apache, MySQL, and PHP (known as the LAMP platform). If you have a choice, this is the preferred environment. There is ongoing debate whether PostgreSQL is the more suitable database option, but we will stick with MySQL as this is the system most administrators are most familiar with.

Also, some organizations are bound to using Microsoft SQL or Oracle. If this is the case, please refer to the respective installation guide as this is beyond the scope of this book.

Downloading Moodle

Go to download.moodle.org to download Moodle. As you can see, there are quite a number of distributions to choose from.

There are four types of builds available on Moodle's download site:

  • Current stable builds: For the current version of Moodle, there are two releases the latest stable build and the latest official release. The latest stable version is created weekly (every Wednesday) and is the best choice for a new server. The latest official release contains the stable build as well as new fixes, but the version will not have gone through the weekly code review and might contain unresolved issues.

  • Older stable builds: Older versions than the current version are maintained by the Moodle development team and bug fixes are back-ported. Sometimes, newly added functionality is back-ported. Currently, the oldest supported version is 1.9 and it is expected that this version will be supported until June 30, 2012.

  • Legacy versions: For older versions, a stable build and the last release are made available. However, these are not maintained any further.

  • Upcoming release builds: Moodle also offers you the option to download beta releases of the software (if available) and also the latest development release. These should only be downloaded for testing or development purposes, never in production environments!

Each version is made available in the two compressed formats: TGZ (use the tar command to uncompress) and ZIP (requires unzip). You can either download them by clicking on the respective link or, if you have (secure) shell access, retrieve the file directly by using the wget command (The file name is kept in sync with the current version number, which increases every 6 months; for example, moodle-latest-22, moodle-latest-24, and so on):

wget http://download.moodle.org/stable21/moodle-latest-21.zip

Note

The location where you install Moodle is referred to as dirroot.

Once you have moved the file to the location where you want to install it on your web server (dirroot), extract the file using the unzip command (or tar xvfz if you downloaded the TGZ version). In a hosted environment, you might have to use the uncompressing method provided by the web administration interface (cPanel, Plesk, or any bespoke system).

unzip moodle-latest-21.zip
tar xvfz moodle-latest-21.tgz

If you place the entire folder in your web server documents directory, the site will be located at www.yourwebserver.com/moodle. To access your site from www.yourwebserver.com, copy the contents directly into the main web server's documents directory.

Note

The URL via which Moodle is accessed is referred to as wwwroot.

Once this has been successfully done, you have to create the database that Moodle uses to store its data.

Creating the Moodle database and the data directory

Moodle requires a database where it can store its information. While it is possible to share an existing database, it is highly recommended to create a separate database for Moodle. This can either be done via a web interface, as provided by hosted servers, or via the Unix command line.

Using a hosted server

Most hosting providers provide a dedicated web interface to carry out basic database operations. Alternatively, you can use phpMyAdmin, an open source software that allows you to manage MySQL databases over the Web. It is part of most Linux distributions and also part of many control panels, such as cPanel or Plesk. (phpMyAdmin is often configured not to allow new databases to be created. If this is the case, you have to create the database from the database manager in your control panel.)

Once you have started phpMyAdmin, go to the Databases section and create a new database using the UTF collation. You don't need to create any tables; Moodle will be populating the database during the installation process.

While you can use the existing account of a database user, it is good practice to create a dedicated user for the Moodle database. This step is carried out in the Privileges section.

Note

Do not use the MySQL root account for your Moodle database!

phpMyAdmin allows you to perform both steps creating a database and adding a new user in a single action as shown in the following screenshot. We will create a user book and also check the Create database with same name and grant all privileges option.

Using the command line

If you don't have access to a web interface to create MySQL databases and user accounts or if you prefer to use a Linux shell, you can perform the steps via the command line:

  1. 1. Start the database command line tool by entering mysql u root p and enter the password at the prompt.

  2. 2. Create a database here (called moodle) by entering CREATE DATABASE moodle; (all MySQL commands have to be completed with a semicolon).

  3. 3. Set the default character set and collation order to UTF8 by entering ALTER DATABASE moodle DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;.

  4. 4. Create a user and password (here user and password, respectively) and grant database access permissions by entering GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, CREATE TEMPORARY TABLES, DROP, INDEX, ALTER ON moodle.* TO user@localhost IDENTIFIED BY 'password';

  5. 5. Exit the MySQL command tool by entering QUIT.

It is necessary to reload the grant tables using the following command line:

mysqladmin -u root -p reload

You have now completed the database setup. All we have to do now is to create Moodle's data directory before we are ready to start the installation of Moodle per se.

Creating the Moodle data directory

Moodle stores most of its information in the database you have just created. However, any uploaded files such as assignments or pictures are stored in a separate directory. This data directory in Moodle is usually referred to as moodledata.

Note

The location which holds your Moodle data files is referred to as dataroot.

Later on, the Moodle installer will attempt to create this directory but, in some setups, this is not possible due to security restrictions. To be on the safe side, it is better to create moodledata manually or via a web-based file manager, as provided by some systems.

  1. 1. Create the directory by entering mkdir moodledata.

  2. 2. Change permissions recursively by entering chmod R 0770 moodledata (if you use 0777 then everybody on the server will have access to the files).

  3. 3. Change the user of the directory to that of your web server (usually apache or www-data) by entering chown R apache moodledata.

  4. 4. Change the group of the directory to that of your web server (usually nobody or www-data) by entering chgrp R nobody moodledata.

    Note

    It is crucial to create moodledata on your server where it cannot be accessed publicly, that is, outside your web directory.

If you don't have permission to create the data directory in a secure location, create the .htaccess file in your home directory containing the following two lines:

order deny,allow
deny from all

This will prevent files from being accessed without the user having permissions to do so.

Running the installer script

The installer script performs two main actions populating the database and creating the configuration file config.php. The Moodle installer is initiated by entering the URL of wwwroot (the location where you copied Moodle) into your web browser; Moodle will recognize that it hasn't been installed yet and start the process automatically.

The Moodle installer has to set a session cookie. If your browser has been configured to trigger a warning, make sure you accept that cookie.

The first screen lets you choose the language to be used during installation. This is not the locale used for Moodle, only the language for the installation.

The following screen displays the expected values for the Web address of the site (wwwroot), the Moodle directory (dirroot)and the Data directory (dataroot). You might have to modify the data directory entry if the location of your moodledata differs.

If dataroot cannot be located or does not have the correct permissions, an error message with details will be displayed. The same applies if dataroot is accessible directly via the Web and hence is not secure.

In the following screenshot, you have to select which database you wish to use. On my system, only the standard MySQL driver is installed. To use other database systems such as PostgreSQL, Oracle, or MS SQL Server, a driver has to be installed first.

This interface is using the configuration details that have been previously established. This would look slightly different if you have chosen a different database driver to the native MySQL.

Setting

Description

Database host

The default is localhost (127.0.0.1), which is correct if the database is located on the same server as the web server. If it is located on a separate server, specify the IP address (preferably unresolved, to improve performance).

Database name

Database user

Database password

The database name, username, and password you enter when you run the mysql command.

Tables prefix

All tables that the Moodle installer is going to create will be prefixed with mdl_. This should only be changed if you run multiple Moodle installations using the same database.

Unix socket

If selected, the connection takes place through the filesystem as opposed to TCP/IP. A Unix socket file connection is marginally faster than TCP/IP, but can only be used when connecting to a server on the same computer.

Once you see the following screen, you will know the Moodle configuration file config.php has been successfully created. If the creation of the configuration file fails (usually because of incorrect permissions) the installer will display the content of the configuration file. You will have to copy, the text from the screen and paste it to config.php in your dirroot.

Before Moodle can proceed with the installation, you have to agree to the GPL license agreement. You can find the full license text at docs.moodle.org/en/License.

Once you have accepted the license agreement, the Moodle installer checks to see if certain components are installed. Not all modules are compulsory see the Moodle prerequisites section in this chapter and notices on screen. The installer also verifies the key PHP settings. If any of the tests are not passed, it is important that you go back to the Software requirements section to resolve any problems and restart the installation process after the issues have been fixed. Otherwise, some features may not work or the installer will not continue, depending on the importance of the module.

Once this screen has been confirmed, the Moodle installer will create all tables in the database. This process might take a few minutes.

Once the table creation and population have been concluded, you will see the screen to set up the administrator account. The default username is admin, which should be changed for security reasons. The self-explanatory fields you have to fill in are New password, First name, Surname, Email address, City/town and Select a country. All other fields are explained in great detail in Chapter 5, User Management.

The last screen of the installation script asks you to enter some front page settings, namely, the Full site name, Short name for site and Front page description. These front page settings can be modified later (see Chapter 7, Moodle Look and Feel). Additionally, the installer allows you to turn on Self registration. Leave this disabled for now, until you have covered Chapter 5,

Once this information has been entered and the screen has been confirmed, you are ready to start using Moodle. However, it is recommended to finalize the installation and setting up the execution of the Moodle maintenance script.

Finalizing the installation

To make sure that Moodle is running without problems, go to Notifications in the Site administration menu in the Settings block.

In my installation, there are two issues a PHP setting has a value that is not recommended (I have to change this in the php.ini file) and the so-called cron maintenance script has not run for 24 hours. We will solve that mystery after we have registered our site. Other messages might appear in the Notifications area and you should resolve them in due course.

You might also want to check out http://<yoursite>/admin/health.php, which provides a mini health center that points out any additional issues. For each identified problem, a description, its severity level, and a solution are displayed.

Moodle provides some statistics about its usage on www.moodle.org/stats. To be included in these figures, you have to register your Moodle site. Registration (below the Notification link) with moodle.org (MOOCH) is optional and free, and you decide what information will be made public. Even if you opt out of providing any usage patterns for your site, it is still highly recommended to register, as you will get occasional notices from moodle.org. For example advanced security alerts.

After entering the details, you will have to confirm the submission and enter a reCAPTCHA (a slightly distorted image showing text). You also have the ability to unregister your site at any time.

The settings for the registration screen are as follows:

Field

Description

Name

The name of your site, as you just specified in the front page settings.

Privacy

You have the options:

  • Please do not publish this site (default)

  • Publish the site name only

  • Publish the site name with a link

Description

A short narrative describing your site.

Site URL

The URL of your Moodle site.

Language

The language your site is published in.

Moodle version/release

Moodle version and build.

Postal address/Country

Enter your address and select the country in which your organization is located.

Geolocation

The latitude and longitude of your location.

Administrator

Your name.

Phone/Email address

Your contact phone number and e-mail address.

Contact form

By default, Moodle creates a form for other Moodle users to contact you this can be turned off.

Email notifications

By default, Moodle e-mails you important information, such as upgrades and security issues.

More information

This is the data sent to moodle.org on a regular basis. This information will not be displayed to the public and will only be used for statistical purposes.

Setting up the cron process

Moodle has to perform a number of background tasks on a regular basis. The script that performs these tasks is known as a cron script and is executed by the so-called cron process. An entire page has been dedicated to this in the Moodle documentation; you can find it at docs.moodle.org/en/Cron. It is important that you set up the cron process. Otherwise, any timed Moodle features, such as scheduled backups, sending forum notifications, statistics processing, and so on, will not work.

The script cron.php is located in the admin directory and can be triggered manually through a web browser (unless your security settings have been changed). Once executed, the output from the script (http://yoursite/admin/cron.php) is shown on screen and you have to navigate back to your Moodle system manually.

Most control panels allow you to set up scheduled tasks via a cron job management tool. Bear in mind that this is not part of Moodle but a part of your hosting package. The following screenshot is from the widely-used Plesk system, which executes the script every 5 minutes:

There are a number of ways to call the cron script. wget q O /dev/null http://<yoursite>/admin/cron.php is the most popular option in a Linux environment (see Command in the preceding screenshot). However, if this does not suit your setup, check out docs.moodle.org/en/Cron for alternatives.

The interface shown earlier creates an entry in the crontab, a file located in the /etc directory that contains all system-wide cron entries. This file can also be edited manually using crontab -e, but be careful to get the syntax right!

This concludes the installation process for Moodle in a LAMP environment. If you have come across any problems that have not been covered in these instructions, or if your setup differs from the one described, go to docs.moodle.org/en/Installing_Moodle, where more installation details are provided and exceptions are covered in greater detail.

Installation in a Windows environment


XAMPP is a free Apache distribution that contains MySQL and PHP (as well as Perl) and exists for a number of operating systems. The Moodle distribution for Windows makes full use of XAMPP and is located at download.moodle.org/windows. The installation works on all the latest Windows PC and server variants.

The XAMPP-based Moodle distribution is only suitable for servers with a small number of users. For larger Windows installations you have to install Moodle manually. This involves installing a database server (MS SQL or any other support system), a web server (Microsoft IIS or Apache), and PHP, separately. You find details about this process at docs.moodle.org/en/Windows_installation.

Once downloaded, take the following steps:

  1. 1. Copy the distribution to a folder on your PC and unzip the archive in your folder of choice.

  2. 2. Make sure any software that uses port 80 is not running or change its settings to point it to an alternative port.

  3. 3. Double-click on Start Moodle.exe.

  4. 4. If you have a firewall installed, allow any shown services to be executed.

  5. 5. The XAMPP service will run in the Windows background.

  6. 6. Go to your web browser and enter http://localhost to your address bar.

  7. 7. You will see the same installer being launched as the one described for the LAMP environment. All values have already been populated; all you have to do is navigate through all the screens until you see the familiar Setup administrator account. This process will take a few minutes.

  8. 8. Enter the administrator details and select Update profile.

  9. 9. Enter the Front Page settings for your site.

  10. 10. Check that no warnings are displayed in the Notifications section of the Site administration area in the Settings block.

That's it! Your Moodle system is now up and running and you are now able to use Moodle locally, or from a web browser on another machine, as long as your IP address is accessible via the network you are on.

To stop using Moodle, double-click on Stop Moodle.exe. If you have a firewall installed, you might have to allow the program to be executed.

Instead of starting and stopping Moodle manually, you can start Apache and MySQL automatically as Windows services. In the server directory of your Moodle system, you find an executable called service.exe which you have to run with the -install parameter as administrator, as in the following example:

C:/moodle/server/service.exe -install

Installation in a Mac OS X environment


MAMP is a free distribution that contains Apache, MySQL, and PHP for Mac OS X. Like its Windows counterpart, the Moodle distributions for Mac OS X (10.4 or higher) are only intended for local installations and not for production environments. There is also a link on the download site for Mac server installation.

Moodle4Mac is available as universal binaries in XAMPP and MAMP versions, which are located at download.moodle.org/macosx. The XAMPP version has a smaller footprint and uses the new innoDB engine, but requires an additional installation step. The choice seems to come down to personal preference.

Once downloaded, follow these steps:

  1. 1. Double-click on the downloaded DMG file to start the installation. This will open a screen as follows, which explains the remainder of the installation process.

  2. 2. Drag the XAMPP or MAMP folder on this screen onto the Applications icon which will copy the Moodle system and its required components.

  3. 3. Open the XAMPP or MAMP folder in Applications where you will find the following relevant icons:

  4. 4. This step only applies to the XAMPP installation. Double-click on the FixRightsForMoodle.sh icon, wait until a terminal has opened, enter you Mac admin password and close the terminal when the script has completed.

  5. 5. Double-click on the XAMPP or MAMP icon to start Apache and MySQL. There is also a MAMP Control Widget in the same directory, which you might want to install.

  6. 6. Double-click on the Link to Moodle icon, which opens your Moodle instance on your localhost in your default web browser.

And that's it! An installation cannot be easier than that! You don't even have to go through the installation process. Moodle is already pre-configured and you are ready to go.

The default password for the admin account is 12345, which you should change in the user profile.

The MAMP folder also includes a shell script called UpdateMoodle20.sh (requires CVS to be installed see the Updating Moodle section discussed later). When you double-click on the file, the script will be executed to download the latest version of Moodle and install it on your Mac. On all other operating systems, you will have to go through a more cumbersome update process which will be described further.

Installation via the Command Line Interface


Moodle 2 has introduced a Command Line Interface (CLI), which lets you perform a number of administrative tasks from the Unix shell prompt. There is no CLI for Windows-based systems. CLI-based installations are useful if you need to automate setups, for example, in an environment where you have to host multiple Moodle instances.

The CLI is not for the faint-hearted, so be careful when using it. You have to execute the installation script as the same user used for the web server, usually wwwroot or apache. You can run the installation script install.php in interactive mode (you will have to enter any parameters by hand) or in non-interactive mode, where the script will run silently.

From your dirroot, you can initiate the interactive script as follows:

sudo u www-root /usr/bin/php admin/cli/install.php

More interesting is the non-interactive mode as this can be used for scripting and automation purposes. The list of all available parameters is displayed using the --help command.

sudo u www-root /usr/bin/php admin/cli/install.php --help

An example command line would look like the following, where you will have to adjust the parameters to your local setup:

sudo -u www-root /usr/bin/phpinstall.php --wwwroot=http://123.54.67.89/moodle --dataroot=/var/moodledata/ --dbtype=mysqli --dbhost=localhost --dbname=moodle --dbuser=moodle --dbpass=Password123! --fullname=moodle2 --shortname=moodle2 --adminpass=Password123! --non-interactive --agree-license

There are more Moodle tasks that can be administered via the CLI, for example, resetting passwords or putting Moodle in maintenance mode. We will show the relevant syntax at the appropriate places throughout the book.

Note

If your installer crashes, you might have to increase your PHP memory_limit and post_max_size settings.

Updating Moodle


Moodle is updated constantly, which is common practice in open source development environments. A new version containing resolved bug fixes is created every night and, as mentioned earlier, a fully-tested version is released on a weekly basis. There is usually no need to install updates every week. However, you should upgrade your Moodle system when:

  • Security patches have been issued

  • New features have been added

  • Bugs have been fixed that affect your setup

  • A major new update is released (every 6 months)

There are two ways Moodle systems can be updated. You can either run updates manually (using the web interface or the CLI) or stay up-to-date using the CVS or GIT commands. Both procedures are described in this section.

Either way, before you start, make sure you put Moodle in maintenance mode to ensure that no other user is logged in during the update. Go to Server | Maintenance mode, enable the Maintenance mode, and enter a maintenance message.

You can also put Moodle in maintenance mode using its CLI as follows:

sudo u www-root /usr/bin/php admin/cli/maintenance.php --enable

To change back to normal mode use the --disable parameter instead of --enable as follows:

sudo u www-root /usr/bin/php admin/cli/maintenance.php --disable

Manual update

The high-level process for updating a Moodle system is as follows:

  1. 1. Creating a backup.

  2. 2. Creating a new Moodle system.

  3. 3. Installing the update.

If you are updating from a previous version of Moodle, the process is the same. However, double-check the Upgrading document at docs.moodle.org/en/Upgrading for any version-specific issues.

Note

You cannot jump major versions when updating Moodle.

For example, if your current Moodle system is still on version 1.8 and you wish to update to version 2.1, you will first have to update to the latest version of 1.9 before updating to the latest version of 2.1. However, you can update from 2.1 straight to 2.1.5.

Note

Updating from Moodle 1.x to Moodle 2 is a big version jump that has some serious implications. For example, some theme elements will have to be re-created, custom code will need adjusting and, most importantly, your staff is likely to require training before the new version is put into production.

Moving from Moodle 1.x to Moodle 2 is more a migration from one system to another than an update. Setting up a separate system to test the migration process has proven valuable. You will have to plan and budget for this.

Creating a backup

Before you install a new update, it is highly recommended that you create a backup of your Moodle system. While most updates will run smoothly, the backup will be required if you have to revert the system to the pre-update version. There are three parts that have to be backed up:

  • Database: There are two ways you can create a so called database dump from a MySQL database, either via command line or via Moodle's optional database interface.

    The simplest syntax for the command line tool is:

mysqldump -u <user> -p <database>>backup.sql
  • To restore the database you need to use the mysql command line tool as follows:

mysql -u <user> -p <database><backup.sql
  • The interface for the database tool is accessed via Server | phpMyAdmin. This is an optional module and has to be installed separately (it is the MySQL Admin add-on see Chapter 14, Installing Third-party Add-ons for more details).

    Click on the Export link on the front page, select the database to export, and click on Go, as shown in the following screenshot. The output of the command will be displayed on screen:

  • Data directory: This is the moodledata directory. Create a copy of this elsewhere on the server (using cp R) or create an archive using the tar command (tar cvf moodledata).

  • Moodle: This is the Moodle software itself. Create a copy of the directory elsewhere on the server. While only some parts of this backup are required (config.php, added themes, modified language packs, and so on), it is good practice to create a backup of the entire software. Finally, rename your Moodle system from moodle to say, moodle.old (mv moodle moodle.old).

Note

For more information on backups, check out Chapter 13,

Creating your new Moodle system

Once you have created a backup, it is time to download the new version of Moodle. This is done in the same way as described earlier, during the installation process.

First, create a new moodle directory (dirroot) and copy the new version to that location (using the same unzip or tar command as during the installation). Also, make sure the permissions, as well as user and group, are correct.

Now, copy the following files and directories from your moodle.old directory to your new dirroot. Existing files and directories will have to be overwritten:

  • config.php

  • .htaccess (only if present)

  • Any theme folders that have been created

  • Any modified language packs

  • The content of the local directory

  • Any third-party modules and custom code that are not located in local

That's it! The next time you start Moodle, the update script will kick in. We'll go through that next.

Once you are more confident with the update process, you can copy the new version, overwriting the current version, after you have created backups. This will save you the last steps of manually copying files from the old to the new versions.

Running the update script

Once you go to the location of your Moodle site and login in as administrator, the system will recognize that a new version is available and kick off the installer automatically.

The first screen displays the build of the new version (here, 2.0.1+) and asks you to confirm that you wish to go ahead with the upgrade.

Next, a screen is displayed that provides a link to the release notes and performs the same server check as the one described during the installation.

Moodle plugins, whether core or third-party, sometimes cause problems when upgrading Moodle. The installer lists all components and states whether they are Standard, Non-Standard, Extension, or Incompatible. The Status column highlights any actions required or problems found. You will need to resolve any issues that have arisen. See Chapter 14, Installing Third-party Add-ons, for more details.

Once this screen has been confirmed, the actual installation starts, during which new database fields are created and data is modified if and when necessary. Any new system settings that have been added to Moodle are shown and can be changed straightaway. For example, in the following screenshot, a new Path to dot parameter has been added to the System paths section.

Once the upgrade process has been completed, make sure you check the Notifications page as earlier. Also, don't forget to turn off the Maintenance mode!

Updating Moodle via CLI

As you would expect, Moodle updates can also be run using the already-discussed CLI. Once you have backed up your data and updated to the latest version, all you need to do is run the following script:

sudo u www-root /usr/bin/php admin/cli/upgrade.php --non-interactive

Updating Moodle via CLI is even more powerful when combined with the CVS or GIT checkout of the Moodle source code. That is what we will look at next.

Updating Moodle via CVS and GIT

An alternative approach exists to keep a current version up-to-date. It uses open source versioning systems which are supported by Moodle, namely, CVS and GIT. All checked-in Moodle code is made available via this method, which allows you to update only the modules that have actually changed.

The repository cvs.moodle.org is a read-only version of git.moodle.org. First, we are going to describe the basics of how to set up CVS. CVS has to be installed on your Moodle server. The first time you use CVS, you have to download the full version of Moodle, as follows:

cvs -z3 -d:pserver:anonymous@cvs.moodle.org:/cvsroot/moodle co d <directory> -r <version>Moodle

<directory> is the location where your Moodle system is installed and<version> specifies the version you wish to install, for example, MOODLE_21_WEEKLY or MOODLE_20_STABLE.

Once this has been successful, go to your Moodle site and you will be guided through the same update process as discussed earlier. If this fails, check that the user and group permissions are set correctly and adjust them accordingly (chown R <user>:<group> moodle).

For further updates you should use the following command, which remembers your previous settings, such as the chosen mirror site:

cvs update -dP

For further options of how to use CVS from the command line and in operating systems other than Unix, check out docs.moodle.org/en/CVS_for_Administrators.

Setting up GIT is a cumbersome process, which is beyond the scope of this book. You can find details at docs.moodle.org/en/Git. However, once set up, GIT is a very streamlined system to use, particularly in conjunction with the CLI we discussed earlier.

The following is a sample script which gets the latest version of the source code, puts Moodle in maintenance mode, merges the old code with the new, runs the upgrade script, and disables the maintenance mode.

git fetch
sudo -u www-root /usr/bin/php admin/cli/maintenance.php --enable
git merge origin/cvshead
sudo -u www-root/usr/bin/php admin/cli/upgrade.php
sudo -u www-root/usr/bin/php admin/cli/maintenance.php --disable

If you have changed any core code, potential conflicts might arise and will have to be resolved (CVS and GIT will prompt you to do so).

You might also come across some conflicting advice on whether to use CVS or GIT for production sites or not. The advantages are that your system is always up-to-date and that the updates are carried out automatically. The disadvantages are that the update process might require intervention to resolve any conflicts or it might fail, especially when a lot of third-party add-ons have been employed.

Summary


In this chapter, you have learned how to install Moodle on the most popular operating systems and also how to upgrade the VLE. You have also learned how to use the powerful command line interface.

The fact that Moodle uses a portable software architecture and facilitates standard open source components allows the installation on multiple platforms. However, this also means that different idiosyncrasies have to be considered in different environments.

Now that your system is up and running, let's have a look at the components of Moodle which will provide you with a better understanding of the system and how to administer it.

Left arrow icon Right arrow icon

Key benefits

  • A complete guide for planning, installing, optimizing, customizing, and configuring Moodle
  • Learn how to network and extend Moodle for your needs and integrate with other systems
  • A complete reference of all Moodle system settings

Description

Moodle has evolved from an academic project to the world's most popular virtual learning environment. During this evolution, its complexity has risen dramatically and so have the skills that are required to administer the system.Moodle 2 Administration is a complete, practical guide to administering Moodle sites. It covers how to set up Moodle in any learning environment, configuration and day-to-day admin tasks, as well as advanced options for customizing and extending Moodle.The author, who has been administering systems for over 20 years, has adopted a problem-solution approach to bring the content in line with your day-to-day operations. The practical examples will help you to set up Moodle for large groups and small courses alike. This is a one-stop reference for any task you will ever come across when administering a Moodle site of any shape and size.

Who is this book for?

This book is written for technicians and systems administrators, as well as academic staff. Essentially anyone who has to administer a Moodle system. Whether you are dealing with a small-scale local Moodle system or a large-scale multi-site Virtual Learning Environment, this book will assist you with any administrative tasks. Some basic Moodle knowledge is helpful, but not essential.

What you will learn

  • Install and update Moodle on multiple platforms manually and using the CLI
  • Manage courses, cohorts, users, and roles
  • Get Moodle hooked up to repositories, portfolios, and plagiarism detection systems
  • Configure Moodle for accessibility, localization, communication, and collaboration
  • Generate comprehensive Moodle reports and statistics
  • Guarantee backups, security, privacy, and performance
  • Network Moodle with Mahara and extend it with third-party add-ons
  • Configure Moodle web services to enable mobile learning and integration with other IT systems
Estimated delivery fee Deliver to United States

Economy delivery 10 - 13 business days

Free $6.95

Premium delivery 6 - 9 business days

$21.95
(Includes tracking information)

Product Details

Country selected
Publication date, Length, Edition, Language, ISBN-13
Publication date : Oct 28, 2011
Length: 420 pages
Edition : 1st
Language : English
ISBN-13 : 9781849516044
Languages :
Tools :

What do you get with Print?

Product feature icon Instant access to your digital eBook copy whilst your Print order is Shipped
Product feature icon Paperback book shipped to your preferred address
Product feature icon Download this book in EPUB and PDF formats
Product feature icon Access this title in our online reader with advanced features
Product feature icon DRM FREE - Read whenever, wherever and however you want
OR
Modal Close icon
Payment Processing...
tick Completed

Shipping Address

Billing Address

Shipping Methods
Estimated delivery fee Deliver to United States

Economy delivery 10 - 13 business days

Free $6.95

Premium delivery 6 - 9 business days

$21.95
(Includes tracking information)

Product Details

Publication date : Oct 28, 2011
Length: 420 pages
Edition : 1st
Language : English
ISBN-13 : 9781849516044
Languages :
Tools :

Packt Subscriptions

See our plans and pricing
Modal Close icon
$19.99 billed monthly
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Simple pricing, no contract
$199.99 billed annually
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just $5 each
Feature tick icon Exclusive print discounts
$279.99 billed in 18 months
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just $5 each
Feature tick icon Exclusive print discounts

Frequently bought together


Stars icon
Total $ 136.97
Moodle Gradebook
$32.99
Moodle 2.0 Course Conversion Beginner's Guide
$48.99
Moodle 2 Administration
$54.99
Total $ 136.97 Stars icon
Banner background image

Table of Contents

16 Chapters
Moodle Installation Chevron down icon Chevron up icon
The Moodle System Chevron down icon Chevron up icon
Courses, Users, and Roles Chevron down icon Chevron up icon
Course Management Chevron down icon Chevron up icon
User Management Chevron down icon Chevron up icon
Managing Permissions: Roles and Capabilities Chevron down icon Chevron up icon
Moodle Look and Feel Chevron down icon Chevron up icon
Moodle Plugins Chevron down icon Chevron up icon
Moodle Configuration Chevron down icon Chevron up icon
Moodle Reporting Chevron down icon Chevron up icon
Moodle Security and Privacy Chevron down icon Chevron up icon
Moodle Performance and Optimization Chevron down icon Chevron up icon
Backup and Restore Chevron down icon Chevron up icon
Installing Third-party Add-ons Chevron down icon Chevron up icon
Moodle Integration via Web Services Chevron down icon Chevron up icon
Moodle Networking Chevron down icon Chevron up icon

Customer reviews

Top Reviews
Rating distribution
Full star icon Full star icon Full star icon Full star icon Half star icon 4.2
(17 Ratings)
5 star 64.7%
4 star 11.8%
3 star 11.8%
2 star 0%
1 star 11.8%
Filter icon Filter
Top Reviews

Filter reviews by




Jason Murray Mar 14, 2012
Full star icon Full star icon Full star icon Full star icon Full star icon 5
I enjoyed reading Alex Buchner's book, Moodle 2 Administration: An administration guide to configuring, securing, customizing, and extending Moodle, and I can see many uses for this book. If you are a starting Moodle admin, the book walks you through the installation, performance tweaks, user authentication, and content design. For an experienced Moodle administrator, the book provides a refresher and discusses the updates with Moodle 2.0. I also see this book as an excellent reference guide. The book structures the chapters in a way that allows the reader to focus on the content they wish to learn.Several chapters really sparked my interests for my particular situation and environment. I found the performance chapter especially interesting. The suggestions make sense and the adjustments are fairly simple to complete. Buchner explains the three main OS (Linux, Mac, and Windows) configurations and tweaks, so he covers most Moodle environments. I also thought the maintenance section provided great advice and tips to keep Moodle performing well. Additionally, I am going to fine tune some of the user privileges to help teachers control their courses better. I'm making some of these modifications due to the upgrade changes in Moodle 2. Moreover, the chapter on plugins has me considering adding new options for my teachers. Finally any one going from 1.9 to 2 or 2.2, I would recommend looking at the quiz module section as well.The Moodle 2 Administration book combines the Moodle doc knowledge database and multiple blog posts with Alex Buchner first hand experiences to offer an excellent reference guide. I have several technology director friends who are also taking on hybrid, open campus, and/or virtual initiatives powered by Moodle and I am going to recommend this book to them. Like I mentioned before it's a nice reference for both new and experienced Moodle administrators. I think everyone will learn something from reading this book. Good luck Moodling!
Amazon Verified review Amazon
Amazon Customer Aug 12, 2013
Full star icon Full star icon Full star icon Full star icon Full star icon 5
Easy to read and understand! I am a first-time Moodle user and the book guided me through the process without any major issues.
Amazon Verified review Amazon
Pete Potter Nov 18, 2011
Full star icon Full star icon Full star icon Full star icon Full star icon 5
Having used the book Moodle Administration I was delighted to get a copy of the Moodle 2 Administration. Whether you are an old Moodle 1.9 administrator or completely new to Moodle 2 Alex Buchner ensures that you are well informed of all the new features from installation to adding plug ins and networking with other Moodle sites.Moodle 2 was released towards the end of 2010. It is an Open Source Course Management System that has become popular all over the world through its versatility in being able to be adapted to suit Primary and Tertiary education. The original Moodle was very successful, but since Moodle 2 there has been considerable more momentum and support.Alex Buchner is the co-founder and Technical Director of the UKs leading Moodle Partner, Synergy Learning. His first book Moodle Administration most experienced Moodle users will be familiar with as a point of call and Moodle 2 Administration will do the same for Moodle 2. Administrators of all levels will find this useful, whether you install and host yourself or it is hosted by a Moodle Parnter and you are the on site administrator, Alex has written a guide that you can turn to for inspiration and support.The first 2 chapters of the book cover the installation and the system which helps administrators who are handling their own Moodle installation. Alex uses plain English and a succint description of the tasks at hand so even those that are new to Moodle can follow the guide. It is nicely broken with clear headings that allow you to chose which parts are relevent to your install. Even if you are not installing Moodle yourself it is useful to briefly look over the pages to familiarise yourself with Moodle 2.Chapters 3,4,5 and 6 looks at users, roles, courses and permissions. Existing and new Moodle users will appreciate the time taken over these chapters to clearly explain the relationships and the settings that are available in Moodle 2. Different scenarios are outlined in setting up a Moodle site and also individual courses making us aware of our options. Recommendations are also made and best practice shared along with the pitfalls of certain settings. The benefits of Synergy Learning's experience with Moodle in different settings save the reader lots of time.Chapters 7,8 and 9 moves away from courses and users and looks as how you can develop your own Moodle flavour. Most Moodle users I meet have great pride in their Moodle as there is lots of configuration that you can manipulate. Alex goes through blocks, themes, plug-ins and configration with lots of help and tips to ensure that you can develop your flavour.In Chapters 10, 11, 12 and 13 we look at reporting, security, performance and backups. This is again a sound insite in each area that give an administrator the knowledge that they need to get started and also to be aware of features for the future. These chapters make essential reading for the Administrator to keep an efficient Moodle and reap the benefits that the user expects, but does not generallly see.The final set of Chapters 14, 15, and 16 look more towards extending Moodle with 3rd Party Add ons, Moodle Networking and Integration. We look at how to to extend moodle in each of the cases and also how to revert back. Its useful as an Admin user to be aware of the potentials of networking and linking with Mahara although Alex warns us of the trust involved in each of the cases and clearly explains the impact of each.All in all the book is the Admin User Guide that would be shipped with Moodle if you bought the software off the shelf. Alex has laid down his knowldege to build a user guide and shared his experience to make sound recommendations along with warnings of common mistakes that can cause issues in the system. The book is a must for new and old Administrators - a companion that you will always refer to.
Amazon Verified review Amazon
F. M. Wentworth Mar 13, 2012
Full star icon Full star icon Full star icon Full star icon Full star icon 5
I was happy to receive a copy of this book from Packt Publishing. It is full of clear and useful information. I am new to Moodle from the admin side though I have used it from the course creation and teacher side. This book looks like a great reference for setting up your own Moodle site. The previous two reviews have covered the contents of the book well. Get your self a copy and start Moodling!
Amazon Verified review Amazon
M. J. Jun 23, 2013
Full star icon Full star icon Full star icon Full star icon Full star icon 5
Excelentemente estructurado. Muy visual y bien organizado. Con imágenes que ayudan la comprensión y facilitan al lector reconocer los pasos explicados. Totalmente recomendable.
Amazon Verified review Amazon
Get free access to Packt library with over 7500+ books and video courses for 7 days!
Start Free Trial

FAQs

What is the delivery time and cost of print book? Chevron down icon Chevron up icon

Shipping Details

USA:

'

Economy: Delivery to most addresses in the US within 10-15 business days

Premium: Trackable Delivery to most addresses in the US within 3-8 business days

UK:

Economy: Delivery to most addresses in the U.K. within 7-9 business days.
Shipments are not trackable

Premium: Trackable delivery to most addresses in the U.K. within 3-4 business days!
Add one extra business day for deliveries to Northern Ireland and Scottish Highlands and islands

EU:

Premium: Trackable delivery to most EU destinations within 4-9 business days.

Australia:

Economy: Can deliver to P. O. Boxes and private residences.
Trackable service with delivery to addresses in Australia only.
Delivery time ranges from 7-9 business days for VIC and 8-10 business days for Interstate metro
Delivery time is up to 15 business days for remote areas of WA, NT & QLD.

Premium: Delivery to addresses in Australia only
Trackable delivery to most P. O. Boxes and private residences in Australia within 4-5 days based on the distance to a destination following dispatch.

India:

Premium: Delivery to most Indian addresses within 5-6 business days

Rest of the World:

Premium: Countries in the American continent: Trackable delivery to most countries within 4-7 business days

Asia:

Premium: Delivery to most Asian addresses within 5-9 business days

Disclaimer:
All orders received before 5 PM U.K time would start printing from the next business day. So the estimated delivery times start from the next day as well. Orders received after 5 PM U.K time (in our internal systems) on a business day or anytime on the weekend will begin printing the second to next business day. For example, an order placed at 11 AM today will begin printing tomorrow, whereas an order placed at 9 PM tonight will begin printing the day after tomorrow.


Unfortunately, due to several restrictions, we are unable to ship to the following countries:

  1. Afghanistan
  2. American Samoa
  3. Belarus
  4. Brunei Darussalam
  5. Central African Republic
  6. The Democratic Republic of Congo
  7. Eritrea
  8. Guinea-bissau
  9. Iran
  10. Lebanon
  11. Libiya Arab Jamahriya
  12. Somalia
  13. Sudan
  14. Russian Federation
  15. Syrian Arab Republic
  16. Ukraine
  17. Venezuela
What is custom duty/charge? Chevron down icon Chevron up icon

Customs duty are charges levied on goods when they cross international borders. It is a tax that is imposed on imported goods. These duties are charged by special authorities and bodies created by local governments and are meant to protect local industries, economies, and businesses.

Do I have to pay customs charges for the print book order? Chevron down icon Chevron up icon

The orders shipped to the countries that are listed under EU27 will not bear custom charges. They are paid by Packt as part of the order.

List of EU27 countries: www.gov.uk/eu-eea:

A custom duty or localized taxes may be applicable on the shipment and would be charged by the recipient country outside of the EU27 which should be paid by the customer and these duties are not included in the shipping charges been charged on the order.

How do I know my custom duty charges? Chevron down icon Chevron up icon

The amount of duty payable varies greatly depending on the imported goods, the country of origin and several other factors like the total invoice amount or dimensions like weight, and other such criteria applicable in your country.

For example:

  • If you live in Mexico, and the declared value of your ordered items is over $ 50, for you to receive a package, you will have to pay additional import tax of 19% which will be $ 9.50 to the courier service.
  • Whereas if you live in Turkey, and the declared value of your ordered items is over € 22, for you to receive a package, you will have to pay additional import tax of 18% which will be € 3.96 to the courier service.
How can I cancel my order? Chevron down icon Chevron up icon

Cancellation Policy for Published Printed Books:

You can cancel any order within 1 hour of placing the order. Simply contact customercare@packt.com with your order details or payment transaction id. If your order has already started the shipment process, we will do our best to stop it. However, if it is already on the way to you then when you receive it, you can contact us at customercare@packt.com using the returns and refund process.

Please understand that Packt Publishing cannot provide refunds or cancel any order except for the cases described in our Return Policy (i.e. Packt Publishing agrees to replace your printed book because it arrives damaged or material defect in book), Packt Publishing will not accept returns.

What is your returns and refunds policy? Chevron down icon Chevron up icon

Return Policy:

We want you to be happy with your purchase from Packtpub.com. We will not hassle you with returning print books to us. If the print book you receive from us is incorrect, damaged, doesn't work or is unacceptably late, please contact Customer Relations Team on customercare@packt.com with the order number and issue details as explained below:

  1. If you ordered (eBook, Video or Print Book) incorrectly or accidentally, please contact Customer Relations Team on customercare@packt.com within one hour of placing the order and we will replace/refund you the item cost.
  2. Sadly, if your eBook or Video file is faulty or a fault occurs during the eBook or Video being made available to you, i.e. during download then you should contact Customer Relations Team within 14 days of purchase on customercare@packt.com who will be able to resolve this issue for you.
  3. You will have a choice of replacement or refund of the problem items.(damaged, defective or incorrect)
  4. Once Customer Care Team confirms that you will be refunded, you should receive the refund within 10 to 12 working days.
  5. If you are only requesting a refund of one book from a multiple order, then we will refund you the appropriate single item.
  6. Where the items were shipped under a free shipping offer, there will be no shipping costs to refund.

On the off chance your printed book arrives damaged, with book material defect, contact our Customer Relation Team on customercare@packt.com within 14 days of receipt of the book with appropriate evidence of damage and we will work with you to secure a replacement copy, if necessary. Please note that each printed book you order from us is individually made by Packt's professional book-printing partner which is on a print-on-demand basis.

What tax is charged? Chevron down icon Chevron up icon

Currently, no tax is charged on the purchase of any print book (subject to change based on the laws and regulations). A localized VAT fee is charged only to our European and UK customers on eBooks, Video and subscriptions that they buy. GST is charged to Indian customers for eBooks and video purchases.

What payment methods can I use? Chevron down icon Chevron up icon

You can pay with the following card types:

  1. Visa Debit
  2. Visa Credit
  3. MasterCard
  4. PayPal
What is the delivery time and cost of print books? Chevron down icon Chevron up icon

Shipping Details

USA:

'

Economy: Delivery to most addresses in the US within 10-15 business days

Premium: Trackable Delivery to most addresses in the US within 3-8 business days

UK:

Economy: Delivery to most addresses in the U.K. within 7-9 business days.
Shipments are not trackable

Premium: Trackable delivery to most addresses in the U.K. within 3-4 business days!
Add one extra business day for deliveries to Northern Ireland and Scottish Highlands and islands

EU:

Premium: Trackable delivery to most EU destinations within 4-9 business days.

Australia:

Economy: Can deliver to P. O. Boxes and private residences.
Trackable service with delivery to addresses in Australia only.
Delivery time ranges from 7-9 business days for VIC and 8-10 business days for Interstate metro
Delivery time is up to 15 business days for remote areas of WA, NT & QLD.

Premium: Delivery to addresses in Australia only
Trackable delivery to most P. O. Boxes and private residences in Australia within 4-5 days based on the distance to a destination following dispatch.

India:

Premium: Delivery to most Indian addresses within 5-6 business days

Rest of the World:

Premium: Countries in the American continent: Trackable delivery to most countries within 4-7 business days

Asia:

Premium: Delivery to most Asian addresses within 5-9 business days

Disclaimer:
All orders received before 5 PM U.K time would start printing from the next business day. So the estimated delivery times start from the next day as well. Orders received after 5 PM U.K time (in our internal systems) on a business day or anytime on the weekend will begin printing the second to next business day. For example, an order placed at 11 AM today will begin printing tomorrow, whereas an order placed at 9 PM tonight will begin printing the day after tomorrow.


Unfortunately, due to several restrictions, we are unable to ship to the following countries:

  1. Afghanistan
  2. American Samoa
  3. Belarus
  4. Brunei Darussalam
  5. Central African Republic
  6. The Democratic Republic of Congo
  7. Eritrea
  8. Guinea-bissau
  9. Iran
  10. Lebanon
  11. Libiya Arab Jamahriya
  12. Somalia
  13. Sudan
  14. Russian Federation
  15. Syrian Arab Republic
  16. Ukraine
  17. Venezuela