目录
[二、Linux 中使用的文件系统类型](#二、Linux 中使用的文件系统类型)
一、磁盘基础
磁盘(disk)是指利用磁记录技术存储数据的存储器。
磁盘是计算机主要的存储介质,可以存储大量的二进制数据,并且断电后也能保持数据不丢失。
早期计算机使用的磁盘是软磁盘(Floppy Disk,简称软盘),如今常用的磁盘是硬磁盘(Hard disk,简称硬盘)。
也就是现在说的硬盘就相当于是说我们的磁盘。
二、磁盘结构
磁盘分为:
- 机械硬盘(HDD)
- 和固态硬盘(SSD)
2.1、机械硬盘
由盘片、磁头、盘片转轴及控制电机、磁头控制器、数据转换器、接口和缓存等部分组成。磁头通过沿盘片半径方向运动,加上盘片的高速旋转,定位在指定位置上进行数据的读写操作。
速度较慢,通常约为120MB/S
通常具有较大的存储容量,便宜!!,适合需要大量存储空间的场景。
机械硬盘有 磁盘、磁道、扇区、柱面,这都是机械硬盘的概念,固态硬盘没有这些东西。
磁道、扇区
每个盘片被划分为一个个磁道,每个磁道又划分为一个个扇区(每个扇区存放512字节
的数据,是硬盘的最小存储单位)。其中,最内侧磁道上的扇区面积最小,因此数据密度最大。
盘片
一个磁盘(如一个 1T 的机械硬盘)由多个盘片叠加而成。盘片的表面涂有磁性物质,这些磁性物质用来记录二进制数据。因为正反两面都可涂上磁性物质,故一个盘片会有两个盘面。
柱面
不同盘片相同半径构成的圆柱面,由同一半径圆的多个磁道组成。
磁头
每面一个磁头
每个盘面对应一个磁头。所有的磁头都是连在同一个磁臂上的,因此所有磁头只能"共进退"。所有盘面中相对位置相同的磁道组成柱面。
2.2、固态硬盘
采用闪存技术作为存储介质,由闪存芯片、控制芯片、接口和缓存等部分组成。没有机械运动部件,通过电子信号进行数据读写。
快得多,SATA协议的固态硬盘速度约为500MB/S
NVMe协议的固态硬盘速度则更高,可达3500MB/S。
价格较高,但是性能好!!
固态硬盘没有机械件,由主控芯片、闪存、缓存颗粒、PCB板和外壳这五个部分组成。
ps:其他网友:机械硬盘的划伤是无法修复的,而且是一个普遍现象,相比之下,固态硬盘的数据安全性强很多。机械硬盘早晚退出历史舞台。
2.3、扩展移动硬盘
pssd是移动硬盘,最高的性能能达到2000M/s,电影秒传,不过价格...有点贵,2000M/s的 pssd 4T大概2500元
选购 PSSD 的第一步其实就是弄清楚自己电脑的 USB 口到底能消受多高的速度
USB 4
最高的理论传输速度可以达到 40 Gbps,也就是说,市面上一切你可以卖到的消费级 PSSD 他都能给hold 住,然后他长这样:
通常"雷电"接口旁边都会有一个雷电标识
一般是英特尔i7或者更新的电脑支持
usb3的话没有什么好说的了大概是这几代,一般不是特别老的电脑都支持
也可以选则支持这些的pssd作为使用,会比u盘好一些,但是u盘便宜,但是还是要具体分析。
2.4、机械磁盘的一些计算(了解)
硬盘存储容量=磁头数(8个2进制)×磁道(柱面)数×每道扇区数(6个二进制)×每扇区字节数
1柱面=512 * 扇区数/磁头数×磁道=512*63*255=7.84M
可以用柱面/磁头/扇区来唯一定位磁盘上每一个区域
2.5、磁盘接口类型
IDE ,SATA ,SCSI , SAS , 光纤通道
二、Linux 中使用的文件系统类型
2.1、磁盘分区的表示
2.1.1、主引导记录(MBR)
在每一个磁盘第一个物理扇区处都有MBR(Master Boot Record)主引导记录
位于硬盘的0磁道、0柱面、1扇区中,MBR的主要功能是存储 启动引导程序 和磁盘分区表。
分区表有4个分区记录区,每个分区记录区占16个字节
MBR总共512字节, 前446字节是主引导记录,分区表保存在MBR扇区中的第447-510字节中。
磁盘分区支持最大卷为2.2TB,每个磁盘最多有4个主分区,或3个主分区 、1个扩展分区 和在扩展分区里面分多个逻辑分区。
2.1.2、Linux中将硬盘、分区等设备均表示为文件
Linux中"一切皆文件"
/dev/sdb3
sd表示SCSI设备
hd表示IDE设备
硬盘的顺序号,以字母a、b、c....表示
分区的顺序号,以数字1、2、3...表示。主分区从1-4, 第一个逻辑分区始终从5开始。
2.2、磁盘的分区结构
- 硬盘中的主分区数目只有4个
- 主分区和扩展分区的序号限制在1~4
- 扩展分区再分为逻辑分区
- 逻辑分区的序号将始终从5开始
2.2.1、扩展IDE设备和SCSI设备
IDE设备
定义 :
IDE(Integrated Drive Electronics)设备,全称"集成驱动器电子装置",是一种硬盘驱动器接口技术。IDE的本意是将硬盘的"控制器"与"盘体"集成在一起,从而构成硬盘驱动器。
特点:
- 接口技术:IDE接口也被称为ATA接口,是现代PC(个人电脑)中硬盘驱动器的主要接口类型。
- 简化与可靠性:将盘体与控制器集成在一起的做法减少了硬盘接口的电缆数目与长度,增强了数据传输的可靠性,并使得硬盘的制造变得更为容易。
- 应用广泛:在个人电脑中,IDE设备主要包括硬盘和光驱(如CD-ROM驱动器、DVD-ROM驱动器和CD-R/RW光盘刻录机)。
- 安装简便:IDE设备的安装相对简单,主要需要连接电源线和数据电缆。
- 主从关系:IDE设备存在主设备和从设备的区分,主设备拥有更高的控制优先权。
SCSI设备
定义 :
SCSI(Small Computer System Interface)设备,是一种计算机和智能设备之间(如硬盘、软驱、光驱、打印机、扫描仪等)系统级接口的独立处理器标准。
特点:
- 智能通用接口:SCSI是一种智能的通用接口标准,可以连接多种设备。
- 性能优越:与IDE相比,SCSI在性能上更为出色,尤其在处理大文件和大目录时。
- 价格较高:由于SCSI主要针对服务器和专业环境设计,其价格相对较高。
- 使用复杂:SCSI的使用相对复杂,如SCSI ID和总线终结器的设置不当可能导致问题。
- 扩展性强:SCSI具有极强的扩展能力,一条通道上最多可以连接15个设备(除去控制卡本身占用的一个设备空间)。
总结
IDE设备和SCSI设备在定义、特点、性能、价格和使用复杂性等方面存在显著的差异。IDE设备以其简便、广泛的应用和相对较低的成本,在个人电脑中占据主导地位;而SCSI设备则以其高性能、高扩展性和复杂的专业应用,在服务器和专业环境中备受青睐。
2.3、文件系统类型
XFS
- 是一种高性能的日志文件系统,特别擅长于处理大文件,可支持上百万 T 字节的存储空间。由于 XFS 文件系统开启日志功能,所以即便发生宕机也不怕数据遭到破坏,这种文件系统可以根据日志记录在短时间内进行数据恢复
- 存放文件和目录数据的分区
- 优化算法,日志记录对文件操作非常小,它是全64位的文件系统,最大可以支持8EB的文件系统,而且支持单个文件达到8EB能以接近裸设备一的io性能存储。
- centos7默认使用
SWAP
- 交换文件系统,用于为 Linux 系统建立交换分区。交换分区的作用相当于虚拟内存,能够在一定程度上缓解物理内存不足的问题。一般建议将交换分区的大小设置为物理内存的 1.5~2 倍。例如,对于拥有 512MB物理内存的主机,其交换分区的大小建议设置为 1024MB。如果服务器的物理内存足够大(如 8GB 以上),也可以不设置交换分区。交换分区不用于直接存储用户的文件和目录等数据。【不过如果使用k8s不能使用这个,所以不怎么用,而且只能暂时使用,不能真正替代】
- 相当与内存不够用时使用磁盘空间,做虚拟内存
EXT4
- 第 4 代扩展文件系统,用于存放文件和目录数据的分区,是 Linux 系统中默认使用的文件系统(CentOS 7 默认使用 XFS)。EXT4 是典型的日志型文件系统,其特点是保存有磁盘存取记录的日志数据,便于恢复,在存取性能和稳定性方面更加出色。
- 在处理小文件和目录时,EXT4表现更优
- 支持加密和快照等功能
XFS更适合大型企业环境和大容量数据存储,因为它在性能、可靠性和可扩展性方面表现出色。而EXT4则适用于中小型企业和家庭用户,特别是当需要处理大量小文件或需要与其他操作系统兼容时。
Linux 系统还广泛支持其他各种类型的文件系统,
如 JFS、FAT16、FAT32、NTFS 等。JFS 文件系统多用于商业版本的 UNIX 操作系统中,具有出色的性能表现。由于 NTFS 是微软公司的专有文件系统,Linux 系统默认只支持从 NTFS 分区读取文件,如果需要向 NTFS 分区中写入文件数据,需要结合其他辅助软件(如 NTFS-3G)。
FAT16 FAT32
且支持文件最大32g ,2g单个文件支持最大4gb
ext4文件系统最大支持1EB文件系统
- 1EB=1024PB
- 1PB=1024TB
- 1TB=1024GB
三、检测并确认新硬盘
查看硬盘的整体情况和分区情况
fdisk -l 【磁盘设备】
在Linux系统中,磁盘设备通常被命名为 /dev/sdX
(其中 X
是一个小写字母,如 a
, b
, c
等)
- Device:分区的设备文件名称。
- Boot:是否是引导分区。若是,则有"*"标识。
- Start:该分区在硬盘中的起始位置(柱面数)。
- End:该分区在硬盘中的结束位置(柱面数)。
- Blocks:分区的大小,以 Blocks(块)为单位,默认的块大小为 1024 字节。
- Id:分区对应的系统 ID 号。83 表示 Linux 中的 XFS 分区或 EXT4 分区、8e 表示 LVM 逻辑卷。LVM 是 Linux 操作系统中对磁盘分区进行管理的一种逻辑机制,与之相关的知识将在后面的章节介绍。
- System:分区类型。识别到新的硬盘设备后,就可以在该硬盘中建立新的分区了。在 Linux 操作系统中,分区和格式化的过程是相对独立的,关于格式化分区的操作将在后续内容中讲解。
四、规划硬盘中的分区
交互模式中的常用指令
fdisk指令说明
- Command (m for help): m #输入m指令
- a toggle a bootable flag #设置可引导标记
- b edit bsd disklabel #修改bsd的磁盘标签
- c toggle the dos compatibility flag #设置DOS操作系统兼容标记
- d delete a partition #删除一个分区
- l list known partition types #显示已知的分区类型,其中82为 Linux swap分区,83为Linux分区
- m print this menu #显示帮助菜单
- n add a new partition #增加一个新的分区
- o create a new empty DOS partition table #创建一个新的空白的DOS分区表
- p print the partition table #显示磁盘当前的分区表
- q quit without saving changes #退出fdisk程序,不保存任何修改
- s create a new empty Sun disklabel #创建一个新的空白的Sun磁盘标签
- t change a partition's system id #改变一个分区的系统号码
- u change display/entry units #改变显示记录单位
- v verify the partition table #对磁盘分区表进行验证
- w write table to disk and exit #保存修改结果并退出fdisk程序
- x extra functionality (experts only) #特殊功能,不建议初学者使用
需要重启动 init 6
或者
不重启加载新建的硬盘
磁盘添加完成,进入系统,使用下面命令扫描SCSI总线
echo "- - -" > /sys/class/scsi_host/host0/scan
host1
host2
再查看fdisk -l
或者
lsblk 以树形查看磁盘分区
创建主分区
扩展分区
swap分区
逻辑分区
五、创建文件系统
mkfs命令
mkfs -t 文件系统类型 分区设备
或者mkfs.xfs /dev/sdb1
sdb2相同
sdb3是swap有区别
- swapon 是开启swap 注:/dev/sdb2(swap分区)
- swapof 是关闭swap 注:/dev/sdb2(swap分区)
- swapon -s #查看每个分区的swap状态信息
- free -m#查看总的swap状态信息
需要打开
sbd5
查看
六、挂载,卸载文件系统
mount命令
挂载文件系统,iso镜像到指定文件夹
mount 【-t 类型】存储设备 挂载点目录
mount -o loop iso镜像文件 挂载点目录
loop:用来把一个文件当成硬盘分区挂接上系统
卸载已挂载的文件系统
umount存储设备位置
umount 挂载点目录
挂载到创建文件/home/laowang
永久性挂载
先看 uuid用blkid
vim /etc/fstab 永久挂载
需要重启
七、查看磁盘使用情况
查看磁盘使用情况
df命令
df 【选项】 [文件】
比如T可以看到类型
i:显示in 示inode信息而非块使用量