Wiki Web propre

13
2
mar.
2011

Liste des modules indispensables pour butiner sereinement

  • Adblock : bloque les publicités
  • FlashBlock : bloque le flash
  • NoScript : désactive le JavaScript
  • Self-destructing cookies : détruit les cookies d'un site qui n'est plus ouvert
  • Privacy Badger : bloque les trackers invisibles

  • IpFuck : ajoute un champ dans les entêtes http pour faire croire aux sites que la requête se fait derrière un proxy (Attention, cette extension pose problème sur certains sites, dont LinuxFr.org)

  • HttpsEverywhere : Redirige automatiquement les sites vers leurs version https si elle existe.

  • OpenOffice : excellent pare-feu

Configuration

Adblock Plus

Ne pas afficher les "J'aime" et les cadres Facebook des autres sites

    ||facebook.com/widgets/*  
    ||facebook.com/plugins/*

Ne pas afficher les avatars sur LinuxFr.org (l'autre solution étant la fonction « Ne pas afficher les avatars sur le site » dans les préférences de son compte)

    ||img.linuxfr.org/avatars/*

Alternatives aux modules

Utiliser un navigateur léger et rapide ne permettant pas de se faire salir son écran par des images. On peut par exemple citer ELinks ou W3M.
Ces types de navigateur charment par leur apparence rétro et beaucoup expliquent leurs avantages en terme de facilité de navigation, rapidité, productivité, etc.

Privoxy

Permet de gérer et modifier finement les requêtes, et ainsi de conjuguer l'intérêt de plusieurs extensions de Firefox à la fois (Adblock, HTTPS Everywhere, UserAgentSwitcher, et certainement d'autres), dans un serveur proxy plus léger et qui ne fait donc pas dépendre d'un navigateur en particulier. Il faut cependant configurer l'ensemble de ces fonctions "à la main" et cela peut demander du temps et quelques compétences pré-requises que l'installation de modules ne nécessite pas.

Quelques options de Firefox
  • dom.event.contextmenu.enabled = false pour pouvoir utiliser le clic droit sans que n'importe quel site ne puisse vous en empêcher
  • dom.event.clipboardevents.enabled = false pour pouvoir copier/coller du texte tranquillement, sans qu'un site ne se permette de l'intercepter ou le filtrer
  • geo.enabled = false pour éviter que Firefox ne vous embête pas toutes les 3 secondes avec la géolocalisation sur certains sites
  • browser.urlbar.formatting.enabled = false et browser.urlbar.trimURLs = false pour avoir une barre d'URL normale

Wiki Exemple de script pour de la QoS

Licence CC by-sa
Tags : aucun
0
2
mar.
2011

Script mettant en œuvre de la QoS. Le flux réseau obtient par défaut la priorité la plus basse. Ensuite on élève la priorité (4 disponibles en tout) de certains flux en fonction du port ou de l’adresse IP. Vous pouvez adapter simplement le script en modifiant les 4 variables définie au début : DEV l’interface réseau, IFB l’interface créée par la commande modprobe ifb (ne devrait pas changer), DOWNLINK le débit descendant, et UPLINK l’ascendant, en kilo-octets par secondes : attention à prendre moins que la bande passante réellement disponible, environ 90 % devrait être un bon compromis. Vous pouvez aussi commenter les lignes qui sont en-dessous des echo, qui commencent par tc filter, pour désactiver un filtre.

Une introduction au sujet est disponible.

#!/bin/sh

DEV=eth0
IFB=ifb0
DOWNLINK=750
UPLINK=75

if [ $# -ne 1 ]; then
    echo "Usage: network-priority.sh (start|stop)"
    exit 1
fi

case "$1" in
start)
echo "Upload"
    tc qdisc add dev $DEV root handle 1:0 htb default 1
    # limiter la bande-passante
    tc class add dev $DEV parent 1:0 classid 1:1 htb \
        rate ${UPLINK}kbps
    tc qdisc add dev $DEV parent 1:1 handle 2:0 prio \
        bands 4 priomap 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3
echo "  Default (lowest) priority"
    tc qdisc add dev $DEV parent 2:4 handle 14:0 prio
    tc qdisc add dev $DEV parent 14:1 sfq perturb 10
    tc qdisc add dev $DEV parent 14:2 sfq perturb 10
    tc qdisc add dev $DEV parent 14:3 sfq perturb 10
echo "  Highest priority"
    # pour différencier session interactive ou non
    tc qdisc add dev $DEV parent 2:1 handle 10:0 prio
    # répartir équitablement
    tc qdisc add dev $DEV parent 10:1 handle 11:0 sfq \
        perturb 10
    tc qdisc add dev $DEV parent 10:2 handle 12:0 sfq \
        perturb 10
    tc qdisc add dev $DEV parent 10:3 handle 13:0 sfq \
        perturb 10
echo "    SSH (server)"
    tc filter add dev $DEV parent 2:0 protocol ip prio 1 \
        u32 match ip sport 22 0xffff flowid 2:1
    tc filter add dev $DEV parent 2:0 protocol ipv6 prio 2 \
        u32 match ip6 sport 22 0xffff flowid 2:1
echo "  High priority"
    tc qdisc add dev $DEV parent 2:2 handle 20:0 sfq \
        perturb 10
echo "    *box (192.168.0.254)"
    tc filter add dev $DEV parent 2:0 protocol ip prio 3 \
        u32 match ip dst 192.168.0.254 flowid 2:2
echo "    MPD (server)"
    tc filter add dev $DEV parent 2:0 protocol ip prio 4 \
        u32 match ip sport 8000 0xffff flowid 2:2
echo "  Normal priority"
    tc qdisc add dev $DEV parent 2:3 handle 30:0 sfq \
        perturb 10
echo "    HTTP (client)"
    tc filter add dev $DEV parent 2:0 protocol ip prio 5 \
        u32 match ip dport 80 0xffff flowid 2:3
    tc filter add dev $DEV parent 2:0 protocol ipv6 prio 6 \
        u32 match ip6 dport 80 0xffff flowid 2:3
echo "    HTTPS (client)"
    tc filter add dev $DEV parent 2:0 protocol ip prio 7 \
        u32 match ip dport 443 0xffff flowid 2:3
    tc filter add dev $DEV parent 2:0 protocol ipv6 prio 8 \
        u32 match ip6 dport 443 0xffff flowid 2:3
echo "    FTP (client)"
    tc filter add dev $DEV parent 2:0 protocol ip prio 9 \
        u32 match ip dport 21 0xffff flowid 2:3
    tc filter add dev $DEV parent 2:0 protocol ipv6 prio 10 \
        u32 match ip6 dport 21 0xffff flowid 2:3

echo "Download"
    modprobe ifb
    ip link set dev $IFB up
    tc qdisc add dev $DEV ingress
    tc filter add dev $DEV parent ffff: protocol ipv6 \
        u32 match ip6 dst ::/128 action mirred egress redirect dev $IFB
    tc filter add dev $DEV parent ffff: protocol ip \
        u32 match ip dst 0/0 action mirred egress redirect dev $IFB
    tc qdisc add dev $IFB root handle 1:0 htb default 1
    tc class add dev $IFB parent 1:0 classid 1:1 htb \
        rate ${DOWNLINK}kbps
    tc qdisc add dev $IFB parent 1:1 handle 2:0 prio \
        bands 4 priomap 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3
echo "  Default (lowest) priority"
    tc qdisc add dev $IFB parent 2:4 handle 14:0 prio
    tc qdisc add dev $IFB parent 14:1 sfq perturb 10
    tc qdisc add dev $IFB parent 14:2 sfq perturb 10
    tc qdisc add dev $IFB parent 14:3 sfq perturb 10
echo "  Highest priority"
    # différencier session intéractive (automatique)
    tc qdisc add dev $IFB parent 2:1 handle 10:0 prio
    # répartir équitablement
    tc qdisc add dev $IFB parent 10:1 handle 11:0 sfq \
        perturb 10
    tc qdisc add dev $IFB parent 10:2 handle 12:0 sfq \
        perturb 10
    tc qdisc add dev $IFB parent 10:3 handle 13:0 sfq \
        perturb 10
echo "    SSH (server)"
    tc filter add dev $IFB parent 2:0 protocol ip prio 1 \
        u32 match ip dport 22 0xffff flowid 2:1
    tc filter add dev $IFB parent 2:0 protocol ipv6 prio 2 \
        u32 match ip6 dport 22 0xffff flowid 2:1
echo "  High priority"
    tc qdisc add dev $IFB parent 2:2 handle 20:0 sfq \
        perturb 10
echo "    *box (192.168.0.254)"
    tc filter add dev $IFB parent 2:0 protocol ip prio 3 \
        u32 match ip src 192.168.0.254 flowid 2:2
echo "    MPD (server)"
    tc filter add dev $IFB parent 2:0 protocol ip prio 4 \
        u32 match ip dport 8000 0xffff flowid 2:2
echo "  Normal priority"
    tc qdisc add dev $IFB parent 2:3 handle 30:0 sfq \
        perturb 10
echo "    HTTP (client)"
    tc filter add dev $IFB parent 2:0 protocol ip prio 5 \
        u32 match ip sport 80 0xffff flowid 2:3
    tc filter add dev $IFB parent 2:0 protocol ipv6 prio 6 \
        u32 match ip6 sport 80 0xffff flowid 2:3
echo "    HTTPS (client)"
    tc filter add dev $IFB parent 2:0 protocol ip prio 7 \
        u32 match ip sport 443 0xffff flowid 2:3
    tc filter add dev $IFB parent 2:0 protocol ipv6 prio 8 \
        u32 match ip6 sport 443 0xffff flowid 2:3
echo "    FTP (client)"
    tc filter add dev $IFB parent 2:0 protocol ip prio 9 \
        u32 match ip sport 21 0xffff flowid 2:3
    tc filter add dev $IFB parent 2:0 protocol ipv6 prio 10 \
        u32 match ip6 sport 21 0xffff flowid 2:3
    ;;
stop)
    tc qdisc del dev $DEV root
    tc qdisc del dev $DEV ingress
    tc qdisc del dev $IFB root
    rmmod ifb
    ;;
*)
    echo "Usage: network-priority.sh (start|stop)"
    exit 1
    ;;
esac

exit 0

Wiki Quelle distribution Linux choisir ?

18
27
fév.
2011

Sommaire

Vous voulez Linux sur votre ordinateur, car c'est le petit cousin de la voisine qui vous a dit que c'était mieux. Mais tout n'est pas aussi simple qu'il n'y parait.

Qu'est-ce que Linux ?

Linux est un noyau de système d'exploitation. Un système d'exploitation, c'est l'ensemble des programmes informatiques qui servent au fonctionnement de base d'un ordinateur. Linux est le cœur de beaucoup de systèmes d'exploitations très différents.

Linux est par exemple présent dans des téléphones portables, des machines à laver le linge, des serveurs informatiques, des supercalculateurs, des voitures, des télévisions…

Ici, nous allons nous pencher sur Linux pour les ordinateurs classiques, appelés PC.

Linux sur PC, mais encore ?

Linux est disponible sur PC, mais tout seul, vous ne pourriez pas faire grand chose.

Pour pouvoir faire quelque chose de son ordinateur, il vaut mieux avoir un système d'exploitation complet.

Seulement, il existe une multitude de systèmes d'exploitations complets. Ces systèmes répondent à différents besoins.

Les utilisations des ordinateurs ne sont pas identiques, entre un particulier qui gère ses photos numériques, et la gestion des données comptables d'une entreprise, il y a un monde.

Je m'en fiche, je veux Linux sur mon PC

Les systèmes d'exploitations utilisant Linux sur PC sont nombreux. Si vous voulez passer du temps à les étudier, vous avez une liste de ces systèmes ici : Distribution-Linux.

Si vous vous en foutez, ce qui n'est pas anormal, quelques distributions vont vous être conseillées.

Pour faire plaisir à Richard Stallman qui milite pour que l'on en parle, sachez qu'il s'agit de distributions GNU-Linux, c'est à dire que c'est Linux avec les outils de base du projet GNU.

Okay, quel GNU/Linux pour moi ?

Je me fiche de l'informatique, je veux juste Linux sur mon ordi, bordel !

Utilisez Ubuntu, c'est LE système Linux le plus connu. Vous trouverez facilement de l'aide, sa communauté francophone produisant abondamment de la documentation en français. Une alternative aussi facile est la distribution Mageia.

J'aimerais avoir un système réputé, et de qualité.

Debian est un excellent système d'exploitation. Il permet de choisir plusieurs niveau de fraîcheurs et d'utilisation des technologies, ce qui permet de doser le rapport entre la stabilité et les nouvelles fonctionnalités que l'on souhaite sur les serveurs ou les postes de bureau. Vous pouvez opter pour la version stable (avec des logiciels ayant souvent plusieurs années de retard hélas), la version testing (plus à jour, mais qui n'est pas finalisée), ou la version unstable (si tout marche c'est votre jour de chance).
Pour l'anecdote, Ubuntu se base sur Debian, ainsi vous pouvez facilement passer de l'un à l'autre, ou même l'une des nombreuses autres distributions basées sur Debian.

Debian utilise une politique de mise à jour correspondant à : ça sort quand c'est prêt. Cela permet de s'assurer que tous les bugs critiques sont bien corrigés au moment de la sortie d'une nouvelle version. En contrepartie, les dernières mises à jours des logiciels ne sont disponibles dans Debian que lorsque leur stabilité a été éprouvée.

Vous pouvez faire le choix d'utiliser les distributions CentOS également pour les environnements ayant besoin d'un certain niveau de stabilité. C'est le clone parfait de RHEL en gratuit, modulo son nom et son logo. Son support de longue durée de 10 ans est également un atout pour ceux pouvant se contenter de technologies plus anciennes, en particulier sur les serveurs.

À l'inverse, Fedora propose les dernières nouveautés du Logiciel Libre. Avec son cycle de développement et de support court (environ 13 mois de support en moyenne), c'est une distribution plus orientée pour les développeurs, bidouilleurs ou voulant tester ce que le LL peut offrir de moderne. La plupart des technologies retrouvées dans les autres distributions comme NetworkManager, firewalld, SELinux, PulseAudio, systemd ou Wayland ont été testées par Fedora avant.

OpenSUSE peut être une solution intermédiaire à tout ceci, proposant une version mise à jour continue et une autre avec des versions stables, elle cherche à s'adapter aux besoins de chacun sur ce point. Son utilitaire maison YaST est également très réputé pour la configuration de son système de manière complète et simple.

Je veux avoir le dernier cri toutes les dix minutes.

Un système d'exploitation sans version qui évolue en permanence peut-être une bonne solution. Arch-Linux est à la mode. Sachez qu'il faut faire de l'informatique pour utiliser ces systèmes. Ne mettez donc pas ça sur l'ordinateur de votre grand-mère.

Je suis un pro, je veux personnaliser les applications dans les moindres détails.

Si vous avez du temps et de la patience, Gentoo et Slackware sont des solutions à étudier.

Je suis un libriste et je ne veux aucun programme privateur sur ma machine

Voici des équivalents libres aux distributions proposées :

Une liste plus complète est disponible sur ce site.

Je sais ce que je veux, je suis un pro, je ne veux pas que les mainteneurs m'imposent des réglages ou les changent à chaque mises à jour

Dans ce cas, une petite FreeBSD ou une OpenBSD vous irait très bien. Mais cela n'a plus rien à voir avec Linux…

Tout ça est trop facile, et j'ai encore du temps libre.

Linux from scratch (LFS) est un livre qui vous apprendra à créer votre système d'exploitation de A à Z.

G r1en compri lol

Utilisez Ubuntu.

Wiki Css

Licence CC by-sa
Tags : aucun
1
23
fév.
2011

contribuer à l'apparence du site

Par défaut, la css RonRonnement est affichée lorsque le lecteur n'est pas identifié. Un lecteur identifié a accès à beaucoup d'autres apparences

Voir Organisation-Code-LinuxFr pour proposer des évolutions des css existantes et voir CSS-LinuxFR.

Utiliser le système de suivi pour proposer des modifications ou une nouvelle css.

tests de non régression

Lister quelques fonctionnalités transverses à toutes les CSS qui font l'identité de LinuxFr :-)

Penser à :

autres propositions

Wiki Bac A Sable

1
22
fév.
2011

Bac à sable

Vous êtes libre d'expérimenter ici dans l'espace formé par les séparations.

Vous pouvez aussi consulter l'aide à l'édition.


Comme quoi, il reste encore un espace de liberté sur LinuxFr.org

totoaie
totoaie


Titres

Titre de niveau 1

Titre de niveau 2

Titre de niveau 3

Titre de niveau 4
Titre de niveau 5

Mise en forme

italique

gras

télétype

Ceci est une citation.

C'est toi la citation !

Hyperliens

Listes

Liste à puces

  • élément 1
  • élément 2

Liste ordonnée

  1. élément 1
  2. élément 2

Code source

Python

>>> print "Hello!"

Java

public class Hello {
  public static int main(String[] args) {
    System.out.println("Hello!");
    return 0;
  }
}

C

#include <stdio.h>

int
main(void) {
  printf("Hello!");
  return 0;
}

etc…

Images

Image originale :

Logo LinuxFr.org

Tableaux

Titre 1 Titre 2 Titre 3
Ligne 1 Élément 3 Élément 5
Ligne 2 Élément 4 Élément 6

Séparation

Trois symboles (*, -, _) et plus…


ou


ou


Ne pourrait-on parler de LaTeX directement dans le H1 ? EH, c'est quoi ce retour chariot !


Wiki Aide Edition

8
22
fév.
2011

Sommaire

Aide à l'édition

Pour tous les contenus (dépêche, journal, page wiki, etc.) ou commentaires du site, LinuxFr.org utilise un langage à balisage afin de permettre aux utilisateurs d'ajouter du contenu aisément. Il s'agit de la syntaxe Markdown qui sert aussi pour la rédaction collaborative de dépêches.

Markdown est une syntaxe ayant pour but d'être facile à lire et écrire, ainsi, un document formaté en Markdown ne donne pas l'impression d'être marqué par des balises. Pour en savoir plus, vous pouvez consulter la documentation officielle ou encore sa traduction en français.

Le site LinuxFr.org modifie quelque peu la syntaxe Markdown et y apporte quelques extensions. Cette page présente les éléments les plus importants de la syntaxe utilisée sur le site LinuxFr.org.

Afin de vous essayer à cette syntaxe, vous pouvez utiliser le bac à sable.

Caractères

Caractères spéciaux à copier/coller

æ Æ à À â Â ä Ä
ç Ç
€ é É è È ê Ê ë Ë
î Î ï Ï
œ Œ ô Ô ö Ö
ù Ù û Û ü Ü
ÿ Ÿ
¹ ² ³ ⁴ ⁵ ⁶ ⁷ ⁸ ⁹ ⁰
½ « » ~ # @ … ‰ € – —

Pour les caractères scientifiques :
\alpha\beta\Omega => utiliser la syntaxe LaTeX $\Omega$, liste plus complète sur Wikipédia.
Un exemple de formule :
U = L \cdot \frac {di}{dt}

Note : cela a comme effet de bord qu'un paragraphe contenant deux signes $ ne s'affiche plus correctement :/ Utiliser l'entité HTML &#36; pour faire apparaître le signe $.

Titres

Il existe cinq niveaux de titres. Un titre est précédé du symbole #, le nombre de fois où ce symbole est répété indique le niveau du titre.

# Titre de niveau 1
## Titre de niveau 2
### Titre de niveau 3
#### Titre de niveau 4
##### Titre de niveau 5

Titre de niveau 1

Titre de niveau 2

Titre de niveau 3

Titre de niveau 4
Titre de niveau 5

Afin de clarifier le texte, les titres de niveau 1 et 2 peuvent êtres écrits sous cette forme :

Titre de niveau 1
=================
Titre de niveau 2
-----------------
Fin de la section titre
=======================

Le résultat étant le même que précédemment.

Titre de niveau 1

Titre de niveau 2

Fin de la section titre

Mise en forme du texte

Afin de donner du caractère à votre texte, la syntaxe vous permet d'utiliser du gras (qui correspond à l'emphase forte), de l'italique (qui correspond à l'emphase normale), et bien plus encore.

_italique_ ou *italique*

__gras__ ou **gras**

`chasse fixe`

~~barré~~

italique ou italique : utilisé pour les anglicismes, par exemple, n'ayant pas de traductions classiques.

gras ou gras

chasse fixe : utilisé pour les instructions en ligne de commande plutôt que d'utiliser la balise de code ``` qui oblige à sauter un paragraphe et passer à la ligne.

barré

Si vous voulez vraiment entourer votre texte avec les caractères précédents, vous devez les échapper avec le caractère \.

Mon texte sans \_mise\_ en \*\*forme\*\*.  

Mon texte sans _mise_ en **forme**.

Code

Vous avez aussi la possibilité d'ajouter du code,

```java
public class Bonjour {
public static int main(String[] args) {
System.out.println("Bonjour !");
}
}
```

ce qui donne :

public class Bonjour {
  public static int main(String[] args) {
    System.out.println("Bonjour !");
  }
}

```python
print "Bonjour !"
Bonjour !
```

    print "Bonjour !"
Bonjour !

Pour mettre en forme les unités systemd, utiliser la balise ini. Le code suivant  :

```ini
[Unit]
Description=Exemple avec la balise ini

[Service]
ExecStart=/usr/bin/troll

[Install]
WantedBy=moules.target
```
donnera ceci :

[Unit]
Description=Exemple avec la balise ini

[Service]
ExecStart=/usr/bin/troll

[Install]
WantedBy=moules.target

À savoir, le langage utilisé doit être spécifié. S'il ne s'agit pas d'un langage en particulier, vous pouvez soit utiliser le formatage text ou faire précéder chaque ligne de code de quatre espaces.

```
Ceci est un texte qui n'utilise pas
un langage de programmation en
particulier.
```

équivaut à :

(4 espaces) Ceci est un texte qui n'utilise pas
(4 espaces) un langage de programmation en
(4 espaces) particulier.

Ceci est un texte qui n'utilise pas
un langage de programmation en
particulier.

Paragraphes

Un paragraphe est simplement une ou plusieurs lignes consécutives de texte séparées par une ou plusieurs lignes vides.

```
Mox dicta finierat, multitudo omnis ad, quae imperator voluit, promptior laudato consilio consensit in pacem ea ratione maxime percita, quod norat expeditionibus crebris fortunam eius in malis tantum civilibus vigilasse, cum autem bella moverentur externa, accidisse plerumque luctuosa, icto post haec foedere gentium ritu perfectaque sollemnitate imperator Mediolanum ad hiberna discessit.

Exsistit autem hoc loco quaedam quaestio subdifficilis, num quando amici novi, digni amicitia, veteribus sint anteponendi, ut equis vetulis teneros anteponere solemus. Indigna homine dubitatio! Non enim debent esse amicitiarum sicut aliarum rerum satietates; veterrima quaeque, ut ea vina, quae vetustatem ferunt, esse debet suavissima; verumque illud est, quod dicitur, multos modios salis simul edendos esse, ut amicitiae munus expletum sit.
```

Mox dicta finierat, multitudo omnis ad, quae imperator voluit, promptior laudato consilio consensit in pacem ea ratione maxime percita, quod norat expeditionibus crebris fortunam eius in malis tantum civilibus vigilasse, cum autem bella moverentur externa, accidisse plerumque luctuosa, icto post haec foedere gentium ritu perfectaque sollemnitate imperator Mediolanum ad hiberna discessit.

Exsistit autem hoc loco quaedam quaestio subdifficilis, num quando amici novi, digni amicitia, veteribus sint anteponendi, ut equis vetulis teneros anteponere solemus. Indigna homine dubitatio! Non enim debent esse amicitiarum sicut aliarum rerum satietates; veterrima quaeque, ut ea vina, quae vetustatem ferunt, esse debet suavissima; verumque illud est, quod dicitur, multos modios salis simul edendos esse, ut amicitiae munus expletum sit.

Attention, en contradiction avec la spécification markdown, LinuxFR active le "hard wrapping" : un retour à la ligne au milieu d'un paragraphe n'est pas ignoré, et se traduit par un retour à la ligne dans le rendu, même en l'absence de deux espaces en fin de ligne.

Eminuit autem inter humilia supergressa iam impotentia fines (pas d'espaces ajoutées)
mediocrium delictorum nefanda Clematii cuiusdam Alexandrini nobilis mors repentina.

Eminuit autem inter humilia supergressa iam impotentia fines (pas d'espaces ajoutées)
mediocrium delictorum nefanda Clematii cuiusdam Alexandrini nobilis mors repentina.

Ce choix perturbe moins les utilisateurs ne connaissant pas markdown, qui s'attendent à ce qu'un saut de ligne dans le document source se traduise en un saut de ligne forcé au rendu. Si vous utilisez un éditeur externe, il faudra le configurer pour éviter les sauts de ligne de présentation (commande unfill-region pour Emacs par exemple).

Attention, ce comportement s'applique seulement aux sauts de lignes au sein d'un paragraphe, pas à plusieurs lignes vides répétées qui sont traduites en une unique ligne inter-paragraphe.

ceci



cela

ceci

cela

Pour obtenir plusieurs lignes vides (un choix typographique discutable), on peut insérer le caractère d'échappement &nbsp; sur les lignes interstitielles.

Citations

Les citations sont un ensemble de lignes précédés par le symbole >. Note : ne pas oublier de passer une ligne pour ajouter votre commentaire concernant ce qui est cité.

> Itaque verae amicitiae difficillime reperiuntur in iis qui in honoribus reque publica 
> versantur; ubi enim istum invenias qui honorem amici anteponat suo? Quid? Haec ut 
> omittam, quam graves, quam difficiles plerisque videntur calamitatum societates!
> Ad quas non est facile inventu qui descendant. Quamquam Ennius recte.

Itaque verae amicitiae difficillime reperiuntur in iis qui in honoribus reque publica
versantur; ubi enim istum invenias qui honorem amici anteponat suo? Quid? Haec ut
omittam, quam graves, quam difficiles plerisque videntur calamitatum societates!
Ad quas non est facile inventu qui descendant. Quamquam Ennius recte.

Les plus paresseux peuvent simplement placer ce symbole sur la première ligne d'un paragraphe. Note : pour distinguer votre commentaire sur ce qui est cité, cela oblige à laisser une ligne blanche.

> Itaque verae amicitiae difficillime reperiuntur in iis qui in honoribus reque publica 
versantur; ubi enim istum invenias qui honorem amici anteponat suo? Quid? Haec ut 
omittam, quam graves, quam difficiles plerisque videntur calamitatum societates!
Ad quas non est facile inventu qui descendant. Quamquam Ennius recte.

Itaque verae amicitiae difficillime reperiuntur in iis qui in honoribus reque publica
versantur; ubi enim istum invenias qui honorem amici anteponat suo? Quid? Haec ut
omittam, quam graves, quam difficiles plerisque videntur calamitatum societates!
Ad quas non est facile inventu qui descendant. Quamquam Ennius recte.

Il est aussi possible d'insérer une citation dans la citation ou encore utiliser des éléments de la syntaxe Markdown.

> Sed maximum est in amicitia parem esse inferiori. Saepe enim excellentiae quaedam sunt, qualis erat Scipionis in nostro, ut ita dicam, grege. Numquam se ille Philo, numquam Rupilio, numquam Mummio anteposuit, numquam inferioris ordinis amicis, Q. vero Maximum fratrem, egregium virum omnino, sibi nequaquam parem, quod is anteibat aetate, tamquam superiorem colebat suosque omnes per se posse esse ampliores volebat.

> > Senator exempla publicae ipsas publicae hominum quis fui factorum semper hominum mihi omnium mihi petenda.

Sed maximum est in amicitia parem esse inferiori. Saepe enim excellentiae quaedam sunt, qualis erat Scipionis in nostro, ut ita dicam, grege. Numquam se ille Philo, numquam Rupilio, numquam Mummio anteposuit, numquam inferioris ordinis amicis, Q. vero Maximum fratrem, egregium virum omnino, sibi nequaquam parem, quod is anteibat aetate, tamquam superiorem colebat suosque omnes per se posse esse ampliores volebat.

Senator exempla publicae ipsas publicae hominum quis fui factorum semper hominum mihi omnium mihi petenda.

Hyperliens

Afin d'étoffer vos propos, vous aurez sûrement besoin d'ajouter quelques liens. Nous pouvons différencier trois types de liens : les liens internes qui sont des liens vers le wiki du site, les liens externes qui pointent vers un site internet et les liens vers un article Wikipédia :

* lien vers la page principale du wiki : [[[linuxfr-org]]] ;
* lien nommé vers la [page principale du wiki](//linuxfr.org/wiki/linuxfr-org) ;
* lien externe : <http://linuxfr.org> ;
* lien externe nommé : [LinuxFr.org](http://linuxfr.org) ;
* lien vers une définition Wikipédia : [Wikipédia](http://fr.wikipedia.org/wiki/Wikipédia "Définition Wikipédia") ;
* lien raccourci vers une [[définition]] Wikipédia ou un [[wikt:mot]] du Wiktionnaire.

Ce qui donne :

Pour faire un lien vers une définition dans une autre langue, il suffit de préfixer le mot par le code ISO 639-1 à deux lettres de la langue, ainsi, pour la page anglaise concernant Linux :

[Linux](http://fr.wikipedia.org/wiki/en:Linux "Définition Wikipédia")

donnera : « Linux ».

Liens par référence

Ce type de lien facilite votre rédaction en utilisant des références pour les liens qui reviennent souvent. Par exemple :
« j'aime [LinuxFr.org][ref_lfr] pour ses trolls magnifiques. [DLFP][ref_lfr] est le meilleur site pour parler de [LinuxFr][ref_lfr]. »
[ref_lfr]: http://linuxfr.org

donnera : « j'aime LinuxFr.org pour ses trolls magnifiques DLFP est le meilleur site pour parler de LinuxFr. »

Ça n'a rien à voir avec les notes de bas de page, cela correspond plutôt à des renvois dans une bibliographie (technique utilisée par CrEv< pour la présentation de sa veille_technologique).

Les listes et énumérations

Il existe trois types de listes, penser à mettre une ligne blanche avant pour les utiliser :

les listes à puces

* élément 1 (un point‐virgule précédé d’une espace fine insécable (“ ”) termine chaque élément) ;
* élément 2 ;
* Je peux même y mettre un texte qui s'étend sur (2 espaces en fin de ligne)  
plusieurs lignes :
  * et faire des listes imbriquées (une simple virgule sépare les sous‐éléments),
  * de cette manière,
  * en indentant de 2 espaces en début de ligne (le dernier sous‐élément est terminé par un point‐virgule précédé de son inséparable espace fine insécable) ;
* élément final.
  • élément 1 ;
  • élément 2 ;
  • Je peux même y mettre un texte qui s'étend sur
    plusieurs lignes :
    • et faire des listes imbriquées,
    • de cette manière,
    • en indentant de 2 espaces en début de ligne ;
  • élément final.

les listes ordonnées

1. élément 1 ;
1. élément 2 ;
1. élément 3.
  1. élément 1 ;
  2. élément 2 ;
  3. élément 3.

Les listes de définition

terme 1
    (4 espaces) Définition 1.
terme 2
    Définition 2.

terme 1
Définition 1.
terme 2
Définition 2.

Tableaux

La syntaxe Markdown permet d'insérer des tableaux de façon intuitive.

Titre 1     | Titre 2   | Titre 3
------------|-----------|----------
**Ligne 1** | Élément 3 | Élément 5
**Ligne 2** | Élément 4 | Élément 6
Titre 1 Titre 2 Titre 3
Ligne 1 Élément 3 Élément 5
Ligne 2 Élément 4 Élément 6

Voir http://michelf.com/projects/php-markdown/extra/#table pour aligner les colonnes.

Images

Grande nouveauté sur LinuxFr.org, on peut maintenant incorporer des images où l'on veut alors profitons en :

![Logo LinuxFr.org](http://linuxfr.org/images/logos/linuxfr2_100.png)

Logo LinuxFr.org

Il est possible de mettre un titre sur l'image :

![Ici le texte alternatif](http://linuxfr.org/images/logos/linuxfr2_100.png "ici le titre")

Ici le texte alternatif

Si votre image est trop grande, vous pouvez spécifier la taille à laquelle vous souhaitez l'inclure (mais cela ne fonctionne plus depuis l'ajout du titre /o\) :

![Logo LinuxFr.org](http://linuxfr.org/images/logos/linuxfr2_classic_back.png "=100x100") (2 espaces)  
Image originale : (2 espaces)  
![Logo LinuxFr.org](http://linuxfr.org/images/logos/linuxfr2_classic_back.png)

Logo LinuxFr.org

Image originale :

Logo LinuxFr.org

L'hébergement de l'image initiale reste à votre charge, elle est en cache sur img : en auto-hébergé, sur pix de toile-libre ou lutim selon votre préférence…

Ligne de séparation

Il est possible de créer une ligne de démarcation en faisant suivre trois ou plus des caractères suivants : *, -, _.

***
----
_____



Adresse de courriel, XMPP…

Les adresse de courriel sont automatiquement transformée avec le lien mailto : example@example.com

Pour les adresse XMPP, il faut utiliser la même syntaxe que pour les liens http : [xmpp:example@example.com](xmpp:example@example.com) donne xmpp:example@example.com

Notes de bas de page

Les notes de bas de page suivent la syntaxe de PHP markdown. Par exemple, pour la note de bas de page n°1, on écrit [^1] là où on veut placer la référence. Et en fin d'article, on écrit: [^1]: note1
Attention à ne pas utiliser d'espace insécables dans les notes, sinon le lien de note n'est pas créé.

Note : il y a un bug en rédaction empêchant la visualisation, n'hésitez pourtant pas à les utiliser, cela peut être corrigé en modération.

En bref

Quelques éléments qui peuvent s'avérer utiles :

  • “&nbsp;”, espace insécable (le caractère UTF-8 “ ” doit être préféré à cet antique code HTML) ;
  • 2^8 pour mettre un caractère en exposant, suivi d'une espace

    • si vous avez besoin de mettre autre chose qu'une espace‐mot [espace classique, caractère 32], comme une espace insécable, une ponctuation comme une virgule, il faut entourer l'exposant de parenthèses pour que votre caractère ne soit pas également mis en exposant
    • exemple : 1^(er) étage ou Paris I^(er).
  • “ ”, espace insécable ;

  • 28 pour mettre un caractère en exposant.

    • exemple : 1er étage ou Paris Ier.

Le mot de la fin

Cette page ne présente qu'un sous‐ensemble de la syntaxe Markdown mais devrait vous suffire à proposer du contenu sur le site LinuxFr.org. Si vous voulez en savoir plus sur la syntaxe Markdown, n'hésiter à jeter un œil sur le Web et pensez au bac à sable pour vous entraîner.


  1. note => on peut ajouter des références dans le texte, détaillées en bas, comme ici 

Wiki Tags

4
22
fév.
2011

Sommaire

Les tags, keskeçé ?

Les tags ou mot-clés permettent la classification des dépêches, des journaux et plus généralement de tout contenu disponible sur le site. Cher lecteur, tu trouveras ci-dessous des conseils pour bien utiliser ces mots-clés. L'enjeu concernant l'usage des mots-clés est fort : si chacun comprend les règles et les applique de manière uniforme, ce mécanisme permettra de faciliter l'accès à l'information. LinuxFR deviendra une véritable mine d'informations, précise et fiable. L'accès par mot-clé pourra se faire facilement. Le web sémantique est probablement en train de naître grâce à la communauté… :-)

Utilisation

  • Vous pouvez créer des tags sur les contenus (journaux, entrées de forum ou de suivi, dépêches) avec le lien Tagger qui fait apparaître une liste des tags pré-existants pour l'auto-complétion
  • La consultation de vos contenus tagués est accessible dans votre boîte utilisateur
  • Vous pouvez aussi consulter les contenus tagués en cliquant sur le tag : par exemple pour dlfp
  • Pour ajouter un tag aux vôtres,
    • cliquez sur l'icône Ajouter à vos tags
    • et elle se transforme en tagué (cela donnera aussi un indice de popularité de ce tag) même s'il y a un bug gênant pour l'instant :/
  • Vous pouvez supprimer un de vos tags en cliquant sur Supprimer de vos tags
  • à noter que toutes les feuilles de style ne supportent pas toutes les fonctionnalités liées aux tags.

Mais, à quoi cela peut-il bien servir les tags ?!

Parce qu'à un moment ou un autre il faut bien être concret, autant donner un cas d'utilisation de ces tags :

Vous cherchez les sujets parlant de virtualisation ?

  • vous pouvez lancer une recherche google site:linuxfr.org virtualisation
  • cherchez les sujets sur la virtualisation : /sections/virtualisation (que des dépêches, avec un beau logo)
  • trouver les sujets tagués virtualisation : /tags/virtualisation/public (journaux et entrées de forum en plus)
    • seul xen vous intéresse ? /tags/xen/public
    • uniquement lxc ? /tags/lxc/public
    • regardez les tags connexes pour ce tag, vous y trouverez d'autres sujets comme qemu ou conteneur mais pas forcément pertinents ni complets :/ (cela dépend de vos recherches vous pouvez aussi ajouter vos tags sur d'anciens contenus :D)
    • Note : les points ci-dessus correspondent au fonctionnement actuel des tags, ne permettant pas d'affiner le filtre des contenus en ajoutant des conditions sur les tags (tous les tags présents, tous les contenus ayant un des tags, tous les contenus sans un tag…), voir ci-dessous pour des évolutions.

Quels sujets ressortent des journaux en 2014 ?

  • vous avez la recherche (laborieuse) de chaque journal :
  • utiliser les tags pour recenser par période : le tag https://linuxfr.org/tags/journal_du_mois_2014/public permet de voir les journaux les plus appréciés chaque mois selon
    • date
    • note
    • intérêt
    • dernier commentaire
    • pour limiter la recherche, reprendre les dépêches avec le tag journaux_du_mois de l'année ;-) (le boulot de recensement des liens a déjà été fait lors de la publication de ce genre de dépêche)

Conseils de création

  • pluriel : pas de pluriel sur les mots-clés ;
  • accents : rien n'empêche de poser des mots-clés avec accents, il s'agira d'uniformiser les usages ;
  • mots composés :
    • suite de mots : non géré par la version actuelle, certains utilisent le caractère séparateur « _ » (le trait d'union « - » est actuellement purement et simplement supprimé lors de l'ajout du tag),
    • notation pointée : ex : suivi.distribution.debian.squeeze.sécurité (usage non constaté actuellement).

Principaux mots clés

Pour approfondir et donner du sens, voir tags et sémantique, adapté pour LinuxFr.org.

Évolutions des tags prises en compte

Voir toutes les entrées pour les tags et celles restantes, celles n'apparaissant pas (encore) ne demandent qu'à être ouvertes :-)

  • /statistiques/tags
    • 32379 en 2011 sur les dépêches : les types ont disparu et ont été remplacés par les tags, seules les catégories ont été conservées
    • cela explique 28966 saisies de tags le samedi, cela correspond à la date de migration, peut-être mettre à vide le champ date pour cette reprise de tags pour éviter de fausser les stats ?
  • tous les tags sont visibles des modérateurs, même si non affichés
    • possibilité de les confirmer et ainsi les afficher
    • possibilité de les cacher à l'affichage (mais gardés en privé)
  • critère d'affichage public d'un tag :
    • non caché par un admodérolecteur
    • par exemple, le tag as est caché, il correspond, pour certaines personnes, à un raccourci de contenus à suivre (il y a aussi contenus lus qui devait répondre à cette fonctionnalité, cela n'a peut-être pas été compris même avec la faq :/)
    • confirmé par n utilisateurs (n=2 ?)

Évolutions à venir (ou pas ?)

La référence reste le suivi des entrées ouvertes, si personne ne le demande, cela n'a que peu de chance d'être pris en compte (mais si vous envoyez des patchs, cela avancerait plus rapidement :p).

nuage de tags

aide à la gestion des tags

Cette entrée du suivi pour aider la gestion des tags reprend les points suivants :

  • derniers tags créés (et contenus afférents avec date du contenu, peut-être autres tags ?)
  • derniers contenus tagués (filtre avec un tag spécifique au besoin même si existe peu ou prou)
  • suppression de tag
    • fait pour tags persos ok
    • pas pour modération : possibilité de cacher un tag tout de même
  • renommage de tag en masse
  • statistiques du nombre de tags affichés par catégorie permettant a priori de rendre les catégories plus pertinentes (découpage…)
    • vote sur popularité de tag (utilité ?)

flux RSS Atom

ToDo : réordonner les demandes par cohérence / similarité

Retrouver les entrées de suivi afférentes à chacune de ces demandes ;-)

Pour les modérateurs

Pour un admin ou un modérateur, tous les tags sont visibles (même ceux cachés) ce qui permet :

  • de les confirmer en cliquant sur l'icône Ajouter à vos tags
  • éventuellement d'en cacher certains (incitation à la haine, phôte flagrante d'orthographe, tagstoutcollés alors qu'il faut les séparer par des espaces…), il suffit de cliquer dessus et une page listant tous les contenus ayant ce tag est fournie : un bouton cacher ce tag est disponible en haut de page (et le statut du tag est indiqué : visible / caché)
  • d'en ajouter dès la modération, dès l'espace de rédaction cela pourrait être utile ?
  • il nous manque la possibilité d'enlever un tag qui ne serait pas pertinent pour un contenu, voir l'entrée du suivi afférente :-) (la retrouver)

Tester les fonctionnalité suivantes :

Wiki Freenet

5
22
fév.
2011

Sommaire

Freenet est un réseau distribué utilisant Internet. Il a pour particularité d'être anonyme, indestructible et incensurable.

Fonctionnement

Un utilisateur de Freenet est connecté à une vingtaine d'autres utilisateurs, appelés voisins. Lorsqu'il veut accéder à un fichier, il demande à ses voisins s'ils le possèdent. Si ceux-ci ne l'ont pas, ils demandent à leur tour à leurs voisins, et ainsi de suite. C'est une recherche en cascade. Lorsque quelqu'un possède le fichier voulu, il l'envoie à celui qui le lui a demandé, et le fichier remonte ainsi de suite la chaine jusqu'à l'utilisateur initiateur de la requête. La particularité de Freenet est que pendant cette "remontée", chaque utilisateur de la chaine va garder ce fichier en cache. Le fichier se démultiplie.

Conséquences

Ce fonctionnement à plusieurs (heureuses) conséquences.

Anonymat

Lorsque qu'un utilisateur reçoit une demande d'un fichier, il ne sait pas si le fichier demandé est pour la personne le précédant ou pour un personne plus en amont. En réalité, il n'y a que la personne initiatrice de la requête qui sait que c'est elle qui désire ce fichier. On ne peut donc pas savoir (ou difficilement) qui accède à quoi.

L'anonymat est aussi garantit envers l'extérieur. En effet, toutes les communications entre nœuds du réseau Freenet sont chiffrées et se font sur un port aléatoire. Votre fournisseur d'accès à Internet ne peut donc pas savoir si vous utilisez Freenet.

Indestructible

Le fait qu'un fichier se répande dans le réseau à chaque requête garantit son indestructibilité. En effet, un fichier donné n'est pas stocké sur une machine donnée, mais sur l'ensemble du réseau. Par conséquent, le fait qu'une ou plusieurs machines disparaissent du réseau n'est pas pénalisant, pour peu que les fichiers qu'elles possédaient aient été demandés au moins une fois. Le seul moyen pour qu'un fichier disparaisse est qu'il ne soit plus demandé. Il sera alors progressivement éliminé du cache des machines par faute de demande.

Incensurable

Freenet est du fait de son indestructibilité impossible à censurer. En effet, pour vouloir censurer un contenu, il faudrait savoir où il se trouve. Imaginons qu'un être malveillant ait modifié le code source du logiciel pour savoir d'où vient un fichier qu'il reçoit. Il faut encore qu'il demande ce fichier. Mais là, le fichier va se multiplier. La censure est donc impossible, il faudrait couper tout Freenet, ce qui est de même impossible du fait de l'anonymat.

Darknet et Opennet

Le réseau Freenet a quand même en théorie quelques vulnérabilités. Nous évoquions par exemple tout à l'heure le fait qu'une personne malveillant modifie le logiciel pour accéder à certaines informations. Freenet dispose pour contrer cela de deux modes de fonctionnement :

  • le mode Opennet : dans ce mode, chaque utilisateur se connecte à d'autres utilisateurs inconnus. C'est un mode pratique lorsque l'on est nouveau sur le réseau et que l'on ne connait personne, mais c'est le mode le plus vulnérable.

  • le mode Darknet : ici, les utilisateurs ne se connectent qu'à des utilisateurs qu'ils ont explicitement indiqués. Ainsi, un inconnu ne peut pas se connecter à eux pour compromettre leur anonymat.

Freenet ne disposait initialement que du mode Darknet. Actuellement, on peut mélanger les deux, en autorisant des connexions aux inconnus et en spécifiant certains utilisateurs auxquels ont veut se connecter.

En pratique

En pratique, Freenet est disponible sous la forme d'un logiciel libre codé en langage Java tournant en tache de fond. Il fournit un proxy accessible à l'adresse [http://localhost:8888] qui permet de le configurer et d'accéder à des Freesites.

Un Freesites est l'équivalent d'un site web mais sur le réseau Freenet. Les Freesites sont statiques, sans php ni javascript. Il est très facile d'insérer sur le réseau Freenet son Freesite du fait de l'absence du problème d'hébergement : tout le monde héberge tout le monde.

D'autres applications ont été développées, utilisant le réseau Freenet :

  • FMS, un système de discussion ressemblant aux newsgroupes.

  • Freetalk, un système similaire qui sera lui à terme partie intégrante de Freenet.

  • Sone, un système de micro blogging.

  • Freemail, un système de mail.

  • Jfniki, un système de wiki.

Controverse

Bien sûr, le réseau Freenet est lent. L'accès à un Freesite peut varier de quelques secondes à beaucoup plus, selon s'il est beaucoup demandé (et donc répandu) ou pas. De même, l'envoie d'un Freemail ou d'un message sur FMS peut mettre plusieurs heures, le temps qu'il se répande. Mais Freenet garantit l'anonymat et l'impossibilité à censurer, ce qui sont ses buts premiers.

Freenet est aussi un endroit sombre, où l'ont peut trouver de tout et n'importe quoi, en passant par la critique du gouvernement, la culture de pavot, la fabrication de bombes, ou encore des vidéos pédophiles. Oui, il est probable que des terroristes et des personnes à la morale douteuse utilisent ce réseau. Oui, il se peut que vous hébergiez chez vous des vidéos pédophiles sans le savoir. Mais :

  • C'est la liberté d'expression. Chacun doit pouvoir s'exprimer, même si ce qu'il dit vous choque.

  • Vous ne craignez rien. Toutes les données sont chiffrées. On ne peut pas vous accuser de posséder des informations que vous ne savez pas lire.

Lien

Wiki Karma

35
21
fév.
2011

Page wiki transférée dans l'aide du site


NdM : Les informations ci-dessous étant sur un wiki, elles peuvent ne pas être en phase avec ce qui est actuellement mis en œuvre (soit prospectif, soit obsolète, selon les éditions de cette page).
Plus spécifiquement, le karma étant un sujet polémique du site, cette page a vocation à préciser certains points le plus factuellement possible par tous les inscrits (l'historique étant disponible sur le côté pour ceux souhaitant voir les dernières modifications suggérées). Accessoirement, cela peut permettre de préciser l'aide du site.


Le karma est une note interne qui détermine le nombre d'avis journaliers et la possibilité d'écrire sur le site.

L'influence de différentes actions sur le karma :

  • Karma par défaut : 20
  • Note « pertinent » : +1
  • Note « inutile » : -1
  • Dépêche publiée : +50 (pour l'auteur)

Le karma augmente donc lorsque l'on reçoit des notes « pertinent » (quel que soit le type de contenu ou le commentaire noté) ou que l'on publie des dépêches.

Le nombre d'avis quotidiens est déterminé à partir du karma. La formule est min(3 + karma / 10, 100). (source).

Le score de base des commentaires dépend du karma. La formule est E( log10( karma ) ) - 1, où E() est la partie entière inférieure si le karma est strictement positif. Et c'est max(-10, -2 + E(karma/30)) pour un karma négatif ou nul. Avec un karma à 0, ça donne un score de -2. (Source)

NdM : contrairement à une idée vraisemblable - répandue ? - la note par défaut d'un nouveau commentaire ne joue pas sur le karma directement :

  • comme indiqué ci-dessus, c'est simplement un affichage
  • comme indiqué ci-dessus, seuls les pertinentages / inutilages jouent sur le karma (et votre participation au site)
  • en revanche, indirectement, un commentaire non pertinent apparaissant déjà à -2 ou moins sera peut-être inutilé encore plus
  • une conclusion à en tirer : même si votre commentaire est initialement caché pour ceux ne naviguant pas à -42, il n'y a pas de raison qu'il ne soit pas pertinenté s'il l'est (pertinent), ce qui fera remonter votre karma
  • une demande en cours pour éviter de replier les réponses dans les forums même si le karma est encore insuffisant (il suffit de mettre la note à 1)

Pour pouvoir écrire un journal, dans le wiki ou sur la tribune, il faut avoir un karma supérieur strictement à 0. (sources journal, wiki, tribune).

Vous pouvez contacter l'équipe de modération, cf. participer-à-LinuxFr si vous pensez mériter un meilleur karma (on vous jettera des cacahuètes…).

discussion du système de notation aka karma

Wiki Template Des News Noyau

Licence CC by-sa
Tags : aucun
0
21
fév.
2011

__Voir Aide demandée sur la dépêche noyau 3.5 pour une manière de s'organiser pour le modèle proposé ci-dessous.

Dans les grandes lignes, suivre les sites suivants pour trouver les informations pour rédiger :

Ci-dessous un modèle de structure permettant de traiter les différents points à ne pas oublier en rédaction.

Voir rédiger des dépêches noyau pour plus d'information et s'impliquer.


La sortie de la version stable 4.x du noyau Linux vient d'être annoncée par Linus Torvalds. Le nouveau noyau est, comme d'habitude, téléchargeable sur les serveurs du site kernel.org.

Le détail des évolutions, nouveautés et prévisions est dans la seconde partie de la dépêche (qui est sous licence CC BY-SA).

En bref

Annonces des RC par Linus Torvalds

RC-1

Les nouveautés

Architecture

Développement

Pilotes graphique libres

Réseau

Sécurité

Systèmes de fichiers

Virtualisation

KVM

Xen

Virtio

Le bilan en chiffres

Appel à volontaires

Cette dépêche est rédigée par plusieurs contributeurs dont voici la répartition :

Mainteneur Contributeur(s)
La phase de test Aucun
Arch Aucun
Développeurs Aucun
Pilotes graphiques libres Aucun
Réseau Aucun
Systèmes de fichiers Aucun Timothée Ravier
Sécurité Aucun
Virtualisation Xavier Claude
Édition générale Aucun Martin Peres

Un peu de vocabulaire :

  • le mainteneur d’une section de la dépêche est responsable de l’organisation et du contenu de sa partie, il s’engage également à l’être dans le temps jusqu’à ce qu’il accepte de se faire remplacer ;
  • un contributeur est une personne qui a participé à la rédaction d’une partie d’une section de la dépêche, sans aucune forme d’engagement pour le futur.

Malgré cette équipe importante, beaucoup de modifications n’ont pas pu être expliquées par manque de temps et de volontaires.

Nous sommes particulièrement à la recherche de mainteneurs pour les sections Systèmes de fichiers et Réseau, les précédents n'ayant pas donné de signes de vie pendant la rédaction des dernières dépêches.

Si vous aimez ces dépêches et suivez tout ou partie de l’évolution technique du noyau, veuillez contribuer dans votre domaine d’expertise. C’est un travail important et très gratifiant qui permet aussi de s’améliorer. Il n’est pas nécessaire d’écrire du texte pour aider, simplement lister les commits intéressants dans une section aide déjà les rédacteurs à ne pas passer à côté des nouveautés. Essayons d’augmenter la couverture sur les modifications du noyau !

Wiki Une introduction au contrôle du trafic réseau avec Linux

5
21
fév.
2011

Sommaire

Les débits des flux réseau peuvent être contrôlés ou rendus prioritaires en fonction des en-têtes des paquets IP qui transitent, par exemple : les adresses de la source ou de la destination ainsi que les ports. Les serveurs s’en servent pour faire de la _Quality of Service (QoS) et assurer par exemple un débit minimal aux services en streaming._

J’ai eu l’idée saugrenue de mettre en place de la QoS pour une connexion ADSL haut-débit telle que fournie aux particuliers. J’y ai gagné :

— une réactivité plus importante, nécessaire aux sessions intéractives ssh ;

— un débit auto-régulé entre les différents services, le _streaming
prioritaire est nécessaire pour éviter les coupures intempestives (que ce soit la télévision de mon FAI que je reçois ou de la musique que je diffuse), tandis que les téléchargements de fond n’occuperont que la bande passante disponible ;

— une bonne migraine, il faut dire que j’ai appris sur le tas, milles excuses pour les approximations et erreurs qui n’auront pas manqué de se glisser, le journal est long : j’ai tenté autant que possible d’aller du général vers le technique, les parties « Configuration du réseau » et suivantes sont pour ceux qui voudraient mettre en place de la QoS._

Par contre cette solution miracle nécessite de se limiter à une bande passante d’environ 90 % celle disponible.

Introduction

Imaginons que je commence le téléchargement de Sintel, j’utilise toute la bande passante, mettons 800 ko/s. Ensuite je veux commencer à regarder la télévision, la solution simple serait d’avoir un logiciel de téléchargement qui permet de brider la vitesse à 200 ko/s pour avoir assez de bande passante pour le reste. Avec la QoS, sans intervention de l’utilisateur, le flux de la télévision sera prioritaire et utilisera la bande passante nécessaire, la vitesse de téléchargement du film s’adaptera alors au débit laissé libre.

Autre cas d’utilisation : j’ai installé MPD qui peut diffuser la musique jouée sur le port 8000 en http. Mais pas question d’avoir de coupures sur le concerto pour violon de Sibelius ! même si je lance une session scp. Or je veux toujours que ssh et scp soit prioritaire, je pourrais donc assurer un débit minimal pour la musique.

Au passage, vous faites déjà de la QoS sans le savoir si vous utilisez ssh et scp. Ces outils renseignent correctement le champ TOS qui se trouve dans les en-tête des paquets (et fait pour!), ssh spécifiera qu’il faut minimiser les délais, scp se contentera de maximiser les débits. Linux donnera la priorité aux paquets qui veulent minimiser les délais.

Écrire des tc avec classe

tc est le programme en ligne de commande qui permet ces petits miracles. L’outil permet de créer des gestionnaires (que les barbares d’outre-manche appelleront qdisc), sorte d’algorithme qui se chargeront de sélectionner le moment et quels paquets auront l’honneur de rejoindre la carte réseau (qui les enverra ensuite vers le grand’ternet). Certains gestionnaires peuvent avoir des classes, genre de liste d’attente qui stockeront les paquets à envoyer, le gestionnaire se charge alors de sélectionner la classe qui pourra émettre un paquet. La puissance de tc réside dans le fait qu’on peut attacher un autre gestionnaire à une classe fille d’un gestionnaire déjà existant, on a au final ce qui s’apparente à un arbre. Enfin on définit des filtres pour dire dans quelle classe doivent être mis en attente les paquets à envoyer.

Pour résumer : une application transmet des données, le noyau prépare le paquet, le filtre et le place dans la file d’attente appropriée, le gestionnaire vide cette file d’attente et envoie sur la carte réseau en fonction de son algorithme interne. C’est grosso modo le fonctionnement général, de ce que j’ai compris.

Configuration du réseau

Il faudra être Dieu sur votre machine (_aka root, mais ça en jette moins) pour tout ce qui va suivre._

Vous aurez remarqué… je veux dire la moitié que je n’ai pas encore perdue (ça va venir, niak!)… bref… vous aurez remarqué que je n’ai parlé que d’envois de paquets dans le paragraphe précédent. On ne peut tout simplement pas contrôler ce qu’on reçoit. Je sais, pour moi aussi ça a été une grosse déception. Mais il y a une solution !

Il faut avoir un routeur. Mettons qu’il est connecté sur Internet grâce à l’interface réseau eth0 et connecté au réseau local avec eth1, on pourra contrôler ce qu’envoie eth0 et ce qu’envoie eth1. La magie des connexion réseau permettra alors de réguler le débit aval et amont entre Internet et le réseau local. En fait l’interface eth1 enverra au débit régulé, comme le noyau ne peut pas garder une quantité infinie des paquets qui arrivent sur eth0 certains iront sur eth1 mais d’autres seront tout simplement ignorés. Ignorer un paquet revient tout simplement à faire croire au serveur émetteur qu’il a été perdu à cause d’une connexion réseau trop faible, il adaptera alors automatiquement le débit d’envoi des paquets à ce que vous aurez choisi sur eth1 (c’est un mécanisme général, pour TCP si je ne dis pas de connerie). Ceux qui ont un routeur, contenter vous d’initialiser la variable shell DEV à votre interface externe (eth0 dans mon exemple), et la variable IFB doit contenir le nom de l’interface interne (eth1).

Pour les autres qui ont une *box et un seul ordinateur (dont votre serviteur), ne courrez pas acheter un routeur ! On suppose que vous ayez mis le nom de votre interface réseau (en général eth0) dans une variable shell nommée DEV, on va créer une interface réseau fantôme :
```bash
IFB=ifb0
modprobe ifb
ip link set dev $IFB up
tc qdisc add dev $DEV ingress
tc filter add dev $DEV parent ffff: protocol ipv6 u32 match ip6 dst ::/128 flowid 1:1 action mirred egress redirect dev $IFB
tc filter add dev $DEV parent ffff: protocol ip u32 match ip dst 0/0 flowid 1:1 action mirred egress redirect dev $IFB

Pour l’IPv6 il suffit de faire quelques remplacements

tc filter add dev $DEV parent ffff: protocol ipv6 u32 match ip6 dst ::/128 flowid 1:1 action mirred egress redirect dev $IFB


Les gestionnaires, exemple d’application avec SSH
=================================
_Où on a besoin de l’aspirine_

HTB
-------

Nous allons pouvoir attaquer le contrôle proprement dit.  Le gestionnaire racine sera de type _Hierarchical Token Bucket_ (HTB), le premier qu’on verra, et le plus complexe (c’est mon côté diabolique).  Il permet une gestion avancée de la bande-passante (débit minimal garanti, débit maximal, etc.), mais je ne m’en sers que pour limiter la bande-passante à 90 % de celle à disposition.  Je rapelle que cette limitation en-dessous des capacités est primordiale si vous voulez que ça fonctionne !  En effet, la liste d’attente sera nécessairement sur l’interface réseau la plus lente, si vous voulez pouvoir contrôller cette liste, il faudra rendre votre interface plus lente que celle du modem.  Stockez le débit maximal choisi en kilo-octets par seconde dans les variables shell `DOWNLINK` et `UPLINK` pour le débit descendant et ascendant respectivement, chez moi réglés à 750/75 ko/s pour une connexion de ~800/~100 ko/s.
```bash
tc qdisc add dev $DEV root handle 1:0 htb default 1
tc class add dev $DEV parent 1:0 classid 1:1 htb rate ${UPLINK}kbps

Qu’a-t-on fait ? On a commencé par créer un gestionnaire HTB identifié par le paramètre handle 1:0 et attaché à la racine de la carte réseau, ce gestionnaire peut avoir plusieurs classes filles, par défaut on envoie tout le flux vers la classe fille 1. La classe fille est créée en spécifiant le parent et l’identifiant qui prend la forme parent:fille. Une seule classe fille est créée pour restreindre le débit. De même pour la connexion descendante :
bash
tc qdisc add dev $IFB root handle 1:0 htb default 1
tc class add dev $IFB parent 1:0 classid 1:1 htb rate ${DOWNLINK}kbps

La limitation artificielle de la bande passante permet de prendre le contrôle sur la gestion des paquets (avant c’était la *box ou le FAI qui l’avait). Les identifiants doivent être uniques pour une interface réseau donnée, ici par simplicité je m’arrange pour construire des arbres similaires avec des identifiant identiques entre $DEV et $IFB (ça simplifie un peu les choses). Il faut bien réaliser que si mon utilisation de HTB est simple il permet beaucoup plus : assurer un débit minimal pour chacune des classes filles et permettre à l’une d’elle d’emprunter à une autre.

prio

On va pouvoir donner des priorités maintenant, il faut utiliser alors le gestionnaire… prio (qui a dit que la QoS était compliquée?). On commence par le rattacher à la classe qui limite la bande passante, pour le débit ascendant et descendant :
bash
tc qdisc add dev $DEV parent 1:1 handle 2:0 prio bands 4 priomap 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3
tc qdisc add dev $IFB parent 1:1 handle 2:0 prio bands 4 priomap 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3

J’ai créé un gestionnaire prio qui possède 4 classes filles, paramètre bands. Elles sont automatiquement crées, nommées 2:1, 2:2, etc. par ordre de la priorité la plus élevée à la plus basse. Le gestionnaire commencera systématiquement par envoyer les paquets de la classe fille 1, si celle-ci est vide il enverra ceux de la fille 2, etc. La liste des 16 chiffres 3 du paramètre priomap définissent la classe fille par défaut vers laquelle envoyer les paquets pour mise en attente. Il y a un piège : la numérotation commence par 0, donc ici c’est bien vers la quatrième classe, de priorité la plus basse, que j’envoie les paquets par défaut. Pourquoi réécrire 16 fois la même chose me direz-vous ? Tout simplement parce que ce gestionnaire tient compte du champ TOS (souvenez-vous je vous en avez parlé à propos de scp et ssh) pour prendre sa décision. Le champ TOS a 4 bits, soit 16 valeurs possibles… le compte y est.

À propos de SSH, c’est la prochaine étape… je veux qu’il ait la priorité maximale, on va donc filtrer les paquets pour que ceux entrant ou sortant du port 22 de votre serveur SSH soit envoyés dans la classe de plus grande priorité :
bash
tc filter add dev $IFB parent 2:0 protocol ip prio 1 u32 match ip dport 22 0xffff flowid 2:1
tc filter add dev $DEV parent 2:0 protocol ip prio 1 u32 match ip sport 22 0xffff flowid 2:1

Le parent définit quel gestionnaire appliquera le filtre et flowid vers quelle classe envoyer le paquet. Le paramètre prio définit l’ordre dans lequel sera appliquer les filtres pour un gestionnaire donné. Mais ceci n’est pas suffisant, on va encore créer un gestionnaire pour les paquets du port 22 :
bash
tc qdisc add dev $DEV parent 2:1 handle 10:0 prio
tc qdisc add dev $IFB parent 2:1 handle 10:0 prio

Le gestionnaire prend l’identifiant 10:0, vous remarquerez que j’utilise toujours prio, mais sans renseigner de paramètres : par défaut 3 classe filles seront créées, et les paquets seront correctement envoyés dans les bonnes classes. Dans le cas de ssh on arrivera au comportement que j’ai décrit en introduction : les paquets de session intéractive auront la priorité sur les paquets de scp !

SFQ

On va finir (enfin!) par le dernier gestionnaire utile : Stochastic Fairness Queueing (SFQ), qui permet d’équilibrer le débit entre les différentes connexions. Il ne peut pas posséder de classes filles et il est conseillé de terminer l’arbre par le SFQ :
bash
tc qdisc add dev $IFB parent 10:1 handle 11:0 sfq perturb 10
tc qdisc add dev $IFB parent 10:2 handle 12:0 sfq perturb 10
tc qdisc add dev $IFB parent 10:3 handle 13:0 sfq perturb 10
tc qdisc add dev $DEV parent 10:1 handle 11:0 sfq perturb 10
tc qdisc add dev $DEV parent 10:2 handle 12:0 sfq perturb 10
tc qdisc add dev $DEV parent 10:3 handle 13:0 sfq perturb 10

Vérification

Pour obtenir les statistiques :
bash
tc -s class show dev $DEV
tc -s class show dev $IFB

TODO : un joli script python tout beau qu’il est bien.

Finalisation

Flux de la *box

Le web

Suppression de la configuration

tc qdisc del dev $DEV root
tc qdisc del dev $DEV ingress
tc qdisc del dev $IFB root
rmmod ifb

Commentaires

Pour les paquets IPv4 uniquement vous pouvez marquer les paquets avec iptables, et ensuite utiliser les filtres de tc sur les marques. Ceux qui connaissent iptables pourront trouver cette méthode plus simple et plus puissante que les filtres tc.

Un exemple de configuration.

Pour en savoir plus : Linux Advanced Routing & Traffic Control HOWTO, bon courage !

Wiki Web Ou Internet

8
21
fév.
2011

Pour ne pas mourir dans d'atroces souffrances, il est important de faire la différence entre Internet et le Web.

Le web est un service utilisant le réseau Internet.

La confusion est souvent faite dans les médias et par certains utilisateurs, notamment l'appellation Internet mobile pour des téléphones portables ou clés 3g tandis que le service fourni est limité (souvent seuls les ports 25, 80 et 443 sont ouverts).

Heureusement pour nous, Tanguy veille.

Néanmoins, il est accepté que l'on parle des « interwebs » afin de ne lever aucune ambiguïté.

Wiki Distribution Linux

4
21
fév.
2011

Une distribution Linux est un système d'exploitation basé sur le noyau Linux.

Attention à ne pas confondre Linux et GNU/Linux.

Quelques distributions Linux (section générique Distribution):

Distribution — Section sur LinuxFr.org — Tag sur LinuxFr.org — Commentaires
Arch Linux section Arch-Linux tag archlinux
Debian section Debian tag debian
Fedora section Fedora tag fedora Communauté francophone
Gentoo section Gentoo tag gentoo forum francophone
LFS pas de section tag lfs
Mageia section Mageia tag mageia
openSUSE section Suse tag opensuse
Pardus pas de section tag pardus
Red Hat section Red Hat tag redhat
Salix OS pas de section tag salix
Slackware section Slackware tag slackware
Ubuntu section Ubuntu tag ubuntu

Le tutoriel Quelle-distribution-Linux-choisir vous aidera à choisir une distribution qui vous correspond.

Autres systèmes — Section sur LinuxFr.org — Tag sur LinuxFr.org — Commentaires
Android section Android tag android
FreeBSD section FreeBSD tag freebsd voir « Expliquer BSD »
OpenBSD section OpenBSD tag openbsd
NetBSD section NetBSD tag netbsd
DragonFly BSD section DragonFly BSD tag dragonflybsd
Haiku section Haiku tag haiku
Mac OS X section Apple pas de tag

Wiki Bronsoniser

8
21
fév.
2011

S'emploie essentiellement sous forme de participe passé : Être bronsonisé, ou avoir été bronsonisé, ou j'eusse préféré que tu fusses bronsonisé. Désigne le fait de se comporter comme Charles Bronson le 30 août 2003. À condition qu'il soit fait mention de l'événement sur linuxfr. Comme cela fut le cas pour l'acteur en question.

  • Adam, mars 2003
  • Amy, 23 juillet 2011
  • Jean, juillet 2004

Un tag bronsonisation sur DLFP lui est dédié pour repérer les contenus de qualitay à propos de gens intéressants qui nous tenaient à cœur (ou pas).

Wiki Pierre Tramo

10
20
fév.
2011

Pierre Tramo est un J2EE Lead Architect (ou J2EE Project Architect), il partage son expertise technique dans les longs débats du vendredi.

Son expertise technique est toujours pertinente et avant-gardiste. C'est ce qui fait son charme.
C'est aussi un excellent connaisseur des architectures distribuées à base de clusters de Suse/Linux.

En réalité

Pierre Tramo est un personnage imaginaire dont les compétences en Java sont proches du néant.

Sa vie sur Internet a commencé sur les forums Hardware.fr. Il s'agissait bien entendu d'un troll de Kadreg, assez rapidement démasqué.
Puis la blague a été reprise sur linuxfr.org, par Kadreg, puis par un certain nombre de moules.

Une page Wikipédia a même été créée pour lui rendre gloire, mais a été retirée par les modérateurs.