it-swarm-pt.tech

/ bin / ls não encontrado, embora exista!

Este é um servidor rodando ubuntu 8.04 server, alguma idéia do que está acontecendo?

# ls
-bash: /bin/ls: No such file or directory
# /bin/ls
-bash: /bin/ls: No such file or directory
# stat /bin/ls
  File: `/bin/ls'
  Size: 39696       Blocks: 80         IO Block: 4096   regular file
Device: 803h/2051d  Inode: 1073910881  Links: 1
Access: (0755/-rwxr-xr-x)  Uid: (  122/ UNKNOWN)   Gid: (  114/Debian-exim)
Access: 2008-06-05 15:07:22.491486000 -0700
Modify: 2008-04-03 23:44:23.000000000 -0700
Change: 2009-05-21 07:42:45.715736917 -0700
#:/bin# dd if=/bin/ls of=/dev/null 
77+1 records in
77+1 records out
39696 bytes (40 kB) copied, 0.000157908 s, 251 MB

Não tenho ideia de como conseguiu o GID e UID estranho, nenhum deles existe em/etc/passwd

Recentemente, executei a atualização ubuntu NTP para consertar uma falha de segurança.

Atualização: acabei de notar que/bin/netstat tem o mesmo problema

Atualização: parece que fiz root, executei o rkhunter e ele encontrou um kit ...

10
Andrew Cholakian

Ter ls e netstat quebrados em um sistema parece algo que um hacker faria para evitar a detecção. Normalmente, eles tentam corrigir essas ferramentas para evitar a detecção de ferramentas e backdoors que instalaram ou criaram. Você pode querer considerar a reinicialização para um livecd e então verificar os md5sums desses arquivos.

Se o sistema estiver comprometido, verifique estas perguntas para obter alguns conselhos sobre como lidar com a situação.

12
Zoredache

Você pode obter o erro 'Arquivo ou diretório inexistente' quando o vinculador dinâmico não consegue encontrar os objetos compartilhados apropriados.

Corre:

ldd /bin/ls

e verifique a saída.

Também me parece suspeito, por falar nisso. Eu me preocuparia se o seu sistema fosse comprometido.

2
MikeyB

Isso não está especificamente relacionado ao seu problema, mas se um sistema não tiver /bin/ls instalado (ou seja, alguém o excluiu), você pode usar:

echo *
2
Gavin McTaggart

Aqui está a saída de stat/bin/ls no meu servidor Ubuntu 8.04. Tamanho diferente, então eu acho que o arquivo foi corrompido ou substituído.

# stat /bin/ls
  File: `/bin/ls'
  Size: 106176          Blocks: 216        IO Block: 4096   regular file
Device: ca00h/51712d    Inode: 3631        Links: 1
Access: (0755/-rwxr-xr-x)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2009-05-21 13:31:51.000000000 -0400
Modify: 2008-04-04 02:44:23.000000000 -0400
Change: 2008-05-29 17:14:25.000000000 -0400
1
Ben Williams

Às vezes, quando você navega para uma pasta em que seu ambiente não usa bash, você recebe essa massagem.

Para ter os comandos ls, ll, você precisa executar o comando:

bash

Então você pode usar ls e ll

0
RefaelJan