Starmate Posts

18 juillet 2017

Voici le script AtoMiC-ToolKit (Automate your Media Center) pour Ubuntu et ses forks du site « htpcbeginner.com »

Certain logiciel comme Sickrage ou SabNzbd ne sont pas vraiment « newbie-friendly ».
Ce script va rendre cette tâche terriblement facile.

Voici la liste des logiciels qu’il peut installer:

FIlm

  • CouchPotato
  • Radarr
  • Watcher

Musique

  • Headphones

Séries TV

  • SickGear
  • SickRage
  • Sonarr

Livres

  • Lazy Librarian

Comics

  • Mylar

Téléchargement via Newsgroup

  • NZBGet
  • NZBHydra
  • SABnzbd+

Téléchargement via Torrent

  • Deluge
  • Jackett
  • qBittorrent
  • rTorrent
  • ruTorrent
  • Transmission avec WebUI

Média Serveur:

  • Emby
  • Madsonic
  • Plex
  • PlexPy
  • Subsonic
  • ubooquity
  • Kodi

Administration:

  • HTPC Manager
  • Muximux
  • Ombi
  • Organizr
  • Webmin
  • phpSysInfo

Utilitaires:

  • pyLoad
  • Resilio-Sync

Prévu dans le futur: DuckieTV, ktorrent, Monit, MusicBrainz, MythTV, ShellInABox, Tvheadend.

Avant de commencer, si ce n’est pas déjà fait, on configure sudo pour ne pas avoir à taper de mot de passe:

sudo visudo

Puis on ajoute à la fin les droit de notre utilisateur (ici starmate):

starmate ALL=NOPASSWD: ALL

On installe GIT:

sudo apt-get install git

On clone le dépôt « AtoMiC-ToolKit »:

git clone https://github.com/htpcBeginner/AtoMiC-ToolKit ~/AtoMiC-ToolKit

On va dans le dépôt que l’on vient de télécharger:

cd ~/AtoMiC-ToolKit

Et on lance avec sudo le script nommé « setup.sh »:

sudo bash setup.sh

 

On accepte l’avertissement avec « y » puis Entrée:

 ┬ ┬┬ ┬┬ ┬ ┬ ┬┌┬┐┌─┐┌─┐┌┐ ┌─┐┌─┐┬┌┐┌┌┐┌┌─┐┬─┐ ┌─┐┌─┐┌┬┐
 │││││││││ ├─┤ │ ├─┘│  ├┴┐├┤ │ ┬│││││││├┤ ├┬┘ │  │ ││││
 └┴┘└┴┘└┴┘o┴ ┴ ┴ ┴  └─┘└─┘└─┘└─┘┴┘└┘┘└┘└─┘┴└─o└─┘└─┘┴ ┴
                __  ___             
  /\ |_ _ |\/|./     | _  _ ||_/.|_ 
 /--\|_(_)|  ||\__   |(_)(_)|| \||_ 

--->DISCLAIMERS:
--->Please read and agree to the following disclaimers:
1. AtoMiC ToolKit has only been confirmed to work on Ubuntu\Debian variants, Mint, Ubuntu Server and Raspbian.
2. www.htpcBeginner.com, its authors, or ToolKit contributors cannot be held accountable for any problems that might occur while using this ToolKit.
3. If you did not run this ToolKit with sudo, you maybe asked for your root password during installation.
5. Best used on a clean system (with no previous app install) or after complete removal of previous app installation.
4. By proceeding you agree to assume all risks and authorize the ToolKit to install any required packages.

Type y/Y and press [ENTER] to AGREE and continue with the installation or any other key to exit: y

Il va vérifier ensuite si il a bien toutes ses dépendances, le cas échéant, il les installera:

--->CHECKING TOOLKIT DEPENDENCIES ...
Sélection du paquet checkinstall précédemment désélectionné.
(Lecture de la base de données... 333904 fichiers et répertoires déjà installés.)
Préparation du dépaquetage de .../checkinstall_1.6.2-4ubuntu1_amd64.deb ...
Dépaquetage de checkinstall (1.6.2-4ubuntu1) ...
Sélection du paquet libtinyxml2-2v5:amd64 précédemment désélectionné.
Préparation du dépaquetage de .../libtinyxml2-2v5_2.2.0-1.1ubuntu1_amd64.deb ...
Dépaquetage de libtinyxml2-2v5:amd64 (2.2.0-1.1ubuntu1) ...
Sélection du paquet libzen0v5:amd64 précédemment désélectionné.
Préparation du dépaquetage de .../libzen0v5_0.4.32-1_amd64.deb ...
Dépaquetage de libzen0v5:amd64 (0.4.32-1) ...
Sélection du paquet libmediainfo0v5:amd64 précédemment désélectionné.
Préparation du dépaquetage de .../libmediainfo0v5_0.7.82-1_amd64.deb ...
Dépaquetage de libmediainfo0v5:amd64 (0.7.82-1) ...
Sélection du paquet mediainfo précédemment désélectionné.
Préparation du dépaquetage de .../mediainfo_0.7.82-1_amd64.deb ...
Dépaquetage de mediainfo (0.7.82-1) ...
Sélection du paquet mediainfo-gui précédemment désélectionné.
Préparation du dépaquetage de .../mediainfo-gui_0.7.82-1_amd64.deb ...
Dépaquetage de mediainfo-gui (0.7.82-1) ...
Sélection du paquet par2 précédemment désélectionné.
Préparation du dépaquetage de .../par2_0.6.14-1_amd64.deb ...
Dépaquetage de par2 (0.6.14-1) ...
Traitement des actions différées (« triggers ») pour man-db (2.7.5-1) ...
Traitement des actions différées (« triggers ») pour libc-bin (2.23-0ubuntu9) ...
Traitement des actions différées (« triggers ») pour desktop-file-utils (0.22-1ubuntu5.1) ...
Traitement des actions différées (« triggers ») pour bamfdaemon (0.5.3~bzr0+16.04.20160824-0ubuntu1) ...
Rebuilding /usr/share/applications/bamf-2.index...
Traitement des actions différées (« triggers ») pour gnome-menus (3.13.3-6ubuntu3.1) ...
Traitement des actions différées (« triggers ») pour mime-support (3.59ubuntu1) ...
Traitement des actions différées (« triggers ») pour hicolor-icon-theme (0.15-0ubuntu1) ...
Paramétrage de checkinstall (1.6.2-4ubuntu1) ...
Paramétrage de libtinyxml2-2v5:amd64 (2.2.0-1.1ubuntu1) ...
Paramétrage de libzen0v5:amd64 (0.4.32-1) ...
Paramétrage de libmediainfo0v5:amd64 (0.7.82-1) ...
Paramétrage de mediainfo (0.7.82-1) ...
Paramétrage de mediainfo-gui (0.7.82-1) ...
Paramétrage de par2 (0.6.14-1) ...
Traitement des actions différées (« triggers ») pour libc-bin (2.23-0ubuntu9) ...

Il nous demande ensuite le nom du compte auquel on a donné les droit sudo sans demande de mot de passe (starmate):

--->USER INFORMATION:
--->Type the username of the user you want to use for managing apps and press [ENTER]...
Typically, this is your system login name (IMPORTANT! Ensure correct spelling and case). Do not use "root". Current username is "starmate": starmate

Et voila, vous pouvez maintenant installer avec beaucoup de facilité tous ce qu’il vous faut pour votre Home Cinéma:

Cette petite vidéo montre l’installation, la mise à jour et la desintallation de Sickbeard:

 

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

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)