[ CATEGORIE ] : Linux

[ TITLE    ] : mktemp - Créer fichiers temporaires
[ CATEGORY ] : //
[ DATE     ] :

La commande mktemp (create a temporary file or directory) permet de créer dans /tmp un fichier ou un répertoire temporaire avec un nom (ou un prefixe ou un suffixe) aléatoire unique. La commande s’utilise comme tel : # mktemp [OPTION]... [TEMPLATE] UtilisationscommandesCréation d’un fichier temporaire dans /tmp: # mktemp Ajouter un préfixe, les XXX sont la partie aléatorie, vous pouvez en mettre autant que vous voulez : # mktemp monFichier_XXX Ajouter un suffixe : # mktemp monFichier_XXX --su

[ TITLE    ] : Vider le swap
[ CATEGORY ] : //
[ DATE     ] :

Le but est de démonter le swap pour le faire basculer dans la RAM avant de le remonter. VérificationVérifier si le host a suffisement de RAM libre pour contenir le SWAP : # free -h total used free shared buff/cache availableMem: 3,9Gi 2,5Gi 3,1Gi 2,3Gi 2,2Gi 3,2GiSwap: 3,7Gi 2,1Gi 3,5Gi Swap used : 2,1 GoRAM free : 3,1Go Swappoff & SwapponPour vider le swap il faut le démonter et le remonter : # sw

[ TITLE    ] : MAGIC-COOKIE, .Xauthority et Xauth
[ CATEGORY ] : //
[ DATE     ] :

Xwindow est conçu pour fonctionner en réseau, il est ainsi possible de lancer une application sur une machine et de déporter l’affichage sur une autre. Le moyen sécurisé d’autoriser des connexions à un serveur X (avec des machines sur un LAN sécurisé) est d’utiliser la commande xauth, elle garanti l’authentification entre deux machine via un secret partagé : le MAGIC-COOKIE, qui est une chaîne de 128 bits (la communication reste cependant en clair et le MAGIC-COOKIE peut être récupéré). Commande

[ TITLE    ] : Subscription Manager
[ CATEGORY ] : //
[ DATE     ] :

Le programme client subscription-manager enregistre un système auprès de Red Hat (basé sur des certificats). Red Hat fournit des mises à jour et une assistance en émettant desabonnements pour ses produits. Ces abonnements sont affectés à des systèmes (machines). EnregistrementSi une machine n’a jamais été enregistrée (pas même lors du premier démarrage), la commande register enregistrera la machine selon la configuration de /etc/rhsm/rhsm.conf. Fichier de confExtrait du fichier /etc/rhsm/rhsm.c

[ TITLE    ] : NTP et PTP synchronisation
[ CATEGORY ] : //
[ DATE     ] :

Pour vérifier la synchronisation des protocoles NTP (Network Time Protocol) et PTP (Precision Time Protocol) sur vos serveurs et clients. Vérifier la synchronisationIl est nécessaire d’exécuter les actions sur le serveur et les clients. NTP - Network Time ProtocolVérifiez si le service NTP est en cours d’exécution : # systemctl status chronyd Vérifiez si les clients sont synchronisées avec le serveur NTP : # chronyc tracking Exemple de sortie : Reference ID : 0A424242 (mon-serveur-test.my.c

[ TITLE    ] : Vim - Cursor Line & Column
[ CATEGORY ] : //
[ DATE     ] :

Il est possible de surligner la ligne et la colonne où le curseur est positionné. Cette forme de visualisation est pratique pour les fichiers de types YAML par exemple. Dans Vim, en mode commande (touche Echap). Paramétrer l’affichage des lignesAfficher les lignesPour avoir un trait vertical taper, au choix : :set cuc:set cursorColumn Pour avoir un trait horizontal taper, au choix : :set cul:set cursorLine Surligner : :highlight cursorLine cterm=underline:highlight cursorColumn cterm=underli

[ TITLE    ] : Soft Link & Hard Link
[ CATEGORY ] : //
[ DATE     ] :

Comment différencier un lien symbolique (soft) d’un lien en dur sous Linux. Pour rappel, un lien se créé avec la commande ln. Pour les dossiers, seuls les liens symboliques sont possibles : # ln MonFichier hardLink# ln -s MonFichier symbolicLink Différences HardLink et SoftLink HardLink SoftLink Accessible en utilisant plusieurs noms Accessible par de nombreuses références pointant vers le fichier originel Si fichier d’origine supprimé : lien toujours accessible Si fichier d’origine supp

[ TITLE    ] : Commande ls - Type de fichier
[ CATEGORY ] : //
[ DATE     ] :

La commande ls avec l’option -l permet de connaître le type de fichier en se basant sur la 1ère lettre de la sortie. L’option -F permet quand à elle d’aouter un symbole correspondant au type de fichier listé. Elle ne peut pas toujours se combiner à l’option -l, par exemple avec les liens symboliques où le @ ne s’affiche pas. Option de lsManuelExtrait du manuel : -F, --classify append indicator (one of */=>@|) to entries Les commandes à utiliser : # ls -F <chemin># ls -lF <chemin>

[ TITLE    ] : Imprimer en ligne de commande
[ CATEGORY ] : //
[ DATE     ] :

La commande lp permet de gérer les impressions en ligne de commande sous Linux avec le serveur d’impression CUPS (Common Unix Printing System). Serveur d’impression CUPSIntallationPour intaller le serveur d’impression CUPS : # apt install lprng ConfigurationLes fichiers de configuration de CUPS se trouvent dans /etc/cups/printers.conf. Pour partager l’imprimante il faut lui préciser son @IP, son port et mettre Shared Yes : # Printer configuration file for CUPS v1.4.3# Written by cupsd# DO NOT

[ TITLE    ] : Usermod - Modifier le /etc/passwd
[ CATEGORY ] : //
[ DATE     ] :

Pour modifier les informations d’un utilisateur contenues le /etc/passwd on utilise usermod. UtilisationExtrait du manuelExtrait du manuel : -d, --home HOME_DIR new home directory for the user account-e, --expiredate EXPIRE_DATE set account expiration date to EXPIRE_DATE-f, --inactive INACTIVE set password inactive after expiration to INACTIVE-g, --gid GROUP force use GROUP as new primary group-G, --groups GROUPS new list of supplementary GROUPS-a, --app

[ TITLE    ] : sftp en ligne de commande
[ CATEGORY ] : //
[ DATE     ] :

La commande sftp permet de transférer (upload/download) des fichiers sur un serveur ou un hôte. Connexion avec sftpConnexion à un hôte distantPour établir une connexion SFTP : # sftp username@IP_or_host Pour préciser le port : # sftp -P port_num username@IP_or_host Transfert de fichiersDownloadPour télécharger des fichiers qui sont sur votre serveur sftp : sftp> get monFichier.txt Pour télécharger plusieurs fichiers : sftp> mget /chemin/*.ext Pour télécharger un dossier complet : sftp&

[ TITLE    ] : ldapsearch
[ CATEGORY ] : //
[ DATE     ] :

Sur un contrôleur de domaine Windows, ou sur un serveur Linux OpenLDAP, le protocole LDAP permet de centraliser l’authentification. La commande ldapsearch permet de rechercher des entrées dans une arborescence d’annuaires LDAP Configuration du serveur LDAPPour voir la configuration de votre LDAP, on utilise les options cn=config et -Y suivi de EXTERNAL, avoir accès à la configuration est utile pour par exemple modifier les contrôles d’accès ou modifier le mot de passe root. La commande doit être

[ TITLE    ] : Utilisateurs connectés et activités
[ CATEGORY ] : //
[ DATE     ] :

La commande w affiche les utilisateurs connectés et ce qu’ils font. Commande wUtilisationExtrait du manuel : w [options] user [...] OptionsLes options sont peu nombreuses et se résument à : -h : ne pas afficher l’entête -s : short format, sans les colonnes JCPU et PCPU -u : Ignores the username while figuring out the current process and cpu times -f : n’affiche pas le champ FROM -V : affiche la version. <username> : affiche les informations d’un utilisateur FichiersLa commande fait app

[ TITLE    ] : Commande dmidecode
[ CATEGORY ] : //
[ DATE     ] :

La commande dmidecode est un outil permettant d’utiliser la table DMI (Desktop Management Interface) ou MBIOS (System Management BIOS) pour afficher les informations des composants matériels du système, numéros de série, etc. Les deux normes sont étroitement liées et développées par le DMTF (Desktop Management Task Force). UtilisationExtrait du manuelL’aide nous indique que la commande s’utilise sous la forme : # dmidecode <options> ExemplesLes commandes suivantes sont équivalentes : # dm

[ TITLE    ] : Linux - LUKS
[ DATE     ] :

LUKS (Linux Unified Key Setup) est un standard associé au noyau Linux pour chiffrer les disques. Le standard LUKSFonctionnalitésLUKS permet de chiffrer l’intégralité d’un disque de telle sorte que celui-ci soit utilisable sur d’autres plates-formes et distributions de Linux (voire d’autres systèmes d’exploitation). Il supporte des mots de passe multiples afin que plusieurs utilisateurs soient en mesure de déchiffrer le même volume sans partager leur mot de passe. ImplémentationsSous Linux, l’imp

[ TITLE    ] : Linux - "passwd Module is unknown"
[ CATEGORY ] : //
[ DATE     ] :

Pour vérifier la force d’un mot de passe, le module pam_pwquality.so est utilisé dans CentOS/RHEL6 pour vérifier la force du mot de passe. Dans CentOS/RHEL7 c’est le module pam_cracklib.so. Problème de changement de mot de passeAvec passwdLors de la modification du mot de passe à l’aide de la commande passwd, l’erreur suivante s’affiche : # passwd user42passwd: Module is unknown Cette erreur vient du fait que le module pam_pwquality.so est inconnu dans CentOS/RHEL6. Fichier de configurationSup

[ TITLE    ] : Xauthority
[ CATEGORY ] : //
[ DATE     ] :

Lorsque vous voulez vous connecter à un logiciel qui a besoin des droits root dans un environnement graphique depuis ssh, si les MAGIC-COOKIE ne sont pas définis dans le fichier .Xauthority de root il ne sera alors pas possible pour un utilisateur de se conecter (et de lancer ledit logiciel). Récupérer les MAGIC-COOKIELe but ici est de récupérer le contenu du .Xauthority (qui contient les MAGIC-COOKIE) d’un utilisateur pour l’ajouter à celui de root. Problème de fichier avec FirefoxPar exemple a

[ TITLE    ] : Grep OR AND NOT
[ CATEGORY ] : //
[ DATE     ] :

Dans grep il existe des options équivalentes aux opérateurs OR et NOT mais l’opérateur AND n’existe pas, cependant une alternative est possible. Fichier de testLe fichier suivant a été utilisé : # cat ponies.txt100 TwilightSparkle Organisation Unicorn 500€200 RainbowDash Sport Pegase 550€300 Fluttershy Veterinaire Pegase 700€400 PinkiePie Organisation Pouliche 950€500 Rarity Organisation Unicorn 600

[ TITLE    ] : Compte vérouillé
[ CATEGORY ] : //
[ DATE     ] :

Pour enlever le lock suite à plusieurs echecs de connexion à un compte (mauvais mdp) on utilise les commandes faillock, faillog ou pam_tally. Parfois faillock et faillog ne fonctionnent pas. Dans ce cas, utilisez pam_tally. Problèmes rencontrésSur certains sytèmes la commande faillock n’existe pas mais la commande faillog fait à peu près la même chose : faillock : outil d’affichage et de modification des fichiers d’enregistrement des échecs d’authentification faillog : affiche les enregistreme

[ TITLE    ] : Désactiver un compte
[ CATEGORY ] : //
[ DATE     ] :

Pour désactiver un compte, les mesures principales de sécurité permettant d’assurer une protection minimale sont : Lister les accès : serveurs et machines locales Réinitialisation du mot de passe du compte avec une valeur aléatoire Verrouillage du compte Retrait du compte de l’ensemble des groupes secondaires Créer un groupe spécial pour les comptes désactivés Pour un compte administrateur ou un utilisateur élevé : Vérifier les paramètres du fichier /etc/sudoers Retrait des %sudoers Retrai

[ TITLE    ] : Astuces avec la commande ls
[ CATEGORY ] : //
[ DATE     ] :

La commande ls liste les informations sur les fichiers/dossiers Utilisation : ls [OPTION]... [FICHIER]... Afichage étenduAffiche le chemin complet : # ls -ld $PWD/* Affiche l’auteur de chaque fichier # ls -l --author Affiche le numéro d’index de chaque fichier (l’inode) # ls -li Affiche la taille d’allocation de chaque fichier en bloc # ls -ls Affiche uniquement les UID et GID pour les groupes et propriétaires # ls -ln

[ TITLE    ] : Commande wc
[ CATEGORY ] : //
[ DATE     ] :

La commande wc (World Count) accepte un ou plusieurs noms de fichiers mais peut aussi lire la sortie de la console. Sans options, la commande WC imprimera quatre colonnes : nombre de lignes nombre de mots nombre d’octets nom du fichier (si recherche dans fichier) UtilisationsExtrait du manuelL’aide console : -l, –lines Imprimez (que) le nombre de lignes-w, –words Imprimez (que) le nombre de mots-m, –chars Imprimez (que) le nombre de caractères-c, –bytes Imprimez (que) le nombre d’octets-L, –Ma

[ TITLE    ] : Usermod - Ajouter un groupe
[ CATEGORY ] : //
[ DATE     ] :

Pour ajouter/changer un groupe à un utilisateur on utilise usermod - mais - il faut faire attention aux options sinon tous les anciens groupes de l’utilisateur seront supprimés. UtilisationExtrait du manuelExtrait du manuel : -d, --home HOME_DIR new home directory for the user account-e, --expiredate EXPIRE_DATE set account expiration date to EXPIRE_DATE-f, --inactive INACTIVE set password inactive after expiration to INACTIVE-g, --gid GROUP force use GROUP as new

[ TITLE    ] : Erreur avec le caractere *
[ CATEGORY ] : ////
[ DATE     ] :

Le caractère * permet de selectionner tous les fichiers dans un répertoire mais un message d’erreur peut apparaitre : ls: cannot access *: No such file or directory. La plupart du temps cette erreur, malgré la connexion en root, peut être dûe au fait que le volume sur lequel on accèdent soit partagé, ou sous couvert de NetApp par exemple. $ sudo ls /<path>/*ls: cannot access *: No such file or directory Autre exemple : $ grep "word" /<path>/*grep: *.*: No such file or direc

[ TITLE    ] : Commande chage
[ CATEGORY ] : //
[ DATE     ] :

La commande chage (change age) permet de modifier les informations de validité d’un mot de passe d’un utilisateur : nombre de jours entre les changements de mot de passe et la date du dernier changement. Elle est également très pratique pour forcer un utilisateur à changer son mot de passe lorsqu’un mot de passe temporaire lui a été attribué lors d’un oubli. Commande chageL’aide (extrait) : -d, --lastday LAST_DAY Configurer le nombre du jour où le mot de passe a été changé la dernière foi

[ TITLE    ] : ABRT - ‘abrt-cli status’ timed out
[ CATEGORY ] : //
[ DATE     ] :

ABRT pour Automatic Bug Reporting Tool, est un démon ainsi qu’un certain nombre de services système et d’utilitaires pour traiter, analyser et signaler les problèmes détectés. ERREUR : ‘abrt-cli status’ timed outVoir le statut : # systemctl status abrtd Voir les logs dans /var/log/messages # cat /var/log/messages | grep abrt Sortie : Jun 8 17:38:24 master abrtd: Lock file '.lock' is locked by process 9462 Kill le process. Relancer le service arbt. ListerPour avoir des informations

[ TITLE    ] : Variables et modules d'environnement
[ CATEGORY ] : //
[ DATE     ] :

Principales différences entre une variable d’environnement et un module d’environnement. Variables d’environnementLes variables d’environnemt permettent de communiquer des informations entre différentes applications et sont fournies par l’OS. Manipuler les variablesPour lister les variables d’environnemt : # printenv# env# echo $NOM_VAR Pour définir une variable d’environnement : # export $NOM_VAR=valeur Pour supprimer une variable d’environnement : # unset $NOM_VAR Exemples les plus courants

[ TITLE    ] : Librairie Linux
[ CATEGORY ] : //
[ DATE     ] :

Les librairies (blibliothèques) sous Linux sont un ensemble de fonctions, classes et méthodes regroupées dans un seul fichier. Les avantages sont nombreux : réutilisation des composants donc une seule librairie à mettre à jour,plusieurs versions différentes d’une librairie peuvent cohabiter, les développeurs spécialisés peuvent se concentrer sur une seule librairie. Types de librairies Statiques Dynamiques Extension de fichier .a .so Exécution lié au programme référencé par les programme

[ TITLE    ] : Créer un service systemd
[ CATEGORY ] : //
[ DATE     ] :

Systemd est un ensemble de programmes destiné à la gestion système. Systemd se manipule grâce à la commande systemctl. Pour savoir si l’on est sous systemd ou System V : https://n0tes.fr/2022/01/12/SystemV-et-SystemD/ Créer un serviceCe service démarrera un script qui nous rappellera de faire une pause visuelle toutes les 30 minutes. On crée un fichier /etc/systemd/system/test.service [Unit]Description=Test de serviceAfter=tlp-init.service[Service]Type=oneshotRemainAfterExit=noExecStart=/usr/l

[ TITLE    ] : Le fichier /etc/sudoers
[ CATEGORY ] : //
[ DATE     ] :

Un système Linux est configuré avec un compte root possédant tous les droits sur le système et généralement un compte utilisateur membre du groupe sudo, dont le nom est défini à l’installation. Le fichier /etc/sudoers sert à déléguer des droits pour exécuter certaines actions sur la machine. Attention aux modifications car il est possible en cas d’erreur de perdre les accès administrateur de la machine. Editeur de texte recommandéIl est fortement recommandé d’utiliser l’éditeur de texte visudo

[ TITLE    ] : Hash MD5 et SHA
[ CATEGORY ] : //
[ DATE     ] :

Pour mémo, les diffents types de hashage sous linux et comment les comparer. Hasher un fichierHasher un fichier : # md5sum monfichier# shasum monfichier# sha1sum monfichier# sha224sum monfichier# sha256sum monfichier# sha384sum monfichier# sha512sum monfichier Génerer l’empreinte dans un fichierGénérer une empreinte : # md5sum monfichier > enpreinte.md5# sha256sum monfichier > enpreinte.sha256 Comparer des hashsVérification des hashages : # md5sum -c enpreinte.md5 < monfichier# sha25

[ TITLE    ] : Differences entre Debian et RedHat
[ CATEGORY ] : //
[ DATE     ] :

Debian et RedHat sont toutes deux des distributions Linux, le principe de fonctionnement reste le même mails ils existe des différences à prendre en compte. DifférencesDifférences politiquesLes différences “politiques” entre Debian et RedHat : Debian RedHat Open source Gratuit Projet Debian Développé par Red Hat Inc. Utilisée pour serveurs et clients Utilisée pour les serveurs Distribution non commerciale Distribution commerciale Correction de bugs très rapide (communauté mondiale)