磁盘管理
# Linux 磁盘管理 # 磁盘接口(磁盘与主板的硬件接口): # IDE接口:插拔是针头,针头容易损坏(淘汰) # ASTA磁盘的SATA(Serial ATA)接口:结构简单。支持热插拔。使用SATA口的磁盘又叫串口磁盘。Serial ATA采用穿行连接方式,串行ATA总线使用嵌入式时钟信号,具备了更强的纠错能力,与以往相比较最大的区别在于能对传输指令(不仅仅是数据)进行检查,如果发现错误会自动矫正,这在很大程度上提高了数据传输的可靠性。 # SCSI接口:小型计算机系统接口,和IDE(ATA)是完全不同的接口,IDE接口是普通PC的标准接口,而SCSI并不是转本为磁盘设计的接口,是一种管饭应用于小型机上的高速数据传输技术。SCSI接口具有应用范围广、多任务、带宽大、CPU占用率低,以及热插拔等有点,因较高的价格使得它很难如IDE磁盘般普及,因此,早几年的SCSI磁盘主要应用于中、高端服务器和高档工作站中。 # SAS磁盘的SAS接口:SAS结合了ASTA与SCSI两种接口的优点。降低了磁盘阵列的成本、串行接口让传输性能提高、更高的扩展性、安装更简单、更好的兼容性。 # 光纤通道(PC):价格最高。热插拔性、告诉带宽、远程链接、连接设备数量大等。具体区别还是得再百度。 # 磁盘: # SSD磁盘(固态硬盘): # 有点: # 1.启动快(没有点击加速旋转的启动过程) # 2.读取延迟小。不用刺头,快速随机读取,读取延迟极小。 # 3.碎片不影响读取时间。相对稳定的读取时间。由于寻址时间与数据存储位置无关联,因此磁盘碎片不会影响读取时间 # 4.写入速度快。基于DRAM的固态磁盘写入速度几块。 # 5.无噪音。因为没有机械麻袋和风扇,工作时噪音值为0分贝。某些高端或大容量产品装有风扇,因此扔会产生噪音。 # 6.工作温度范围更大。典型的磁盘驱动器只能在5到55℃。而大多数固态磁盘可在-10~70℃工作,一些工业级的固态磁盘还可以在-40~85℃,甚至更大的温度范围下工作。 # 7.体积小重量轻。 # 8.抗震动。 # 缺点 # 1.成本高:每单位容量价格是传统磁盘的5~10倍(基于闪存),甚至200~300倍(基于DRAM)。 # 2.容量低:目前固态磁盘最大容量远地狱传统磁盘。 # 3.易受外界影响:由于不像传统磁盘那样屏蔽与法拉第笼中,固态磁盘更容易收到某些外界因素的不良影响。如断点(基于DRAM的固态磁盘)、磁场干扰、静电等。 # 4.写入寿命有限:写入寿命有限(基于闪存)。一般闪存写入寿命为1万到10万次,特质的可达到100万次到500万次,然而整台计算机寿命期内文件系统的某些部分(如文件分配表)的写入次数仍将超过这一极限。特质的文件系统或者固件可以分担写入的位置,使固态磁盘的整体寿命达到20年以上。 # 5.数据难以恢复:数据损坏后难以恢复。一旦在硬件上发生损坏,如果是传统的磁盘或者磁带存储方式,通过数据恢复也许还能拯救一部分数据。但是如果是固态存储,一旦芯片发生损坏,要想在碎成几瓣或者被电流击穿的芯片中找回数据那几乎是不可能的,当然这种不足也是可以牺牲存储空间来弥补的,主要用RAID(https://blog.csdn.net/ensp1/article/details/81318135)。 # 6.电池航程较短:根据实际测试,使用固态硬盘的笔记本电脑在空闲或者低负荷运行下,电池航程短语使用5400RPM的2.5英寸传统 # 7.基于DRAM的固态磁盘在任何时候的能耗都高于传统磁盘,尤其是关闭时仍需供电,否则数据丢失。 # 当前服务器市场主流磁盘为SAS、SATA、SSD硬盘 # 企业级SAS硬盘常见是15000转/分钟(主轴的转数)。用于提供生产线上的普通对外提供服务的业务服务器。SAS磁盘是生产环境首选的磁盘配置 # 企业级SATA硬盘7200~10000转/分钟,常见容量1T和2T,优点事经济实惠。用于线下不提供对外服务的的磁盘。可用作数据备份。 # SSD固态垫子盘,特点:容量小、价格贵、速度快。一般用于数据量小并且有差大规模高并发的业务(这不是唯一的办法,还可以通过磁盘加内存缓存的技术方式解决这个大规模并发的问题) # 总结 # 1.线上的业务(对外提供业务),用SAS磁盘。 # 2.线下业务(不对外提供),用SATA磁盘。 # 3.线上高并发、小容量业务,用SSD磁盘。 # 4.智能SAS、SATA、SSD磁盘配合使用 # 注意:千万别用SATA磁盘来做在线高并发服务的数据库存储或者数据库业务。 # 磁盘分区: # fdisk命令 sudo fdisk -l # 列出所有磁盘 sudo fdisk /dev/sdb # 进行分区 partprobe /dev/sdb # 分区完了之后对磁盘进行加载 tune2fs -c -1 /dev/sdb1# 重新加载分区后进行文件格式化 mkfs.ext4 /dev/sdb1 # 这也是格式化 mount /dev/sdb1 /mnt # 最后进行挂载后就可以使用了。永久挂载需要修改配置文件 # parted 非交互式分区 parted /dev/sdb mklabel gpt # 格式化gpt格式,不然无法使用parted来进行分区 parted /dev/sdb mkpart primary 0 500 # 创建第一个分区 parted /dev/sdb mkpart logical 501 1000 # 创建第二个分区 parted /dev/sdb p # 查看所有分区 mkfs -t ext4 /dev/sdb1 # 重新加载分配好的分区 mount /dev/sdb2 /tmp # 挂载 ll /dev/sd* # 查看所有磁盘 df -h # 查看所有挂载 lsblk # 列出系统中的所有块设备及其逻辑分区。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?