# Saving a course

The platform administrator can save any course from (among other methods) the administrative interface.

1. Go to : « Administration » → « Courses list » :

![](/files/20KXwxlTgAb3VD57MBuV)

*Illustration: Administration – Courses block*

1. Click on the CD icon, for the course to export.

![](/files/-LH9DBi3hPLUlItOhr7v)

*Illustration: Administration – Courses list – Backup*

1. Chamilo then suggests to « Generate a backup » or « Import backup information » from backup. Click on *Generate backup*.

![](/files/-MWt4Huw21iLCaouy1lw)

*Illustration: Administration - Backup*

1. You can choose between a complete backup and a specific selection (depending on your needs). Let's pick *Complete* backup for the example.

![](/files/-MFUsAQhEcsO8HsMR1Ja)

*Illustration: Administration – Backup settings*

1. The backup is generated and you just have to click the zip file button to download it.

![](/files/-MFUsAQqqjJTxiVuE2Xe)

*Illustration: Administration – Backup, results of backup generation*

1. On clicking the *Generate backup* button, Chamilo creates a backup file which, by default, ends up in its *chamilo/archive* directory. You can thus recover it by direct access, but that means other people can also have access to it. This means, as an admin, that you should both have a regular process to clean this directory (we offer one in the *main/cron* directory but you have to execute it) **and** that you should set your configuration (through .htaccess or VirtualHost config) to avoid direct navigation inside the *main/archive* directory.

There is also another way to generate backups...

As admin or teacher, click on the *My courses* tab, then on one of the courses available. Then it is possible to generate a backup pretty much the same way clicking on the *Maintenance* tool.

![](/files/-LH9DFveStD82Ah4u_wo)

*Illustration: Interface – Course administration tools*

The interface is slightly different...

![](/files/-LioWLRY0AstWQg4Tdze)

*Illustration: Interface – Course backup options*

With the course backup options, you can still execute three more functions:

* **Course copy** allows you to duplicate all or part of a course into another (preferably empty) course. The only required state before this is to have a first course with something to copy, and another course which doesn't contain the elements of the first one.
* **Empty course** allows you to empty the whole contents of a course. Let's say you want to start a fresh course inside the same “shell” as the previous one... just click this link and all the resources previously created will be gone, with no chance to recover them. Obviously, before you do that, you might want to recover the course element through a *Course backup* operation.
* **Delete** allows you to delete the whole course, this also means removing its empty shell. A confirmation is required, but once it's removed, don't expect it to be available as a safe copy anywhere...

**Note** : when opening the backup's .zip file, you will find a close similarity with the *Documents* tool documents hierarchy.

For your information, the default .zip file for a course initially created with example content weighs around 8.9MB.

It contains :

* one internal structure file named course\_info.dat
* one directory called *Document*
* a series of files and folders containing the course documents, anything not linked to the users (assignments and other stuff user-related are not saved)

The *Document* directory has a structure similar to the one presented in an illustration above which reproduces the documents tool structure.

![](/files/-MFUsAREl7zetfHKjlZZ)

*Illustration: Backup – Backup files structure*

![](/files/-MFUsARMU4KXBEioMCmq)

*Illustration: Interface – Documents list*

These documents are the default contents of the course.

Furthermore, the backup will only recover documents (images, videos, etc.) related to the course.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.chamilo.org/1.11.x/admin-guide/backups/readme.2/saving_a_course.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
