# data[].attributes.body
Afficher les services

service --status-all

Activer un service

systemctl enable SERVICE

Désactiver un service

systemctl disable SERVICE

Redémarrer un service

systemctl restart SERVICE

# data[].attributes.body
préparer l'espace

sudo mkdir /var/www/mon-site.com/

ajouter le fichier de configuration

sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/mon-site.com.conf

Éditer mon-site.com.conf

ServerAdmin admin@mon-site.com
    ServerName mon-site.com
    ServerAlias www.mon-site.com
    DocumentRoot /var/www/mon-site.com/
    ErrorLog ${APACHE_LOG_DIR}/mon-site.com.error.log
    CustomLog ${APACHE_LOG_DIR}/mon-site.com.access.log combined

activer le nouveau site (a2dissite pour desactiver)

sudo a2ensite mon-site.com.conf

sudo service apache2 restart

Permettre aux règles d'être définies dans les .htaccess de  <VirtualHost>

<Directory /var/www/html>
Options Indexes FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>

# data[].attributes.body
Chercher un paquet

sudo apt update
sudo apt-cache search nomdupacket

Installer un paquet

 sudo apt install nomdupacket

Mettre à jour les paquets

sudo apt update
sudo apt upgrade

# data[].attributes.body
Voir les permissions d'un fichier

 ls -l

Changer les permissions

chmod 764 nomdufichier ou chmod g+x nomdufichier

Changer le proprietaire

chown user nomdufichier

Changer le groupe

chgrp group_name nomdufichier

# data[].attributes.body
AT lit une série de commandes et les exécutent au moment défini.

echo "command_to_be_run" | at 2:30 PM Fri

CRONTAB cédule une tâche qui peut être effectuée répétitivement

crontab -e, puis dans le fichier:
@yearly /home/jean/centos/bin/annual-maintenance
30 08 10 06 * /home/ramesh/full-backup

# data[].attributes.body
Les regex sont des expressions comme /[g-s]/g qui permettent de définir précisément les caractères que nous voulons rechercher, par exemple à l'aide d'une commande comme grep.

Retourne les lignes qui commencent par GNU

grep "^GNU" GPL-3

# data[].attributes.body
Envoyer la commande vers un fichier

man cp > yeet.txt

Envoyer la commande vers la fin d'un fichier(append)

man cp >> yeet.txt

Envoyer plusieurs commandes

cd www; ls -l;

Envoyer la commande a une autre commande

ps aux | grep jean

GREP filtre les lignes
CUT filtre les colonnes
Cette commande prend les processus de jean et coupe les lignes après le nom de l'utilisateur le tout en une ligne :

ps aux | grep jean | cut -c 1-4

# data[].attributes.body
Format dans man (se répercute dans les commandes linux évidemment)

bold text type exactly as shown.

italic text replace with appropriate argument.

[-abc]any or all arguments within [ ] are optional.

-a|-b options delimited by | cannot be used together.

argument ... argument is repeatable.

[expression] ... entire expression within [ ] is repeatable.

# data[].attributes.body
Ajouter un fichier

touch nomdufichier

Supprimer un fichier

rm nomdufichirt

Modifier un fichier txt

nano nomdufichier

Renommer un fichier

mv file1.txt file2.txt

Déplacer un fichier

mv file1.txt etc/file1.txt

Copier un fichier

cp monfichiertexte.txt autrefichier.bak

# data[].attributes.headline
INSTALLATION du SERVICE WEB (Apache & PHP)

# data[].attributes.subject
INSTALLATION du SERVICE WEB (Apache & PHP)

# data[].attributes.body
Installer Apache2

sudo apt install apache2
sudo apt install php libapache2-mod-php php-mysql
sudo a2enmod php7.4 si ubuntu 20.04 lts

Gerer Cache & erreurs

cd /etc/php

nano php.ini

opcache.enable = 0

sudo service apache2 restart

# data[].attributes.body
Installer certbot

sudo apt install certbot python3-certbot-apache
sudo certbot --apache
Select the appropriate numbers separated by commas and/or spaces, or leave input
blank to select all options shown (Enter 'c' to cancel):1,4

Select the appropriate number [1-2] then [enter] (press 'c' to cancel): 2

# data[].attributes.body
- file ou d directory au debut
User/Group/Other/All
Read/Write/Execute

-rwx/rwx/rwx

# data[].attributes.headline
Utiliser le SHELL distant et les commandes ROOT

# data[].attributes.subject
Utiliser le SHELL distant et les commandes ROOT

# data[].attributes.body
Se connecter au shell

ssh utilisateur@ip

Pour administrer

 sudo avant la commande

# data[].attributes.body
Ajouter et rendre sudo

adduser jean

usermod -aG sudo jean

Enlever

sudo userdel username

lister
less /etc/passw(d)

# data[].attributes.body
Enlever les permissions aux utilisateurs concernés de se connecter au Shell en créant un fichier /usr/local/bin/sftponly qui contient les lignes
        #!/bin/bash
        if [[ "$2" = *sftp-server ]]
        then
                exec /bin/bash "$@"
        else
                echo "'$LOGNAME' peut seulement utiliser sftp."
                exit 1
        fi
    Faire $sudo chmod +x /usr/local/bin/sftponly, pour rendre le fichier exécutable et $sudo usermod --Shell /usr/local/bin/sftponly utilisateur, pour leur enlever le Shell.