Where does Linux uname -m
get its information from?
I am asking because I have a machine that is 64-bits for sure, and uname -a
and uname -r
confirm that, but uname -m
prints i686
. Where does it get that from??
cpulinux
Where does Linux uname -m
get its information from?
I am asking because I have a machine that is 64-bits for sure, and uname -a
and uname -r
confirm that, but uname -m
prints i686
. Where does it get that from??
Best Answer
You have to take into account that
uname
prints information from your software and hardware. Your 64-bit machine could be running a 32-bit Linux distribution.uname -a
prints this information (in order): kernel-name, nodename, kernel-release, kernel-version, machine, processor, hardware-platform, operating-system. If you see 64 bit hardware and i686 kernel, then you have installed a 32-bits Linux kernel.For answering your whole question: uname is a system call and this command line tool is using it. You can check that easily runing
strace uname -a