Comment se connecter au Terminal web avec LWS Panel ? (console web ssh)

Définition

Qu'est ce qu'une console Web ?

La console web que nous avons mis à disposition depuis l'espace client est un terminal permettant d'entrer des lignes de commandes Linux.

Elle permet de lancer différentes actions de configuration ou d'installation sur les services d'hébergement web.

Dans quelle formule est disponible la console Web ?

La console Web est disponible dans nos formules d'hébergement mutualisé Linux (hors hébergements cPanel) à partir de la formule LWS Starter.

Une console similaire mais spécialisée pour nos formules VPS existe également.

Dans le cas d'une formule cPanel vous trouverez un équivalent, le "Terminal Web" disponible dans le panneau de contrôle cPanel.

Procédure

Comment accéder à la console web ?

Pour accéder à la console web il vous suffit de :

  • Vous connecter à votre espace client LWS
  • Vous rendre dans la gestion de votre formule d'hébergement mutualisé
  • Dans la barre de recherche en haut de l'écran, écrire "console web"
  • Cliquez sur le bouton Console Web dans le résultat de la recherche.

Quelles actions sont possibles avec cette console web ?

Une fois connecté à la console web, il vous suffit d'appuyer deux fois sur la touche Tab de votre clavier.

Un message vous demandera si vous voulez afficher les différentes commandes. Appuyez sur la touche Y de votre clavier pour afficher le listing.

Pour avoir un aperçu des fonctionnalités de chaque commande, il vous suffit de l'écrire et d'indiquer ensuite --help

Quelles sont les commandes les plus utiles pour utiliser simplement le service ?

Nous allons voir ensemble les commandes les plus intéressantes classées par catégories.

Utilitaires Bash (utilitaires  + langage de programmation)

Déplacement dans les dossiers via la commande cd

test-845214@webdbXX:~/htdocs$ cd images

La commande cd permet de se placer dans un dossier en particulier afin d'y effectuer des actions par la suite.

Dans notre cas, avant d'entrer cette commande, nous nous trouvons dans le dossier htdocs.

En validant la commande d'exemple, nous nous trouverons dans le dossier images qui se situe dans le dossier htdocs.

Il est possible de revenir en arrière (..) ou d'indiquer un chemin plus long comme par exemple images/svg pour atteindre un dossier plus profond.

Afficher le contenu d'un dossier

test-845214@webdbXX:~/htdocs$ ls

La commande LS permet d'afficher le listing des dossiers et fichiers se trouvant dans le répertoire dans lequel on se trouve.

Dans notre exemple, cette commande liste les différents dossiers et fichiers se trouvant dans le dossier htdocs.

Afficher dans quel dossier on se trouve actuellement

test-845214@webdbXX:~/htdocs$ pwd

La commande pwd nous retournera le chemin entier du dossier dans lequel on se trouve.

Dans notre exemple, si je valide cette commande, le chemin suivant me sera retourné : /home/htdocs

Cela permet de visualiser où on se trouve à tout moment.

Copie de fichiers via la commande cp

test-845214@webdbXX:~/htdocs$ cp photo.jpg /img

Cette commande copie le fichier photo.jpg qui se trouve dans le dossier htdocs dans le dossier img du dossier htdocs

Déplacement de fichiers via la commande mv

test-845214@webdbXX:~/htdocs$ mv photo.jpg /htdocs/img

ICette commande déplace le fichier photo.jpg de la racine du dossier htdocs vers le dossier img.

Suppression d'un fichier via la commande rm

test-845214@webdbXX:~/htdocs$ rm photo.jpg

Cette commande supprime le fichier photo.jpg se trouvant dans le dossier htdocs

Suppression d'un dossier vide via la commande rm

test-845214@webdbXX:~/htdocs$ rm -r img

Cette commande supprimera le dossier img se trouvant dans le dossier htdocs mais uniquement si il est vide.

Suppression d'un dossier non vide via la commande rm

test-845214@webdbXX:~/htdocs$ rm -rf img

Cette commande supprimera le dossier img (et tout son contenu) se trouvant dans le dossier htdocs

Suppression d'un dossier via la commande rmdir

test-845214@webdbXX:~/htdocs$ rmdir img

Cette commande supprimera le dossier img se trouvant dans le dossier htdocs

Cette action n'est possible que si le dossier img est vide, sinon une erreur apparaîtra.

Concaténer plusieurs fichiers dans un seul via la commande cat

test-845214@webdbXX:~/htdocs$ cat mon_texte.txt mon_texte2.txt > destination.txt

Cette commande ajoute le contenu des deux fichiers mon_texte.txt et mon_texte2.txt dans le fichier destination.txt

Si le fichier destination.txt n'existe pas, la commande le crée. Si il existe, la commande écrase ce fichier.

Créer un dossier avec la commande mkdir

test-845214@webdbXX:~/htdocs$ mkdir mon_dossier

Cette commande crée le dossier mon_dossier dans le dossier htdocs.

Gérer les permissions d'un fichier / dossier

test-845214@webdbXX:~/htdocs$ chmod 755 mon_fichier.txt

Chmod permet d'attribuer des droits sur un dossier ou fichier à 3 types d'utilisateurs dont l'ordre est le suivant : Propriétaire, Groupe, Autres

Chaque chiffre va correspondre à un type de droit :

  • 0 : aucune autorisation
  • 1 : Exécution
  • 2 : Écriture
  • 3 : Lire et écrire
  • 4 : Lecture
  • 5 : Lecture et exécution
  • 6 : Lire et écrire
  • 7 : Lire, écrire et exécuter

Dans notre exemple plus haut, je donne tout les droits au propriétaire du fichier dont le nom est "mon_fichier.txt" se trouvant dans le dossier htdocs.

En ce qui concerne la catégories Groupe et Autre, on ne donne que les droits en lecture et exécution, il ne peuvent donc modifier le dossier.

Il est fortement déconseillé de donner comme droit 777 à l'ensemble des fichiers et dossiers dans une grande majorité des cas.

Rechercher une chaîne de caractères dans un fichier spécifié

test-845214@webdbXX:~/htdocs$ grep -i -n validFunction *

Grep permet de rechercher une chaîne de caractères dans un fichier et donc de retrouver les différents fichiers dans lequel se trouve une partie de texte.

Dans l'exemple ci dessous, nous recherchons dans l'ensemble des fichiers se trouvant dans htdocs le texte validFunction.

Cela indique en retour tous les fichiers dans lesquels ce terme est écrit.

Il existe pusieurs options utiles avec la fonction grep :

-i par exemple permet d'indiquer à la recherche que cela est insensible à la casse (ne prend pas en compte les majuscules)

-n permet d'afficher le numéro de la ligne où se trouve l'élément trouvé.

Rechercher un fichier

test-845214@webdbXX:~/htdocs$ find . -name "*.jpg"
./images/banniere.jpg
./images/logo/mon_logo.jpg

La fonction find est très puissante et permet la recherche de fichiers selon plusieurs critères comme le nom, le type de fichier, la taille, ...

Dans notre exemple, nous avons effectué une recherche dans le dossier htdocs via le nom de fichier : tous les fichiers dont l'extension est .jpg.

Nous avons eu deux résultats qui nous indiquent où trouver les fichiers correspondant à notre recherche.

Ajouter / Modifier le listing des crontabs

test-845214@webdbXX:~/htdocs$ crontab -l
test-845214@webdbXX:~/htdocs$ crontab -r
test-845214@webdbXX:~/htdocs$ crontab -e

Un crontab permet d'exécuter un fichier selon la périodicité qu'on lui indique.

La première commande via -l permet d'afficher le listing des crontabs.

La deuxième commande via -r permet de supprimer entièrement le lisitng.

La troisième commande via -e permet d'éditer ce listing en passant sur l'éditeur de la console.

# Example crontab:
# .---------------- minute (0 - 59)
# |  .------------- heure (0 - 23)
# |  |  .---------- Jour du mois (1 - 31)
# |  |  |  .------- mois (1 - 12) OR jan,feb,mar,apr ...
# |  |  |  |  .---- Jour de la semaine (0 - 6) //0=Dimanche
# |  |  |  |  |
# *  *  *  *  *  utilisateur commande à exécuter

# Cron job for Wordpress at /htdocs/mondomaine.fr                                                    
# S'executera toutes les 30 minutes (1h30, 2h00, 2h30, ...)
*/30 * * * *    /usr/bin/php /htdocs/mondomaine.fr/wp-cron.php &> /dev/null

Création de raccourci (alias)

test-845214@webdbXX:~/htdocs$ alias checkFichier='ls'
test-845214@webdbXX:~/htdocs$ checkFichier

La commande alias permet de créer un raccourci afin d'appeler une commande avec simplement le nom qu'on aura donné à l'alias.

Dans mon exemple, j'ai créé un alias nommé checkFichier dont la valeur est la commande ls

Sur la ligne suivante, si j'appelle mon alias, cela donne en résultat le listing des fichiers et dossiers comme l'aurait fait un simple LS

Ceci est une utilisation simple de l'alias mais vous pouvez donner à votre alias une ligne de commande bien plus complexe pour éviter de réécrire des longues  lignes de commande.

Supprimer un raccourci (alias)

test-845214@webdbXX:~/htdocs$ unalias checkFichier
test-845214@webdbXX:~/htdocs$ checkFichier

La commande unalias permet de supprimer un alias que nous avons créé.

Dans mon exemple, je supprime l'alias checkFichier que j'ai créé juste avant.

Si j'appelle ensuite checkFichier, la console m'indiquera qu'il ne connait pas cette commande.

Editeur de texte visuel

test-845214@webdbXX:~/htdocs$ nano readme.txt

La commande nano permet d'ouvrir et éditer un fichier via un éditeur de texte visuel dans la console, dans notre exemple, la commande permet d'ouvrir le fichier readme.html du dossier htdocs.

Une fois les modifications effectuées, vous pouvez enregistrer en faisant un CTRL + O suivant de la touche Entrée.

Puis vous pouvez quitter l'éditeur de texte en appuyant sur CTRL + X.

Vous reviendrez sur votre console web.

Transformation de texte

test-845214@webdbXX:~/htdocs$ sed -i "s#`ancien_prefix#`nouveau_prefix#g" export_wordpress.sql

La commande sed est un peu plus compliquée à utiliser mais celle ci est très puissante. Elle permet d'effectuer une transformation de texte dans un fichier.

Dans notre exemple, la commande permet de modifier le prefix d'une table SQL dans notre fichier export_wordpress.sql par un autre prefix.

Cela me permet par exemple de créer un clone d'un site Wordpress sans écraser ma base de données quand j'importe la base de données via le fichier modifier.

Utilitaires de compression / decompression

Créer une archive zip

test-845214@webdbXX:~/htdocs$ zip -r images.zip images

La commande zip permet de créer une archive d'un fichier ou dossier.

Dans notre exemple, la commande va créer l'archive images.zip qui contiendra tout ce qui se trouve dans le dossier images.

Cette archive sera disponible dans le dossier htdocs

Extraire une archive zip

test-845214@webdbXX:~/htdocs$ unzip -d images images.zip

La commande unzip permet d'extraire les fichiers d'une archive dans un dossier spécifique.

Dans notre exemple, la commande va permettre d'extraire les fichiers de l'archive images.zip dans le dossier images.

Créer / extraire une archive tar

#Creer une archive compressee tar
test-845214@webdbXX:~/htdocs$ tar -cvzf images.tar.gz images/*.jpg

#Extraire une archive compressee tar
test-845214@webdbXX:~/htdocs$ tar xvzf images.tar.gz

La commande TAR est comme le ZIP une commande permettant de créer une archive ou d'extraire une archive.

Dans notre exemple, la première commande va permettre de créer une archive nommée images.tar.gz dans laquelle se trouve tous les fichiers d'extension .jpg contenus dans le dossier images

La deuxième commande permet d'extraire l'archive images.tar.gz dans le dossier où on se trouve (htdocs).

Créer / extraire une archive gzip

#Creer une archive compressee gzip
test-845214@webdbXX:~/htdocs$ gzip image1.jpg

#Extraire une archive compressee gzip
test-845214@webdbXX:~/htdocs$ gzip -d image1.jpg.gz

A l'inverse des commandes zip et tar, gzip permet uniquement la compression d'un seul fichier.

Dans notre exemple, la première commande permett de compresser le fichier image1.jpg et crée le fichier image1.jpg.gz

La seconde ligne permet de décompresser le fichier nommé image1.jpg.gz dans le dossier htdocs.

Créer / extraire une archive 7z

#Creer une archive compressee gzip
test-845214@webdbXX:~/htdocs$ 7z a archive.7z images/*.jpg

#Extraire une archive compressee gzip
test-845214@webdbXX:~/htdocs$ 7z x archive.7z images

La commande 7z fonctionne plus ou moins comme la commande zip ou tar et permet de créer une archive ou d'extraire une archive.

La première ligne d'exemple permet de créer l'archive archive.7z avec tous les fichiers d'extension .jpg contenus dans le dossier images.

La seconde ligne permet d'extraire l'archive archive.7z dans le dossier images.

Utilitaire SQL, Client MySQL

Importer une base de données

test-845214@webdbXX:~/htdocs$ mysql -h 91.206.117.165 -u hdsr1103290 --password=pass_sql hdsr1103290_test < bdd.sql

La commande mysql permet par exemple d'importer une base de données.

Ici dans l'exemple, il vous faudra :

- Indiquer l'IP du serveur : -h <ip_serveur_sql>

- l'utilisateur de la base de données : -u <utilisateur>

- le mot de passe de la base de données : --password=<password sql>

- le nom de de la base de données et le fichier dans lequel se trouvent les informations à importer dans la base de données : <nom_base_de_donnees> < <nom_fichier.sql>

Exporter une base de données

test-845214@webdbXX:~/htdocs$ mysqldump -h 91.206.117.184 -u hdsr1103290 --password=pass_sql hdsr1103290 > ma_base.sql

La commande mysqldump permet d'exporter une base de données dans un fichier.

Ici dans l'exemple, il vous faudra :

- Indiquer l'IP du serveur : -h <ip_serveur_sql>

- l'utilisateur de la base de données : -u <utilisateur>

- le mot de passe de la base de données : -p <password sql>

- le nom de la base de données et le fichier dans lequel on exportera les données de la base de données : <nom_base_de_donnees> > <nom_fichier.sql>

Effectuer des requêtes mysql

test-845214@webdbXX:~/htdocs$ mysql -h 91.206.117.165 -u hdsr1103290 --password=pass_sql hdsr1103290_test

MariaDB [hdsr1103290]> 

Ici cette commande permet d'ouvrir un éditeur mysql permettant d'effectuer des requêtes mysql depuis la console.

Un texte apparaîtra et vous aurez la ligne MariaDB [BDD]. Il ne vous reste plus qu'à écrire vos requêtes et les exécuter

Commande PHP

Vous avez à disposition plusieurs commandes php liées à la version sur laquelle vous voulez effectuer une action.

Vous pouvez à tout moment appuyer deux fois sur la touche TAB de votre clavier puis sur Y pour retrouver le listing des commandes disponibles et donc celles liées à PHP.

#Cette commande permet d'afficher la liste des commandes compilees dans la version PHP 8.1
test-845214@webdbXX:~/htdocs$ php81 -m

#Permet d'afficher le php.ini (informations php) de la version PHP 8.1
test-845214@webdbXX:~/htdocs$ php81 -i

#Permet d'executer une page PHP
test-845214@webdbXX:~/htdocs$ php81 script.php

Client web

Récupérer du contenu web avec wget

#Telechargement d'une page
test-845214@webdbXX:~/htdocs$ wget monsite.fr

#Telechargement d'un fichier
test-845214@webdbXX:~/htdocs$ wget monsite.fr/archive/archive1.zip

La commande wget est un utilitaire de ligne de commande Unix / Linux populaire pour récupérer le contenu du Web.

Dans le premier exemple, la commande va me créer dans mon dossier htdocs le fichier index.html correspondant à la page d'accueil du site indiqué.

Dans le second exemple, cela va télécharger l'archive se trouvant à l'url indiqué et placera cette archive dans le dossier htdocs.

Récupérer du contenu web avec curl

#Telechargement d'une page
test-845214@webdbXX:~/htdocs$ curl -O index.html monsite.fr

#Telechargement d'un fichier
test-845214@webdbXX:~/htdocs$ curl -o test.zip monsite.fr/archive/archive1.zip

La commande curl, à quelques exceptions, permet également d'effectuer les mêmes actions que wget.

Dans le premier exemple, la commande va créer dans mon dossier htdocs le fichier index.html correspondant à la page d'accueil du site indiqué. A ce niveau, je peux lui donner le nom que je veux.

Dans le second exemple, cela va télécharger l'archive archive1.zip se trouvant à l'url indiqué et placera cette archive dans le dossier htdocs et la nommera test.zip

Outils Web

Gérer son projet web avec git

Git est très connu par les développeurs. Git est un logiciel de gestion de versions décentralisé et permet donc de centraliser un projet dans ce logiciel et d'y apporter des modifications avec un système de versionning.

Les commandes git permettent ainsi de télécharger le projet entier dans un dossier nommé, d'y envoyer des mises à jours avec un commentaire, ...

#Telechargement du projet
test-845214@webdbXX:~/htdocs$ git clone url_git

Cette première commande va permettre de récupérer le projet dans sa dernière version et de le placer dans le dossier htdocs. Cela téléchargera l'ensemble des fichiers et dossiers.

#Configuration du commentaire pour les modifications et ajouts apportes au projet
test-845214@webdbXX:~/htdocs$ git commit -m "Mise a jour de la page de connexion"

#Envoi des fichiers mise à jour sur le depot Git avec le commentaire prealablement definit plus haut
test-845214@webdbXX:~/htdocs$ git push

 Lorsqu'on veut envoyer au dépot Git nos modifications du projet, nous allons dans un premier temps mettre en place un commentaire permettant d'expliquer ce qui a été fait (1ère commande)

Puis nous allons pousser vers le dépôt Git les fichiers modifiés (2ème commande)

#MAJ des fichiers en local selon les dernieres versions des fichiers sur le depot Git distant
test-845214@webdbXX:~/htdocs$ git pull

Si vous ne disposez pas des dernières modifications du projet, vous pouvez effectuer cette commande pour récupérer les dernières versions des fichiers que vous ne disposez pas.

Gérer son wordpress via wp-cli

WP-CLI est un ensemble d’outils en ligne de commande pour gérer vos installations WordPress.

Vous pouvez mettre à jour les extensions, configurer des installations multisite et beaucoup plus sans avoir recours à un navigateur web.

#Exemple de commande permettant de lancer la mise à jour du coeur de Wordpress installe dans le dossier htdocs
test-845214@webdbXX:~/htdocs$ wp-cli core download

Gérer des dépendances PHP avec composer

Composer est un outil populaire de gestion des dépendances pour PHP, créé principalement pour faciliter l’installation et les mises à jour des dépendances des projets.

Il permet par exemple l'installation de framework tel que CakePHP ou Laravel, de mettre à jour une installation, ...

#Exemple d'installation du framework cakePHP dans le dossier cake_site
test-845214@webdbXX:~/htdocs$ composer create-project --prefer-dist cakephp/app:~4.0 cake_site

#Exemple d'installation du framework Laravel dans le dossier laravel_site
test-845214@webdbXX:~/htdocs$ composer create-project laravel/laravel laravel_site 4.2 --prefer-dist

Vidéos

Comment utiliser le terminal SSH de ma formule d'hébergement Mutualisé

Notez cet article :

5/5 | 1 avis

Cet article vous a été utile ?

Oui

Non

Vous souhaitez nous laisser un commentaire concernant cet article ?

Si cela concerne une erreur dans la documentation ou un manque d'informations, n'hésitez pas à nous en faire part depuis le formulaire.

Pour toute question non liée à cette documentation ou problème technique sur l'un de vos services, contactez le support commercial ou le support technique

Merci ! N'hésitez pas à commenter nos pages afin de nous aider à les améliorer si besoin.


Vous avez noté 0 étoile(s)

7mn de lecture

Découvrir LWS Panel

4mn de lecture

Gestion du compte client

6mn de lecture

Comment ouvrir une infogérance auprès du service hébergement et mail mutualisé

12mn de lecture

Double identification LWS Panel