У моєму новому VPS працює Debian 5.0 (bash 3.2.29), і деякі команди, здається, відсутні. Наприклад, ps
команди тут немає, також немає ls
(але dir працює). Чи не вистачає пакету, чи яка угода?
:~# type ps
ps is hashed (/bin/ps)
:~# ps
-bash: /bin/ps: No such file or directory
:~# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
:~# /bin/ps
-bash: /bin/ps: No such file or directory
Редагувати: Більше інформації від коментарів:
- Це 64 біт
- Не знаю жодної інформації про фактичну установку.
- Це віртуальна машина під управлінням virtuozzo & plesk
- readelf показує, що це
/bin/ps
і/bin/ls
є 32-бітним. І немає 32-бітового/lib/ld-linux-so.2
. Як це сталося? Помилка встановлення чи що?
Для завершення:
# file /bin/ps
/bin/ps: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV),
dynamically linked (uses shared libs), for GNU/Linux 2.0.0, stripped
# file /bin/ls
/bin/ls: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV),
dynamically linked (uses shared libs), for GNU/Linux 2.0.0, stripped
# uname -mrvs
Linux 2.6.18-028stab069.6 #1 SMP Wed May 26 18:10:06 MSD 2010 x86_64
# readelf -l /bin/ps
Elf file type is EXEC (Executable file)
Entry point 0x8049040
There are 6 program headers, starting at offset 52
Program Headers:
Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align
PHDR 0x000034 0x08048034 0x08048034 0x000c0 0x000c0 R E 0x4
INTERP 0x0000f4 0x080480f4 0x080480f4 0x00013 0x00013 R 0x1
[Requesting program interpreter: /lib/ld-linux.so.2]
LOAD 0x000000 0x08048000 0x08048000 0x071fa 0x071fa R E 0x1000
LOAD 0x007200 0x08050200 0x08050200 0x005a0 0x01e5c RW 0x1000
DYNAMIC 0x0076f8 0x080506f8 0x080506f8 0x000a8 0x000a8 RW 0x4
NOTE 0x000108 0x08048108 0x08048108 0x00020 0x00020 R 0x4
Section to Segment mapping:
Segment Sections...
00
01 .interp
02 .interp .note.ABI-tag .hash .dynsym .dynstr
.gnu.version .gnu.version_r .rel.got .rel.bss .rel.plt
.init .plt .text .fini .rodata
03 .data .got .dynamic .bss
04 .dynamic
05 .note.ABI-tag
Рішення
Постачальник послуг перевстановив систему. Це було напевно щось фанкі. Споживання пам'яті також знизилося з приблизно 750 МБ до 120 МБ.type ps
він працює, він повертаєтьсяps is /bin/ps
echo /bin/?s
. Якщо вони є, заберіть файли /bin/ls
та /bin/dir
(або де вони dir
є) на вашу машину та огляньте їх (для початку, запустіть file
їх та повідомте про вихід). Перевірте дозволи на файли (з dir -l /bin/?s
).
echo $HOSTTYPE
показує і uname -mrvs
чи uname
працює? Яке рішення для віртуалізації використовує VPS? Чи надає вона систему безпеки, наприклад SELinux? Чи бачите ви в цьому плані щось інше, що могло б мати відношення до VPS?
echo $PATH
повертає? чи працює дзвінок/bin/ps
безпосередньо?