二维码

linux 如何查看硬盘大小,内存大小等系统信息及硬件信息

1396 人阅读 | 时间:2021年03月23日 15:56

linux CPU大小

[root@idc ~]# cat /proc/cpuinfo |grep “model name” && cat /proc/cpuinfo |grep “physical id”
model name: Intel(R) Xeon(TM) CPU 2.80GHz
model name: Intel(R) Xeon(TM) CPU 2.80GHz
model name: Intel(R) Xeon(TM) CPU 2.80GHz
model name: Intel(R) Xeon(TM) CPU 2.80GHz
physical id : 0
physical id : 0
physical id : 3
physical id : 3

说明:Linux下可以在/proc/cpuinfo中看到每个cpu的详细信息。但是对于双核的cpu,在cpuinfo中会看到两个cpu。常常会让人误以为是两个单核的cpu。
其实应该通过Physical Processor ID来区分单核和双核。而Physical Processor ID可以从cpuinfo或者dmesg中找到. flags 如果有 ht 说明支持超线程技术 判断物理CPU的个数可以查看physical id 的值,相同则为同一个物理CPU
可以看到上面,这台机器有两个双核的CPU,ID分别是0和3,大小是2.8G。

内存大小

[root@xbidc ~]# cat /proc/meminfo |grep MemTotal
MemTotal: 1034612 kB
[root@xbidc ~]#

硬盘大小

[root@xbidc ~]# fdisk -l |grep Disk
Disk /dev/sda: 300.0 GB, 300000000000 bytes
[root@xbidc ~]#

更多查看linux硬件信息的方法

uname -a # 查看内核/操作系统/CPU信息的linux系统信息命令
head -n 1 /etc/issue # 查看操作系统版本,是数字1不是字母L
cat /proc/cpuinfo # 查看CPU信息的linux系统信息命令
hostname # 查看计算机名的linux系统信息命令
lspci -tv # 列出所有PCI设备
lsusb -tv # 列出所有USB设备的linux系统信息命令
lsmod # 列出加载的内核模块
env # 查看环境变量资源
free -m # 查看内存使用量和交换区使用量
df -h # 查看各分区使用情况
du -sh # 查看指定目录的大小
grep MemTotal /proc/meminfo # 查看内存总量
grep MemFree /proc/meminfo # 查看空闲内存量
uptime # 查看系统运行时间、用户数、负载
cat /proc/loadavg # 查看系统负载磁盘和分区
mount | column -t # 查看挂接的分区状态
fdisk -l # 查看所有分区
swapon -s # 查看所有交换分区
hdparm -i /dev/hda # 查看磁盘参数(仅适用于IDE设备)
dmesg | grep IDE # 查看启动时IDE设备检测状况网络
ifconfig # 查看所有网络接口的属性
iptables -L # 查看防火墙设置
route -n # 查看路由表
netstat -lntp # 查看所有监听端口
netstat -antp # 查看所有已经建立的连接
netstat -s # 查看网络统计信息进程
ps -ef # 查看所有进程
top # 实时显示进程状态用户
w # 查看活动用户
id # 查看指定用户信息
last # 查看用户登录日志
cut -d: -f1 /etc/passwd # 查看系统所有用户
cut -d: -f1 /etc/group # 查看系统所有组
crontab -l # 查看当前用户的计划任务服务
chkconfig –list # 列出所有系统服务
chkconfig –list | grep on # 列出所有启动的系统服务程序
rpm -qa # 查看所有安装的软件包
cat /proc/cpuinfo :查看CPU相关参数的linux系统命令
cat /proc/partitions :查看linux硬盘和分区信息的系统信息命令
cat /proc/meminfo :查看linux系统内存信息的linux系统命令
cat /proc/version :查看版本,类似uname -r
cat /proc/ioports :查看设备io端口
cat /proc/interrupts :查看中断
cat /proc/pci :查看pci设备的信息
cat /proc/swaps :查看所有swap分区的信息

一,查看磁盘空间大小的命令:df

df命令用于查看磁盘分区上的磁盘空间,包括使用了多少,还剩多少,默认单位是KB


比如以下命令:

df -hl

执行结果如下:


执行的结果每列的含义:

第一列Filesystem,磁盘分区

第二列Size,磁盘分区的大小

第三列Used,已使用的空间

第四列Avail,可用的空间

第五列Use%,已使用的百分比

第六列Mounted on,挂载点

解释一下后面的h和l参数,h是把显示的单位改成容易辨认的单位,不再是默认的KB了,而l参数表示只显示本地磁盘分区,不包含的分区比如其他服务器共享的磁盘。

如果我们去掉l参数:

df -h

执行结果如下:


可以看到,和带着l参数的命令相比,执行的结果多了最下面一行,那是其他服务器的共享目录

 

下面附上df命令的全部参数使用说明:

-a或--all:包含全部的文件系统;--block-size=<区块大小>:以指定的区块大小来显示区块数目;-h或--human-readable:以可读性较高的方式来显示信息;-H或--si:与-h参数相同,但在计算时是以1000 Bytes为换算单位而非1024 Bytes;-i或--inodes:显示inode的信息;-k或--kilobytes:指定区块大小为1024字节;-l或--local:仅显示本地端的文件系统;-m或--megabytes:指定区块大小为1048576字节;--no-sync:在取得磁盘使用信息前,不要执行sync指令,此为预设值;-P或--portability:使用POSIX的输出格式;--sync:在取得磁盘使用信息前,先执行sync指令;-t<文件系统类型>或--type=<文件系统类型>:仅显示指定文件系统类型的磁盘信息;-T或--print-type:显示文件系统的类型;-x<文件系统类型>或--exclude-type=<文件系统类型>:不要显示指定文件系统类型的磁盘信息;--help:显示帮助;--version:显示版本信息。


二,查看文件和目录大小的命令:du

du是用来查看文件和目录大小用的,和df略有区别


1,比如要看/data目录的总大小,可以用以下命令:

du -sh /data

执行果如下:


或者进到/data目录后直接执行:

du -sh

执行结果如下:


其中的-s参数就是查看总大小(区别于查看其中每个目录的大小),而-h参数是把默认的单位KB改为比较好辨认的单位。

 

2,如果要看/data目录下各个子目录的大小,包括子目录的子目录,但不包含/data下文件,可以用以下命令:

du -h

执行结果如下:


注:该命令不包含/data目录下的文件大小

 

3,如果要看/data目录下各个子目录的大小,包括子目录的子目录,且包含/data下文件,可以用以下命令:

du –h *

执行结果如下:


4,如果要看/data目录下各个子目录的大小,不包括子目录的子目录,可以用以下命令:

du -sh *

执行结果如下:


5,如果要看/data目录下各个子目录和文件的大小,需要使用-a参数:

du -ah

命令执行结果如下:


下面附上du命令的参数使用说明:

-a或-all 显示目录中个别文件的大小。-b或-bytes 显示目录或文件大小时,以byte为单位。-c或--total 除了显示个别目录或文件的大小外,同时也显示所有目录或文件的总和。-k或--kilobytes 以KB(1024bytes)为单位输出。-m或--megabytes 以MB为单位输出。-s或--summarize 仅显示总计,只列出最后加总的值。-h或--human-readable 以K,M,G为单位,提高信息的可读性。-x或--one-file-xystem 以一开始处理时的文件系统为准,若遇上其它不同的文件系统目录则略过。-L<符号链接>或--dereference<符号链接> 显示选项中所指定符号链接的源文件大小。-S或--separate-dirs 显示个别目录的大小时,并不含其子目录的大小。-X<文件>或--exclude-from=<文件> 在<文件>指定目录或文件。--exclude=<目录或文件> 略过指定的目录或文件。-D或--dereference-args 显示指定符号链接的源文件大小。-H或--si 与-h参数相同,但是K,M,G是以1000为换算单位。-l或--count-links 重复计算硬件链接的文件。


 三,排序命令,sort

sort命令可以用于将文件内容排序并输出,也可以用于将某些查询命令的执行结果排序后输出


比如要将文件夹中的文件按大小排序,可以用以下命令:

du -a|sort -rn

执行结果如下:


管道前面的du –a就是列出目录下所有的文件和目录的大小,后面的sort命令就是排序。

其中-r参数代表反向排序,因为sort默认是从小到大排序的,加-r是从大到小排序

-n代表按照数字排序,只认数字不认单位,本例中的数字就是文件大小,单位是默认的KB,所以这个命令不能用du -ah,这会使排序结果出现2M小于100K的情况。

 

附上sort命令各参数的使用说明:

-b:忽略每行前面开始出的空格字符;-c:检查文件是否已经按照顺序排序;-d:排序时,处理英文字母、数字及空格字符外,忽略其他的字符;-f:排序时,将小写字母视为大写字母;-i:排序时,除了040至176之间的ASCII字符外,忽略其他的字符;-m:将几个排序号的文件进行合并;-M:将前面3个字母依照月份的缩写进行排序;-n:依照数值的大小排序;-o<输出文件>:将排序后的结果存入制定的文件;-r:以相反的顺序来排序;-t<分隔字符>:指定排序时所用的栏位分隔字符;+<起始栏位>-<结束栏位>:以指定的栏位来排序,范围由起始栏位到结束栏位的前一栏位。

由参数可见sort命令主要还是用于文件内容输出的

 

四,只显示前几行的命令,head

head命令可以用于显示文件的前几行,也可以用于显示某些查询命令结果的前几行


比如要将文件夹中的文件按大小排序,而且只看最大的几个,可以用以下命令:

du -a|sort -rn|head -5

执行结果:


head后面的-5表示显示前5行,不加数字则默认显示前10行


附上head命令各参数的使用说明:

-n<数字>:指定显示头部内容的行数;-c<字符数>:指定显示头部内容的字符数;-v:总是显示文件名的头信息;-q:不显示文件名的头信息。


以上。


©著作权归作者所有:来自ZhiKuGroup博客作者没文化的原创作品,如需转载,请注明出处,否则将追究法律责任 来源:ZhiKuGroup博客,欢迎分享。

评论专区
  • 昵 称必填
  • 邮 箱选填
  • 网 址选填
◎已有 0 人评论
搜索
作者介绍
30天热门
×
×
本站会员尊享VIP特权,现在就加入我们吧!登录注册×
»
会员登录
新用户注册
×
会员注册
已有账号登录
×