1

Захожу на сервер по ssh, при этом команда не работает ls ни под каким пользователем, включая рута. Выдает такой ответ bash: /bin/ls: No such file or directory
Команда whereis ls выдает ls: /bin/ls /usr/share/man/man1/ls.1.gz

Пробовал гуглить, но ничего полезного найти не удалось. При перезагрузке /etc/init.d/networking restart выдает уведомление, что ssh-server не поднялся, точно не помню (буду дома, уточню).
Кто нибудь знает в чем может быть дело?

2 (14.12.2011 15:39:31 отредактировано i2ks)

i2ks пишет:

Захожу на сервер по ssh, при этом команда не работает ls ни под каким пользователем, включая рута. Выдает такой ответ bash: /bin/ls: No such file or directory
Команда whereis ls выдает ls: /bin/ls /usr/share/man/man1/ls.1.gz
Пробовал гуглить, но ничего полезного найти не удалось. При перезагрузке /etc/init.d/networking restart выдает уведомление, что ssh-server не поднялся, точно не помню (буду дома, уточню).
Кто нибудь знает в чем может быть дело?

случайно не chroot'ишься?
показывай: stat /bin/ls
а потом: strace /bin/ls

It is good day to die ...
MS Windows 10
Заметки о главном...

3

stat /bin/ls

  File: `/bin/ls'
  Size: 36692         Blocks: 72         IO Block: 4096   regular file
Device: 902h/2306d    Inode: 52168445    Links: 1
Access: (0755/-rwxr-xr-x)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2011-12-13 14:51:02.000000000 +0100
Modify: 2003-07-15 09:44:05.000000000 +0200
Change: 2011-12-13 15:01:46.000000000 +0100

strace /bin/ls

bash: strace: command not found

4

julpierto пишет:
bash: strace: command not found
aptitude install strace

  ah

История показывает, что во всем новом обычно кроется какой-то подвох.
Классическая ошибка, которую совершают проектировщики
абсолютно надежных систем, - недооценка изобретательности клинических идиотов.

5

julpierto пишет:

Выдает такой ответ bash: /bin/ls: No such file or directory

библиотек возможно каких-то не хватает...

Карусель разнесло по цепочке за час
Всех известий — конец
Да, весна началась!
(всё к лицу подлецу, как родному отцу, не рассказывай, батя, и так всё пройдёт)

6

julpierto пишет:

bash: /bin/ls: No such file or directory

... или битность не соответствует (32/64), что равносильно "не хватает библиотек".

7 (14.12.2011 22:23:53 отредактировано julpierto)

strace /bin/ls

execve("/bin/ls", ["/bin/ls"], [/* 18 vars */]) = -1 ENOENT (No such file or directory)
dup(2)                                  = 3
fcntl(3, F_GETFL)                       = 0x8002 (flags O_RDWR|O_LARGEFILE)
fstat(3, {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 0), ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f100240e000
lseek(3, 0, SEEK_CUR)                   = -1 ESPIPE (Illegal seek)
write(3, "strace: exec: No such file or di"..., 40strace: exec: No such file or directory
) = 40
close(3)                                = 0
munmap(0x7f100240e000, 4096)            = 0
exit_group(1)                           = ?

Cначала все работало, потом поставил:

apt-get install ffmpeg
apt-get install imagemagick
deb ftp://ftp.debian-multimedia.org/ squeeze main
aptitude update
aptitude install debian-multimedia-keyring


и видимо после этого слетела ls  ac

8

ldd /bin/ls
readelf -h /bin/ls
ничего интересного не скажут?

9 (15.12.2011 00:38:19 отредактировано julpierto)

ldd /bin/ls

not a dynamic executable

readelf -h /bin/ls

ELF Header:
  Magic:   7f 45 4c 46 01 01 01 00 00 00 00 00 00 00 00 00 
  Class:                             ELF32
  Data:                              2's complement, little endian
  Version:                           1 (current)
  OS/ABI:                            UNIX - System V
  ABI Version:                       0
  Type:                              EXEC (Executable file)
  Machine:                           Intel 80386
  Version:                           0x1
  Entry point address:               0x8049158
  Start of program headers:          52 (bytes into file)
  Start of section headers:          35692 (bytes into file)
  Flags:                             0x0
  Size of this header:               52 (bytes)
  Size of program headers:           32 (bytes)
  Number of program headers:         6
  Size of section headers:           40 (bytes)
  Number of section headers:         25
  Section header string table index: 24

10

julpierto пишет:

Class:                             ELF32

Если система 64-битная, то это оно и есть,
uname -a
что говорит?

11

bormant, система 64-битная (Debian Squeeze 6.0.3)
Сейчас (на работе) не могу выдать листинг uname -a, вечером напишу.

12

julpierto пишет:

bormant, система 64-битная (Debian Squeeze 6.0.3)
Сейчас (на работе) не могу выдать листинг uname -a, вечером напишу.

Это ваш личный сервер? или vps/vds? может что хостер намутил. Так как вернуть на место все, будет проблематично.

It is good day to die ...
MS Windows 10
Заметки о главном...

13

Это сервер хостера, немецкий - там все качественно должно быть.
Возможно ошибка появилась после того, как я добавлял пользователей директивой useradd user1 -d /sites/user1 -g user1 -s /bin/false то есть без оболочки (/bin/bash), но по-моему я не добавлял root`a, почему же тогда от него не выполняется ls?
Можно конечно пойти на крайние меры и переставить OC, но хотелось бы найти решение "малой кровью".

14

julpierto пишет:

система 64-битная (Debian Squeeze 6.0.3)

о как. Оно. Пакет coreutils у вас почему-то 32х битный. Почему? Покажите

 Консоль:
# aptitude show -v coreutils

(ls как раз и входит в этот пакет. Как и ещё множество нужных утилит)

Карусель разнесло по цепочке за час
Всех известий — конец
Да, весна началась!
(всё к лицу подлецу, как родному отцу, не рассказывай, батя, и так всё пройдёт)

15

julpierto пишет:

Возможно ошибка появилась после того, как я добавлял пользователей директивой useradd user1 -d /sites/user1 -g user1 -s /bin/false то есть без оболочки (/bin/bash), но по-моему я не добавлял root`a, почему же тогда от него не выполняется ls?

от этого содержимое /bin никак не могло измениться.

julpierto пишет:

Можно конечно пойти на крайние меры и переставить OC, но хотелось бы найти решение "малой кровью".

попробуйте удалить coreutils и поставить по новой. Но в данной ситуации я не могу дать никаких гарантий - с системой случилось нечто странное.

Карусель разнесло по цепочке за час
Всех известий — конец
Да, весна началась!
(всё к лицу подлецу, как родному отцу, не рассказывай, батя, и так всё пройдёт)

16

drBatty, спасибо. Вечером попробую, отпишусь.

17 (15.12.2011 22:07:07 отредактировано julpierto)

aptitude show -v coreutils

Package: coreutils                       
Essential: yes
State: installed
Automatically installed: no
Version: 8.5-1
Priority: required
Section: utils
Maintainer: Michael Stone <mstone@debian.org>
Uncompressed Size: 14.2 M
Architecture: amd64
Compressed Size: 5,102 k
Filename: pool/main/c/coreutils/coreutils_8.5-1_amd64.deb
MD5sum: 77aff0d952e7e7a29405932f8f805f15
Archive: stable, stable, now
PreDepends: libacl1 (>= 2.2.11-1), libattr1 (>= 2.4.41-1), libc6 (>= 2.6), libselinux1 (>= 1.32)
Conflicts: timeout
Replaces: mktemp, timeout
Description: GNU core utilities
 This package contains the basic file, shell and text manipulation utilities which are expected to exist on every operating system. 
 
 Specifically, this package includes: arch base64 basename cat chcon chgrp chmod chown chroot cksum comm cp csplit cut date dd df dir dircolors dirname du
 echo env expand expr factor false flock fmt fold groups head hostid id install join link ln logname ls md5sum mkdir mkfifo mknod mktemp mv nice nl nohup
 nproc od paste pathchk pinky pr printenv printf ptx pwd readlink rm rmdir runcon sha*sum seq shred sleep sort split stat stty sum sync tac tail tee test
 timeout touch tr true truncate tsort tty uname unexpand uniq unlink users vdir wc who whoami yes
Homepage: http://gnu.org/software/coreutils

Листинг показывает Architecture: amd64 как должно быть, а вот насчет этого Automatically installed: no что скажете?

18

julpierto пишет:

Automatically installed: no

это к делу не относится. Подробнее см. здесь: http://www.opennet.ru/tips/info/2543.shtml

julpierto пишет:

Листинг показывает Architecture: amd64

значит ls установленная с пакетом НЕ соответствует той, что на самом деле.
попробуйте действительно удалить, и поставить по новой. У вас этот пакет (данный набор утилит) повреждён (откуда-то слева были установленные неправильные программы). Сдаётся мне, что хуже всё равно не будет  ac
Возможно, переустановить всё будет быстрее.

Карусель разнесло по цепочке за час
Всех известий — конец
Да, весна началась!
(всё к лицу подлецу, как родному отцу, не рассказывай, батя, и так всё пройдёт)

19 (15.12.2011 23:49:57 отредактировано julpierto)

drBatty, попробовал удалить coreutils
# apt-get remove coreutils

Reading package lists... Done
Building dependency tree       
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 apache2 : Depends: apache2-mpm-worker (= 2.2.16-6+squeeze4) but it is not going to be installed or
                    apache2-mpm-prefork (= 2.2.16-6+squeeze4) but it is not going to be installed or
                    apache2-mpm-event (= 2.2.16-6+squeeze4) but it is not going to be installed or
                    apache2-mpm-itk (= 2.2.16-6+squeeze4) but it is not going to be installed
           Depends: apache2.2-common (= 2.2.16-6+squeeze4) but it is not going to be installed
 debconf : PreDepends: perl-base (>= 5.6.1-4) but it is not going to be installed
 php5 : Depends: libapache2-mod-php5 (>= 5.3.3-7+squeeze3) but it is not going to be installed or
                 libapache2-mod-php5filter (>= 5.3.3-7+squeeze3) but it is not going to be installed or
                 php5-cgi (>= 5.3.3-7+squeeze3) but it is not going to be installed
 php5-sqlite : Depends: phpapi-20090626
 php5-xsl : Depends: phpapi-20090626
E: Broken packages

Не удаляет
# aptitude reinstall coreutils

The following packages will be REINSTALLED:
  coreutils 
0 packages upgraded, 0 newly installed, 1 reinstalled, 0 to remove and 0 not upgraded.
Need to get 5,102 kB of archives. After unpacking 0 B will be used.
Get:1 http://mirror.hetzner.de/debian/packages/ squeeze/main coreutils amd64 8.5-1 [5,102 kB]
Fetched 5,102 kB in 0s (31.9 MB/s)
(Reading database ... 88532 files and directories currently installed.)
Preparing to replace coreutils 8.5-1 (using .../coreutils_8.5-1_amd64.deb) ...
Unpacking replacement coreutils ...
dpkg: error processing /var/cache/apt/archives/coreutils_8.5-1_amd64.deb (--unpack):
 unable to create `/bin/mktemp.dpkg-new' (while processing `./bin/mktemp'): Permission denied
configured to not write apport reports
                                      dpkg-deb: subprocess paste killed by signal (Broken pipe)
Errors were encountered while processing:
 /var/cache/apt/archives/coreutils_8.5-1_amd64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)
A package failed to install.  Trying to recover:

Тоже ничего

20

julpierto пишет:

Тоже ничего

даже и не знаю что сказать - основные утилиты не работают. Проще переставить будет ИМХО. Или ждите кого-нибудь более знающего...

Карусель разнесло по цепочке за час
Всех известий — конец
Да, весна началась!
(всё к лицу подлецу, как родному отцу, не рассказывай, батя, и так всё пройдёт)