硬盘与存储设备
硬盘是一种计算机的存储设备,主要作用是用来存储数据,通常由一个或者多个盘片组成,既可以安装在计算机的内部,也可以外接计算机。
数据的类型:操作系统,应用程序,文档多媒体文件等等
计算机读取硬盘中的数据时,硬盘把数据读取到计算机的内存当中再进行处理
写-----> 当你对数据内容进行修改时,未保存的数据在内存中,只有用户保存之后,数据才会被写入到硬盘
固态硬盘的大小:5M、4T
机械硬盘的大小:8T、16T
硬盘的主体组成部分和数据格式
主轴:主轴马达让磁盘转动,机械手臂可伸展让磁头在碟片上面进行读写的操作
盘片:一个磁盘可以拥有一个或多个盘片,盘片的两面都可以读写
磁头:读取磁片上的数据
永磁铁:保证磁性稳定
空气滤纸片:过滤进入磁盘当中的空气
由于碟片是圆的,并且通过机械手臂去读写数据,碟片要转动才能够让机器手臂读写。因此,通常数据写入当然就是以圆圈转圈的方式读写。所以,当初设计就是在类似碟片同心圆上面切出一个一个的小区快,这些小区快整合成一个圆形,让机器手臂上的磁头去读写,这个小区块就是磁盘的最小物理存储单位,称之为扇区,同一个同心圆的扇区组成的圆就是所谓的磁道,由于磁盘上可能有多个碟片,因此在所有碟片上的同一个磁道可以组合成所谓的柱面。
扇区的基本大小默认为512字节,因为硬盘的发展,其容量变的越来越大,所以目前绝大部分的高容量硬盘已经使用了4kb大小的扇区设计,因为扇区的设计不同,因此在磁盘的分区方面有两种模式,MBR和GPT。
第零扇区
通常我们购买硬盘时,硬盘大小会比实际低,有两个原因,一个是因为商家的换算方法是1GB等于1000MB,另一个就是第零扇区的存在,第零扇区由主引导程序和分区表构成,主引导程序用于加载并启动操作系统,检测磁盘的分区信息,分区表用于记录磁盘分区的详细信息。
硬盘的分类
硬盘分为固态硬盘和机械硬盘两大类,和机械硬盘不同的是,固态硬盘通过闪存颗粒直接读写数据,所以读写速度比机械硬盘更快速,因此机械硬盘的价格会比固态硬盘低,但是容量会比固态硬盘高。
常见的硬盘与主机的接口类型
sata接口和scsi接口
scsi: 系统的接口,个人电脑服务的接口,传输速度比较快,支持热插拔(系统运行的时候可以用硬盘进行插拔)
sata :企业级别使用,抗干扰能力更强,支持热插拔,速度更快,sata是主流的接口
sdb:s是硬盘与主机的接口类型,d是disk硬盘,b是序列号
硬盘的分区和使用(MBR和GPT)
MBR分区(fdisk命令)
磁盘的空间2T以下,我们使用mbr进行分区
MBR分区:主引导记录,主分区,扩展分区,逻辑分区
主分区最多只能有4个,扩展分区可以有一个
逻辑分区:先有扩展分区,才能够创建逻辑分区,逻辑分区没有分区数量的限制
主分区和扩展分区的编号:1-4
逻辑分区的编号:5
分区表:64字节,一个分区要占用16字节,最多只能分4个
分区表记录磁盘分区的信息
GPT分区(gdisk命令)
磁盘的空间2T以上,使用GPT进行分区
分区表,不再以空间大小来进行分配
使用全局的唯一标识GUID来识别分区,分区更多,分的空间越大
最多可以有128个分区,而且不再区分分区的类型
查看磁盘信息lsblk
分区的优缺点
分区的原因:
1、不分区没法使用硬盘
2、优先I/O的性能iuput output读写性能
3、提高修复速度
4、可以对一个磁盘的不同分区采用不同的文件系统
分区的缺点:
1、分区一旦建立,不能修改,只能推倒重来,数据格式化,数据丢失,不够灵活
2、没有高可用功能,没有备份,而且不能够扩容(分区的时候必须是连续的空间)
交互操作界面的命令(重点)
命令 | 作用和 |
n | 新建分区 |
p | 查看分区情况 |
d | 删除分区 |
t | 变更分区的类型 |
w | 保存分区的操作并退出 |
q | 不保存分区的操作并退出 |
为分区创建文件系统
文件系统的类型
文件系统名称 | 适用操作系统 |
ext4 | ubuntu 系统原生的文件系统,稳定性和高性能 |
xfs | centos7系统独创的,使用于大型文件和高性能需求的文件系统 |
NTFS | windows |
ISO9660 | 光盘文件系统 |
NFS | 网络文件系统 |
文件系统:负责管理存储设备的数据访问,以及增删改查等相关操作的系统,硬盘、光盘。
作用:
-
数据的组织和存储:把文件分为不同的类型,方便用户的使用和操纵
-
数据的保护:提供了权限机制,对数据进行控制和保护
-
数据的访问:文件系统提供了访问硬盘的接口,通过这些接口访问硬盘的数据
-
数据的管理:增删改查的功能是由文件系统提供(日志记录、快照压缩、解压缩都是由文件系统提供)
挂载
硬盘设备必须要和系统的目录进行挂载才可以使用
df -hT查看挂载点
卸载挂载点:umount 设备
umount -lf /dev/sdb1
l:解除正在繁忙的文件系统
f:表示强制(慎用)
扩展分区与逻辑分区
扩展分区和逻辑分区;
扩展分区不能使用,既不能创建文件系统也无法挂载
保存逻辑分区的信息,而且是逻辑分区创建的前提条件
主分区和逻辑分区的区别:
主分区既可以作为操作系统的分区也可以作为存储数据的分区
逻辑分区只能作为存储数据的分区
TIPS
分区结束,保存退出了,但是lsblk查询分区结果,为空
partprobe重新读取硬盘的分区表(分区的uid号),更新内核的分区设备信息
自动挂载
vim /etc/fstab
末行添加 /dev/sdb5 /data ext4 defaults 0 0
0:表示重启时不对挂载点进行备份
0:表示启动时不对文件系统进行检查
wq退出
mount -a
tips:
blkid 查uuid号码,设备分区的唯一标识符
因此 vim /etc/fstab
UUID=“” /data2 ext4 defaults 00
磁盘分区的操作过程
在虚拟机设置上添加一块新的硬盘
root@cwq-virtual-machine:~# vim /opt/disk.sh
root@cwq-virtual-machine:~# chmod 777 /opt/disk.sh 给予该脚本执行权限
root@cwq-virtual-machine:~# /opt/disk.sh
root@cwq-virtual-machine:~# lsblk 查看磁盘信息
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
loop0 7:0 0 4K 1 loop /snap/bare/5
loop1 7:1 0 73.9M 1 loop /snap/core22/1663
loop2 7:2 0 74.2M 1 loop /snap/core22/1122
loop3 7:3 0 266.6M 1 loop /snap/firefox/3836
loop4 7:4 0 497M 1 loop /snap/gnome-42-2204/141
loop5 7:5 0 12.3M 1 loop /snap/snap-store/959
loop6 7:6 0 568K 1 loop /snap/snapd-desktop-integration/253
loop7 7:7 0 452K 1 loop /snap/snapd-desktop-integration/83
loop8 7:8 0 91.7M 1 loop /snap/gtk-common-themes/1535
loop9 7:9 0 40.4M 1 loop /snap/snapd/20671
loop10 7:10 0 38.8M 1 loop /snap/snapd/21759
loop11 7:11 0 12.2M 1 loop /snap/snap-store/1216
sda 8:0 0 60G 0 disk
├─sda1 8:1 0 1M 0 part
├─sda2 8:2 0 513M 0 part /boot/efi
└─sda3 8:3 0 59.5G 0 part /var/snap/firefox/common/host-hunspell
/
sdb 8:16 0 20G 0 disk
sr0 11:0 1 4.7G 0 rom /media/cwq/Ubuntu 22.04.4 LTS amd64
disk.sh脚本内容
root@cwq-virtual-machine:/# fdisk /dev/sdb
欢迎使用 fdisk (util-linux 2.37.2)。
更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。
This disk is currently in use - repartitioning is probably a bad idea.
It's recommended to umount all file systems, and swapoff all swap
partitions on this disk.
命令(输入 m 获取帮助): n
分区类型
p 主分区 (1 primary, 0 extended, 3 free)
e 扩展分区 (逻辑分区容器)
选择 (默认 p): e
分区号 (2-4, 默认 2):
第一个扇区 (10487808-41943039, 默认 10487808):
Last sector, +/-sectors or +/-size{K,M,G,T,P} (10487808-41943039, 默认 41943039): +5G
创建了一个新分区 2,类型为“Extended”,大小为 5 GiB。
命令(输入 m 获取帮助): w
分区表已调整。
正在同步磁盘。
root@cwq-virtual-machine:/# fdisk /dev/sdb
欢迎使用 fdisk (util-linux 2.37.2)。
更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。
This disk is currently in use - repartitioning is probably a bad idea.
It's recommended to umount all file systems, and swapoff all swap
partitions on this disk.
命令(输入 m 获取帮助): n
分区类型
p 主分区 (1 primary, 1 extended, 2 free)
l 逻辑分区 (从 5 开始编号)
选择 (默认 p): l
添加逻辑分区 5
第一个扇区 (10489856-20973567, 默认 10489856):
Last sector, +/-sectors or +/-size{K,M,G,T,P} (10489856-20973567, 默认 20973567): +5000M
创建了一个新分区 5,类型为“Linux”,大小为 4.9 GiB。
命令(输入 m 获取帮助): w
分区表已调整。
正在同步磁盘。
root@cwq-virtual-machine:/# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
loop0 7:0 0 4K 1 loop /snap/bare/5
loop1 7:1 0 73.9M 1 loop /snap/core22/1663
loop2 7:2 0 74.2M 1 loop /snap/core22/1122
loop3 7:3 0 266.6M 1 loop /snap/firefox/3836
loop4 7:4 0 497M 1 loop /snap/gnome-42-2204/141
loop5 7:5 0 12.3M 1 loop /snap/snap-store/959
loop6 7:6 0 568K 1 loop /snap/snapd-desktop-integration/253
loop7 7:7 0 452K 1 loop /snap/snapd-desktop-integration/83
loop8 7:8 0 91.7M 1 loop /snap/gtk-common-themes/1535
loop9 7:9 0 40.4M 1 loop /snap/snapd/20671
loop10 7:10 0 38.8M 1 loop /snap/snapd/21759
loop11 7:11 0 12.2M 1 loop /snap/snap-store/1216
sda 8:0 0 60G 0 disk
├─sda1 8:1 0 1M 0 part
├─sda2 8:2 0 513M 0 part /boot/efi
└─sda3 8:3 0 59.5G 0 part /var/snap/firefox/common/host-hunspell
/
sdb 8:16 0 20G 0 disk
├─sdb1 8:17 0 5G 0 part /data1
├─sdb2 8:18 0 1K 0 part
└─sdb5 8:21 0 4.9G 0 part
sr0 11:0 1 4.7G 0 rom /media/cwq/Ubuntu 22.04.4 LTS amd64
root@cwq-virtual-machine:/# mkfs.ext4 /dev/sdb5
mke2fs 1.46.5 (30-Dec-2021)
创建含有 1280000 个块(每块 4k)和 320000 个 inode 的文件系统
文件系统 UUID:10d1bd74-28f7-43ae-bbd1-45ddd855b6c4
超级块的备份存储于下列块:
32768, 98304, 163840, 229376, 294912, 819200, 884736
正在分配组表: 完成
正在写入 inode表: 完成
创建日志(16384 个块): 完成
写入超级块和文件系统账户统计信息: 已完成
root@cwq-virtual-machine:/# mkdir data2
root@cwq-virtual-machine:/# vim /etc/fstab
root@cwq-virtual-machine:/# mount -a
root@cwq-virtual-machine:/# ls data2
lost+found
root@cwq-virtual-machine:/# vim /opt/disk.sh
标签:cwq,分区,文件系统,loop,Linux,snap,磁盘,磁盘分区,硬盘 From: https://blog.csdn.net/pikaqiuu11/article/details/143402382