Comment faire pour que « apt-get upgrade » utilise moins de ressources ?

Bonjour à tous,

Aujourd’hui je vous présente une petite astuce toute simple pour faire en sorte que la mise à jour consomme moins de ressources sous linux.

Dans certain cas il peut s’avérer utile que la mise à jour consomme moins de ressource (pour les petites configuration). Par contre la procédure prendra plus de temps.

Sur linux, il existe deux commandes très utile qui sont :

  • nice :  permet de changer le niveau de priorité d’un processus déterminé. La priorité la plus élevée correspond à un niveau de -20, tandis que la plus basse correspond à +19
  • ionice : même chose que nice mais pour la vitesse de lecture/écriture sur le disque. ionice va de 0 à 7, où 0 est la valeur de priorité la plus élevé et 7 la plus faible

Pour nice et ionice le principe d’utilisation est le même :

nice -n <niceness> <command>

  • niceness étant la valeur de la priorité

Pour mettre à jour la priorité d’un processus, il existe la commande renice

renice -n <niceness> -p <pid>

 

Pour lancer la mise à jour avec une faible priorité :

Pour les système GNU/Linux basé sur debian :

sudo nice -n 19 apt-get upgrade

on peut facilement combiner nice et ionice :

sudo ionice -n 7 nice -n 19 apt-get upgrade

Pour les systèmes basé sous centOS / Fedora

sudo ionice -n 7 nice -n 19 yum upgrade

, ,

Pas de commentaire

Récupérer les paroles d’une musique (.mp3, .m4a) et l’enregistrer sous Linux

Bonjour à tous, aujourd’hui nous allons voir un petit script bash bien sympathique qui permet de récupérer tous les fichiers musicaux (.mp3, .m4a ou d’autres – il suffit de les ajouter dans le script-) et d’y ajouter les paroles des chansons.

Tout d’abord, nous devons nous assuré de disposer de wget et eyed3

  • Si vous êtes sur une distribution basé sur debian (ubuntu, elementary os, linux mint, etc …)

sudo apt-get install wget eyed3

  • Si vous êtes sur une distribution basé sur centOS / fedora :

yum install python-eyed3 wget

 

Qu’est-ce que eyed3 ?

eyed3 est un petit programme python qui permet de jouer les méta-data ID3 . Elle sont surtout utilisé avec les fichiers .mp3, elle peuvent contenir le nom de l’artiste, de l’album, de la musique et aussi les paroles !

L’idée va être d’extraire de ces méta-datas le nom de l’artiste ainsi que le nom de la chanson pour récupérer les paroles et les stockés dans ces méta-data.

Voici un petit script shell qui permet de faire cela automatiquement.

Placer-le dans un répertoire (par exemple /home/user/musique) et il se chargera de scruter toutes les musiques des répertoires et sous répertoire pour y mettre à jour les méta-data.

 

Merci à Cyprian Guerra pour le script

, , , ,

Pas de commentaire

Wifiphisher : pirater les réseaux Wifi

Un chercheur en sécurité grec, nommé George Chatzisofroniou, a développé un outil d’ingénierie sociale WiFi qui est conçu pour voler les informations d’identification des utilisateurs via les réseaux WiFi sécurisés. L’outil est baptisé WiFiPhisher et a été publié sur GitHub.

« C’est une attaque d’ingénierie sociale qui n’utilise pas la force brute contrairement à d’autres méthodes. C’est un moyen facile d’obtenir les mots de passe WPA d’une cible« , a déclaré George Chatzisofroniou».

Cependant, il existe déjà plusieurs outils de piratage sur Internet dédiés au piratage d’un réseau sécurisé WiFi, mais cet outil automatise de multiples techniques de piratage WiFi qui le font se démarquer des autres. WiFiPhisher utilise le scénario d’attaque « Evil Twin »  : l‘outil créer d’abord un faux point d’accès sans fil (AP) et se fait passer pour un AP WiFi légitime. Il déclenche ensuite une attaque par déni de service (DoS) contre le point d’accès WiFi légitime, ou crée des interférences autour de ce dernier, qui déconnecte alors les utilisateurs sans fil. Ces derniers sont ensuite invités à inspecter les réseaux disponibles… le piège se referme !

Une fois déconnecté du point d’accès WiFi légitime, l’outil va forcer les ordinateurs et périphériques hors ligne pour qu’ils se reconnectent automatiquement au jumeau maléfique, permettant au pirate d’intercepter tout le trafic via ce dispositif. La technique est également connu comme AP Phishing, Wi-Fi Phishing, Hotspotter ou Honeypot AP. Ce genre d’attaques font usage de faux points d’accès avec des pages de connexion truquées pour capturer les informations d’identification WiFi des utilisateurs, numéros de carte de crédit, ou encore lancer des attaques man-in-the-middle (ou MiTM) et infecter les hôtes du réseau sans fil.

« WiFiPhisher est un outil de sécurité capable de monter des attaques phishing rapides et automatisées contre les réseaux WiFi WPA pour obtenir les identifiants sans brute force« , a déclaré Chatzisofroniou. « WifiPhisher renifle la zone et copies les paramètres du point d’accès cible et créer un point d’accès sans fil voyou qui est modelé sur la cible. »

mitm-attack-wifiSource : undernews

 

Je n’ai pas voulu m’embêter à réécrire la partie théorie déjà très bien expliqué par undernews, alors je vous ai lamentablement copié/collé l’article d’undernews.

 

L’outils est disponible par défaut sur la distribution KALI mais vous pouvez l’installé très facilement sur ubuntu en clonant le dépôt gitHub

 

pour lancer l’wifiphisher, rien de plus simple :

 Attention tout de même, vous avez besoin de deux cartes wifi.

Lire la suite »

, , , , ,

Pas de commentaire

Différence entre ‘+’ et ‘\;’ à la fin de la commande -exec

Bonjour à tous,

j’écris juste un petit billet car je me suis demandé quelle était la différence entre l’utilisation du + et \; à la fin de -exec lors de l’utilisation de la commande find ?

-exec ... \;  lance une commande après l’autre. Si vous avez trois fichiers, la ligne de commande va être exécuter trois fois.

-exec ... {} +  est utilisé pour les commandes qui peuvent prendre en argument plus d’un fichier à la fois (exemple : cat, stat, ls). Le fichier trouvé par find sont chaîné ensemble comme avec la commande xargs .

Voici un petit comparatif entre les deux commandes sur 10 000 fichiers :

Lire la suite »

, , ,

Pas de commentaire

Création d’une application ubuntu – jour 4

Navigation sous ubuntu touch

Dans le projet que nous venons d’ouvrir il y a des exemples d’utilisation de presque tous les composants ubuntu, mais pas pour la navigation. Nous allons donc voir comment faire un système de navigation.

Il existe deux façon de naviguer sur ubuntu touch : PageStack et Tabs. Nous allons étudiez chacun des deux composants.

Utiliser la navigation avec le composant PageStack

Pour utiliser pageStack il faut aller sur la documentation officiel pour prendre connaissance des règles de design (comme indiqué sur l’image ci-dessous) :

Lire la suite »

, , ,

Pas de commentaire

Création d’une application pour ubuntu touch – jour 3

Utilisation du toolkit de démonstration d’ubuntu touch

Bonjour à tous.

Après avoir passez les deux étapes préliminaires, nous allons tout doucement passez au cœurs du développement de l’application. Mais avant de commencer le développement à proprement parlé, je vous invite à vous familiarisé avec les conventions de design sous ubuntu touch en découvrant le kit de d’utilisation (toolkit) d’ubuntu ui (user interface) .

Ubuntu ui – toolkit

Lorsque vous avez installé le sdk ubuntu, vous avez aussi installé de petit exemples d’utilisations des composants ubuntu.

Dans ce bref tutoriel, nous allons nous intéresser aux différents composants existant pour ubuntu touch.

 

Ouverture du toolkit

Le projet est situé dans le répertoire « /usr/lib/ubuntu-ui-toolkit/examples/ »

Dans Qt, faire CTRL + o pour ouvrir un nouveau projet, puis collez /usr/lib/ubuntu-ui-toolkit/examples/ dans la barre de location, comme dans l’exemple ci-dessous :

Lire la suite »

, , ,

Pas de commentaire

Ubuntu touch – Comment parser une API JSON dans un ListView

Bonjour à tous,

Dans ce petit tutoriel rapide on va voir comment récupérer les données d’une API JSON et de les afficher dans un ListView. Voici un petit exemple du résultat final :

JSON to ListView

Qt fournis déjà une petite feature l XMLListModel qui permet de paser aisément du XML. Malheureusement aucun component ne permet de le faire en JSON.

Un peut partout sur le net on trouve des petites bidouilles pour le faire via du javascript. L’utilisation du javascript pure est simple et efficace. Le seul bémol c’est lorsqu’on commence à avoir une API un petit peut compliqué, le code deviens très vite désorganisé.

Heureusement, la nature ayant horreur du vide. Un grand merci à  Romain Pokrzywka qui nous à préparer un petit component pour parser du JSON : JSONListModel. C’est beaucoup plus propre que d’utiliser du javascript pure.

Il suffit de télécharger les fichier JSONListModel.qml et jsonpath.js. Insérer les dans votre projet et le tour est joué.

Lire la suite »

, , , , ,

Pas de commentaire

Empêcher un fichier d’être modifié ou supprimé

Il est possible d’empêcher n’importe quel fichier d’être modifié, supprimé ou même renommé, et ce, par par n’importe quel utilisateur, root y compris.

Comment faire ?

Pour faire cela il faut utiliser la commande : chattr qui modifie les attributs d’un fichier.

L’option qui nous intéresse est l’option « i » : « +i » pour activer la protection et « -i » pour désactiver cette protection .

Le « i » signifie immuable (ou immutable en anglais) qui veux dire « ne peuvent pas être modifiés ».

chattr peut aussi protéger des répertoires entiers. chattr doit être utilisé avec les privilèges root.

  • Protéger un fichier :

sudo chattr +i <fichier ou repertoire>

  • Retirer la protection d’un fichier protéger

sudo chattr -i <fichier ou repertoire>

Si vous appliquez ces commandes sur un répertoire, vous pouvez utilisez l’option « -R » pour exécutez la commande récursivement.

Lire la suite »

, , , , ,

Pas de commentaire

Comment mettre un background à un TextField

Bonjour à tous,

aujourd’hui je vous fais découvrir une petite astuce, toute simple pour pouvoir mettre un background à un TextField. Ce petit trick ne casse pas des briques mais ça fais un bon petit aide mémoire.

Il faut préférer l’utilisation d’un « TextField » plutôt qu’un « TextInput« , grâce à cela vous pourrez utiliser « TextFieldStyle » qui permet de personnalisé le TextField.

Et voici le rendu :

textField

 

Source

, , , ,

Pas de commentaire

Comment utiliser le système de notification avec qml et unity

Comment utiliser le système de notification d’ubuntu (et d’autres distribution) depuis QML ?

Autant que je le sache, il n’existe pas d’API QML pour accéder au système de notification.
Pour éviter d’avoir à créer un plugin C++ pour avoir les notifications sur une application desktop, il est plus simple d’utiliser pyotherside et d’appeler un petit module python pour effectuer le travail.

Pré-requis :

Vous l’aurez compris, il suffit de s’assurer que pyotherside est installé.
D’abbord, assuré vous d’avoir les bon ppa

puis lancer l’installation

Lire la suite »

, , ,

Pas de commentaire