Nous avons de très vieux systèmes de compilation FreeBSD (6.3) que nous utilisons pour maintenir une compatibilité ascendante avec les bibliothèques système de nos fichiers binaires propriétaires et éviter de construire à chaque version de FreeBSD.
Question: Est-il techniquement possible d'installer une nouvelle version de FreeBSD 11.x et de mettre l'ancien système en prison? Ou y aura-t-il des problèmes dus à des appels système incompatibles?
Je pense me souvenir d’un changement - supposé cuisant - de l’interface du noyau en ce qui concerne la taille d’ time_t
environ. Existe-t-il de tels changements qui casseraient les anciens fichiers binaires s'appuyant sur l'ancien appel système ou auraient-ils uniquement une incidence sur les fichiers binaires nouvellement construits / liés qui sont liés au nouvel appel système (correspondant)?
Réponses:
Je pense que bhyve est votre premier recours, pas votre dernier. Si vous emprisonnez votre environnement de construction, vous testez votre produit sur un monde 6.3 et des bibliothèques, avec un noyau 11.x. Toutefois, vos clients exécuteront un noyau / libs 6.3 et un noyau 6.3.
J'imagine que les différences entre les noyaux 6.3 et 11.x devraient augmenter avec le temps. Cela pourrait éventuellement conduire à des situations telles que celle dans laquelle le noyau 11.x de votre jail test teste est la bonne chose, mais le noyau 6.3 de votre client ne le fait pas et par conséquent, vous ne pouvez pas reproduire le rapport de problème de votre client.
OMI, bhyve est le meilleur outil pour ce travail.
la source