[ CATEGORIE ] : Snippet

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

La commande printenv peut être utilisée pour répertorier toutes les variables d’environnement sur le système, certaines de ces valeurs changent en fonction de l’utilisateur connecté. Pour afficher toutes les variables d’environnement : # printenv Exemple de sortie : SHELL=/bin/bashPWD=/rootLOGNAME=alineXDG_SESSION_TYPE=ttyMOTD_SHOWN=pamHOME=/rootLANG=fr_FR.UTF-8LS_COLORS=rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:

[ TITLE    ] : Chmod différent pour fichier & dossier
[ CATEGORY ] : //
[ DATE     ] :

Pour changer des droits en fonction d’un répertoire ou d’un fichier en parcourant une arboressence : UtilisationManuelDéfinition dans les manuels : xargs — build and execute command lines from standard input exec — execute commands and open, close, or copy file descriptors Find et execLa commande find couplée à exec : # find <path> -type d -exec chmod 755 {} \;# find <path> -type f -exec chmod 644 {} \; Son équivalent avec les droits rxw : # find <path>

[ 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    ] : Commandes serial disk Netapp
[ CATEGORY ] : //
[ DATE     ] :

Pour chercher les numéros de série des disques durs sur Netapp : # disk show -v# sysconfig -a# rdfile /etc/serialnum# system show -instance Documentationhttps://community.netapp.com/t5/ONTAP-Hardware/Serial-Number-command/m-p/14103https://docs.netapp.com/ocsc-42/index.jsp?topic=%2Fcom.netapp.doc.ocsc-isg%2FGUID-BE7E9ECD-0EED-4C16-8CDA-C767B1B80B5D.html

[ TITLE    ] : Commandes serial disk
[ CATEGORY ] : //
[ DATE     ] :

Pour chercher les numéros de série des disques durs : # smartctl -a # hwinfo -disk # hwinfo -wlan # hwinfo -monitor # hwinfo -partition # hwinfo -pci # hwinfo -scsi # demidecode # cat /proc/dma # lshw -short # lspci -t # lspci -v # lspci -vv # lspci -s

[ TITLE    ] : Exécuter un fichier bash
[ CATEGORY ] : //
[ DATE     ] :

Commande très triviale mais on oublie facilement comment la lancer… Les 3 façons d’éxécuter un .bashrcPour lancer un fichier bash dans un autre répertoire, ici c’est le fichier bash.bashrc :(Bien penser à mettre le point “.“) # . /etc/bash.bashrc Pour lancer un fichier bash dans le répertoire courant, ici c’esr le fichier .bashrc :(Bien penser à mettre le point “.“ et le tilde “~“) # . ~/.bashrc Il également possible d’utiliser la commande source, qui exécute des commandes (ici celles conte

[ TITLE    ] : ESXi - Emplacement de téléchargement ?
[ CATEGORY ] : //
[ DATE     ] :

Pour télécharger un ISO dans ESXi, il faut se positionner dans un datastore Télecharger l’iso d’une distributionSur la console ESXi, en se connectant en SSH, allez dans le répertoire où se trouve votre datastore (ici datastore1) /vmfs/volumes/datastore1. Le répertoire /vmfs/volumes/datastore<n> est prévu pour avoir plus de place Ensuite, un simple wget : # wget http://<adresse>/pfsense<version>.iso Note : certaines versions de ESXi n’acceptent pas les adresses en https lors d’

[ TITLE    ] : 32 bits ou 64 bits ?
[ CATEGORY ] : //
[ DATE     ] :

Commande rapide pour savoir sous quelle architecture on se trouve sous Linux # uname -m Si la commande renvoie x86_64 c’est du 64 bitsSi la commande renvoie i686 ou i386 c’est du 32 bits

[ TITLE    ] : find in files avec powershell
[ CATEGORY ] : //
[ DATE     ] :

Comment rechercher un terme dans des fichiers sous Powershell Get-ChildItem -Path f:\LE\CHEMIN\DOSSIER -Recurse | Select-String -Pattern "Mot-à-Chercher"

[ TITLE    ] : ip a
[ CATEGORY ] : //
[ DATE     ] :

L’utilisation de ifconfig est maintenant déprécié sur les nouvelles distributions et est remplacé par la commande ip a Pour avoir plus de facilité de lecture et un certain nombre d’informations importantes, les options à utiliser sont -stats, -color, -human, addr ou -s, -c, -h, a, soit, au choix : # ip -stats -color -human addr# ip -s -c -h a

[ TITLE    ] : Wayland ou Xorg ?
[ CATEGORY ] : //
[ DATE     ] :

Pour savoir si on se trouve sous Wayland ou Xorg # echo $XDG_SESSION_TYPE Documentationhttps://fr.wikipedia.org/wiki/X.Orghttps://fr.wikipedia.org/wiki/Wayland

[ TITLE    ] : Changer le PATH
[ CATEGORY ] : //
[ DATE     ] :

Pour afficher le PATH : # echo $PATH Pour changer le PATH # export PATH=$PATH:/un/nouveau/chemin

[ TITLE    ] : Find et grep
[ CATEGORY ] : //
[ DATE     ] :

Pour faire une recherche dans des fichiers : # find /chemin -name "*" -exec grep -Hn "chaine_de_caractère" {} \; Il existe deux autres alternatives plus pratiques : ack https://beyondgrep.com/, codé en Perl. ag https://github.com/ggreer/the_silver_searcher codé en C. Documentationhttps://beyondgrep.com/https://github.com/ggreer/the_silver_searcher Remerciements maddingue Merci à maddingue !

[ TITLE    ] : Mettre à jour un seul paquet
[ CATEGORY ] : //
[ DATE     ] :

Pour mettre à jour un unique paquet : # apt install --only-upgrade <NomduPaquet> Exemple : # apt install --only-upgrade sudoLecture des listes de paquets... FaitConstruction de l'arbre des dépendances Lecture des informations d'état... FaitLes paquets suivants seront mis à jour : sudo1 mis à jour, 0 nouvellement installés, 0 à enlever et 151 non mis à jour.Il est nécessaire de prendre 1 055 ko dans les archives.Après cette opération, 1 024 o d'espace disque supplémen

[ TITLE    ] : Version d'un paquet
[ CATEGORY ] : //
[ DATE     ] :

Si l’on souhaite mettre à jour un seul paquet il est utile de connaître sa version au préalable. # apt-cache policy <NomPaquet> Exemple : # apt-cache policy sudosudo: Installé : 1.8.19p1-2.1+deb9u2 Candidat : 1.8.19p1-2.1+deb9u3 Table de version : 1.8.19p1-2.1+deb9u3 500 500 http://security.debian.org/debian-security stretch/updates/main amd64 Packages *** 1.8.19p1-2.1+deb9u2 500 500 http://debian.mirrors.ovh.net/debian stretch/main amd64 Packages 100 /var/lib/d

[ TITLE    ] : Récupérer les Flux RSS
[ CATEGORY ] : //
[ DATE     ] :

Certaines adresses de flux RSS ne sont pas faciles a récupérer et d’autres comme celles de Twitter n’existent tout simplement plus (et dans ce cas il faut faire appel à des logiciels tierces). RSS : Really Simple Syndication Flux RSS YoutubeSi la chaine contient un nom d’utilisateur, donc une adresse du type https://www.youtube.com/user/user : https://www.youtube.com/feeds/videos.xml?user=USERNAME Si la chaine contient un identidiant, donc une adresse du type https://www.youtube.com/channel/ID

[ TITLE    ] : dpkg install & remove
[ CATEGORY ] : //
[ DATE     ] :

Pour vérifier l’état du paquet : # dpkg -l | grep Package Pour désinstaller la paquet mais tout en gardant les fichiers de configuration : # dpkg -r Package Pour supprimer complètement le paquets ainsi que ses fichiers de configuration : # dpkg -P Package Pour voir si le paquet a bien été désinstallé : # dpkg -l | grep Package Private joke de dpkg : # dpkg -r heartbeat-elasticdpkg: unrecoverable fatal error, aborting: impossible de mettre en forme /var/lib/dpkg/updates/tmp.i: Aucun espace d

[ TITLE    ] : Supprimer Historique Linux
[ CATEGORY ] : //
[ DATE     ] :

L’historique des commandes Linux se trouve dans le fichier ~/.bash_history Effacer complètement l’historique : # history -c Effacer une seule ligne de l’historique : # history -d <Numero de Ligne> Effacer une plage de lignes : # history -d start end Eventuellement en faisant une boucle for : # for (( i=ValeurMini; i<=ValeurMaxi; i++ )); do history -d $i; done DocumentationXa, le man de bash

[ TITLE    ] : Top 10 dans .bash_history
[ CATEGORY ] : //
[ DATE     ] :

Si vous souhaitez voir le TOP10 des commandes que vous utilisez le plus sur votre machine, il suffit d’utiliser cette commande : # cat ~/.bash_history | sort | uniq -c | sort -nr | head -n 10 Vous devriez avoir quelque chose comme : # cat ~/.bash_history | sort | uniq -c | sort -nr | head -n 579 systemctl reload nginx.service 77 vim /etc/nginx/nginx.conf 56 vim /etc/nginx/sites-available/n0tes.fr.conf23 docker ps -a22 git pull Documentationhttps://www.linux.org/threads/find-your-top-10-linux-c

[ TITLE    ] : SysV init ou Systemd ?
[ CATEGORY ] : //
[ DATE     ] :

Pour savoir rapidement si votre système utilise SysV init ou systemd : # ps -p 1 Plus précisément cette commande permet de savoir qui est le processus n°1

[ TITLE    ] : Vim en éditeur par défaut
[ CATEGORY ] : //
[ DATE     ] :

Pour changer l’éditeur par défaut de cron il faut modifier la variable #EDITOR et la prochaine ouverture d’un fichier (comme la crontab) se fera avec Vim # export EDITOR=vim

[ TITLE    ] : Diff
[ CATEGORY ] : //
[ DATE     ] :

Pour chercher les différences entre 2 fichiers # diff fichier1 fichier2