ÆÆHEI5ITI Architecture linux avancé Le 4 octobre 2006 Q1a : Quand on récupère un fichier exécutable compilé pour les systèmes d’exploitation Linux, quelle commande nous permettra de savoir s’il a été compilé pour notre architecture matérielle ? La commande « file » nous indique si le fichier est un exécutable et indique le type 0,5 d’architecture processeur pour lequel il a été compilé. Q1b : Quelle commande permet de connaître la liste des librairies requises par un exécutable Linux ? La commande « ldd » nous indique la liste des librairies requises par un exécutable. 0,5 Q2 : Est-il possible d’obtenir des exécutables Linux qui puissent fonctionner peu importe les librairies installées sur la machine où ils seront exécutés ? Que doit-on faire pour obtenir un tel exécutable ? Oui, pour obtenir un tel exécutable il faut compiler (et linker) le produit en static. Ainsi les 1,0 fonctions incluses dans les librairies sont copiées dans l’exécutable et l’exécutable n’a plus besoin de librairie pour fonctionner. Remarque : Les produits open source utilisant un fichier « ./configure » peuvent souvent être compilés en static en ajoutant l’option « --enable-static » lors du « ./configure ». Q3a : Donnez le nom d’une distribution Linux courante plutôt adaptée au monde professionnel pour être utilisé sur des serveurs. Donnez les raisons pour lesquelles vous la jugez adaptée à ce type d’usage. On peut citer les distributions « RedHAT Enterprise ». Elles sont ...
Q1a : Quandon récupère un fichier exécutable compilé pour les systèmes d’exploitation Linux, quelle commande nous permettra de savoir s’il a été compilé pour notre architecture matérielle ? 0,5La commande «file» nous indique si le fichier est un exécutable et indique le type d’architecture processeur pour lequel il a été compilé. Q1b : Quellecommande permet de connaître la liste des librairies requises par un exécutable Linux ? 0,5La commande «ldd» nous indique la liste des librairies requises par un exécutable. Q2 : Est-il possible d’obtenir des exécutables Linux qui puissent fonctionner peu importe les librairies installées sur la machine où ils seront exécutés ? Que doit-on faire pour obtenir un tel exécutable ? Oui, pour obtenir un tel exécutable il faut compiler (et linker) le produit en static. Ainsi les 1,0 fonctions incluses dans les librairies sont copiées dans l’exécutable et l’exécutable n’a plus besoin de librairie pour fonctionner. Remarque : Les produits open source utilisant un fichier «./configure» peuvent souvent être compilés en static en ajoutant l’option «enablestatic» lors du «./configure». Q3a : Donnezle nom d’une distribution Linux courante plutôt adaptée au monde professionnel pour être utilisé sur des serveurs. Donnez les raisons pour lesquelles vous la jugez adaptée à ce type d’usage. On peut citer les distributions «RedHAT Enterprise». Elles sont particulièrement bien 1,0 adaptés au monde professionnel pour un usage sur des serveurs, car : •la société propose un support technique •la société effectue un suivi des failles de sécurité des composants utilisés, •le produit intègre déjà les produits serveurs les plus courants, •le système intègre un logiciel permettant la mise à jour automatique. Remarque vis-à-vis des distributions « Debian » : •(- ?)Ce n’est pas une société commerciale. Elle ne vend pas de support technique mais on peut trouver sur des forums les aides et informations requises pour régler les problèmes courants. Le support peut par contre être acheté auprès de consultant indépendant de Debian mais référencé sur leur site. •(=) Le suivi de faille de sécurité des composants utilisés est assuré. •Le produit intègre les produits serveurs les plus courants mais n’intègre(- ?) rapidement les derniers développements.ÆNécessité de vérifier la disponibilité des nouveaux applicatifs (nouvelles fonctionnalités) que l’on souhaite utiliser. •(=) Le système intègre également un logiciel permettant la mise à jour automatique •(+) On contrôle mieux le contenu de ce que l’on installe et seul des produits testés au niveau sécurité sont intégrés dans la version « stable »ÆPas de course à la dernière fonctionnalité à la mode.