mardi 6 mars 2012

Trois messages d'erreur parmi les plus confus sous Unix / Linux


Je conserve une collection de messages d'erreurs inattendus, en voici un florilège:

Le dossier qui n'était pas un dossier

# Création d'un répertoire de test
mkdir /tmp/my_dir
# On crée un lien symbolique vers ce répertoire
ln -s /tmp/my_dir /tmp/my_link# On efface le lien symbolique ( completion du nom en tapant deux fois Tab pour faire apparaître le slash / à la fin )
rm /tmp/my_link/
rm: impossible de supprimer « /tmp/my_link/ »: est un dossier
rmdir /tmp/my_link/
rmdir: échec de suppression de « /tmp/my_link/ »: N'est pas un dossier
# Faudrait savoir ...
#La solution 
rm /tmp/my_link 

Est-ce un bug des coreutils ( dont fait partie rm) sous Linux ?  Sous NetBSD la commande rm /tmp/my_link/ efface bien le lien symbolique.

Mount prétend que le disque dur n'existe pas

Depuis le CD d'install GNU/kFreeBSD, en exécutant un shell de secours.
#On monte la partition racine depuis le live CD
mount /dev/da4s1 /mnt
mount: mounting /dev/da4s1 on /mnt/failed: No such file or directory

Alors que /dev/da4s1 et /mnt existent bien ! La solution (discutée ici):
mount -t ufs /dev/da4s1 /mnt

Mount prétend que root n'est pas root

Depuis le CD d'install GNU/kFreeBSD, en exécutant un shell de secours.
#On monte la partition racine depuis le live CD
mount -t ufs /dev/da4s1 /mnt
mount:permission denied (are you root?)

La solution: rien à voir ici avec un problème de droits, /dev/da4s1 n'a pas été démontée proprement. Il faut tout d'abord effectuer
fsck.ufs /dev/da4s1
avant de monter la partition.

mardi 3 janvier 2012

La complexité de Drupal: pourquoi tant de termes et de concept à maîtriser ?

Une bonne indication de la complexité d'un corpus de savoir ( logiciel à manipuler, contenu de livre à assimiler, partition de musique à interpréter ) est donné par la taille du lexique spécifique à celui ci.

Pour développer pour Debian il faudra connaitre upstream/downstream, unstable / testing / stable / oldstable, bikeshedding, sponsor, debian maintainer, debian developer, non-maintainer upload , FTBFS, override file, autobuild. A part bikeshedding et upstream, tous ces termes sont spécifiques à Debian.
Pour lire un livre ou un texte de Bourdieu, il sera bon de connaître habitus, champ, violence symbolique, déshistoricisation.
Pour créer un site avec le framework Drupal, il vous faudra connaitre la signification des termes suivant:
core module / contributed module, permission, roles, node, authenticated user, taxonomy, region, block, primary and secondary links.

Un lexique important demande bien sûr un temps d'apprentissage conséquent. Mais en même il reflète la qualité organisationnelle  de l'auteur du corpus. Nommer un objet, et plus encore créer un terme spécifique, c'est dissiper l’ambiguïté d'un terme trop générique. C'est aussi créer du "neuf", tellement neuf qu'une délimitation lexicologique s'impose avec "l'ancien". Ainsi le "node" de drupal, décrit une page html avec son contenu, unité de base d'un site drupal.
Utiliser "node" plutôt que page, permet de regrouper dans une meta catégorie tous les types de pages qu'un site drupal peut contenir ( article, post de blog, entrée de wiki, page d'accueil ) et permet à la communauté Drupal d'échanger en interne en connaissance de cause.

vendredi 2 décembre 2011

Faire un paquet Debian c'est facile

Après plusieurs heures consacrées à lire la documentation de git, de dpkg-source, de pbuilderrc, de debi, de lintian, et la Debian Policy pour finalement boucler mon paquet des émulateurs Mame et Mess 0.144, j'ai ressenti le besoin de résumer cette expérience.

L'inspiration est venue en lisant http://upsilon.cc/~zack/blog/posts/2007/09/svn-cowbuilder/ via la page du Wiki Debian sur cowbuilder.

samedi 17 septembre 2011

Grub2 et FreeBSD/NetBSD

Même si ma propre expérience avec Grub2 a plutôt été décevante, j'ai pris le temps de documenter dans un mail à grub-devel, et dans le wiki Ubuntu la procédure nécessaire pour charger un noyau FreeBSD ou NetBSD depuis GRUB2.

Le support NetBSD permet de faire des choses bien pratiques, comme installer un système NetBSD directement depuis GRUB2, en chargeant le kernel-INSTALL depuis une partition Linux.  C'est la procédure que j'ai suivie pour installer NetBSD sur un serveur KVM hosted, où les options d'installation ne proposaient pas ce dernier.

jeudi 1 septembre 2011

Serveur privé VPS chez Hetzner.de: pour l'instant que du bon

Même si j'étais enchanté des tarifs et du service chez prgmr, la latence entre l'Europe et la Californie faisait que le travail était ennuyeux sur ce serveur.
Je viens donc d'obtenir une nouvelle machine VPS chez l'hébergeur allemand Hetzner dont je suis pour l'instant particulièrement content.

Les points faibles:
  * Comme toute offre VPS, il faut se méfier de la tolérance de l'hébergeur vis a vis des contenus. Hetzner a par exemple dans un premier temps refusé l'hébergement de mirroirs wikileaks, avant de finalement seulement les "déconseiller" à ses clients ( en allemand) Il est bien entendu difficile d'héberger un noeud de sortie Tor, mais je pense que c'est la politique standard de beaucoup d'hébergeurs.
 * Une partie de la documentation est seulement en allemand ou en russe, comme par exemple cet article qui montre via traceroute dans quel data center votre machine se trouve
 * Pas encore d'IPv6 pour les VPS.

Point forts:
  * Excellent prix: un vps avec 1 Gb de RAM et 40 GB de disque dur revient à 13 euros par mois !
  * Excellente performance de la machine: le CPU annoncé de 2.8 Ghz donne les mêmes résultats avec sysbench que ma machine de bureau elle aussi avec ce CPU ( Intel Core)
  * Excellente latence vers l'Europe. Le ping est à 27 ms vers l'Autriche.
  * Système de secours pour la machine virtuelle. En cas de problème on peut booter sur une machine virtuelle alternative tournant sur un Ramdisk et chrooter son système pour le réparer. Ceci m'avait bien manqué sur gandi qui ne proposait qu'un accès à une console série.
  * Grand choix d'OS virtualisés. FreeBSD est supporté, y compris via le système de secours.
  * Bonne documentation, servie par un Dokuwiki. La technologie utilisée est kvm.
  * Hetzner dispose de son propre mirroir Debian

Je dispose donc maintenant d'un serveur virtuel Debian chez Hetzner, reste à mettre en place un système de backup, je pense que cette doc rsync de iMil fera parfaitement l'affaire.

A moyen terme, étant  donnée la baisse continue des tarifs dans ce domaine, on ne peut  que recommander à chacun d'avoir son propre serveur virtuel avec son nom de domaine. On conserve alors la propriété de son contenu de A à Z, contrairement aux plateformes propriétaires d'hébergement.

jeudi 11 août 2011

Ports BSD/Gentoo Portage pour Debian et Ubuntu, c'est possible !

Sur serveur, comme sur workstation, c'est pratique de pouvoir installer à partir des sources un paquet différent, ou d'une autre version, voire non inclus dans Debian/Ubuntu.

Pour cela nous disposons de l'excellent pkgsrc, une architecture de compilation qui vous permet d'un coup de

cd net/openvpn
bmake install

de télécharger et compiler récursivement toutes les dépendances de notre vpn préféré, et d'en créer un binaire facilement installable/déinstallable. Et ceci realisé entièrement dans une arborescence locale, sans aucun risque de casser votre système, tout se passant dans une arborescence séparé.

Je trouve ca beaucoup plus propre, beaucoup plus sûr que d'installer des paquets testing/unstable ou des Personal Package Archives, et beaucoup plus simple que de passer par la case /usr/local en téléchargeant soit même les sources pour ensuite deviner les librairies de développement requises.

Et attendez ce n'est pas fini. Bien que pkgsrc comporte moins de logiciels que Debian ( 6000 vs 29000 ) il est multi plateforme tournant sur Linux, OS X, Solaris et bien sûr NetBSD la plateforme où il a été concu.

A vrai dire je m'étonne souvent que si peu de personnes sous Linux connaissent pkgsrc, qui permet de mixer la stabilité des distributions binaires Debian/Redhat/Centos et le "bleeding edge" des distributions sources. Alors bon le site de NetBSD est certainement pas très choupi mais il existe une vrai documentation de qualité à la BSD.

Comme je dois installer pkgsrc souvent  $HOME et $JOB, j'ai crée un petit projet  pour automatiser tout ca du nom de Sergio , le but à long terme étant de simplement àvoir à faire un :

apt-get install sergio
sergio "mon_bootstrap_dir"
cd "mon_boostrap_dir"/pkgsrc/net/openvpn & bmake #omg watching stuff scroll by for hours will makes me a Unix expert overnight

Après nous avons déja un Noyau BSD pour Debian, il nous manquait un système de port dans Debian pour le noyau Linux !
Bootstrap with sergio



mercredi 3 août 2011

Tirer profit des options d'accessibilité du bureau gnome quand on utilise son portable en extérieur

Quand arrive l'été survient désir de pouvoir emmener son portable ou netbook avec soi, et consulter ses mails, surfer sur le web en extérieur. Malheureusement la luminosité du jour diminue considérablement la lisibilité de l'écran. Une astuce pour y remédier: augmenter le contraste du bureau.
If suffit d'aller dans les préférences de Gnome, options d'accessibilité,  ( sur la barre de statut en haut à droite pour gnome 3 ) et sélectionner: "contraste élevé".








Peut être moins beau mais beaucoup plus lisible !