fedora fr planet

Add your email:  Fedora Tunisia Group

 

Syndicate content Planet Fedora-Fr
Sélection de blogs autour de Fedora
Updated: 3 hours 29 min ago

Remi Collet : PHPUnit 4.7

Fri, 06/05/2015 - 18:11

Les RPM de PHPUnit version 4.7 sont disponibles dans le dépôt remi pour Fedora et Enterprise Linux (CentOS, RHEL...)

Documentation : PHPUnit 4.7 manual et Release Announcement for PHPUnit 4.7.0 (english)

Installation :

yum --enablerepo=remi install phpunit

Merci de tester cette nouvelle version, qui est déjà dans Rawhide et sera bientôt disponible dans Fedora 21, 22 et EPEL-7.

Remarque: cet outil est un epièce essentielle de la QA PHP dans Fedora.

Remi Collet : Nouveau dépôt "remi-safe" pour EL-7

Tue, 06/02/2015 - 18:05

Je viens d'ouvrir le dépôt "remi-safe" pour Enterprise Linux 7 (RHEL, CentOS).

Ce dépôt est destiné à ceux qui veulent utiliser en priorité les paquets de la distribution et d'EPEL sans les remplacer (par exemple pour conserver le support Red Hat) mais qui ont besoin d'extensions supplémentaires, qui ne sont pas encore disponibles dans EPEL.

Ce dépôt n'est pas intrusif, il est réellement sain car il ne remplace ou n'entre en conflit avec aucun des paquets disponibles dans la distribution ou dans EPEL.

Il s'agit principalement d'extensions PHP qui ne sont pas disponibles dans EPEL pour différentes raisons:

  • travail en cours (ex php-pecl-mongodb)
  • manque de temps (ou de motivation) pour les soumettre
  • non respect des normes d'empaquetage (bibliothèques embarquées, ex php-pecl-trader)
  • non respect de la stratégies (brevet, licence, ex php-pecl-rar)
  • dépréciées mais fournit ici pour le besoin d'applications anciennes (php-pecl-uploadprogress)

Leur succés dans ce dépôt pourra me convaincre de les intégrer, lorsque possible au dépôt EPEL.

Les extensions fonctionnent donc avec PHP version 5.4.16.

Le dépôt contient contient aussi quelque bibliothèques nécessaires à ces extensions. Les paquets sont identiques à ceux disponibles dans "remi", c'est donc un sous-ensemble du dépôt principal.

Je pense aussi y ajouter prochainement les Software Collections qui n'entre pas en conflit avec celles disponibles dans RHSCL (donc php56 et plus tard php70).

Le paquet remi-release-7.1-1.el7.remi fournit la configuration de ce dépôt, qui est activé par défaut.

Vous pouvez aussi télécharger le fichier remi-safe.repo et l'ajouter dans vote dossier /etc/yum.repo.d

 

Fedora Paris : Fedora 22 est arrivé !

Mon, 06/01/2015 - 23:40

Fedora 22 est sortie et, après utilisation, la plupart d'entre nous trouvons que c'est un évènement qui mérité d'être fêté ! Ainsi, le 10 juin à 20h, nous nous retrouverons au premier étage du Père Tranquille, 16 Rue Pierre Lescot dans le 1er arrondissement. Nous donnons rendez-vous aux utilisateurs et développeurs de Fedora pour discuter et... Lire Fedora 22 est arrivé !

Matthieu Saulnier : Renouvellement cotisation à l'April

Sat, 05/30/2015 - 22:47

Aujourd'hui, j'ai renouvelé mon engagement auprès de l'association April. C'est l'occasion de se remémorer ses convictions...

Remi Collet : PHP version 5.5.26RC1 et 5.6.10RC1

Sat, 05/30/2015 - 08:20

Les versions Release Candidate sont disponibles dans le dépôt remi-test pour Fedora et Enterprise Linux (RHEL / CentOS) afin de permettre au plus grand nombre de les tester. Elles sont uniquement fournit en Software Collections, pour une installation en parallèle, solution idéale pour ce type de tests.

Les RPM de PHP version 5.6.10RC1 en SCL sont disponibles dans le dépôt remi-test pour Fedora 19-22 et Enterprise Linux 6-7.

Les RPM de PHP version 5.5.26RC1 en SCL sont disponibles dans le dépôt remi-test pour Fedora 21-22 et Enterprise Linux 6-7.

Installation : voir la Configuration du dépôt et choisir la version.

Installation en parallèle, en Software Collections de PHP 5.6 (x86_64 uniquement) :

yum --enablerepo=remi,remi-test install php56

Installation en parallèle, en Software Collections de PHP 5.5 (x86_64 uniquement) :

yum --enablerepo=remi,remi-test install php55

A noter :

La version RC est généralement identique à la version finale (aucun changement accepté, à l'exception de correctifs de sécurité).

Software Collections (php55/php56)

Sylvain Réault : Mesa 10.7.0-1-devel.04.vind_depot

Fri, 05/29/2015 - 11:22

En français / In french :
Une nouvelle version de mesa-devel est disponible pour Fedora 21, 22 et Rawhide.
LLVM 3.6 est disponible pour Fedora 22, les paquets pour Rawhide étant disponible sur le dépôt officiel.

In English / En anglais :
A new version of mesa-devel it's available for Fedora 21, 22 and Rawhide.
LLVM 3.6 it's available for Fedora 22 in the repo, package for Rawhide is available on official repository.

Charles-Antoine Couret : Sortie de Fedora 22

Tue, 05/26/2015 - 15:00

En ce mardi 26 mai 2015, le projet Fedora est fier dannoncer la sortie de la distribution GNU/Linux Fedora 22. Cette version introduit des mises à jour des environnements de bureaux populaires : GNOME 3.16, KDE Plasma 5.3 et Xfce 4.12. Ces versions apportent beaucoup de finitions esthétiques comme des thèmes mieux finis ou les notifications retravaillées.

Fedora en profite pour y introduire dans ces programmes la préparation de l'arrivée de Wayland. Rappel, Wayland est un protocole graphique destiné à remplacer X11 pour la gestion des fenêtres et des périphériques. Encore instable, il sera activé par défaut dans le gestionnaire de connexion de Gnome (GDM) et la gestion des souris, claviers, touchpads et autres passera par libinput (lié à Wayland) au lieu de X11. L'objectif est de préparer la mise à disposition de Wayland par défaut dans Fedora 23, avec XWayland de disponible pour les applications non compatibles.

Sinon deux nouveaux environnements font leur apparition : LXQt et qtile. Le premier se veut être le pendant de LXDE à savoir léger et très minimaliste en utilisant la bibliothèque Qt. Quant au second, c'est un gestionnaire de fenêtre pavant très personnalisable à l'aide du langage Python.

Un meilleur support des langues non-latines est proposé notamment avec des polices et méthodes de saisis orientés pour certaines langues indiennes. Mais aussi la plupart des langages de programmations améliorent leur support d'Unicode : glibc, Perl 5.20 et Ruby 2.2. Pour les développeurs GCC 5.1 est disponible qui est une version majeure qui rompt la compatibilité de l'ABI C++, Fedora a fait le choix que l'ancienne ABI est utilisée pour cette version par défaut.

Côté administration système, nous noterons surtout le remplacement de Yum par DNF. DNF en est une réécriture complète qui améliore grandement les performances par l'usage de bibliothèques externes pour la gestion des dépendances et des dépôts. Si les deux programmes se ressemblent, les options divergent quelque peu. Cette page listant les principales différences. L'application Yum redirige vers DNF.

Un assistant de migration a été ajouté pour aider les personnes à effectuer les mises à jour des programmes et de leur configuration de Fedora 21 à 22 par exemple. Une suite d'utilitaires aide à concevoir une BDD avec PostgreSQL, d'autres rôles similaires à venir seront à prévoir pour simplifier l'usage serveur de la distribution. Le serveur DNS Bind passe en version 9.10 qui améliore grandement les possibilités de sécurité et les performances.

Pour finir, l'informatique dans les nuages progresse. Au menu l'ajout de Vagrant pour simplifier le déploiement d'images destinées aux tests ou au développement. Puis la mise à disposition de Fedora Atomic Host pour simplifier le déploiement d'applications sécurisées en couplant Docker et SELinux.

Et bien d'autres nouveautés encore !

Liens

Dépêche sous licence CC BY-SA

Guillaume Kulakowski : jQuery async Gravatar, chargez vos Gravatars de manière asynchrone

Tue, 05/26/2015 - 06:55

Jusqu'à présent, j'utilisais sur mon blog la librairie async-gravatars de Joseph Scott qui permettait de charger de manière asynchrone les Gravatars utilisés pour illustrer vos commentaires avec vos têtes. Je ne vais pas m'étendre sur cette méthode de chargement, d'autres l'on déjà (très bien) fait ici ou .

Le problème c'est que la dite librairie n'est plus disponible sur le compte GitHub de son auteur et que la sanction fut immédiate chez moi : ça m'a pété une erreur Bower et m'a donc fait planter la chaine de construction Grunt du thème de mon blog. Bref, j'ai contacté l'auteur, sans obtenir de réponse, pour savoir si je pouvais forker et maintenir la librairie. Sans réponse j'ai donc entrepris de la réécrire from scratch. J'y ai quand même rajouté des options de paramétrages (via data attributes) mais également des contrôles de qualité & une intégration continue :

  • Tests unitaires JavaScript avec QUnit,
  • Qualité de code JS via JSHint,
  • Code check style via JSCS,
  • et pour tous les nouveaux fichiers introduits : Markdown lint, JSON Lint, etc...
  • Le tout intégré via la Plateforme d'Intégration Continue Travis et une qualité de code contrôlée via Code Climate.

Bref, c'est actuellement la librairie qui tourne sur mon blog et vous pourrez la trouver sur GitHub ou la télécharger via Bower.

Guillaume Kulakowski : Surveillance d'une carte contrôleur RAID LSI MegaSAS 9260 sous Debian / Proxmox

Mon, 05/25/2015 - 13:43

Au travail, nous utilisons un serveur Dell Power Edge R710 pour gérer plusieurs VMs de développements. Pour l'hyperviseur et connaissant mes obédiences, nous sommes partis sur une solution Open source à savoir ProxMox VE. Dell fourni pas mal d'outils pour monitorer leurs machines mais rien pour Proxmox basée sur une Debian et ne disposant pas d'interface graphique.

Bref, suite à une visite de la salle blanche, je me suis rendu compte que l'un des disques durs RAID 5 était en erreur sans qu'aucune de mes sondes ne me remonte la moindre information. J'ai donc dû rechercher des informations sur la carte contrôleur RAID (une LSI MegaSAS 9260) pour voir comment sous Linux et plus particulièrement sous Debian, je pouvais lui faire cracher des informations.

Après un peu de recherche, je suis tombé sur un dépôt apt qui propose un outil appelé megacli supportant cette carte et qui permet de retourner les informations en ligne de commande. De là, j'ai fais un petit cron qui va lancer une analyse et rechercher les mots tels que "Degraded" ou "Failed" et me voila avec une solution de surveillance rapide.

Remi Collet : Nouveau domaine : remirepo.net

Sun, 05/24/2015 - 16:23

Lors de l'ouverture de ce site en 2005, j'ai utilisé le domaine famillecollet.com que je possède depuis 2000.

Avec le succès croissant du dépôt, j'ai considéré qu'il méritait bien son propre domaine : remirepo.net

A partir de maintenant :

Évidement, les anciennes adresses restent accessibles, sans limitation prévue.

Guillaume Kulakowski : Data URIs VS CSS Sprites

Thu, 05/21/2015 - 07:09

J'ai profité de la sortie de la branche 2.7 de Dotclear et de l'arrivée de Twig comme moteur de template pour faire quelques modifications sur le blog :

  • Migration vers des templates utilisant la syntaxe Twig et utilisation au maximum de l'héritage (la killer feature de Twig !).
  • Utilisation encore plus massive de Less.
  • Mise à jour des librairies JS et CSS (merci Bower).
  • Suppression des sprites CSS pour utiliser des images en data URI au sein de mes CSS.

Et c'est sur ce dernier point que je souhaitais discourir...

Les sprites CSS c'est bien... mais c'est chi**t !!!

En effet, les sprites CSS c'est bien pour les performances web client side (notamment : Minimize HTTP Requests & Preload Components). Le problème, c'est que c'est chi**t à manipuler ! Il existe des générateurs de sprites, mais ce n'est pas la panacée. Bilan : j'y réfléchi à 2 fois avant de changer une image et dans certains cas il est même obligatoire de mixer plusieurs images sprites (sur des background-repeat bien complexes).

Data URI, L'alternative ?

La solution alternative c'est d'utiliser des data URIs, c'est à dire de mettre le code base64 de l'image directement dans la CSS (où une CSS séparée). Vous me direz que faire un sprite CSS ou faire un base64 c'est aussi pénible et je vous répondrais oui... Si on travaille en pure CSS ! Mais si on utilise Less (et c'est surement aussi possible en Sass) il y a une fonction qui fait ça automatiquement !

Y a-t-il que des avantages ?

Malheureusement non.

  • Un fichier CSS avec du base64 pèse 25% (10% si on utilise compression gzip) de plus qu'un sprite.
  • Les data URI's ne sont pas supportées par IE6/7 (ça je m'en fous un peu :-)).
  • Les performances sont quelques peu en dessous d'un sprite.
En conclusion

J'ai déjà pas mal optimisé mon site, le fait de passer par data-uri me permet de :

  • Réduire le poids général de ma CSS (j'embarquais déjà quelques data-uri que je viens de délocaliser dans une CSS à part).
  • Pouvoir rapidement faire évoluer mon image sprites (retirer les images inutiles par exemple) et gagner en time to market.

Bref : adopté !

Charles-Antoine Couret : Borsalinux-fr sera au Geekopolis le 23 et 24 mai

Sun, 05/17/2015 - 23:59

Bonjour à tous ! Une petite actualité pour signaler que nous serons à l'évènement Geekopolis le 23 et 24 mai. Cela se déroule à Paris Expo Porte de Versailles, 15e arrondissement. Cet évènement est bien plus générique, tournant autour de la culture Geek : cosplays, jeux vidéo, logiciels libres, comics, science fiction, etc. Des ateliers, conférences, stands et autres activités sont là pour que chacun trouve chaussure à son pied.

Vous retrouverez Borsalinux-fr au Teklab aux côtés de l'APRIL, Ubuntu-fr, Framasoft et bien d'autres. N'hésitez pas à venir nous voir à notre stand pour discuter, recevoir un coup de main, acheter un goodies ou nous donner un coup de main. Nous serions ravis de vous accueillir. La sortie de Fedora 22 étant trois jours après l'évènement, pourquoi ne pas en profiter pour récupérer une image ISO de la dernière Release Candidate et voir ses nouveautés ? ;-)" class="smiley

En espérant vous voir nombreux, passez une bonne journée.

Sylvain Réault : Précision sur les retards

Sat, 05/16/2015 - 09:18

Cela fait un moment qu'il n'y a pas eu de mises à jour, dû aux différentes tentatives d'empaquetage échoué.

Tout cela à cause d'un souci avec la version de DNF (le remplaçant de YUM) présente dans CentOS7.

Donc je dois :
- Soit attendre
- Soit reprendre l'envoi des fichiers de mon poste perso vers l'espace de stockage prévu

Donc je vais choisir le choix numéro 2.

Il y aura donc normalement une mise à jour prévu dans la journée.
Si tout vas bien, je devrai pouvoir mettre à disposition des paquets signés la semaine prochaine.

Remi Collet : PHP version 5.4.41, 5.5.25 et 5.6.9

Fri, 05/15/2015 - 11:38

Les RPM de PHP version 5.6.9 sont disponibles dans le dépôt remi pour Fedora 21 et remi-php56 pour Fedora ≤ 20  et Enterprise Linux (RHEL, CentOS).

Les RPM de PHP version 5.5.25 sont disponibles dans le dépôt remi pour Fedora ≤ 20 et dans le dépôt remi-php55 pour Enterprise Linux.

Les RPM de PHP version 5.4.41 sont disponibles dans le dépôt remi pour Enterprise Linux (RHEL, CentOS...).

Ces versions sont aussi disponibles en Software Collections.

Ces versions corrigent plusieurs failles de sécurité, la mise à jour est donc vivement recommandée.

Annonces des versions :

La version 5.4.33 était la dernière mise à jour corrigeant des bugs. La branche 5.4 est donc en maintenance de sécurité uniquement.

Installation : voir la Configuration du dépôt et choisir la version et le mode d'installation.

Remplacement du PHP par défaut du système par la version 5.6 (le plus simple) :

yum --enablerepo=remi-php56,remi update php\*

Installation en parallèle, en Software Collections de PHP 5.6 (x86_64 uniquement) :

yum --enablerepo=remi install php56

Remplacement du PHP par défaut du système par la version 5.5 (le plus simple) :

yum --enablerepo=remi-php55,remi update php\*

Installation en parallèle, en Software Collections de PHP 5.5 (x86_64 uniquement) :

yum --enablerepo=remi install php55

Remplacement du PHP par défaut du système par la version 5.4 (entreprise uniquement) :

yum --enablerepo=remi update php\*

Installation en parallèle, en Software Collections de PHP 5.4 (x86_64 uniquement) :

yum --enablerepo=remi install php54

Et bientôt dans les mises à jour officielles:

À noter :

  • la version EL7 est construite avec RHEL-7.1
  • la version EL6 est construite avec RHEL-6.6
  • beaucoup de nouvelles extensions sont aussi disponible, voir PECL extension RPM status page

Informations, lire :

Paquets de base (php)

Software Collections (php54/php55)

Nicolas Chauvet : RPM Fusion free available for fedora 22

Sat, 05/09/2015 - 10:22

As this concern was raised in several places already, I would like to announce that the RPM Fusion free repository is published since few days for Fedora 22.

At this time, only the free section is available, but it's also there for armhfp at the same time as i686 and x86_64. (no aarch64 but that's can be a secondary step if I manage to have a builder).

It's only a rebuilt for f21 packages made for f22. Several f22 specific updates will be pushed progressively.

If you previously had installed the rpmfusion-free-release for f22, but miss the updates for any reason, maybe you will need to re-install the release package or verify previously modified configuration files.

I'm still working hard to get the infrastructure migrated to Koji/distgit and it's unlikely that the migration process will be finished in time for f22 GA, but at least it will be possible for users to install working packages and for package maintainers to provide the needed bugfix updates for f22.

If you can help fixing FTBFS package for f22, please see the bug tracker for f22.

Premier Samedi : juin 2015

Thu, 05/07/2015 - 23:06
Date : samedi 6 juin 2015 Horaires : de 14h00 à 18h00 Lieu : Carrefour Numérique, Cité des Sciences et de lIndustrie, Paris Pour une nouvelle installation ou pour des ajustements de votre distribution GNU/Linux Fedora, Mageia ou Ubuntu, venez nous retrouver le samedi 6 juin 2015 au Carrefour Numérique de la Cité des Sciences […]

Sylvain Réault : Nouvelles/News

Mon, 05/04/2015 - 10:56

Une nouvelle mise à jour pour Mesa 10.6 est en cours, pas mal de nouveautés et des nouvelles du coté de la prise en charge de l'OpenGL 4.0 et + qui devrait enfin arriver d'ici quelques temps. Je reviendrai dessus dans un prochain article.

Pour les paquets de la semaine, la mise à jour sera disponible mercredi comme d'habitude, sauf imprévu de dernière minute.

Il y a un souci avec la version pour Fedora 22 (actuellement en bêta), certains paquets n'aiment pas la version de LLVM 3.6 disponible. Je sais que "POCL" a un souci à cause d'une incompatibilité, les différentes tentatives d'empaquetage de celle qui support LLVM 3.6 échoue actuellement.

Le site vas accueillir une partie en anglais, je ne suis pas un expert de la langue, donc n'hésitez pas à faire des remarques si vous voyez des erreurs de traductions.

Je pense proposer d'autres paquets pour d'autres projets.

Si tout vas bien, le dépôt devrait migrer sur un serveur plus performant d'ici quelques semaines, car l'actuel est quand même trop lent pour empaqueter.

Je devrai aussi pouvoir monter une troisième machine de test avec une carte NVIDIA, je verrai par la suite pour passer à la prochaine génération des Radeon les R9 3xx.

Pour celles et ceux que cela intéressent, il est maintenant possible d'avoir le support de RandR pour les cartes à base d'ATI Rage 128 : http://www.phoronix.com/scan.php?page=news_item&px=Xorg-R128-New-Release
Par contre je précise quand même que le support de la 3D matériel n'est plus assuré, car cette génération ne supporte pas l'openGL 2.1 qui est le minimum requis.

Remi Collet : PHP version 5.5.25RC1 et 5.6.9RC1

Thu, 04/30/2015 - 22:23

Nouveauté : les versions Release Candidate sont désormais disponibles dans le dépôt remi-test pour Fedora et Enterprise Linux (RHEL / CentOS) afin de permettre au plus grand nombre de les tester. Elles sont uniquement fournit en Software Collections, pour une installation en parallèle, solution idéale pour ce type de tests.

Les RPM de PHP version 5.6.9RC1 en SCL sont disponibles dans le dépôt remi-test pour Fedora 19-22 et Enterprise Linux 6-7.

Les RPM de PHP version 5.5.25RC1 en SCL sont disponibles dans le dépôt remi-test pour Fedora 21-22 et Enterprise Linux 6-7.

Installation : voir la Configuration du dépôt et choisir la version.

Installation en parallèle, en Software Collections de PHP 5.6 (x86_64 uniquement) :

yum --enablerepo=remi,remi-test install php56

Installation en parallèle, en Software Collections de PHP 5.5 (x86_64 uniquement) :

yum --enablerepo=remi,remi-test install php55

A noter :

La version RC est généralement identique à la version finale (à l'exception de correctifs de sécurité).

Software Collections (php55/php56)

Charles-Antoine Couret : Flock 2015 : inscriptions et soumissions de sujet (jusqu'au 2 mai !)

Wed, 04/29/2015 - 23:18

Il y a trois ans de cela, Projet Fedora a abandonné en Amérique du Nord et en Europe l'évènement nommé FUDCon (Fedora Users and Developer Conferences) pour être remplacé par les Flock.

Contrairement à l'année dernière où c'était en Europe, cette fois c'est en Amérique du Nord que cela se passe. Plus précisément dans la ville de Rochester, État de New-York des États-Unis. Pour la date, rendez-vous du 12 au 15 août.

Le Flock c'est l'occasion pour les contributeurs de Fedora de se rencontrer pour discuter autour de sujets qui les intéressent à propos du Projet Fedora, dans le but de le faire avancer. C'est une occasion unique de discuter en tête à tête avec d'autres contributeurs et de passer un moment convivial avec eux.

Le sujet est évoqué aujourd'hui car un tel évènement se prépare longuement en avance. Si vous êtes intéressés et que vous pouvez vous y rendre, inscrivez-vous. Vous avez jusqu'au samedi 2 mai pour y soumettre un sujet de discussion que vous souhaitez animer ! Vous pouvez obtenir plus d'informations pratiques sur cette édition.

Alors, motivés ? N'hésitez pas à vous inscrire.

Frédéric Thouin : ARP_poisoning_detector service with only shell commande

Tue, 04/28/2015 - 19:11

gwctl

Version 0.1

Application permettant de surveiller l'ARP poisoning de votre GW, avec configuration en service via screen.

DEPENDANCES : beep screen INSTALLATION : #cp gwctl.sh /opt/bin #chmod +x /opt/bin/gwctl.sh


  • Pour activé le service sur init sysV :
#cp gwctl /etc/init.d #update-rc.d gwctl defaults
  • Pour systemd cela fera un autre article.
fichier de configuration :

A créer ( ou pas, le script le fera au premier lancement ) dans /etc/gwctl.conf et mettre :

MAC=aa:bb:cc:dd:ee:ff

avec la valeur de la mac de votre gw

Usage :

Démmare le service

service gwctl start

Arete le service

service gwctl stop

Prendre le contrôle de la session screen attacher au service

service gwctl control

Pour sortir de la session screen :

ctrl-a d comportement :

Lors qu'une attaque ARP sur votre réseau au niveau de votre gw, gwctl affichera un message sur toutes les consoles, et émettra des beeps aléatoires.

Le script : #!/bin/bash #Gestion des dépendance et installation des dépendances : declare -a DEPENDENCIES=("beep screen"); declare -a MANAGERS=("dnf" "apt-get"); for DEPENDENCY in ${DEPENDENCIES[@]}; do echo -n "Verification des dépendances : $DEPENDENCY " if hash $DEPENDENCY 2>/dev/null then echo "- OK" else echo "- ERREUR" for MANAGER in ${MANAGERS[@]} do if hash $MANAGER 2>/dev/null then echo -n "$DEPENDENCY manquante, Voullez-vous l'installer via $MANAGER ? [Y/N] (default is Y): " read ANSWER if [[ "$ANSWER" == "Y" || "$ANSWER" == "y" || "$ANSWER" == "" ]]; then $MANAGER" install "$DEPENDENCY else echo "Terminating" exit -1 fi unset ANSWER fi done fi done ################################################################## # Déclaration des variables ficmac="/etc/gwctl.conf" out="/dev/null" nbbeep=3 ipgwsalle=$(ip r | grep default | cut -d " " -f 3) enablelog=0 log=./macgw.log # L'adresse MAC est stockée dans un fichier au premier lancement du script if [[ -f $ficmac ]] then source $ficmac macgwinit=$MAC else echo -e "Erreur de chargement du fichier $ficmac" read -p "Voullez qu'il soit rempli automatiquement ? [Y:n]" ANSWER if [[ "$ANSWER" == "Y" || "$ANSWER" == "y" || "$ANSWER" == "" ]]; then ping -c 1 $ipgwsalle >$out 2>$out ip n | sed -n '/10.25.255.254/ s/.*addr \([^\s]*\) .*$/MAC=\1/p' > $ficmac source $ficmac macgwinit=$MAC else echo "Yolo" exit -1 fi unset ANSWER fi #MAC DE DEBUG : rend un faux positif #macgwinit="00:23:47:c5:23:c1" ################# affichtop () { clear echo "--------------------------------------" echo "| IP Passerelle : $ipgwsalle |" echo "| MAC Passerelle : $macgwinit |" echo "--------------------------------------" echo "" } affichmaj () { echo "" echo "" echo ' /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\' echo " _ " echo " / \ Changement de l'adresse MAC de $ipgwsalle" echo "/ ! \ MAC : $macgw" echo "----- " echo ' /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\' echo "" echo " [ Relevé initial : $horodadeb -> $macdeb ]" echo "" } # Debut du script while : do ping -c1 $ipgwsalle >$out macgw=$(ip n | grep $ipgwsalle | cut -d " " -f 5) if [[ $macgw != $macgwinit ]] then # On conserve l'horodatage du constat du premier changement if [[ -z $horodadeb ]] then horodadeb=$(date +"%F %R") macdeb=$macgw [[ $enablelog = 1 ]] && echo "$horodadeb [suivigw] - " >>$log fi affichtop affichmaj lsmod | grep "^pcspkr " if [[ $? -ne 0 ]] then snd=off modprobe pcspkr 2>$out fi echo "" echo "" echo "" echo "---------------------------------------------" echo "Controle en cours ; <CTRL> + <C> pour Quitter" echo "---------------------------------------------" beep -l ${RANDOM%%??} -f ${RANDOM%%??} beep -l ${RANDOM%%??} -f ${RANDOM%%??} beep -l ${RANDOM%%??} -f ${RANDOM%%??} affichmaj > /dev/console fi sleep 1 affichtop echo "-------------------------------------------------------" echo "Controle en cours ; <CTRL> + <c> pour Quitter----------" echo "Controle en cours ; <CTRL> + <a> puis <d>pour détacher-" echo "-------------------------------------------------------" done Le scrip INIT : #!/bin/bash ### BEGIN INIT INFO # Provides: gwctl # Required-Start: $remote_fs $syslog # Required-Stop: $remote_fs $syslog # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: Arp poisoning ### END INIT INFO # /etc/init.d/gwctl #version 0.1 #Settings SERVICE='gwctl.sh' SCREEN=gwctl USERNAME="root" BIN="/opt/bin" ME=$(whoami) as_user() { if [ "$ME" == "$USERNAME" ] ; then bash -c "$1" else su - $USERNAME -c "$1" fi } gw_start() { if ps ax | grep -v grep | grep -v -i SCREEN | grep $BIN/$SERVICE > /dev/null then echo "Tried to start but $SERVICE was already running!" else echo "$SERVICE was not running... starting." cd $BIN as_user "cd $BIN && screen -dmS $SCREEN $BIN/$SERVICE" sleep 1 if ps ax | grep -v grep | grep -v -i SCREEN | grep $BIN/$SERVICE > /dev/null then echo "$SERVICE is now running." else echo "Could not start $SERVICE." fi fi } gw_stop() { if ps ax | grep -v grep | grep -v -i SCREEN | grep $BIN/$SERVICE > /dev/null then echo "$SERVICE is running... stopping." as_user "screen -p 0 -S $SCREEN -X stuff $'\003'" else echo "$SERVICE was not running." fi if ps ax | grep -v grep | grep -v -i SCREEN | grep $BIN/$SERVICE > /dev/null then echo "$SERVICE could not be shut down... still running." else # rm $BIN/.macgwinit echo "$SERVICE is shut down." fi } gw_control() { if ps ax | grep -v grep | grep -v -i SCREEN | grep $BIN/$SERVICE > /dev/null then as_user "screen -r $SCREEN -d" else echo "gwctl is not running" fi } #Start-Stop here case "$1" in start) gw_start ;; stop) gw_stop ;; restart) gw_stop gw_start ;; status) if ps ax | grep -v grep | grep -v -i SCREEN | grep $BIN/$SERVICE > /dev/null then echo "$SERVICE is running." else echo "$SERVICE is not running." fi ;; control) gw_control ;; *) echo "Usage: /etc/init.d/gwctl {start|stop|status|restart|control}" exit 1 ;; esac exit 0

Have fun, and take it easy