[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"page-ru-/guides/linux/how-to-configure-ld-config":3,"mdc--drosx9-key":331,"mdc--18etjq-key":379,"mdc-acl8xp-key":395,"mdc-apkdo2-key":412,"mdc--o7jq2c-key":437,"mdc-ud2npu-key":460,"mdc--vcnk9p-key":476,"related-/guides/linux/how-to-fix-library-not-found-linux,/guides/linux/how-to-manage-shared-libraries":498},{"id":4,"title":5,"appliesTo":6,"author":11,"body":12,"canonical":273,"code":273,"createdAt":274,"description":275,"difficulty":276,"draft":277,"estimatedTime":278,"extension":279,"faq":280,"howToSteps":293,"howToTotalTime":303,"image":273,"keywords":304,"locale":310,"meta":311,"navigation":312,"path":313,"platform":314,"related":315,"section":318,"seo":319,"severity":273,"stem":320,"summary":321,"tags":322,"twitterCreator":273,"twitterSite":273,"type":329,"updatedAt":274,"__hash__":330},"content_ru/guides/linux/how-to-configure-ld-config.md","Как настроить ldconfig в Linux: быстрая и безопасная настройка",[7,8,9,10],"Ubuntu 22.04/24.04","Debian 11/12","RHEL 9+/CentOS Stream","Fedora 38+","FixPedia Team",{"type":13,"value":14,"toc":263},"minimark",[15,20,29,33,58,62,73,109,119,123,126,138,145,148,152,155,176,179,198,202,205,222,226,259],[16,17,19],"h2",{"id":18},"введение-зачем-это-нужно","Введение / Зачем это нужно",[21,22,23,24,28],"p",{},"Правильная настройка ldconfig гарантирует, что программы в Linux смогут находить нужные динамические библиотеки без ручного указания путей через ",[25,26,27],"code",{},"LD_LIBRARY_PATH",". После настройки вы сможете устанавливать и использовать сторонние или собранные из исходников библиотеки так же удобно, как и системные.",[16,30,32],{"id":31},"требования-подготовка","Требования / Подготовка",[34,35,36,44,51],"ul",{},[37,38,39,40,43],"li",{},"Пользователь с правами ",[25,41,42],{},"sudo"," или доступом к root.",[37,45,46,47,50],{},"Установленный пакет ",[25,48,49],{},"glibc"," (ldconfig входит в его состав).",[37,52,53,54,57],{},"Путь к каталогу с библиотеками ",[25,55,56],{},".so",", который вы хотите сделать доступным системно.",[16,59,61],{"id":60},"шаг-1-добавить-путь-к-библиотеке-в-конфигурацию","Шаг 1: Добавить путь к библиотеке в конфигурацию",[21,63,64,65,68,69,72],{},"Создайте отдельный файл конфигурации в ",[25,66,67],{},"/etc/ld.so.conf.d/",", чтобы не менять системный ",[25,70,71],{},"/etc/ld.so.conf",". Это считается безопасным и удобным способом.",[74,75,80],"pre",{"className":76,"code":77,"language":78,"meta":79,"style":79},"language-bash shiki shiki-themes github-light github-dark","echo \"/opt/mylib/lib\" | sudo tee /etc/ld.so.conf.d/mylib.conf\n","bash","",[25,81,82],{"__ignoreMap":79},[83,84,87,91,95,99,103,106],"span",{"class":85,"line":86},"line",1,[83,88,90],{"class":89},"sj4cs","echo",[83,92,94],{"class":93},"sZZnC"," \"/opt/mylib/lib\"",[83,96,98],{"class":97},"szBVR"," |",[83,100,102],{"class":101},"sScJk"," sudo",[83,104,105],{"class":93}," tee",[83,107,108],{"class":93}," /etc/ld.so.conf.d/mylib.conf\n",[110,111,112],"blockquote",{},[21,113,114,115,118],{},"💡 Совет: используйте ",[25,116,117],{},".conf","-файлы с понятными именами — это упрощает аудит и удаление путей в будущем.",[16,120,122],{"id":121},"шаг-2-обновить-кэш-ldconfig","Шаг 2: Обновить кэш ldconfig",[21,124,125],{},"После изменения конфигурации обновите кэш, чтобы ldconfig перечитал все пути и обновил внутренний индекс библиотек.",[74,127,129],{"className":76,"code":128,"language":78,"meta":79,"style":79},"sudo ldconfig\n",[25,130,131],{"__ignoreMap":79},[83,132,133,135],{"class":85,"line":86},[83,134,42],{"class":101},[83,136,137],{"class":93}," ldconfig\n",[21,139,140,141,144],{},"Эта команда также обновит симлинки для совместимости (например, ",[25,142,143],{},"libc.so","), если это предусмотрено конфигурацией.",[146,147],"in-article-ad",{},[16,149,151],{"id":150},"шаг-3-проверить-доступность-библиотеки","Шаг 3: Проверить доступность библиотеки",[21,153,154],{},"Убедитесь, что библиотека появилась в кэше и может быть найдена загрузчиком.",[74,156,158],{"className":76,"code":157,"language":78,"meta":79,"style":79},"ldconfig -p | grep mylib\n",[25,159,160],{"__ignoreMap":79},[83,161,162,165,168,170,173],{"class":85,"line":86},[83,163,164],{"class":101},"ldconfig",[83,166,167],{"class":89}," -p",[83,169,98],{"class":97},[83,171,172],{"class":101}," grep",[83,174,175],{"class":93}," mylib\n",[21,177,178],{},"Если библиотека отображается в выводе, она доступна системно. Для проверки конкретного приложения используйте:",[74,180,182],{"className":76,"code":181,"language":78,"meta":79,"style":79},"ldd /opt/myapp/bin/myapp | grep mylib\n",[25,183,184],{"__ignoreMap":79},[83,185,186,189,192,194,196],{"class":85,"line":86},[83,187,188],{"class":101},"ldd",[83,190,191],{"class":93}," /opt/myapp/bin/myapp",[83,193,98],{"class":97},[83,195,172],{"class":101},[83,197,175],{"class":93},[16,199,201],{"id":200},"проверка-результата","Проверка результата",[21,203,204],{},"После выполнения шагов запустите программу, зависящую от добавленной библиотеки, и убедитесь, что она стартует без ошибок вида «error while loading shared libraries». Если проблема сохраняется, проверьте:",[34,206,207,213,216],{},[37,208,209,210,212],{},"права доступа к файлам ",[25,211,56],{}," (должны быть читаемыми);",[37,214,215],{},"архитектуру библиотеки (должна совпадать с архитектурой системы и бинарника);",[37,217,218,219,221],{},"наличие других неразрешённых зависимостей через ",[25,220,188],{},".",[16,223,225],{"id":224},"возможные-проблемы","Возможные проблемы",[34,227,228,240,250],{},[37,229,230,234,235,237,238,221],{},[231,232,233],"strong",{},"Библиотека не появляется в кэше"," — убедитесь, что путь в ",[25,236,117],{},"-файле указан верно и заканчивается без лишних пробелов. Проверьте, что каталог содержит файлы ",[25,239,56],{},[37,241,242,245,246,249],{},[231,243,244],{},"Ошибки при запуске ldconfig"," — возможны, если указаны недоступные или пустые пути. Запустите ",[25,247,248],{},"sudo ldconfig -v 2>&1 | less",", чтобы увидеть подробности обрабатываемых каталогов.",[37,251,252,255,256,258],{},[231,253,254],{},"Конфликты версий"," — при наличии нескольких версий одной библиотеки загрузчик выберет ту, которая встречается первой в порядке обхода конфигурации и кэша. При необходимости скорректируйте порядок или используйте явные пути через ",[25,257,27],{}," только для конкретного запуска.",[260,261,262],"style",{},"html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":79,"searchDepth":264,"depth":264,"links":265},2,[266,267,268,269,270,271,272],{"id":18,"depth":264,"text":19},{"id":31,"depth":264,"text":32},{"id":60,"depth":264,"text":61},{"id":121,"depth":264,"text":122},{"id":150,"depth":264,"text":151},{"id":200,"depth":264,"text":201},{"id":224,"depth":264,"text":225},null,"2026-04-28 18:58:29","Пошаговая инструкция по настройке ldconfig в Linux: обновление кэша библиотек, добавление путей и решение ошибок загрузки. Проверенные решения за 5 минут.","medium",false,"5-10 мин","md",[281,284,287,290],{"question":282,"answer":283},"Зачем нужен ldconfig и как он работает?","ldconfig создаёт и обновляет кэш динамических библиотек и симлинки в `/lib` и `/usr/lib` на основе `/etc/ld.so.conf` и файлов в `/etc/ld.so.conf.d/`, чтобы программы могли быстро находить нужные `.so`.",{"question":285,"answer":286},"Безопасно ли добавлять свои пути в ldconfig?","Да, если вы добавляете доверенные библиотеки и используете отдельный файл в `/etc/ld.so.conf.d/`. Это стандартный и безопасный подход, не затрагивающий системные конфиги.",{"question":288,"answer":289},"Почему после установки библиотеки программа её не видит?","Обычно кэш ldconfig не обновлялся или путь к библиотеке не указан в конфигурации ld.so.conf. Запустите `sudo ldconfig` после добавления пути, чтобы обновить кэш.",{"question":291,"answer":292},"Как проверить, что библиотека доступна в системе?","Используйте `ldconfig -p | grep имя_библиотеки` для поиска в кэше и `ldd /путь/к/бинарнику`, чтобы убедиться, что все зависимости разрешены.",[294,297,300],{"name":295,"text":296},"Добавить путь к библиотеке в конфигурацию","Создайте файл в `/etc/ld.so.conf.d/` с нужным путём или добавьте его в `/etc/ld.so.conf`. Это укажет ldconfig, где искать библиотеки.",{"name":298,"text":299},"Обновить кэш ldconfig","Запустите `sudo ldconfig`, чтобы перечитать конфиги, обновить кэш и создать/обновить симлинки для совместимости.",{"name":301,"text":302},"Проверить доступность библиотеки","Используйте `ldconfig -p | grep имя` для поиска в кэше и `ldd /путь/к/бинарнику`, чтобы убедиться в корректном разрешении зависимостей.","PT10M",[305,306,307,308,309],"настроить ldconfig linux","ldconfig добавить путь к библиотеке","обновить кэш библиотек linux","ошибка загрузки библиотеки linux","ld.so.conf настройка","ru_RU",{},true,"/guides/linux/how-to-configure-ld-config","linux",[316,317],"/guides/linux/how-to-fix-library-not-found-linux","/guides/linux/how-to-manage-shared-libraries","Гайды Linux",{"title":5,"description":275},"guides/linux/how-to-configure-ld-config","Гайд объясняет, как настроить ldconfig для корректной работы динамических библиотек в Linux: добавление путей, обновление кэша и проверку конфигурации.",[323,164,324,325,326,327,328],"Linux","динамические библиотеки","кэш","ld.so.conf","shared libraries","troubleshooting","guide","Ju9iXOmoL_oGKGgFUtp8oiNRvEgRWoO0M9y1MPGG8Jg",{"data":332,"body":333},{},{"type":334,"children":335},"root",[336],{"type":337,"tag":21,"props":338,"children":339},"element",{},[340,343,349,351,357,359,364,366,371,373,378],{"type":341,"value":342},"text","ldconfig создаёт и обновляет кэш динамических библиотек и симлинки в ",{"type":337,"tag":25,"props":344,"children":346},{"className":345},[],[347],{"type":341,"value":348},"/lib",{"type":341,"value":350}," и ",{"type":337,"tag":25,"props":352,"children":354},{"className":353},[],[355],{"type":341,"value":356},"/usr/lib",{"type":341,"value":358}," на основе ",{"type":337,"tag":25,"props":360,"children":362},{"className":361},[],[363],{"type":341,"value":71},{"type":341,"value":365}," и файлов в ",{"type":337,"tag":25,"props":367,"children":369},{"className":368},[],[370],{"type":341,"value":67},{"type":341,"value":372},", чтобы программы могли быстро находить нужные ",{"type":337,"tag":25,"props":374,"children":376},{"className":375},[],[377],{"type":341,"value":56},{"type":341,"value":221},{"data":380,"body":381},{},{"type":334,"children":382},[383],{"type":337,"tag":21,"props":384,"children":385},{},[386,388,393],{"type":341,"value":387},"Да, если вы добавляете доверенные библиотеки и используете отдельный файл в ",{"type":337,"tag":25,"props":389,"children":391},{"className":390},[],[392],{"type":341,"value":67},{"type":341,"value":394},". Это стандартный и безопасный подход, не затрагивающий системные конфиги.",{"data":396,"body":397},{},{"type":334,"children":398},[399],{"type":337,"tag":21,"props":400,"children":401},{},[402,404,410],{"type":341,"value":403},"Обычно кэш ldconfig не обновлялся или путь к библиотеке не указан в конфигурации ld.so.conf. Запустите ",{"type":337,"tag":25,"props":405,"children":407},{"className":406},[],[408],{"type":341,"value":409},"sudo ldconfig",{"type":341,"value":411}," после добавления пути, чтобы обновить кэш.",{"data":413,"body":414},{},{"type":334,"children":415},[416],{"type":337,"tag":21,"props":417,"children":418},{},[419,421,427,429,435],{"type":341,"value":420},"Используйте ",{"type":337,"tag":25,"props":422,"children":424},{"className":423},[],[425],{"type":341,"value":426},"ldconfig -p | grep имя_библиотеки",{"type":341,"value":428}," для поиска в кэше и ",{"type":337,"tag":25,"props":430,"children":432},{"className":431},[],[433],{"type":341,"value":434},"ldd /путь/к/бинарнику",{"type":341,"value":436},", чтобы убедиться, что все зависимости разрешены.",{"data":438,"body":439},{},{"type":334,"children":440},[441],{"type":337,"tag":21,"props":442,"children":443},{},[444,446,451,453,458],{"type":341,"value":445},"Создайте файл в ",{"type":337,"tag":25,"props":447,"children":449},{"className":448},[],[450],{"type":341,"value":67},{"type":341,"value":452}," с нужным путём или добавьте его в ",{"type":337,"tag":25,"props":454,"children":456},{"className":455},[],[457],{"type":341,"value":71},{"type":341,"value":459},". Это укажет ldconfig, где искать библиотеки.",{"data":461,"body":462},{},{"type":334,"children":463},[464],{"type":337,"tag":21,"props":465,"children":466},{},[467,469,474],{"type":341,"value":468},"Запустите ",{"type":337,"tag":25,"props":470,"children":472},{"className":471},[],[473],{"type":341,"value":409},{"type":341,"value":475},", чтобы перечитать конфиги, обновить кэш и создать/обновить симлинки для совместимости.",{"data":477,"body":478},{},{"type":334,"children":479},[480],{"type":337,"tag":21,"props":481,"children":482},{},[483,484,490,491,496],{"type":341,"value":420},{"type":337,"tag":25,"props":485,"children":487},{"className":486},[],[488],{"type":341,"value":489},"ldconfig -p | grep имя",{"type":341,"value":428},{"type":337,"tag":25,"props":492,"children":494},{"className":493},[],[495],{"type":341,"value":434},{"type":341,"value":497},", чтобы убедиться в корректном разрешении зависимостей.",[]]