Linux下查看系统信息:CPU架构、位数、系统版本、内存信息等信息

 linux  Linux下查看系统信息:CPU架构、位数、系统版本、内存信息等信息已关闭评论
11月 192019
 

linux机器,网上下载软件时经常会看到软件包分成了32位/64位/x86/arm等不同的包,那自己的服务器适用哪个包?服务器具体的架构/位数可以通过什么命令查询呢?

 

#linux 操作系统的位数查看:

[[email protected] ~]$ getconf LONG_BIT
64

#查看cpu信息

[[email protected] ~]$ cat /proc/cpuinfo
processor : 0
vendor_id : GenuineIntel
cpu family : 6
model : 79
model name : Intel(R) Xeon(R) CPU E5-2686 v4 @ 2.30GHz
stepping : 1
microcode : 0xb000038
cpu MHz : 2300.141
cache size : 46080 KB
physical id : 0
siblings : 2
core id : 0
cpu cores : 2
apicid : 0
initial apicid : 0
fpu : yes
fpu_exception : yes
cpuid level : 13
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx rdtscp lm constant_tsc rep_good nopl xtopology cpuid pni pclmulqdq ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm cpuid_fault invpcid_single pti fsgsbase bmi1 avx2 smep bmi2 erms invpcid xsaveopt
bugs : cpu_meltdown spectre_v1 spectre_v2 spec_store_bypass l1tf mds swapgs
bogomips : 4600.18
clflush size : 64
cache_alignment : 64
address sizes : 46 bits physical, 48 bits virtual
power management:

processor : 1
vendor_id : GenuineIntel
cpu family : 6
model : 79
model name : Intel(R) Xeon(R) CPU E5-2686 v4 @ 2.30GHz
stepping : 1
microcode : 0xb000038
cpu MHz : 2300.141
cache size : 46080 KB
physical id : 0
siblings : 2
core id : 1
cpu cores : 2
apicid : 2
initial apicid : 2
fpu : yes
fpu_exception : yes
cpuid level : 13
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx rdtscp lm constant_tsc rep_good nopl xtopology cpuid pni pclmulqdq ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm cpuid_fault invpcid_single pti fsgsbase bmi1 avx2 smep bmi2 erms invpcid xsaveopt
bugs : cpu_meltdown spectre_v1 spectre_v2 spec_store_bypass l1tf mds swapgs
bogomips : 4600.18
clflush size : 64
cache_alignment : 64
address sizes : 46 bits physical, 48 bits virtual

# 总核数 = 物理CPU个数 X 每颗物理CPU的核数
# 总逻辑CPU数 = 物理CPU个数 X 每颗物理CPU的核数 X 超线程数
# 查看物理CPU个数
cat /proc/cpuinfo| grep “physical id”| sort| uniq| wc -l
# 查看每个物理CPU中core的个数(即核数)
cat /proc/cpuinfo| grep “cpu cores”| uniq
# 查看逻辑CPU的个数
cat /proc/cpuinfo| grep “processor”| wc -l

 

#查看cpu硬件架构

在Linux中使用命令arch可以查看机器CPU类型,如”i386”, “i486″,”i586”, “alpha”, “sparc”, “arm”, “m68k”,”mips”, “ppc”,”ia64″,”x86_64″等;ia64和x86_64就说明这台机器是64位的;

[[email protected] ~]$ arch
x86_64

或者

[[email protected] ~]$ uname -m
x86_64

uname命令可以输出一组系统信息

[[email protected] ~]$ uname -a
Linux ip-xxx.ap-southeast-1.compute.internal 4.14.146-120.181.amzn2.x86_64 #1 SMP Fri Oct 18 17:01:06 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

 

#如何查看Linux操作系统版本?不同linux版本命令稍有不同,选择可以用的
[[email protected]pxxx ~] cat /proc/version
[[email protected] ~] uname -r
[[email protected] ~] lsb_release -a
[[email protected] ~] cat /etc/issue
[[email protected] ~] cat /etc/*release*
[[email protected] ~] less /etc/redhat-release

#linux查看内存信息
[[email protected] ~] cat /proc/meminfo

使用nvm利器,管理node版本(转)

 Nodejs  使用nvm利器,管理node版本(转)已关闭评论
5月 242018
 

node.js越来越热,应用的场景也越来越多。

但也因为是开源软件,所以具备大多数开源软件都存在的“版本问题”,版本发展很快,版本前后差异性大,老系统用新版本node跑不过,全局安装的第三方组件和node版本相关造成全局版本混乱。



nvm是解决这一问题的利器。

nvmnode版本管理工具,主要特点:

1.可安装多版本的node

2.灵活切换当前的node版本。

3.以沙箱方式全局安装第三方组件到对应版本的node中。

4.通过.vnmrc文件,方便灵活地指定各应用系统所需的node版本进行运行。

可惜目前只支持linuxOS系统。

接下来,就见证一下它的能力。 

 

安装nvm

通过下面的命令可进行一步到位的安装,下面两种方式可二选一。

curl
-o-
https://raw.githubusercontent.com/creationix/nvm/v0.31.2/install.sh |
bash

或者:

wget
-qO-
https://raw.githubusercontent.com/creationix/nvm/v0.31.2/install.sh |
bash

 

安装完后,验证安装

command
-v nvm

默认会在“/home/个人账户”目录下会生成.nvm的隐藏目录,所有的node会以沙箱的方式装到该目录下。

安装完成。

 

详细可参考官方:https://github.com/creationix/nvm 

 

安装多版本node

在命令行中运行命令,安装当前最新的稳定版。

nvm
install stable

当前最新的稳定版是6.3.0

 

运行命令,指明版本,安装早期的版本0.12.4

nvm
install 0.12.4

  

安装后,当前使用的node版本默认为最后一次安装的版本,在命令行中运行命令可查看当前版本。

nvm
current

 

切换node版本

运行命令切换。

nvm
use 6

 

显示所有安装的版本

运行命令,列出所有版本。

nvm
ls

 

左边有箭头的代表当前使用中的版本。

 

安装全局组件 

nvm管理的情况下,全局组件是安装到/usr/local/lib/node_modules下,然后通过软连接的方式把包中bin目录下的可执行文件链接到/usr/local/bin。不管用什么版本都装到这些目录下,多版本就没法玩了。

nvm管理下,以沙箱的方式,全局组件会装到.nvm目录的当前版本node下,也就是装在nvm这个沙箱里,跟在指定版本的node下,当前有什么版本的node,就有对应的全局组件。这是nvm强大的地方,在多运行环境的管理和切换极为好用。

下面,运行命令在当前6.3.0node版本下以全局的方式安装express生成器。

npm
install -g express-generator

express
-V

可以清楚的看到express生成器被安装到了当前版本的node目录下。

express默认用的是最新的版本,这里是4.13.4

 

现在,切换到0.12.4版本 

nvm
use 0

然后,全局安装express生成器3.0版。

npm
install -g [email protected]

也可以清楚的看到express生成器装到了0.12.4node目录下,装完后express版本是3.0.0

可以再将node版本切换到6,那么当前的express版本又会切换成对应的版本。

很方便,很强大。

 

使用.nvmrc文件运行

在服务器上很多时候会运行多个应用系统,每个应用系统使用的node版本是不一样的,老系统用0.12.x甚至0.10.x,新系统用了新特新所以用最新的node版本,都很实际很正常。 

为了让不同的应用系统使用各自所需的node版本运行,我们只需在各应用系统内的根目录里生成一个.nvmrc文件,在其内写一个版本号,利用nvm
run <
系统启动文件>的方式运行系统,即可完成要求。

做个实验。

建个demo的文件夹,在其下写一个app1.js文件,其内容为:

console.log(process.versions);

只有一行代码,把当前运行的node版本输出到控制台。

 

app1.js同级,写一个.nvmrc文件,其中的版本号写“0”,目的是要在0.12.4版本下运行,可以用命令:

echo
'0' > .nvmrc

 

我们将当前的node版本切至6,然后运行:

nvm
use 6
nvm
run app1.js

运行效果:

可以看到运行demonode版本取决于.nvmrc中写的版本。

通过.nvmrc作为运行版本配置,用nvm
run
命令进行启动的方式可以方便的完成同一个服务器运行多个不同版本的应用系统,非常方便灵活。

转自:https://www.cnblogs.com/kongxianghai/p/5660101.html