Auteur/autrice : starmate

18 juillet 2017 /

J’ai trouvé un petit script nommé G213Colors, pour modifier les couleurs des LED d’un clavier Logitech G213 Prodigy.

En pré-requis, avec faut avoir le module Python pour gérer les ports USB d’installé, et bien sur un clavier G213:

sudo apt-get install -y python-usb python3-usb

On télécharge le script :

wget https://raw.githubusercontent.com/SebiTimeWaster/G213Colors/master/G213Colors.py

Le script doit être exécuté avec les droits root pour pouvoir accéder au périphérique (ID 046d:c336 Logitech, Inc.).

Si on exécute le script sans argument, c’est l’aide qui s’affichera:

sudo python G213Colors.py

G213Colors - Changes the key colors on a Logitech G213 Prodigy Gaming Keyboard

Options:
-c Set the standard color (white)
-c <color> Set a custom color
-c <color1> ... <color5> Set custom colors for the 5 segments
-b <color> <time> Sets a color breathing animation
-x <time> Sets a color cycling animation

Please note:
* Color is a hex encoded color in the format RRGGBB
i.e. ff0000 is red, 00ff00 is green and so on,
abbreviated formats are not allowed
* Time is in milliseconds, range: 32 - 65535

Changer la couleur des touches en blanc ( le blanc a été fixer sur la couleur ffb4aa):

sudo python G213Colors.py -c

qui est similaire à

sudo python G213Colors.py -c ffb4aa

Changer la couleur de toutes les touches en rouge (ff0000):

sudo python G213Colors.py -c ff0000

Pour un effet « pulsation » rouge sur tout le clavier avec un délais de 6000 millisecondes:

sudo python G213Colors.py -b ff0000 6000

Rotation avec toutes les couleurs et un délais de 6000 millisecondes entre chaque transition:

sudo python G213Colors.py -x 6000

Changer les couleurs des 5 parties du clavier:

sudo python G213Colors.py -c 33ffff 00ff00 ff0000 ff6600 ff00cc

Cela ne fonctionne cependant pas pour les champs 4 et 5 qui vont conserver leur couleur.

Par exemple, pour les couleurs de la France, on commence par fixer les champs 4 et 5 en rouge:

sudo python G213Colors.py -c ff0000

Puis on fixe la couleurs des champs 1, 2 et 3 en bleu et blanc:

sudo python G213Colors.py -c 0000ff 0000ff ffb4aa ff0000 ff0000

ou

sudo python G213Colors.py -c 0000ff ffb4aa ffb4aa ff0000 ff0000

Personnellement j’utilise:

sudo python G213Colors.py -c 0000ff 0000ff 0000ff ff0000 ff0000

Si les couleurs ne veulent plus changer, il suffit de débrancher le clavier, puis de le rebrancher.

Pour l’activer au démarrage, on commence par déplacer le script dans un répertoire ou il ne sera pas supprimé par erreur:

sudo mkdir /usr/local/g213colors
sudo mv G213Colors.py /usr/local/g213/

On peut maintenant l’activer au démarrage:

sudo vi /etc/rc.local

Puis on ajoute ces lignes, en laissant bien à la fin la ligne « exit 0 »:

#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.

#Clavier G213
python /usr/local/g213/G213Colors.py -c 0000ff 0000ff 0000ff ff0000 ff0000

exit 0

Et voila!

Source

20 juin 2017 /

Pour cela nous devons installer exiv2:

apt-get install -y exiv2

Nous pouvons maintenant voir les métadonnées d’une photo via la commande suivante:

exiv2 /Photo/Divers/2016-12-04_13.34.46.jpg

File name : /Photo/Divers/2016-12-04_13.34.46.jpg
File size : 1114471 Bytes
MIME type : image/jpeg
Image size : 2048 x 1536
Camera make : Oneplus
Camera model : One
Image timestamp : 2016:12:04 13:34:45
Image number :
Exposure time : 1/500 s
Aperture : F2.8
Exposure bias : 0 EV
Flash : No flash
Flash bias :
Focal length : 3.6 mm
Subject distance:
ISO speed : 100
Exposure mode : Aperture priority
Metering mode : Center weighted average
Macro mode :
Image quality :
Exif Resolution : 2048 x 1536
White balance : Auto
Thumbnail : image/jpeg, 41311 Bytes
Copyright :
Exif comment :

Pour voir toutes les métadonnées (EXIF, IPTC et XMP):

exiv2 -pa /Photo/Divers/2016-12-04_13.34.46.jpg

Pour supprimer les métadonnées (par exemple avant de publier sur internet):

exiv2 rm /Photo/Divers/2016-12-04_13.34.46.jpg

Pour renommer une photo avec la date de prise de vue :

exiv2 -r %Y%m%d_:basename:_sujet rename /Photo/Divers/2016-12-04_13.34.46.jpg

Modifier le champ Copyright:

exiv2 -M"set Exif.Image.Copyright Ascii starmate.fr" /Photo/Divers/2016-12-04_13.34.46.jpg

Suppression du champ Copyright:

exiv2 -M"del Exif.Image.Copyright Ascii starmate.fr" /Photo/Divers/2016-12-04_13.34.46.jpg

Pour enlever 3 jours (-D), ajouter 5 mois (-O) et ajouter 10 heures (-a) à la date de prise de vue:

exiv2 -v ad -D -3 -O +5 -a +10:00:00 /Photo/Divers/2016-12-04_13.34.46.jpg

Modifier la date de prise de vue au 4 décembre 1984 à 11h34 et 55 secondes:

exiv2 -M"set Exif.Photo.DateTimeOriginal Ascii 1984:12:04 11:34:55" /Photo/Divers/2016-12-04_13.34.46.jpg
exiv2 -M"set Exif.Photo.DateTimeDigitized Ascii 1984:12:04 11:34:55" /Photo/Divers/2016-12-04_13.34.46.jpg

Pour renseigner le champs « auteur »:

exiv2 -M"set Exif.Image.Artist Ascii starmate production" /Photo/Divers/2016-12-04_13.34.46.jpg

Pour renseigner le champ description :

exiv2 -M "set Exif.Image.ImageDescription Ascii Anniversaire de Marie" /Photo/Divers/2016-12-04_13.34.46.jpg

Afficher une métadonnée en particulier (par exemple Exif.GPSInfo.GPSLatitude) :

exiv2 -g Exif.GPSInfo.GPSLatitude /Photo/Divers/2016-12-04_13.34.46.jpg

Extraire uniquement la valeur de la balise Exif.GPSInfo.GPSLatitude :

exiv2 -g Exif.GPSInfo.GPSLatitude -Pv /Photo/Divers/2016-12-04_13.34.46.jpg

Afficher tous les champs disponibles :

exiv2 -P k /Photo/Divers/2016-12-04_13.34.46.jpg

Afficher les informations de géolocalisation:

exiv2 pr -p a /Photo/Divers/2016-12-04_13.34.46.jpg | grep -i GPS

Petit script pour éditer les informations de géolocalisation à la volée:

#!/bin/bash
# Modification des metadonnées de geolocalisation a la volee
##1 - Entrez le chemin du repertoire ou se trouve les photos.
##2 - Entrez l’extension de fichier en respectant la casse, c'est-à-dire, en majuscules ou minuscules (jpg, JPG, etc..)
##3 - Entrez la latitude (N) ou (S) : N ou S Cela se transformera en North ou South sur les tags exif
##4 - Entrez la latitude sous la forme "48/1 13/1 24/1",(exemple pour une latitude: 48°, 13min et 24sec).
##5 - Entrez la longitude (E) ou (O) : E ou O cela se transformera en East ou West
##6 - Entrez la longitude sous la forme "9/1 52/1 51/1", (exemple pour une longitude: 9°, 52min et 51sec).
##
echo -n "1 - Entrez le chemin des photos, sans oublier le slash "/" à la fin "
read chemin
echo -n "1 - Entrez l'extention des photos: "
read extension
echo -n "2 - Entrez la latitude, N ou S : "
read latref
echo -n "3 - Entrez la latitude sous cette forme "48/1 13/1 24/1" : "
read lat
echo -n "Entrez la longitude, E ou O : "
read longref
echo -n "Entrez la longitude sous cette forme "9/1 52/1 51/1" : "
read long
for i in $chemin*.$extension
do
exiv2 -M"set Exif.GPSInfo.GPSLatitudeRef $latref" $i
exiv2 -M"set Exif.GPSInfo.GPSLatitude $lat" $i
exiv2 -M"set Exif.GPSInfo.GPSLongitudeRef $longref" $i
exiv2 -M"set Exif.GPSInfo.GPSLongitude $long" $i
done
echo "TERMINE"

6 juin 2017 /

On commence par installer le deamon NRPE et les plugins Nagios:

pkgutil --install nrpe nagios_plugins

Puis on autorise le serveur NRPE dans nrpe.cfg

vi /etc/opt/csw/nrpe.cfg

allowed_hosts=127.0.0.1,192.168.122.58

Et on redémarre le service:

svcadm restart svc:/network/cswnrpe:default

On peut maintenant tester si cela fonctionne depuis le serveur Centreon:

/usr/local/nagios/libexec/check_nrpe -H 192.168.122.64

NRPE v2.15

6 juin 2017 /

Nous  allons voir comment permettre à un serveur Centreon de surveiller des ESXi avec le script check_vmware_api.pl.

Installation des dépendances

yum install -y openssl-devel perl-Archive-Zip perl-Class-MethodMaker uuid-perl perl-SOAP-Lite perl-XML-SAX perl-XML-NamespaceSupport perl-XML-LibXML perl-MIME-Lite perl-MIME-Types perl-MailTools perl-TimeDate uuid libuuid perl-Data-Dump perl-UUID cpan libxml2-devel perl-libwww-perl perl-Test-MockObject perl-Test-Simple perl-Monitoring-Plugin perl-Class-Accessor perl-Config-Tiny gcc python perl-Nagios-Plugin

Installation du VMware vSphere Perl SDK

L’installation du « VMware vSphere Perl SDK » est indispensable.
Vous pourrez le télécharger après vous êtes créé un compte VMware.

vSphere SDK for Perl 5.5U2

https://my.vmware.com/web/vmware/details?downloadGroup=SDKPERL552&productId=353

vSphere SDK for Perl 6.0U2

https://my.vmware.com/web/vmware/details?downloadGroup=PERLSDK60U2&productId=610

vSphere Perl SDK 6.5

https://my.vmware.com/web/vmware/details?downloadGroup=VS-PERL-SDK65&productId=614

Une fois téléchargé, on décompresse l’archive et on installe le SDK:

tar xvf VMware-vSphere-Perl-SDK-6.5.0-4566394.x86_64.tar.gz
cd vmware-vsphere-cli-distrib/
perl vmware-install.pl

Installation des module Perl

Perl aura besoin de plusieurs module pour pouvoir exécuter le script check_vmware_api.pl.

Si vous êtes derrière un proxy, il faudra le déclarer avant d’installer les modules:

perl -MCPAN -e shell
o conf init /proxy/
Your ftp_proxy?  http://IP:PORT/
Your http_proxy?  http://IP:PORT/
Your no_proxy?  http://IP:PORT/
Your proxy user id?
o conf commit

On peut maintenant installer nos modules:

perl -MCPAN -e 'install Params::Validate'
perl -MCPAN -e 'install Nagios::Plugin'
perl -MCPAN -e 'install Monitor::Plugin'
perl -MCPAN -e 'install Monitoring::Plugin'
perl -MCPAN -e 'install Math::Calc::Units'
perl -MCPAN -e 'install Config::Tiny'

Installation de la commande check_vmware_api.pl

https://github.com/op5/check_vmware_api

cd /tmp
wget https://github.com/op5/check_vmware_api/archive/master.zip
unzip master.zip
cd check_vmware_api-master/
mv check_vmware_api.pl /usr/lib/nagios/plugins/

Test du script

/usr/lib/nagios/plugins/check_vmware_api.pl

Usage: check_vmware_api.pl -D <data_center> | -H <host_name> [ -C <cluster_name> ] [ -N <vm_name> ]
-u <user> -p <pass> | -f <authfile>
-l <command> [ -s <subcommand> ] [ -T <timeshift> ] [ -i <interval> ]
[ -x <black_list> ] [ -o <additional_options> ]
[ -t <timeout> ] [ -w <warn_range> ] [ -c <crit_range> ]
[ -V ] [ -h ]

Missing argument: command

Le script fonctionne, nous pouvons donc essayer d’interroger notre ESXi:

/usr/local/nagios/libexec/check_vmware_api.pl -H 192.168.122.64 -u utilisateur -p mot_de_passe -l cpu -s usage

Commandes à configurer dans Centreon

check_esx_vmfs

$USER1$/check_vmware_api.pl -D $HOSTADDRESS$ -u $_HOSTUSERESX$ -p $_HOSTUSERPASSWORD$  -l vmfs -o used -s $_SERVICEDATASTORENAME$ -w $_SERVICEWARNING$ -c $_SERVICECRITICAL$

Vérifie le niveau d’utilisation du datastore

check_esx_cpu

$USER1$/check_vmware_api.pl -H $HOSTADDRESS$ -u $_HOSTUSERESX$ -p $_HOSTUSERPASSWORD$ -l cpu -s usage -w $_SERVICEWARNING$ -c $_SERVICECRITICAL$

Vérifie la charge CPU de l’ESXi – Argument : niveau WARNING et CRITICAL (en %)

check_esx_health

$USER1$/check_vmware_api.pl -H $HOSTADDRESS$ -u $_HOSTUSERESX$ -p $_HOSTUSERPASSWORD$ -l runtime -s health

Vérifie la santé du serveur ESXi

check_esx_issues

$USER1$/check_vmware_api.pl -H $HOSTADDRESS$ -u $_HOSTUSERESX$ -p $_HOSTUSERPASSWORD$ -l runtime -s issues

Vérifie les problèmes du serveur ESXi

check_esx_status

$USER1$/check_vmware_api.pl -H $HOSTADDRESS$ -u $_HOSTUSERESX$ -p $_HOSTUSERPASSWORD$ -l runtime -s status

Vérifie l’état du serveur ESXi

check_esx_mem

$USER1$/check_vmware_api.pl -H $HOSTADDRESS$ -u $_HOSTUSERESX$ -p $_HOSTUSERPASSWORD$ -l mem -s usage -w $_SERVICEWARNING$ -c $_SERVICECRITICAL$

Vérifie la charge mémoire de l’ESXi

check_esx_swap

$USER1$/check_vmware_api.pl -H $HOSTADDRESS$ -u $_HOSTUSERESX$ -p $_HOSTUSERPASSWORD$ -l mem -s swap -w $_SERVICEWARNING$ -c $_SERVICECRITICAL$

Vérifie la charge mémoire de l’ESXi

check_esx_io_read

$USER1$/check_vmware_api.pl -H $HOSTADDRESS$ -u $_HOSTUSERESX$ -p $_HOSTUSERPASSWORD$ -l io -s read -w $_SERVICEWARNING$ -c $_SERVICECRITICAL$

Vérifie les entrées/sorties en lecture de l’ESXi

check_esx_io_write

$USER1$/check_vmware_api.pl -H $HOSTADDRESS$ -u $_HOSTUSERESX$ -p $_HOSTUSERPASSWORD$ -l io -s write -w $_SERVICEWARNING$ -c $_SERVICECRITICAL$

Vérifie les entrées/sorties en écriture de l’ESXi

check_esx_net

$USER1$/check_vmware_api.pl -H $HOSTADDRESS$ -u $_HOSTUSERESX$ -p $_HOSTUSERPASSWORD$ -l net -s usage -w $_SERVICEWARNING$ -c $_SERVICECRITICAL$

Vérifie la charge réseaux de l’ESXi – Argument : niveau WARNING et CRITICAL (en Kbps)

2 juin 2017 /

Pour utiliser la commande check_nrpe du serveur Centreon sur un poste Windows, nous devons installer NSCLIENT++ avec la configuration op5.

 

 

On lance l’installation sur l’hôte Windows à monitorer

 

On va donc choisir « op5 » à la place de « Generic », puis on clique sur « Next »

 

 

On choisit « Complete » puis on clique sur « Next »

 

 

On clique sur « Next »

 

 

On autorise l’adresse ip du serveur Centreon, puis on clique sur « Next »

 

On clique sur « Install »

 

 

On clique sur « FInish »

 

Une fois terminée, la commande check_nrpe du serveur Centreon marchera sur le client Windows.

On peut le vérifier avec cette commande:

/usr/local/nagios/libexec/check_nrpe -H 192.168.122.174

I (0.5.0.62 2016-09-14) seem to be doing fine...

Il faudra toutefois adapter la commande qui sera lancée par check_nrpe pour qu’elle soit « Windows friendly« .

/usr/local/nagios/libexec/check_nrpe -H 192.198.122.174  -c Check_OS_Version -a 'perf-config=*(ignored:true)'

OK: Windows Server 2016 Technical Preview (10.0.14393)