Installer WordPress sur un VPS

Le serveur LAMP doit être déjà installé.

Sources :
Exigences officielles de WordPress
Changing File Permissions (WordPress)
Installation de WordPress sous Linux

Créer une base de données pour WordPress :

On se connecte en tant que root (celui de MariaDB). On crée un utilisateur dans MariaDB dans le but d’associer cet utilisateur à une base de données. Ainsi on évitera de devoir se connecter plus tard en tant que root :

sudo mariadb -u root -p
CREATE USER 'utilisateur'@'localhost' IDENTIFIED BY 'mot-de-passe';

On crée maintenant une base de données, on donne sur cette base tous les droits à l’utilisateur créé plus haut puis on active les nouveaux privilèges :

CREATE DATABASE nom-base;
GRANT ALL PRIVILEGES ON nom-base.* TO 'utilisateur'@'localhost';
FLUSH PRIVILEGES;
exit

La base ainsi créée est encodée au format utf8mb4_general_ci.

Installer WordPress :

wget https://fr.wordpress.org/latest-fr_FR.tar.gz
tar xpf latest-fr_FR.tar.gz
sudo cp -r wordpress/* /var/www/html/mon-site/ (à adapter)
rm latest-fr_FR.tar.gz
rm -r wordpress

Gestion des droits sur les fichiers / répertoires :

cd /var/www/html/mon-site/ (à adapter)
ls -l (pour connaître les droits sur les fichiers / répertoires)

Changement de propriétaire :
sudo chown -R $USER:www-data /var/www/html/mon-site (à adapter)

Donne les droits 755 sur les répertoires :
sudo find /var/www/html/mon-site/ -type d -exec chmod 755 {} \;

Donne les droits 644 sur les fichiers :
sudo find /var/www/html/mon-site/ -type f -exec chmod 644 {} \; 

On se connecte sur l’interface Web de WordPress (https:// [ nom de domaine ]) afin d’effectuer son installation :

J’obtiens ceci :

Je continue à la main en faisant un copier-coller dans le fichier wp-config.php à la racine du site, puis je lance l’installation :

sudo nano /var/www/html/mon-site/wp-config.php

Cliquer sur le bouton "Lancer l'installation".

sudo mkdir /var/www/html/mon-site/wp-content/uploads (à adapter)

Changement de propriétaire :
sudo chown -R $USER:www-data /var/www/html/mon-site (à adapter)

Restriction des droits sur le fichier wp-config.php:
sudo chmod 640 /var/www/html/mon-site/wp-config.php (à adapter)

Pour pouvoir ajouter des fichiers dans la médiathèque, on donne les droits en écriture à Apache (www-data) sur le répertoire uploads :
sudo find /var/www/html/mon-site/wp-content/uploads -type d -exec chmod 775 {} \; (à adapter)
sudo find /var/www/html/mon-site/wp-content/uploads -type f -exec chmod 664 {} \; (à adapter)

Une fois les fichiers téléchargés, on peut de nouveau restreindre les droits :
sudo find /var/www/html/mon-site/wp-content/uploads -type d -exec chmod 755 {} \; (à adapter)
sudo find /var/www/html/mon-site/wp-content/uploads -type f -exec chmod 644 {} \; (à adapter)
sudo chown -R $USER:www-data /var/www/html/mon-site/wp-content/uploads (à adapter)

On se connecte sur :
https:// [ adresse du site ] /wp-login.php

Mise à jour :

Pour mettre à jour WordPress, je change ponctuellement le propriétaire des fichiers et répertoires :

sudo chown -R www-data:www-data /var/www/html/mon-site (mon-site à adapter)

puis une fois la mise à jour faite, je reviens en arrière pour des raisons de sécurité :

sudo chown -R $USER:www-data /var/www/html/mon-site (mon-site à adapter)

Cette méthode de mise à jour n’est pas satisfaisante. Je cherche mieux.

Installation de CoppeliaSim

À la date de l’installation, mon PC est sous Debian 11.

Télécharger CoppeliaSim depuis :
https://www.coppeliarobotics.com/downloads

Dans la console :

cd Téléchargements
tar -xJf CoppeliaSim*.tar.xz

Si le répertoire coppeliasim n’existe pas déjà, je le crée :
mkdir ~/.local/share/CoppeliaSim
J’installe l’application à l’endroit voulu :
cp -r CoppeliaSim*/* ~/.local/share/CoppeliaSim

Je télécharge l’icône CoppeliaSim et l’installe à l’endroit voulu :
wget http://entropie.org/3615/download/coppeliasim.png
mv coppeliasim.png ~/.local/share/CoppeliaSim

Pour intégrer le programme au menu de Mate, je passe par le menu auquel j’ai déjà intégré mozo :
Système > Préférences > Apparence > Menu Principal > Nouvel élément
Le fichier créé apparaît ici :
~/.local/share/applications/mozo-made.desktop

Pour effacer une version précédente :
rm -rf ~/.local/share/CoppeliaSim


J’installe ensuite Jupyter Notebook pour programmer Poppy en Python :
sudo apt-get install jupyter

Pour appeler rapidement Jupyter Notebook, j’installe également l’application dans le menu (avec mozo).
Télécharger l’icône de Jupyter :
wget http://entropie.org/3615/download/jupyter.svg
L’appel du programme se fait par : jupyter-notebook

Dans Jupyter Notebook, créer un nouveau Notebook et dans la première cellule, écrire puis exécuter :

# Import des bibliothèques et création du robot
from poppy_ergo_jr import PoppyErgoJr
creature = PoppyErgoJr(simulator='vrep')

Le robot apparaît alors dans CoppeliaSim (il faut avoir ouvert CoppeliaSim avant d’exécuter la cellule).

Installation de Poppy Ergo Jr

À la date de l’installation, mon PC est sous Debian 11.

Officiel : Documentation / GitHub / Poppy Forum

1/ Préparer la carte SD

Télécharger le fichier image pour la Raspberry Pi 2 :
https://github.com/poppy-project/poppy-ergo-jr/releases

Décompresser le fichier téléchargé pour obtenir le fichier image.

Version 4.0.1 :
2021-10-20-poppy-ergo-jr.img.7z
MD5 sums : ce648d0eba1099520e982032b0a9ca86
2021-10-20-poppy-ergo-jr.img
MD5 sums : bc87deb721ee851ccd8cc06311cba514

Transférer l’image sur la carte SD :

sudo fdisk -l (pour avoir la liste des disques)
cd Téléchargements
sudo dd if=2021-10-20-poppy-ergo-jr.img of=/dev/sdf bs=1M status=progress (à adapter)

À adapter : On indique en sortie le nom d’un périphérique (ici sdf), pas celui d’une partition comme sdf1. Il faut attendre quelques minutes pour que l’opération se finisse.

On met la carte SD dans la Raspberry Pi, on connecte le robot au réseau local et on branche le transformateur (7,5 V / 2 A) sur la carte Pixl prévue pour le robot Poppy Ergo Jr. Le + de la prise du transformateur est au centre, le – à l’extérieur.

2/ Améliorer la sécurité

Par défaut, pour se connecter à Poppy :
login : poppy / password : poppy
Il existe aussi un autre mode administrateur :
login : pi / password : raspoppy
On va modifier leur mot de passe.

ssh pi@192.168.0.xxx (à adapter)
passwd pi (pour modifier le mot de passe)
sudo passwd poppy (pour modifier le mot de passe)

3/ Modifier la configuration

Dans la console :

sudo raspi-config

Network Options > Hostname (modifier poppy en POPPY)
Localisation Options > Change Locale : fr_FR.UTF8 UTF-8
                     > Change TimeZone : Europe > Paris
                     > Change Keyboard Layout
Advanced Options > Expand Filesystem

Network Options modifie les fichiers :
/etc/hostname
/etc/hosts

4/ Ports à ouvrir sur le routeur / firewall à l’adresse du robot et à destination de mon ordinateur

nmap -p- -v 192.168.0.xxx (à adapter)

Nmap scan report for 192.168.0.xxx :
PORT     STATE SERVICE
22/tcp   open  ssh
53/tcp   open  domain
80/tcp   open  http
2280/tcp open  lnvpoller
4000/tcp open  remoteanything
6969/tcp open  acmsoda
8000/tcp open  http-alt
8080/tcp open  http-proxy
8888/tcp open  sun-answerbook
9009/tcp open  pichat

5/ Utiliser Poppy en le connectant directement sur un PC

En général, on utilise Poppy en le branchant sur un routeur, mais on peut vouloir être indépendant de tout réseau, soit parce qu’il n’y a tout simplement pas de réseau, soit parce que Poppy n’est pas reconnu. La solution est donc de brancher directement Poppy sur un PC en utilisant un câble RJ45 croisé (chez moi, ça fonctionne aussi avec un câble droit).

sudo nano /boot/cmdline.txt

Rajouter à la fin de la première ligne : ip=192.168.0.xxx (à adapter).
Pour repérer les cartes réseaux :
ip addr (ou ip a)
On donne une adresse ip à la carte Ethernet du PC :
sudo ifconfig eth0 192.168.0.yyy up (eth0 et adresse ip à adapter)
On teste la connection avec Poppy :
ping 192.168.0.xxx (à adapter)

Remarque : Pour avoir accès à ifconfig, il faut installer sous Debian 11 le paquet net-tools :
sudo apt-get install net-tools

Dans le navigateur Internet, on accède à l’interface Poppy par : http://192.168.0.xxx (à adapter).