Auteur/autrice : starmate

3 mars 2016 /

Les alternatives viennent de Debian et ont été porté sur RedHat. Elles permettent de gérer plusieurs versions d’exécutables.
On notera que Debian utilise la commande update-alternatives alors que RedHat utilise la commande alternatives.

Voici comment cela fonctionne. Des liens sont posés dans /usr/bin/ qui pointent chacun vers un autre lien dans /etc/alternatives/ qui pointe pointe enfin vers l’exécutable sélectionné par le service.

Pour expliquer cela, on va se pencher sur java.

Tout d’abord, regardons la version actuelle de java:

java -version

java version "1.7.0_95"
OpenJDK Runtime Environment (rhel-2.6.4.0.el6_7-x86_64 u95-b00)
OpenJDK 64-Bit Server VM (build 24.95-b01, mixed mode)

Ici, on s’aperçoit que l’exécutable de java se trouve ici, /usr/bin/java :

which java

Il se trouve en faites que ce n’est qu’un lien symbolique pointant sur un autre point symbolique qui lui, pointera sur l’exécutable:

ls -l /usr/bin/java

lrwxrwxrwx. 1 root root 22  3 mars  10:16 /usr/bin/java -> /etc/alternatives/java

ls -l /etc/alternatives/java

lrwxrwxrwx. 1 root root 34  3 mars  10:16 /etc/alternatives/java -> /usr/lib/jvm/jre-1.7.0-openjdk.x86_64/bin/java

Pour voir les alternatives présente pour la commande java:

alternatives --config java

Qui nous donne comme retour:

Il existe 2 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
Entrez pour garder la sélection courante [+] ou saisissez le numéro de type de sélection :

On peut voir que la commande java pointera sur l’exécutable « /usr/lib/jvm/jre-1.7.0-openjdk.x86_64/bin/java » par le signe + devant, l’étoile correspond au choix par défaut (option –auto).

On va maintenant installer le JDK d’oracle pour modifier l’exécutable utilisé.
Maintenant que c’est installé on refait la commande suivante:

alternatives --config java

Et sur la sortie de la commande, on peut voir qu’il y a une nouvelle entrée:

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

On tape 3 pour sélectionner le JDK oracle.

On refait cette commande pour vérifier que cela à bien été pris en compte par alternatives:

alternatives --config 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

Et maintenant si on redemande à java sa version:

java -version

java version "1.8.0_72"
Java(TM) SE Runtime Environment (build 1.8.0_72-b15)
Java HotSpot(TM) 64-Bit Server VM (build 25.72-b15, mixed mode)

Il peut être aussi utile de spécifier toutes les dépendances (avec l’option —slave) lier à cette même commande.
Grâce à cela, si l’on change la version de la commande java, toutes les commandes slave seront changés également.

Syntaxe pour ajouter une dépendance:

alternatives --slave <lien de la commande alternatives> <nom> <chemin de l’exécutable souhaité>

Exemple pour ajouter une dépendance:

alternatives --slave /usr/bin/rmiregistry rmiregistry /usr/lib/jvm/jre-1.7.0-openjdk.x86_64/bin/rmiregistry

Pour valider tout cela, on termine par un export de la variable JAVA_HOME dans son PATH, via son .bashrc (ou celui de l’utilisateur qui utilisera la commande):

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

3 mars 2016 /

BaseX est un système de gestion de base de données XML native et légère, développé en tant que projet communautaire sur GitHub1. BaseX est spécialisé dans le stockage, le requêtage et la visualisation de larges documents et collections de documents XML. BaseX fonctionne sur toutes plates-formes et est distribué sous une licence libre.

Pour une installation dans /opt :

cd /opt

On récupère l’URL des binaires à cette adresse (un repository est aussi disponible, mais la version disponible est la 7.9):

http://basex.org/products/download/all-downloads/

Téléchargement et extraction des binaires:

wget http://files.basex.org/releases/8.3.1/BaseX831.zip
unzip BaseX831.zip
rm BaseX831.zip

Création du service:

useradd basexhttp
chown -R basexhttp /opt/basex
vi /etc/init.d/basexhttp

Et on y mets ce code:

# Processus: basexhttp
# chkconfig: 234 20 80
case $1 in
start)
su - basexhttp -c 'sh /opt/basex/bin/basexhttp -S'
;;
stop)
/opt/basex/bin/basexhttp stop
;;
restart)
/opt/basex/bin/basexhttp stop
su - basexhttp -c 'sh /opt/basex/bin/basexhttp -S'
;;
esac
exit 0

On donne les bons droits et on active le service:

chmod +x /etc/init.d/basexhttp
chkconfig basexhttp --add
chkconfig basexhttp on

Verification du service:

service basexhttp start
service basexhttp stop
service basexhttp restart

Création d’une base de donnée:

Il faut d’abord se rendre à l’adresse suivante http://localhost:8984/dba/databases (login/passwd = admin/admin)

Puis cliquer sur le bouton « Create » en donnant un nom à la base de donnée  (ici « pocefl »)

Si cette étape réussie vous devriez voir cela :

basex

 

1 mars 2016 /

Voici un petit mémo pour créer un utilisateur et son mot de passe sur une ligne de commande.

Pour créer l’utilisateur starmate et lui mettre azerty en mot de passe (en root sur RedHat et dérivés):

useradd starmate ; echo azerty | passwd --stdin starmate

Pour Debian/Ubuntu et ses dérivés, toujours en root (le \n fait un retour à la ligne):

useradd starmate ; echo -e "azerty\nazerty" | passwd starmate

Et sinon, cette commande marche partout (toujours en root):

useradd starmate ; echo 'starmate:azerty' | chpasswd

Du coup pour créer plusieurs utilisateurs et leur mot de passe sur la même ligne, en root (RedHat):

useradd starmate ; echo azerty | passwd --stdin starmate ; useradd antoine ; echo azerty | passwd --stdin antoine ; useradd francois ; echo azerty | passwd --stdin francois ; useradd pierre ; echo azerty | passwd --stdin pierre

Pour créer un utilisateur et son un mot de passe sur 100 serveurs RedHat allant de 10.16.54.1 à 10.16.54.100:

for ((i=1;i<=100;i++)); do ssh root@10.16.54.$i 'useradd starmate ; echo azerty | passwd --stdin starmate'; done

La même chose pour 100 serveurs Debian/Ubuntu:

for ((i=1;i<=100;i++)); do ssh root@10.16.54.$i 'useradd starmate ; echo -e "azerty\nazerty" | passwd starmate'; done

Pour créer un utilisateur et son un mot de passe sur 2 serveurs RedHat et 2 serveurs Debian:

for i in redhat1 redhat2 debian1 ubuntu1 ;  do ssh root@$i 'useradd starmate ; echo 'starmate:azerty' | chpasswd'; done

Dernier exemple pour des serveurs RedHat renseignés dans un fichier (1 par ligne):

for i in `cat serveurs.txt`; do ssh root@$i 'echo -e "useradd starmate ; echo azerty | passwd --stdin starmate'; done

Du coup, faites attention à votre historique, les mots de passe y seront affichés en clair.

29 février 2016 /

MariaDB est un système de gestion de base de données édité sous licence GPL. Il s’agit d’un fork communautaire de MySQL : la gouvernance du projet est assurée par la fondation MariaDB2, et sa maintenance par la société Monty Program AB, créateur du projet3. Cette gouvernance confère au logiciel l’assurance de rester libre.

Si MySQL est déjà installé sur votre système, il faudra le désinstaller:

yum remove mysql-libs-5.1.73-5.el6_6.x86_64 mysql-server-5.1.73-5.el6_6.x86_64 mysql-devel-5.1.73-5.el6_6.x86_64 mysql-5.1.73-5.el6_6.x86_64

Il faut maintenant créer le fichier du dépôt Yum pour MariaDB:

vi /etc/yum.repos.d/MariaDB.repo

Et on y met le texte suivant:

# MariaDB 5.5 RedHat repository list - created 2013-08-11 14:30 UTC
# http://mariadb.org/mariadb/repositories/
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/5.5/rhel6-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1

On mets à jour la liste des paquets et on installe MariaDB:

yum update
yum install MariaDB-server MariaDB-client

On test le fonctionnement du service:

service mysql start
service mysql stop

Pour les autres dépôts, c’est ici.

29 février 2016 /

Si vous connaissiez Popcorn Time, vous serez heureux d’apprendre que le fork popcorntime.io à maintenant son remplaçant Stremio.
Mis à part le design de l’application, on se retrouve avec quelque chose de très similaire. On a toujours les notes IMDb, les bandes annonce, les sous-titres en VOSTFR, les résumés, etc… avec en plus le support DLNA. Vous pouvez donc diffuser depuis votre PC sur une Smart TV, ChromeCast, AppleTV etc.. (compatible DLNA).

Donc pour l’installer, on récupère la dernière version à cette adresse dans son répertoire personnel, puis on l’installe:

sudo dpkg -i stremio_3.6.5_amd64.deb

Ensuite pour en profiter, il n’y a plus qu’a lancer l’exécutable via le Dash d’Ubuntu:

 

Liste des Séries

stremio11

Liste des Films

steamio.1

Sélection d’un film

steamio2

Choix des options

stremio6

Lancement du film et choix de la qualité

stremio3

Chargement du cache

stremio4

Bon Film!

stremio5