NAS Synology : récupérer les données d'un disque dur issu d'un RAID1 photo

NAS Synology : récupérer les données d’un disque dur issu d’un RAID1

Je possède un NAS Synology pour archiver mes données.

Pour simplifier, un NAS est un système à part entière qui gère des disques dur de sauvegarde accessibles par le réseau.

Synology en RAID1

Dans mon cas, il s’agit d’un Synology 212+ 2 baies qui accueille deux disques dur de 2 To chacun.

Je les ai mis en RAID1, ce qui signifie que tout ce qui est copié sur le volume est répliqué : les données du disque 1 sont recopiées à la volée sur le disque 2.

raid1

Le RAID1 est donc un système de redondance qui donne au stockage des données une certaine tolérance aux pannes matérielles.

En théorie, si un disque lâche, l’autre aura toutes les données intactes. Enfin, ça c’est la théorie !

Des données qui s’envolent

Au courant de l’année 2013, je sauvegarde quelques séries sur le NAS. Je crée un raccourci dans Nautilus pour pouvoir glisser/déposer facilement les fichiers, ce qui semble un chouilla plus rapide que via l’interface web du Synology.

Note : mes transferts semblent plafonner à 300 ko/s alors que j’utilise du CPL, si quelqu’un connaît un autre moyen d’augmenter ce débit, je suis preneur !

En décembre 2013, je vois les diodes du Syno qui clignotent comme un sapin de Noël : je me loggue et me rends compte qu’un de mes dossiers de sauvegarde est vide.

Incompréhension totale. Je suspecte d’abord une intrusion et vérifie les logs mais je n’ai rien trouvé d’inhabituel. Je penche maintenant pour une erreur de manipulation dans nautilus, même si j’y crois peu. Je débranche le Syno du réseau puis l’éteins.

Récupérer les données d’un disque dur issu d’un RAID1

En décembre 2014, c’est-à-dire la semaine dernière, je me dis que ce serait cool de remettre le Syno en route et de me pencher sur le mystère.

Je retire un disque dur d’une des baies et le branche en USB sur ma machine linux. Voici les étapes qui m’ont permis de lire ce disque.

Lire la suite

Ubuntu : installer Pepper Flash sous Chromium pour lire les vidéos Flash photo

Ubuntu : installer Pepper Flash sous Chromium pour lire les vidéos Flash

Suite à une mise à jour de Chromium, il y a quelques années, j’ai perdu la possibilité de lire les vidéos flash sous Chromium. Bon, étant utilisateur de FireFox, je ne trouvais pas vraiment cela gênant, sauf pour les vidéos YouTube et Dailymotion.

Et puis aujourd’hui, cela m’a un peu agacé alors je me suis un peu penché sur le problème.

Pepper Flash et Chromium

Si on utilise Chrome, pas de souci, le plugin Pepper Flash comme le lecteur PDF natif sont inclus. Si on utilise Chromium par contre, le navigateur est nu et il faut installer Pepper Flash soi-même.

Installer Pepper Flash sous Chromium avec Ubuntu

Si vous possédez Ubuntu 14.04+, un installeur Pepper Flash Player installer est disponible dans les dépôts, il suffit de l’installer avec :

sudo apt-get install pepperflashplugin-nonfree && sudo update-pepperflashplugin-nonfree --installCode language: JavaScript (javascript)

Lire la suite

hang-pans

Manu Delago – Two Handsful of Sound

Le hang est un instrument de musique acoustique de la famille des idiophones inventé par Felix Rohner et Sabina Schärer à Berne en Suisse en 2000 : c’est un volume lenticulaire creux composé de deux coupelles métalliques embouties. Le nom « hang » signifie main en dialecte bernois.

hang-pans

La partie supérieure du hang, le « Ding », permet d’obtenir un son très différent suivant la manière dont elle est utilisée ; il est ainsi possible d’obtenir des sonorités proches de celles d’une harpe ou d’une cloche. On retrouve sur le Ding 7 à 8 notes disposées en cercle de la plus grave à la plus aigüe, et d’une plus grave en son centre. Chacune de ces notes fondamentales a trois harmoniques accessibles de différentes façons ; on pourra par exemple étouffer la fondamentale avec un doigt et faire résonner les harmoniques en frappant sur les côtés de la note.

La partie inférieure de l’instrument, le « Gu », est essentiellement constitué d’une surface lisse avec un creux arrondi en son centre. Cette cavité vide permet l’apparition d’une résonance de Helmholtz, comme dans l’udu, qui permet à l’instrument de résonner et de faire sonner ses différentes harmoniques.

hang-schema

Cette création est inspirée de nombreux instruments de percussion venant des différents pays et cultures musicales comme le gong, le gamelan, le ghatam, le tambour, la cloche ou la scie musicale.

Two Handsful of Sound est un morceau composé de dix pistes Hang par Manu Delago.

Génial non ? Cela me rappelle un peu la musique du jeu vidéo Dune.

Ubuntu logo within an update icon

Ubuntu : résoudre l’erreur “xulrunner-bin: error while loading shared libraries: libhunspell-1.2.so.0”

ubuntu-update

Aujourd’hui, j’ai mis à jour mon installation d’Ubuntu 12.04 LTS (precise) vers la version 14.04 LTS (trusty).

Vu qu’il y a quelques années entre les deux distributions, cela a pris quelques heures mais je trouve le système beaucoup plus réactif. J’ai quand même eu une petite erreur, histoire de justifier cet article.

Problème de dépendances avec le paquet xulrunner

Après l’installation, le nettoyage des paquets obsolètes et un petit redémarrage, apt-get m’a indiqué qu’il y avait un problème de dépendance avec ce message d’erreur :

/var/lib/dpkg/info/xulrunner-1.9.2.prerm: 8: /var/lib/dpkg/info/xulrunner-1.9.2.prerm: /usr/sbin/update-alternatives: not found
/usr/lib/xulrunner-1.9.2.9/xulrunner-bin: error while loading shared libraries: libhunspell-1.2.so.0: cannot open shared object file: No such file or directory
dpkg: error processing xulrunner-1.9.2 (--configure):
 subprocess installed post-installation script returned error exit status 127
Errors were encountered while processing:
 xulrunner-1.9.2
E: Sub-process /usr/bin/dpkg returned an error code (1)Code language: JavaScript (javascript)

Après avoir essayé de réinstaller et supprimer libhunspell et xulrunner sans succès, je me suis dit qu’il fallait passer à autre chose.

La solution : éditer le fichier xulrunner-1.9.2.prerm

En suivant à tâtons les liens du message d’erreur, il se trouve qu’il suffit d’éditer le fichier /var/lib/dpkg/info/xulrunner-1.9.2.prerm pour corriger le problème.

Lire la suite

black-mirror-s2-special-white-christmas-jon-hamm

Black Mirror Season 2 Special : White Christmas

Voici l’épisode spécial de la seconde saison de Black Mirror, qui s’intitule White Christmas.

black-mirror-s2-special-white-christmas-jon-hamm

Il s’agit, comme le veut la tradition en Angleterre, d’offrir aux fans de la série un épisode pour Noël. Black Mirror oscille entre récits technologiques, science-fiction et anticipation, et s’appuie sur notre époque et ses technologies en les faisant évoluer pour le meilleur… et pour le pire.

White Christmas

L’épisode, avec en guest star Jon Hamm (le charismatique Don Draper dans Mad Men), utilise à nouveau l’idée d’une convergence des nouvelles technologies avec le corps humain.

Nous nous retrouvons donc dans un monde dans lequel chaque personne peut copier sa personnalité sur un mini disque dur, quitte à avoir son double numérique à côté de soi, ou des interactions réelles gérées comme de simples contacts numériques (notamment la possibilité de “bloquer” quelqu’un).

Lire la suite

WordPress : valider le code des meta oEmbeds de YouTube, DailyMotion, Vimeo et SlideShare photo

WordPress : valider le code des meta oEmbeds de YouTube, DailyMotion, Vimeo et SlideShare

Allez, je continue ma petite série sur la gestion de l’intégration oEmbed sous WordPress.

WordPress gère nativement plusieurs services : copiez-collez l’adresse d’une vidéo YouTube dans un article et hop, vous obtenez une vidéo entièrement intégrée, avec un code plutôt propre mais pas entièrement valide.

oembed-all-service

Je vous propose donc de valider le code généré par WordPress lorsqu’il vient de sites tiers comme YouTube, DailyMotion, Vimeo ou SlideShare.

Valider le code oEmbed de YouTube

Il suffit de lancer les quatre requêtes SQL suivantes :

UPDATE wp_postmeta SET meta_value = REPLACE (meta_value, 'frameborder="0" allowfullscreen', 'style="border: none"');
UPDATE wp_commentmeta SET meta_value = REPLACE (meta_value, 'frameborder="0" allowfullscreen', 'style="border: none"');
UPDATE wp_postmeta SET meta_value = REPLACE (meta_value, "wmode=transparent' frameborder='0'", "wmode=transparent' style='border: none'");
UPDATE wp_commentmeta SET meta_value = REPLACE (meta_value, "wmode=transparent' frameborder='0'", "wmode=transparent' style='border: none'");Code language: JavaScript (javascript)

Valider le code oEmbed de Dailymotion

Pour le code de Dailymotion, ces deux requêtes suffisent :

UPDATE wp_postmeta SET meta_value = REPLACE (meta_value, 'frameborder="0">', 'style="border: none">');
UPDATE wp_commentmeta SET meta_value = REPLACE (meta_value, 'frameborder="0">', 'style="border: none">');Code language: JavaScript (javascript)

Valider le code oEmbed de Vimeo

Quatre requêtes pour Vimeo :

UPDATE wp_postmeta SET meta_value = REPLACE (meta_value, 'frameborder="0" title=', 'title=');
UPDATE wp_postmeta SET meta_value = REPLACE (meta_value, ' webkitallowfullscreen mozallowfullscreen allowfullscreen', '');
UPDATE wp_commentmeta SET meta_value = REPLACE (meta_value, 'frameborder="0" title=', 'title=');
UPDATE wp_commentmeta SET meta_value = REPLACE (meta_value, ' webkitallowfullscreen mozallowfullscreen allowfullscreen', '');Code language: JavaScript (javascript)

Valider le code oEmbed de SlideShare

Et deux requêtes pour SlideShare :

UPDATE wp_postmeta SET meta_value = REPLACE (meta_value, 'frameborder="0" marginwidth="0" marginheight="0" scrolling="no" style="border:1px solid #CCC;border-width:1px 1px 0;margin-bottom:5px" allowfullscreen webkitallowfullscreen mozallowfullscreen>', 'style="border:1px solid #CCC;border-width:1px 1px 0;margin-bottom:5px;overflow:auto;border:none">');
UPDATE wp_commentmeta SET meta_value = REPLACE (meta_value, 'frameborder="0" marginwidth="0" marginheight="0" scrolling="no" style="border:1px solid #CCC;border-width:1px 1px 0;margin-bottom:5px" allowfullscreen webkitallowfullscreen mozallowfullscreen>', 'style="border:1px solid #CCC;border-width:1px 1px 0;margin-bottom:5px;overflow:auto;border:none">');Code language: JavaScript (javascript)

Et voilà, le code est plus propre, plus valide et utilise CSS plutôt que des balises propriétaires.

WordPress : remplacer le vieux code Dailymotion de vos articles par une URL oEmbed photo 1

WordPress : mettre à jour le code Dailymotion

Cet article est le pendant de l’article pour remplacer le vieux code YouTube de vos articles WordPress par une URL oEmbed mais pour Dailymotion.

Voici donc les manipulations à effectuer pour transformer les vieux codes d’intégration avec les URL oEmbed de WordPress.

Nous utilisons toujours le plugin Search Regex pour WordPress avec la case regex activée et le signe dièse (#) comme délimiteur pour les expressions régulières.

Remplacer les liens swf/video de Dailymotion

J’appelle ces liens “swf/video” parce qu’on retrouve cela dans l’URL de l’intégration Flash. Il vaut mieux lancer cette substitution en premier.

On recherche :

#<object data="http://www.dailymotion.com/swf/video/(.*)" width="300" height="150">(.*)</object>#Code language: HTML, XML (xml)

Et on remplace par :

https://www.dailymotion.com/video/$2Code language: JavaScript (javascript)

Remplacer les liens swf de Dailymotion

On s’occupe maintenant des liens qui contiennent juste le terme “swf”.

On recherche :

#<object data="http://www.dailymotion.com/swf/(.*)" width="300" height="150">(.*)</object>#Code language: HTML, XML (xml)

Et on remplace par :

https://www.dailymotion.com/video/$2Code language: JavaScript (javascript)

Voilà, vous venez de nettoyer les anciens codes d’intégration Flash pour les remplacer par des URI oEmbed natives. Propre.

Ben Howard - Promise photo

Ben Howard – Promise

Voici Promise, un très bon morceau issu de l’album Every Kindom (2011) de Ben Howard :

Ben a filmé cette vidéo alors qu’il rentrait chez lui en voiture, un soir juste après l’enregistrement de l’album. Il s’est ensuite dit que cela collerait bien à l’une de ses “night time songs”.

Cet album s’écoute décidément très bien !

Lire la suite

WordPress : remplacer le vieux code YouTube de vos articles par une URL oEmbed photo

WordPress : mettre à jour le code Youtube

Le code des plateformes – vidéos ou autre – évolue et il n’est pas rare de tomber sur de vieux articles qui embarquent un vieux code embed pour afficher des vidéos.

Si votre site a quelques années, il y a plusieurs méthodes d’intégration – plus ou moins optimisées – dont certaines ne s’afficheront pas (celles utilisant le plugin Flash par exemple) sur une tablette ou un smartphone.

youtube

Sur SkyMinds, je me suis dit que ce serait sympa d’avoir un système unifié : toutes les vidéos YouTube seront automatiquement insérées par WordPress en utilisant la méthode native, à savoir oEmbed.

Pour ce faire, j’utilise le plugin Search Regex qui permet d’intervenir facilement sur la base de données pour effectuer des changements en masse, tout en proposant la visualisation des changements avant que ces derniers ne soient appliqués.

Toutes les manipulations sont à effectuer avec Search Regex, en activant la case regex. Je me sers du signe dièse (#) comme délimiteur pour les expressions régulières.

Remplacer le vieux code d’intégration flash de YouTube

Avec Search Regex, on cherche :

<object [^>]*><param name="movie" value="https:\/\/www\.youtube\.com\/v\/([^"&?]+)">.*?<\/object>Code language: HTML, XML (xml)

Et on remplace par :

https://www.youtube.com/watch?v=$1Code language: JavaScript (javascript)

Lire la suite

Charte du Conseil de Classe photo

Charte du Conseil de Classe

1. Le conseil de classe est la réunion de l’équipe pédagogique et éducative : les professeurs, le CPE – Conseiller Principal d’Éducation, les délégués des élèves et des parents en sont les membres permanents ; le chef d’établissement ou son représentant en est le président. Le COP, l’infirmière ou l’assistante sociale peuvent y participer ponctuellement.

2. Le conseil de classe a pour missions :

  • de traiter les questions pédagogiques intéressant la vie de classe, et notamment les modalités d’organisation du travail personnel des élèves, de son suivi et de proposer des accompagnements individualisés.
  • d’examiner les résultats scolaires : s’appuyant sur les appréciations et évaluations portées sur le bulletin, il recherche et propose à l’élève et à sa famille des conseils pour la suite de sa scolarité. Des entretiens peuvent être provoqués par le professeur principal ou le chef d’établissement à la suite du conseil avec l’élève et sa famille.
  • d’émettre un avis sur les vœux d’orientation exprimés par les familles et les élèves, et le cas échéant faire d’autres propositions
  • d’émettre un avis éclairant le jury d’examen (pour les classes à examen)
  • d’émettre un avis sur les vœux de poursuites d’études post-bac dans le cadre de la procédure Admission Post Bac (APB).

3. Le président du conseil de classe donnera la parole tout d’abord au professeur principal qui présentera les résultats et l’ambiance de travail dans la classe. Puis la parole sera donnée aux délégués élèves et aux représentants des parents : les points abordés doivent concerner uniquement la vie dans la classe.

4. L’examen des cas individuels peut se faire dans un ordre différent que celui de l’ordre alphabétique, en regroupant les élèves suivant d’autres critères. Pour chaque élève, il s’agira de connaitre dans les grandes lignes ses points forts, ses points faibles, ses potentialités et son niveau d’acquisition des compétences attendues pour la classe concernée. Un bilan rapide peut être fait sur les dispositifs d’aide dont il bénéficie. Chaque fois que possible, on s’attachera à valoriser les éléments positifs et les progrès, même lorsqu’ils sont modestes.

5. Trois mentions pourront être décernées en conseil de classe par l’équipe pédagogique : les encouragements, les compliments et les félicitations ; ces mentions seront portées sur le bulletin.
Les définitions correspondant à chaque mention sont les suivantes :

  • Encouragements : témoignage de reconnaissance adressé à l’élève pour son engagement significatif dans le travail, même si les résultats restent modestes, qui se traduit notamment par des signes d’efforts, d’investissement, d’intérêt, de peine qu’on se donne, etc.
  • Compliments : témoignage de reconnaissance adressé à l’élève pour le bon niveau de ses résultats et une attitude positive face au travail.
  • Félicitations : témoignage de reconnaissance adressé à l’élève pour l’excellence de ses résultats et de son comportement face au travail.

6. En cas de remarques très négatives sur le comportement et la mise au travail, le conseil de classe peut éventuellement « mettre en garde » l’élève mais il ne peut prononcer de sanction (avertissement).

7. L’ensemble des délégués disposeront des moyennes par discipline de tous les élèves seulement pendant le conseil de classe. Les délégués des parents pourront joindre un compte-rendu lors de l’envoi des bulletins ; il ne traitera pas des cas individuels mais des appréciations et remarques d’ordre général.

8. Il sera laissé au choix en début de conseil, aux délégués des élèves, la possibilité de sortir de la salle lors de l’examen de leur cas ; si le délégué ne souhaite pas sortir, il n’aura pas la parole pour se justifier et les membres ne s’adresseront pas directement à lui en tant qu’élève ; son camarade délégué assurera le relais. Il s’agit de préserver l’égalité de traitement des élèves et de favoriser l’expression des membres du conseil.

9. L’ensemble des membres du conseil de classe est tenu au devoir de discrétion et de réserve. Si des informations délicates sur un élève doivent être évoquées, elles pourront éventuellement l’être lors d’un conseil restreint réunissant l’équipe pédagogique et éducative.

10. Un bilan synthétique du conseil de classe sera rédigé par le professeur principal.

Elton John - Rocket Man  photo

Elton John – Rocket Man

Voici “Rocket Man”, une chanson composée par Elton John et Bernie Taupin, et interprétée par Elton John sur l’album Honky Château (1972) :

La chanson aurait inspirée par la vision d’une étoile filante ou d’un avion au loin par Taupin. Les astronautes ne sont plus considérés comme des héros mais comme ayant un travail banal, ce qui explique les premières lignes de la chanson : “She packed my bags last night, pre-flight. Zero hour: 9 a.m. And I’m gonna be high as a kite by then.”

Les paroles, inspirées de la nouvelle The Rocket Man de Ray Bradbury, décrivent les sentiments qu’éprouve un astronaute sur Mars à l’idée de quitter sa famille pour aller effectuer son travail.

Musicalement, la chanson est une ballade pop au piano, avec une texture ajoutée par un synthétiseur et de la guitare slide. C’est aussi la première chanson d’Elton John avec les choeurs combinés de Dee Murray, Nigel Olsson et Davey Johnstone, qui deviendront une de ses signatures.

Lire la suite