Debian/Ubuntu
zgrep -h " installed " /var/log/dpkg.log* | sort | grep nomdupackage
Redhat/CentOS
rpm -qa --last | sort | grep nomdupackage
Debian/Ubuntu
zgrep -h " installed " /var/log/dpkg.log* | sort | grep nomdupackage
Redhat/CentOS
rpm -qa --last | sort | grep nomdupackage
Installation de Docker via Aptitude:
sudo apt-get update
sudo apt-get install lxc-docker
Installation de Docker via le script d’installation officiel:
wget -O dockerinstall.sh https://get.docker.com
sh ./dockerinstall.sh
Afficher les informations sur la version de Docker installée:
docker version
Obtenir la liste des commandes du client Docker:
docker help
Obtenir de l’aide sur les options d’une commande:
docker help nom_de_la_commande
Connexion à un compte Docker Hub:
docker login
Déconnexion du compte Docker Hub:
docker logout
Récupérer une image sans la lancer:
docker pull nom_de_l_image
Récupération d’une image Ubuntu dans sa dernière version:
docker pull ubuntu:latest
Rechercher une image Nginx avec au moins 5 étoiles:
docker search --stars=5 nginx
Envoyer une image locale sur le registre Docker Hub:
docker push nom_image
Envoyer une image sur un registre privé:
docker push localhost:88/ubuntu
Dépôt de l’image depuis une autre machine (host=starmate):
docker push starmate:5000/ubuntu
Export d’une image sous forme d’archive:
docker save -o fichier.tar nom_image
Import d’une archive d’image:
docker load -i fichier.tar
Démarrer un conteneur arrêté:
docker start nom_image
Redémarrer un conteneur en cours:
docker restart nom_image
Redémarrer un conteneur en spécifiant la période de grâce:
docker restart -t 20 nom_image
Démarrer le conteneur de test Hello World:
docker run hello-world
Démarrer un conteneur en mode interactif:
docker run -i -t ubuntu
Démarrer sans option d’un conteneur:
docker run ubuntu
Démarrer un conteneur avec un nom donné:
docker run --name=nom_donné nom_image
Démarrer un conteneur avec une commande donnée:
docker run nom_de_l_image commande_à_exécuter
Démarrer un conteneur en ajoutant une variable d’environnement:
docker run -e=nom_variable=valeur nom_image
ou
docker run -e nom_variable=valeur nom_image
Démarrer un conteneur en injectant une des variables d’environnement de la machine hôte:
docker run -e=nom_variable image_à_instancier
Démarrer un conteneur en injectant des variables d’environnement stockées dans un fichier:
docker run --env-file=nom_fichier nom_image
Démarrer un conteneur en modifiant son hostname:
docker run -h hostname_voulu
Démarrer un conteneur en montant un dossier dans le conteneur depuis la machine hôte en RO (read only):
docker run -v dossier_sur_hote:dossier_sur_l_image:ro nom_image
Démarrer un conteneur en mode détaché:
docker run -d nom_image
Démarrer un conteneur d’un registre privé en localhost (port 5000 vers 88):
docker run -d --name starmate -p 88:5000 starmate:2.0
Démarrer un conteneur d’un registre privé sur le réseau local (IPhost=starmate dans tous les fichiers hosts):
docker run -d --name starmate -p 5000:5000 starmate:2.0
Démarrer un conteneur du registre privé en réseau local (IPhost= starmate dans tous les fichiers hosts) en montant un dossier local de la machine host:
docker run -d --name starmate -p 5000:5000 -v /dossier_machine_host:/dossier_image_starmate starmate:2.0
Démarrer et supprimer un conteneur dès la sortie du processus:
docker run --rm hello-world
Connexion à un conteneur en tant que root avec bash:
docker exec -u root -it ID_conteneur bash
Supprimer un conteneur arrêté:
docker rm loving_lovelace
Supprimer un conteneur de manière forcée:
docker rm -f nom_conteneur
Supprimer tous les conteneurs:
docker rm `docker ps -a -q`
Supprimer une image:
docker rmi nom_de_l_image
Supprimer plusieurs images:
docker rmi image1 image2 imageN
Arrêter un conteneur:
docker stop nom_image
Envoyer un signal à un conteneur:
docker kill -s code_du_signal nom_image
Lister les conteneurs en cours de fonctionnement:
docker ps
Lister tous les conteneurs:
docker ps -a
Lister les images Docker présentes sur la machine locale:
docker images
Lister les modifications d’un conteneur par rapport à son image de lancement:
docker diff identifiant_du_conteneur
Visualiser les logs d’un conteneur:
docker logs nom_image
Explorer les processus d’un conteneur:
docker top nom_image
Persister l’état d’un conteneur en une nouvelle image:
docker commit identifiant_du_conteneur nom_de_l_image
Tag d’un conteneur:
docker build -t identifiant_du_conteneur starmate:1.0
Modifier le tag d’un conteneur:
docker tag starmate:1.0 starmate:latest
Forcer le tag d’un conteneur (si tag déjà existant):
docker tag -f starmate:1.0 starmate:latest
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
Musique
Séries TV
Livres
Comics
Téléchargement via Newsgroup
Téléchargement via Torrent
Média Serveur:
Administration:
Utilitaires:
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:
[pastacode lang= »bash » manual= »%20%E2%94%AC%20%E2%94%AC%E2%94%AC%20%E2%94%AC%E2%94%AC%20%E2%94%AC%20%E2%94%AC%20%E2%94%AC%E2%94%8C%E2%94%AC%E2%94%90%E2%94%8C%E2%94%80%E2%94%90%E2%94%8C%E2%94%80%E2%94%90%E2%94%8C%E2%94%90%20%E2%94%8C%E2%94%80%E2%94%90%E2%94%8C%E2%94%80%E2%94%90%E2%94%AC%E2%94%8C%E2%94%90%E2%94%8C%E2%94%8C%E2%94%90%E2%94%8C%E2%94%8C%E2%94%80%E2%94%90%E2%94%AC%E2%94%80%E2%94%90%20%E2%94%8C%E2%94%80%E2%94%90%E2%94%8C%E2%94%80%E2%94%90%E2%94%8C%E2%94%AC%E2%94%90%0A%20%E2%94%82%E2%94%82%E2%94%82%E2%94%82%E2%94%82%E2%94%82%E2%94%82%E2%94%82%E2%94%82%20%E2%94%9C%E2%94%80%E2%94%A4%20%E2%94%82%20%E2%94%9C%E2%94%80%E2%94%98%E2%94%82%20%20%E2%94%9C%E2%94%B4%E2%94%90%E2%94%9C%E2%94%A4%20%E2%94%82%20%E2%94%AC%E2%94%82%E2%94%82%E2%94%82%E2%94%82%E2%94%82%E2%94%82%E2%94%82%E2%94%9C%E2%94%A4%20%E2%94%9C%E2%94%AC%E2%94%98%20%E2%94%82%20%20%E2%94%82%20%E2%94%82%E2%94%82%E2%94%82%E2%94%82%0A%20%E2%94%94%E2%94%B4%E2%94%98%E2%94%94%E2%94%B4%E2%94%98%E2%94%94%E2%94%B4%E2%94%98o%E2%94%B4%20%E2%94%B4%20%E2%94%B4%20%E2%94%B4%20%20%E2%94%94%E2%94%80%E2%94%98%E2%94%94%E2%94%80%E2%94%98%E2%94%94%E2%94%80%E2%94%98%E2%94%94%E2%94%80%E2%94%98%E2%94%B4%E2%94%98%E2%94%94%E2%94%98%E2%94%98%E2%94%94%E2%94%98%E2%94%94%E2%94%80%E2%94%98%E2%94%B4%E2%94%94%E2%94%80o%E2%94%94%E2%94%80%E2%94%98%E2%94%94%E2%94%80%E2%94%98%E2%94%B4%20%E2%94%B4%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20__%20%20___%20%20%20%20%20%20%20%20%20%20%20%20%20%0A%20%20%2F%5C%20%7C_%20_%20%7C%5C%2F%7C.%2F%20%20%20%20%20%7C%20_%20%20_%20%7C%7C_%2F.%7C_%20%0A%20%2F–%5C%7C_(_)%7C%20%20%7C%7C%5C__%20%20%20%7C(_)(_)%7C%7C%20%5C%7C%7C_%20%0A%0A—%3EDISCLAIMERS%3A%0A—%3EPlease%20read%20and%20agree%20to%20the%20following%20disclaimers%3A%0A1.%20AtoMiC%20ToolKit%20has%20only%20been%20confirmed%20to%20work%20on%20Ubuntu%5CDebian%20variants%2C%20Mint%2C%20Ubuntu%20Server%20and%20Raspbian.%0A2.%20www.htpcBeginner.com%2C%20its%20authors%2C%20or%20ToolKit%20contributors%20cannot%20be%20held%20accountable%20for%20any%20problems%20that%20might%20occur%20while%20using%20this%20ToolKit.%0A3.%20If%20you%20did%20not%20run%20this%20ToolKit%20with%20sudo%2C%20you%20maybe%20asked%20for%20your%20root%20password%20during%20installation.%0A5.%20Best%20used%20on%20a%20clean%20system%20(with%20no%20previous%20app%20install)%20or%20after%20complete%20removal%20of%20previous%20app%20installation.%0A4.%20By%20proceeding%20you%20agree%20to%20assume%20all%20risks%20and%20authorize%20the%20ToolKit%20to%20install%20any%20required%20packages.%0A%0AType%20y%2FY%20and%20press%20%5BENTER%5D%20to%20AGREE%20and%20continue%20with%20the%20installation%20or%20any%20other%20key%20to%20exit%3A%20y%0A » message= » » highlight= » » provider= »manual »/]
Il va vérifier ensuite si il a bien toutes ses dépendances, le cas échéant, il les installera:
[pastacode lang= »bash » manual= »—%3ECHECKING%20TOOLKIT%20DEPENDENCIES%20…%0AS%C3%A9lection%20du%20paquet%20checkinstall%20pr%C3%A9c%C3%A9demment%20d%C3%A9s%C3%A9lectionn%C3%A9.%0A(Lecture%20de%20la%20base%20de%20donn%C3%A9es…%20333904%20fichiers%20et%20r%C3%A9pertoires%20d%C3%A9j%C3%A0%20install%C3%A9s.)%0APr%C3%A9paration%20du%20d%C3%A9paquetage%20de%20…%2Fcheckinstall_1.6.2-4ubuntu1_amd64.deb%20…%0AD%C3%A9paquetage%20de%20checkinstall%20(1.6.2-4ubuntu1)%20…%0AS%C3%A9lection%20du%20paquet%20libtinyxml2-2v5%3Aamd64%20pr%C3%A9c%C3%A9demment%20d%C3%A9s%C3%A9lectionn%C3%A9.%0APr%C3%A9paration%20du%20d%C3%A9paquetage%20de%20…%2Flibtinyxml2-2v5_2.2.0-1.1ubuntu1_amd64.deb%20…%0AD%C3%A9paquetage%20de%20libtinyxml2-2v5%3Aamd64%20(2.2.0-1.1ubuntu1)%20…%0AS%C3%A9lection%20du%20paquet%20libzen0v5%3Aamd64%20pr%C3%A9c%C3%A9demment%20d%C3%A9s%C3%A9lectionn%C3%A9.%0APr%C3%A9paration%20du%20d%C3%A9paquetage%20de%20…%2Flibzen0v5_0.4.32-1_amd64.deb%20…%0AD%C3%A9paquetage%20de%20libzen0v5%3Aamd64%20(0.4.32-1)%20…%0AS%C3%A9lection%20du%20paquet%20libmediainfo0v5%3Aamd64%20pr%C3%A9c%C3%A9demment%20d%C3%A9s%C3%A9lectionn%C3%A9.%0APr%C3%A9paration%20du%20d%C3%A9paquetage%20de%20…%2Flibmediainfo0v5_0.7.82-1_amd64.deb%20…%0AD%C3%A9paquetage%20de%20libmediainfo0v5%3Aamd64%20(0.7.82-1)%20…%0AS%C3%A9lection%20du%20paquet%20mediainfo%20pr%C3%A9c%C3%A9demment%20d%C3%A9s%C3%A9lectionn%C3%A9.%0APr%C3%A9paration%20du%20d%C3%A9paquetage%20de%20…%2Fmediainfo_0.7.82-1_amd64.deb%20…%0AD%C3%A9paquetage%20de%20mediainfo%20(0.7.82-1)%20…%0AS%C3%A9lection%20du%20paquet%20mediainfo-gui%20pr%C3%A9c%C3%A9demment%20d%C3%A9s%C3%A9lectionn%C3%A9.%0APr%C3%A9paration%20du%20d%C3%A9paquetage%20de%20…%2Fmediainfo-gui_0.7.82-1_amd64.deb%20…%0AD%C3%A9paquetage%20de%20mediainfo-gui%20(0.7.82-1)%20…%0AS%C3%A9lection%20du%20paquet%20par2%20pr%C3%A9c%C3%A9demment%20d%C3%A9s%C3%A9lectionn%C3%A9.%0APr%C3%A9paration%20du%20d%C3%A9paquetage%20de%20…%2Fpar2_0.6.14-1_amd64.deb%20…%0AD%C3%A9paquetage%20de%20par2%20(0.6.14-1)%20…%0ATraitement%20des%20actions%20diff%C3%A9r%C3%A9es%20(%C2%AB%C2%A0triggers%C2%A0%C2%BB)%20pour%20man-db%20(2.7.5-1)%C2%A0…%0ATraitement%20des%20actions%20diff%C3%A9r%C3%A9es%20(%C2%AB%C2%A0triggers%C2%A0%C2%BB)%20pour%20libc-bin%20(2.23-0ubuntu9)%C2%A0…%0ATraitement%20des%20actions%20diff%C3%A9r%C3%A9es%20(%C2%AB%C2%A0triggers%C2%A0%C2%BB)%20pour%20desktop-file-utils%20(0.22-1ubuntu5.1)%C2%A0…%0ATraitement%20des%20actions%20diff%C3%A9r%C3%A9es%20(%C2%AB%C2%A0triggers%C2%A0%C2%BB)%20pour%20bamfdaemon%20(0.5.3~bzr0%2B16.04.20160824-0ubuntu1)%C2%A0…%0ARebuilding%20%2Fusr%2Fshare%2Fapplications%2Fbamf-2.index…%0ATraitement%20des%20actions%20diff%C3%A9r%C3%A9es%20(%C2%AB%C2%A0triggers%C2%A0%C2%BB)%20pour%20gnome-menus%20(3.13.3-6ubuntu3.1)%C2%A0…%0ATraitement%20des%20actions%20diff%C3%A9r%C3%A9es%20(%C2%AB%C2%A0triggers%C2%A0%C2%BB)%20pour%20mime-support%20(3.59ubuntu1)%C2%A0…%0ATraitement%20des%20actions%20diff%C3%A9r%C3%A9es%20(%C2%AB%C2%A0triggers%C2%A0%C2%BB)%20pour%20hicolor-icon-theme%20(0.15-0ubuntu1)%C2%A0…%0AParam%C3%A9trage%20de%20checkinstall%20(1.6.2-4ubuntu1)%20…%0AParam%C3%A9trage%20de%20libtinyxml2-2v5%3Aamd64%20(2.2.0-1.1ubuntu1)%20…%0AParam%C3%A9trage%20de%20libzen0v5%3Aamd64%20(0.4.32-1)%20…%0AParam%C3%A9trage%20de%20libmediainfo0v5%3Aamd64%20(0.7.82-1)%20…%0AParam%C3%A9trage%20de%20mediainfo%20(0.7.82-1)%20…%0AParam%C3%A9trage%20de%20mediainfo-gui%20(0.7.82-1)%20…%0AParam%C3%A9trage%20de%20par2%20(0.6.14-1)%20…%0ATraitement%20des%20actions%20diff%C3%A9r%C3%A9es%20(%C2%AB%C2%A0triggers%C2%A0%C2%BB)%20pour%20libc-bin%20(2.23-0ubuntu9)%C2%A0…%0A » message= » » highlight= » » provider= »manual »/]
Il nous demande ensuite le nom du compte auquel on a donné les droit sudo sans demande de mot de passe (starmate):
[pastacode lang= »bash » manual= »—%3EUSER%20INFORMATION%3A%0A—%3EType%20the%20username%20of%20the%20user%20you%20want%20to%20use%20for%20managing%20apps%20and%20press%20%5BENTER%5D…%0ATypically%2C%20this%20is%20your%20system%20login%20name%20(IMPORTANT!%20Ensure%20correct%20spelling%20and%20case).%20Do%20not%20use%20%22root%22.%20Current%20username%20is%20%22starmate%22%3A%20starmate » message= » » highlight= » » provider= »manual »/]
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:
On commence par installer le script check_nrpe:
yum install -y nrpe-plugin
Par défaut, la variable $USER1$ qui correspond au répertoire où sont stockés les scripts Centreon, pointe sur /usr/lib/nagios/plugins/
, alors que check_nrpe a été installé dans /usr/lib64/nagios/plugins/
. Nous devons donc créer un lien symbolique pour que check_nrpe y soit présent.
ln -s /usr/lib64/nagios/plugins/check_nrpe /usr/lib/nagios/plugins/check_nrpe
Sur l’interface web de Centreon, nous allons maintenant configurer la commande check_nrpe.
Pour cela nous allons dans Configuration / Commandes puis on clique sur ajouter:
Dans ligne de commande on met ceci:
$USER1$/check_nrpe -H $HOSTADDRESS$ -p $_SERVICEPORT$ $_SERVICECOMMAND$
Puis on clique sur « Décrire les macro » puis sauvegarder sur le pop-up qui apparaît, pour générer le texte suivant:
MACRO (SERVICE) PORT :
MACRO (SERVICE) COMMAND :
Nous pouvons maintenant créer des services NRPE. Pour cela nous allons dans Configuration / Services / Modèles puis on clique sur Ajouter:
On rempli le formulaire comme ci dessus pour la création d’un service surveillance de la charge système d’un hôte.
On met la « Commande de vérification » sur la commande « check_nrpe« .
La variable PORT contient le port de service de NRPE, 5666.
La variable COMMAND contient la valeur « check_load« .
Cela correspond au nom de la commande sur le serveur cible (dans nrpe.cfg).
L’hôte que l’on souhaite monitorer doit donc avoir cette commande déclarer dans son fichier nrpe.cfg, comme on peut le voir ici:
vi /etc/nagios/nrpe.cfg
.....
command[check_load]=/usr/lib/nagios/plugins/check_load -w 15,10,5 -c 30,25,20
......
Puis on va dans l’onglet « Relations » pour lié le modèle à des modèles d’hôtes:
On associe le modèle de service au modèle d’hôte qui fonctionneront avec NRPE comme ci-dessus. Il faudra reproduire la même chose pour chaque service NRPE que l’on désire configurer.
On peut maintenant créer dans Centreon notre première machine à monitorer avec notre service NRPE, « check_load« .
On installe sur le client Ubuntu le deamon NRPE ainsi que des scipts pour le monitorer:
apt-get install nagios-nrpe-server nagios-plugins
On va autoriser le serveur Centreon dans le fichier de configuration NRPE:
vi /etc/nagios/nrpe.cfg
allowed_hosts=127.0.0.1,192.168.122.58
Puis on démarre le service:
/etc/init.d/nagios-nrpe-server start
ou
systemctl start nagios-nrpe-server
On peut vérifier que le client Ubuntu répond au serveur Centreon avec cette commande (à faire depuis Centreon):
/usr/lib/nagios/plugins/check_nrpe -H 192.168.0.20 -c check_load
OK - load average: 0.06, 0.06, 0.01|load1=0.060;15.000;30.000;0; load5=0.060;10.000;25.000;0; load15=0.010;5.000;20.000;0;
On va maintenant déclarer la machine dans Centreon.
Pour cela on va dans Configuration / Hôtes et on clique sur le bouton ajouter
On rempli le formulaire en ayant spécifié le modèle d’hôte « Serveurs-Ubuntu« .
L’hôte va ainsi hérité du service NRPE que nous avons créer tout à l’heure.
On peut vérifié que le service pour la charge système est bien présent pour notre hôte Ubuntu à monitorer.
Pour cela on va dans Configuration / Services et on clique sur le service de notre hôte:
On vérifie que le « Modèle de service » que l’on souhaite, ici « NRPE_Charge_Système » que l’on a configurer précédemment est bien sélectionné.
On met la « Commande de vérification » sur « check_nrpe« .
On peut vérifier que cela fonctionne depuis le serveur Centreon avec cette commande:
/usr/lib/nagios/plugins/check_nrpe -H 192.168.0.20 -c check_load
Si tous est bon, il ne reste plus qu’a recharger la configuration du Collecteur:
Si il n’y à pas d’erreur, on coche également « Déplacer les fichier« , et « Redémarrer l’ordonnanceur »
Puis on clic sur exporter.
Pour installer le deamon NRPE, nous devons passer par les dépôts EPEL:
yum install epel-release -y
Puis
yum -y install nrpe nagios-plugin*
On va autoriser le serveur Centreon dans le fichier de configuration NRPE:
vi /etc/nagios/nrpe.cfg
allowed_hosts=127.0.0.1,192.168.122.58
Puis on démarre le service:
service nrpe start
chkconfig nrpe on
Particularité CentOS 7
systemctl restart nrpe
systemctl enable nrpe
firewall-cmd --permanent --add-port=5666/tcp
On va maintenant déclarer la machine CentOS dans Centreon.
En ayant spécifié le modèle d’hôte « Serveurs-CentOS« , l’hôte va ainsi hérité du service NRPE que nous avons créer tout à l’heure.
On peut vérifié que le service pour la charge système est bien présent pour notre hôte CentOS à monitorer.
Pour cela on va dans Configuration / Services et on clique sur le service de notre hôte:
On vérifie que le « Modèle de service » que l’on souhaite, ici « NRPE_Charge_Système » que l’on a configurer précédemment est bien sélectionné.
On vérifie que la « Commande de vérification » est bien « check_nrpe« .
On peut vérifier que cela fonctionne depuis le serveur Centreon avec cette commande:
/usr/lib/nagios/plugins/check_nrpe -H 192.168.122.172 -c check_load
Si tous est bon, il ne reste plus qu’a recharger la configuration du Collecteur:
Si il n’y à pas d’erreur, on coche également « Déplacer les fichier », et « Redémarrer l’ordonnanceur »
Puis on clic sur exporter.