mpirun не находит библиотеку

Knoppix

Модераторы: Warderer, Модераторы разделов

Аватара пользователя
kerogaz
Сообщения: 916
ОС: CentOS,FreeBSD 12.1,Arch

mpirun не находит библиотеку

Сообщение kerogaz »

Debian 10

Код: Выделить всё

mpirun
mpirun: error while loading shared libraries: libopen-rte.so.40: cannot open shared object file: No such file or directory
Эта библиотека находится в /usr/local/lib но

Код: Выделить всё

 exho $PATH дает
/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games
а этот горбатый путь путь прописан только в /etc/login.defs
Я добавил в конец .profile юзеря путь но он не действует
#

Код: Выделить всё

 if running bash
if [ -n "$BASH_VERSION" ]; then
    # include .bashrc if it exists
    if [ -f "$HOME/.bashrc" ]; then
        . "$HOME/.bashrc"
    fi
fi

# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/bin" ] ; then
    PATH="$HOME/bin:$PATH"
fi

# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/.local/bin" ] ; then
    PATH="$HOME/.local/bin:$PATH"
fi
PATH=$PATH:/usr/local/lib
export PATH
Спасибо сказали:
Аватара пользователя
Rootlexx
Бывший модератор
Сообщения: 4458
Статус: GNU generation
ОС: Debian GNU/Linux

Re: mpirun не находит библиотеку

Сообщение Rootlexx »

Спрашивается, и чем же не угодил openmpi из репозитория, ну да ладно...

PATH содержит пути поиска приложений. Для библиотек существует LD_LIBRARY_PATH - но /usr/local/lib уже прописан по умолчанию в /etc/ld.so.conf.d/libc.conf, поэтому, вероятно, вам просто следует выполнить ldconfig.
Спасибо сказали:
Аватара пользователя
kerogaz
Сообщения: 916
ОС: CentOS,FreeBSD 12.1,Arch

Re: mpirun не находит библиотеку

Сообщение kerogaz »

Rootlexx писал:
11.12.2019 12:49
Спрашивается, и чем же не угодил openmpi из репозитория, ну да ладно...

PATH содержит пути поиска приложений. Для библиотек существует LD_LIBRARY_PATH - но /usr/local/lib уже прописан по умолчанию в /etc/ld.so.conf.d/libc.conf, поэтому, вероятно, вам просто следует выполнить ldconfig.

Код: Выделить всё

root@debian:/home/deb# ldconfig
bash: ldconfig: команда не найдена
root@debian:/home/deb# apt install ldconfig
Чтение списков пакетов… Готово
Построение дерева зависимостей       
Чтение информации о состоянии… Готово
E: Невозможно найти пакет ldconfig
root@debian:/home/deb# find /usr/lib -name *ldconfig*
root@debian:/home/deb# 
root@debian:/home/deb# mc

root@debian:/home/deb/Загрузки# dpkg -i libc-bin_2.29-3_arm64.deb 
dpkg: предупреждение: «ldconfig» отсутствует в каталогах, перечисленных в PATH, или не является исполняемым
dpkg: предупреждение: «start-stop-daemon» отсутствует в каталогах, перечисленных в PATH, или не является исполняемым
dpkg: ошибка: в каталогах PATH не найдено 2 ожидаемые программы или исполняемых файла
Замечание: В PATH суперпользователя обычно должны присутствовать /usr/local/sbin, /usr/sbin и /sbin
А в репозиториях мы не нашли оpenmpi вот и установили из тарболла
Спасибо сказали:
Аватара пользователя
kerogaz
Сообщения: 916
ОС: CentOS,FreeBSD 12.1,Arch

Re: mpirun не находит библиотеку

Сообщение kerogaz »

Rootlexx писал:
11.12.2019 12:49
Спрашивается, и чем же не угодил openmpi из репозитория, ну да ладно...

PATH содержит пути поиска приложений. Для библиотек существует LD_LIBRARY_PATH - но /usr/local/lib уже прописан по умолчанию в /etc/ld.so.conf.d/libc.conf, поэтому, вероятно, вам просто следует выполнить ldconfig.

Код: Выделить всё

root@debian:/home/deb# ldconfig
bash: ldconfig: команда не найдена
root@debian:/home/deb# apt install ldconfig
Чтение списков пакетов… Готово
Построение дерева зависимостей       
Чтение информации о состоянии… Готово
E: Невозможно найти пакет ldconfig
root@debian:/home/deb# find /usr/lib -name *ldconfig*
root@debian:/home/deb# 
root@debian:/home/deb# mc

root@debian:/home/deb/Загрузки# dpkg -i libc-bin_2.29-3_arm64.deb 
dpkg: предупреждение: «ldconfig» отсутствует в каталогах, перечисленных в PATH, или не является исполняемым
dpkg: предупреждение: «start-stop-daemon» отсутствует в каталогах, перечисленных в PATH, или не является исполняемым
dpkg: ошибка: в каталогах PATH не найдено 2 ожидаемые программы или исполняемых файла
Замечание: В PATH суперпользователя обычно должны присутствовать /usr/local/sbin, /usr/sbin и /sbin
А в репозиториях мы не нашли оpenmpi вот и установили из тарболла
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 21251
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: mpirun не находит библиотеку

Сообщение Bizdelnick »

kerogaz писал(а):
11.12.2019 12:56
ldconfig: команда не найдена
/sbin/ldconfig
Добавлено (13:00):
kerogaz писал(а):
11.12.2019 12:57
А в репозиториях мы не нашли оpenmpi вот и установили из тарболла
Как же это вы искали, интересно…
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Аватара пользователя
kerogaz
Сообщения: 916
ОС: CentOS,FreeBSD 12.1,Arch

Re: mpirun не находит библиотеку

Сообщение kerogaz »

Спасибо огромное. ldconfig помог. А как пользователям прописывать пути в своих .profile?
Добавлено (13:12):
И я не могу в командной строке добавить пользователя

Код: Выделить всё

adduser bek
bash: adduser: команда не найдена
хотя adduser есть в /sbin/adduser и в /usr/share/adduser Явно что-то с путями а где их прописать непонятно .profile не действует
Добавлено (14:00):
В путях нет /sbin как его туда ввести непонятно

Код: Выделить всё

root@debian:/home/deb# echo $PATH
/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games:/usr/local/lib
Можно конечно перекопировать всё с /sbin в /bin но это не решение вопроса
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 21251
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: mpirun не находит библиотеку

Сообщение Bizdelnick »

kerogaz, мне найти тему, где с Вами обсуждали использование su, или самостоятельно справитесь?
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Аватара пользователя
kerogaz
Сообщения: 916
ОС: CentOS,FreeBSD 12.1,Arch

Re: mpirun не находит библиотеку

Сообщение kerogaz »

А причем здесь su? Пользователь заходит в свой каталог, устанавливает там свой пакет приклвдных программ и должен прописать в своем ./profile путь к ним
Последний раз редактировалось kerogaz 11.12.2019 16:22, всего редактировалось 1 раз.
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 21251
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: mpirun не находит библиотеку

Сообщение Bizdelnick »

kerogaz писал(а):
11.12.2019 16:19
А причем здесь su?
При том, что
kerogaz писал(а):
11.12.2019 13:09
root@debian:/home/deb# echo $PATH
/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games:/usr/local/lib
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Аватара пользователя
kerogaz
Сообщения: 916
ОС: CentOS,FreeBSD 12.1,Arch

Re: mpirun не находит библиотеку

Сообщение kerogaz »

Bizdelnick писал:
11.12.2019 16:21
kerogaz писал(а):
11.12.2019 16:19
А причем здесь su?
При том, что
kerogaz писал(а):
11.12.2019 13:09
root@debian:/home/deb# echo $PATH
/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games:/usr/local/lib
Это я под рутом а не пользователь. Пользователь должен зайти под соим именем, зайти в /opt взять там программу и установить её у себя. Мне непонятно почему в Debian 10 путь изначально ппрописан в /bin а исполняемуе файлы лежат в /sbin
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 21251
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: mpirun не находит библиотеку

Сообщение Bizdelnick »

kerogaz, не морочьте голову. Найдите тему и перечитайте.
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Аватара пользователя
kerogaz
Сообщения: 916
ОС: CentOS,FreeBSD 12.1,Arch

Re: mpirun не находит библиотеку

Сообщение kerogaz »

У пользователя profile

Код: Выделить всё

# ~/.profile: executed by the command interpreter for login shells.
# This file is not read by bash(1), if ~/.bash_profile or ~/.bash_login
# exists.
# see /usr/share/doc/bash/examples/startup-files for examples.
# the files are located in the bash-doc package.

# the default umask is set in /etc/profile; for setting the umask
# for ssh logins, install and configure the libpam-umask package.
#umask 022

# if running bash
if [ -n "$BASH_VERSION" ]; then
    # include .bashrc if it exists
    if [ -f "$HOME/.bashrc" ]; then
        . "$HOME/.bashrc"
    fi
fi

# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/bin" ] ; then
    PATH="$HOME/bin:$PATH"
fi

# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/.local/bin" ] ; then
    PATH="$HOME/.local/bin:$PATH"
fi

export LANG=en_US.utf8

PATH=$PATH:.:$HOME/opt/lammps-7Aug19/src
export PATH
Если пользователю зайти к себе непосредственно на этом компьютере то этого пути нет:

Код: Выделить всё

echo $PATH
/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games

А если зайти по ssh с домашнего компьютера или с любого другого то всё нормально. Он вчера настраивал пути именно по ssh.

Код: Выделить всё

echo $PATH
/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games:.:/home/bekenev/opt/lammps-7Aug19/src
Последний раз редактировалось kerogaz 12.12.2019 17:14, всего редактировалось 2 раза.
Спасибо сказали:
Аватара пользователя
kerogaz
Сообщения: 916
ОС: CentOS,FreeBSD 12.1,Arch

Re: mpirun не находит библиотеку

Сообщение kerogaz »

Нашел ответ https://debianforum.ru/index.php?topic=15010.0 Но с ssh непонятно
Спасибо сказали:
Аватара пользователя
kerogaz
Сообщения: 916
ОС: CentOS,FreeBSD 12.1,Arch

Re: mpirun не находит библиотеку

Сообщение kerogaz »

А также непонятно почему когда я вхожу как su -
то его .profile

Код: Выделить всё

# ~/.profile: executed by Bourne-compatible login shells.

if [ "$BASH" ]; then
  if [ -f ~/.bashrc ]; then
    . ~/.bashrc
  fi
fi

mesg n || true
PATH=$PATH:/usr/local/sbin:/usr/sbin:/sbin:/usr/bin:/sbin:/bin:/usr/local/bin
export PATH
export LANG=en_US.utf8
а его

Код: Выделить всё

echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/sbin:/usr/sbin:/sbin:/usr/bin:/sbin:/bin:/usr/local/bin
Добавлено (19:22):
И как поступать когда в системе имеется несколько пользователей которые должны иметь у себя свои пути к своим пакетам прикладных программ?
Спасибо сказали:
Аватара пользователя
Hephaestus
Сообщения: 3728
Статус: Многоуважаемый джинн...
ОС: Slackware64-14.1/14.2

Re: mpirun не находит библиотеку

Сообщение Hephaestus »

kerogaz писал(а):
12.12.2019 19:15
в системе имеется несколько пользователей которые должны иметь у себя свои пути к своим пакетам прикладных программ
Какие у пользователей могут быть "свои пакеты прикладных программ"?
Для пакетного дистра, каким является Debian, установка программ куда-то мимо пакетного менеджера - так себе решение. Соберите пакет по-нормальному и не мучайтесь.

Да, в тарболах с использованием всяких autotools, configure и пр. конфигурирование по умолчанию обычно предполагает установку в /usr/local/bin. Но здесь нужно понимать, что тарбол - дистронезависимая штука.
Политика дистров диктует свои правила и ограничения. Поэтому /usr/local/bin превращается в /usr/bin, например.
И при создании пакетов это надо учитывать.

В /opt (или вообще в $HOME) обычно распаковывается что-нибудь такое... portable-версия или что-то совсем проприетарное (вроде Оперы), но такие штуки на это рассчитаны, собраны по принципу "всё моё ношу с собой", поэтому проблем с запуском обычно не возникает.

Если же пользователь желает произвольную программу куда-нибудь в $HOME или в /opt, он, конечно, может это сделать, но тогда вопросы путей, библиотек и прочих всяких значков/пунктов меню - это всё полностью его проблемы, поскольку может не соответствовать политике дистра.

Так что либо собирайте пакет (тогда всё будет по путям, принятым в дистре),
либо конфирурируйте сборку таким образом, чтобы оно все свои пожитки держало в одном месте (тогда будет запускаться и из $HOME, условно говоря).
Пускай скрипят мои конечности.
Я - повелитель бесконечности...
Мой блог
Спасибо сказали:
Аватара пользователя
kerogaz
Сообщения: 916
ОС: CentOS,FreeBSD 12.1,Arch

Re: mpirun не находит библиотеку

Сообщение kerogaz »

Странно всё это. Например в CentOS пользователь спокойно ставит свой пакет из тарбола в /home/user и там прописывает этот путь в своем bash_profile

Код: Выделить всё

# User specific environment and startup programs

PATH=$PATH:/usr/lib64/openmpi-1.10/bin:.:$HOME/opt/lammps/src:$HOME/bin
Но самое странное то что пользователь удаленно по ssh прописал пути и они от него работают а когда он приходит на сервер и заходит к себе напрямую эти же пути не работают
Спасибо сказали:
Аватара пользователя
Hephaestus
Сообщения: 3728
Статус: Многоуважаемый джинн...
ОС: Slackware64-14.1/14.2

Re: mpirun не находит библиотеку

Сообщение Hephaestus »

kerogaz писал(а):
16.12.2019 09:12
Например в CentOS пользователь спокойно ставит свой пакет из тарбола в /home/user и там прописывает этот путь в своем bash_profile
Здесь нужно определяться, что такое "свой пакет". Если "пакет" - это действительно пакет (как дебиановский пакет, например) и собран с учетом политики дистра, и нормально установлен, то будет работать, почему бы и нет.
Если пакет - это тарбол с бинарниками, то скорее всего, оно уже собрано так, что можно распаковывать в любой каталог и тоже будет работать.
А вот если "пакет" - это тарбол с исходниками, который распаковали и тупо сделали ./configure && make && make install, то тут как повезет.
Совпадут пути, принятые в дистре, с путями, которые configure по умолчанию выставляет - значит, будет работать. Не совпадут - не будет работать.
kerogaz писал(а):
16.12.2019 09:12
Но самое странное то что пользователь удаленно по ssh прописал пути и они от него работают а когда он приходит на сервер и заходит к себе напрямую эти же пути не работают
Значит, где-то есть различия. Разные конфиги считываются при логине локально и удаленно. Разные значения переменных окружения. Разные настройки профиля.
Пускай скрипят мои конечности.
Я - повелитель бесконечности...
Мой блог
Спасибо сказали:
Аватара пользователя
kerogaz
Сообщения: 916
ОС: CentOS,FreeBSD 12.1,Arch

Re: mpirun не находит библиотеку

Сообщение kerogaz »

Получается что в Сентосе пути совпадают с путями пакета прикладных программ, установленного из тарбола https://lammps.sandia.gov а в Дебиане не совпадают. Здесь пользователь может прописать свои пути только по ssh и они работают а на если зайти с сервера эти же пути не работают

Код: Выделить всё

# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/bin" ] ; then
    PATH="$HOME/bin:$PATH"
fi

# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/.local/bin" ] ; then
    PATH="$HOME/.local/bin:$PATH"
fi
Спасибо сказали:
Аватара пользователя
Hephaestus
Сообщения: 3728
Статус: Многоуважаемый джинн...
ОС: Slackware64-14.1/14.2

Re: mpirun не находит библиотеку

Сообщение Hephaestus »

kerogaz писал(а):
16.12.2019 10:14
установленного из тарбола https://lammps.sandia.gov
А что Вы конкретно скачиваете на этой странице?
Там и тарболы с бинарниками есть, кроме всего прочего.
Пускай скрипят мои конечности.
Я - повелитель бесконечности...
Мой блог
Спасибо сказали:
Аватара пользователя
kerogaz
Сообщения: 916
ОС: CentOS,FreeBSD 12.1,Arch

Re: mpirun не находит библиотеку

Сообщение kerogaz »

Да и вообще, для рута по умолчанию путь в Debian 10

Код: Выделить всё

echo $PATH
/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games
а например adduser и много других нужных файлов лежат лишь в /sbin :yes3: Это вы считаете нормально? Я не мог понять поначалу почему нельзя добавить пользователя
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 21251
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: mpirun не находит библиотеку

Сообщение Bizdelnick »

kerogaz писал(а):
16.12.2019 10:41
для рута по умолчанию путь в Debian 10
Нет. Читаете и не понимаете, что Вам пишут. Что здесь, что на том форуме, куда Вы ссылку привели. И ман открыть ленитесь. Чего Вы от нас хотите?
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Аватара пользователя
Hephaestus
Сообщения: 3728
Статус: Многоуважаемый джинн...
ОС: Slackware64-14.1/14.2

Re: mpirun не находит библиотеку

Сообщение Hephaestus »

kerogaz писал(а):
16.12.2019 10:41
Это вы считаете нормально?
С учетом сказанного по Вашей ссылке на debianforum.ru, получается, что нормально.

Ну и Ваш вопрос о различиях локального и удаленного логина относится туда же: разные профили считываются.
Пускай скрипят мои конечности.
Я - повелитель бесконечности...
Мой блог
Спасибо сказали:
Аватара пользователя
kerogaz
Сообщения: 916
ОС: CentOS,FreeBSD 12.1,Arch

Re: mpirun не находит библиотеку

Сообщение kerogaz »

Hephaestus писал:
16.12.2019 12:15
kerogaz писал(а):
16.12.2019 10:41
Это вы считаете нормально?
С учетом сказанного по Вашей ссылке на debianforum.ru, получается, что нормально.

Чего ж тут нормального если нужно костыль ставить .Из форума Дебиана):

Код: Выделить всё

Решено
ПРАВИЛЬНЫЙ ПУТЬ: HIDE


export PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/home/user/bin"

echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/home/user/bin
У меня системы разные и Mint и CentOS и FreeBSD. Ни в одной из ни не надо ставить костыль чтобы добавить пользователя. Да и в Debian 9 всё было в порядке
Спасибо сказали:
Аватара пользователя
Hephaestus
Сообщения: 3728
Статус: Многоуважаемый джинн...
ОС: Slackware64-14.1/14.2

Re: mpirun не находит библиотеку

Сообщение Hephaestus »

kerogaz писал(а):
16.12.2019 15:35
Чего ж тут нормального если нужно костыль ставить.
Никаких костылей.
Локальный логин и удаленный логин - это разные вещи. При этом считываются разные конфигурационные файлы.
Повышение привилегий через "su с дефисом" и "su без дефиса" - это разные вещи.
Используйте правильный способ и всё будет нормально.
Добавлено (16:00):
kerogaz писал(а):
16.12.2019 15:35
Решено
ПРАВИЛЬНЫЙ ПУТЬ: HIDE


export PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/home/user/bin"

echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/home/user/bin
Это ещё откуда? По Вашей ссылке на debianforum.ru я такого не увидел. Зато там дан однозначный ответ (со ссылкой на источник), почему при разных способа получения прав рута получаются разные переменные окружения.
Это вполне нормально. И всё, что нужно сделать - учесть эту деталь.
Пускай скрипят мои конечности.
Я - повелитель бесконечности...
Мой блог
Спасибо сказали:
Аватара пользователя
kerogaz
Сообщения: 916
ОС: CentOS,FreeBSD 12.1,Arch

Re: mpirun не находит библиотеку

Сообщение kerogaz »

Решено
ПРАВИЛЬНЫЙ ПУТЬ: SHOW
« Последнее редактирование: 07 Август 2019, 04:27:50 от Authlogin »
Записан

Всё делается очень просто. Нажмите там (на сайте) SHOW и вы всё увидите собственным органом зрения. Век живи век учись . Вы наверное большой любитель персевераций :)
Спасибо сказали:
Аватара пользователя
Hephaestus
Сообщения: 3728
Статус: Многоуважаемый джинн...
ОС: Slackware64-14.1/14.2

Re: mpirun не находит библиотеку

Сообщение Hephaestus »

kerogaz писал(а):
16.12.2019 17:09
Всё делается очень просто.
Да. Я не увидел этот спойлер в последнем посте. Потому что ответ на вопрос содержится несколькими постами ранее.
Однако то, что предлагается под этим спойлером - совершенно излишне.
Всё, что Вам нужно - использовать правильный способ повышения привилегий.
Обрисуйте сценарий в общих чертах. Непонятно, в какой момент у Вас возникает затруднение.
kerogaz писал(а):
16.12.2019 17:09
Вы наверное большой любитель персевераций
Я даже не знаю, что это такое.
Пускай скрипят мои конечности.
Я - повелитель бесконечности...
Мой блог
Спасибо сказали: