t
Installer Openbsd sur une Dédibox

Après avoir bien galéré pour installer OpenBSD 4.9 sur une dédibox (SC dans mon cas), je vous mets à disposition les étapes nécessaires pour l'installation :
Alors, tout d'abord, vous devez déjà avoir OpenBSD d'installé, soit sur un de vos pc/serv ou sur une VM genre virtualbox (Il faut à peu près une minute pour installer open sur VirtualBox). Certes cela peut paraître incongru d'avoir besoin d'un open pour installer un autre openBSD mais, cela s'explique par le fait que sur les dédi, il n'y a pas de PXE ou autres utilitaires permettant de gérer le boot du serveur. Ainsi il ne suffit pas d'y mettre un bsd.rd et et de booter car vous ne pourriez pas accéder aux étapes d'install. Pour remédier à cela, un petit utilitaire nommé Yaifo permet d'établir une liaison ssh avant l'install permettant justement de pouvoir la suivre à distance. Alors, vous comprenez que la première étape est de récupérer ce fameux yaifo. Pour cela, il faut les sources d'OpenBSD servant à la compilation de yaifo :
#ftp ftp://ftp.fr.openbsd.org/pub/OpenBSD/4.9/src.tar.gz ftp://ftp.fr.openbsd.org/pub/OpenBSD/49/sys.tar.gz
Ensuite les extraire avec tar :
# tar -xzvf src.tar.gz -C /usr/src
# tar -xzvf sys.tar.gz -C /usr/src
Puis on récupère les sources de yaifo via CVS pour récupérer la dernière version :
# cvs -d :pserver:anoncvs@yaifo.cvs.sourceforge.net:/cvsroot/yaifo co -P yaifo
Allez dans votre répertoire de yaifo (cd yaifo/) :
Ajoutez-y les clés ssh nécessaires avec :
# cp /etc/ssh/ssh_host_*_key* .
Puis ajoutez-y votre clé publique (celle-ci se situe dans votre .ssh/ :
l'utilisation d'une clé RSA est conseillée, si vous utilisez une VM ou que vous n'avez pas de clé publique, vous pouvez en générer avec "ssh-keygen -t rsa" )
# cat ~/.ssh/id_rsa.pub > authorized_keys
Il ne reste plus qu'à modifier votre fichier config avec les informations de votre dédibox (notamment l'IP, les DNS, le masque réseau)
La compilation peut alors s'effectuer tranquillement :
# make obj
puis
# make
(N'oubliez pas de faire un cleanall si vous faites différentes compil de yaifo)
Bon maintenant, uploadez votre yaifo.fs sur une machine accessible avec ftp/wget/ssh (je n'ai pas testé le transfert direct depuis la VM).
Démarrez votre dédi en mode rescue avec un OS Linux (bon là y'a vraiment pas le choix... enfin bon merci online de ne proposer que du buntu).
Loggez vous alors en root avec le mot de passe envoyé par online. (# sudo su) Récupérez alors votre yaifo.fs soit avec wget, ftp ou scp.
Une fois le fichier présent dans votre répertoire, il faut l'installer en début de votre disque dur, cela se fait avec dd (salut dédé :D) :
# dd if=yaifo.fs of=/dev/sda bs=1M
Ensuite, repassez votre serveur en mode normal, connectez-vous en ssh (évidemment depuis la machine possédant la clé publique que vous avez spécifié lors de la création de l'image de yaifo) ; vous avez alors accès au système d'install de BSD.
Le tuto pourrait s'arrêter là, cependant vous avez besoin d'une partition de rescue sur votre BSD, en effet si jamais vous foirez une upgrade ou si une erreur s'immisce dans votre Open, hormis la réinstall d'un yaifo et éventuellement profiter de l'accès au shell, vous ne pouvez réparer le système. Or l'idéal est donc d'avoir un BSD de secours, pour pouvoir y chrooter votre vrai système et ainsi réparer vos conneries (genre un port ssh bloqué dans un pf.conf :sifflote:).
Vous aurez donc besoin de deux instances d'OpenBSD sur votre serveur.
L'installation d'Open étant très intuitive et pensant que si vous choisissez ce système pour votre serveur c'est que vous le connaissez un minimum, je ne détaille pas toutes les étapes.
Lorsqu'il vous demande :
"Do you want to zero out the first bytes of the disk" répondez lui yes dans un premier temps, en effet on ne refuse pas une invit pareil :D Enfin, cela est nécessaire dans le cas comme il l'indique où vous n'avez pas encore de partoch' openBSD sur votre serv.
Dans fdisk, créez donc deux partitions distinctes, une pour votre rescue (entre 500Mo et 7Go) avec comme fs 10 et le reste pour votre véritable système avec comme FS celui de Open, soit le A6. Marquez la partition de ce dernier comme active (avec f 1 : dans le cas où 1 = votre système de prod).
Ensuite à vous de gérer vos labels comme il vous semble, perso je me contente de la conf par defaut que je trouve très pertinente (à la limite peut-être une petite augmentation du /var si vos sites en ont besoin). Par contre, étape TRÈS IMPORTANTE, affichez la table avec les offsets et tailles en blocks soit avec p, sauvegardez cette table dans un fichier, elle sera utile par la suite). Il ne reste plus qu'à télécharger les sets, indiquer votre "time zone" et garder ou non vos clefs ssh.
A cette étape même si l'envie de démarrer votre Open vous torturs l'esprit, résistez et démarrez une deuxième install avec la commande install (compliqué, non ?) :D
Bon cette fois quand il vous demande :
"Do you want to zero out the first bytes of the disk" Envoyez le chier, il s'en
remettra :) (soit no)
Dans fdisk, il faut mettre la partoch de rescue en active. Passer celle-ci en A6 et celle de prod en 10.
Lancer l'install, prenez le layout par def, lancez l'install des sets, rebootez.
Votre dédi démarre alors sur votre système de rescue, grand moment de joie pour tous mais vous allez vite déchanter. En effet, j'ai eu assez de mal à monter mon système de prod sur le rescue à cause d'un petit connard portant le nom démoniaque de disklabel. En effet sous open, pour déclarer, dans l'espoir de monter vos labels open, vous devez passer par cet utilitaire, il devrait afficher un truc comme ceci :
# size offset fstype [fsize bsize cpg]
a: 500M 63 4.2BSD 2048 16384 1 # /
b: 20M 1611123 swap
c: 8192.0M 0 unused
i: 120000M 2000063 unknown
Or il faut faire concorder vos partochs du vrai Open sur celles que vous allez créer, ainsi tel un magicien sortant un lapin de son chapeau, vous allez sortir votre fameuse table des labels que vous avez bien entendu, suite à mes conseils gardé très précieusement. Le réflexe naturel dans cette config' serait de supprimer i et de créer le premier label / à l'offset 2000063 (cf tables du système de prod) sauf que disklabel risque de vous envoyez chier. En effet si celui-ci est de mauvaise humeur il refusera de créer votre label en indiquant que celui-ci doit avoir une taille STRICTEMENT inférieur à 2000063 ainsi à un offset prêt, vous ne pouvez pas créer votre label, ainsi vous l'avez bien dans le cul. C'est alors là, d'une idée transcende votre esprit et dit "Tu as une partition i commençant à l'offset que tu veux alors modifie juste cette partition", alors après avoir remercié et alloué milles prières à ce petit diablotin de Méphisto, modifiez votre label avec m donc, ne changez pas l'offset mais indiquer la taille de votre / ensuite essayez de changer votre système de fichier en 4.2BSD (par default il est en unknown) ; bon perso je n'ai pas réussi, enfin bon en plus d'être assez con disklabel est borné mais bon malgré son obstination, cela ne change pas la suite des évènements.
Il ne vous reste plus qu'à ajouter les autres labels, normalement il ne devrait plus vous faire chier avec ces histoires d'offset.
Maintenant vous pouvez monter vos labels, mount /dev/wd0d /mnt pour monter votre /, enfin vous connaissez certainement la chanson. Votre OpenBSD est maintenant accessible avec votre propre système de rescue.
Dernières étapes : Démarrez votre OpenBSD
Repassez votre serveur en rescue, passez en root, changez l'id de vos partochs :
ainsi passez votre rescue en 10, supprimez le flag de boot :
# fdisk /dev/sda
# t (1 puis 10)
# a 1
Répétez la même opération pour votre deuxième partoch, remplacez juste l'id 10
par A6. Rebootez, vous avez alors accès à votre futur compagnon.
Biblio :
http://wiki.openbsd-france.org/documentations/install/installer_openbsd_via_yaifo
http://www.narf.ssji.net/~shtrom/wiki/projets/distantsun
Voici un petit howto pour mettre en place mpd et mpc. MPD (Media Player Daemon) peut ètre considéré comme un serveur de musique tournant en deamon sur votre pc. MPD peut géré plusieurs sorties audio, plusieurs drivers (alsa,oss) et il peut géré aussi une sortie en HTTP (ou en utilisant icecast). Cependant, mpd ne faisant office que de serveur il faut un client pour pouvoir l'utiliser pleinement ; dans cette article je vous présente MPC, mais sachez qu'il en existe énormément et pour toutes les plateformes. Ces client permettent de lister votre musique, de la mettre en lecture, en pause, d'obtenir pour certain les paroles, de gérer les playlists etc...
Alors voila les différentes étapes de l'install :
Tout d'abord pour debian :
# aptitude install mpd mpc
ou pkg_add pour open etc..
Ensuite il faut modifier la conf de mpd :
# vim /etc/mpd.conf
A cette ligne, remplacer le chemin du répertoire par celui de votre dossier musique :
music_directory "/var/lib/mpd/music"
Puis dé-commenter si ce n'est pas fait la ligne suivant :
bind_to_address "localhost"
Ensuite choisissez le drivers de votre sortie audio, pour cela il suffit de décommenter les lignes correspondantes ainsi pour alsa j'obtiens :
audio_output {
type "alsa"
name "My ALSA Device"
device "hw:0,0"
format "44100:16:2"
mixer_device "default"
mixer_control "PCM"
mixer_index "0"
}
Une fois tout cela configuré, il faut s'assurer que MPD ne soit pas démarrer :
# /etc/init.d/mpd stop
Puis mettre a jour la configuration avec la création de la base de donnée :
# /etc/init.d/mpd start-create-db
MPD est maintenant opérationnel, pour profiter de votre musique, il suffit de lancer mpc mais auparavant un listage de la musique puis ajout dans la liste de lecture de MPC s'impose :
# mpc update
Puis pour tout ajouter a la playlist :
# mpc ls| mpc add
IL ne reste plus qu'à faire un :
# mpc play
\o/
Un autre client, dérivé de mpc est aussi disponible, c'est ncmpc. Il vous permet d'avoir une petite interface graphique avec ncurse et s'intègre très bien dans un terminal :)

Après avoir testé de nombreux gestionnaires de fenêtres (ou Windows Manager abrégé WM), voilà quelques mois que j'ai trouvé une petite perle ou du moins le WM me convenant. C'est un tiling ou dans la langue de Molière un pavage et il s'appelle scrotwm. Tout d'abord, un tiling, c'est quoi ? C'est une sorte de rassemblement de fenêtre sous former de "paver" voire de carrelages (si l'on veut jouer sur le style littéraire).
En effet avec un tiling, plus de bureau dans le sens windowsiens du terme, plus d'icônes et de fenêtre se baladant n'importe où, seulement les programmes s'installant de manière homogène sur l'écran. Ainsi votre écran peut-être divisé en une, deux, trois... six parties voire plus (a condition d'avoir un grand écran). En effet, une zone dite principal est présente ainsi qu'une deuxième zone nommé le stack regroupant toutes les autres fenêtres.
De plus avec un tiling, le rôle de la souris est minimisé au maximum ainsi contrairement à des gnomes ou autres WM, le clavier à une place extrêmement importante. La souris ne sert plus qu'à se déplacer entre les différentes applications, soit changé le focus ou jouer sur le déroulement de pages web. Le clavier possède tous les autres rôles, celui de lancer une application (avec directement un raccourci clavier prédéfini ou avec dmenu + nom de l'appli) ou de redimensionner les fenêtres avec aussi un raccourci clavier (soit W + H/W+l, pour la hauteur ou largeur : cela dépend du stack choisi).
En effet, deux stack sont disponibles, l'un où les fenêtres secondaires sont empilées verticalement l'autre où ces mêmes fenêtres sont empilées horizontalement. Voici le résultat sur un dual screen avec les deux stacks (à gauche le verticale, a droite l'horizontale) :

Pour accompagner cela, plusieurs bureaux virtuels sont présents, sans cela on serait vite a court de place, particulièrement pour les petits écrans, vu que toutes les fenêtres sont affichées en même temps.
Sa forcé réside aussi dans sa légèreté, en effet ce tiling WM ne fait que quelques Ko, amusez-vous a regardé le code source c'est assez impressionnant. De plus, il est très configurable, ainsi il est facile d'associer des raccourcis pour mpd/mpc.
De plus certains programmes peuvent être définis comme apparaissant en float, càd au-dessus de toutes les fenêtres à une position précise sur l'écran : idéal pour mplayer ou des jeux.
De plus je conseille l'utilisation de dmenu, petit programme annexe s'intégrant très bien dans scrotwm qui permet de faire office de lanceur d'applications, ainsi pour ma config, un seul W+P pour voir la liste de toutes les applications installé suffit et ainsi séléctionner celle qui est désirée :

Voici ma petite conf, certes peu de changements à celle par défaut qui est assez complète :p
http://florens.fr/bordel/scrotwm.conf
Ainsi scrotwm est un tiling simple et très accessible. Pour plus de renseignement voilà le manuel :
http://www.peereboom.us/scrotwm/html/man.html

Aujourd’hui, je vous présentes, une petite astuce qui permet de résoudre pas mal de problèmes de freezes avec ces maudites 5770. Personnellement, j'ai une sapphire 1Go avec laquel déja sous windows j'avais quelques soucis. Ils avaient lieux, en général, 5 minutes après l'allumage du pc, lorsque je lançais un jeux. En fouinant un peu sur google, j'ai vu que cette carte, avait une fonction d'économie d'énergie qui faisait descendre sa fréquence d'une manière assez conséquente. Et qu'en l'occurrence, il suffit de régler manuellement ces fréquences pour qu'elles restent stables. Bon sous windows, il y avait un petit fichier a modifier dans le dossier de l'user dont j'ai zappé l'arborescence, enfin bref ayant eu le même problèmes de freeze avec ma debian et ayant eu un peu de mal à trouver une solution, je vous propose les manips qui ont résolu tout mes problèmes (manips a effectué en root) :
Pour activer la possibilité de modifications de la fréquence :
$ aticonfig --od-enable
Pour connaitre la fréquence à laquel tourne votre GC :
$ aticonfig --adapter=0 --od-getclocks (si le vitesse du GPU est infèrieur à 200MHz et que vous avez des freezes, ils viennent peut-être de là).
Pour changer la fréquence:
$ aticonfig --od-setclocks=850,1300 (850 correspond a la vitesse en MHz du GPU, et le 1300 la vitesse aussi en MHz de la mémoire de la CG, bien entendu, vous pouvez mettre les fréquences que vous souhaitez, il suffit juste qu'elles tournent autour de 800 pour le GPU et de 1200 pour la mémoire, soit la vitesse de croisière pour les 5770).
Pour faire un check de la température et pour vérifié que l'overclock ne risque pas de cramer votre GC :
$ aticonfig --od-gettemperature
Et pour valider les changements:
$ aticonfig --od-commitclocks
Et voilà, personnellement je n'ai plus aucun freeze, après avoir réalisé ces opérations (/me croise les doigts). En tout cas, si jamais vous voulez approfondir le truc, vous pouvez lire le man de aticonfig.
Page :