Commandes linux (Debian, Ubuntu)

Les distributions Linux sont open source et donc gratuites à utiliser. Il est donc assez compréhensible que les serveurs d’hébergement de sites web fonctionnent la plupart du temps avec ces distributions. Par exemple, le système Windows Server sur online.net se loue 29,99 € / mois.

CentOS / Ubuntu / Debian
CentOS / Ubuntu / Debian

Parmi ces distributions, les plus répandues sur les serveurs sont sûrement CentOS, Ubuntu et Debian. Cependant, chaque zone géographique a ses préférences. Debian domine en Europe. Les États-Unis et l’Asie préférent CentOS, alors que Ubuntu est le choix préféré en Afrique du Sud, Australie, Brésil et Argentine. L’utilisation se faisant à distance, il faut connaître un certain nombre de commandes à entrer dans une console.

Au fur et à mesure de mes besoins, je complète cette liste :

Se connecter temporairement en root :

Si l’on essaie  cd /var/log/letsencrypt , on se retrouve avec une erreur : -bash: cd: letsencrypt: Permission denied. On essaie alors sudo cd /var/log/letsencrypt et on a l’erreur sudo: cd: command not found car cd n’est pas une commande. On se connecte alors temporairement en root :

On fait ce que l’on a à faire. Lorsque l’on a fini, on sort par Ctrl+D.

Dump des tables d’une base ayant un certain prefix :

Télécharger tout un répertoire par ftp :

–recursive prend en charge jusqu’à 5 niveaux. –level=depth précise le nombre de niveaux si c’est insuffisant.

Et pour faire plus court :

Si l’on veut faire plus d’un import, sans réécrire les fichiers existant, on utilise l’option  -nc  no-clobber.

Télécharger tout un répertoire, sans réécrire les fichiers existants, en indiquant le répertoire de réception :

  • -q: quiet, ne transmet aucune information de sortie, contrairement à -nv: no-verbose,
  • -nH: no-host, n’utilise pas le nom de domaine /ftp.example.com dans la hiérarchie des dossiers,
  • –cute-dirs=1, permet de ne pas inclure /subfolder dans la hiérachie des dossiers.
  • -P /path/to/where/I/want/, précise le répertoire de réception des fichiers.

Lister les packages installés sans les dépendances :

Pour obtenir réellement les commandes entrées pour l’installation des paquets avec la date d’installation :

Créer une archive d’un répertoire et des sous-répertoires :

L’archive contient le dossier dir.

Pour ne pas avoir le répertoire dir dans l’archive, on se place dans le dossier dir. Pour exclure aussi un fichier et compresser l’archive (gzip) :

Et pour extraire l’archive :

Connaître la version d’un paquet installé:

Par exemple, la version de MariaDb:

Lister les processus en cours:

En particulier, pour les scripts shell exéxutés en background:

Redémarrer un service:

Par exemple, php-fpm pour PHP 7:

  • En utilisant le script d’initialisation:
  • En utilisant le script service:
  • En utilisant Upstart:
  • En utilisant systemctl (systemd):

Donner récursivement les mêmes droits au groupe que ceux de l’utilisateur:

Lister un fichier log:

Par ex, le fichier error.log de Apache:

On quitte avec q.

Donner les droits en écriture à php:

Donner le répertoire au groupe utilisateur www-data:

Se mettre dans le groupe:

Changer les droits d’accès au répertoire:

Droits d’accès en lecture/écriture pour le répertoire et tous les sous-répertoires (-R).

Changer les droits récursivement seulement sur les dossiers:

Changer le propriétaire d’un fichier ou d’un dossier:

Cette commande s’effectue avec les droits root (su).

L’option -R (uniquement le « R » majuscule) de chown permet d’affecter un nouveau propriétaire et/ou groupe à tous les sous-dossiers et fichiers contenus dans un répertoire.

Version Apache:

Lister les utilisateurs et les groupes:

Utilisateurs

Groupes

Utilisateurs: Groupes

Copier tous les dossiers et fichiers dans le répertoire parent:

Trouver les fichiers contenant une chaine:

Vider un fichier (pratique pour les fichiers log):

Changer d’utilisateur dans la console:

Commande de gestion d’utilisateur:

  • Ajouter un nouvel utilisateur:

    ou

  • Supprimer un utilisateur et effacer le répertoire /home/username:

  • Modifier le nom d’un utilisateur:

  • Changer le mot de passe d’un utilisateur:

  • Changer le shell d’un utilisateur:

  • Changer les détails d’un utilisateur (par exemple le nom réel):

Et hop, des commandes essentielles et bien pratiques pour naviguer sur un serveur linux.

Soumettre un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *