Instal·lació i configuració del Moodle. Institut, curs 11-12
Contingut
- 1 Preliminars. Canviar el moodle antic per moodle 1112
- 2 Instal.lació del moodle, curs 11-12
- 3 Configuració del moodle, curs 11-12
- 4 Arxius d'entregues i exàmens, curs 10-11
- 5 Llistat de les últimes entregues d'una assignatura
- 6 Configuració SMTP
- 7 Autentificació amb LDAP curs 11-12 (funciona)
- 8 Còpia i restauració d'un curs
- 9 Configuració SMTP
- 10 Inscriure
Preliminars. Canviar el moodle antic per moodle 1112
Migració del moodle antic al moodle nou (curs 11-12)
jo les aplicacions en el linux-server (192.168.0.15) les tinc a:
/usr/share/apache2
La instal.lació antiga del moodle 10-11 està a /usr/share/apache2/moodle. La nova instal.lació estarà a /usr/share/apache2/moodle1112. Per tal de continuar accedint al moodle 10-11 he de canviar el fitxer config.php
- en el fitxer config.php: $CFG->wwwroot = "http://".$_SERVER["HTTP_HOST"]."/moodle1011";
$ gedit /etc/apache2/default-server.conf Alias /moodle1011 "/usr/share/apache2/moodle/" <Directory "/usr/share/apache2/moodle"> Options Indexes MultiViews AllowOverride None Order allow,deny Allow from all </Directory> Alias /moodle "/usr/share/apache2/moodle1112/" <Directory "/usr/share/apache2/moodle1112"> Options Indexes MultiViews AllowOverride None Order allow,deny Allow from all </Directory>
Ara ja podré accedir sempre al moodle antic per
http://localhost/moodle1011
a /srv/www/htdocs és on està l'arrel del Apache. el fitxer index.htm és el que conté prova, i les carpetes que aquí es creen apareixen en el servidor web de forma automàtica.
Instal.lació del moodle, curs 11-12
A partir d'aquí segueixo Instal.lació_i_configuració_del_Moodle, amb la única salvetat que ara estic a LINKAT i no a Ubuntu.
per al curs 11-12 anava a agafar la última versió, la 2.1.1+, però com que la LINKAT no està actualitzada no compleix el requisit de PHP5.3.2. Per tant, em quedaré en la mateixa versió del Moodle que l'any passat.
# php --version PHP 5.2.5 with Suhosin-Patch 0.9.6.2 (cli) (built: Sep 5 2008 14:32:02)
versió Moodle 1.9.9+ (moodle-weekly-19.tgz)
Copio i descomprimeixo a /usr/share/apache2/moodle
mysql -u root -p mysql> CREATE DATABASE moodle1112;
Creem el lloc web http://localhost/moodle, com habitualment: http://localhost/moodle/install.php
Si en comptes de descomprimir faig copiar/enganxar la carpeta de l'any passat, aleshores he d'eliminar/renombrar el fitxer config.php, per tal que quan faig la instal.lació funcioni: http://localhost/moodle/install.php
- català
- hi ha un check incorrecte: Autoinici de sessió: Hauria d'estar desactivat. Les sessions es poden habilitar en el fitxer php.ini. Comproveu el paràmetre session.auto_start. (/etc/php5/apache/php.ini)
- Directori de dades: /usr/share/moodledata112 (creem el directori a mà)
$ sudo mkdir /usr/share/moodledata1112 $ sudo chown -R joan:www /usr/share/moodledata1112 $ chmod -R 0770 /usr/share/moodledata1112 $ sudo chown -R joan:www /usr/share/apache2/moodle1112 $ chmod -R 0770 /usr/share/apache2/moodle1112
- comprovació dels components: php_extension: xmlrpc. Es recomana instal·lar/habilitar l'extensió opcional xmlrpc, és útil per a la funcionalitat de Moodle en Xarxa.
- Baixo el paquet d'idioma català, que s'instal.la automàticament.
- es crea el fitxer config.php (configuració d'accés a la bd)
- es creen totes les taules amb èxit
- ... tot correcte
- Setup administrator account: username: admin; pwd: Jq****_**** (el meu) -> posteriorment es canvia a **** (el meu). per canviar el password a un altre no tant restrictiu, he d'entrar a Seguretat > Normativa del lloc i mirar els ítems que fan referència a les claus de pas.
Configuració del moodle, curs 11-12
Per accedir a Moodle des d'una altra màquina
$ sudo joe /usr/share/apache2/moodle/config.php $CFG->wwwroot = "http://".$_SERVER["HTTP_HOST"]."/moodle";
El calendari apareix malament. Entrant com a administrador:
- Aparença > Temes > Calendari > la setmana comença el dilluns
Què és el que no pot fer un alumne? Doncs per exemple, no vull que envïi missatges al fòrum, bitàcoles,... Usuaris > Permisos > Definició de rols > Estudiants. I aleshores es pot definir què pot fer i què no pot fer un alumne.
creo els usuaris-professors manualment. Hem quedat en reunió de departament que unificarem el login de les aplicacions Moodle, Mantis i Assistència, i que el login i pwd serà el del domini. Si no pot ser validar-se contra LDAP, es farà manualment. nota. Ja sabem com validar-nos contra el LDAP, per tal no cal crear els usuaris manualment.
Creo els Cursos
- Crear categories per a ASIX1, ASIX2, DAW1, DAI2
- Crear curs a ASIX1
Important, a Paràmetres, el format del curs ha de ser per Temes (topics), no per setmanes.
Full name: ASIX1: Implantació de Sistemes Operatius Short name: ASIX1_ISO ID number: credit format: topics nb topics 15 max upload size: 12Mb (conseguir) professor/estudiants Disponibilitat del curs: *curs disponible per als estudiants *clau del curs: balmes -> no caldria perquè inscriuré els alumnes als cursos a través del fitxer de càrrega *No es permet l'entrada de visitants
És important que el rol per defecte del curs sigui Estudiant. Si quan els alumnes s'inscriuen al curs els queda els rol de visitant (o al principi de curs que entren com a visitants), no poden penjar els exercicis en una tasca.
Maximum upload size: A seguretat > Normativa del lloc es deixa definit que el màxim estigui definit en el servidor. En el servidor, en ppi és el paràmetre upload_max_filesize = 10M definit a /etc/php5/apache2/php.ini Els cursos són:
ASIX1: Implantació de Sistemes Operatius ASIX1_ISO ASIX1: Programació Bàsica ASIX1_PB ASIX1: Bases de dades ASIX1_BD ASIX1: Llenguatges de marques i sistemes de gestió d'informació ASIX1_XML DAW1: Implantació de Sistemes Operatius DAW1_ISO DAW1: Programació Bàsica DAW1_PB DAW1: Bases de dades DAW1_BD DAW1: Llenguatges de marques i sistemes de gestió d'informació DAW1_XML ASIX2: Administració de SO ASIX2_ASO ASIX2: Administració de BD ASIX2_BD ASIX2: Seguretat i Alta Disponibilitat ASIX2_SAD ASIX2: Planificació i Administració de Xarxes ASIX2_PAX ASIX2: Serveis de Xarxa i Internet ASIX2_SXI ASIX2: Implantació d'Aplicacions Web ASIX2_IAW ASIX2: Fonaments de Maquinari ASIX2_FM DAI2: Entorns de 4a Generació i Eines CASE DAI2_EC DAI2: Entorns Gràfics DAI2_EG DAI2: Anàlisi d'Aplicacions Informàtiques DAI2_ANA DAI2: Programació Avançada DAI2_PAV
Un cop el professor s'ha validat dins del LDAP, aquest ja pot assignar-se els seus cursos (ho fa ell o ho ha de fer l'adminsitrador?) Hem d'assignar els professors als seus cursos. Molt fàcil: entro en el curs > Assignació de rols > Professors
No cal afegir els alumnes, els alumnes també es validaran per LDAP. Per tant, tot el tema de fitxers de càrrega d'usuaris que fèiem l'any passat aquest any no caldrà fer-ho.
Treure un alumne d'una assignatura
Hi haurà errors i modificacions a l'hora d'inscriure els alumnes...
Per desinscriure un alumne d'una assignatura:
Usuaris > Comptes > Explora llista usuaris > Selecciono alumne > clico sobre assignatura a modificar > Cancelar la inscripció > Sí
Altres coses importants
Mida màxima de fitxer penjat (Administració > Seguretat > Normativa del lloc) Per defecte: Límit del servidor Aquest paràmetre especifica la mida màxima dels fitxers que es poden penjar al lloc. El límit màxim està definit pel paràmetre del PHP upload_max_filesize i pel paràmetre de l'Apache LimitRequestBody. Al seu torn, maxbytes limita la mida màxima que es pot triar dins d'un curs o dins d'un mòdul.
Claus de pas: (Administració > Seguretat > Normativa del lloc) Per defecte està activada l'opció de claus fortes, i com que emprenya, ho configuro d'una altra manera que sigui més dèbil.
Els alumnes no poden pujar arxius. Això segurament és que no s'han inscrit al curs, o que a l'inscriure's hi ha una opció malament en el curs que fa que s'inscriguin amb el rol de visitant. Bàsicament, el visitant no pot penjar fitxers, i l'estudiant sí que pot.
cursos > afegeix/edita cursos > ASI2 > IAIG (marco sobre Editar paràmetres) > Rol per defecte: Estudiant!!
aquesta de fet ha de ser l'opció per defecte doncs:
cursos > inscripcions > tinc per defecte inscripcions internes (encara no està configurat amb LDAP) > paràmetres Editar > enrol_manual_keyholderrole: posar estudiant
Per comprovar si un alumne està inscrit com a Estudiant o com a Visitant:
Quan estic en una assignatura > assignació de rols...
i puc veure quins alumnes tinc com a Estudiants i quins com a visitants.
- inscripció al moodle: els alumnes no poden entrar com a convidats. La clau d'inscripció de cada assignatura és l'acrònim que apareix al Moodle (o bé balmes). Per ex, ASIX1_BD. Això es fa dins de paràmetres de l'assignatura
Arxius d'entregues i exàmens, curs 10-11
Les dades de les assignatures estan a /usr/share/moodledata1112
Per veure les tasques que han d'entregar els alumnes:
mysql> select id,course,name from mdl_assignment;
D'aquí dedueixo que les meves assignatures són:
- SAD: 11 -> /usr/share/moodledata1112/11/moddata/assignment
- IAW: 14 -> /usr/share/moodledata1112/14/moddata/assignment
- EC: 16 -> /usr/share/moodledata1112/16/moddata/assignment
i d'aquesta manera ja puc saber on són les entregues dels alumnes
Llistat de les últimes entregues d'una assignatura
Vull saber les últimes entregues en les meves assignatures:
select course,description from mdl_assignment; select shortname, a.course,description from mdl_assignment a, mdl_course c where a.course=c.id;
Les meves assignatures;
EC: 16 SAD: 11 IAW: 14
Totes les tasques a entregar de les assignatures 16, 11 i 14
select shortname, a.course,a.id,description from mdl_assignment a, mdl_course c where a.course=c.id and (a.course=16 or a.course=14 or a.course=11);
Totes les entregues realitzades pels alumnes de les entregues anteriors.
select assignment,userid from mdl_assignment_submissions; select firstname,lastname,assignment from mdl_assignment_submissions s, mdl_user u where u.id=s.userid;
i ara ja podem mirar entregues dels alumnes de les meves assignatures:
select shortname, a.course,a.id,description from mdl_assignment a, mdl_course c where a.course=c.id and (a.course=16 or a.course=14 or a.course=11); select firstname,lastname,assignment from mdl_assignment_submissions s, mdl_user u where u.id=s.userid; select shortname, s.assignment, firstname,lastname, a.course,a.id,a.description from mdl_course c, mdl_assignment a, mdl_assignment_submissions s, mdl_user u where a.course=c.id and (a.course=16 or a.course=14 or a.course=11) and u.id=s.userid and a.id=s.assignment;
Finalment, ara ja ho puc ordenar per data, de més actual a més antic (limitat a 40 registres).
select shortname, s.assignment, firstname,lastname, a.course,a.id,a.description, s.timecreated from mdl_course c, mdl_assignment a, mdl_assignment_submissions s, mdl_user u where a.course=c.id and (a.course=16 or a.course=14 or a.course=11) and u.id=s.userid and a.id=s.assignment order by s.timemodified desc limit 40;
Per convertir el UNIX Timestamp que em dóna al Moodle a un format que es pugui llegir:
Configuració SMTP
TBD
Servidor > Correu smtp.gmail.com:465 o bé ssl://smtp.gmail.com:465 controlbalmes@gmail.com/aA123456789 Límit de sessió SMTP: 1 noreply: noreply@localhost
Autentificació amb LDAP curs 11-12 (funciona)
Es segueix la guia:
Llavors els camps queden com figura a la pàgina d'administració del Moodle:
Són bàsicament els següents:
Paràmetres del servidor LDAP
- URL del servidor: ldap://192.168.0.11
- Versió: 3
- Codificació LDAP: utf-8
Paràmetres de vinculació
- oculta contrasenya: Sí
- nom distingit: uid=modmanti,ou=people,dc=intracentre
- contrasenya: eD5uvie4aunahk4
Paràmetres de consulta d'usuaris
- Tipus d'usuari: posixAccount (rfc2307) -> important, perquè això significa OpenLDAP
- Contextos: ou=people,dc=intracentre
- cerca subcontextos: no
- desreferència àlies: no
Imposa canvi de contrasenya
- Imposa canvi de contrasenya: no
- Utilitza la pàgina estàndard de canvi de contrasenya: no
- Format de contrasenyes: text net
Paràmetres LDAP de venciment de contrasenyes
- venciment: no
- avís de venciment: 10
- període de gràcia: no
Habilita la creació d'usuaris
- Crea usuaris externament: no
Script de sincronització del cron
- Usuari extern suprimit: manté el compte intern
Autenticació única per NTLM
- Habilita: no
- MS IE fast path? No
Mapatge de dades
- Nom:
- actualitza dades locals: en crear
- actualitza dades externes: mai
- bloca valor: desblocat
- cognoms:
- actualitza dades locals: en crear
- actualitza dades externes: mai
- bloca valor: desblocat
Amb aquesta configuració funciona. Aleshores es pot entrar amb un usuari del LDAP (per exemple, jquintan/****), i si vaig a usuaris ja apareix com a usuari local, i aleshores ja em puc assignar cursos.
Còpia i restauració d'un curs
Vaig al Moodle de l'any anterior, http://localhost/moodle1011/, i entro com a admin
- Vaig al curs ASIX1: Programació Bàsica. A la barra de la dreta: Còpia de Seguretat
- Desseleccionem totes les Dades d'usuari, Forums, Usuaris: cap, Fitxers d'usuari: no; Fes còpia de seguretat de les assignacions de rols d'aquests rols: cap; Continua
- es genera el fitxer backup-asix1_pb-20110920-1626.zip; la còpia de seguretat s'ha completat amb èxit
per trobar on està aquest fitxer:
find / -name backup-asix1_pb-20110920-1626.zip està a: /usr/share/moodledata1011/3/backupdata/backup-asix1_pb-20110920-1626.zip
Vaig al Moodle d'aquest any, http://localhost/moodle/, i entro com a admin
- vaig al curs ASIX1: Programació Bàsica. A la barra de la dreta, Restaura
- cerco el fitxer que acabo de generar. Penjo aquest fitxer, el selecciono, i clico Restaura
- el restauro en Curs existent, afegir-hi dades. Miro que tot estigui bé i canvio la data d'inici del curs (any). El mapatge de rols està bé.
- trio el curs, i Restaura el curs ara. La restauració s'ha completat amb èxit. Continua
Ocultar-ho tot, no fos cas de què els alumnes ho vegin
Configuració SMTP
Servidor > Correu
smtp.gmail.com:465 joanqc@gmail.com/jq**** Límit de sessió SMTP: 1 noreply: noreply@localhost controlbalmes@gmail.com | aA123456789
El problema és que no funciona, i per culpa d'això els alumnes es validen correctament en el LDAP, però no surten de la pantalla de Editar el Perfil, perquè esperen rebre un mail. Solució, mirar el punt següent.
Ara ja funciona:
la meva versió és la 1.9.9
smtp.gmail.com:465 controlbalmes@gmail.com | aA123456789
i en la línia 83 de lib/phpmailer/class.smtp.php
Around line 83 DIRECTLY after the Connect function header, insert this line immediately after the "{" : $host = 'ssl://' . $host;
Inscriure
La solució passa per logar-se com a admin, i l'admin ha d'assignar el mail directament a l'alumne. Usuaris > Comptes > Explora la llista d'usuaris Cercar l'usuari, Editar el Perfil, i ficar manualment l'usuari.
L'administrador també ha d'inscriure els alumnes a les seves assignatures.
Aleshores l'alumne quan entra amb el seu login ja veu les assignatures a les que està matriculat.
creat per Joan Quintana Compte, setembre 2011