[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Как правильно узнать разрядность системы?



Здравствуйте.

Возникла необходимость в скриптах использовать разрядность системы.
Всё бы ничего - есть uname -r, есть arch и обычно они не врут,
но есть ситуация когда они говорят не то, что есть на самом деле.
Я понимаю что они показывают разрядность _машины_ или _ядра_,
но мне нужна разрядность _системы_.

Есть i686-система с ядром amd64
# uname -a
Linux bart-home 3.13-1-amd64 #1 SMP Debian 3.13.5-1 (2014-03-04) x86_64
GNU/Linux
# arch
x86_64
Но при этом
# file /sbin/init
/sbin/init: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV),
dynamically linked (uses shared libs), for GNU/Linux 2.6.26,
BuildID[sha1]=0x6f99a4bee43009171bce9fa5457099aafaf2f753, stripped
# file /bin/bash
/bin/bash: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV),
dynamically linked (uses shared libs), for GNU/Linux 2.6.26,
BuildID[sha1]=0x6c2d022503edd4e409032f33bffbcb66d2546ea5, stripped

И запускать бинарники x86_64 эта система отказывается.
Как правильно узнать разрядность системы в такой конфигурации?
Спасибо.

-- 
Best regards,
Mikhail
-
WWW: http://www.antmix.ru/
XMPP: antmix@stopicq.ru

Attachment: signature.asc
Description: OpenPGP digital signature


Reply to: