Moodle - omartek/linux_variePerLaboratorio GitHub Wiki
Installare VIRTUALBOX da questo link.
Scaricare l'immagine della macchina virtuale da BITNAMI al seguente link.
In VirtualBox impostare correttamente le proprietà della scheda di rete (Scheda con bridge) e selezionare la propria scheda wifi o ethernet in base a quella che si intende utilizzare.
Ad avvio eseguito Moodle è raggiungibile tramite browser all'indirizzo che apparirà nella finestra di terminale avviata con VirtualBox.
Installazione Moodle in Ubuntu 18.04
L'installazione comprende anche mysql-server e ghostscript:
# apt update && apt upgrade # apt install apache2 libapache2-mod-php mysql-server php-mysql php-gd php-intl php-xmlrpc php-soap php-cli php-zip php-mbstring php-curl php-xml php-pear php-bcmath php-fpm # apt install ghostscript # a2enmod rewrite # systemctl restart apache2
Installare CertBot:
# add-apt-repository ppa:certbot/certbot # apt install python-certbot-apache
Copiare il file di configurazione per i siti con certificato ed inserire la direttiva ServerName nel file /etc/apache2/sites-available/your_domain.com.conf creato e ricordarsi di fare il link simbolico in sites-enabled:
# apache2ctl configtest # systemctl reload apache2
Configurare il firewall
# ufw enable # sudo ufw allow 'OpenSSH' # sudo ufw allow 'Apache Full'
e installare i certificati:
# certbot --apache -d your_domain
L'operazione, se confermato quando richiesto, creerà un file .conf per dirottare le richieste pervenute sulla porta :80; creare un file simbolico al file in stes-enabled.
Certbot aggiunge un'automazione in /etc/cron.d per mantenere il certificato aggiornato.
# mysql_secure_installation # mysql -u root -p mysql> CREATE DATABASE moodle DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; mysql> grant all on moodle.* to moodle@localhost identified by 'm0d1fyth15'; mysql> flush privileges; mysql> quit
$ cd /var/www/html/ $ git clone git://git.moodle.org/moodle.git $ cd moodle $ git branch -a $ git branch --track MOODLE_38_STABLE origin/MOODLE_38_STABLE $ git checkout MOODLE_38_STABLE
Cambiare i permessi e creare la cartella dati (consigli su sicurezza dal sito ufficiale), il 755 è necessario per l'installazione:
sudo chown -R www-data:www-data /var/www/html/moodle sudo chmod -R 755 /var/www/html/moodle
sudo mkdir /var/www/moodledata sudo chown www-data:root /var/www/moodledata/
Collegarsi al sito per la prima installazione e configurazione.
In seguito, impedire al server (www-data) la scrittura nella cartella:
chown -R root:root moodle chmod -R 755 moodle/
oopure, senza cambiare proprietà
chmod -R 500 moodle/
sarà necessario rendere scrivibile anche le cartelle di plugin e temi se si vogliono installare da dentro Moodle
chmod -R 700 moodle/mod/ chmod -R 700 moodle/theme/
Link per risolvere il problema
Installare il pacchetto lingua italiana.
Creazione routine cron:
crontab -u www-data -e */1 * * * * /usr/bin/php /var/www/html/moodle/admin/cli/cron.php >/dev/null
Aumento valore caricamento file:
sudo nano /etc/php5/apache2/php.ini
- Press Ctrl and W and type "post_max_size"
- Change the value to the number of Mb you want your site to accept as uploads
- Press Ctrl and W and type "upload_max_filesize"
- Change the value to the number of Mb you want your site to accept as uploads
- Press Ctrl and W and type "max_execution_time"
- Change the value to 600
- Press Ctrl and O
- Press Ctrl and X
- Type sudo apachectl restart
Aggiunta di plug-in scaricati dal sito.
- Atto:
Cloze editor Then add 'cloze' to the list of buttons in Atto toolbar settings at Site administration -> Plugins -> Text editors -> Atto HTML editor -> Atto toolbar settings.
Installare server per l'invio delle mail
sudo apt install sendmail
Creare regola per condividere il deposito delle domande tra i vari corsi. Vedi guida ufficiale.
Inserimento pulsanti OAuth_2_authentication
Cliccare AMMINISTRAZIONE SITO
Menu CORSI -> gestione corsi e categorie
- Creare una categoria per il proprio corso e i propri corsi.
- Creare gruppi globali del tipo 3E_2017 (classe ed anno di appartenenza).
Importare un file .csv contenente i dati qui sotto riportati. Attenzione quando si crea il file .csv a non importare nomi con spazi o utenti omonimi. La password di primo accesso corrisponde al nome dello studente.
username, password, firstname, lastname, email, course1, group1
Quando si importa il file impostare i campi proposti:
- selezionare la virgola se si è creato il file csv da google fogli oppure verificare l'elenco aprendolo con un editor di testo
- indicare che il campo password è presente
- forza il cambiamento password a nessuno
- standardizza il nome NO
- impostare ora e lingua di default
Contenuto file .csv per importazione
username,firstname,lastname,email,auth,cohort1 [email protected],Student,One,[email protected],oauth2,1Aas2023
Se gli studenti non sono stati inseriti in gruppi globali si devo inserire nei gruppi locali del singolo corso.
Per farlo bisogna:
- importarli nel corso
- creare un gruppo nel caso non esistesse già
- una stessa classe può essere divisa in diversi gruppi per differenziare (dsa, bes, etc...)
- quando si crea un quiz impostare le condizioni d'accesso usando i gruppi ed impedendo la visibilità quando si compila il filtro (cliccare sull'occhio)
- per gestire forum e chat utilizzare i raggruppamenti altrimenti chi gruppi separati della stessa classe non vedono gli interventi degli studenti
Prima copiare la cartella
cp -avr /var/www/html/moodle /backup
Guida per aggiornamento sito Moodle
Aggiornamento da linea di comando
Post da cui è ricavata la guida
Di seguito è riportato per Linux e per Google Bucket ... devi tradurre in Windows e la configurazione effettiva della connessione a Google Bucket è al di fuori della configurazione di Moodle. Fatto dal sistema operativo e da Google.
È stato impostato un mount point sul server Moodle come
/mnt/gbucket
Per usare in Moodle crea una directory chiamata 'autob':
/mnt/gbucket/autob
In Moodle attiva File System Repository, in
/var/www/moodledata/repository
creare un collegamento simbolico chiamato 'autob' che si collega a/mnt/gbucket/autob/
cd /var/www/moodledata/repository/ ln -fs /mnt/gbucket/autob/ autob
Quindi nella configurazione di Moodle,
https://site/admin/settings.php?section=automated
Impostare il parametro Archiviazione backup automatico su "Directory specificata per backup automatici"
Nella casella "Salva in", utilizza il percorso del collegamento simbolico ....
/var/www/moodledata/repository/autob/
Suggerisco di fare un test prima di attivare il backup automatico e l'impostazione di una pianificazione utilizzando il file backup.php in moodlecode/admin/cli/ puntato allo stesso link simbolico. E scegli un grande corso noto per i test.
È preferibile eseguire il backup del sito e non limitarsi al backup dei corsi eseguito da Moodle