Archives pour l'étiquette Administration

WXen administration simplifiée de machine Xen

Plop à vous,

Aujourd’hui, je vous présente, un rapide script/web qui permet d’administrer (en fait : démarrer, arreter, susprendre et reprendre), vos machines Xen via une interface web en cgi-bin (un script sh histoire de faire Geek … avec plein de commandes loufoques comme à mon habitude ^^ : du sed, du awk, du grep, …).
Continuer la lecture de WXen administration simplifiée de machine Xen

Commandes linux sympa

Bijour à tous …

Aujourd’hui, un tout pitit article sur les commandes systèmes qui peuvent être utile.

Mais pourquoi?? :p

Bé voilà, je me suis rendu compte que ben s’amuser à faire un top, c’était pas top (^.^) pour avoir des info précises sur tel processus, ou bien, connaître l’état des disques quand on a pas accès à nautilus ou baobab …

Donc voilà, quelques commandes et enchevêtrement de commande qui rappelleront bien des souvenirs (des heures de joie de TP qui défile devant les yeux :p) aux DUTs info qui passe par là (bien sûr, y’en a d’autre, pour faire la même chose, mais celle-là ) :

  • Récupération des processus en affichant seulement : l’utilisateur, le pid, la commande, la conso CPU et RAM, le temps CPU :
    • ps aux|tr -s [:space:]|cut -d »  » -f1-4,8,9,11|sort -k3
    • Explication : le tr permet de supprimer les espaces en trop, pour permettre à cut le découpage des colonnes et sort -k3 pour le trie sur la conso CPU
    • On peut aussi réduire un peu l’affichage sur les dix derniers/premiers via un head -10 ou un tail -10
  • Utilisation du randomisateur : (inutile, mais …) (vu sur korben ^^)
    • cat /dev/urandom | tr -dc 0-9 | head -c6 (récupération de 8 chiffres aléatoires)
    • cat /dev/urandom | tr -dc a-zA-Z | head -c5 (récupération de 8 lettres aléatoires)
    • et … vous aurez compris le principe, ça peut être utile dans des scripts ou pour générer des pass.
  • Affichage de la consommation memoire et swap
    • cat /proc/meminfo | egrep ‘^(Swap[TF]|Mem).*’
    • Utilisation d’une regex pour s’arrêter au Swap et à la mémoire …
  • Récupérer les fichiers .conf modifiés il y a moins de deux jours dans le dossier /etc
    • find /etc -maxdepth 3 -name *.conf -mtime -2

Autant les premiers on s’en fout un peu … autant le dernier peut être très utile 😉

gérer des sous-domaines à la volés via de l’url rewriting

Bijour à tous …

Ce soir … une astuce des plus inutile (et oui … je commence à les aligner).

J’explique quand même un peu l’idée :

Je travail sur un projet de site web un peu spécial (encore à l’état de concept pour le moment). Et l’idée du site était de fournir une url assez simple pour chaque membre du site (dans le genre www.site.fr/pseudo), pour afficher des informations sur le membre …

Voulant pousser l’application un peu plus loin, je me suis dit que transformer ce www.site.fr/pseudo en pseudo.site.fr ça ferait un peu mieux.

Voici donc l’astuce utilisée :

Tout d’abord, la page du membre ce récupère ainsi : www.site.fr/?i=membre&n=pseudo

Donc en Rewrite Url ça nous donne un truc dans ce genre pour avoir l’url en www.site.fr/pseudo

RewriteRule ^([A-Za-z_/0-9]+)$ ?i=membre&n=$1 [L]

Pour avoir une url en pseudo.site.fr, il faut recourir à cette astuce

RewriteCond %{HTTP_HOST} ^([a-zA-Z0-9-_]+)\.site.fr
#on interdit l’utilisation de cette technique pour le www
RewriteCond %{HTTP_HOST} !^www\.site.fr
RewriteRule (.*) /var/www/index.php?i=membre&n=%1 [L]

Donc voilà … si vous vous demandiez comment les gars qui ont fait le site labrute.fr pouvait avoir un sous-domaine par joueur … vous avez la réponse 😉

Bon sinon, avouez que c’est vraiment pas très utile …

Sinon, on pourrait très bien imaginer un système qui pourrait remplacer le mod_vhost_alias en faisant un truc du genre :

RewriteCond %{HTTP_HOST} ^([a-zA-Z0-9-_]+)\.site.fr [NC]
RewriteRule (.*) /var/www/%1/$1 [L]

Ce qui aurait pour effet de chercher les fichiers dans le dossier du sous domaine,(si on accède a moi.site.fr, le serveur chercherait les fichier situé dans /var/www/moi/…).

Bon j’arrête là …

Réduire la consommation de bande passante (Apache mod_deflate)

Rapide mémo sur la configuration du mod_deflate de apache qui permet de réduite pas mal la consommation de bande passante en compressant les données à la volée avec gzip avant de l’envoyer au client :

Tous d’abord, on charge le module dans la config :

Debian : a2enmod deflate

Ubuntu : sudo a2enmod deflate

Ensuite :

on ouvre le fichier apache2.conf ou httpd.conf, et l’on met l’une de ces lignes :

Si l’on veut seulement compresser les fichiers html, xml, et texte plein …

AddOutputFilterByType DEFLATE text/html text/plain text/xml

ou si l’on veut tous compresser par défaut

SetOutputFilter DEFLATE
SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ \
no-gzip dont-vary
SetEnvIfNoCase Request_URI \
\.(?:exe|t?gz|zip|bz2|sit|rar)$ \
no-gzip dont-vary
SetEnvIfNoCase Request_URI \.pdf$ no-gzip dont-vary

ou pour compresser suivant le navigateur :

BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html

Pour avoir des logs :

DeflateFilterNote Input input_info
DeflateFilterNote Output output_info
DeflateFilterNote Ratio ratio_info
LogFormat ‘ »%r » %{output_info}n/%{input_info}n (%{ratio_info}n%%)’ deflate
CustomLog /var/log/apache2/deflate_log deflate