Refactor articles
parent
34910e376c
commit
98c12bdc43
@ -1,40 +1,23 @@
|
||||
name: "Quentin Dufour"
|
||||
description: "Use toasters to decentralize the net"
|
||||
meta_description: "Quentin Dufour. Use toasters to decentralize the net"
|
||||
|
||||
shareurl: "https://quentin.dufour.io"
|
||||
baseurl: "/"
|
||||
|
||||
aboutPage: true
|
||||
|
||||
author: 'Quentin Dufour'
|
||||
url: 'https://quentin.dufour.io'
|
||||
description: "Blog d'un ingénieur en informatique et libriste convaincu, avec du code, du linux, du système et du réseau."
|
||||
markdown: kramdown
|
||||
highlighter: rouge
|
||||
|
||||
paginate: 20
|
||||
domain_name: 'https://quentin.dufour.io'
|
||||
url: 'https://quentin.dufour.io'
|
||||
|
||||
# Details for the RSS feed generator
|
||||
url: 'https://quentin.dufour.io'
|
||||
author: 'Quentin Dufour'
|
||||
authorTwitter: 'superboum'
|
||||
|
||||
permalink: /blog/:year-:month-:day/:title/
|
||||
|
||||
defaults:
|
||||
-
|
||||
scope:
|
||||
path: "" # empty string for all files
|
||||
type: pages
|
||||
values:
|
||||
layout: default
|
||||
-
|
||||
scope:
|
||||
path: "" # empty string for all files
|
||||
type: posts
|
||||
values:
|
||||
layout: post
|
||||
- scope:
|
||||
path: "" # empty string for all files
|
||||
type: pages
|
||||
values:
|
||||
layout: default
|
||||
- scope:
|
||||
path: "" # empty string for all files
|
||||
type: posts
|
||||
values:
|
||||
layout: post
|
||||
|
||||
plugins:
|
||||
- jekyll-sitemap
|
||||
- jekyll-paginate
|
||||
- jekyll-sitemap
|
||||
|
Binary file not shown.
@ -1,22 +0,0 @@
|
||||
---
|
||||
layout: post
|
||||
slug: dns
|
||||
status: draft
|
||||
title: Comprendre et utiliser les noms de domaine
|
||||
description: Donnez un petit nom à votre adresse IP
|
||||
categories:
|
||||
disqus: true
|
||||
tags:
|
||||
---
|
||||
|
||||
Les noms de domaine, ou domain name sont utilisés de manière intensive sur internet. Ils sont définit à travers le protocole DNS, pour Domain Name System.
|
||||
|
||||
## À quoi ça sert ?
|
||||
|
||||
|
||||
|
||||
## Comment ça fonctionne ?
|
||||
|
||||
## Et concrètement, comment ça marche ?
|
||||
|
||||
## Mon adresse IP change tout le temps !
|
@ -1,18 +0,0 @@
|
||||
---
|
||||
layout: post
|
||||
slug: la-radioactivite
|
||||
status: draft
|
||||
sitemap: false
|
||||
title: La radioactivité
|
||||
disqus: true
|
||||
description: Ça se mange ?
|
||||
categories:
|
||||
- physique
|
||||
tags:
|
||||
---
|
||||
|
||||
Ce billet à pour but d'expliquer simplement et sans partie prenante ce qu'est la radioactivité. </br>
|
||||
Est-ce que c'est bio ?
|
||||
Est-ce dangereux ?
|
||||
Est-ce que ça se mange ?
|
||||
A quoi ça sert ?
|
@ -1,14 +0,0 @@
|
||||
---
|
||||
layout: post
|
||||
slug: sait-on-encore-construire-une-centrale-nucleaire
|
||||
status: draft
|
||||
sitemap: false
|
||||
title: Sait on encore construire une centrale nucléaire ?
|
||||
description: Et plus particulièrement un EPR ?
|
||||
disqus: true
|
||||
categories:
|
||||
- physique
|
||||
tags:
|
||||
---
|
||||
|
||||
Cet article n'a pas pour but de relancer le débat sur le nucléaire mais plus à s'intéresser à son fonctionnement et son état actuel.
|
@ -1,38 +0,0 @@
|
||||
---
|
||||
layout: post
|
||||
slug: jenkins-pipeline
|
||||
status: draft
|
||||
title: Introduction aux pipelines Jenkins 2.0
|
||||
description: Ou comment automatiser la compilation de votre application à son déploiement.
|
||||
disqus: true
|
||||
categories:
|
||||
- jenkins
|
||||
tags:
|
||||
- continuous delivery
|
||||
- continuous integration
|
||||
- jenkins
|
||||
- pipeline
|
||||
- jenkinsfile
|
||||
---
|
||||
|
||||
## Pourquoi
|
||||
|
||||
Eviter l'effet it works on my machines.
|
||||
|
||||
## Comment
|
||||
|
||||
Continuous Integration / Continuous Delivery
|
||||
|
||||
## Blue Ocean
|
||||
|
||||
## Le module Pipeline
|
||||
|
||||
Anciennement Workflow Plugin
|
||||
|
||||
## Construisons notre premier pipeline
|
||||
|
||||
## Les ressources existantes
|
||||
|
||||
* [Continuous Delivery et Pipeline sur Wikipedia](https://en.wikipedia.org/wiki/Continuous_delivery)
|
||||
* [Tutoriel pipelines Jenkins](https://github.com/jenkinsci/pipeline-plugin/blob/master/TUTORIAL.md)
|
||||
* c
|
@ -1,84 +0,0 @@
|
||||
---
|
||||
layout: post
|
||||
slug: iperf
|
||||
status: draft
|
||||
sitemap: false
|
||||
title: iperf
|
||||
disqus: true
|
||||
description: iperf
|
||||
categories:
|
||||
- monitoring
|
||||
tags:
|
||||
---
|
||||
|
||||
|
||||
# Monitorer votre connexion internet (1/?)
|
||||
|
||||
## Connexion internet grand public : que mesurer ?
|
||||
|
||||
Nous dirons qu'il y a trois points intéressants à mesurer quand il s'agit d'une connexion internet :
|
||||
* La disponibilité (est-ce qu'internet marche)
|
||||
* La bande passante (est-ce que je peux transférer beaucoup de données en un temps donné)
|
||||
* La latence (est-ce que je peux transférer des données rapidement)
|
||||
|
||||
Evidemment, il y a d'autres points plus ou moins liés qui sont aussi de bons indicateurs mais que je considère plus secondaire comme le drop de paquets, la marge aux bruits, etc.
|
||||
|
||||
## La bande passante
|
||||
|
||||
Dans cet article, on va s'intéresser uniquement à mesurer la bande passante disponible.
|
||||
J'aborderai peut-être les autres points dans un article à part.
|
||||
|
||||
La bande passante est toujours le premier élément que l'on mesure sur une connexion internet.
|
||||
J'imagine que vous avez déjà du utiliser [speedtest](https://speedtest.net) ou le dernier né, l'outil de [netflix](https://fast.com).
|
||||
Bien que ces outils donnent une bonne idée de la vitesse de la connexion, il est possible d'aller plus loin.
|
||||
|
||||
Le principal problème est qu'on effectue une mesure à un instant donné sur un serveur donné.
|
||||
Un des reproche souvent fait aussi et que les opérateurs pourraient prioritiser le traffic allant vers ces outils de mesure pour tromper les chiffres.
|
||||
On est aussi tributaire du protocole HTTP qui peut-être prioritisé ou non selon les règles de ce dernier opérateur.
|
||||
|
||||
De plus, le fournisseur d'accès passe des accords de peering. Ainsi, si certains accords sont insuffisants, certains sites peuvent être pénalisés.
|
||||
On a donc tout intérêt de faire des tests sur plusieurs serveurs.
|
||||
|
||||
Ensuite l'utilisation du réseau varie en fonction de l'heure de la journée, du jour de la semaine et même de la période de l'année. Faites un test à 5 heure de matin ou à 20h le soir, je parie que vous verrez la différence. Il faudrait donc faire des tests réfulièrements.
|
||||
|
||||
On ajoutera aussi que le problème peut venir du réseau local. Un réseau wifi saturé, un routeur de mauvaise qualité, un CPL cassé ou je ne sais quel autre problème.
|
||||
|
||||
Enfin les autres utilisateurs peuvent perturber le test en utilisant le réseau en même temps.
|
||||
|
||||
En conclusion, nous allons étudier des solutions pour augmenter au maximum la qualité de nos tests à partir des contraintes :
|
||||
|
||||
* Faire des mesures à travers le temps
|
||||
* Faire des mesures sur plusieurs serveurs
|
||||
* Avoir un témoin sur le réseau local
|
||||
* Limiter ou annuler l'impact des autres utilisateurs
|
||||
|
||||
## Un script + un cron
|
||||
|
||||
Pour commencer, on peut juste utiliser curl pour télécharger des ISO sur des miroirs un peu partout et logger ça dans un fichier.
|
||||
Voici un exemple avec l'ISO de free :
|
||||
|
||||
```
|
||||
curl free dl iso
|
||||
```
|
||||
|
||||
ping.online.net
|
||||
|
||||
## iperf
|
||||
|
||||
## script python rrdtool
|
||||
|
||||
## munin
|
||||
|
||||
* plugin existant
|
||||
* modification
|
||||
* tests
|
||||
|
||||
## limites
|
||||
|
||||
* dégrade la qualité de la connexion
|
||||
* peut etre basse a cause d'autres utilisateurs
|
||||
* peut etre du au réseau interne
|
||||
|
||||
## solutions
|
||||
|
||||
* QoS
|
@ -1,101 +0,0 @@
|
||||
---
|
||||
layout: post
|
||||
slug: tignes
|
||||
status: draft
|
||||
sitemap: false
|
||||
title: Tignes - Journal de bord
|
||||
disqus: true
|
||||
description: Tignes
|
||||
categories:
|
||||
- vacances
|
||||
tags:
|
||||
---
|
||||
|
||||
## Dimanche : Arrivée à Tignes
|
||||
|
||||
C'est vers 15h que nous arrivons à Tignes La Bressière, la partie basse de Tignes. Nous découvrons un petit village fort jolie.
|
||||
|
||||
[](/assets/images/posts/tignes-01.jpg)
|
||||
|
||||
Après avoir acheté notre forfait et nous être installé à l'hôtel, Erwan et moi décidons de faire une petite randonnée juste le temps de prendre la montagne en photo.
|
||||
|
||||
[](/assets/images/posts/tignes-02.jpg)
|
||||
|
||||
|
||||
## Lundi : Première journée sous le brouillard
|
||||
|
||||
[](/assets/images/posts/tignes-03.jpg)
|
||||
|
||||
Il a neigé cette nuit, et quelques flocons sont tombés en continue toute la journée. Il a fait froid et il y avait du vent. La visibilité dans le bas de la station n'était pas mauvaise mais dès que l'on montait, c'était autre chose...
|
||||
|
||||
<video style="width: 100%" autoplay muted loop poster="/assets/video/tignes-02.png">
|
||||
<source src="/assets/video/tignes-02.webm" type="video/webm" />
|
||||
<source src="/assets/video/tignes-02.mp4" type="video/mp4" />
|
||||
</video>
|
||||
|
||||
Au final, la neige n'était pas trop mauvaise et il n'y avait pas trop de monde. Toute la station n'était pas encore ouverte. Nous en avons cependant profité pour aller jusqu'à *Val Claret* et monter dans le funiculaire de *La Grande Motte* qui nous a emmené jusqu'à plus de 3 000 mètres d'altitude.
|
||||
|
||||
<video style="width: 100%" autoplay muted loop poster="/assets/video/tignes-01.png">
|
||||
<source src="/assets/video/tignes-01.webm" type="video/webm" />
|
||||
<source src="/assets/video/tignes-01.mp4" type="video/mp4" />
|
||||
</video>
|
||||
|
||||
Et pour finir Erwan et moi (derrière le masque et la cagoule) bravant les éléments pour prendre cette photo/vidéo.
|
||||
|
||||
## Mardi : Tignes, toujours
|
||||
|
||||
Aujourd'hui impossible d'aller à *Val d'Isère*. À cause du vent, beaucoup de remontés sont fermées. D'ailleurs, nous devons prendre un premier télésiège à pied ce matin puis une navette pour pouvoir rejoindre les pistes à Tignes 2100.
|
||||
|
||||
Heureusement le brouillard s'est levé et il fait plus chaud que hier. On peut enfin commencer à admirer le paysage.
|
||||
|
||||
[](/assets/images/posts/tignes-04.jpg)
|
||||
|
||||
En début d'après-midi nous trouvons un versant avec un peu de soleil.
|
||||
|
||||
[](/assets/images/posts/tignes-05.jpg)
|
||||
|
||||
Nous n'étions pas les seul à avoir eu la même idée. J'ai quand même pris le temps de poser mon téléphone pour filmer le paysage...
|
||||
|
||||
<video style="width: 100%" autoplay muted loop poster="/assets/video/tignes-03.png">
|
||||
<source src="/assets/video/tignes-03.webm" type="video/webm" />
|
||||
<source src="/assets/video/tignes-03.mp4" type="video/mp4" />
|
||||
</video>
|
||||
|
||||
## Mercredi : Val d'Isère
|
||||
|
||||
Aujourd'hui nous avons pu nous rendre à Val d'Isère, et même jusqu'à son extremité *Le Fornet*. Sur le plan suivant (possibilité de cliquer dessus pour agrandir), on peut voir en bas à droite *Tignes Les Brévières* d'où nous sommes partis et *Le Fornet* tout à gauche où nous avons mangé de midi.
|
||||
|
||||
[](/assets/images/posts/tignes-08.jpg)
|
||||
|
||||
Nous avons pu constater que le public cible était assez aisé à *Val d'Isère*, encore plus qu'à *Tignes* : Wifi gratuit partout, même à 3500 mètres, sièges des télécabines en cuir, etc.
|
||||
|
||||
Du haut de *Val d'Isère* on avait une belle vue sur la vallée.
|
||||
|
||||
[](/assets/images/posts/tignes-06.jpg)
|
||||
|
||||
Il a commencé à neiger à midi, voici une photo du bas des pistes du *Fornet* où nous avons dégusté un hotdog savoyard pour pas trop cher.
|
||||
|
||||
[](/assets/images/posts/tignes-07.jpg)
|
||||
|
||||
On ne pouvait pas aller plus loin, nous sommes donc repartis vers *Les Brévières* après qu'Erwan ai pu faire son hors piste. Tout de même.
|
||||
|
||||
## Jeudi : Du haut de la Grande Motte à 3456 mètres d'altitude
|
||||
|
||||
<video style="width: 100%" autoplay muted loop poster="/assets/video/tignes-04.png">
|
||||
<source src="/assets/video/tignes-04.webm" type="video/webm" />
|
||||
<source src="/assets/video/tignes-04.mp4" type="video/mp4" />
|
||||
</video>
|
||||
|
||||
Aujourd'hui nous avons pu monter sur le glacier de Tignes, au plus haut de la station à 3456 mètres, sur *La Grande Motte*. Avant d'en arriver là, il faut un funiculaire et un vieux téléphérique.
|
||||
|
||||
[](/assets/images/posts/tignes-10.jpg)
|
||||
|
||||
Nous avons pu nous arrêter pour profiter du paysage. Il parait même qu'on peut voir le *Mont Blanc* d'ici.
|
||||
|
||||
La descente se fait sur un glacier, pas de différence au premier coup d'oeil mais impossible de s'éloigner des pistes à causes des crevasses.
|
||||
|
||||
[](/assets/images/posts/tignes-09.jpg)
|
||||
|
||||
Nous profitons de la vue dégagée et du retour sur la montagne pour s'éloigner un peu de pistes. Tout au fond, la Grande Motte où nous étions un peu avant.
|
||||
|
||||
La suite demain...
|
@ -1,21 +0,0 @@
|
||||
---
|
||||
layout: post
|
||||
slug: commandes-utiles
|
||||
status: draft
|
||||
title: Commandes utiles
|
||||
description: Mon couteau suisse
|
||||
disqus: true
|
||||
categories:
|
||||
- systeme
|
||||
- linux
|
||||
tags:
|
||||
---
|
||||
|
||||
## Tunnel SSH
|
||||
|
||||
```
|
||||
(nathalie)
|
||||
ssh -N quentin@havelock.machine.deuxfleurs.fr -p110 -L 3389:192.168.1.101:3389
|
||||
(maude)
|
||||
ssh -N quentin@havelock.machine.deuxfleurs.fr -p110 -L 3389:192.168.1.76:3389
|
||||
```
|
@ -1,100 +0,0 @@
|
||||
---
|
||||
layout: post
|
||||
slug: liveusb
|
||||
status: draft
|
||||
sitemap: false
|
||||
title: todo
|
||||
description: todo
|
||||
categories:
|
||||
- linux
|
||||
tags:
|
||||
---
|
||||
|
||||
|
||||
```bash
|
||||
sudo dnf install debootstrap
|
||||
sudo debootstrap --arch=amd64 zesty live/
|
||||
sudo mount --bind /dev live/dev
|
||||
sudo vim live/etc/apt/sources.list # ajouter universe multiverse
|
||||
|
||||
# Chroot inside
|
||||
sudo chroot live/
|
||||
mount none -t proc /proc
|
||||
mount none -t sysfs /sys
|
||||
mount none -t devpts /dev/pts
|
||||
|
||||
# Install
|
||||
sudo apt install \
|
||||
xubuntu-desktop \
|
||||
ubuntu-minimal \
|
||||
linux-generic \
|
||||
live-boot \
|
||||
language-pack-fr \
|
||||
arduino \
|
||||
inkscape \
|
||||
blender \
|
||||
freecad \
|
||||
openscad \
|
||||
git \
|
||||
kicad \
|
||||
gimp \
|
||||
git
|
||||
|
||||
passwd
|
||||
adduser fabriqueurs
|
||||
usermod -a -G dialout fabriqueurs
|
||||
vim /etc/lightdm/lightdm.conf.d/01_autologin.conf
|
||||
vim /etc/default/keyboard
|
||||
dpkg-reconfigure locales
|
||||
dpkg-reconfigure keyboard-configuration
|
||||
|
||||
su fabriqueurs
|
||||
git clone https://github.com/jmoenig/Snap--Build-Your-Own-Blocks
|
||||
|
||||
# Télécharger repetier
|
||||
# Extraire dans /home/fabriqueurs
|
||||
# Executer ./installDependenciesDebian
|
||||
|
||||
# Cleaning
|
||||
rm /var/lib/dbus/machine-id
|
||||
apt clean
|
||||
umount /proc /sys /dev/pts
|
||||
|
||||
# Create USB
|
||||
mkdir -p binary/live binary/isolinux
|
||||
|
||||
cp live/boot/vmlinuz* binary/live/vmlinuz
|
||||
cp live/boot/initrd* binary/live/initrd
|
||||
|
||||
mksquashfs ./live ./binary/live/filesystem.squashfs -comp xz -e boot
|
||||
|
||||
cp /usr/share/syslinux/isolinux.bin ./binary/isolinux/
|
||||
cp /usr/share/syslinux/menu.c32 ./binary/isolinux/
|
||||
cp /usr/share/syslinux/ldlinux.c32 ./binary/isolinux/
|
||||
cp /usr/share/syslinux/libutil.c32 ./binary/isolinux/
|
||||
|
||||
vim ./binary/isolinux/isolinux.cfg
|
||||
|
||||
xorriso -as mkisofs \
|
||||
-o output.iso \
|
||||
-isohybrid-mbr /usr/share/syslinux/isohdpfx.bin \
|
||||
-c isolinux/boot.cat \
|
||||
-b isolinux/isolinux.bin \
|
||||
-no-emul-boot -boot-load-size 4 -boot-info-table \
|
||||
-eltorito-alt-boot \
|
||||
-e boot/grub/efi.img \
|
||||
-no-emul-boot \
|
||||
-isohybrid-gpt-basdat \
|
||||
./binary
|
||||
```
|
||||
|
||||
On peut créer l'ISO à l'aide de xorriso ou genisoimage ou mkisofs
|
||||
|
||||
Utiliser virtualbox et pas qemu pour tester l'ISO
|
||||
|
||||
On a copié .disk, boot et EFI depuis l'ISO d'ubuntu sans comprendre.
|
||||
|
||||
https://help.ubuntu.com/community/LiveCDCustomizationFromScratch
|
||||
https://l3net.wordpress.com/2013/09/21/how-to-build-a-debian-livecd/
|
||||
http://www.syslinux.org/wiki/index.php?title=Isohybrid
|
||||
|
@ -1,61 +0,0 @@
|
||||
---
|
||||
layout: post
|
||||
slug: todo
|
||||
status: draft
|
||||
sitemap: false
|
||||
title: todo
|
||||
description: todo
|
||||
categories:
|
||||
- linux
|
||||
tags:
|
||||
---
|
||||
|
||||
|
||||
|
||||
HP DDS 4
|
||||
Digital Data Storage
|
||||
|
||||
|
||||
Monter le système fuse Seafile :
|
||||
|
||||
```bash
|
||||
./seaf-fuse.sh start /mnt/seafile
|
||||
```
|
||||
|
||||
Sauvegarde :
|
||||
|
||||
```bash
|
||||
mt -f /dev/st0 rewind
|
||||
tar -czf /dev/st0 /mnt/seafile/xxx@xxx.xx/
|
||||
```
|
||||
|
||||
Informations :
|
||||
|
||||
```bash
|
||||
mt -f /dev/st0 status
|
||||
mt -f /dev/st0 tell
|
||||
tar -tzf /dev/st0
|
||||
```
|
||||
|
||||
Liste des fichiers
|
||||
|
||||
```
|
||||
tar -tzf /dev/st0
|
||||
```
|
||||
|
||||
Restauration
|
||||
|
||||
```bash
|
||||
mt -f /dev/st0 rewind
|
||||
tar -xzf /dev/st0 /tmp/
|
||||
```
|
||||
|
||||
Efface :
|
||||
|
||||
```bash
|
||||
mt -f /dev/st0 erase
|
||||
```
|
||||
|
||||
* https://manual.seafile.com/extension/fuse.html
|
||||
* https://www.cyberciti.biz/faq/linux-tape-backup-with-mt-and-tar-command-howto/
|
||||
* https://www.cyberciti.biz/hardware/unix-linux-basic-tape-management-commands/
|
@ -1,9 +0,0 @@
|
||||
---
|
||||
layout: post
|
||||
slug: freeture-sur-la-ligne
|
||||
status: draft
|
||||
sitemap: false
|
||||
title: "Freeture sur la ligne"
|
||||
description: L'internet des campagnes
|
||||
---
|
||||
|
Binary file not shown.
Binary file not shown.
Before Width: | Height: | Size: 345 KiB |
Binary file not shown.
Binary file not shown.
Binary file not shown.
Before Width: | Height: | Size: 157 KiB |
Binary file not shown.
Binary file not shown.
Binary file not shown.