я использовал $HOME/.local
в качестве приставки для установки некоторых приложений без root-доступа. Внутри один каталог $HOME/.local
что я не могу выполнить ls
команда:
[tuananh@server lib]$ ls
Segmentation fault
[tuananh@server lib]$ cd ..
[tuananh@server .local]$ ls lib
audit libform.a
libncurses.a libopenblas.so.0
...
[tuananh@server .local]$
Что могло быть причиной этого? uname -a
для моего сервера:
Linux server 2.6.32-358.2.1.el6.x86_64 #1 SMP Tue Mar 12 14:18:09 CDT 2013 x86_64 x86_64 x86_64 GNU/Linux
РЕДАКТИРОВАТЬ: Вывод LD_TRACE_LOADED_OBJECTS=1 ls
. Я нашел несколько библиотек, загруженных из этого каталога. Итак, что мне делать, чтобы найти причину проблемы?
linux-vdso.so.1 => (0x00007fff831b8000)
libselinux.so.1 => /lib64/libselinux.so.1 (0x0000003d94800000)
librt.so.1 (0x00007fdcde5a3000)
libcap.so.2 => /lib64/libcap.so.2 (0x0000003d95c00000)
libacl.so.1 => /lib64/libacl.so.1 (0x0000003d97c00000)
libc.so.6 (0x00007fdcde1f5000)
libdl.so.2 (0x00007fdcddff1000)
/lib64/ld-linux-x86-64.so.2 (0x0000003d92c00000)
libpthread.so.0 (0x00007fdcdddd3000)
libattr.so.1 => /lib64/libattr.so.1 (0x0000003d96800000)
Скорее всего, у вас установлена какая-то библиотека, которая загружается вместо системных, когда вы выполняете там команду, и она двоично несовместима с командами в вашей системе. Вероятно, это что-то связано с glibc или около того.
Вы можете подтвердить это, запустив LD_TRACE_LOADED_OBJECTS=1 ls
и исследует вывод, чтобы увидеть, включает ли он какие-либо файлы в текущем каталоге.