Jucidful

MEMO NAS - MEMO PHP - MEMO LINUX

LINUX : FICHE MEMO

Multi-tâche en console

Dans la même console : NOHUP et &

Utiliser : nohup "MACOMMANDE"
-> Permet de fermer la fenêtre sans quitter processus
Utiliser "MACOMMANDE" &
-> Permet d'envoyer directement en tâche de fond. Mais toujours dépendant de la fenêtre. Donc à combiner avec nohup.

nohup macommande &

On retrouve la sortie de le fichier nohup.out et on peut afficher sur contenu avec la commande cat

Plusieurs consoles : SCREEN

screen -s "NAME" = nouveau terminal
screen -ls = voir les terminaux
screen -r "NAME" = se rattacher à un terminal (marche aussi avec le numéro)
screen -X -S "NAME" kill = pour kill
screen -dmS "NAME" "MACOMMANDE" = créer un screen en détaché + commande

Pour détacher un screen : CTRL+A puis enchainer CTRL+D

OpenVPN sur NAS

Utiliser ces deux site : site 1 (anglais) et site 2

Lancer le service OpenVPN : sudo systemctl start openvpn@client.service
Arrêter le service OpenVPN : sudo systemctl stop openvpn@client.service

Récupérer IP : curl ipinfo.io ou avec ce fichier torrent CheckMyIP.torrent

Windscribe

Docker

Exemple avec Joal (logiciel de ratio sur Yggtorrent) :

Après avoir mis les fichhier .torrent dans le dossier /home/jc/joal-conf/joal/torrents/ : docker start joal

Utilisateurs et droits

Utilisateurs

Groupes

Dossiers et fichiers

Afficher les droits d'un dossier / fichier : ls -l

Appliquer récursivement aux sous-dossiers : -R

Pour modifier les droits d'accès : chmod.

avec le score

Exemple : chmod 777 -R /home/patrick

Copie de fichier : RSYNC

En local : afficher barre de progression

rsync --progress -r -p -t -g -o /source /destination pour afficher la progression fichier après fichier.

rsync -a --info=progress2 -r -p -t -g -o /source /destination pour afficher la progression sur l'ensemble du transfert.

Dossier distant : sauvegarde sites

rsync -av /home/webmaster/site_jucidful -e "ssh -p PORT" USER@IP_ADRESS:"/srv/dev-disk-by-label-RAID1x4TO/Sauvegarde/Backup/"
Cette méthode car utilisation port différent. Sinon :
rsync -e ssh -a source/ login@serveur.ip:/destination/ avec -a qui permet d'archiver (moyen rapide pour la récursivité). Autre argument : -z pour compresser (quand débit réduit par exemple)

Monter un disque dur externe

Repérer le nom du disque dur :

Utiliser la commande fdisk -l pour trouver le disque dur. Généralement sda ou sdb ou sdc, etc. S'il existe déjà une partition dessus, on peut le voir avec ls -al /dev/ et où l'on retrouvera sbc1 par exemple.

Monter le disque dur :

Une fois identitfié, il faut monter le disque / la partition (?) sur un dossier. Par convention, on crée un dossier à la racine : mkdir /usb puis on monte le DDE dessus : mount /dev/sdc1 /usb

Tous les fichier copiés sur /usb seront copiés sur le DDE. Attention : le disque dur doit être remonté à chaque redémarrage avec la commande mount

Authentification SSH par clés

Côté client :

Générer la clé : ssh-keygen -b 4096 avec -b pour spécifier taille de la clé.

Côté serveur :

Copie de la clé sur le serveur : ssh-copy-id utilisateur@serveur. Attention au port. Normalement c'est tout. Aide supplémentaire ICI

Quelques commandes bash

Pour n'afficher qu'une ligne suivant un mot choisi :

df -h | grep -w 20G

Ici le mot choisi est "20G"

TAIL

La commande tail affiche les dernières lignes d'un fichier

Exemple 1 : tail -f nohup.out avec -f = affiche en temps réel les dernières lignes. Autre argument possible : -n

Exemple 2 : tail -3 /var/log/auth.log

Afficher la taille totale d'un répertoire

du -sh /etc pour afficher la taille totale du répertoire /etc