{"id":114764,"date":"2024-04-03T12:25:48","date_gmt":"2024-04-03T10:25:48","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/inicziativa-po-sokrashheniyu-zavisimostej-u-libsystemd"},"modified":"2024-04-03T12:25:48","modified_gmt":"2024-04-03T10:25:48","slug":"inicziativa-po-sokrashheniyu-zavisimostej-u-libsystemd","status":"publish","type":"post","link":"https:\/\/prohoster.info\/fr\/blog\/news\/inicziativa-po-sokrashheniyu-zavisimostej-u-libsystemd","title":{"rendered":"Initiative de r\u00e9duction des d\u00e9pendances de libsystemd","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Parmi les d\u00e9veloppeurs du gestionnaire de syst\u00e8mes systemd, une discussion est en cours sur la r\u00e9duction des d\u00e9pendances de la biblioth\u00e8que libsystemd, qui est li\u00e9e non seulement aux composants de systemd, mais aussi \u00e0 de nombreuses applications externes. Par exemple, dans Fedora, plus de 150 paquets utilisent libsystemd comme d\u00e9pendance. L'initiateur de la discussion estime que l'inclusion de biblioth\u00e8ques tierces suppl\u00e9mentaires dans libsystemd, qui ne sont pas contr\u00f4l\u00e9es par les d\u00e9veloppeurs de systemd, augmente consid\u00e9rablement la surface d'attaque en cas de compromission de ces biblioth\u00e8ques, comme cela a \u00e9t\u00e9 le cas avec la biblioth\u00e8que liblzma.    <\/p>\n<p>En plus de liblzma et glibc, libsystemd charge \u00e9galement les biblioth\u00e8ques libzstd, liblz4 et libgcrypt, dont le maintien de la s\u00e9curit\u00e9 devient une t\u00e2che critique. libsystemd fournit un acc\u00e8s \u00e0 12 API de base (sd-bus, sd-daemon, sd-device, sd-event, sd-hwdb, sd-id128, sd-journal, sd-login, sd-netlink, sd-network, sd-path et sd-resolve) cr\u00e9ant une situation o\u00f9 une application, par exemple, utilisant libsystemd uniquement pour appeler la fonction sd_notify afin d'informer systemd d'un changement d'\u00e9tat ou sd_journal pour enregistrer des donn\u00e9es dans le journal, se lie \u00e0 toutes les autres biblioth\u00e8ques et gestionnaires d'API. Pour y rem\u00e9dier, il est propos\u00e9 de diviser libsystemd en plusieurs biblioth\u00e8ques distinctes, chacune responsable d'une API sp\u00e9cifique, ce qui permettrait de charger des d\u00e9pendances tierces uniquement lorsque cela est n\u00e9cessaire.    <\/p>\n<p>Les d\u00e9veloppeurs de systemd estiment que cette s\u00e9paration n'est pas judicieuse, car les gestionnaires pr\u00e9sents dans libsystemd sont interconnect\u00e9s. La s\u00e9paration n\u00e9cessiterait un travail \u00e9norme et entra\u00eenerait soit une perte d'efficacit\u00e9, soit la n\u00e9cessit\u00e9 de dupliquer du code. Pour r\u00e9duire l'occupation m\u00e9moire dans libsystemd, un changement a r\u00e9cemment \u00e9t\u00e9 adopt\u00e9 avec la mise en \u0153uvre du chargement dynamique des biblioth\u00e8ques liblzma, libzstd et liblz4 via un appel \u00e0 dlopen(), dans des situations o\u00f9 leurs fonctions sont r\u00e9ellement n\u00e9cessaires. Un changement similaire sera \u00e9galement mis en \u0153uvre pour libgcrypt \u00e0 partir de la prochaine version.       <\/p>\n<p>Cette d\u00e9cision a \u00e9t\u00e9 critiqu\u00e9e car, au lieu d'un lien explicite et manifeste, le chargement des biblioth\u00e8ques tierces sera d\u00e9sormais effectu\u00e9 de mani\u00e8re implicite, ce qui compliquera le diagnostic, car la liaison entre les appels d'API de libsystemd et les fonctions des biblioth\u00e8ques externes n'est pas \u00e9vidente. Le passage au chargement via dlopen() ne change pas l'architecture en soi, mais cache simplement les composants externes aux mainteneurs et aux utilisateurs.      <\/p>\n<p>Lenart Pottering a exprim\u00e9 son d\u00e9saccord cat\u00e9gorique avec l'id\u00e9e de diviser libsystemd en plusieurs biblioth\u00e8ques, car cette d\u00e9marche compliquerait consid\u00e9rablement le partage de code dans systemd et n\u00e9cessiterait de convertir tous les gestionnaires internes en \u00e9l\u00e9ments publics ou de les compiler s\u00e9par\u00e9ment dans chaque biblioth\u00e8que. Dans le premier cas, des probl\u00e8mes de maintien de la stabilit\u00e9 de l'API et des espaces de noms surgiraient, tandis que dans le second cas, cela entra\u00eenerait une augmentation de taille due \u00e0 la duplication de code.     <\/p>\n<p>La strat\u00e9gie mise en place pour le prochain lancement de chargement des biblioth\u00e8ques externes uniquement si n\u00e9cessaire est per\u00e7ue par Leonard comme une strat\u00e9gie optimale. Le probl\u00e8me de la complexit\u00e9 d'obtention des donn\u00e9es sur les biblioth\u00e8ques charg\u00e9es de mani\u00e8re dynamique est propos\u00e9 d'\u00eatre r\u00e9solu par l'ajout de champs suppl\u00e9mentaires dans les fichiers ELF contenant des informations sur ces d\u00e9pendances dynamiques, qui peuvent \u00eatre trait\u00e9es par les d\u00e9bogueurs et affich\u00e9es dans la sortie de l'outil readelf.      <\/p>\n<p>En ce qui concerne le lien entre libsystemd et de nombreuses applications, Leonard a recommand\u00e9 aux d\u00e9veloppeurs d'applications de ne pas essayer de charger libsystemd pour une seule fonction, mais de mettre en \u0153uvre le gestionnaire de protocole au niveau de l'application. Par exemple, l'impl\u00e9mentation de la fonctionnalit\u00e9 sd_notify() est suffisamment triviale et peut se faire en quelques lignes de code en utilisant des sockets UNIX (AF_UNIX). Une telle r\u00e9alisation isol\u00e9e de sd_notify est disponible pour OpenSSH depuis 2017 et a r\u00e9cemment \u00e9t\u00e9 accept\u00e9e dans la branche portable d'OpenSSH 9.8, dont la sortie est pr\u00e9vue pour le milieu de l'\u00e9t\u00e9.<br \/>\n<br \/>Source : <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=60912\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0421\u0440\u0435\u0434\u0438 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u043e\u0433\u043e \u043c\u0435\u043d\u0435\u0434\u0436\u0435\u0440\u0430 systemd \u0432\u0435\u0434\u0451\u0442\u0441\u044f \u043e\u0431\u0441\u0443\u0436\u0434\u0435\u043d\u0438\u0435 \u0432\u043e\u043f\u0440\u043e\u0441\u0430 \u0441\u043e\u043a\u0440\u0430\u0449\u0435\u043d\u0438\u044f \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0435\u0439 \u0443 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 libsystemd, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0441\u0432\u044f\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u0441 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430\u043c\u0438 systemd, \u043d\u043e \u0438 \u0441\u043e \u043c\u043d\u043e\u0433\u0438\u043c\u0438 \u0432\u043d\u0435\u0448\u043d\u0438\u043c\u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u043c\u0438. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0432 Fedora \u0431\u043e\u043b\u0435\u0435 150 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442 libsystemd \u0432 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u044f\u0445. \u0418\u043d\u0438\u0446\u0438\u0430\u0442\u043e\u0440 \u043e\u0431\u0441\u0443\u0436\u0434\u0435\u043d\u0438\u044f \u0441\u0447\u0438\u0442\u0430\u0435\u0442, \u0447\u0442\u043e \u043f\u043e\u0434\u0442\u044f\u0433\u0438\u0432\u0430\u043d\u0438\u0435 \u0432 libsystemd \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u0441\u0442\u043e\u0440\u043e\u043d\u043d\u0438\u0445 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043d\u0435 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u0438\u0440\u0443\u044e\u0442 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 systemd, \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u0443\u0432\u0435\u043b\u0438\u0447\u0438\u0432\u0430\u0435\u0442 \u043f\u043e\u0432\u0435\u0440\u0445\u043d\u043e\u0441\u0442\u044c \u0430\u0442\u0430\u043a\u0438 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-114764","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0421\u0440\u0435\u0434\u0438 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u043e\u0433\u043e \u043c\u0435\u043d\u0435\u0434\u0436\u0435\u0440\u0430 systemd \u0432\u0435\u0434\u0451\u0442\u0441\u044f \u043e\u0431\u0441\u0443\u0436\u0434\u0435\u043d\u0438\u0435 \u0432\u043e\u043f\u0440\u043e\u0441\u0430 \u0441\u043e\u043a\u0440\u0430\u0449\u0435\u043d\u0438\u044f \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0435\u0439 \u0443 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 libsystemd, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0441\u0432\u044f\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u0441 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430\u043c\u0438 systemd, \u043d\u043e \u0438 \u0441\u043e \u043c\u043d\u043e\u0433\u0438\u043c\u0438 \u0432\u043d\u0435\u0448\u043d\u0438\u043c\u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u043c\u0438.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/fr\/blog\/news\/inicziativa-po-sokrashheniyu-zavisimostej-u-libsystemd\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2\" \/>\n\t\t<meta property=\"og:locale\" content=\"fr_FR\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0418\u043d\u0438\u0446\u0438\u0430\u0442\u0438\u0432\u0430 \u043f\u043e \u0441\u043e\u043a\u0440\u0430\u0449\u0435\u043d\u0438\u044e \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0435\u0439 \u0443 libsystemd | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0421\u0440\u0435\u0434\u0438 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u043e\u0433\u043e \u043c\u0435\u043d\u0435\u0434\u0436\u0435\u0440\u0430 systemd \u0432\u0435\u0434\u0451\u0442\u0441\u044f \u043e\u0431\u0441\u0443\u0436\u0434\u0435\u043d\u0438\u0435 \u0432\u043e\u043f\u0440\u043e\u0441\u0430 \u0441\u043e\u043a\u0440\u0430\u0449\u0435\u043d\u0438\u044f \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0435\u0439 \u0443 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 libsystemd, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0441\u0432\u044f\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u0441 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430\u043c\u0438 systemd, \u043d\u043e \u0438 \u0441\u043e \u043c\u043d\u043e\u0433\u0438\u043c\u0438 \u0432\u043d\u0435\u0448\u043d\u0438\u043c\u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u043c\u0438.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/fr\/blog\/news\/inicziativa-po-sokrashheniyu-zavisimostej-u-libsystemd\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2024-04-03T10:25:48+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2024-04-03T10:25:48+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Initiative pour r\u00e9duire les d\u00e9pendances de libsystemd | ProHoster","description":"Parmi les d\u00e9veloppeurs du gestionnaire de syst\u00e8me systemd, une discussion est en cours sur la r\u00e9duction des d\u00e9pendances de la biblioth\u00e8que libsystemd, qui est li\u00e9e non seulement aux composants de systemd mais aussi \u00e0 de nombreuses applications externes.","canonical_url":"https:\/\/prohoster.info\/fr\/blog\/news\/inicziativa-po-sokrashheniyu-zavisimostej-u-libsystemd","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"fr_FR","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0418\u043d\u0438\u0446\u0438\u0430\u0442\u0438\u0432\u0430 \u043f\u043e \u0441\u043e\u043a\u0440\u0430\u0449\u0435\u043d\u0438\u044e \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0435\u0439 \u0443 libsystemd | ProHoster","og:description":"\u0421\u0440\u0435\u0434\u0438 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u043e\u0433\u043e \u043c\u0435\u043d\u0435\u0434\u0436\u0435\u0440\u0430 systemd \u0432\u0435\u0434\u0451\u0442\u0441\u044f \u043e\u0431\u0441\u0443\u0436\u0434\u0435\u043d\u0438\u0435 \u0432\u043e\u043f\u0440\u043e\u0441\u0430 \u0441\u043e\u043a\u0440\u0430\u0449\u0435\u043d\u0438\u044f \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0435\u0439 \u0443 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 libsystemd, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0441\u0432\u044f\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u0441 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430\u043c\u0438 systemd, \u043d\u043e \u0438 \u0441\u043e \u043c\u043d\u043e\u0433\u0438\u043c\u0438 \u0432\u043d\u0435\u0448\u043d\u0438\u043c\u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u043c\u0438.","og:url":"https:\/\/prohoster.info\/fr\/blog\/news\/inicziativa-po-sokrashheniyu-zavisimostej-u-libsystemd","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2024-04-03T10:25:48+00:00","article:modified_time":"2024-04-03T10:25:48+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"114764","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-22 21:20:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2026-01-22 21:20:19","updated":"2026-01-22 21:20:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts\/114764","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/comments?post=114764"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts\/114764\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/media?parent=114764"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/categories?post=114764"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/tags?post=114764"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}