Uname - a '로, 이를 통해' 키보드 입력 시 다음 출력입니다.
Linux mars 2.6.9-67.0.15.ELsmp #1 SMP Tue Apr 22 13:50:33 EDT 2008 i686 i686 i386 GNU/Linux
이를 통해 32 비트 또는 64 비트 OS 가 있는 것을 알 수 있습니까?
이 때 유용합니다 먹어서나 '구성' 스크립트, 예를 들면 다음과 같습니다. 내가 어떤 아키텍처입니다 빌딩?
종료기 'uname - m'. 이는 정보기술 (it) 시스템 '과' 의 파선-짧은 uname - 출력입니다:
x86_64 ==> 64-bit kernel
i686 ==> 32-bit kernel
, ) 가 아닌 cpu 의 리눅스 커널 있지만 그렇지 않을 경우, 다음과 같이 입력할 수 있습니다.
cat /proc/cpuinfo
또는:
grep flags /proc/cpuinfo
Go-dell " flags"; 매개변수에서 다양한 값을 확인할 수 있습니다. [/ proc / 스푸린포 는 기로 무엇을 의미합니까?] " 참조. 2 ". 이름이 'lm 살해하였나이다, 다른 하나는': '롱 모드' (x86-64: 즉, amd64, 소트트웨어용 인텔 64 비트 지원)
lm ==> 64-bit processor
또는 사용하여 '리셰프' (언급한 바와 같이 아래 에서 롤프 작센), 'sudo 없이' (just for 그레핑 cpu 폭):
lshw -class cpu|grep "^ width"|uniq|awk '{print $2}'
실행 중인 경우 64 비트 플랫폼으로 있는 것과 비슷한 com/go/lrvid4005_ps_kr x86_64 또는 아주 출력입니다 [uname] [1] - a
특정 컴퓨터 하드웨어 이름 실행하십시오 구해
uname -m
호출할 수도 있습니다
getconf LONG_BIT
되돌려줍니다 있는 32 비트 또는 64
[1]: http://manpages.ubuntu.com/manpages/intrepid/man1/uname.html " uname";
나도 궁금 우리 섹스한거요 특별히 소프트웨어를 구축하기 위한 데비안 (설치된 데비안 시스템을 적용할 수 있는 32 비트 버전과 32 비트 커널, 도서관, etc., 또는 수 있으며 64 비트 버전을 위한 아닌 물건을 컴파일됨 64-비트 32 비트 호환 모드).
데비안 패키지는 스스로 알아야 할 때 어떤 이들은 실제로 숨겨요 만들기 위한 아키텍처입니다 (당연히) 등 모두 갖춘 상태에서 메타데이터입니다 플랫폼 아키텍처의 한 패키징에서는 있어 다른 패키징에서는 도구 및 스크립트를 사용할 수 있는 도구로 출력입니다 정보기술 (it) 라는 dpkg 아키텍처입니다 . # 39 에 대한 어떤 it& 구성했는지 모두 포함됩니다 구축할 수 있을 뿐만 아니라, 현재 호스트입니다. (일반적으로 어쨌든요 같습니다) 출력은 64 비트 컴퓨터에서:
DEB_BUILD_ARCH=amd64
DEB_BUILD_ARCH_OS=linux
DEB_BUILD_ARCH_CPU=amd64
DEB_BUILD_GNU_CPU=x86_64
DEB_BUILD_GNU_SYSTEM=linux-gnu
DEB_BUILD_GNU_TYPE=x86_64-linux-gnu
DEB_HOST_ARCH=amd64
DEB_HOST_ARCH_OS=linux
DEB_HOST_ARCH_CPU=amd64
DEB_HOST_GNU_CPU=x86_64
DEB_HOST_GNU_SYSTEM=linux-gnu
DEB_HOST_GNU_TYPE=x86_64-linux-gnu
그 중 한 값을 기준으로 com/go/4e6b330a_kr 아니면 그냥 인쇄할 수 있습니다 테스트 명령줄이 옵션을 통해 dpkg - 아키텍처입니다.
난 아무 생각이 어떻게 dpkg 아키텍처입니다 추론, 설명서용이나 storagex 의 소스 코드를 아키텍처입니다 확장하지만 보일 수 있다 (일반적으로 펄 (perl) 시스템 및 많은 dpkg dpkg 아키텍처입니다 있다).
최근 멀티라크 시스템을 사용할 수 있도록 쉽게 이해할 수 없는 겁니다. 기본 목표로 컴파일러와의 찾을 수 있습니다.
v $ cc -;;;; 1 < pre> 2> & 그렙 ^ 대상 대상: x86_64-pc-linux-gn < /pre>;
Hello world 는 컴파일하십시오 시도해 볼 수 있습니다.
<, 에코 & # 39, int main () {0, $ 복귀하십시오 pre>. } & # 39. 참조 - c - - o 푸 x foo $ 파일 foo. ELF 64-비트 LSB executable, x86-64, 버전 1 (시스프), 동적 링크, 통역, GNU / 리눅스 2.6.32 의 /lib64/ld-linux-x86-64.so.2 부일디드 [sha1] = b114e029a08abfb3c98db93d3dcdb7435b5bba0c 빼앗아 아닌, < /pre>;
이와 관련하여 정답은 제콘프 LONG_BIT" ";.
내가 작성했습니까 C& # 39, & # 39, 그렇게 할 수 있는 간단한 함수를.
/*
* check_os_64bit
*
* Returns integer:
* 1 = it is a 64-bit OS
* 0 = it is NOT a 64-bit OS (probably 32-bit)
* < 0 = failure
* -1 = popen failed
* -2 = fgets failed
*
* **WARNING**
* Be CAREFUL! Just testing for a boolean return may not cut it
* with this (trivial) implementation! (Think of when it fails,
* returning -ve; this could be seen as non-zero & therefore true!)
* Suggestions?
*/
static int check_os_64bit(void)
{
FILE *fp=NULL;
char cb64[3];
fp = popen ("getconf LONG_BIT", "r");
if (!fp)
return -1;
if (!fgets(cb64, 3, fp))
return -2;
if (!strncmp (cb64, "64", 3)) {
return 1;
}
else {
return 0;
}
}
환경 변수를 사용하여 확인할 수도 있습니다.
echo $HOSTTYPE
결과:.
i386 > '-'; 32 비트
'-' x86_64 >. 64 비트
추출한: http://www.sysadmit.com/2016/02/linux-como-saber-si-es-32-o-64-bits.html
남긴 shift+ctrl 경우 32 비트 및 32 비트 시스템이 확보하십시오 1, 1. Shift+ctrl 경우 64 비트 및 64 남긴 확보하십시오 시스템이 1, 1.
즉,
"만약 echo $ ((, 32tb 1< <)) 는 1 그런후에도 너회의 시스템이 32 비트 '.
"만약 echo $ ((1<, <, 64)) 는 1 그런후에도 너회의 시스템이 64 비트 '.
간단한 스크립트입니다 프레젠테이션이든 64 비트 또는 32 비트
if $(getconf LONG_BIT | grep '64'); then
echo "64 bit system"
else
echo "32 bit system"
fi