Catégorie : Linux

16 février 2016 /

On commence par mettre à jour son système:

yum -y update

Si Mailx n’est pas présent, on l’installe:

yum install -y mailx

Maintenant, il ne nous reste plus qu’a renseigner l’adresse d’un serveur SMTP.

Pour le mettre en place, il faut modifier le fichier de configuration de mailx, /etc/mail.rc :

vi /etc/mail.rc

Et vous y mettez à la fin les champs ci-dessous en les adaptant a votre configuration:

# On renseigne ici l'adresse du serveur smtp
set smtp=smtp://smtp.exemple.com:543
# On renseigne ici l'adresse qui apparaitra en expediteur
set from="root <@Serveur>"
# Pour activer une authentification par login/passwd , sinon il n'y en pas, commentez!!
set smtp-auth=login
#A mettre si le serveur smtp demande une authentification
set smtp-auth-user=login@courriel.fr
# A mettre si le serveur smtp demande une authentification
set smtp-auth-password=mot_de_passe

Pour un usage plus personnel, on peut aussi le configurer avec un compte gmail, cette fois dans son ~/mailrc:

vi ~/mailrc

set smtp-use-starttls
set ssl-verify=ignore
set smtp-auth=login
set smtp=smtp://smtp.gmail.com:587
set from="compte@gmail.com (Starmate)"
set smtp-auth-user=compte@gmail.com
set smtp-auth-password=s0qsdm3p@zzW32-èh_25azg'(4540rD

Et voila, c’est tout. le système peut maintenant envoyer des courriels.

Voici les principales options de Mail/Mailx et quelques exemples:

  • -a Pour envoyer une pièce jointe
  • -c Pour mettre un destinataire en copie (adresse1,adresse2,etc..).
  • -q Charge le contenu d’un fichier comme faire le corps du courriel
  • -r Pour définir l’adresse de l’expéditeur.
  • -s Sujet du message

Envoi d’un message simple:

echo "Contenu de mon courriel" | mail -s "Sujet de mon courriel" adresse@courriel.fr

Et on valide avec la combinaison de touches CTRL+d.

Envoyer un message avec une pièce jointe et deux adresses en copie:

echo "Contenu de mon courriel" | mail -s "Sujet de mon courriel" -a /chemin/du/image.jpg -c adresse@copie1.fr,adresse@copie2.fr adresse@destinataire.fr

Et on valide avec CTRL+d.

Mettre le contenu d’un fichier pour corps du courriel:

echo | mail -s "Sujet de mon courriel" -r adresse@expediteur.fr -q /chemin/du/fichier.txt adresse@destinataire.fr

Et on valide avec CTRL+d.

Exemple d’utilisation dans un script qui va envoyer un courriel si le seuil d’espace occupé sur un répertoire, ici 80% :

#!/bin/bash
#Maximum d'espace disque utilisé, en %
LIMITE='80'
#Repertoire à surveiller
REP='/var'
#Adresse qui recevra les courriels
DESTINATAIRE='destinataire@courriel.fr'
#Sujet du message
SUJET="Espace utilise sur le repertoire $REP"
#Les courriels sont envoyés avec Mailx
MAILX='mailx'
#Vérifie si la commande existe
which $MAILX > /dev/null 2>&1
#On regarde le statuts de sortie de la commande precedente, si il est différent de 0, Mailx n'est pas installé.
if ! [ $? -eq 0 ]
then
#Demande l'installation de Mailx
echo "Merci d'installer $MAILX"
#Sortie du script
exit 1
fi
#On se deplace dans le repertoire pour connaitre sa taille
cd $REP
#Affiche le pourcentage d'espace utilisé
ETAT=`df . | awk '{print $5}' | sed -ne 2p | cut -d"%" -f1`
#Si l'espace utilisé est supérieur à la limite
if [ $ETAT -gt $LIMITE ]
then
#Envoi d'un courriel d'alerte
du -sh ${REP} | $MAILX -s "$SUJET" "$DESTINATAIRE"
fi

15 février 2016 /

Voici une petite procédure rapide pour installer la dernière version de Tomcat8

Prérequis => Avoir JDK Oracle d’installé

Pour une installation dans /opt, on commence par se déplacer dans le répertoire:

cd /opt

Puis on va sur le site de Apache récupérer l’url de la dernière version de Tomcat8.

Une fois qu’on à récupérer l’url, on télécharge les binaires:

wget http://wwwftp.ciril.fr/pub/apache/tomcat/tomcat-8/v8.0.30/bin/apache-tomcat-8.0.30.tar.gz

On décompresse le tout:

tar xvf apache-tomcat-8.0.30.tar.gz
rm -f apache-tomcat-8.0.30.tar.gz

On va maintenant créer un lien symbolique par soucis de propreté:

ln -s apache-tomcat-8.0.30 tomcat8

On crée l’utilisateur tomcat8 et on le rend propriétaire des binaires:

useradd tomcat8
chown -R tomcat8 tomcat8

On renseigne la variable JAVA_HOME le ~/.bashrc de tomcat8 :

vi /home/tomcat8/.bashrc

Et on y colle ça à la fin (à adapter suivant votre version de java):

JAVA_HOME=/usr/java/jdk1.8.0_72
export JAVA_HOME
PATH=$JAVA_HOME/bin:$PATH

Maintenant il ne reste plus qu’a configurer Tomcat8 comme un service:

vi /etc/init.d/tomcat8

Puis on y place le texte suivant:

# Processus: tomcat8
# chkconfig: 234 20 80
JAVA_HOME=/usr/java/jdk1.8.0_72
export JAVA_HOME
PATH=$JAVA_HOME/bin:$PATH
export PATH
case $1 in
start)
su - tomcat8 -c 'sh /opt/tomcat8/bin/startup.sh'
;;
stop)
sh /opt/tomcat8/bin/shutdown.sh
;;
restart)
sh $CATALINA_HOME/bin/shutdown.sh
su - tomcat8 -c 'sh /opt/tomcat8/bin/startup.sh'
;;
esac
exit 0

Attention aux paramètres « JAVA_HOME » (qui doit pointer sur le JDK de Oracle installé en prérequis, et « CATALINA_HOME » qui doit pointer sur les binaires de Tomcat8).

On rend le service exécutable:

chmod +x /etc/init.d/tomcat8

On ajoute et on active le service:

chkconfig --add tomcat8
chkconfig tomcat8 on

Test du service:

service tomcat8 start
service tomcat8 stop

11 février 2016 /

Je suis tombé face à cette erreur:

su - tomcat8

could not open session

Ce problème vient de PAM. Dans mon cas, pour le solutionner, il suffit de désactiver l’authentification via « Fingerprint » dans system-config-authentication, ou sinon via cette commande :

authconfig --disablefingerprint --update

Vous pouvez aussi désinstaller le paquet fprintd-pam.

10 février 2016 /

Pour voir la liste des répertoire d’un fichier .iso:

isoinfo -l -i /chemin/de/l'iso

Pour voir le contenu d’un fichier spécifique contenu dans un fichier .iso:

isoinfo -i /chemin/de/l'iso -x "nom_fichier"

PS: Pour obtenir un paramètre valide avec l’option -x, c’est bien de regarder en premier la liste des répertoires de l’Iso.

4 février 2016 /

Il faut d’abord récupérer l’url de la dernière version RPM mise à disposition par Oracle. On peut trouver cela à cette adresse:

http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

Puis on télécharge le paquet rpm JDK (ici version 8u72):

wget --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie" "http://download.oracle.com/otn-pub/java/jdk/8u72-b15/jdk-8u72-linux-x64.rpm"

Il ne nous reste plus qu’a installer le RPM:

yum localinstall jdk-8u72-linux-x64.rpm

Pour Debian c’est différent. On va d’abord récupérer un tar.gz, puis le transformer en paquet .deb:

wget --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie" "http://download.oracle.com/otn-pub/java/jdk/8u72-b15/jdk-8u72-linux-x64.tar.gz"

On y suit toutes les instruction demandé, (en cas de doute, validez les propositions par défaut).

Un fichier Debian va y être créer, il ne reste plus qu’a l’installer:

dpkg -i oracle-java8-jdk_8u72_amd64.deb

Pour changer la version de java utilisé par défaut dans le système, vous pouvez passer par cette commande (sous Debian la commande est « update-alternatives »):

alternatives --config java
alternatives --config javac
alternatives --config javaws

Il faudra alors choisir via ce petit menu sa version java:

Il existe 3 programmes qui fournissent « java ».
Sélection    Commande
-----------------------------------------------
*+ 1           /usr/lib/jvm/jre-1.7.0-openjdk.x86_64/bin/java
2           /usr/lib/jvm/jre-1.6.0-openjdk.x86_64/bin/java
3           /usr/java/jdk1.8.0_72/jre/bin/java
Entrez pour garder la sélection courante [+] ou saisissez le numéro de type de sélection :3