磁盘空间管理 交换空间

磁盘空间管理

添加一块新的60G的磁盘(硬盘)

查看当前系统是否识别新的硬盘:lsblk
[root@localhost ~]# lsblk
NAME            MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda               8:0    0   20G  0 disk 
├─sda1            8:1    0    1G  0 part /boot
└─sda2            8:2    0   19G  0 part 
  ├─centos-root 253:0    0   18G  0 lvm  /
  └─centos-swap 253:1    0    1G  0 lvm  [SWAP]
sdb               8:16   0   60G  0 disk 
sr0              11:0    1  4.4G  0 rom

磁盘管理的一些内容

磁盘结构及概念
在这里插入图片描述
磁盘空间管理

识别硬盘 => 分区规划 => 格式化 => 挂载使用
· 扇区 : 每个扇区默认大小512字节

  1. 识别硬盘
    查看当前系统是否识别新的硬盘命令 : lsblk

  2. 分区规划 60G
    分区模式 : MBR 与 GPT , 不能出现在一个硬盘上

MBR / msdos分区模式

  • 分区类类型 : 主分区 、扩展分区 、 逻辑分区
  • 最多只能有4个主分区
  • 扩展分区最多只能有一个
  • 3个主分区 + 1个扩展分区(n个逻辑分区)
  • 最大支持容量为2.2TB的磁盘
  • 扩展分区不能格式化,不能存储数据,只是为了产生逻辑分区

在这里插入图片描述
使用fdisk分区工具

查看分区表
fdisk -l /dev/sda
修改硬盘的分区表
fdisk 硬盘设备

常用的交互指令:
m		列出指令帮助
p		查看现有的分区表
n		新建分区
d		删除分区
q		放弃更改并退出
w		保存更改并退出
分两个主分区,一个为1G,一个为2G
fdisk /dev/sdb
n 创建新的分区---->分区类型 回车---->分区编号 回车---->起始扇区 回车---->在last结束时 + 1G
p 查看分区表
n 创建新的分区---->分区类型 回车----->分区编号 回车----->其实扇区 回车---->在last结束时 + 2G
w 保存并退出

分区步骤

[root@localhost ~] fdisk /dev/sdb			修改硬盘分区表
Welcome to fdisk (util-linux 2.23.2).

Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.

Device does not contain a recognized partition table
Building a new DOS disklabel with disk identifier 0x81e78189.

Command (m for help): m					输入m查看分区表帮助信息
Command action
   a   toggle a bootable flag
   b   edit bsd disklabel
   c   toggle the dos compatibility flag
   d   delete a partition
   g   create a new empty GPT partition table
   G   create an IRIX (SGI) partition table
   l   list known partition types
   m   print this menu
   n   add a new partition
   o   create a new empty DOS partition table
   p   print the partition table
   q   quit without saving changes
   s   create a new empty Sun disklabel
   t   change a partition's system id
   u   change display/entry units
   v   verify the partition table
   w   write table to disk and exit
   x   extra functionality (experts only)

Command (m for help): n			输入n创建一个新的分区
Partition type:
   p   primary (0 primary, 0 extended, 4 free)
   e   extended
Select (default p): 				直接回车,默认为创建一个主分区(p)
Using default response p			
Partition number (1-4, default 1): 			直接回车,默认分区编号为1
First sector (2048-125829119, default 2048): 		直接回车,默认起始扇区为2048开始(扇区1-2048这部分空间是默认存放分区表的)
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-125829119, default 125829119): +1G		输入+1G后分好区之后输入w保存退出
Partition 1 of type Linux and of size 1 GiB is set

Command (m for help): p			查看分区表

Disk /dev/sdb: 64.4 GB, 64424509440 bytes, 125829120 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x81e78189

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1            2048     2099199     1048576   83  Linux

分区完成后
lsblk		查看当前系统是否识别新的硬盘
NAME            MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda               8:0    0   20G  0 disk 
├─sda1            8:1    0    1G  0 part /boot
└─sda2            8:2    0   19G  0 part 
  ├─centos-root 253:0    0   18G  0 lvm  /
  └─centos-swap 253:1    0    1G  0 lvm  [SWAP]
sdb               8:16   0   60G  0 disk 
├─sdb1            8:17   0    1G  0 part 
└─sdb2            8:18   0    2G  0 part 
sr0              11:0    1  4.4G  0 rom

ls /dev/sdb[1-2]   		 # 查看sdb划分好的分区1和分区2
# /dev/sdb1  /dev/sdb2

分区格式化

格式化 : 赋予空间文件系统的过程
文件系统 : 存放数据的规则

windows 默认的文件系统 : NTFS FAT(兼容性最强)
Linux 默认文件系统 : ext4(RHEL6) xfs(RHEL7)
RHEL7系列 : ext4和xfs都是支持的
RHEL6系列 : 只支持ext4

mkfs.		查看当前系统支持格式化的文件系统(按两次tab键)
# mkfs.btrfs   mkfs.cramfs  mkfs.ext2    mkfs.ext3    mkfs.ext4    mkfs.minix   mkfs.xfs

mkfs.ext4 /dev/sdb1		格式化ext4文件系统
blkid /dev/sdb1		查看一个分区文件系统类型
# /dev/sdb1: UUID="2c425d6c-8ff3-4326-89eb-c5cb5ca2e220" TYPE="ext4"

mkfs.xfs /dev/sdb2		格式化xfs文件系统
blkid /dev/sdb2		查看一个分区文件系统类型
# /dev/sdb2: UUID="62021d1b-2977-4f26-ab05-5fbeea18fe4a" TYPE="xfs"

注意: 一个文件系统尽量不要重复的格式化,重复格式化会影响分区以及硬盘的读写速度,
如果硬盘里面有数据的话,重复格式化会清空硬盘里面所有的数据。

分区的挂载

分区的挂载使用
mkdir /mypart1
mount /dev/sdb1 /mypart1
df -h   查看正在挂载使用的设备信息

mkdir /mypart2
mount /dev/sdb2 /mypart2
df -h	查看正在挂载使用的设备信息

查看设备的UUID

blkid				查看设备的UUID
# /dev/sr0: UUID="2020-11-04-11-36-43-00" LABEL="CentOS 7 x86_64" TYPE="iso9660" PTTYPE="dos" 
# /dev/sda1: UUID="694a6455-6ef3-4958-8899-168162e58ee7" TYPE="xfs" 
......

开机自动挂载MBR分区模式

  • 配置文件 /etc/fstab 的记录格式
 设备路径     挂载点     类型    参数     备份标记   检测顺序
/dev/sdb1   /mypart1   ext4   defaults    0		     0
# defaults:ACL,SUID,SGID,rw... 默认参数
# 备份标记有0也有1,0代表不备份,1代表备份
# 检测标记有0也有1,0代表不检测,1代表检测(检测硬盘和扇区有无损坏,检测会增加开机的时间)
umount /mypart1		卸载手动挂载
umount /mypart2		卸载手动挂载

vim /etc/fstab		写入配置文件信息
/dev/sdb1 /mypart1 ext4 defaults 0 0
/dev/sdb2 /mypart2 xfs defaults 0 0

验证挂载是否成功
mount -a 	
# 检测/etc/fstab开机自动挂载配置文件,格式是否正确
# 检测/etc/fstab中,书写完成,但当前没有挂载的设备,进行挂载
df -h | grep sdb

开机自动挂载配置文件书写有误修复方法

  1. 输入root的密码,密码不显示
    在这里插入图片描述
  2. 进入vim编辑器修改/etc/fstab配置文件内容
    在这里插入图片描述
  3. 把配置文件内容更改正确重新重启
    在这里插入图片描述
    总结思路
1. 识别硬盘	lsblk
2. 分区规划 fdisk MBR分区
3. 格式化文件系统 mkfs.ext4
4. 挂载使用 mount
5. 开机自动挂载  /etc/fstab  、 mount -a  、 df -h

MBR模式 综合分区

创建第三个主分区,创建最后一个扩展分区,将扩展分区里划分三个2G的逻辑分区

p 查看分区表
n 创建新的分区---->回车---->回车---->回车---->在last结束时 + 2G
p 查看分区表
n 创建新的分区---->回车----->起始回车---->结束回车 将所有空间给扩展分区

扩展分区
p查看分区表
n 创建逻辑分区---->起始回车----->结束+2G
n 创建逻辑分区---->起始回车----->结束+2G
n 创建逻辑分区---->起始回车----->结束+2G
p查看分区表
w 保存并退出
partprobe 	 刷新分区表
# Warning: Unable to open /dev/sr0 read-write (Read-only file system).  /dev/sr0 has been opened read-only.
lsblk		查看当前系统是否识别新的硬盘		

GPT分区模式

添加一块80G的硬盘(硬盘)

查看当前系统是否识别新的硬盘:lsblk
[root@localhost ~]# lsblk
NAME            MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda               8:0    0   20G  0 disk 
├─sda1            8:1    0    1G  0 part /boot
└─sda2            8:2    0   19G  0 part 
  ├─centos-root 253:0    0   18G  0 lvm  /
  └─centos-swap 253:1    0    1G  0 lvm  [SWAP]
sdb               8:16   0   60G  0 disk 
├─sdb1            8:17   0    1G  0 part /mypart1
├─sdb2            8:18   0    2G  0 part /mypart2
├─sdb3            8:19   0    2G  0 part 
├─sdb4            8:20   0    1K  0 part 
├─sdb5            8:21   0    2G  0 part 
├─sdb6            8:22   0    2G  0 part 
└─sdb7            8:23   0    2G  0 part 
sdc               8:32   0   80G  0 disk 
sr0              11:0    1  4.4G  0 rom 

GPT 分区模式

· GPT,GUID Partirion Table

  • 全局唯一标识分区表
  • 突破固定大小64字节的分区表限制
  • 最多可支持128个主分区,最大支持18EB磁盘
  • 1EB = 1024PB = 1024 ✖ 1024 TB

parted 常用GPT分区模式指令

parted /dev/sdc			分区模式命令
# GNU Parted 3.1
# Using /dev/sdc
# Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) mktable gpt     	指定分区模式                                                 
(parted) print              输入分区表信息          	                                    
# Model: VMware, VMware Virtual S (scsi)
# Disk /dev/sdc: 85.9GB
# Sector size (logical/physical): 512B/512B
# Partition Table: gpt
#Disk Flags: 

# Number  Start  End  Size  File system  Name  Flags

(parted) mkpart          划分新的分区                                                 
Partition name?  []? dudu       输入分区表的名字	                                          
File system type?  [ext2]? ext4       将来的文件系统类型(随便什么写类型都可以)                                    
Start? 0                 起始位置                                                 
End? 2G                  结束位置                                          
# Warning: The resulting partition is not properly aligned for best performance.
Ignore/Cancel? Ignore 	忽略

(parted) unit GB       使用GB作为单位                                                   
(parted) print         查看分区信息                                                    
# Model: VMware, VMware Virtual S (scsi)
# Disk /dev/sdc: 85.9GB
# Sector size (logical/physical): 512B/512B
# Partition Table: gpt
# Disk Flags: 

# Number  Start   End     Size    File system  Name  Flags
# 1      0.00GB  2.00GB  2.00GB               dudu

(parted) mkpart                                                           
Partition name?  []? haha                                                 
File system type?  [ext2]?          直接回车                                      
Start? 2G             起始位置为2G                                                    
End? 10G              如果我们想分一个8G的分区,那么结束位置为10G(写成%的形式也可以)                                                
(parted) unit GB                                                          
(parted) print                                                            
# Model: VMware, VMware Virtual S (scsi)
# Disk /dev/sdc: 85.9GB
# Sector size (logical/physical): 512B/512B
# Partition Table: gpt
# Disk Flags: 

# Number  Start   End     Size    File system  Name  Flags
# 1      0.00GB  2.00GB  2.00GB               dudu
# 2      2.00GB  10.0GB  8.00GB               haha

(parted)quit        设置结束直接退出就完成修改了,GPT分区模式是直接在硬盘上进行修改的,不需要保存                                                            
# Information: You may need to update /etc/fstab.      

交换空间(虚拟内存)

在这里插入图片描述
· 交换空间原理 : 利用硬盘的空间,充当内存

  • 交换空间的作用 : 当物理内存即将占满时,如果有交换空间,计算机会自动将真实物理内存的一部分数据,暂时放入交换空间(虚拟内存),缓解物理内存不够用的情况,交换空间可以由无数个交换分区组成。

制作交换空间的方法

方式一 : 利用分区制作交换空间

ls /dev/sdc1		用/dev/sdc1这个分区制作交换空间
# /dev/sdc1
free -m		 交换空间的信息(-m 单位M)
#                total        used       free      shared     buff/cache   available
# Mem:(内存信息)  1980         167        1711           9         101        1684	
# Swap:          1023           0        1023
swapon		 交换空间的成员信息
# NAME      TYPE       SIZE  USED  PRIO
# /dev/dm-1 partition 1024M   0B   -2
mkswap /dev/sdc1		格式化交换文件系统
# Setting up swapspace version 1, size = 1953104 KiB
# no label, UUID=6b636f3b-1e16-4fa2-8f9b-2081f906c12c
blkid /dev/sdc1			查看文件系统类型
# /dev/sdc1: UUID="6b636f3b-1e16-4fa2-8f9b-2081f906c12c" TYPE="swap" PARTLABEL="dudu" 
# PARTUUID="eda99341-2840-4f04-a0f4-d10f09b75374" 
swapon /dev/sdc1		启用交换分区
swapon				交换空间的成员信息
# NAME      TYPE       SIZE USED PRIO
# /dev/dm-1 partition 1024M   0B   -2
# /dev/sdc1 partition  1.9G   0B   -3
free -m			交换空间的信息
#                total        used        free      shared  buff/cache   available
# Mem:           1980         168        1710           9         101        1682
# Swap:          2931           0        2931

开机自启动交换空间

vim /etc/fstab		
	/dev/sdc1 swap swap defaults 0 0   在开机自启动的配置文件内添加交换分区新成员/dev/sdc1

验证方法:
swapoff /dev/sdc1   	停用交换空间
swapon			查看交换空间的成员信息
# NAME      TYPE       SIZE USED PRIO
# /dev/dm-1 partition 1024M   0B   -2

swapon -a 	 	检测交换分区书写
swapon		 	交换空间的成员信息
# NAME      TYPE       SIZE USED PRIO
# /dev/dm-1 partition 1024M   0B   -2
# /dev/sdc1 partition  1.9G   0B   -3

方式二 : 利用文件锁占用的空间,制作交换空间

1. 利用dd命令生成一个2G的文件
dd命令的使用:
dd	if=源设备  of=目标设备  bs=块大小  count=块数
dd会一直将源设备的数据写入目标设备里面,可以用来生成一个大文件,可以用来备份数据

 ls /dev/zero		设备/dev/zero一直在产生空数据
# /dev/zero		
dd if=/dev/zero of=/opt/swap.txt bs=1M count=2048	
# 2048+0 records in
# 2048+0 records out
# 2147483648 bytes (2.1 GB) copied, 16.6664 s, 129 MB/s(硬盘的读写速度)
du -sh /opt/swap.txt	  查看/opt/swap.txt的文件的大小
# 2.0G	/opt/swap.txt

利用文件创建交换分区同上一样
mkswap /opt/swap.txt	格式化交换文件系统

swapon /opt/swap.txt	启用交换分区
swapon					查看交换空间的成员信息
free -m					交换空间的信息

vim /etc/fstab		
	/opt/swap.txt swap swap defaults 0 0   在开机自启动的配置文件内添加交换分区新成员/opt/swap.txt
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值