Ludovic MARCHAL Formation:TSGERI Session
Transcription
Ludovic MARCHAL Formation:TSGERI Session
Ludovic MARCHAL Formation:TSGERI Session:2015/2016 Ce(tte) œuvre est mise à disposition selon les termes de la Licence Creative Commons Attribution - Pas d’Utilisation Commerciale 4.0 International. [email protected] Ludovic MARCHAL Formation : TSGERI Session 2015/2016 Table of Contents Contexte réseau TSGERI...................................................................................................3 LAN3.................................................................................................................................4 Préambule..........................................................................................................................5 Vérification d’usage......................................................................................................5 Mise à jour................................................................................................................5 Intégrité de l’ISO......................................................................................................5 MD5SUM............................................................................................................6 Utilisateur et machine...................................................................................................6 Fichiers et extensions...............................................................................................6 Droits ROOT.................................................................................................................7 Debian Vs Ubuntu....................................................................................................9 Éditeur de texte.......................................................................................................11 Outils réseau................................................................................................................13 Dig..........................................................................................................................13 VIM........................................................................................................................15 Insertion.............................................................................................................15 Déplacements....................................................................................................15 Copier/coller......................................................................................................16 Annuler/refaire..................................................................................................16 Ouvrir/Sauvegarder/Quitter/Changer de fichier (buffer)...................................16 Répétitions.........................................................................................................16 Autres déplacements..........................................................................................17 Tips and tricks...................................................................................................17 Plus compliqué (ou simple)...............................................................................18 Variables d’environnement.........................................................................................19 SHELL...................................................................................................................20 Le TERMINAL......................................................................................................22 .bashrc....................................................................................................................22 Le prompt...............................................................................................................24 Pratique..............................................................................................................25 Commande.........................................................................................................26 Echo........................................................................................................................26 Manipulation de fichiers........................................................................................26 Déplacement......................................................................................................26 Man-page................................................................................................................27 Base de données.....................................................................................................28 [email protected] 2/29 Ludovic MARCHAL Formation : TSGERI Session 2015/2016 Contexte réseau TSGERI Voici le schéma de référence de la topologie de la salle de formation, les groupes 1, 2, 3, 4 représente les LAN sur lesquels les stagiaires sont répartis. Je me situe dans le LAN3 soit 172.25.3.103 C’est sur ce segment que les services DHCP, DNS vont être maintenu [email protected] 3/29 Ludovic MARCHAL Formation : TSGERI Session 2015/2016 LAN3 Contexte technique de ma machine : Ensemble des applications testées ESXI: Ajout des pilotes dans l'ISO Vbox Docker PVE Sur le LAN 3 les circonstances ont fait que j’ai put tester Proxmox sur un Desktop, et j’ai utilisé mon laptop pour virtualiser les serveurs avec VirtualBox : • Samba • Fusion Directory (LDAP) • PhpIPAM • GLPI • Bind9 • ISC-DHCP • Postgres • Apache [email protected] 4/29 Ludovic MARCHAL Formation : TSGERI Session 2015/2016 Docker • APT-Cacher-NG • NGINX • Postgres • Odoo • Rundeck • Websync En local • Unbound • Glances Préambule Constatant un défaut de vocabulaire pour qui souhaite découvrir le monde de l’informatique il me semble nécessaire de regrouper ici les conventions d’usage et de nommage. Dans l’ensemble ceci d’applique aux systèmes Débian et dérivés. Évoluer sous environnement Gnu/Linux se révelant un peu plus technique que sous Microsoft, la plongée dans ce genre de système Gnu/Linux peu se révéler déroutante pour le novice. Aussi seront présenté les utilitaires inhérents à l’utilisation convenable de la distribution. Ceci s’applique à un « desktop » autant qu’a un serveur, d’une manière générale bien qu’il y ai une différence notable : le démarrage du serverX (pour l’affichage graphique) qui modifie le comportement du Network-manager. Vérification d’usage Mise à jour Dans toutes les installations abordées dans les documentations, prévoir systématiquement l’utilisation de la commande : Sudo apt-get update avant toute installation. Copy backup Avant toutes modifications d’un fichier de configuration, prévoir systèmatiquement cette commande : Sudo cp fichieràmodifier fichieràmodifier.bak (ou .old) [email protected] 5/29 Ludovic MARCHAL Formation : TSGERI Session 2015/2016 Intégrité de l’ISO Veillez à vérifier l’intégrité du média télécharger cela évite quelques désagréments lors de l’installation, il existe à cet effet plusieurs méthodes j’aborderais md5. Existe également GPG, cependant aborder le chiffrement en TSGERI m’a attiré des ennuis : insultes, calomnies, manace. La méthode est très simple déplacez vous dans le répertoire oû se situe votre ISO et invoquez : md5sum file.iso Une valeur vous est retournée, il faut la comparer avec la valeur indiqué sur le site de l’éditeur. MD5SUM Les origines sont à trouver dans les sommes de control de l’adressage IP : cksum, qui permet de trouver les erreurs dans la transmission d’un « message ». MD5 est plus évolué.Il permet la détection et la réparation du message en cas d’altération de celui-ci. Utilisateur et machine L’utilisateur sera indiqué par : username La machine en local sera indiquée par : localhost La machine distante sera indiquée par : remotehost [email protected] 6/29 Ludovic MARCHAL Formation : TSGERI Session 2015/2016 \O/ [username@localhost]-[~]-[ 9:50]--> Fichiers et extensions L’usage des extensions files.avi ; files.exe ; files.bak est propre au système Microsoft, il s’agit d’une convention le : 8.3, instauré chez Microsoft, le système utilise alors l’extension afin d’identifier quelle application utiliser. C’est pour cette raison que lorsque vous récupérer un fichier file.htm sous Gnu/Linux il se nommera file.html sous Gnu/Linux les extensions servent avant toute chose à l’utilisateur pour identifier clairement ce à quoi sert le dit fichier. Lorsque une configuration ou un fichier sera cité en exemple, il sera nommé une fois, puis simplement file. [email protected] 7/29 Ludovic MARCHAL Formation : TSGERI Session 2015/2016 Droits ROOT Droits ROOT Root est l’administrateur , le SuperUtilisateur : l’Homme du Train (Matrix 2) Acquisition des droits Afin d’effectuer une action nécessitant les droits d’administration ; il faut préfixer la commande avec sudo, par exemple pour modifier un fichier de configuration situé à la racine. Le fichier des interfaces réseau : \O/ [username@localhost]-[~]-[ 9:13]--> >~ sudo vi /etc/network/interfaces Les droits sont indiqués dans le prompt . Le mode utilisateur est indiqué avec le symbole tidle: ~ Ici mon prompt personnalisé avec un message d’accueil ; d’ordinaire il est simplement indiqué : utilisateur (at) machine>~ Bonjour, username. La forme ? Nous sommes le:jeudi 2 juin 2016, 08:54:12 (UTC+0200)Kernel Information:Linux 4.0.0-kali1amd64 08:54:12 up 6 min, 1 user, load average: 0,01, 0,03, 0,03\O/ [username@localhost]-[~]-[ 8:54]--> >~ Lorsque nous sommes en ROOT c’est-à-dire en SuperUtilisateur le mode [email protected] 8/29 Ludovic MARCHAL Formation : TSGERI Session 2015/2016 est indiqué dans le prompt avec le symbole # dièse. root@localhost:/home/username# Quitter le mode ROOT s’effectue avec : exit root@localhost:/home/username# exit exit \O/ [username@localhost]-[~]-[ 9:13]--> >~ Lorsqu’une commande est simplement préfixée avec sudo l’utilisateur dispose des droits de manière temporaire, c’est une sécurité. Il faut éviter de rester en ROOT de manière permanente, car une erreur est vite arrivé. [email protected] 9/29 Ludovic MARCHAL Formation : TSGERI Session 2015/2016 Debian Vs Ubuntu Sous Debian l’utilitaire SUDO n’est pas installé et l’utilisateur ne dispose pas des droits d’administration, il faut alors se loger en ROOT directement. Debian se veut un peu plus technique qu’une Ubuntu, vous avez la possibilité soit de : • ajouter sudo Auquel cas il faudra ensuite ajouter l’utilisateur au groupe sudo : ># aptitude install sudo > ~su root > # adduser USERNAME sudo > • ajouter l’utilisateur dans le fichier sudoers Mais pour effectuer cette action il faut se logger en ROOT et invoquer visudo. Attention le fichier /etc/sudoers ne s’édite qu’avec VISUDO Bien que VISUDO fasse appel à NANO , ne pas éditer le fichier directement avec NANO, une erreur vous bloquerait et vous empêcherait de modifier plus avant vos droits. [email protected] 10/29 Ludovic MARCHAL Formation : TSGERI Session 2015/2016 Et nous rencontrerons ici un éditeur de texte nano : # # This file MUST be edited with the 'visudo' command as root. # # Please consider adding local content in /etc/sudoers.d/ instead of # directly modifying this file. # # See the man page for details on how to write a sudoers file. # Defaults env_reset Defaults mail_badpass Defaults secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:$ # Host alias specification # User alias specification # Cmnd alias specification # User privilege specification root ALL=(ALL:ALL) ALL # Allow members of group sudo to execute any command %sudo ALL=(ALL:ALL) ALL # Ici indiquer l’utilisateur USERNAME ALL=(ALL) ALL # See sudoers(5) for more information on "#include" directives: #includedir /etc/sudoers.d ^G Aide ^O Écrire ^R Lire fich.^Y Page préc.^K Couper ^C Pos. cur. Les commandes ^X Quitter ^J Justifier ^Wd’édition Chercher et ^Vd’enregistrement Page suiv.^U Coller du^Tdocument Orthograp. sont indiqués en bas de page. Contrôle est indiqué avec le symbole ^ contrôle + o pour écrire contrôle + x pour quitter La ligne en rouge indique que tous les utilisateurs du groupe SUDO sont ROOT. Il est possible de les ajouter individuellement. [email protected] 11/29 Ludovic MARCHAL Formation : TSGERI Session 2015/2016 Par la suite lorsqu’une commande sera indiquée de cette manière : ^O Il faudra lire : Ctrl plus O entré C’est beaucoup plus court et rapide à écrire. Éditeur de texte Les distributions GNU/Linux dispose de plusieurs éditeurs de texte, le plus simple étant NANO une évolution de PICO Les 2 fonctionnent de façon similaire. Cependant un outil réellement puissant existe, il s’agit de VI : un peu déroutant au début lorsque l’on ne trouve pas les informations adéquates. Dans un premier temps je recommande l’installation de VIM : une version améliorée de VI. Je mets également un script à disposition sur GitHub , après récupération et exécution du script celui-ci va installer quelques utilitaires notament VIM et Most et les définir par défaut comme « editeur » et comme lecteur. Ainsi que les manpages en français. Si l’utilisateur ne dispose pas de connectivité il peut copier le script de la page suivante dans un editeur de texte, le nommer et le rendre executable avec un : >~ chmod +x file >~ ./file Comme vu précédemment l’extension n’est pas obligatoire néanmoins elle permet de reconnaître de quoi il s’agit visuellement, sinon veillez à les ranger dans un répertoire dédié : script pourrait convenir. [email protected] 12/29 Ludovic MARCHAL Formation : TSGERI Session 2015/2016 #! /bin/bash ## ## ## # In case ctrl+c is pressed, restore terminal color and prompt settings, then exit function ctrl_c() { echo echo "Exiting script..." echo tput sgr0 stty $sttysettings exit 0 } # If no su privileges available, try to get them if [[ ! "$(whoami)" == "root" ]] ; then echo -e "\nordinatous et #!++ " # No sudo available? Then we can't get su privs. Advise and exit if [[ $(which sudo) == "" ]] ; then echo "'sudo' package missing! Please install." echo "e.g.: apt-get install sudo" exit 1 fi echo "Requesting su permissions..." # Run this script with sudo privs sudo $0 $* # If running this script with su privs failed, advise to do so manually and exit if [[ $? > 0 ]] ; then echo echo "Acquiring su permission failed!" echo "Please run this script with sudo permissions!" echo "(e.g. 'sudo $0' or 'sudo bash $0')" echo exit 1 fi exit 0 fi apt-get install most apt-get install dnstop apt-get install htop apt-get install cpuinfo apt-get install sysstat apt-get install vim apt-get install manpages-fr apt-egt install manpages-extra export PAGER="most" export EDITOR="vim" exit 0 sources ~/home/$USER/.bashrc exit 0 # Exit script ctrl_c [email protected] 13/29 Ludovic MARCHAL Formation : TSGERI Session 2015/2016 Outils réseau Dig Dig permet d’interroger les bases de noms des serveurs DNS ; voici quelques commandes utiles. Demander un simple enregistrement : A # dig ordinatous.com ; <<>> DiG 9.9.5-9+deb8u6-Debian <<>> ordinatous.com ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 41094 ;; flags: qr rd ra ad; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 4096 ;; QUESTION SECTION: ;ordinatous.com. IN A ;; ANSWER SECTION: ordinatous.com. A 3600 IN 213.186.33.24 ;; Query time: 311 msec ;; SERVER: 127.0.0.1#53(127.0.0.1) ;; WHEN: Sat Jun 11 12:47:20 CEST 2016 ;; MSG SIZE rcvd: 59 [email protected] 14/29 Ludovic MARCHAL Formation : TSGERI Session 2015/2016 SOA # dig AAAA ordinatous.com ; <<>> DiG 9.9.5-9+deb8u6-Debian <<>> AAAA ordinatous.com ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 42328 ;; flags: qr rd ra ad; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 4096 ;; QUESTION SECTION: ;ordinatous.com. IN ;; AUTHORITY SECTION: ordinatous.com. 300 86400 3600 3600000 300 IN AAAA SOA dns108.ovh.net. tech.ovh.net. 2016061101 ;; Query time: 242 msec ;; SERVER: 127.0.0.1#53(127.0.0.1) ;; WHEN: Sat Jun 11 12:54:01 CEST 2016 ;; MSG SIZE rcvd: 98 Interroger un serveur racine : # dig @a.nic.fr A ordinatous.com ; <<>> DiG 9.9.5-9+deb8u6-Debian <<>> @a.nic.fr A ordinatous.com ; (2 servers found) ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: REFUSED, id: 19050 ;; flags: qr rd; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1 ;; WARNING: recursion requested but not available ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 4096 ;; QUESTION SECTION: ;ordinatous.com. IN A ;; Query time: 218 msec ;; SERVER: 194.0.9.1#53(194.0.9.1) ;; WHEN: Sat Jun 11 12:56:49 CEST 2016 ;; MSG SIZE rcvd: 43 Outil d’analyze de Berkeley :http://n2.netalyzr.icsi.berkeley.edu/analysis/ [email protected] 15/29 Ludovic MARCHAL Formation : TSGERI Session 2015/2016 VIM Les règles de base : Taper : i → Passer en mode insértion. Taper Echap pour repasser en mode Normal. x → Supprimer le caractère sous le curseur :wq → Sauvegarder et quitter (:w sauvegarde, :q<enter> quitter) dd → Supprimer (et copier) la ligne courante p → Coller Récommandées : hjkl (optionnel) → se déplacer (<-↓↑→). Souvenez vous j ressemble à une flèche vers le bas. :help <commande> → Affiche l’aide pour <commande>. Vous pouvez aussi écrire :help pour atterir sur l’aide générale. J’écrirais alors la commande VIM : :wq ! Comprendre : : plus w plus q plus ! entrée Insertion a → Comme i, mais après la position du curseur. o → Comme i, mais à la ligne suivante. O → Comme o mais ajoute la ligne avant. cw → Remplacer la fin du mot. Déplacements 0 → Aller à la première colonne. ^ → Aller au premier caractère de la ligne. $ → Aller à la fin de la ligne. g_ → Aller au dernier caractère de la ligne. /pattern → Rechercher pattern dans le fichier. [email protected] 16/29 Ludovic MARCHAL Formation : TSGERI Session 2015/2016 Copier/coller P → Coller avant. Souvenez vous, p colle après la position du curseur. yy → Copier la ligne courante. C’est plus simple et équivalent à ddP Annuler/refaire u → Annuler (undo) <C-r> → Refaire Ouvrir/Sauvegarder/Quitter/Changer de fichier (buffer) :e <path/to/file> → Ouvrir. :w → Sauvegarder. :saveas <path/to/file> → Sauvegarder sous … :x, ZZ ou :wq → Sauvegarder et quitter (:x sauvegarde seulement si nécessaire). :q! → Quitter sans sauvegarder. De même :qa! quitte même si d’autres fichiers (buffers) ont des modifications non sauvegardées. :bn (resp. :bp) → Affiche le fichier suivant (resp. précédent). Répétitions . → Le caractère point répètera la dernière commande. Très utile. N<commande> → répètera la commande N fois. 2dd → Supprimera 2 lignes 3p → copiera 3 fois d’affiler le texte copié 100idesu [ESC] → écrira “desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu” . → Juste après la dernière commande réécrira les 100 “desu”. 3. → Écrira 3 “desu” et non pas 300. Bien vu n’est-ce pas ? [email protected] 17/29 Ludovic MARCHAL Formation : TSGERI Session 2015/2016 Autres déplacements NG → Aller à la ligne N gg → raccourci pour 1G, retourner au début du fichier G → Aller à la dernière ligne. w → aller au début du mot suivant e → aller à la fin du mot courant Par défaut les mots sont seulement composés de lettres (et du caractère souligné _). Appelons un MOT un ensemble de lettre séparé par des caractères blancs (espaces, tabulation). Si vous voulez considérer des MOTS alors il suffit d’utiliser les majuscules. W → aller au début du MOT suivant E → aller à la fin du MOT courant % : Aller à la parenthèse, accolade, crochet correspondante. * (resp. #) : Aller à la prochaine (resp. précédente) occurrence du mot sous le curseur Tips and tricks <position de depart><commande><position d'arrivee> Par exemple : 0y$ 0 → Aller au début de la ligne, y → copie à partir d’ici, $ → jusqu’à la fin de cette ligne. [email protected] 18/29 Ludovic MARCHAL Formation : TSGERI Session 2015/2016 On peut donc faire des choses comme ye, copie à partir de la position courante du curseur jusqu’à là fin du mot. Mais aussi: y2/toto copie jusqu’à la seconde prochaine occurrence de “toto”. Ce qui est vrai pour y (yank → copier), est aussi vrai pour d (delete → supprimer), v (sélection visuelle), gU (uppercase → majuscule),gu (lowercase → minuscule), etc. Plus compliqué (ou simple) Déplacement en colonne 0 ^ $ g_ f F t T , ; 0 → aller à la colonne 0, ^ → aller au premier caractère de la ligne $ → aller à la dernière colonne de la ligne g_ → aller au dernier caractère de la ligne fa → vous amène à la prochaine occurrence de a sur la ligne courante. , (resp. ;) recherche l’occurrence suivante (resp. précédente). t, → vous amène juste avant le ,. 3fa → recherche la 3ième occurrence de a. F et T → comme f et t mais en arrière. Un truc pratique : dt" → supprime tout jusqu’au prochain ". [email protected] 19/29 Ludovic MARCHAL Formation : TSGERI Session 2015/2016 Variables d’environnement Si vous avez fait attention ; dans le script proposé plus haut, vous aurez constaté ceci : apt-get install most Cette commande installera most qui est un lecteur, un afficheur de texte avec une coloration syntaxique. export PAGER="most" Cette commande va définir most comme pager par défaut, en exportant la variable d’environnement PAGER Et si vous avez fait « très » attention : apt-get install manpages-fr apt-egt install manpages-extra Il y a une coquille et je rappelle qu’il ne faut pas copier/coller sans comprendre. Ces 2 commandes (après correction et c’est une habitude à prendre) vont installer les pages de manuel en français. Et si vous avez cherché un peu vous aurez constaté la présence de cette ligne : sources ~/.bashrc Cette commande met à jour votre .bashrc Et c’est par la suite que MOST prend du sens car lorsque vous appellerez votre man-page celui-ci aura une coloration ce qui est très pratique et agréable à la lecture. Les variables d’environnement sont lus au lancement du SHELL, les variables définissent les répertoires contenant les executables autorisées. Nous avons besoin d’un interpréteur de commande SH, KSH ou BASH , BASH est celui par défaut sous GNU/Linux. [email protected] 20/29 Ludovic MARCHAL Formation : TSGERI Session 2015/2016 SHELL Le Shell est notion qui n’est pas des plus aisés à cerner lorsque l’on a pas l’habitude d’évoluer dans le milieu Unix-like. Le shell est une « couche » entourant votre « noyau » (kernel), il vous permet de communiquer avec votre noyau Linux. Le shell est un interpréte, il va interpréter les commandes que vous passez dans votre « terminal » ; il existe plusieurs shell : • sh Thmpson Shell (dead) • sh bourne shell (le remplaçant) • bash bourne again shell (très répandu) • ksh korn shell • csh C shell • zsh Z shell (très puissant) • ash A shell • dash Debian Almquist Shell La liste des shells disponible se trouve dans : /etc/shells # /etc/shells: valid login shells /bin/sh /bin/dash /bin/bash /bin/rbash /usr/bin/screen /bin/ksh93 [email protected] 21/29 Ludovic MARCHAL Formation : TSGERI Session 2015/2016 Schémas systèmique Ordre de lecture des fichiers du shell Lecture des variables d’environnements Aperçu du bashrc MOTD= Message of the Day Exemple d’aliases [email protected] 22/29 Ludovic MARCHAL Formation : TSGERI Session 2015/2016 Le TERMINAL A l’origine le terminal était une machine à elle seule, avec un clavier (stdin) qui éventuellement n’avait pas d’écran mais une imprimante . (stdout) (stderr) Le shell a besoin du terminal pour s’executer…, ce terminal est émulé par une console virtuelle : comportement par défaut sans démarrage du serveur graphique pour un serveur en règle générale. Plusieurs console sont disponible on y accède à l’aide de : ctrl+F2 à ctrl+F6 Existe également des terminaux graphiques lorsque le serveur graphique est démarré typiquement le cas pour une station de travail. Il est possible de basculer sur la console virtuelle à l’aide de : ctrl+F1 à ctrl+F6 Retourner à la session graphique à l’aide de : ctrl+F2 .bashrc Le lancement du terminal demande la lecture de .bashrc [email protected] 23/29 Ludovic MARCHAL Formation : TSGERI Session 2015/2016 Le Message of the day est un message personnalisé qui apparaît à l’ouverture du terminal, retournant un certains nombre d’information. ###°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°### ### ### ########~~~~~~~~~~Message of the day~~~~~~~~~~~~~~~~~~~~### ### ### ###_____________________________________________________### echo -e "${LIGHTGRAY}";figlet -ct -f speed "Crunch Bang plus plus" echo -e "${LIGHTRED}Bonjour, $USER. La forme ? " echo -ne "${LIGHTPURPLE}Nous sommes le:${LIGHTPURPLE}"`date` echo -e "${LIGHTPURPLE}Kernel Information:${LIGHTPURPLE}"`uname -sr` echo -ne "${LIGHTCYAN}" `uptime`; if [ "$color_prompt" = yes ]; then J’utilise une police de caractère un peu particulière pour annoncer le nom de ma distribution. Figlet = Franck, Ian and Glenn’s LETters ORIGIN ``FIGlet'' stands for ``Frank, Ian and Glenn's LETters''. Inspired by Frank's .sig, Glenn wrote (most of) it, and Ian helped. Most of the standard FIGlet fonts were inspired by signatures on various UseNet articles. Since typically hundreds of people use the same style of letters in their signatures, it was often not deemed necessary to give credit to any one font designer. Disponible ici:figlet.org On peut voir également des variables couleurs sous cette forme : ${LIGHTGRAY} ${LIGHTRED} [email protected] 24/29 Ludovic MARCHAL Formation : TSGERI Session 2015/2016 Elles sont définies dans le fichier comme ceci : ###°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°### ###-----------------Aide mémoire couleur Terminal------------########### ###_____________________________________________________### BLACK='\e[0;30m' BLUE='\e[0;34m' GREEN='\e[0;32m' CYAN='\e[0;36m' RED='\e[0;31m' PURPLE='\e[0;35m' BROWN='\e[0;33m' LIGHTGRAY='\e[0;37m' DARKGRAY='\e[1;30m' LIGHTBLUE='\e[1;34m' LIGHTGREEN='\e[1;32m' LIGHTCYAN='\e[1;36m' LIGHTRED='\e[1;31m' LIGHTPURPLE='\e[1;35m' YELLOW='\e[1;33m' WHITE='\e[1;37m' NC='\e[0m' # No Color La variable $USER est appelée pour indiquer le nom de l’utilisateur avec lequel nous sommes authentifié dans le système. Bonjour, xtbushido. La forme ? Date = indique la date : Nous sommes le:samedi 11 juin 2016, 17:36:30 (UTC+0200) uname -sr == indication sur le système et le kernel Kernel Information:Linux 4.0.0-kali1-amd64 uptime= indique l’heure, le temps d’activité du systèmes, le nombre d’utilisateurs ainsi que la « charge » système. 17:36:30 up 20:17, 4 users, load average: 0,12, 0,20, 0,21 Le prompt Le prompt est juste cette partie , également personnalisée. Le PS1 est le prompt personnalisé PS1="\e[1;32m\O/ \e[1;33m[\[\e[1;33m\]\u@\e[1;31m\h\[\e[m\]\e[1;33m]\e[1;34m-\e[1;37m[\e[1;34m\w\\e[1;37m]\e[1;34m-[\$ (date +%k:%M)]-->\n\e[0;37m>~ " # black, cyan, blue, black, w/black output (2-tier) Le petit bonhomme tout content (moi) est indiqué comme ceci : \e[1;32m=(le code couleur) \O/=(les caractères) le username et le host : \e[1;33m[\[\e[1;33m\]\u@\e[1;31m\h\[\e[m\]\e[1;33m] [email protected] 25/29 Ludovic MARCHAL Formation : TSGERI Session 2015/2016 Il faut jouer avec le caractère d’échapement afin de pouvoir indiquer le message que l’on souhaite et colorer les bonne partie avec la bonne couleur, on découvre au fur et à mesure des tentatives. Pratique • ctrl+a= aller en début de ligne • ctrl+e=aller en fin de ligne • ctrl+l=efface le contenu du terminal • ctrl+u=efface la ligne jusqu’au début • ctrl+k=efface la ligne jusqu’à la fin [email protected] 26/29 Ludovic MARCHAL Formation : TSGERI Session 2015/2016 Commande date=indique la date précisément chez moi %(date +%k:%M) n’indiquera que l’heure et les minutes >~ date +%k:%M 17:47 pwd= « print work directory » in dique ou l’on se situe >~ pwd /home/xtbushido whoami=indique le user actuel who=indique qui est logé, sur quel terminal, ainsi que le type de terminal. >~ who xtbushido pts/1 xtbushido pts/2 2016-06-11 13:38 (:0.0) 2016-06-11 17:17 (:0.0) Pts/1 est celui qui est utilisé au lancement de la machine pts/2 est celui qui est ouvert pour entrer la commandes >~ who xtbushido pts/1 xtbushido pts/2 xtbushido tty4 2016-06-11 13:38 (:0.0) 2016-06-11 17:17 (:0.0) 2016-06-11 17:20 tty4 est la console ctrl+F4 sur laquel j’ai basculé. Tty signfie TéléTypeWriter. Echo Echo permet d’afficher du texte, comme pour le MOTD (Message Of The Day). Le guillemets « « ou les apostrophes ‘’ servent à délimiter du texte. Manipulation de fichiers Déplacement [email protected] 27/29 Ludovic MARCHAL Formation : TSGERI Session 2015/2016 Man-page Au sujet des man-pages : RTFM Les systèmes Gnu/Linux dispose de pages de manuel, nous avons donc installé les man-pages en français, ainsi qu’un lecteur avec coloration, il n’y a aucune raison de ne pas les lire. >~man man Ici le man-page du man, c’est bien pratique. [email protected] 28/29 Ludovic MARCHAL Formation : TSGERI Session 2015/2016 Base de données Nous trouverons régulièrement db ; ou DB pour signifier Base de Données. SGBDR= Système de Gestion de Base de Données Relationnelle SQL NoSQL=Not Only SQL [email protected] 29/29