No such file or directory ��� ������ linux

file: no such file or directory

То куда указывает линк — не существует. Что не понятно?

Проблема не воспроизводится

Версия: системы, утилит, файловой системы?

Неее, тогда бы написало что это broken symbolic link to
Про версию системы ничего не скажу, только то, что ядро там ещё .18, а file 4.17.

К системе есть только пользователь; у пользователя sbin не доступен даже на листинг (-x нету), lsb_release.d пустое.

uname? Тоже не воиспродится.

Есть версия, что шелл настроен показывать более короткие имена, если есть линка, а реальная директория уже kitchen.2011-06-04 . Реквестирую то же, но с pwd.

Интересно, а как у тебя первое `cd ../` сработало? Чудеса какие-то!

Когда ты делаешь chdir в симлинк, то полный путь является путем до симлинка + сам симлинк, однако, если ты хочешь сделать cd .. из этой директории (в которую входил по симлинку), читаться будет директория . которая является родительской для директории, на которую симлинк ссылается.

Т.е. по `cd ../` из твоей кухни ты должен был попасть в родительскую директорию для kitchen.2011-06-04, но никак не в хомяк!

Или у тебя kitchen.2011-06-04 тоже в хомяке лежит? Если да, то непонятна последняя ошибка.

Т.е. получается такая ситуация: для cd путь берется из кэша директорий (наверное, того же, которым можно управлять еще и при помощи pushd, popd), а вот ls кэшем не пользуется.

kitchen: symbolic link to `kitchen.2011-06-04′

судя по всему они в одной директории лежат

вот здесь покажи stat вместо file. И раньше тоже.

И да, это не какая-нить fat/ntfs/etc?

Тогда непонятно, почему

вангую также то, что буква c может быть русской, и могут быть невидимые символы.

кроме того, может быть запрет чтения ../

В этом случае доступ будет (если знать имя), но получить список файлов нельзя (а команде file такой доступ нужен, что-бы найти и проверить, куда симлинк направлен).

Linux 2.6.18-028stab101.1 #1 SMP Sun Jun 24 19:50:48 MSD 2012 x86_64 x86_64 x86_64 GNU/Linux
Древность.

Т.е., pwd чому-то отображает одно, а на деле другое, и возврат в директорию по-другому происходит, раз из симлинка возвращаемся. Забавно и непонятно.

P.s. мусорка однако жуткая.

две диры: А и Б. В А лежит симлинк С на Б/В. т.е.

Когда ты делаешь cd А/С, то перемещаешься в /Б/В на самом деле, т.е. из этой диры родитель будет /Б, где нет никакого /С. Не выйдет cd ../С из этой диры.

Читайте также:  Не исправлено настройки ip windows 10 что делать

Источник

Debian: No such file or directory — а файл есть

Здравствуйте, уважаемые. Скачал btsync (у меня arm, по ссылке Linux ARM тут), положил в /usr/bin и не могу запустить:

Как так и что с этим делать?

P.S. Тоже самое происходит, если переместить исполняемый файл, например, в домашний каталог.

P.S.S. Debian Jessie, вот такая железка.

chmod +x точно не поможет?

apparmor, selinux, noexec?

noexec на разделе

такое бывает когда исполняемый файл например предназначенный для 32 битной архитектуры пытаются запустить в 64-битной системе

А что покажет file btsync ? Необязательно на самой железке.

apparmor, selinux, chattr — это что? Что посмотреть?

В общем, похоже-таки несовместимость архитектур. Придётся пересобирать из исходников. Источник: http://otvety.google.ru/otvety/thread?tid=1e74bf1617bdb4b6

Try to run the following command

I had the same issue on Cubieboard.

Try to run the following command:

sudo ln -s /lib/arm-linux-gnueabihf/ld-linux.so.3 /lib/ld-linux.so.3

На Debian 7.6.0 (Linux 3.2.0-4-amd64 #1 SMP Debian 3.2.60-1+deb7u3 x86_64 GNU/Linux) столкнулся с той же проблемой. Для запуска 32-битного приложения может потребоваться пакет ia32-libs-i386. Дебиан по умолчанию не дает его установить из-за зависимостей. Решается таким образом:

sudo dpkg —add-architecture i386 sudo apt-get update sudo apt-get install ia32-libs-i386 (тянет за собой 60Мб зависимостей)

Источник

bash: ./programm: No such file or directory

Народ! Уже несколько раз попадал на такую фигню:

скачаешь что-нибудь,разархивируешь(всё ок),запускаешь программу и получаешь:

bash: ./programm: No such file or directory

Файл вроде нормальный: делаешь file programm и видишь:

./programm: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), stripped

Ну что это такое?Я просто не понимаю даже где проблема. в файле? во мне. не знаю

Помогите пожалуйста если кто знает!

Re: bash: ./programm: No such file or directory

Может я что-то недо понял, но вроде, когда скачиваешь тарболл, его нужно разархивировать и дать команды
./configure
make
make install

Re: bash: ./programm: No such file or directory

Не всегда именно их и менно в таком порядке. Но в файле INSTALL (реже — README) описано какие команды собирают/устанавливают пакет.

Re: bash: ./programm: No such file or directory

библиотек своих твой бинарник не находит скорее всего, то есть он
был слинкован на другой системе, а в твоей этих библиотек нету или
они лежат не там. посмотреть какие либы он хочет можно с помощью
ldd. ну а дальше по ситуации — ставить недостающее/делать линки или
еше чего. пример:
sasha@as255:

$ file `which links`
/usr/local/bin/links: ELF 64-bit LSB executable, Alpha (unofficial), version 1,
dynamically linked (uses shared libs), not stripped
sasha@as255:

$ ldd `which links`
libtiff.so.3 => /usr/lib/libtiff.so.3 (0x0000020000026000)
libjpeg.so.62 => /usr/lib/libjpeg.so.62 (0x0000020000120000)
libpng.so.2 => /usr/lib/libpng.so.2 (0x000002000008a000)
libz.so.1 => /usr/lib/libz.so.1 (0x000002000024a000)
libdl.so.2.1 => /lib/libdl.so.2.1 (0x000002000035e000)
libgpm.so.1 => /usr/lib/libgpm.so.1 (0x00000200000c8000)
libm.so.6.1 => /lib/libm.so.6.1 (0x0000020000462000)
libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x000002000059c000)
libc.so.6.1 => /lib/libc.so.6.1 (0x00000200006d8000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x0000020000000000)
libncurses.so.5 => /lib/libncurses.so.5 (0x000002000090c000)
sasha@as255:

$
если скажешь что за программа может чего поконкретнее скажу.

Re: bash: ./programm: No such file or directory

Итак по порядку:

первым двум — я не собираю программу,это бинарник.

Читайте также:  При переустановке windows настройки сети

ldd мне выдал вот такую вещь: ( :] )

/usr/bin/ldd: ./fragstats: No such file or directory

Программа — fragstats — подсчёт фрагов в Q2 из лога сервера и генерирование из этого HTML.Кстати — я с такой фигнёй сталкивался,когда пытался DOOM II для linux`a поставить.

ls ./fragstats -rwxr-xr-x 1 root root 66928 Oct 12 1998 fragstats

Если кому интересно — пишите мыло,вышлю архив,он мелкий(59,463 bytes)

Если бы библиотек не было — он бы наверно при запуске орал,что найти не может..

открываешь в редакторе — с виду обычный бинарник.

Re: bash: ./programm: No such file or directory

Всё просто. Программа пытается открыть файл, которого нет.

Re: bash: ./programm: No such file or directory

Не понимаю! Когда я пытаюсь запустить программу,мне bash говорит что этой программы нет.

Мне кажется что если бы _программа_ пыталась открыть файл,которого нет,то сообщение бы шло от программы,а не от bash. или как ?

Re: bash: ./programm: No such file or directory

Источник

./configure: No such file or directory

Здравствуйте! Я чайник, первый раз пытаюсь поставить расширение для php 5.2.5 на Mac OS X 10.5, стоит Apache 2.2.8. При наборе в терминале ./configure выдает:

-bash: ./configure: No such file or directory

Я так понимаю, эта директива к апачу относится, может быть, из какой-нибудь папки надо запускать? Подскажите, пожалуйста, как ее использовать? Или где про эту ./configure можно почитать?

15 ответов

configure — это конфигурационный bash скрипт, создаваемый обычно autoconf, подготавливающий сборку из исходников.

Пишет он, что нет заданного в нем каталога или файла. Обычно он еще пишет имя этого файла/каталога, но так как тут пусто возможно у вас не задан какой то каталог в этом скрипте.

Не ставил ни когда расширения для php, они всегда собираются из исходников?

Здравствуйте! Я чайник, первый раз пытаюсь поставить расширение для php 5.2.5 на Mac OS X 10.5, стоит Apache 2.2.8. При наборе в терминале ./configure выдает:

-bash: ./configure: No such file or directory

Я так понимаю, эта директива к апачу относится, может быть, из какой-нибудь папки надо запускать? Подскажите, пожалуйста, как ее использовать? Или где про эту ./configure можно почитать?

хм. с учетом вышенаписанного — команда pwd что выдает? если сделать ls — среди выведенных файлов есть файл с таким именем?

БРЕД.
Пишет он что не смог найти такой файл (configure) в текущем каталоге.

Да, похоже что так., если выводиться только это строка

так таки да 🙂
Это ж вывод баша а не самого скрипта конфигурации.
Автор скорей всего то ли не знал, то ли забыл о том что ./configure — трактуется как — «запустить команду configure из текущего каталога«. Т.е. документацию он прочел, где было написано о том, что выполнить команду надо так — а о том что «после распаковки перейдите в директорию, куда вы распаковали» то ли не прочел, то ли написано не было.

В директорию, куда распаковался арихив, я перешла. Команда pwd выдает следующее:

/users/imac/downloads/uploadprogress-1.0.1
-это как раз та самая директория.

Читайте также:  Как проверить карантин антивируса windows

НО! до этого, при запуске phpize выдал вот что:

iMac:apache2 imac$ cd /users/imac/downloads/uploadprogress-1.0.1
iMac:uploadprogress-1.0.1 imac$ phpize
grep: /usr/include/php/main/php.h: No such file or directory
grep: /usr/include/php/Zend/zend_modules.h: No such file or directory
grep: /usr/include/php/Zend/zend_extensions.h: No such file or directory
Configuring for:
PHP Api Version:
Zend Module Api No:
Zend Extension Api No:
Cannot find autoconf. Please check your autoconf installation and the $PHP_AUTOCONF
environment variable is set correctly and then rerun this script.

Пытаюсь установить uploadprogress extension. у меня переменной $PHP_AUTOCONF нет. Подскажите, что это за переменная и откуда ее взять?

Источник

Linux, переименуйте файлы с ошибкой bash ‘no such file or directory’

Я пытаюсь добавить префикс ко всем файлам, которые не являются файлами .sh в текущем каталоге, и во все подкаталоги, используя bash , используя find .

Проблема в том, что я получаю сообщение об ошибке:

Мой однострочный текст:

Я тоже пробовал xargs с rename :

Но у меня такая же ошибка. Что не так? Заранее спасибо!

4 ответа

  • .*/ соответствует последнему / в имени файла
  • используя ретроспективный просмотр \K , мы можем избежать необходимости в группе захвата в этом случае

Удалите параметр -n из rename , как только он покажет правильное переименование

find возвращает путь от . до файла, поэтому каждый результат find начинается с ./ , когда вы начинаете поиск в текущем каталоге. В результате ваше новое имя файла будет PRE_./test.txt , которое находится test.txt в каталоге с именем PRE_. . Поскольку нет каталога с именем PRE_. , mv не может переместить test.txt в этот каталог, поэтому выдает сообщение об ошибке, которое вы видели.

Если вы переименовываете только файлы в текущем каталоге, а не подкаталоги, вы можете просто использовать bash:

Спасибо этому ответу за конструкцию !(pattern) в bash, доступную при включенном extglob . Он возвращает все имена файлов, не соответствующих pattern .

Для файлов во всех подкаталогах, используйте:

Спасибо за этот ответ для globstar. % и ## разделяют компоненты пути и вставляют PRE_ в нужное место в начале имени файла.

Изменить [[ -d «$f» ]] || в обоих вышеупомянутых случаях предотвращает переименование каталогов в цикле.

Хорошая практика — не использовать <> непосредственно в аргументе для sh -c , а передавать его значение в качестве аргумента. Затем вы можете использовать операции расширения параметра как обычно, чтобы изменить его значение. Здесь мы разделим аргумент на его компоненты каталога и имени файла, а затем повторно соберем их, включая префикс имени файла PRE_ , чтобы использовать его в качестве аргумента для mv .

(Это лишь небольшое изменение по сравнению с вашей первоначальной попыткой; вы передавали <> в качестве аргумента, но не использовали его. Вместо этого вы «встраивали» значение непосредственно в строку, переданную в sh . )

Вы также можете использовать форму -exec + , чтобы минимизировать количество вызовов sh , передав несколько имен файлов и перебирая их в оболочке. (Это начинает сходиться с чистым решением bash , предложенным @cxw, но с сохранением совместимости с POSIX, а также с bash 3.x):

Изменить <> в обоих вышеупомянутых случаях предотвращает переименование каталогов в цикле.…

Проблема заключалась в ./ перед именами файлов.

Источник

Оцените статью