欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 房产 > 建筑 > 三、Linux CPU内存磁盘

三、Linux CPU内存磁盘

2024/10/27 6:42:56 来源:https://blog.csdn.net/qq_38667427/article/details/143176184  浏览:    关键词:三、Linux CPU内存磁盘

一、CPU

  • 物理总核数 = 物理 CPU 个数 * 每个物理 CPU 的核数。
  • 逻辑CPU数(显示的核数) = 物理 CPU 个数 * 每个物理 CPU 的核数 * 超线程数
# 查看系统内核信息
uname -a# 查看系统内核版本
cat /proc/version
# 1. 查看`CPU`型号
dmidecode -s processor-version
#pc-i440fx-2.1
#Intel(R) Xeon(R) CPU E5-2630 v4 @ 2.20GHz## 查看当前 CPU 运行在 32bit 还是 64bit 模式下
## 如果是运行在 32bit 下也不代表 CPU 不支持 64bit
getconf LONG_BIT

cat /proc/cpuinfo
## 查看有几个逻辑 CPU,包括 CPU 型号
cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c
## 查看有几颗 CPU,每颗分别是几核
cat /proc/cpuinfo | grep physical | uniq -c
## 如果结果大于 0,说明支持 64bit 计算
## lm 指 long mode,支持 lm 则是 64bit
cat /proc/cpuinfo | grep flags | grep ' lm ' | wc -l

1. /proc/cpuinfo
# 1. 查看`CPU`详细信息(型号、主频、内核信息等)
cat /proc/cpuinfo
#...# 2. 查看`CPU`型号
cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c
#      2  Intel(R) Xeon(R) Platinum 8163 CPU @ 2.50GHz
#      8  Intel(R) Xeon(R) CPU E5-2630 v4 @ 2.20GHzcat /proc/cpuinfo | grep name | sort | uniq
#model name      : Intel(R) Xeon(R) Platinum 8163 CPU @ 2.50GHz      
#model name      : Intel(R) Xeon(R) CPU E5-2630 v4 @ 2.20GHz
  1. sort 命令:将以默认的方式将文本文件的第一列,以 ASCII 码的次序排列,并将结果输出到标准输出。
  2. uniq 命令:使用 uniq 命令删除重复的行,当重复的行并不相邻时,uniq 命令是不起作用的,这是和 sort 命令组合。
## 1. 查看物理`CPU`个数(`physical id`)
cat /proc/cpuinfo | grep "physical id" | sort | uniq | wc -l
#2
## 两个物理`CPU`
cat /proc/cpuinfo | grep "physical id" | sort | uniq
#physical id     : 0
#physical id     : 1---## 2. 查看每个物理`CPU`的核数(`cpu cores`)
cat /proc/cpuinfo | grep "cores" | uniq
cat /proc/cpuinfo | grep "cpu cores" | uniq
#cpu cores       : 4## 查看`CPU`是否启用超线程
## 如果`cpu cores`和`siblings`数量一致,则没有启用超线程,否则超线程被启用
cat /proc/cpuinfo | grep -e "cpu cores" -e "siblings" | sort | uniq
#cpu cores       : 1
#siblings        : 2---## 3. 查看逻辑 CPU 个数(显示的核数)
cat /proc/cpuinfo | grep "processor" | wc -l
#2more /proc/cpuinfo | grep "model name"
#model name      : Intel(R) Xeon(R) Platinum 8163 CPU @ 2.50GHz
#model name      : Intel(R) Xeon(R) Platinum 8163 CPU @ 2.50GHzgrep "model name" /proc/cpuinfo
#model name      : Intel(R) Xeon(R) Platinum 8163 CPU @ 2.50GHz
#model name      : Intel(R) Xeon(R) Platinum 8163 CPU @ 2.50GHzgrep "model name" /proc/cpuinfo | cut -f2 -d:
# Intel(R) Xeon(R) Platinum 8163 CPU @ 2.50GHz
# Intel(R) Xeon(R) Platinum 8163 CPU @ 2.50GHz

二、内存

# 显示内存状态(显示以`MB`为单位内存组昂头)
free –m   

1. /proc/meminfo
# 查看内存详细信息
cat /proc/meminfo# 查看总内存数
cat /proc/meminfo | grep MemTotal                      

三、磁盘

# 查看磁盘挂载情况
$ mount# 查看硬盘的分区
$ fdisk -l# 查看 IDE 硬盘信息		
$ hdparm -i /dev/hda  	
# 查看 STAT 硬盘信息		
$ hdparm -I /dev/sda			
$ apt-get install blktool  # 同上		
$ blktool /dev/sda id
1. /proc/partitions
# 查看硬盘和分区详细信息
$ cat /proc/partitions 
`
major minor  #blocks  name253        0   41943040 vda253        1   41940992 vda1
`
2. df
$ df --help# 查看磁盘分区信息
$ df
# 查看每个根路径的分区大小(显示格式化)
$ df -h# 查看磁盘剩余空间                    
$ df -hl
3. du(disk usage)磁盘使用情况
$ du --help# 显示目录或文件的大小 
$ du           
# 显示当前目录的大小                
$ du -h
# 于查看文件和目录的磁盘使用情况。对于文件夹,你可以使用 -h 选项来以易读的格式(如KB、MB、GB)显示大小。
# 查看指定目录下的所有文件大小(包含子文件夹)
$ du -h /path/to/directory
# 查看目录及子目录大小
$ du -H -h# 看文件夹的总大小,而不是其子目录和文件的大小,可以使用:
# 返回该目录的大小
$ du -sh /path/to/directory    			
# 查看目录占用空间
$ du -hs /path/to/directory			
# 返回该文件夹总M数
$ du -sm ['文件夹']      	
# 查看根目录下每个文件夹的大小		
$ du -sh *						
# 查看当前目录下各个文件,文件夹占了多少空间,不会递归
$ du -sh *# 显示当前目录中每个目录的大小
$ du -h --max-depth=1
$ du -sh /var/log

1. 磁盘扩容

  • linux磁盘扩容
  • Linux中/目录扩容
  • linux新增硬盘并扩容到指定分区目录下
  • 磁盘新扩容的空间,可以被独立创建成一个分区,或者用于扩容已有分区的空间,以下两种场景需求:
  1. 对于新增的容量空间,建立独立的新分区,老的分区保持不变。
  2. 扩容旧的分区至新增的容量空间,并且保持老分区的数据不丢失。

1. 新空间格式化成一个独立分区
# 1. 查看数据盘信息
fdisk -l	# 查看数据盘的已分区和未分区的信息
## df -h	# 无法看到未分区和格式化的数据盘# 2. 数据盘分区
fdisk /dev/sda	# 新建一个分区
# 依次输入以下命令
p				# 查看现有分区信息
n				# 新建分区
p				# 主分区
3				# 使用第3个主分区
两次回车			# 使用默认配置
w				# 保存分区表
# 开始分区
# 这里是以创建1个分区为例,也可以根据需求创建多个分区# 3. 查看新分区
fdisk -l	# 看到新分区`/dev/sda2`已经创建完成# 4. 格式化新分区
# 在进行分区格式化时,可以自行决定文件系统的格式,如ext2、ext3等。这里以'ext3'为例:
mkfs.ext3 /dev/sda3	# 对新分区进行格式化# 5. 挂载新分区
mkdir /data				# 创建data目录
mount /dev/sda3 /data	# 手动挂载新分区
df -h	# 查看数据盘信息# 6. 添加分区信息		
# 如果希望云服务器在重启或开机时能自动挂载数据盘,必须将分区信息添加到`/etc/fstab`中;
# 如果没有添加,则云服务器重启或开机后,都不能自动挂载数据盘。
echo '/dev/sda3 /data ext3 defaults 0 0' >> /etc/fstab	# 添加分区信息
cat /etc/fstab											# 查看分区信息

2. 新空间增加到已有非 / 分区空间中
# 1. 查看数据盘信息
## fdisk -l	# 查看数据盘的已分区和未分区的信息
df -h	# 无法看到未分区和格式化的数据盘# 2. 卸载正在使用的磁盘
umount /data	# 卸载已挂载的需要扩容的磁盘# 3. 数据盘分区
fdisk /dev/sda
# 依次输入以下命令
p				# 查看现有分区信息
d				# 删除需要扩容的分区
n				# 新建分区
p				# 新建主分区
3				# 使用第3个主分区(必须保持与需要扩容的分区一样)
两次回车			# 使用默认配置
w				# 保存分区表
# 开始分区# 4. 检查扩容后的分区
fdisk -l /dev/sda3	# 新的分区sda3已经创建并扩容完成
e2fsck -f /dev/sda3	# 检查扩容的分区是否ok# 5. 扩容分区
resize2fs /dev/sda3	# 扩容分区# 6. 挂载扩容后的分区
mount /dev/sda3 /data	# 手动挂载扩容后的分区
df -h		# 查看数据盘信息
ll /data	# 查看到扩容后原分区的数据没有丢失

3. 新空间增加到 / 分区空间中
# 1. 查看数据盘信息
fdisk -l	# 查看数据盘的已分区和未分区的信息
df -h		# 无法看到未分区和格式化的数据盘# 2. 分区完后把新分区改成'LVM'卷的文件系统
# fdisk -l 看到/dev/sda3的Id号为83,我们要将其改成8e
fdisk /dev/sda
t			# 改变一个分区的系统ID
3
L
8e
w			# 保存分区表# 3. 查看新分区
fdisk -l	# 查看ID是否修改成功# 4. 重新启动虚拟机,系统重启后,格式化新的分区为'ext4'格式  
mkfs.ext4 /dev/sda3# 5. 格式化后,创建PV(物理卷) 
pvcreate /dev/sda3
pvdisplay	# 查看当前的物理卷# 6. 扩展VG把物理卷添加到VG里面
pvs	# 查看新建的物理卷
vgextend cl /dev/sda3# 7. 把VG中多余的空间添加到/dev/mapper/cl-root 中
lvextend -L +1.9G /dev/mapper/cl-root /dev/sda3# 8. xfs_growfs /dev/mapper/cl-rootdf -h

4. 查看新增空间
df -h
fdisk -lfdisk /dev/sda
n
四次回车
wfdisk -lvgextend cl /dev/sda3pvslvextend -L +1.9G /dev/mapper/cl-rootdf -hresize2fs /dev/mapper/cl-root
xfs_growfs /dev/mapper/cl-rootdf -h

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com