BSD

Tous les articles relatifs aux systèmes d'exploitation de la famille BSD.

Fil des billets

samedi 15 septembre 2012

OpenBSD sur un iBook G4

OpenBSD logo

Ce billet est un bref récapitulatif pour installer OpenBSD sur une machine disposant d'un processeur PowerPC.

Lire la suite...

vendredi 22 juin 2012

Installation pas à pas, du système d'exploitation NetBSD

Logo du système d'exploitation, NetBSD

Ce billet est consacré à la procédure d'installation de NetBSD.

Lire la suite...

Dimanche 17 juin 2012

Installer FreeBSD, avec mfsBSD [part. 2]

logo FreeBSD

Ce billet est la suite du précédent.

Cette fois-ci, nous allons utilisé une table de partitionnement de type GPT.

Lire la suite...

Installer FreeBSD, avec mfsBSD

logo FreeBSD

Dans ce billet, nous allons voir comment installer FreeBSD avec le live CD mfsBSD.

J'ai choisit la version 8.3.

Lire la suite...

mardi 22 mai 2012

Migration vers FreeBSD 9 enfin terminée

logo FreeBSD

Ce week-end, j'ai décidé de migrer sous la branche releng/9.0 [1] mon laptop. Il fonctionnait auparavant sur la branche releng/8.2 [2].

Il faut dire, que ça me titiller depuis un moment, car je n'étais pas satisfait du partitionnement actuel (absence de répertoire /tmp en RAM), locales toutes en latin9 (je migre de plus en plus vers l'UTF-8). J'en ai profité pour repartir complètement de zéro.

Le partitionnement a bien changé depuis ma dernière installation (à partir d'un CD), qui remonte à la version 6.0. Résultat, au redémarrage l'ordinateur est dans les choux. Je reboote avec le disque d'installation, et recommence l'installation, là l'installateur me sort une erreur, m'indiquant que la partition /dev/ada0p2 est introuvable !!! C'est ma partition racine.

Le lendemain, je recommence, avec cette fois-ci la dernière version de la branche RELENG_7 (7.4). Aucun soucis, car il s'agit de l'ancien installeur (sysinstall). Je migre ensuite vers releng/8.3, je redémarre, l'ordinateur est « planté », j'ai un prompt pour m'aider à booter sur la bonne partition. C'est encore une fois un nouvel échec.

Aujourd'hui, j'ai décidé de prendre le taureau par les cornes, et de tenter une nouvelle installation, et apprivoiser bsdinstall, le nouvel assistant du CD d'installation.

Après avoir sélectionné la bonne disposition du clavier, je suis ensuite passé par le shell, afin de voir l'état du disque dur, avec la commande gpart show (j'ai qu'un seul disque, donc ce n'est pas nécessaire de le mentionner).

En voulant supprimer les précédentes partitions, j'ai obtenu le message d'erreur suivant :

# gpart delete -i 4 ada0
gpart: table 'ada0' is corrupt: Operation not permitted

Après quelques recherches, il faut exécuter le mode recover.

# gpart recover ada0
ada0 recovered

Maintenant la suppression des partitions ne pose plus de problème

[...]
# gpart delete -i 3 ada0
ada0p3 deleted
[...]

J'ai également supprimé la table des partitions MBR. J'ai décidé de migrer sous GPT.

# gpart destroy ada0
ada0 destroyed

# gpart create -s GPT ada0

Une vérification que tout s'est bien passé.

# gpart show
=>       34  195371501  ada0  GPT  (93G)
    	 34  195371501        - free -  (93G)

Création de la partition de boot pour l'entête GPT.

# gpart add -t freebsd-boot -l gpboot -s 512K ada0
ada0p1 added

On installe le bootcode.

# gpart bootcode -b /boot/pmbr -p /boot/gptboot -i 1 ada0
bootcode written to ada0

Ensuite on passe à la création des partitions.

# gpart add -t freebsd-ufs -l root -s 5G ada0
ada0p2 added
# gpart add -t freebsd-swap -l swap -s 1G ada0
ada0p3 added
# gpart add -t freebsd-ufs -l var -s 3G ada0
ada0p4 added
# gpart add -t freebsd-ufs -l usr -s 62G ada0
ada0p5 added
# gpart add -t freebsd-ufs -l home ada0
ada0p6 added

Au final cela donne ça :

# gpart show
=>       34  195371501  ada0  GPT  (93G)
         34       1024     1  freebsd-boot  (512k)
       1058   10485760     2  freebsd-ufs  (5.0G)
   10486818    2097152     3  freebsd-swap  (1.0G)
   12583970    6291456     4  freebsd-ufs  (3.0G)
   18875426  130023424     5  freebsd-ufs  (62G)
  148898850   46472685     6  freebsd-ufs  (22G)

En quittant le shell on retrouve l'assistant pour continuer l'installation.

À la fin, je suis retourné sous le shell (on est directement dans le chroot de notre nouveau système) pour modifier le fichier /etc/fstab et /etc/rc.conf.

Notes

[1] Afin de pouvoir utiliser la dernière version Xorg.

[2] La fin du support des mises à jour de sécurité approchant à grand pas.

samedi 21 avril 2012

ACPI et FreeBSD

logo du système d'exploitation, FreeBSD

En ce moment, je travaille sur l'intégration de la prochaine version stable (4.10) de Xfce sous FreeBSD.

Un des composants, xfce4-session gère l'hibernation et le suspend to RAM (mise en veille). J'ai donc voulu voir, comment cela été pris en charge par FreeBSD.

L'essais a été effectué sur :

olivier@bornem:~ $ uname -rsp                                   
FreeBSD 8.2-RELEASE-p3 i386
olivier@bornem:~ $ 

État des lieux

Il faut savoir, que par défaut l'ACPI est déjà activé [1]. Cependant on doit rechercher les informations concernant les différentes méthodes de mise en veille.

olivier@bornem:~ $ sysctl -a | grep acpi.supported                  
hw.acpi.supported_sleep_state: S3 S4 S5
olivier@bornem:~ $ 

Sur cet ordinateur, on peut voir que trois états (sleep states) sont « pris en charge » par le système.

On peut également voir, si le BIOS est capable de le gérer.

olivier@bornem:~ $ sysctl -a | grep acpi.s4bios                     
hw.acpi.s4bios: 0
olivier@bornem:~ $ 

Dans mon cas, la valeur est à zéro, donc mon BIOS n'a pas ce support.

On peut tester les différents états (il faut être root) avec l'utilitaire acpiconf.

root@bornem:~ # acpiconf -s 3 

L'état S4 (correspondant à l'hibernation) est équivalent à S5, j'en déduis donc que je ne pourrais pas utiliser cette fonctionnalité.

L'état S3 (suspend to RAM) est pleinement fonctionnel.

Intégration avec le gestionnaire de bureau

xfce4-session possède une dépendance, UPower [2], responsable de la gestion de la consommation (en autre).

Pour pouvoir l'employer, il faut autoriser certaines opérations, grâce notamment à polkit.

On va tout d'abord rechercher les actions possibles concernant UPower.

olivier@bornem:~ $ pkaction | grep upower                           
org.freedesktop.upower.hibernate
org.freedesktop.upower.qos.cancel-request
org.freedesktop.upower.qos.request-latency
org.freedesktop.upower.qos.request-latency-persistent
org.freedesktop.upower.qos.set-minimum-latency
org.freedesktop.upower.suspend
olivier@bornem:~ $ 

J'ai uniquement besoin du support de suspend, j'en profite donc pour créer un fichier .pkla (l'extension est primordiale) situé dans /usr/local/etc/polkit-1/localauthority/50-local.d/.

Voici son contenu :

root@bornem:~ # cat /usr/local/etc/polkit-1/localauthority/50-local.d/org.freedesktop.upower.pkla 
[Suspend]
Identity=unix-group:users
Action=org.freedesktop.upower.suspend
ResultAny=yes
ResultInactive=yes
ResultActive=yes
root@bornem:~ # 

Tous les utilisateurs appartenant au groupe users sont autorisés à mettre en veille (en RAM) le système.

Notes

[1] Si l'on démarre avec les paramètres prédéfinis.

[2] Cette bibliothèque n'est pas fonctionnelle sous tous les BSD

vendredi 13 janvier 2012

FreeBSD 9.0 est là

logo du système d'exploitation, FreeBSD

Depuis le 12 janvier 2012, la branche 9 est considérée comme stable. D'où l'annonce d'une nouvelle version, il s'agit de la 9.0, (elle débute le cycle de la branche 9-STABLE).

Mise à jour

Si vous possédez une architecture dite, Tier 1 (i386, et amd64), vous pouvez effectuer la mise à jour avec l'utilitaire freebsd-update(8) (pensez à modifier le fichier de configuration /etc/freebsd-update.conf).

Si vous ne l'avez jamais utilisé, c'est le moment, profitez-en !

Cependant si vous ne suivez pas régulièrement les correctifs, vous devez effectuer une manipulation au préalable.

En root copiez ce bout de code :

sed -i '' -e 's/=_/=%@_/' /usr/sbin/freebsd-update

Ou bien, utilisez freebsd-update :

root@bornem:~ # freebsd-update fetch
[...]
root@bornem:~ # freebsd-update install

La mise à jour se fait de la manière suivante (suivez les indications mentionnées) :

root@bornem:~ # freebsd-update upgrade -r 9.0-RELEASE

Maintenant, vous pouvez ré-installer les logiciels supplémentaires que vous avez installé sur votre machine.

Il n'est pas obligatoire de passer à cette version, si vous suivez la branche 8-STABLE, comme moi, une nouvelle version est prévue courant mars 2012. Cependant pour savoir si vous avez besoin de faire une mise à jour, vous pouvez toujours consulter la Release note.

samedi 26 novembre 2011

Installation pas à pas, du système d'exploitation FreeBSD

logo FreeBSD

Dans ce billet nous allons voir les principales étapes pour installer un système d'exploitation de type Unix, à savoir FreeBSD.

L'architecture est un système 32 bits, i386.

Le seul prérequis, c'est d'avoir le handbook [1] à porter de main.

Note

[1] Tout y ai expliqué.

Lire la suite...

samedi 15 octobre 2011

[FreeBSD] checking for ZLIB... no

logo FreeBSD

Sous FreeBSD, quelques fois on est un peu « à la ramasse » niveau fraîcheur des paquets. C'est pourquoi, j'utilise le système de ports.

Ce matin j'ai décidé de mettre à jour WebKitGTK+, je maintiens ma propre branche, car j'ai toujours une erreur avec GObject-Introspection (c'est activé dans le port officiel) [1], je modifie donc légèrement le Makefile et je lance la commande suivante pour générer le fichier distinfo (il contient la somme des contrôles, permettant de vérifier que le fichier téléchargé est complet) :

root@bornem:/usr/ports/www/webkit-gtk2 # make makesum

Ensuite je lance la compilation, et je précise le dossier dans lequel, je souhaite installer cette bibliothèque. Je fais toujours ça, car cela me permet de corriger le fichier pkg-plist, et de relancer la compilation autant de fois que nécessaire afin de ne plus obtenir d'erreurs.

Pour cela je rajoute une variable dans le Makefile

[...]
NO_MTREE=       yes

.include <bsd.port.pre.mk>

[...]
root@bornem:/usr/ports/www/webkit-gtk2 # mkdir /tmp/webkit-gtk2
root@bornem:/usr/ports/www/webkit-gtk2 # make install PREFIX=/tmp/webkit-gtk2

L'étape de configuration, celle qui permet de vérifier que toutes les dépendances sont installées, s'est arrêtée de manière prématurée.

[...]
checking for icu-config... /usr/local/bin/icu-config
checking for ZLIB... no
configure: error: Package requirements (zlib) were not met:

gnome-config: not found
No package 'zlib' found

Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.

Alternatively, you may set the environment variables ZLIB_CFLAGS
and ZLIB_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.
===>  Script "configure" failed unexpectedly.
Please run the gnomelogalyzer, available from
"http://www.freebsd.org/gnome/gnomelogalyzer.sh", which will diagnose the
problem and suggest a solution. If - and only if - the gnomelogalyzer cannot
solve the problem, report the build failure to the FreeBSD GNOME team at
gnome@FreeBSD.org, and attach (a)
"/usr/ports/www/webkit-gtk2/work/webkit-1.6.1/config.log", (b) the output of
the failed make command, and (c) the gnomelogalyzer output. Also, it might
be a good idea to provide an overview of all packages installed on your system
(i.e. an `ls /var/db/pkg`). Put your attachment up on any website,
copy-and-paste into http://freebsd-gnome.pastebin.com, or use send-pr(1) with
the attachment. Try to avoid sending any attachments to the mailing list
(gnome@FreeBSD.org), because attachments sent to FreeBSD mailing lists are
usually discarded by the mailing list software.
*** Error code 1

Stop in /usr/ports/www/webkit-gtk2.
*** Error code 1

Stop in /usr/ports/www/webkit-gtk2.

Ce message indique, qu'il ne trouve pas la bibliothèque zlib pour la compression des données.

Je suis resté perplexe, car zlib est présent dans le base system de FreeBSD.

En effet, le script configure recherche le fichier pkgconfig/zlib.pc, or ce dernier est absent. Heureusement que l'on peut surcharger certaines variables d'environnement, notamment ZLIB_CFLAGS et ZLIB_LIBS, évitant ainsi d'avoir recours à l'utilitaire, pkg-config, et de rechercher dans /usr/local/lib.

  ZLIB_CFLAGS C compiler flags for ZLIB, overriding pkg-config
  ZLIB_LIBS   linker flags for ZLIB, overriding pkg-config

Je modifie donc le Makefile

[...]
CONFIGURE_ENV=  ac_cv_path_FLEX="${LOCALBASE}/bin/flex" \
                ac_cv_path_DOLT_BASH="" \
               ZLIB_CFLAGS="-I/usr/include" \
               ZLIB_LIBS="-L/usr/lib -lz"

J'ai pu enfin mettre à jour www/webkit-gtk2.

WebKitGTK étant maintenu par gnome@, je suis allé vérifier, si, sur le dépôt MarcusCom, kwm@, ou mezz@ avaient rencontré ce problème. La révision n° 1.81 est quasiment identique à la mienne.

Notes

[1] Actuellement la version présente dans les ports est la 1.4.3.

samedi 21 août 2010

Astuces concernant KDE4 sous FreeBSD

Certains le savent peut-être, je suis un inconditionnel du gestionnaire de bureaux Xfce, mais il m'arrive, parfois de voir ailleurs ...

Dans cet article, je vais donc m'intéresser à KDE, et donner quelques astuces pour l'utiliser sous FreeBSD.

Lire la suite...

- page 2 de 3 -