Une simple commande qui peut donner de précieuses informations :
#apache ps -ylC httpd --sort:rss #apache2 ps -ylC apache2 --sort:rss
Note : La colonne RSS indique la mémoire non swappée utilisée par les processus Apache en kiloBytes.
blog
Une simple commande qui peut donner de précieuses informations :
#apache ps -ylC httpd --sort:rss #apache2 ps -ylC apache2 --sort:rss
Note : La colonne RSS indique la mémoire non swappée utilisée par les processus Apache en kiloBytes.
Au-delà de l’outil, de son langage, Cfengine répond, de part son concept et des idées dont il retourne, aux besoins d’administrateurs soucieux de gérer d’importants data centers.
Le but est ici de vous exploser, dans un premier temps, la philosophie cachée derrière l’outil qui vous permettra de « penser » Cfengine.
Qu’est ce ?
Plutôt que de faire les actions d’administration à la main ou via une solution difficile à mettre en place et à maintenir à base de scripts, pourquoi pas utiliser un système robuste, scalable, indépendant de l’os et de la plate-forme.
Sources
Cfengine vient d’un projet de recherche débuté en 1993 par Mark Burgess, professeur-chercheur à l’université d’Oslo. Il est le principal auteur et mainteneur du logiciel libre GNU/Cfengine.
Philosophie
Un système informatique doit se comporter comme un système immunitaire. Pas d’intervention humaine directe mais définition d’un état (~politique) d’un serveur définit dans ensemble de fichiers de configuration. La définition de l’état est écrit en langage Cfengine. La machine doit obéir à la politique définie.
Un Référentiel, Une politique
Cfengine de définir une politique globale au travers de fichiers de configuration qui sera distribués sur les clients. Il est possible de définir une politique globale avec plusieurs niveaux de granularité allant du groupe associé au site jusqu’à une machine spécifique suivant la classification des clients.
Le langage
Langage déclaratif avec des décisions prises suivant la classification des clients. La classification est fonction des caractéristiques des machines et de son groupe d’appartenance.Il reste indépendant de l’OS et uniforme les tâches.
L’agent
Lancé à la demande ou en cron, il Pull les derniers fichiers de configuration sur le référentiel, applique la politique définie et envoie une alerte si celle-ci a échouée.
Sécurité
Pas de source d’entrée possible, seules les directives prédéfinies sur le référentiel seront appliquées. Échanges sécurisés basés sur le client avec échanges de clés et création d’un clé de session par l’algorithme de chiffrement symétrique Blowfish. Mécanisme d’arrêt afin d’éviter des exécutions en boucles.
Voici la fin de ce premier cf-article
Grâce au package TRAMP (Transparent Remote Access, Multiple Protocols), il est possible d’éditer des fichiers distants via SSH par exemple.
Installation (Debian) :
apt-get install tramp
Utilisation :
xemacs /[ssh/user@host]/chemin/fichier
emacs /ssh:user@host:/chemin/fichier
Remarque :
Ajoutez (setq tramp-default-method « ssh »)
dans votre ~/.xemacs/custom.el pour de pas avoir à préciser la méthode ssh
Outre le fait de combiner agilement plusieurs fonctions en une, binstats est un shell script qui vous dira quels sont les pauvres petits programmes orphelins foisonnants sur votre systèmes.
Vous aurez ainsi, le nombre d’exécutables classés par types (ELF, QMagic, liés statiquement, …) , les scripts, les binaires non strippés, setuid, partageant des libs absentes, le nombre de partages des libs, les libs inutiles et les packages qui en découlent.
Sous debian :
apt-get install binstats
binstats
Le résultat sera dans un fichier texte : binstats.log
goosh.org propose un shell pour faire vos recherches en ligne de commande.
Vu sur www.mfavez.com.
Voila comment afficher les prévision météo sur son écran avec OSD (On Screen Display)
sudo apt-get install xosd-binsudo apt-get install xbindkeysPour ma ville, j’ai ajouté les 2 lignes suivantes dans mon .xbinkeysrc :
"wget 'http://fr.weather.com/rss-Vallauris-FRXX5403' -O /dev/stdout 2> /dev/null | grep '°' | sed -e 's,°C,°C,g' -e 's,.*CDATA\[\(.*\)\]\]>.*,\1,' | osd_cat -A left -p bottom -c green -o 330 -O 1 -f -*-helvetica-*-r-*-*-24-*-*-*-*-*-*-* -P 50 -d 8"
shift + F2
Appeler le raccourci clavier:
en appuyant sur les touches MAJ+F2, j’ai les prévisions météo qui s’affichent.
En plus de présenter une liste de proxies, tools.rosinstrument.com propose une suite d’outils intéressants autour de l’anonymat, l’identité, le géolocalisation, l’email …
RewriteEngine on
Rewritemap blacklist txt:/path/to/blacklist.txt
RewriteCond ${blacklist:%{REMOTE_ADDR}} =b
RewriteCond %{request_uri} !=/sorry.html
RewriteRule .* /sorry.html [R,L]
>cat /path/to/blacklist.txt
193.220.137.2 b
81.199.171.20 b
<Limit GET HEAD POST>
order allow,deny
deny from 202.70.112.0/20
allow from all
</LIMIT>
Générateur de classes IP (par pays) en ligne : http://blockacountry.com
Avec la liste ip-to-country et un script Perl du style :
#!/usr/bin/perl -w
use strict;
my %ip;
my $old_ip=0;
while (<>) {
my ($ip) = split;
next if ($ip eq $old_ip);
my ($a,$b,$c,$d) = split(/\./,$ip);
my $n = ((((($a * 256) + $b) * 256) + $c) * 256) +$d;
open (FILE,"< ip-to-country.csv") || die $!;
while (<FILE>) {
my ($beg,$end,$country) = (split (/,/,$_))[0,1,4];
$beg =~ s/"//g;
$end =~ s/"//g;
if (($beg <= $n) and ($end >= $n)) {
$ip{$ip}++;
print "ip = $ip\n";
last;
}}
close(FILE);
$old_ip=$ip;
}
exit(0);
Firefox 3 soutiendrait-il la prochaine sortie d’un film avec Keanu Reeves ? remake du chef d’oeuvre « The Day The Earth Stood Still » (« Le Jour Où La Terre S’arreta » en Français) de Robert Wise.
En tapant about:robots dans la barre de navigation, vous obtiendrez la page suivante portant le titre ô combien évocateur « Gort! Klaatu barada nikto! » .
Dans le film, c’est suite à la demande de Klaatu (humanoïde passifiste), que l’héroïne du film va prononcer la phrase magique pour empêcher le robot Gort de détruire la terre.
Bande annonce du remake:
Autres easter egg :
about kitchensink
about:mozilla
tab <---> auto complétion pour les fichiers et les dossiers ^[chaîne 1]^[chaîne 2]^ <---> lance la dernière commande en remplaçant la chaîne 1 par la chaîne 2 !-[n] <---> rappelle la commande lancée il y a n commandes !! <---> lance la dernière commande !?[chaîne] <---> lance la dernière commande terminant par la chaîne de caractères !?[chaîne]? <---> lance la dernière commande contenant la chaîne de caractères ![chaîne] <---> lance la dernière commande commençant par la chaîne de caractères ![n°] <---> rappelle la commande n°... de l'historique !# <---> lance la plus ancienne commande de l'historique [commande] !^ <---> lance la commande avec le premier argument de la commande précédente [commande] !:[n]-[m] <---> lance la commande avec les arguments n à m de la commande précédente [commande] !:[n°] <---> lance la commande avec l'argument n°... de la commande précédente [commande] !$ <---> lance la commande avec le dernier argument de la commande précédente Alt + . <---> colle le dernier mot de la ligne précédente Alt + b <---> déplace le curseur d'un mot vers la gauche Alt + c <---> met en majuscule la lettre courante, en minuscules les autres lettres du mot courant, puis se place au mot suivant Alt + d <---> efface le mot suivant Alt + f <---> déplace le curseur d'un mot vers la droite Alt + t <---> échange le mot courant et le mot précédent Ctrl + _ <---> Annuler les dernières modifications (rester appuyé) Ctrl + a <---> déplace le curseur en début de ligne Ctrl + c <---> envoie le signal SIGINT au processus en cours Ctrl + d <---> efface le caractère courant, ou déconnecte (logout) si la ligne est déjà vide Ctrl + e <---> déplace le curseur en fin de ligne Ctrl + h <---> efface le dernier caractère Ctrl + k <---> coupe tout à droite du curseur Ctrl + l <---> efface l'écran (commande clear) Ctrl + n <---> commande suivante (équivalent à la touche flèche bas) Ctrl + o <---> exécute la commande (touche entrée) Ctrl + p <---> commande précédente (équivalent à la touche flèche haut) Ctrl + q <---> fait apparaître la saisie / relance l'affichage Ctrl + r <---> recherche dans l'historique (Ctrl + r pour remonter à la chaîne précédente) Ctrl + s <---> masque la saisie / arrête l'affichage (touche pause) Ctrl + t <---> permet d'inverser deux lettres Ctrl + u <---> coupe tout à gauche du curseur Ctrl + w <---> coupe le mot à gauche du curseur Ctrl + y <---> colle ce qui a été effacé à gauche du curseur (suite à un Ctrl + u) Ctrl + z <---> passe le processus en cours en arrière plan Echap, 10, A <---> répète 10 fois le caractère A Echap, 5, Ctrl + q, Ctrl + v, 9 <---> répète 5 fois le chiffre 9
Source
Autre article : bash-variables-speciales-tests-subsitutions-et-autres
Follow Me!