Macsim's mind: $tail -f macsim

Aller au contenu | Aller au menu | Aller à la recherche

Debian

lundi, avril 27 2009

Accélérer le boot de debian et ubuntu

Dans le fichier /etc/init.d/rc au niveau de la ligne 32 on trouve l'option CONCURRENCY=none avec ce bloc:

Specify method used to enable concurrent init.d scripts.
Valid options are 'none', 'shell' and 'startpar'.  To enable the
concurrent boot option, the init.d script order must allow for
concurrency.  This is not the case with the default boot sequence in
Debian as of 2008-01-20.  Before enabling concurrency, one need to
check the sequence values of all boot scripts, and make sure only
scripts that can be started in parallel have the same sequence
number, and that a scripts dependencies have a earlier sequence
number. See the insserv package for a away to reorder the boot
automatically to allow this.

Ce qui donne grosso-modo:

Spécifier la méthode utilisée pour le mode concurrent des scripts init.d.
Les options valides sont 'none','shell' et 'startpar'.
Pour activer l'option concurrente au boot, les scripts init.d doivent être ordonnées
pour permettre la concurrence. Ce n'est plus le cas avec les séquences de boot par défaut
 dans Debian depuis le 20-01-2008.
Avant d'activer la concurrence, la valeurs des séquences de tous les scripts de boot doivent
êtres vérifiées et il faut s'assurer que seul les scripts qui peuvent être lancés en parallèle
ont le même numéro de séquence et que les dépendances des scripts ont un numéro de séquence inférieur.
Jetez un coup d'oeil au package insserv pour permettre un réordonnement automatique du boot.

L'option 'startpar' fait un lancement en parallel des scripts init.d avec une sortie sérialisée. 

L'option 'shell' semble si j'ai bien compris générer un cache de lecture “readahead".

Après avoir essayé l'option shell je tombe vraiment sur un résultat intéressant.

Le temps comprend le démarrage d'une debian sid depuis grub jusqu'à GDM dans une machine virtuelle virtualbox.

  • Avec l'option 'none' je mets 49,74 secondes
  • Avec l'option 'startpar' je mets 35,12 secondes.
  • Avec l'option 'shell' je mets 28,16 secondes.

Pour ma part voici comment j'ai reconfiguré le tout.

Pour optimiser le démarrage j'ai installé insserv que je ne connaissait pas du tout, j'ai lancer update-bootsystem-insserv pour optimiser les scripts init.d.

Ça marche plutôt pas mal.

Je n'ai pas testé sur ubuntu mais l'option est bien présente dans /etc/init.d/rc si vous avez des résultats concluant fates le moi savoir.

non
Article intéressant ?
oui
44%
56%
188 vote(s)

lundi, janvier 12 2009

Corriger Cannot set LC_CTYPE

Debian logo
Pour corriger ça :

#aptitude install locales

#dpkg-reconfigure locales

On choisis fr_FR.UTF-8
Jeu de paramètres régionaux actif par default : fr_FR.UTF-8

Et voilà.

non
Article intéressant ?
oui
54%
46%
201 vote(s)

vendredi, septembre 26 2008

SmsAlert 2 Compatible Ubuntu

Suite à mon précédent billet :

Sms Alert : Envoyer des sms gratuitement depuis vos serveurs

J'ai eu beaucoup de retours par e-mail et de commentaires au sujet d'un problème avec Ubuntu.

Les vacances passé, le travail repris je sors de ma moulitude et propose enfin une version qui fonctionne pour Ubuntu (merci beaucoup à Seza) et un petit bonus offert par un contributeur qui désire rester anonyme.

Pour ce qui est de l'installation et la configuration rien ne change il suffit de suivre scrupuleusement le premier billet.

Les modifications :

  • Le problème de temps (+1heure -1heures) est définitivement réglé.
  • Le fichier temporaire créé par MyCurl.php est supprimé après envoi.
  • SmsAlert fonctionne maintenant sur Ubuntu.
  • Suppression de sms_plan.php, pour planifier un message il suffit d'utiliser cron.

La nouvelle version est disponible ici

Bonus

J'ai donc reçu ce code source qui permet d'ajouter des messages en passant par une page web, je livre le code tel quel il est disponible ici.

Merci à lui. Amusez vous bien et n'abusez pas du système.

non
Article intéressant ?
oui
49%
51%
150 vote(s)

dimanche, juillet 13 2008

Additionner des disques avec mhddfs

Attention j'ai testé ce logiciel sur debian testing dans une machine virtuelle.

Mhddfs est un logiciel qui permet d'additionner plusieurs disques ensemble afin d'en faire un seul virtuel, on parle bien ici d'addition ce n'est donc pas du RAID0, Lorsque l'on copie un fichier en RAID0 la moitié du fichier est sur un disque et le reste sur un autre (Vision Basique). Avec mhddfs on copie un fichier il est mis complètement dans un des disques qui forme la parition virtuelle.

Pour tester tout ça j'ai donc fait une machine virtuelle avec une Debian testing, un disque dur de 4G (pour installer la debian) et deux disques durs de 1G pour faire les tests.

Pour l'installation on reste sur le classique:

#aptitude install mhddfs

Ensuite voici un df -h du système de fichier avant la fusion.

/dev/sdb1 est formaté en ext3

/dev/sdc1 est formaté en reiserfs

On additionne les deux disques "/mnt/disk1(sdb1)" et "/mnt/disk2(sdc1)"

avec la commande:

#mhddfs /mnt/disk1,/mnt/disk2 /mnt/ftp/

Et comme résultat on obtiend une belle partition de 2G.

La commande peut être tapée avec un -o et des options, les options disponibles sont:

  • allow_other (pour permettre aux autres utilisateurs d'accéder à la partition virtuelle)
  • logfile = /tmp/log.log
  • loglevel = N
  • N peut être 0 = Debug message, 1 = Messages d'info, 2 = Message standard.
  • mlimit-size = (défaut 4giga, mini = 100Mo)

Si on veut ajouter un automontage avec /etc/fstab pour mon exemple voici la ligne:

/mnt/disk1,/mnt/disk2 /mnt/ftp fuse defaults,allow_other 0 0

Pour ce qui est des limites, la taille maximal d'un fichier "copiable" dans la parition virtuelle est égale au plus grand espace disque libre sur un des disques durs.

Exemple:

Si on fusionne un disque de 400G avec 200G de libre est un disque de 200G avec 50G de libre.

La taille maximale du plus gros fichier "copiable" est de 200Giga et non pas 250 Go, même si l'espace disque restant est 250Go.

mhddfs est encore en développement donc à utiliser avec précautions.

non
Article intéressant ?
oui
75%
25%
219 vote(s)

vendredi, juillet 11 2008

SmsAlert : Envoyer des sms gratuitement depuis ses serveurs

EDIT: La version est maintenant compatible Ubuntu lire ce billet

Je me permet de faire passer ce billet sur le planetlibre car je pense qu'il pourra servir à certains d'entre nous et je n'étais pas inscrit à l'époque, l'original date du 15-02-2008.


Il y a quelques jours je me demandais comment être alerté gratuitement par sms depuis mes serveurs en cas de soucis ou panne. Alors après avoir épluché google et parcouru une dizaine de sites gratuits mais payant (cherchez l'erreur) après avoir demandé à mes connaissances et ne trouvant pas de solution j'ai fini par pondre la solution suivante, alors oui ce n'est pas parfait, oui ce n'est pas 100% libres, oui c'est du bidouillage, mais bon ça fait ce que je veux, comme je le veux.


Alors pour cette recette j'ai besoin :


Premièrement je vais créer un compte sur google calendar.



Une fois le compte créé je vais surGoogle Calendar je clique sur la flèche à côté de mon agenda:


et je choisis notification.

Une fois sur la fenêtre des options de notification je clique sur : "Configurez votre mobile pour recevoir des notifications".



Dans la fenêtre de paramètre je saisis mon numéro de mobile, je clique sur "Envoyer le code de vérification".



Je reçois un texto du genre:

Votre code de vérification de Google Agenda est XXXXXX


Je saisi le code et "Terminer la configuration."

Maintenant dans la fenêtre de notification je choisis d'envoyer par défaut un rappel via SMS.



Voilà tout est bon, passons maintenant à smsalert.
J'ai créé deux fichiers d'envoi de sms (sms.php et sms_plan.php) qui utilisent les deux excellentes classes de Mr Alexander Skakunov.

cd ~
wget http://macsim.labolinux.net/upload/smsalert2.tar.gz
tar zxvf smsalert.tar.gz
cd smsalert


Quelques explications:

Dans le dossier il y a deux classes GoogleCalendarWrapper et MyCurl, j'ai légèrement retouché ces deux classes.
J'ai ajouté l'ajout de notification dans les nouveaux évènement et j'ai changé le chemin des logs curl.
Le principal soucis c'est que google calendar ne permet pas de notification inférieure à 5 minutes ce qui est normal pour utilisation classique de google calendar. J'ai donc rusé, sms.php ajoute l'évènement 5 minutes et 30 secondes après l'instant T.

Configuration:

Maintenant j'édite sms.php et sms_plan.php pour modifier la ligne:

$gc = new GoogleCalendarWrapper("VOTRE_MAIL", "VOTRE_PASS");

avec mon compte google.

Voila la configuration est terminée.
Il n'y a plus qu'à utiliser.


Utilisation de sms.php

Sms.php permet d'envoyer un sms en ajoutant l'évènement 5 minutes et 30 secondes après l'instant T.
Ce qui réalise un envoi presque immédiat.

Syntaxe:

$php sms.php "TITRE" "MESSAGE"

Exemple:

$php sms.php "Serveur Mail" "Reboot"


et dans les 30secondes qui suivent on reçoit le sms.
J'utilise sms.php pour mes scripts avec cron.

Utilisation de sms_plan.php

Sms_plan.php lui ajoute un évènement à une heure précise pour planifier quelque chose.
Syntaxe:

(L'heure doit être de la forme HH:MM).


$php sms_plan.php "TITRE" "MESSAGE" HEURE


Exemple:

$php sms_plan.php "Serveur Mail" "Reboot dans 1h" 16:00.


Voilà le système est près.
Alors, quels sont les avantages de cette méthode, premièrement elle permet d'être informé rapidement d'un incident sur un serveur par sms, deuxièmement l'agenda google gardera une trace de ces évènements et pour finir c'est gratuit ;).
Si vous connaissez un meilleur moyen de réaliser ça je suis preneur.
Si vous voulez ajouter les évènements sur un autre agenda que celui par défaut, l'explication est dans les fichiers sms.php et sms_plan.php.

non
Article intéressant ?
oui
38%
62%
152 vote(s)

mardi, juin 17 2008

Xen et le message 4gb seg fixup, process

EDIT: Comme le rappel Bruno dans les commentaires il suffit maintenant d'installer libc6-xen sur le domU et le redémarrer.

En me connectant à un domU depuis mon dom0 j'ai vu apparaitre une multitude message avec 4gb seg fixup, process ...
Pour résoudre ce problème il faut taper ça depuis le dom0:

#echo "hwcap 0 nosegneg" > /etc/ld.so.conf.d/nosegneg.conf

puis un petit ldconfig pour appliquer tout ça.

non
Article intéressant ?
oui
55%
45%
99 vote(s)

jeudi, mars 13 2008

Installation d'une clé wifi USB SAGEM sur une Debian

Méthode pour installer la clé SAGEM XG-760A sous Debian.

Lire la suite

non
Article intéressant ?
oui
58%
42%
119 vote(s)

mercredi, mars 12 2008

Grub et résolution du tty

Bon j'en ai marre de devoir chercher après à chaque fois alors:

Pour du 1024x768 16M de couleur  : 792.

Pour du 1280x1024 16M de couleur : 795.


Pour ceux qui lise ça et ne comprennent pas de quoi je parle, on peut configurer la résolution de ses TTY (quand on fait ctrl+alt+F1 par exemple) pour régler ça sous grub on édite le fichier /boot/grub/menu.lst et on cherche la ligne (81 normalement) :

# defoptions=

Et on la change en :

#defoptions=vga=792

ensuite un petit coup de

update-grub

et on redemarre.

non
Article intéressant ?
oui
52%
48%
105 vote(s)

mercredi, septembre 5 2007

DatabaseError: file is encrypted or is not a database avec trac

Aujourd'hui j'ai rencontré cette charmante erreur avec trac j'ai rien trouvé en français pour résoudre le problème alors si ça peut aider les anglophobes.

Traceback (most recent call last):
File "/usr/share/trac/cgi-bin/trac.cgi", line 20, in ?
cgi_frontend.run()
File "/var/lib/python-support/python2.4/trac/web/cgi_frontend.py", line 68, in run
gateway.run(dispatch_request)
File "/var/lib/python-support/python2.4/trac/web/wsgi.py", line 87, in run
response = application(self.environ, self._start_response)
File "/var/lib/python-support/python2.4/trac/web/main.py", line 377, in dispatch_request
env = _open_environment(env_path, run_once=run_once)
File "/var/lib/python-support/python2.4/trac/web/main.py", line 51, in _open_environment
return open_environment(env_path)
File "/var/lib/python-support/python2.4/trac/env.py", line 435, in open_environment
if env.needs_upgrade():
File "/var/lib/python-support/python2.4/trac/env.py", line 315, in needs_upgrade
if participant.environment_needs_upgrade(db):
File "/var/lib/python-support/python2.4/trac/env.py", line 369, in environment_needs_upgrade
dbver = self.env.get_version(db)
File "/var/lib/python-support/python2.4/trac/env.py", line 236, in get_version
cursor.execute("SELECT value FROM system WHERE name='database_version'")
File "/var/lib/python-support/python2.4/trac/db/util.py", line 51, in execute
return self.cursor.execute(sql)
File "/var/lib/python-support/python2.4/trac/db/sqlite_backend.py", line 56, in execute
args or [])
File "/var/lib/python-support/python2.4/trac/db/sqlite_backend.py", line 48, in _rollback_on_error
return function(self, *args, **kwargs)
DatabaseError: file is encrypted or is not a database

Pour résoudre le problème:

#aptitude install sqlite
#find CHEMIN_VERS_LES_INSTANCES_TRACS -iname "trac.db" | xargs -i bash -c "mv {} {}.2; sqlite {}.2 .dump | sqlite3 {};"
#chown www-data\: CHEMIN_VERS_LES_INSTANCES_TRACS/. -R

Et ça devrait rouler.

non
Article intéressant ?
oui
48%
52%
109 vote(s)

mardi, novembre 14 2006

Dunk-Tank, les bonnes questions, posées intelligemment


Le blog de Sukria, m'informe de ce mail, qui décrit de façon intelligente toute la problématique de Dunk-Tank.

non
Article intéressant ?
oui
48%
52%
91 vote(s)

dimanche, novembre 5 2006

Utiliser le système de suivit de bug (BTS) de debian.

J'ai réalisé la traduction d'un post sur http://www.debian-administration.org de jamesw.
Cet article est intitulé Using the Debian bug-tracking system.
Il représente une introduction à l'utilisation du système de suivit de bug de debian.


Au sommaire:
  1. Regarder un bug.
  2. Etat (States), Sévérité (Severities) et Etiquette (Tags).
  3. Reporter un bug.
  4. Ajouter à un bug.
  5. Manipuler les bugs.
  6. Fermer et réouvrir des bugs.
  7. Autres astuces.
Merci de me faire parvenir les coquilles.

Lire la suite

non
Article intéressant ?
oui
55%
45%
85 vote(s)

samedi, septembre 30 2006

[Archive] Debian

Archive de la section Debian de l'ancien blog.
Contenu:
  1. - Guide d'installation de la Debian Sarge en Français.
  2. - Enlightment 17 sous debian.
  3. - Prelink pour optimiser vos programmes.
  4. - Virer des vieux fichiers de configuration.
  5. - Erreur [ Waiting 2 sec for /sys/block/hda/dev ].

Lire la suite

non
Article intéressant ?
oui
57%
43%
103 vote(s)