На самом деле это единственный раздел про unix на этом форуме
Модераторы: /dev/random , Модераторы разделов
жучара
Сообщения: 950
ОС: астралинукс
Сообщение
жучара » 16.11.2022 23:10
Друзья! Вот папка с двумя исполняемыми файлами:
Shell
$ ls -l
итого 540
-rwxr-xr-x 1 userd user 532044 ноя 17 02:57 foo
-rwxr-xr-x 1 userd user 16608 ноя 17 02:54 hello
$
При выполнении этих файлов,
hello находится на ура, а про
foo врёт, что его нету:
Shell
$ ./hello
Hello, word!
$
$ ./foo
bash: ./foo: Нет такого файла или каталога
$
Как же мне запустить
foo ? Спасибо, кто откликнется.
debian 11
Я просто читаю маны.
/dev/random
Администратор
Сообщения: 5289
ОС: Gentoo
Сообщение
/dev/random » 16.11.2022 23:21
Это означает не то, что отсутствует foo, а то, что отсутствует что-то, необходимое для его загрузки в память для запуска. Может, сам foo (не в вашем случае), может, прописанный в нём ld.so, а может, что-то ещё. Выполните lddtree ./foo и посмотрите, всё ли необходимое присутствует. Особенно файл, указанный в поле "интерпретатор".
Bizdelnick
Модератор
Сообщения: 20799
Статус: nulla salus bello
ОС: Debian GNU/Linux
Сообщение
Bizdelnick » 17.11.2022 02:37
Если lddtree в системе не установлено, можно глянуть objdump -j .interp -s ./foo .
Пишите правильно:
в консоли
вк у́пе (с чем-либо)
в о бщем
воо бще в течение (часа)
новичо к
ню анс
по у молчанию приемле мо
проблем а
пробо вать
траф ик