05 January 2019
Une première tentative d'utilisation de la carte comportant une installation de raspbian wheezy avec apache2/mysql/php et dotclear d'installé. Cette carte ne peut pas booter sur un RPi 3 B+, car le processeur est trop récent et n'est géré que depuis peu par une la distribution.
L'upgrade une version plus récente n'est pas recommandé par raspbian (TODO ref).
Par ailleurs, la distribution actuelle étant wheezy, il faudrait faire des dist-upgrade vers jessie, puis vers stretch.
Installation de raspbian stretch sur la carte SD, après vérification du fichier zip et décompression.
$ lsblk # Pour repérer le device représentant la carte
$ umount /dev/sde1 /dev/sde2 # Eventuellement, démonter les partitions (mais pas le disque !)
$ sudo dd if=2018-11-13-raspbian-stretch-full.img of=/dev/sde bs=4M conv=fsync status=progress
Note, l'utilisation de Win32DiskImager reste à évaluer, à priori, cela ne permet pas de sauvegarder tout le disque, et etcher permet de copier une image vers une carte, mais pas l'inverse.
Pour un premier essai, une carte de 8Go à été utilisée.
Pour un second essai, la carte 16Go SanDisk à été utilisée.
Démarche erronée : utiliser gparted pour redimensionner la partition. Cela rends la carte défectueuse, et le RPi est bloqué au boot.
Au premier boot de la carte, celle-ci se décompresse automatiquement à la taille de la carte.
Archivage des répertoires de dotclear sur l'ancien raspberry.
$ tar czvf dotclear-20190105.tar.gz dotclear2-10
$ mysql -u dotclear -p dotclear-db > dotclear-20190105.tar.gz
Sur le RPi 3 B+ avec Raspbian Stretch :
$ sudo mysql -u root -p # mot de passe vide, mais il faut être root
Ensuite il faut taper les instructions suivantes :
CREATE DATABASE dotclear;
# A vérifier si nécessaire: CREATE USER 'dotclear'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON `dotclear-bd`.* TO dotclear@localhost IDENTIFIED BY 'password';
FLUSH PRIVILEGES;
SHOW GRANTS FOR USER dotclear@localhost
Il faut décompresser les fichiers et adapter les répertoires :
$ sudo mysql -u root -p < dotclear-20190105.tar.gz
$ cd /var/www/html # L'emplacemenent à changé
$ tar xzvf dotclear-20190105.tar.gz
$ chmod +770 /var/www/html -R
$ chown pi:www-data /var/www/html -R
$ chmod +777 /var/www/html/dotclear2.10/cache
$ chmod +777 /var/www/html/dotclear2.10/public
$ ln -s dotclear2-10 dotclear
$ sudo apt-get install apache2 mysql-server php php-mysql
$ sudo apt-get install php-xml # 1h de recherche
Dans le fichier inc/config.php il faut changer le driver "mysql" par "mysqli", à cause de php7.
Ce détail m'a fait perdre un temps fou. Pour avoir un affichage plus précis, on peut activer la fonction debug dans inc/config.php en ajoutant la ligne suivante :
define(‘DC_DEBUG’, 'true');
Autre truc de dépannage, pour savoir si php est activé, créée un fichier /var/www/html/test/index.php contenant le texte suivant :
<?php phpinfo(); ?>
Cela fonctionne. Il reste qu'on peut maintenant migrer vers dotclear 2.14, mais l'installation automatique ne focntionne pas.