web-dev-qa-db-ja.com

uname出力の解釈:32または64ビット?

私はunameコマンドを使用して取得しました:

Linux rufusruffcutt 3.2.0-35-generic-pae #55-Ubuntu SMP Wed Dec 5 18:04:39 UTC 2012 i686 i686 i386 GNU/Linux

これはどういう意味ですか、これが32ビットまたは64ビットのカーネルバージョンかどうかはどうすればわかりますか?

2
user3891519

man unameから:

-a、--allすべての情報を次の順序で出力します。ただし、不明な場合は-pおよび-iを省略します。

   -s, --kernel-name
          print the kernel name

   -n, --nodename
          print the network node hostname

   -r, --kernel-release
          print the kernel release

   -v, --kernel-version
          print the kernel version

   -m, --machine
          print the machine hardware name

   -p, --processor
          print the processor type or "unknown"

   -i, --hardware-platform
          print the hardware platform or "unknown"

   -o, --operating-system
          print the operating system

だからあなたの場合:

Linux       rufusruffcutt 3.2.0-35-generic-pae #55-Ubuntu SMP Wed Dec 5 18:04:39 UTC 2012 i686 i686 i386 GNU/Linux      

つまり、i686のマシンハードウェア、プロセッサタイプi686、およびi386のハードウェアプラットフォームがあります。

Ubuntuビルドでは、i386は32ビットビルドです。 64ビットシステムではx86_64になります。

uname -iを使用すると、ハードウェアプラットフォームのみが提供されます。

5
Rmano

代わりに、getconfコマンドを使用できます。

getconf LONG_BIT

カーネルが32ビットか64ビットかを示します。

1
Maythux