Catégories
Developpement Open-source Planet-libre Systeme

Les nouveautés de Glances 1.3.6

Glances, mon logiciel de supervision système en mode console vient de sortir en version 1.3.6.

Voici les nouveautés:

  • Les statistiques du panneau de gauche peuvent être masqués ou affichés à la demande en cliquant sur les touches ‘n‘ (interfaces réseau), ‘d‘ (entrées/sorties disques) et ‘f‘ (espaces disques).
  • Un panneau d’aide s’affiche quand on clique sur la touche ‘h‘.
  • En plus du « man », il est possible d’afficher le manuel en lançant glances avec les options -h ou –help.
  • Glances est maintenant disponible en Anglais (langue par défaut), en Français ou en Espagnol grâce à la contribution de Jean Bob.
  • Optimisation de l’affichage sur des terminaux > 80×24 caractères.
  • … et bien sûr son lot de corrections de bugs et ajout de contrôles lors du lancement de l’application.

Voici un aperçu de l’interface de la version 1.3.6 de Glances:

Vous trouverez plus d’informations ainsi que la procédure d’installation dans le billet suivant.

Catégories
Gstreamer Musique Open-source Planet-libre

Musique en qualité Studio Masters à partir de votre PC GNU/Linux

Définition: « Est considéré comme étant de qualité Studio Masters tout fichier dont au moins l’échantillonnage ou la quantification sont supérieurs à celle de la qualité CD. Pour rappel, un CD a un échantillonnage de 44,1 kHz et une quantification de 16 bits.« 

La manière d’écouter la musique est certainement une des choses qui a changé le plus radicalement ces 10 dernières années. Contrairement à la vidéo et à l’utilisation des format HD, ce changement s’est accompagné d’une baisse globale de la qualité de la source musicale. En effet, les stores proposent majoritairement des fichiers musicaux compressés en utilisant des codecs avec perte d’information (MP3, MP4, Vorbis…). Si cette perte d’information est négligeable pour une écoute grand public avec votre baladeur ou depuis votre PC, il en est autrement sur une chaîne HIFI de bonne qualité. On se retrouve alors avec une source qui n’est plus en adéquation avec le matériel, celui-ci se trouvant sous exploité.

Nous allons donc voir dans ce billet comment télécharger et exploiter des fichiers musicaux en qualité supérieure au format CD (Studio Masters) sur nos chers machines GNU/Linux. Avant de commencer, voici le matériel que j’ai utilisé pour rédiger ce billet:

  • chaîne HIFI Cambridge avec un DAC Audio Magic de la même marque (voir le test ici) et casque audio AKG K450 et/ou enceintes B&W 685
  • PC sous Ubuntu 11.10 avec la suite logiciel libre Sox
  • MacBook Pro avec sortie audio optique pour exploiter les fichiers > 44.1 kHz (mon PC sous Ubuntu ne disposant pas de sortie audio numérique et l’entrée USB du DAC Cambridge est limité à 44.1 khz)
  • un album en qualité StudioMaster (24 bits / 96.0 kHz) acheté sur le site Qobuz

Obtenir une source « Studio Masters »

Comme nous l’avons vu en introduction, les « stores leaders » sur le marché ne propose pas de formats de fichiers supérieurs à la qualité CD. Il faut donc se retourner sur les boutiques spécialisés dans la haute définition comme par exemple Qobus. Bien que leur catalogue « Studio Masters » ne soit pas très étoffé, c’est quand un même un point d’entrée.

J’ai donc acheté l’album « Audio, video, Disco. » du Groupe Français Justice. en qualité FLAC 24 bits / 96 kHz. (15€ soit 3€ plus cher que la qualité CD et 5€ de plus que la qualité MP3).

Qui dit qualité Studio Masters, dit fichiers de taille importante, il faut donc télécharger presque 1 Go pour un album.

Installation de SoX, le couteau Suisse des logiciels audio HQ

SoX est un ensemble de logiciels permettant de manipuler, en ligne de commande tout type de fichier musicaux.

Pour installer SoX sur votre distribution Ubuntu, rien de plus simple:

[cc]

sudo aptitude install sox libsox-fmt-all

[/cc]

SoX se compose des commandes suivantes:

  • soxi pour obtenir des informations sur un fichier audio
  • rec pour enregistrer dans un fichier audio le son venant d’un de vos périphérique d’entrée
  • play pour jouer vos fichiers audio sur la sortie définie par votre système (analogique, numérique, USB…)
  • sox pour convertir, ajouter des effets dans un fichier audio

Utilisation des fichiers Studio Masters

« Commençons pas le commencement » en utilisant la commande soxi sur les fichiers Studio Masters téléchargés sur Qobus.

[cc]

soxi 01-01-Justice-Horsepower-SMR.flac

[/cc]

On obtient le résultat suivant:

Input File     : '01-01-Justice-Horsepower-SMR.flac'
Channels       : 2
Sample Rate    : 96000
Precision      : 24-bit
Duration       : 00:03:40.09 = 21128600 samples ~ 16506.7 CDDA sectors
File Size      : 89.9M
Bit Rate       : 3.27M
Sample Encoding: 24-bit FLAC
Comments       :
ALBUM=Audio, Video, Disco.
TITLE=Horsepower
TRACKNUMBER=1
TRACKTOTAL=11
DISCNUMBER=1
DISCTOTAL=1
DATE=2011
COPYRIGHT=Ed Banger Records Because Music
GENRE=Electro
ALBUMARTIST=Justice
ARTIST=Justice
DESCRIPTION=Interprètes : Justice, performer; Gaspard Augé, composer & author; Xavier de Rosnay, composer & author
Label : Ed Banger Records Because Music - Because

Les informations « intéressantes » pour notre sujet sont le « sample rate » et la « precision » respectivement aux valeurs 96 kHz et 24 bits.

En utilisant la commande play, j’ai joué ce fichier depuis mon PC Ubuntu branché via un câble USB sur l’entrée USB de mon DAC Cambridge. Comme la documentation du DAC l’annonçait, le fichier est joué en 44,1 kHz car le port USB est seulement en version 1 donc avec un débit insuffisant pour du 96 kHz (plus de 3 Mbps).

[cc]

play 01-01-Justice-Horsepower-SMR.flac

[/cc]

01-01-Justice-Horsepower-SMR.flac:

 File Size: 89.9M     Bit Rate: 3.27M
  Encoding: FLAC          Info: Interprètes : Justice, performer; Gaspard Augé, composer & author; Xavier de Rosnay, composer & author
Label : Ed Banger Records Because Music - Because

  Channels: 2 @ 24-bit   Track: 1 of 11
Samplerate: 96000Hz      Album: Audio, Video, Disco.
Replaygain: off         Artist: Justice
  Duration: 00:03:40.09  Title: Horsepower

In:7.33% 00:00:16.13 [00:03:23.96] Out:1.55M [  ====|====- ] Hd:5.9 Clip:0

La qualité est cependant au rendez-vous. Surtout si je fais la comparaison avec le même morceau compressé en MP3 à 320 Kbps.

Note: les DAC récents proposent des entrées USB 2 supportant des entrées en 24 bits/ 96 kHz (comme le très bon HRT Music Streamer II à moins de 200€ que j’ai eu la chance d’écouter chez un ami).

En jouant le même fichier depuis mon Mac BookPro en utilisant la sortie jack optique (c’est quand même la classe le matériel chez Apple) connecté via un câble Jack – TosLink S/PDIF sur mon DAC Cambridge, je dois avouer (comme pour mon premier billet sur le sujet) que la différence n’est pas flagrante. J’ai donc décidé de faire un « blind test » en passant d’une source 24 bits/ 96 kHz (Mac) à la même source mais « resampler » à 24 bits / 44.1 kHz par le DAC (PC Ubuntu).

Résultat des courses: 7 fois sur 10, j’ai préféré le morceau en 24 bits/ 96 kHz.

Manipuler ses fichiers audio avec SoX

Nous allons maintenant passer à la partie ludique de ce billet en manipulant nos fichiers audio avec les différentes fonctions offertes par SoX.

Resampling: de « Studios Masters » vers CD

Pour transformer notre fichier source Studio Masters (24 bits/ 96 kHz) dans un fichier au format CD (16 bits/ 44.1 kHz), il faut saisir la commande suivante:

[cc]

sox -S 01-01-Justice-Horsepower-SMR.flac -b 16 01-01-Justice-Horsepower-SMR-16bits-44.1kHz.flac rate -h -I -b 90 44100

[/cc]

Notes sur les options:

  • -S permet d’avoir une barre de progression qui s’affiche sur l’écran
  • -b 16 force un resampling en 16 bits (compatible CD)
  • rate -h -I -b 90 44100: resampling de haute qualité en 44.1 kHz

Après une dizaine de secondes de traitement, vous devriez obtenir un fichier de 27 Mo (contre 86 Mo pour la source):

[cc]

soxi 01-01-Justice-Horsepower-SMR-16bits-44.1kHz.flac

[/cc]

Input File     : '01-01-Justice-Horsepower-SMR-16bits-44.1kHz.flac'
Channels       : 2
Sample Rate    : 44100
Precision      : 16-bit
Duration       : 00:03:40.09 = 9705951 samples = 16506.7 CDDA sectors
File Size      : 28.1M
Bit Rate       : 1.02M
Sample Encoding: 16-bit FLAC
Comments       :
ALBUM=Audio, Video, Disco.
TITLE=Horsepower
TRACKNUMBER=1
TRACKTOTAL=11
DISCNUMBER=1
DISCTOTAL=1
DATE=2011
COPYRIGHT=Ed Banger Records Because Music
GENRE=Electro
ALBUMARTIST=Justice
ARTIST=Justice
DESCRIPTION=Interprètes : Justice, performer; Gaspard Augé, composer & author; Xavier de Rosnay, composer & author
Label : Ed Banger Records Because Music - Because

Conversion en MP3

SoX reconnait le format MP3, il est donc simple comme bonjour de transformer notre source loss-less en MP3:

[cc]

sox -S 01-01-Justice-Horsepower-SMR.flac -r 44100 01-01-Justice-Horsepower-SMR-16bits-44.1kHz.mp3 rate -h -I -b 90 44100

[/cc]

Mais…

…  même si la conversion se passe sans problème, le fichier obtenu à un débit de 128 Kbps (donc un MP3 de très mauvaise qualité). Je n’ai trouvé nulle part une option pour encoder à un débit plus important. Si vous avez une idée je suis preneur (avec SoX bien sûr…).

Il est toujours possible d’utiliser SoX pour resampling et lame (sudo apt-get install lame) en utilisant un pipe comme le montre la ligne de commande suivante:

[cc]

sox -S 01-01-Justice-Horsepower-SMR.flac -r 44100 – rate -h -I -b 90 44100 | lame –preset insane – 01-01-Justice-Horsepower-SMR-16bits-44.1kHz.mp3

[/cc]

Et encore…

Voici quelques exemples en bonus (les commentaires sont là pour en ajouter d’autres):

Mixer plusieurs sources audio entre elles en conservant les volumes d’origines:

[cc]

sox -m source1.flac source2.flac destination.flac

[/cc]

Mixer plusieurs sources audio entre elles en mettant tous les volumes au même niveau:

[cc]

sox –combine mix-power source1.flac source2.flac destination.flac

[/cc]

Enregistrer dans un fichier FLAC (par défaut en 16 bits et 48 kHz) le son venant du périphérique d’entrée par défaut de votre PC:

[cc]

rec test.flac

[/cc]

Enregistrer dans un fichier FLAC (16 bits et 8 kHz, adapté à la voix) le son venant du périphérique d’entrée par défaut de votre PC:

[cc]

rec -r 8000 test.flac

[/cc]

 Pour trouver d’autres exemples d’utilisation de SoC, je vous conseille la lecture des ce billet ou de celui-là.
Catégories
Open-source Planet-libre Systeme

Créer un dépôt Debian local sans liaison Internet

Vous êtes sur un réseau sans accès Internet et vous devez installer et maintenir plusieurs machines Debian ?

Ce scénario s’étant présenté à moi, j’ai décidé d’installer sur ce réseau isolé  un dépôt Debian local que j’ai construit à partir des 8 DVD d’installation de la version 6.0.3 de Debian Squeeze.  Nous allons donc dans ce billet voir la marche à suivre, étape par étape.

Construction du dépôt local

Pour effectuer cette action, il faut:

  • les DVD d’installation de la Debian 6.0.x ou toutes les images ISO des DVD d’installation de Debian 6.0.x (à télécharger ici)
  • une machine sous Debian qui hébergera le dépôt local (donc avec un minimum de 50 Go de disque disponible)
  • du temps…

On commence par faire une installation standard de Debian 6.

On créé ensuite un répertoire qui contiendra le dépôt local (/data/debian dans mon exemple qui est en fait un point de montage sur un deuxième disque dur):

mkdir /data/debian

Si vous avez les DVD…

On copie les fichiers .deb des DVD dans ce répertoire en utilisant insérant le DVD dans le lecteur puis en saisissant la commande suivante (action à répéter pour les 8 DVD):

for f in $(find /media/cdrom/debian/pool/ -type f); do cp $f -t /data/debian; done

Si vous avez les images ISO…

Si comme moi vous avez copié les images ISO des DVD sur un NAS (monté dans le répertoire /mnt/nas/iso/debian) alors vous pouvez utiliser cette commande en lieu et place de la précédante:

mkdir -p /mnt/iso
for i in `ls /mnt/nas/iso/debian`
do
  mount -o loop /mnt/nas/iso/debian/$i /mnt/iso
  for f in $(find /mnt/iso/debian/pool -type f)
  do 
    echo $f
    cp $f -t /data/debian
  done
  umount /mnt/iso
done

A la fin de ces opérations, le répertoire /data/debian devrait contenir l’ensemble des paquets .deb constituant la distribution stable de Debian Squeeze (pour une taille d’environ 35 Go).

On passe ensuite à la création des deux fichiers qui vont permettre de transformer ce répertoire en un dépôt Debian: les fichiers Release et Packages.gz.

Le fichier Release

On commence par le fichier Release (à mettre dans le répertoire /data/debian) qui décrit le le dépôt. C’est un fichier texte à créer avec votre éditeur favori:

Archive: squeeze

Component: main

Origin: Nicolargo

Label: Le depot de Nicolargo

Architecture: amd64

Les lignes importantes sont:

Archive: squeeze > Ce dépôt sera utilisable par des machines sous Debian 6 (nom de code Squeeze)

Component: main > Ce dépôt contient les composant principaux de la distribution Debian 6

Architecture: amd64 > Ce dépôt sera utilisable par des machines 64 bits

Le fichier Packages.gz

On continu ensuite avec le fichier Packages (compressé avec Gzip) qui contiendra la description (nom, version , description, dépendances…) de tous les paquets .deb se trouvant dans le répertoire. Il est bien sur impossible de construire ce fichier à la mimine. Nous allons donc utiliser l’utilitaire dpkg-scanpackages.

cd /data/debian

dpkg-scanpackages ./ /dev/null | gzip -9c > Packages.gz

Cette opération va prendre un certain temps… Soyez patient…

Test local du dépôt

Avant d’utiliser ce dépôt sur d’autres machines, il faut dans un premier temps le tester sur notre machine hébergeant le dépôt. Pour cela il faut éditer le fichier /etc/apt/sources.list pour y laisser seulement la ligne suivante:

deb file:///data/debian ./

On met ensuite à jour la base APT de notre machine:

apt-get update

Installation du serveur Web pour proposer le dépôt à d’autres machines

Pour que votre dépôt soit visible depuis les autres machines de votre réseau, le plus simple est d’y installer un serveur Web qui va présenter le répertoire /data/debian en utilisant le protocole HTTP.

Personnellement, j’utilise le serveur Web NGinx:

apt-get install nginx

Puis en éditant le fichier /etc/nginx/sites-enabled/defaults:

server {

listen 80;

server_name localhost;

access_log logs/debianrepos.access.log main;

location /debian {

root /data;

autoindex on;

}

}

On relance NGinx pour prendre en compte la configuration:

/etc/init.d/nginx restart

Utilisation du dépôt local

Pour utiliser notre beau dépôt local sur une autre machine Debian Squeeze, il suffit d’éditer le fichier /etc/apt/sources.list pour y laisser seulement la ligne suivante:

deb http://192.168.1.100/debian ./

Ou 192.168.1.100 est à remplacer par l’adresse IP du serveur hébergeant votre dépôt.

On met ensuite à jour la base APT de notre machine:

apt-get update

Il ne reste plus qu’a installer vos logiciels en utilisant la commande apt-get install !

Sources pour la rédaction de ce billet:

Catégories
Open-source Planet-libre Systeme

Pense-bête: un deuxième disque dur pour votre GNU/Linux

Petit pense-bête à usage interne pour installer (= partitionner & formater) un deuxième disque dur au format ext4 sur une distribution GNU/Linux.

Notes: les commandes suivantes doivent être effectuées depuis un compte root.

Préparation

On commence par vérifier la liste des disques disponibles avec la commande:

[cc]
# fdisk -l
[/cc]

J’obtiens:

Disk /dev/sda: 17.2 GB, 17179869184 bytes
255 heads, 63 sectors/track, 2088 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0000f7a3

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1        1998    16043008   83  Linux
/dev/sda2            1998        2089      731137    5  Extended
/dev/sda5            1998        2089      731136   82  Linux swap / Solaris

Disk /dev/sdb: 34.4 GB, 34359738368 bytes
255 heads, 63 sectors/track, 4177 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

Disk /dev/sdb doesn't contain a valid partition table

J’ai donc deux disques disponibles (je suis sur une VM donc ne vous étonnez pas des tailles):

  • /dev/sda: d’une taille de 17.2 GB avec 3 partitions (sda1, sda2, sda5)
  • /dev/sdb: d’une taille de 34.4 GB sans partition

C’est ce deuxième disque (sdb) que l’on souhaite installer

Partitionnement

On commence donc par partitionner le disque en question:

[cc]
# fdisk /dev/sdb
[/cc]

Notes: Faites bien attention à lancer la commande fdisk sur le bon disque…

une seule grosse partition qui utilisera la totalité de l’espace disque:

Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
Building a new DOS disklabel with disk identifier 0x852ed7ac.
Changes will remain in memory only, until you decide to write them.
After that, of course, the previous content won't be recoverable.

Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)

WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
         switch off the mode (command 'c') and change display units to
         sectors (command 'u').

Command (m for help): n
Command action
   e   extended
   p   primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-4177, default 1): 
Using default value 1
Last cylinder, +cylinders or +size{K,M,G} (1-4177, default 4177): 
Using default value 4177

Puis on demande à fdisk de lui affecter le type ‘Linux’

Command (m for help): t
Selected partition 1
Hex code (type L to list codes): 83

Puis on valide:

Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.

La partition que l’on vient de créer portera le nom sdb1.

Formatage en ext4

On utilise ensuite la commande mkfs.ext4 pour formater la partition au format EXT4

[cc]
# mkfs.ext4 -b 4096 /dev/sdb1
[/cc]

mke2fs 1.41.12 (17-May-2010)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
2097152 inodes, 8387930 blocks
419396 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=4294967296
256 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks: 
	32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 
	4096000, 7962624

Writing inode tables: done                            
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 34 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.

Vérification

On vérifie que tout c’est bien passé:

[cc]
# fdisk -l
[/cc]

Disk /dev/sda: 17.2 GB, 17179869184 bytes
255 heads, 63 sectors/track, 2088 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0000f7a3

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1        1998    16043008   83  Linux
/dev/sda2            1998        2089      731137    5  Extended
/dev/sda5            1998        2089      731136   82  Linux swap / Solaris

Disk /dev/sdb: 34.4 GB, 34359738368 bytes
255 heads, 63 sectors/track, 4177 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x852ed7ac

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1        4177    33551721   83  Linux

Nous disposons donc bien d’une disque (/dev/sdb1) de 34.4 GB

Utilisation de la nouvelle partition

Pour utiliser ce nouveau disque, il faut le monter (« mount »).

On commence donc par créer un répertoire (/mnt/data) dans lequel le contenu du disque sera visible:

[cc]
# mkdir /mnt/data
[/cc]

Puis on édite le fichier /etc/fstab pour lui ajouter la ligne suivante:

/dev/sdb1             /mnt/data    ext4  defaults   1 1

On monte le disque:

[cc]
# mount /mnt/data
[/cc]

et on vérifie que le système le détecte:

[cc]
# df -k
[/cc]

Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/sda1             15791024   2446256  12542620  17% /
tmpfs                   513604         0    513604   0% /lib/init/rw
udev                    508732       116    508616   1% /dev
tmpfs                   513604         0    513604   0% /dev/shm
/dev/sdb1             33025240    180152  31167504   1% /mnt/data

Bingo, il ne reste plus qu’à écrire/lire vos données dans le répertoire /mnt/data !

Catégories
Blog Musique Web

Gérer sa bibliothèque musicale en 2012

Il y a quelques mois, je publiais un article sur l’histoire de la gestion de mes fichiers musicaux. Quelques 6 mois plus tard,  il est intéressant de noter que la tendance est restée la même: un abandon progressif du support physique et des fichiers locaux.

Il y a encore un an, je continuais à entretenir ma bibliothèque iTunes en « rippant » mes CDs préférés. Aujourd’hui, j’utilise exclusivement le service Spotify Premium pour lequel je paye un abonnement mensuel de 9.99€ (et oui chez Spotify aussi $1=1€… #wtf) pour une utilisation illimitée depuis mes ordinateurs et smartphones.

Mes sources (magazines papiers type Inrocks, blogs musicaux: PitchFork|Mowno|Hop-Blog, CDs empruntés à la CDthéque, radio…) me permettent d’alimenter une playlist que j’appelle « Coups d’oreille 2012 » (vous pouvez écouter ma playlist 2011 ici) et dans laquelle j’ajoute en vrac les musiques que je souhaite écouter plus attentivement.  Une fois cette écoute faite, plusieurs choix s’offrent à moi:

  • « C’est quoi cette daube ! (ou j’aime pas ce style dans le langage politiquement correct) » > supprimer purement et simplement la musique (titre ou album entier) de ma playlist
  • « Pas mal ! (c’est bon j’aime dans le langage des abeilles) » > laisser la musique dans la playlist
  • « Génial ! elle déchire cette zic ! (jeuns mode) » > mettre une étoile à la musique en question et optionnellement la copier dans d’autres playlist (par genre ou mon top 2011 à écouter ici). La majorité des ces playlists sont disponibles off-line (c’est à dire téléchargées directement sur la machine afin de les écouter même sans connexion Internet).

Ce que j’aime particulièrement avec ce système de musique dématérialisée, c’est le fait de pouvoir écouter la musique en continu le long de la journée. Par exemple, je commence chez moi avec l’iPhone branché via un dock sur ma chaîne HIFI. Ensuite, je continu dans la voiture avec le même iPhone branché sur l’entrée auxiliaire de mon poste autoradio (en attendant mieux…). Un peu de marche avec mon casque (j’utilise un AKG-450 dont je suis très satisfait) sur les oreilles pour finir à mon travail, avec le même casque, branché sur mon PC GNU/Linux et en utilisant le client lourd Spotify.

Je suis vraiment très satisfait de cette manière d’écouter de la musique. Je noterai cependant les axes d’améliorations suivants:

  • avoir la possibilité d’écouter des musiques en hautes qualités. Actuellement, Spotify utilise le codec libre Vorbis en qualité Q5 (~160Kbps) sur smartphones et Q5 ou Q9 (~ 320 Kbps mais pas sur toutes les musiques) sur PC/Mac (pour forcer la qualité Q9, il faut aller dans les propriétés du client Spotify). Bien que cette qualité soit acceptable, elle reste inférieure à une qualité CD, surtout avec une bonne chaîne / casque audio. Il serait donc sympa, quand la connexion Internet le permet, de disposer de musiques encodées en « Loss Less » (FLAC par exemple)…
  • avoir enfin une version définitive (marre de la pré-version) du client Spotify natif pour GNU/Linux (bien que la version actuelle fonctionne bien, aux erreurs de mises à jours près…).
  • certains albums / auteurs ne sont pas encore disponibles sur Spotify (mais je dois avouer que c’est de plus en plus rare).
  • pouvoir partager des morceaux avec des personnes qui n’ont pas le client Spotify (bref un client Web léger serait le bienvenu).

Et vous, vos habitudes ont elle changés en 2011 ?

PS: je n’ai aucune action chez Spotify Ltd, c’est juste le service en ligne que j’utilise historiquement (après un bref passage chez Deezer).

Catégories
Blog

Quelques statistiques du blog pour 2011

Avant tout, chers lecteurs, bonne et heureuse année 2012 à vous et à vos proches, quelle vous apporte le bonheur, la santé et la réalisation de vos projets.

Janvier 2012, l’heure des bilans pour ce blog qui, je l’espère, vous apporte autant qu’à moi. Voici donc quelques statistiques (avec en bonus les requêtes MySQL) de l’année 2011.

Au niveau du trafic global, la barre des 2 millions de pages vues a presque été atteinte (1.942.874 PV),

Nombre de billets publiés en 2011

[cc]

SELECT COUNT(*) FROM wp_posts WHERE post_status= »publish » AND post_date BETWEEN ‘2011-01-01’ AND ‘2011-12-31’;

[/cc]

Résultat122 (contre 161 en 2010)

Comme je vous l’avais annoncé, je pense réduire le nombre de billets sur ce blog mais en proposant des articles plus complets.

Nombre de commentaires pour les billets publiés en 2011

[cc]

SELECT SUM(comment_count) FROM wp_posts WHERE post_status= »publish » AND post_date BETWEEN ‘2011-01-01’ AND ‘2011-12-31’ GROUP BY post_status;

[/cc]

Résultat: 1796 (contre 1314 en 2010)

Toujours plus de commentaire, merci à vous !

Liste des 10 billets les plus commentés publiés en 2011

[cc]

SELECT post_title,comment_count FROM wp_posts WHERE post_status= »publish » AND post_date BETWEEN ‘2011-01-01’ AND ‘2011-12-31’ ORDER BY comment_count DESC LIMIT 0,10;

[/cc]

Résultat:

106Script d’installation automatique de Shinken/Thruk

85 – Script de post installation de Debian Desktop

68 – Installation automatique de NGinx, PHP-FPM, MemCached sous Debian

66 – Glances: vos stats systémes en un clin d’oeil

54 – Nagios 3.3.1: mise à jour des scripts d’auto installation

51 – Installation pas à  pas d’un serveur de blog WordPress sur Debian Squeeze

48 – Les « choses à  faire » après l’installation de Ubuntu 11.04

48 – Trousse à outils libres sous Windows

46 – Un serveur RTSP basé sur GStreamer

45 – Que faire aprés l’installation de Ubuntu 11.10 ?

 

Top 10 des lecteurs ayant le plus posté de commentaires sur le blog en 2011

[cc]

SELECT comment_author,COUNT(comment_count) AS F01 FROM wp_comments,wp_posts WHERE comment_approved=1 AND comment_post_ID=ID AND comment_date BETWEEN ‘2011-01-01’ AND ‘2011-12-31’ GROUP BY comment_author ORDER BY F01 DESC LIMIT 0,10;

[/cc]

Résultat:

426 – NicoLargo

37 – leglaude

29 – Romain

24 – Edouard

20 – Vincent RABAH

17 – NourSs

16 – Mr Xhark

16 – ghost

15 – Bartounet

14 – Aurélien PONCINI

Rendez-vous l’année prochaine pour le prochain bilant !

 

Catégories
Blog Open-source Planet-libre Systeme

Résultats du sondage sur les systèmes d’exploitation

Je viens de clôturer le sondage que j’avais mis en ligne dimanche dernier et qui avait pour objectif de connaître les systèmes d’exploitation que vous, lecteurs du blog, utilisez au quotidien.

Quelques 638 réponses plus tard, voici le résultat des courses !

Question 1: Quel système d’exploitation utilisez vous chez vous ?

Pas de grosses surprise, les distributions basées sur Debian (Ubuntu/Debian/Mint) arrive en tête pour le monde GNU/Linux. Windows est encore bien présent mais souvent en deuxième machine (c’est pour cela que la somme des réponses dépassent les 100%). A noter que Mac OS X arrive en 4em place.

Les lecteurs de ce blog sont donc bien équipés avec une moyenne de 2.06 OS par domicile.

Question 2: Quel système d’exploitation utilisez vous au boulot ?

Le lobbying|vente forcée de Microsoft marche encore bien dans nos entreprises puisque Windows arrive en deuxième position (419) derrière les « Debian like » (492).  Il est par contre assez étonnant de voir le relatif faible score de la distribution Redhat pour qui l’entreprise est clairement la cible. Il faut cependant relativiser ces chiffres par le fait que les lecteurs de ce blog ne sont pas des utilisateurs lambda…

L’utilisation de plusieurs systèmes est aussi important (2.02 OS par utilisateur).

Question 3: Si vous êtes sous GNU/Linux, quel est votre environnement graphique ?

Question un peu à part, mais d’actualité, sur l’utilisation des environnements graphiques GNU/Linux. Gnome 2 (le classique) arrive en tête mais il est suivi le prêt par Gnome 3 (Shell) qui semble enfin prendre son envol. Unity qui a pas mal fait parlé de lui arrive en 3em place alors qu’il est seulement pré-installé sur les dernières distributions Ubuntu.

Question 4: Sur quel système d’exploitation installez vous vos serveurs (dédiés ou virtuels) ?

Il est intéressant de voir que pour vos serveurs, Debian largement en tête des votes. La stabilité de ce système est rassurante pour des machines qui sont critiques. Ubuntu Server arrive en deuxième place devant Fedora/Redhat.

Que pensez-vous de ces résultats ? Des surprises ?

Vous pouvez consulter les résultats complets sur cette page.

Catégories
Open-source Planet-libre Systeme

Présentation complète de Glances

Il y a quelques jours, je vous avez présenté la première version de Glances, mon logiciel pour surveiller simplement ses systèmes en mode texte à partir d’une console ou d’un terminal. Quelques versions plus tard (Glances est actuellement disponible en version 1.3.7), il était temps pour moi de vous en faire une présentation un peu plus complète.

Introduction

Glances est un logiciel libre (distribué sous licence LGPL) permettant de surveiller votre système d’exploitation GNU/Linux ou BSD à partir d’une interface texte. Glances utilise la librairie libstatgrab pour récupérer les informations de  votre système. Il est développé en langage Python.

Installation

Depuis le gestionnaire de paquet de votre système

Des paquets existent pour plusieurs distributions: Arch, Fedora/Redhat…

Le processus de packaging est actuellement en cours sur d’autres distribs, je vous conseille donc de rechercher Glances (avec un s !) sur votre gestionnaire de package avant de faire une installation depuis les sources.

Merci de laisser un commentaire dans ce billet si vous trouvez Glances sur votre système 🙂

Depuis le PPA

Pour les distributions Ubuntu (et dérivées) depuis la 9.10 jusqu’à la 12.04, il est possible d’utiliser le PPA généreusement maintenu par Arnaud Hartmann.

[cc lang=bash »]

sudo add-apt-repository ppa:arnaud-hartmann/glances-stable

sudo apt-get update

sudo apt-get install glances

[/cc]

Depuis les sources

Le projet Glances est hébergé sur GitHUB.

Pour l’installer, il suffit de suivre les instructions suivantes depuis un terminal.

Récupération de la dernière version (1.3.7):

[cc]

$ wget https://github.com/downloads/nicolargo/glances/glances-1.3.7.tar.gz

[/cc]

Procédez ensuite à l’installation:

[cc]

$ tar zxvf glances-1.3.7.tar.gz
$ cd glances-1.3.7
$ ./configure
$ make
$ sudo make install

[/cc]

Glances a besoin des dépendances suivantes:

  • Python 2.6+ (non testé avec Python 3+)
  • libstatgrab 0.16+
  • python-statgrab 0.5+ (ne marchera PAS avec python-statgrab 0.4)

Notes specifiques pour une installation sous Debian 6.

Debian Squeeze met à disposition la version 0.4 de python-statgrab. Il faut donc installer la version 0.5 à la main:

[cc]

$ sudo apt-get install libstatgrab-dev pkg-config python-dev make
$ wget http://ftp.uk.i-scream.org/sites/ftp.i-scream.org/pub/i-scream/pystatgrab/pystatgrab-0.5.tar.gz
$ tar zxvf pystatgrab-0.5.tar.gz
$ cd pystatgrab-0.5/
$ ./setup.py build
$ sudo ./setup.py install

[/cc]

Notes specifiques pour une installation sous Ubuntu 10.04 et 10.10.

Ces versions d’Ubuntu mettent à disposition la version 0.4 de python-statgrab. Il faut donc installer la version 0.5 à la main:

[cc]

$ sudo apt-get update
$ sudo apt-get install pkg-config build-essential autoconf automake python libstatgrab-dev python-all-dev
$ sudo apt-get remove python-statgrab
$ wget http://ftp.uk.i-scream.org/sites/ftp.i-scream.org/pub/i-scream/pystatgrab/pystatgrab-0.5.tar.gz
$ tar zxvf pystatgrab-0.5.tar.gz
$ cd pystatgrab-0.5/
$ ./setup.py build
$ sudo ./setup.py install

[/cc]

Lancement de Glances

Il suffit de saisir la commande suivante dans une console ou un terminal:

[cc]

$ glances.py

[/cc]

Note: sur certaines distributions, il faut saisir glances en lieu et place de glances.py.

Guide d’utilisation

Par défaut, l’affichage des statistiques est rafraichi toute les secondes.

Il est possible de changer cette valeur en utilisant l’option -t. Par exemple pour fixer un taux de rafraichissement à 5 secondes:

[cc]

$ glances.py -t 5

[/cc]

Les statistiques jugées importantes sont affichées en couleur:

  • VERT: la statistique est « OK »
  • BLEU: la statistique est « CAREFUL » (à surveiller)
  • VIOLET: la statistique est « WARNING » (en alerte)
  • ROUGE: la statistique est « CRITICAL » (critique)

Quand Glances est lancé, il est possible d’utiliser les touches suivantes:

a‘ pour trier la liste des processus de manière automatique:

  • Si la CPU totale > 70% alors le tri se fait pas consommation CPU
  • si la mémoire total > 70% alors le tri se fait pas consommation MEMOIRE

c‘ pour forcer le tri par consommation CPU

d‘ pour desactiver ou activer l’affichage des entrées/sorties disques

f‘ pour desactiver ou activer l’affichage de l’occupation des FS

h‘ pour afficher ou cacher l’aide en ligne

m‘ pour forcer le tri par consommation MEMOIRE

n‘ pour desactiver ou activer l’affichage des interfaces réseau

q‘ pour quitter Glances (il est également possible d’utiliser CTRL-C)

Passons ensuite à la description de la fenêtre de Glances:

En-tête

L’en-tête montre la version de Glances, le nom de la machine (FQND) ainsi qu’une information sur le système d’exploitation (nom, version).

CPU

L’état de la CPU est affiché par un pourcentage de l’utilisation globale.

  • Si user|kernel|nice CPU est < 50%, alors le status est « OK ».
  • Si user|kernel|nice CPU est > 50%, alors le status est « CAREFUL ».
  • Si user|kernel|nice CPU est > 70%, alors le status est « WARNING ».
  • Si user|kernel|nice CPU est > 90%, alors le status est « CRITICAL ».

Charge moyenne (aka Average Load)

Il est assez difficile de donner une définition claire de la charge d’une machine (load average). Sur le blog Nosheep, Zach en donne la définition suivante:

 » C’est la somme moyenne du nombre de processus en attente dans la queue d’execution plus le nombre de processus actuellement en train d’être executés sur une période de temps de 1, 5 et 15 minutes. »

Glances permet d’afficher les alertes en tenant compte du nombre de coeurs de votre processeur. Par exemple, le seuil WARNING sera de 2 pour un processeur  Bi-Core alors qu’il sera de 4 sur un Quad-Core.

  • Si la charge moyenne est < O.7*Core, alors le status est « OK ».
  • Si la charge moyenne est > O.7*Core, alors le status est « CAREFUL ».
  • Si la charge moyenne est > 1*Core, alors le status est « WARNING ».
  • Si la charge moyenne est > 5*Core, alors le status est « CRITICAL ».

Mémoire

Glances affiche 3 types d’informations pour la mémoire: RAM, SWAP et réelle (un peu à la manière de la commande « free -h »).

La mémoire réelle occupée est calculée ainsi = used – cache.

La mémoire réelle libre est calculée ainsi = free + cache.

Les alertes utilisent les seuils suivants:

  • Si la mémoire est < 50%, alors le status « OK ».
  • Si la mémoire est > 50%, alors le status « CAREFUL ».
  • Si la mémoire est > 70%, alors le status « WARNING ».
  • Si la mémoire est > 90%, alors le status « CRITICAL ».

Débits des interfaces réseau

Glances affiche les débits des interfaces réseau en adaptant dynamiquement l’unité à utiliser (bits par seconde).

Les alertes ne sont affichées que pour les interfaces dont les informations sur la vitesse maximale sont disponibles (cela dépend des distributions):

  • Si le débit < 50%, alors le status est « OK ».
  • Si le débit > 50%, alors le status est « CAREFUL ».
  • Si le débit > 70%, alors le status est « WARNING ».
  • Si le débit > 90%, alors le status est « CRITICAL ».

Par exemple, sur une interface Ethernet Fast Ethernet (100 Mbps), le status passera à WARNING si le débit dépasse les 70 Mbps.

Entrées/Sorties disque

Glances permet d’afficher les débits en lecture et écriture sur les disques en adaptant dynamiquement l’unité à utiliser (octets par seconde).

Il n’y a pas d’alerte remontée pour ce type d’information.

Espace sur les systèmes de fichiers

Glances affiche par système de fichiers l’espace disque total et utilisé. L’unité est automatiquement adaptée (octets par seconde).

Les alertes sont remontées sur l’espace disque utilisé:

  • Si l’espace disque utilisé est < 50%, alors le status est « OK ».
  • Si l’espace disque utilisé est > 50%, alors le status est « CAREFUL ».
  • Si l’espace disque utilisé est > 70%, alors le status est « WARNING ».
  • Si l’espace disque utilisé est > 90%, alors le status est « CRITICAL ».

Les processus

Glances affiche un résumé sur l’état des processus ainsi qu’une liste détaillé (CPU, MEMOIRE et nom du processus).

Le nombre des processus affichés est adapté à la taille de la fenêtre.

Les logs

Nouveauté de la version 1.3.7.

Lire le billet suivant pour une description de la fonction logs.

 

Pied de page

Glances y affiche la légende (rappel des codes des couleurs) ainsi que la date et l’heure courante.

A faire…

J’ai besoin de contributeurs pour faire évoluer Glances.

Notamment:

  • Packaging pour Debian, Ubuntu, BSD et toutes autres distributions
  • Controle de la présence des librairie dans le fichier configure.ac
  • Inclure les stats de FS directement dans python-statgrab
  • Ajout d’une fenêtre d’aide
  • Optimisation du code

Pour toutes remarques, bugs, demande d’évolution sur Glances, merci d’utiliser le formulaire GitHub.

Catégories
Blog Open-source

Petit sondage pour mes lecteurs…

Cliquer ici pour voir les résultats du sondage. 

Comme vous avez pu le voir, depuis quelques temps, je n’ai pas trop le temps de bloguer régulièrement. Entre mon boulot, la vraie vie et les évolutions de Glances (mon petit logiciel de supervision système qui vient de sortir en version 1.3.2), je n’arrive pas à libérer du temps pour finaliser les billets que j’ai dans le pipe (notamment un sur la virtualisation QEMU/Libvirt).

Donc, pour une fois, je vais vous faire travailler !

Je viens de mettre en ligne un petit sondage qui me permettra de mieux cibler les articles (ou du moins les procédures) afin qu’ils s’adaptent à vos environnements de travail. Il ne devrait pas vous prendre plus de 2 minutes de votre temps.

Le sondage est disponible ici (cliquer sur ce lien pour ouvrir la page du sondage).

D’avance merci à vous !

Catégories
Open-source Planet-libre Reseau Systeme

Debian et les mails depuis la ligne de commande

Suite à l’installation d’un serveur Kimsufi 16G sous Debian 6.0 puis configuré avec mon script de post installation spécial serveur, j’ai attendu en vain la réception des premiers apports de Fail2ban qui devaient être envoyés par mail.

Une petit visite des fichiers de logs me montre rapidement d’ou vient le problème:

… Can’t exec /usr/lib/sendmail: No such file or directory…

Par défaut, il n’y a donc pas de brique système permettant d’envoyer des mails.

Installation de Postfix

Pour résoudre cela, j’ai donc exécuté la commande suivante qui va installer le serveur de messagerie Postfix:

[cc lang= »bash »]

sudo apt-get install postfix

[/cc]

Puis configuré Postfix de la manière suivante:

Puis:

Configure le Firewall

Cette section est optionnelle et ne concerne que les serveurs qui embarque un Firewall système (Iptables).

Si vous avez un Firewall sur votre serveur (j’utilise ce script que je place dans /etc/init.d/), il faut autoriser les flux sortant sur le port SMTP (TCP/25) sous risque d’avoir le message suivant dans votre fichier syslog:

Dec 11 08:46:00 ks387949 kernel: IN= OUT=eth0 SRC=176.31.252.29 DST=217.70.184.162 LEN=60 TOS=0x00 PREC=0x00 TTL=64 ID=30778 DF PROTO=TCP SPT=59718 DPT=25 WINDOW=14600 RES=0x00 SYN URGP=0

Pour cela, il faut éditer le script puis ajouter le port 25 dans la variable REMOTE_TCP_SERVICES:

REMOTE_TCP_SERVICES= »22 25 80 443″

Et enfin relancer le script:

[cc lang= »bash »]

sudo /etc/init.d/firewall.sh restart

[/cc]

On teste

Le plus simple est d’utiliser la ligne de commande et la commande mail:

[cc lang= »bash »]

$ mail contact@nicolargo.com

Subject: Test

Test de 09:27

.

[/cc]

Quelques secondes plus tard, vous devriez recevoir le mail:

A vous les rapports Fail2ban