IMPORTANT: Per accedir als fitxer de subversion: http://acacha.org/svn (sense password). Poc a poc s'aniran migrant els enllaços. Encara però funciona el subversion de la farga però no se sap fins quan... (usuari: prova i la paraula de pas 123456)

Alert.png Aquesta wiki forma part dels materials d'un curs
Curs: IniciacioMoodle
Fitxers: IntroduccioMoodle.pdf (IntroduccioMoodle.odp),

InstalacioMoodle.pdf (InstalacioMoodle.odp),ELearningTimeLine.pdf,

GestioUsuarisICursos.pdf (GestioUsuarisICursos.odp),

MoodleComCMS.pdf (MoodleComCMS.odp),

MoodleComLMS.pdf (MoodleComLMS.odp),

MoodleComLMS2.pdf (MoodleComLMS2.odp),videotutorials, Moodle com a plataforma educativa de centre

Repositori SVN: https://anonymous@svn.projectes.lafarga.cat/svn/iceupc/DissenyXarxaLocalLinux/moodle/sessio7/Apache/videotutorials_instal_lacio_Moodle_i_Mediawiki/
Usuari: anonymous
Paraula de pas: sense paraula de pas
Autors: Sergi Tur Badenas


Contingut

Instal·lació a Debian

Per instal·lar a Debian com a paquet de repositori he tingut que activar unstable e instal·lar d-aqui la versió 1.6.1+ de Moodle. Per usar aquestes versions de moodle i no tenir problemes amb el nou sistema basat en unicode i les llengües vaig tenir que augmentar la versió de mysql d'un servidor Debian basat en stable.

Instal·lació a Ubuntu

A Ubuntu normal la instal·lació és similar però cal instal·lar també el paquet php5-mysql:

sudo apt-get install mysql-server-5.0 php5-mysql

Un cop tenim la base de dades podem instal·lar moodle:

 sudo apt-get install moodle

Instal·lació manual de la versió 2.0

Per aquest curs us demanem que instal·leu Moodle de forma manual. Podeu consultar altres formes d'instal·lació a l'article sobre Moodle. Els passos a seguir són:

Instal·lació del prerequisits:

Moodle és una aplicació LAMP (cal dir però que també és possible utilitzar altres gestors de bases de dades com PostgreSQL). Per tant haureu de disposar d'una distribució Linux (en aquesta exemple hem utilitzat Ubuntu). En un entorn en explotació és important utilitzar una versió de servidor de Linux com per exemple Ubuntu Server.

També haureu de tenir instal·lat LAMP (si és que a aquestes alçades del curs encara no el teniu instal·lat ;-))

$ sudo apt-get update
$ sudo tasksel install lamp-server

Recordeu d'anotar la paraula de pas de l'usuari root de MySQL.

NOTA: Respecte a l'entorn de servidor... per a fer els exercicis del curs treballem amb una Ubuntu Desktop (entorn d'escriptori) però per a fer un servidor real en explotació és molt recomanable utilitzar una Ubuntu Server. Cap problema que pel curs treballeu amb una Desktop ja que es tracta d'un entorn per fer proves. Per a un servidor per a l'Institut o qualsevol altre servidor en un enton real d'execució és molt recomanable utilitzar una versió Server. La Ubuntu Server per defecte, no té entorn gràfic, però a part d'aquest "detall", el nucli està optimitzat per a treballar en entorn de servidor i és nota força. Ho comento per què es força típic trobar-se servidors amb entorn gràfic (normalment per la por que tenia a treballar sense entorn gràfic qui ho va instal·ar ;). No us equivoqueu, instal·leu sempre una versió de servidor i si després voleu podeu instal·lar fàcilment l'entorn gràfic: $ sudo tasksel ubuntu-desktop. També hi ha l'opció de tenir apagat l'entorn gràfic (no sempre estareu treballant al servidor) i només encendre'l quan el necessiteu: $sudo /etc/init.d/gdm stop/start

També cal instal·lar algunes llibreries extres de PHP (si no les instal·leu durant la instal·lació de Moodle ho detectarà i us demanarà que ho feu)

$ sudo apt-get install php5-gd php5-curl php5-xmlrpc php5-intl

Instal·lació de Moodle

Un cop tenim el sistema operatiu i la plataforma LAMP preparada, necessitem obtenir una còpia de Moodle. Podem descarregar Moodle des de la web:

http://download.moodle.org/

Tal com diu la pàgina la versió recomanada per a noves instal·lacions és la MOODLE_20_WEEKLY:

Quan es va crear aquest article (--acacha 05:16, 9 feb 2011 (UTC)) la versió recomanada era Moodle 2.0.1+.

Que és la primera que apareix. Tenim dos opcions de descàrrega, un fitxer tar.gz o un fitxer zip. Feu clic a l'enllaç download de la versió tar.gz:

http://heanet.dl.sourceforge.net/project/moodle/Moodle/stable20/moodle-latest-20.tgz

I s'iniciarà la descàrrega. En el cas que vulgueu baixar el fitxer a un servidor que no tingui entorn gràfic i no pugueu accedir a un navegador web, podeu utilitzar wget:

$ wget http://heanet.dl.sourceforge.net/project/moodle/Moodle/stable20/moodle-latest-20.tgz

Aquesta adreça la obteniu a la pàgina anterior a l'enllaç

"click here to download manually"

Un cop s'ha descarregat el descomprimim amb l'eina tar:

$ tar xvzf moodle-latest-20.tgz

I ens generarà una carpeta anomenada Moodle. Movem aquesta carpeta a /usr/share (carpeta recomanada segons l'estàndard FHS ):

$ sudo mv moodle /usr/share

IMPORTANT: compte si també heu instal·lat prèviament o voleu instal·lar Moodle des dels repositoris ja que també intentarà instal·lar Moodle a la mateixa carpeta i podeu tenir conflictes

I li canviem els permisos a superusuari:

$ sudo chown -R root:root /usr/share/moodle

Ara configurem Apache. Anem a la carpeta /etc/apache2/sites-available:

$ cd /etc/apache2/sites-available

Ara hem de crear un fitxer de text i editar-lo. Podem utilitzar l'editor de text joe, si no el tenim l'instal·lem amb:

$ sudo apt-get install joe

Creem un fitxer per a la configuració de moodle:

$ sudo joe moodle

I li enganxeu el següent text:

Alias /moodle /usr/share/moodle/

<DirectoryMatch /usr/share/moodle/>

Options +FollowSymLinks
AllowOverride None

order allow,deny
allow from all

<IfModule mod_php5.c>
       php_flag magic_quotes_gpc On
       php_flag magic_quotes_runtime Off
       php_flag file_uploads On
       php_flag short_open_tag On
       php_flag session.auto_start Off
       php_flag session.bug_compat_warn Off

       php_value upload_max_filesize 2M
       php_value post_max_size 2M
</IfModule>

<IfModule mod_php4.c>
       php_flag magic_quotes_gpc On
       php_flag magic_quotes_runtime Off
       php_flag file_uploads On
       php_flag short_open_tag On
       php_flag session.auto_start Off
       php_flag session.bug_compat_warn Off

       php_value upload_max_filesize 2M
       php_value post_max_size 2M
</IfModule>

<IfModule mod_dir.c>
       DirectoryIndex index.php
</IfModule>

</DirectoryMatch>

NOTA: Observeu que el límit de mida de fitxer upload per defecte és 2M. Aquí teniu una oportunitat de modificar-lo...

IMPORTANT: Compte que si instal·leu Moodle des dels repositoris, també s'instal·larà a la carpeta /usr/share/moodle i podeu tenir conflictes

Guardeu el fitxer i sortiu amb Ctrl+k+x. Ara cal activar el nou lloc web amb:

$ sudo a2ensite moodle

I tornar a iniciar Apache

$ sudo /etc/init.d/apache2 reload

Ara cal crear una carpeta per guardar les dades de moodle. La crearem a /var/lib/moodledata:

$ sudo mkdir /var/lib/moodledata

Aquesta carpeta és on es guardaran les dades dels cursos Moodle, els fitxers del usuaris, els fitxers dels cursos, etc.

Canviem els permisos i els propietaris de la carpeta

$ sudo chown -R www-data:www-data /var/lib/moodledata
$ sudo chmod -R 0770 /var/lib/moodledata

D'aquesta manera l'usuari que executa Apache té permisos per modificar aquesta carpeta (i així els scripts de PHP de Moodle poden treballar amb la carpeta moodledata)

També es necessari crear una base de dades MySQL i crear un usuari que tingui permisos d'accés a aquesta base de dades:

$ sudo mysql -u root -p

Ara comproveu amb:

 mysql> SHOW DATABASES;

Que no existeix una base de dades anomenada moodle i la creem:

 mysql> CREATE DATABASE moodle;
 Query OK, 1 row affected (0.00 sec)

La fem UTF8:

 mysql> ALTER DATABASE moodle DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;
 Query OK, 1 row affected (0.00 sec)

Ara creem un usuari que tingui permisos:

 IMPORTANT: Cal modificar yourpassword per una paraula de pas que desitgeu i el mateix succeïx amb l'usuari (canvieu 
moodleuser per l'usuari que desitgeu). Recordeu aquests valors perquè els necessitareu durant la instal·ació.
 mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,CREATE TEMPORARY TABLES,
    -> DROP,INDEX,ALTER ON moodle.*
    -> TO moodleuser@localhost IDENTIFIED BY 'yourpassword';
  Query OK, 0 rows affected (0.01 sec)
 mysql> FLUSH PRIVILEGES;
 Query OK, 0 rows affected (0,01 sec)

IMPORTANT: Canvieu yourpassword per la paraula de pas que vulgueu posar. La podeu generar amb alguna eina com mkpasswd. Aquesta paraula de pas no l'heu d'utilitzar normalment i per tant no cal que sigui fàcil de recordar. Si que és important que no poseu una paraula de pas important ja que es guardarà en un fitxer de configuració sense xifrar

Ja hem acabat amb la base de dades. Per sortir:

 mysql> quit;

I tornem a iniciar Apache:

$ sudo /etc/init.d/apache2 restart

Ara anem a l'adreça:

http://IP_DEL_SERVIDOR/moodle

I executem l'assistent d'instal·lació de Moodle.

Instal·lació manual de la versió 1.9.8+

Per aquest curs us demanem que instal·leu Moodle de forma manual. Podeu consultar altres formes d'instal·lació a l'article sobre Moodle. Els passos a seguir són:

Instal·lació del prerequisits:

Moodle és una aplicació LAMP (cal dir però que també és possible utilitzar altres gestors de bases de dades com PostgreSQL). Per tant haureu de disposar d'una distribució Linux (en aquesta exemple hem utilitzat Ubuntu). En un entorn en explotació és important utilitzar una versió de servidor de Linux com per exemple Ubuntu Server.

També haureu de tenir instal·lat LAMP (si és que a aquestes alçades del curs encara no el teniu instal·lat ;-))

$ sudo apt-get update
$ sudo tasksel install lamp-server

Recordeu d'anotar la paraula de pas de l'usuari root de MySQL.

També cal instal·lar algunes llibreries extres de PHP (si no les instal·leu durant la instal·lació de Moodle ho detectarà i us demanarà que ho feu)

$ sudo apt-get install php5-gd php5-curl php5-xmlrpc

Instal·lació de Moodle

Un cop tenim el sistema operatiu i la plataforma LAMP preparada, necessitem obtenir una còpia de Moodle. Podem descarregar Moodle des de la web:

http://download.moodle.org/

Tal com diu la pàgina la versió recomanada per a noves instal·lacions és:

BEST CHOICE FOR A NEW SERVER! 

NOTA: Observeu que parlen de servidor... per a fer els exercicis del curs treballem amb una Ubuntu Desktop (entorn d'escriptori) però per a fer un servidor real en explotació és molt recomanable utilitzar una Ubuntu Server. Cap problema que pel curs treballeu amb una Desktop ja que es tracta d'un entorn per fer proves. Per a un servidor per a l'Institut o qualsevol altre servidor en un enton real d'execució és molt recomanable utilitzar una versió Server. La Ubuntu Server per defecte, no té entorn gràfic, però a part d'aquest "detall", el nucli està optimitzat per a treballar en entorn de servidor i és nota força. Ho comento per què es força típic trobar-se servidors amb entorn gràfic (normalment per la por que tenia a treballar sense entorn gràfic qui ho va instal·ar ;). No us equivoqueu, instal·leu sempre una versió de servidor i si després voleu podeu instal·lar fàcilment l'entorn gràfic: $ sudo tasksel ubuntu-desktop. També hi ha l'opció de tenir apagat l'entorn gràfic (no sempre estareu treballant al servidor) i només encendre'l quan el necessiteu: $sudo /etc/init.d/gdm stop/start

Quan es va crear aquest article (--acacha 11:39, 9 maig 2010 (UTC)) la versió recomanada era Moodle 1.9.8+.

Que és la primera que apareix. Tenim dos opcions de descàrrega, un fitxer tar.gz o un fitxer zip. Feu clic a l'enllaç download de la versió tar.gz:

http://download.moodle.org/download.php/direct/stable19/moodle-weekly-19.tgz

I s'iniciarà la descàrrega. En el cas que vulgueu baixar el fitxer a un servidor que no tingui entorn gràfic i no pugueu accedir a un navegador web, podeu utilitzar wget:

$ wget http://download.moodle.org/download.php/direct/stable19/moodle-weekly-19.tgz

Aquesta adreça la obteniu a la pàgina anterior a l'enllaç

"click here to download manually"

Un cop s'ha descarregat el descomprimim amb l'eina tar:

$ tar xvzf moodle-weekly-19.tgz

I ens generarà una carpeta anomenada Moodle. Movem aquesta carpeta a /usr/share (carpeta recomanada segons l'estàndard FHS ):

$ sudo mv moodle /usr/share

IMPORTANT: compte si també heu instal·lat prèviament o voleu instal·lar Moodle des dels repositoris ja que també intentarà instal·lar Moodle a la mateixa carpeta i podeu tenir conflictes

I li canviem els permisos a superusuari:

$ sudo chown -R root:root /usr/share/moodle

Ara configurem Apache. Anem a la carpeta /etc/apache2/sites-available:

$ cd /etc/apache2/sites-available

Ara hem de crear un fitxer de text i editar-lo. Podem utilitzar l'editor de text joe, si no el tenim l'instal·lem amb:

$ sudo apt-get install joe

Creem un fitxer per a la configuració de moodle:

$ sudo joe moodle

I li enganxeu el següent text:

Alias /moodle /usr/share/moodle

<DirectoryMatch /usr/share/moodle/>

Options +FollowSymLinks
AllowOverride None

AcceptPathInfo on

order deny,allow
#deny from all
#allow from 127.0.0.0/255.0.0.0
allow from all

<IfModule mod_php5.c>
  	php_flag magic_quotes_gpc On 
	php_flag magic_quotes_runtime Off
	php_flag file_uploads On
	php_flag short_open_tag On
	php_flag session.auto_start Off
	php_flag session.bug_compat_warn Off

	php_value upload_max_filesize 200M
	php_value post_max_size 200M
</IfModule>
 
<IfModule mod_dir.c>
	DirectoryIndex index.php
</IfModule>

</DirectoryMatch>

IMPORTANT: Compte que si instal·leu Moodle des dels repositoris, també s'instal·larà a la carpeta /usr/share/moodle i podeu tenir conflictes

Guardeu el fitxer i sortiu amb Ctrl+k+x. Ara cal activar el nou lloc web amb:

$ sudo a2ensite moodle

I tornar a iniciar Apache

$ sudo /etc/init.d/apache2 restart

Ara cal crear una carpeta per guardar les dades de moodle. La crearem a /var/lib/moodledata:

$ sudo mkdir /var/lib/moodledata

Aquesta carpeta és on es guardaran les dades dels cursos Moodle, els fitxers del usuaris, els fitxers dels cursos, etc.

Canviem els permisos i els propietaris de la carpeta

$ sudo chown -R www-data:www-data /var/lib/moodledata
$ sudo chmod -R 0770 /var/lib/moodledata

D'aquesta manera l'usuari que executa Apache té permisos per modificar aquesta carpeta (i així els scripts de PHP de Moodle poden treballar amb la carpeta moodledata)

També es necessari crear una base de dades MySQL i crear un usuari que tingui permisos d'accés a aquesta base de dades:

$ sudo mysql -u root -p

Ara comproveu amb:

 mysql> SHOW DATABASES;

Que no existeix una base de dades anomenada moodle i la creem:

 mysql> CREATE DATABASE moodle;
 Query OK, 1 row affected (0.00 sec)

La fem UTF8:

 mysql> ALTER DATABASE moodle DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;
 Query OK, 1 row affected (0.00 sec)

Ara creem un usuari que tingui permisos:

 IMPORTANT: Cal modificar yourpassword per una paraula de pas que desitgeu i el mateix succeïx amb l'usuari (canvieu 
moodleuser per l'usuari que desitgeu). Recordeu aquests valors perquè els necessitareu durant la instal·ació.
 mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,CREATE TEMPORARY TABLES,
    -> DROP,INDEX,ALTER ON moodle.*
    -> TO moodleuser@localhost IDENTIFIED BY 'yourpassword';
  Query OK, 0 rows affected (0.01 sec)
 mysql> FLUSH PRIVILEGES;
 Query OK, 0 rows affected (0,01 sec)

IMPORTANT: Canvieu yourpassword per la paraula de pas que vulgueu posar. La podeu generar amb alguna eina com mkpasswd. Aquesta paraula de pas no l'heu d'utilitzar normalment i per tant no cal que sigui fàcil de recordar. Si que és important que no poseu una paraula de pas important ja que es guardarà en un fitxer de configuració sense xifrar

Ja hem acabat amb la base de dades. Per sortir:

 mysql> quit;

I tornem a iniciar Apache:

$ sudo /etc/init.d/apache2 restart

Ara anem a l'adreça:

http://IP_DEL_SERVIDOR/moodle

I executem l'assistent d'instal·lació de Moodle.

Instal·lació a Ubuntu Server

Consulteu també l'article Ubuntu Server.

NOTA: La versió 8.10 d'Ubuntu (i de fet també altres versions anteriors), permeten instal·lar un LAMP durant la 
instal·lació del sistema operatiu. Aleshores no cal instal·lar mysql-server-5.0.

Moodle nomes necessita tenir una base de dades instal·lada. De moment suporta mysql i postgresql. Podem instal·lar mysql:

 sudo apt-get install mysql-server-5.0

Un cop tenim la base de dades podem instal·lar moodle:

 sudo apt-get install moodle

S'instal·laran totes les dependències. Si al instal·lar ubuntu server hem instal·lat un servidor LAMP no caldra ni apache, ni mysql ni php.

Instal·lació manual 1

Consulteu Aplicacions_web_LOE/Sessió_sobre_LMS._Moodle#Instal.C2.B7laci.C3.B3_de_Moodle

Instal·lació manual 2

Primer cal seguir els passos per a instal·lar Ubuntu Server. Un cop tenim el sistema operatiu necessitem obtenir una còpia de Moodle. Podem descarregar Moodle des de la web:

http://download.moodle.org/

Tal com diu la pàgina la versió recomanada per a noves instal·lacions és:

Latest Stable Build

Que és la primera que apareix. Tenim dos opcions de descàrrega, un fitxer tar.gz o un fitxer zip. Feu click a l'enllaç download de la versió tar.gz:

http://download.moodle.org/download.php/stable19/moodle-weekly-19.tgz

I s'iniciarà la descàrrega. En el cas que vulgueu baixar el fitxer a un servidor que no tingui entorn gràfic i no pogueu accedir a un navegador web, podeu utilitzar wget:

$ wget http://download.moodle.org/download.php/stable19/moodle-weekly-19.tgz

Aquesta adreça la obteniu a la pàgina anterior a l'enllaç

"click here to download manually"

Un cop s'ha descarregat el descomprimim amb:

$ tar xvzf moodle-weekly-19.tgz 

I ens generarà una carpeta anomenada moodle. Movem aquesta carpeta a /var/www:

$ sudo mv moodle /var/www

I li canviem els permisos a superusuari:

$ sudo chown -R root:root /var/www/moodle

Ara configurem Apache. Anem a la carpeta /etc/apache2/sites-available:

$ cd /etc/apache2/sites-available

I creem un fitxer. Podem utilitzar l'editor de text joe, si no el tenim l'instal·lem amb:

$ sudo apt-get install joe

Creem un fitxer per a la configuració de moodle:

$ sudo joe moodle

I li enganxeu el següent text:

Alias /moodle /var/www/moodle

<DirectoryMatch /var/www/moodle/>

Options +FollowSymLinks
AllowOverride None

AcceptPathInfo on

order deny,allow
deny from all
#allow from 127.0.0.0/255.0.0.0
allow from all

<IfModule mod_php5.c>
  	php_flag magic_quotes_gpc On 
	php_flag magic_quotes_runtime Off
	php_flag file_uploads On
	php_flag short_open_tag On
	php_flag session.auto_start Off
	php_flag session.bug_compat_warn Off

	php_value upload_max_filesize 200M
	php_value post_max_size 200M
</IfModule>
 
<IfModule mod_dir.c>
	DirectoryIndex index.php
</IfModule>

</DirectoryMatch>

Guardeu el fitxer amb Ctrl+k+x. Ara cal activar el nou lloc web amb:

$ sudo a2ensite moodle

I tornar a iniciar Apache

$ sudo /etc/init.d/apache2 restart

Ara cal crear una carpeta per guardar les dades de moodle. La crearem a /var/lib/moodledata:

$ sudo mkdir /var/lib/moodledata
 

Canviem els permisos i els propietaris de la carpeta

$ sudo chown -R nobody:www-data /var/lib/moodledata
$ sudo chmod -R 0770 /var/lib/moodledata

També es necessari crear una base de dades MySQL i crear un usuari que tingui permisos d'accés a aquesta base de dades:

$ sudo mysql -u root -p

Ara comproveu amb:

mysql> SHOW DATABASES;

Que no existeix una base de dades anomenada moodle i la creem:

mysql> CREATE DATABASE moodle;
Query OK, 1 row affected (0.00 sec)

La fem UTF8:

mysql> ALTER DATABASE moodle DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;
Query OK, 1 row affected (0.00 sec)

Ara creem un usuari que tingui permissos:

 IMPORTANT: Cal modificar yourpassword per una paraula de pas que desitgeu i el mateix succeïx amb l'usuari (canvieu 
moodleuser per l'usuari que desitgeu). Enrecordeu-vos d'aquests valors perquè els necessitareu durant la instal·ació.
mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,CREATE TEMPORARY TABLES,
   -> DROP,INDEX,ALTER ON moodle.*
   -> TO moodleuser@localhost IDENTIFIED BY 'yourpassword';
 Query OK, 0 rows affected (0.01 sec)

Ja hem acabat amb la base de dades. Per sortir:

mysql> quit;

Ara cal instal·lar uns paquets extres necessaris per a Moodle:

$ sudo apt-get install php5-gd php5-curl php5-xmlrpc

I tornem a iniciar Apache:

$ sudo /etc/init.d/apache2 restart

Ara anem a l'adreça:

http://IP_DEL_SERVIDOR/moodle

I executem l'assistent d'instal·lació de Moodle.

Assistent d'instal·lació de Moodle

IMPORTANT: A la versió 2.0 l'assistent s'ha modificat lleugerament però els passos principals són els mateixos si fa no fa... Us preguntarà pel tipus de base de dades, només hi haurà disponible l'opció per defecte Mysql. També heu de tenir paciència ja que el pas de la instal·lació de la base de dades tarda força, sembla que es pengi però no ;-), tingueu paciència.

NOTA: Des de fa un temps, a l'usuari administrador de Moodle se li obliga a tenir una paraula de pas potent! Tingueu-ho en compte ja que potser no en teniu cap de les habituals que coincideixi amb els requeriments de Moodle. Si cal us l'apunteu que la necessitareu!

Vegem-ne les captures de pantalla:

El primer és escollir l'idioma de la instal·lació:

MoodleInstalacio0000.png

NOTA: a qui només escollim l'idioma de l'instal·lador. L'idioma de Moodle és diferent.

La següent pantalla és fa una comprovació de si tenim instal·lat tot lo necessari per tal que funcioni Moodle:

MoodleInstalacio000.png

Tot seguit ens pregunta quina serà la URL del servidor Moodle i a on esta la carpeta de dades:

MoodleInstalacio00.png

Tal i com hem decidit anteriorment la carpeta de dades és /var/lib/moodledata.

NOTA: Adapteu l'exemple a les vostre necessitats. Per exemple, molt possiblement voldreu utilitzar la url http://localhost/moodle en comptes de http://localhost/moodle2

Ara venen les dades d'accés a la base de dades. Aquí haurem de posar les valors d'usuari i paraula de pas que hem escollit anteriorment i el nom de la base de dades:

MoodleInstalacio0.png

El següent pas comprova els mòduls de PHP que hi ha disponible i si en falta algun de necessari per a Moodle:

MoodleInstalacio.png

En el nostre cas falta XMLRPC, que es pot instal·lar amb:

$ sudo apt-get install php5-xmlrpc
$ sudo /etc/init.d/apache2 restart

El següent pas us permet descarregar el paquet d'idioma. En el nostre cas descarregarem el paquet d'idioma català:

MoodleInstalacio2.png

Al final genera el contingut d'un fitxer anomenat 'config.php. Moodle intentarà copiar aquest fitxer a la carpeta que correspongui però és molt possible que per qüestions de permisos no ho pugui fer. Aleshores copieu vosaltres mateixos aquest contingut i el poseu a un fitxer config.php que ha d'estar a la carpeta /var/www/moodle o /usr/share/moodle depenent de on hàgiu instal·lat Moodle:

$ sudo joe /usr/share/moodle/config.php

MoodleInstalacio3.png

I afegiu el text i guardeu amb Ctrl+k+x.

IMPORTANT: No afegiu cap espai ni cap caràcter extra al final del fitxer! Pot provocar el error de PHP "header already sent"

Ara heu d'acceptar la llicència GPL:

MoodleInstalacio4.png

I seleccioneu la opció Operació no interactiva:

MoodleInstalacio5.png

Es posarà a crear taules de la base de dades...

Finalment la última pantalla és per a configurar l'usuari d'administració:

MoodleInstalacio6.png

Des de fa algunes versions de Moodle a l'usuari administrador de l'obliga a utilitzar una paraula de pas potent. Us pot aparèixer un error en vermell com:

La contrasenya ha de contenir almenys 1 majúscula/es.
La contrasenya ha de contenir almenys 1 caràcter/s no alfanumèric/s.

No ens queda més remei que pensar una paraula de pas més potent.

Finalment li heu de posar un nom al vostre Moodle:

MoodleInstalacio7.png

Ja teniu Moodle instal·lat.

Recursos:

Qüestions a tenir en compte

Instal·lar el suport per als idiomes

Versió 2.0

Cal anar a:

Page path

   Home
   / ► Site administration
   / ► Language
   / ► Language settings

O poder buscar language al cercador del menú d'administració. Definit l'idioma per defecte.

Després aneu a:

Page path

   Home
   / ► Site administration
   / ► Language
   / ► Language packs

I instal·leu els packs d'idioma que vulgueu.

Activar els captchas si utilitzem autosubscripció

Paths del sistema

Consulteu:

Configuració remota

Un cop instal·lat moodle com a paquet hem de configurar moodle a l'adreça

 http://localhost/moodle

IMPORTANT: Cal fer notar que moodle espera ser configurat desde localhost. Com ubuntu server no porta entorn gràfic no podem executar un navegador. Per tant ho haurem de configurar remotament i caldra modificar el fitxer /etc/apache2/conf.d/moodle

 Alias /moodle /usr/share/moodle/
 
 <DirectoryMatch /usr/share/moodle/>
 
 Options +FollowSymLinks
 AllowOverride None
 
 order deny,allow
 deny from all
 #allow from 127.0.0.0/255.0.0.0
 allow from all
 
 <IfModule mod_php4.c>
   php_flag magic_quotes_gpc On
   php_flag magic_quotes_runtime Off
   php_flag file_uploads On
   php_flag short_open_tag On
   php_flag session.auto_start Off
   php_flag session.bug_compat_warn Off
   
   php_value upload_max_filesize 100M
   php_value post_max_size 100M
 </IfModule>
 
 <IfModule mod_dir.c>
       DirectoryIndex index.php
 </IfModule>
 
 </DirectoryMatch>

Com podeu observar cal canviar la linía allow form all per permetre l'accés a moodle desde remot. També he augmentat el tamany màxim de fitxer (ja que tinc copies de seguretat de moodle que vull restaurar que ocupen bastant més que 2M).

Al fitxer /etc/moodle/config.php cal modificar la variable wwwwroot per evitar errors al executar la configuració.Per exemple

 $CFG->wwwroot = 'http://192.168.0.252/moodle';

o el nom DNS que correspongui a la màquina.

Cal recordar que si fem canvis a les configuracions d'apache (fitxer apache.conf de moodle) cal que reiniciem el servei d'apache per aplicar els canvis:

 sudo /etc/init.d/apache2 restart

Ldap

Vegeu també l'article sobre Ldap

Configuració d'usuaris amb Ldap

Requisits

  • Moodle instal·lat
  • Cal tenir Ldap activat per a PHP. Podeu comprovar-ho amb phpinfo(). El propi Moodle inclou un phpinfo a:
http://www.iesebre.com/moodle/admin/phpinfo.php

Heu de trobar un text similar a:

LDAP Support 	enabled

Si no és així instal·leu:

$ sudo apt-get install php5-ldap

I assegureu-vos que el mòdul està activat per al servidor web Apache:

$ cat /etc/php5/apache2/conf.d/ldap.ini
# configuration for php LDAP module
extension=ldap.so

I per a CLI

$ cat /etc/php5/cli/conf.d/ldap.ini
; configuration for php LDAP module
extension=ldap.so

Per aplicar els canviar cal tornar a carregar Apache:

$ sudo /etc/init.d/apache2 reload


Ara aneu a:

Inici ► Administració ► Usuaris ► Autenticació ► Gestió de l'autenticació

NOTA: A la versió 2.0 cal anar a:

Inici ► Administració del lloc ► Connectors ► Autenticació ► Gestió de l'autenticació

Cal activar (ull obert) el servidor Ldap. Apareixerà una nova opció anomenada Servidor Ldap al menú d'autenticació. Aquí cal configurar les vostres dades d'accés a Ldap:

IMPORTANT: No utilitzeu el camp preferredLanguage ja que no funciona, tampoc bloquegeu l'idioma si voleu que els usuaris el puguin canviar!

Important, poseu el filtre:

objectClass=inetOrgPerson
MoodleLdap.png
MoodleLdap1.png
MoodleLdap2.png
MoodleLdap3.png
MoodleLdap4.png

Hi ha un script PHP que s'encarrega de les sincronitzacions:

/usr/share/moodle/auth/ldap/auth_ldap_sync_users.php

IMPORTANT: A partir de la versió 2.0 el fitxer el trobareu a:

/usr/share/moodle/auth/ldap/cli/sync_users.php

IMPORTANT: hi ha un petit bug al fitxers de la versió 2.1.1+. Consulteu /usr/share/moodle/auth/db/auth.php

Es molt important fer una còpia de seguretat de la base de dades i de moodledata abans de fer proves amb aquesta configuració (una configuració errònia pot comportar que s'esborrin usuaris). Per fer una còpia de seguretat de la base de dades podeu utilitzar mysqldump:

$ mysqldump -u root -p moodle > moodle_05_10_2010.sql

Per fer una còpia de les dades només val copiar la carpeta /var/lib/moodle.

Per executar l'script, cal tenir instal·lat php5-cli:

$ sudo apt-get install php5-cli

i executar:

$ sudo /usr/bin/php -c /etc/php5/cli/php.ini /usr/share/moodle/auth/ldap/auth_ldap_sync_users.php

En la última versió de moodle 2.0.3 la comanda a executar és sudo /usr/bin/php -c /etc/php5/cli/php.ini /usr/share/moodle/auth/ldap/cli/sync_users.php .

Warning: could not find the name of this server!
Configuring temp table
Creating temp table mdl_extuser
Connecting to ldap... 
	+ 1000 users
	+ 134 users
Got 1134 records from LDAP

No user entries to be removed
No user entries to be revived
User entries to update: 1062
	S'està actualitzant l'usuari aaronbertomeu amb ID 1681 
	S'està actualitzant l'usuari abdelalibammou amb ID 1682
	S'està actualitzant l'usuari abdelhalcsrhin amb ID 1683
	S'està actualitzant l'usuari abdelilahelidrissi amb ID 1684
	S'està actualitzant l'usuari abdessamadhamdi amb ID 1685
...

NOTA: A l'exemple posa actualitzant per què no és el primer cop que s'executa l'script

IMPORTANT: Si a la configuració heu escollit no emmagatzemar les paraules de pas, aleshores les paraules de pas es guarden al servidor Ldap i no pas a la base de dades Ldap. Això implica que qualsevol canvi de paraula de pas a Ldap té repercusió instantània a Moodle (però no per a la resta de camps com el nom o altres). Els usuaris nous a Ldap no apareixeran a Moodle fins la pròxima execució de la sincronització

.

El mateix script proposa que configureu cron per executar l'script periodicàment:

$ cat /usr/share/moodle/auth/ldap/auth_ldap_sync_users.php| more
<?php
/** auth_ldap_sync_users.php
 *
 * This script is meant to be called from a cronjob to sync moodle with the LDAP
 * backend in those setups where the LDAP backend acts as 'master'.
 *
 * Recommended cron entry:
 * # 5 minutes past 4am
 * 5 4 * * * /usr/bin/php -c /etc/php4/cli/php.ini /var/www/moodle/auth/ldap/auth_ldap_sync_users.php
 *
 * Notes:
 *   - If you have a large number of users, you may want to raise the memory limits
 *     by passing -d memory_limit=256M
 *   - For debugging & better logging, you are encouraged to use in the command line:
 *     -d log_errors=1 -d error_reporting=E_ALL -d display_errors=0 -d html_errors=0
 *
 * Performance notes:
 * We have optimized it as best as we could for Postgres and mySQL, with 27K students
 * we have seen this take 10 minutes.
 *
 */
...

Escolliu quina ha de ser la freqüència d'actualització segons el nombre d'usuari que teniu, la càrrega dels servidors i altres factors. En el nostre cas:

$ sudo mkdir -p /var/log/moodle
$ sudo touch /var/log/moodle/ldap_sync.log
$ sudo joe /etc/cron.d/moodle_ldap_sync 

Afegiu:

#
# Cron per sincronitzar usuaris de Ldap
# http://acacha.org/mediawiki/index.php/Moodle#Configuraci.C3.B3_d.27usuaris_amb_Ldap
# Als minuts 12 i 42
MAILTO=root
12,42 * * * * root  /usr/bin/php -c /etc/php5/cli/php.ini /usr/share/moodle/auth/ldap/auth_ldap_sync_users.php  >>/var/log/moodle/ldap_sync.log 2>&1

NOTA: Fixeu-vos en el 2>&1 per tal d'enviar tant els missatges normals com els d'error

NOTA: Si escolliu que es modifiquin els usuaris de Moodle que no apareguin a Ldap (permet eliminar o suspendre comptes) només ho farà amb els que tinguin autenticació Ldap. Els comptes manuals no seran eliminats/modificats (si els canvieu a Ldap sí )

Vegeu també una pàgina antiga d'aquesta wiki (no mantinguda):

Autenticació_usuaris._LDAP,_correu_electrònic...


Resol·lució de problemes

option handler: Error writing to database Debug: Duplicate entry '1-profenou' for key 'mdl_tmpextu_mneuse_uix

INSERT INTO mdl_tmp_extuser (username,mnethostid) VALUES(?,?)
[array (
  0 => 'profenou',
  1 => '1',
)]
* line 397 of /lib/dml/moodle_database.php: dml_write_exception thrown
* line 878 of /lib/dml/mysqli_native_moodle_database.php: call to moodle_database->query_end()
* line 939 of /auth/ldap/auth.php: call to mysqli_native_moodle_database->insert_record_raw()
* line 671 of /auth/ldap/auth.php: call to auth_plugin_ldap->ldap_bulk_insert()
* line 65 of /auth/ldap/cli/sync_users.php: call to auth_plugin_ldap->sync_users()  

!!! Error writing to database !!!
Potential coding error - existing temptables found when disposing database. Must be dropped!

En aquest cas l'error és degut a tenir dos usuaris amb el mateix uid!

S'ha inserit l'usuari {$a}[0] amb ID {$a}[1]

Ho fa correctament però no mostra bé el missatge. Un pegat temporal és afegir la línia:

echo "\n username:$user->username";

A la línia 794 del fitxer:

$ sudo joe /usr/share/moodle/auth/ldap/auth.php

Quedarà quelcom similar a:

 foreach ($users as $user) {
                    echo "\n username:$user->username"; 
                    echo "\t"; print_string('auth_dbupdatinguser', 'auth_db', array('name'=>$user->username, 'id'=>$user->id));
                    if (!$this->update_user_record($user->username, $updatekeys)) {
                        echo ' - '.get_string('skipped');
                    }
                    echo "\n";
                    $xcount++;

                    // Update course creators if needed
                    if ($creatorrole !== false) {
                        if ($this->iscreator($user->username)) {
                            role_assign($creatorrole->id, $user->id, $sitecontext->id, $this->roleauth);
                        } else {
                            role_unassign($creatorrole->id, $user->id, $sitecontext->id, $this->roleauth);
                        }
                    }
                }
                $transaction->allow_commit();
                unset($users); // free mem

Integració amb ldap (skolelinux)

Correu electrònic

Utilitzar Google (Apps) com a SMTP

No m'han funcionat les passes de:

Sembla ser que la versió de phpmailer que incorpora Moodle no suporta autenticació TLS. Baixeu la última versió de sorceforge (http://sourceforge.net/projects/phpmailer/files/phpmailer%20for%20php5_6/)

$ cd /usr/share/moodle/lib
$ sudo cp -r phpmailer phpmailer.backup
$ sudo wget http://downloads.sourceforge.net/project/phpmailer/phpmailer%20for%20php5_6/PHPMailer%20v5.1/PHPMailer_v5.1.tar.gz?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fphpmailer%2Ffiles%2Fphpmailer%2520for%2520php5_6%2F&ts=1283764699&use_mirror=ovh
$ sudo mv PHPMailer_v5.1.tar.gz\?r\=http\:%2F%2Fsourceforge.net%2Fprojects%2Fphpmailer%2Ffiles%2Fphpmailer%20for%20php5_6%2F PHPMailer_v5.1.tar.gz
$ sudo tar xvzf PHPMailer_v5.1.tar.gz
$ cd phpmailer
$ sudo mv class.phpmailer.php class.phpmailer.php.old
$ sudo mv ../PHPMailer_v5.1/class.phpmailer.php .
$ sudo mv class.smtp.php class.smtp.php.old
$ sudo mv ../PHPMailer_v5.1/class.smtp.php .
$ sudo mv language/ language_old
$ sudo mv ../PHPMailer_v5.1/language/ .

Com Moodle no deixa indicar el tipus d'autenticació (i posar ssl:// o tls:// a la URL no soluciona el problema), forceu que le métode sigui TLS:

$ sudo joe class.phpmailer.php

A la línia 199 aprox poseu:

public $SMTPSecure    = 'tls';

A Moodle correu poseu:

MoodleSMTP.jpeg

Mesures ANTISPAM

Recursos:

Open ID

La gent de Canonical ha promocionat el desenvolupament d'un plugin/mòdul de Moodle per a poder utilitzar OpenID.

Els passos a seguir són:

Descarregar la última versió del mòdul al vostre servidor:

$ cd
$ wget http://launchpad.net/moodle-openid/trunk/2.0/+download/moodle-openid-rev27.zip

Podeu consultar la última versió al launchpad:

https://launchpad.net/moodle-openid/+download

Ara descomprimiu el mòdul:

$ sudo unzip moodle-openid-rev27.zip 

Per instal·lar cal seguir el README:

$ cd moodle-openid
$ joe README 

Els passos a seguir són copiar diverses carpetes al vostre Moodle. Suposant que teniu el Moodle a /usr/share/moodle:

$  sudo cp -r ~/moodle-openid/lib/openid /usr/share/moodle/lib
$  sudo cp -r ~/moodle-openid/auth/openid /usr/share/moodle/auth
$  sudo cp -r ~/moodle-openid/blocks/openid /usr/share/moodle/blocks
$  sudo cp -r ~/moodle-openid/lang/en_utf8_local /usr/share/moodle/lang

NOTA: Canvieu /home/sergi pel path absolut de la vostra HOME

Ara cal anar a la web del vostre Moodle

Site Administration > Notifications

I deixeu que us generi les taules necessàries a la base de dades.

Ara aneu a:

Administration > Users > Authentication

I activeu el mòdul de OpenID fent clic al ull tancat. Podeu gestionar les preferències del mòdul des de aquí.

Tingueu en compte que ara hi ha un bloc nou de Moodle per a OpenID.

Moodle Network

Consulteu Moodle Network.

Afegir cron a instal·lacions manuals

Cal configurar el cron per a Moodle:

IMPORTANT: A partir de la versió 2.0 hi ha dos fitxers per executar cron, una és la versió web i l'altre la versió per línia d'ordres (cli)

$ cat /etc/cron.d/moodle
# Regular cron jobs for the moodle package
*/5 * * * * www-data [ -f /usr/share/moodle/admin/cli/cron.php ] && /usr/bin/php -f /usr/share/moodle/admin/cli/cron.php > /dev/null

A versions anteriors a la 2.0 s'utilitza:

# Regular cron jobs for the moodle package
*/5 * * * * www-data [ -f /usr/share/moodle/admin/cron.php ] && /usr/bin/php -f /usr/share/moodle/admin/cron.php > /dev/null

Consulteu també l'article Cron.

Per provar l'script feu:

$ sudo su www-data
$ /usr/bin/php -f /usr/share/moodle/admin/cli/cron.php
Server Time: Fri, 02 Sep 2011 09:31:42 +0200
Cleaning up stale sessions
Starting activity modules
Processing module function assignment_cron ...... used 3 dbqueries
... used 0.02726411819458 seconds
done.
Processing module function forum_cron ...Starting digest processing...
Cleaned old digest records
... used 3 dbqueries
... used 0.028263092041016 seconds
done.
Finished activity modules
Starting blocks
Finished blocks
Starting quiz reports
Finished quiz reports
Starting admin reports
Finished admin reports
Starting main gradebook job ...
done.
Starting processing the event queue...
done.
Checking automated backup status...OK
Getting admin info
Checking courses
Skipping deleted courses...0 courses
Running required automated backups...
Automated backups complete.
Running auth crons if required...
Running enrol crons if required...
Running cron for enrol_self...
Running cron for enrol_cohort...
Starting course reports
Finished course reports
Starting gradebook plugins
Finished gradebook plugins
Fetching external blog entries...done.
Deleting blog associations linked to non-existent contexts...done.
Starting registration update on hubs...
Finished registration update on hubs.
Deleting old draft files... done.
Deleting session linked tokens more than one day old...done.
Processing customized cron scripts ...Processing cron function for local_qeupgradehelper...
done. (1 dbqueries, 0 seconds)
done.
Cron script completed correctly
Execution took 0.472853 seconds 

Si us dona l'error:

$ /usr/bin/php -f /usr/share/moodle/admin/cron.php 
ERROR: This script no longer supports CLI, please use admin/cli/cron.php instead

Tingueu en compte que a la versió de Moodle 2.0 cal utilitzar:

/usr/bin/php -f /usr/share/moodle/admin/cli/cron.php

Copiar la base de dades

Consulteu:

mysqldump

Upload limits

Moodle permet configurar els límits de pujada màxims per a tots el lloc, per a cursos i fins i tot per a activitats concretes com les tasques.

Cal tenir en compte que les configuracions les límits de pujada a Moodle sempre estaran condicionats als límits de pujada de PHP i Apache. Vegeu també Upload

Pujar les fotos dels usuaris

Aquesta opció la trobareu a:

Administration > Users > Accounts > Upload user pictures

Per exemple:

http://www.iesebre.com/moodle/admin/uploadpicture.php###

Permet pujar un fitxer zip amb totes les fotos dels usuaris. Els fitxers han de complir les següents característiques:

  • Els formats suportat són gif, jpg, i png.
  • Els noms dels fitxers han de coincidir amb un dels següents camps (s'escull al fer l'upload):
  • username
  • idnumber
  • id.

IMPORTANT: Els noms dels fitxers no són CASE SENSITIVE

Resol·lució de problemes. Troubleshooting

No s'envien emails al correu del mateix domini (status=bounced (mail for XXXX loops back to myself))

Si el postfix diu:

$ sudo tail -f /var/log/mail.log
...
Feb  1 15:25:02 www postfix/smtp[2372]: 5184A601A4: to=<rubenchavero@iesdeltebre.net>, relay=none, delay=0.09, delays=0.08/0.01/0/0, dsn=5.4.6, status=bounced (mail for iesdeltebre.net loops back to myself)

o també:

Feb  1 15:35:02 www postfix/smtpd[3755]: NOQUEUE: reject: RCPT from localhost[127.0.0.1]: 550 5.1.1 <rubenchavero@iesdeltebre.net>: Recipient address rejected: User unknown in local recipient table; from=<noreply@www.iesdeltebre.net> 
to=<rubenchavero@iesdeltebre.net> proto=ESMTP helo=<www.iesdeltebre.net>
Feb  1 15:35:02 www postfix/smtpd[3755]: disconnect from localhost[127.0.0.1]

Això és perque voleu enviar els correus al Google Apps del centre però al hora el servidor postfix està configurat amb el mateix nom de domini. Cal que els registres MX estiguin ben configurats al servidors de DNS interns!

$ dig iesdeltebre.net MX

; <<>> DiG 9.8.1-P1 <<>> iesdeltebre.net MX
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 35381
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 1, ADDITIONAL: 1

;; QUESTION SECTION:
;iesdeltebre.net.		IN	MX 

;; ANSWER SECTION:
iesdeltebre.net.	500	IN	MX	20 ALT1.ASPMX.L.GOOGLE.com.
iesdeltebre.net.	500	IN	MX	10 ASPMX.L.GOOGLE.com.


No es restauren les tasques a Moodle 2.3

Cal activar el mòdul de tasques 2.2. Sembla ser que hi ha hagut un canvi en com funcionen les tasques.

Recuperar la paraula de pas de l'usuari administrador

Paraules de pas massa complidades per als usuaris

Es pot definir a Admin > normativa del lloc

Password Salt

A partir de certa versió de Moodle 1.9.7 us obligaran a posar una paraula de pas potent per a l'usuari administrador (admin) i també us recomanaran posar un password salt. Si no el poseu a notificacions apareix:

Moodle 1.9.7 contains a number of security fixes to user passwords and backups to protect the user data on your site. As a result some of your settings and permissions relating 
to backups may have changed.
See the Moodle 1.9.7 release notes for full details.
To reduce the risk of password theft, you are strongly recommended to set a password salt.
See the password salting documentation for details.

Podeu consultar la web:

http://dev.moodle.org/gensalt.php

Només cal utilitzar una de les línies que us ofereix. Cal afegir-la al fitxer config.php.

IMPORTANT: Si ja teniu un salt no el podeu canviar així com així! Cal mantenir l'antic durant un cert temps almenys fins que tots els usuaris hagin tornat a entrar...

No permet actualitzar la imatge d'usuari (avatar) al pèrfil

Cal activar gd a / ► Administració / ► Servidor/ ► Camins del sistema. També cal instal·lar gd per a php:

$ sudo apt-get install php5-gd

Moodle no descàrrega correctament fitxers i no detecta el CSS

Al fitxer config.php al final hi ha un missatge que posa:

// MAKE SURE WHEN YOU EDIT THIS FILE THAT THERE ARE NO SPACES, BLANK LINES,
// RETURNS, OR ANYTHING ELSE AFTER THE TWO CHARACTERS ON THE NEXT LINE.
?>

Tal com diu, podem tenir problemes si posem text (encara que siguin espais o salts de línia) després de ?>.

Això és degut a que si posem contingut al final del fitxer, aquest contingut ja forma part de la resposta. Moodle, per descarregar fitxers, modifica capçaleres HTTP, i aquestes només es poden modificar si encara no s'ha enviat cap contingut per HTTP.

Podeu trobar errors com:

[Fri Mar 13 08:23:57 2009] [error] [client 10.1.116.95] Headers were already sent in file: /var/www/moodle/config.php on line 25, referer:  
http://10.1.99.84/moodle/

Al fitxer: /var/log/apache2/error.log.

Aquest fitxer es troba a l'arrel de la instal·lació de Moodle. Per exemple.

  • Instal·lació manual de Moodle: /var/www/moodle/config.php
  • Instal·lació des dels repositoris: /usr/share/moodle/config.php

Com configurar un servidor Moodle darrera d'un proxy

Al bloc d'administració, aneu a l'apartatServidor/HTTP i poseu el proxy als camps de text

  • Ordinador intermediari (proxyhost)
  • Port intermediari (proxyport)

Per exemple, amb el proxy de l'IES Copèrnic:


  • Ordinador intermediari (proxyhost): 192.168.11.1
  • Port intermediari (proxyport): 800

També val la pena que configureu l'accés al proxy des de la línia de comandes. Consulteu:

Configuració_de_clients_proxy

Consultar la versió de Moodle

Al bloc d'administració, aneu a l'apartatServidor/Entorn.

Unfortunately cookies are currently not enabled in your browser

Consulteu:

http://tracker.moodle.org/browse/MDL-17564

Backup fail. An error occurred while copying the zip file to the course directory

Creant backups a un servidor moodle em trobava amb el següent error>

    *  Creating temporary structures
   * Deleting old data
   * Creating XML file
         o Writing header
         o Writing general info
         o Writing course data
               + Course info
               + Sections
         o Writing users info
         o Writing categories and questions
         o Writing scales info
         o Writing groups info
         o Writing events info
         o Writing modules info
               + Assignments
               + Choices
               + Forums
               + Student Notes
               + Quizzes
               + Resources
               + Surveys
               + Chats
               + Workshops
               + Exercises
               + Glossaries
               + Dialogues
               + Labels
               + Lessons
               + Scorms
               + Wikis
   * Copying user files
   * Copying course files
   * Zipping backup
   * Copying zip file
   An error occurred while copying the zip file to the course directory

Vaig trobar la solució als de moodle. Cal installar zip i unzip:

$ sudo apt-get install zip unzip

També cal definir els paths correctament. Amb l'usuari admin cal anar a l'apartat Camins del sistema:

http://MYMOODLE.or/moodle/admin/settings.php?section=systempaths

I indicar el path de les eines zip i unzip:

MoodlePaths.png

El path el podeu consultar amb l'ordre whereis:

$ whereis zip
zip: /usr/bin/zip /usr/share/man/man1/zip.1.gz
$ whereis unzip
unzip: /usr/bin/unzip /usr/share/man/man1/unzip.1.gz

Error a Ubuntu Server Gutsy. /var/lib/update-notifier/user.d/moodle-reconfigure-required

Al fer un upgrade de Moodle en una Ubuntu Server, al passar de Feisty a Gutsy:

$ sudo dpkg-reconfigure moodle
cp: cannot create regular file `/var/lib/update-notifier/user.d/moodle-reconfigure-required': No such file or directory

El problema és que a Ubuntu server no hi ha update-notifier!!!. Per solventar l'error podem editar el fitxer:

/var/lib/dpkg/info/moodle.postinst


A la línia 242 podem comentar la sentència if :

#if test -d $uund; then
#    cp -f /usr/share/moodle/moodle-reconfigure-required.update-notifier \
#          /var/lib/update-notifier/user.d/moodle-reconfigure-required   
#fi

Fallen les restauracions en cursos molt llargs

Cal mirar les variables de php i apache que configuren els valors màxims d'uploads...

Però també pot ser un error amb suhosin:

> sudo tail -f /var/log/apache2/error_log
[Tue Jan 19 17:36:36 2010] [notice] mod_python: using mutex_directory /tmp 
[Tue Jan 19 17:36:36 2010] [notice] Apache/2.2.4 (Linux/SUSE) PHP/5.2.4 with Suhosin-Patch mod_python/3.3.1 Python/2.5.1 mod_mono/1.2.5 mod_perl/2.0.3 Perl/v5.8.8  
configured -- resuming normal operations 
[Tue Jan 19 17:36:57 2010] [error] [clie nt 193.152.163.193] ALERT - configured POST variable limit exceeded - dropped variable 'restore_resource_instance_154' (attacker  
'193.152.163.193', file '/srv/www/htdocs/moodle/backup/restore.php'), referer: http://www.iesebre.com/moodle/backup/restore.php 
[Tue Jan 19 17:38:53 2010] [notice] caught SIGTERM, shutting down
[Tue Jan 19 17:38:53 2010] [warn] (22)Invalid argument: Failed to destroy the '/tmp/mod_mono_dashboard_XXGLOBAL_1' shared memory dashboard
[Tue Jan 19 17:38:55 2010] [notice] mod_python: Creating 8 session mutexes based on 150 max processes and 0 max threads.
[Tue Jan 19 17:38:55 2010] [notice] mod_python: using mutex_directory /tmp 
[Tue Jan 19 17:38:55 2010] [notice] Apache/2.2.4 (Linux/SUSE) PHP/5.2.4 with Suhosin-Patch mod_python/3.3.1 Python/2.5.1 mod_mono/1.2.5 mod_perl/2.0.3 Perl/v5.8.8  
configured -- resuming normal operations 
[Tue Jan 19 17:39:03 2010] [error] [client 193.152.163.193] ALERT - configured POST variable limit exceeded - dropped variable 'restore_resource_instance_154' (attacker  
'193.152.163.193', file '/srv/www/htdocs/moodle/backup/restore.php'), referer: http://www.iesebre.com/moodle/backup/restore.php
[Tue Jan 19 17:42:11 2010] [error] [client 213.176.161.200] File does not exist: /home/ocastell/public_html/Xarxes_i_Linux, referer: http://www.lafarga.cat/node/512
Well, I've performed one default install of Suhosin in my test environment and I've been able to reproduce the problem. In Suhosin logs I get:
   * ALERT - script tried to increase memory_limit to ... (this is just one notice)
   * ALERT - configured POST variable limit exceeded - dropped variable .... (this cause the restore to break)

So I've simply modified this settings:

suhosin.memory_limit = 201326592
suhosin.post.max_vars = 400
suhosin.request.max_vars = 400

Vegeu també

Enllaços externs