磁盘管理基础

一.磁盘内部的相关知识

1、前言: 一些关于磁盘的英文


1

2

3

4

5

6

7

8


disk          #磁盘   

head          #磁头

sector         #扇区

track          #磁道

cylinder        #柱面

units          #单元快     

block          #数据块

iNode          #索引节点

2、磁盘内部的相关知识

  一般来说,一块磁盘有1个到数个盘片不等,其中每个盘片的有效盘面对应一个读写磁头,从上到下从0开始依次编号,不同的磁盘面上在逻辑上被化分为track、cylinder、sector。

  磁盘的一个盘面一般有有300-1024磁道(看不到),新式大容量的磁盘可能有更多,信息以脉冲串的形式记录在这些轨迹中,这些同心圆不是连续记录数据;扇区是从1开始计数,所有的盘面上同一个磁道的原型轨迹从上向下依次形成一个圆柱体,就称作柱面,从上到下,从0开始。 

2.1 磁盘的扇区

        操作系统是以扇区为单位将信息存储在磁盘上,一般情况下,每个扇区的大小是512字节,一个扇区有两个内容:存储数据地点的标识符和存储数据的数据段。

2.2 磁盘容量的计算方法

   1》存储容量=磁头数*磁道数(或柱面数)*每磁道的扇区数*每扇区的字节数

   2》存储容量=柱面大小(每磁道的扇区数*每扇区的字节数*磁头数)*柱面数(磁道数)

   注意:一块磁盘的磁道数和柱面数的数量是永远相等的;每个扇区的大小一样的大小

2.3磁盘的数据读写流程

   磁盘的读写一般是按柱面进行的,及磁头读写数据是首先在同一柱面内从“0”磁头开始进行操作,依次向下在同一个柱面的不同的不同磁头上进行操作,只在同一个柱面所有的磁头全部读写完毕后,磁头才转移到下一柱面。磁头是电子切换,磁道是步进电机切换。

二.磁盘分区的相关知识

1、硬盘的存储结构 

  一个硬盘的存储结构有主引导记录、分区表、分区结束标志及其他分区的引导信息及数据区信息,主引导扇区在整个硬盘是唯一的,也就是一个硬盘只有一个。

2、DPT(磁盘分区表)

地址偏移 所占字节
00H 1Bytes State:分区状态,0=未激活,0x80=激活
01H 1Bytes StateHead:分区起始磁头号
02H 2Bytes StateSC分区起始扇区和柱面号,低字节的6位为扇区号:低字节高2位和高字节的8位为柱面号;
04H 1Bytes 分区文系统类型,如0x0b=FAT32,0x83=linux等,00表示此项未用
05H 1Bytes EendHead分区结束磁头号
06H 2Bytes EndSC:分区结束扇区和柱面号
08H 4Bytes Relative:线性寻址方式下分区相对扇区地址(对于基本分区即为绝对地址)
0CH 4Bytes Sectors:分区大小(总扇区数)

3、主引导记录MBR

  硬盘的0磁头0磁道1扇区,是硬盘上的非常重要的位置。在这个扇区中,存放有硬盘的主引导记录MBR(Master Boot Record和硬盘的分区表DPT(Disk Partition table)),通过下面命令: 

   dd if=/dev/sda of=mbr.bin bs=512 count=1 查看硬盘的前512字节。

4、磁盘分区的理论知识

   1》磁盘分区的是指就是针对上述0磁道0扇区64bytes的分区表进行分区。

   2》一块硬盘的分区表仅有64bytes,仅支持4个分区表的信息(主分区+扩展分区)。

   3》磁盘分区的最小单位为柱面(cylinder)。

   4》扩展分区不能直接使用,还需要在扩展分区的基础上创建逻辑分区才行。

   5》扩展分区有自己的分区表,因此扩展分区下面的逻辑分区可以有多个。一块硬盘只能有一块扩展分区,这个扩展分区可以划分为多个逻辑分区,IDE硬盘支持的逻辑分区最大编号63(编号为5-63),而SATA硬盘最大编号为15(5-15)。

4.1 主分区Primary

   磁盘上必须存在的分区,一般为第一个分区,我们可以在这个主分区上安装操作系统,一个磁盘最多只能有四个主分区。主分区会在主引导扇区中生成DPT,每个分区表需要占用16bytes,硬盘在设计时只给分区表留下64bytes的存储空间

4.2 扩展分区Extended

   严格来说,扩展分区不能算一个正常的分区,而是一个连接,起到一个指向的作用。我们可以在扩展分区内建立逻辑分区(logocal),一块硬盘只能有一块扩展分区。

4.3逻辑分区logical

   不能在硬盘中单独直接划分逻辑分区,逻辑分区必须存在于扩展分区内,在扩展分区内可以划分多个逻辑分区,逻辑分区的编号从5开始。

4.4磁盘分区的注意事项

  1》任意多个主分区,但要求是(1-4)

  2》扩展分区和主分区组合。但要求(主分区和扩展分区之和为2-4)

  3》如果要分成4个磁盘分区的话PPPP或P(primart)PPPE(extended)

  4》通过fdisk分区就是再改16字节的分区表,与分区上的数据没有关系,调整分区大小,不会删除分区内的数据

4.5 硬盘分区的设备名

   在Linux,是通过设备名来访问设备的,设备名存放在/dev目录中,设备明的定义规则如下:

   系统的第一块IDE接口的硬盘名称为/dev/hda

   系统的第二块IDE接口的硬盘名称为/dev/hdb

   系统的第一块SCSI接口的硬盘名称为/dev/sda

   系统的第一块SCSI接口的硬盘名称为/dev/sdb

4.6 磁盘分区应当注意的 

   1》linux环境下没有盘符的概念,需要对磁盘设备进行操作,需要使用磁盘的设备名;读取磁盘的内容需要把创建在分区或逻辑卷上的文件系统挂载在指定目录上

   2》在Linux系统划分了分区之后还要在分区上建立文件系统

   3》最少有swap及/两个分区

   4》swap(交换分区)的作用:虚拟内存,swap分区的大小=1.5*物理内存。如果内打于8-16G。则就用8-16G。

   5》建议设置独立的/boot分区,Linux引导分区,存放系统引导文件,如Linux内核等,所有文件的大小一般只有几十m,因此该分区设置为100-200m,常见的生产线上一般服务器分区方式/boot,swap,/三个分区。

三.磁盘分区

1、磁盘查看命令


1

2

3


fdisk -l    ##系统中的所有磁盘设备

df  -T    ##系统正在挂载的磁盘设备

blkid      ##系统可以挂载的磁盘设备id

2、磁盘分区命令fdisk   

fdisk -d 删除分区
fdisk -l 列出系统可用分区
fdisk -n 新建一个分区
fdisk -p 打印分区
fdisk -q 退出,不保存
fdisk -t 修改分区功能的ID
fdisk -w 保存更改到分区表中

1. swap分区查看

swap -s

Filename                                Type            Size    Used    Priority/dev/sda2                               partition       3933180 1468    -1

2.swap分区的建立

划分分区并修改分区id为swap:

1)fdisk /dev/vdb 建立分区

Device Boot      Start         End      Blocks   Id  System/dev/vdb1        2048       2050047     1024000   83  Linux

2)fdisk /dev/vdb

Command (m for help): tSelected partition 1
Hex code (type L to list all codes): l  ##列出所有id类型代码
Hex code (type L to list all codes): 8e ##把/dev/vdb1的分区类型修改为swap,swap类型代码为8e
Changed type of partition ‘Linux‘ to ‘Linux swap / Solaris‘
Command (m for help): wq

[[email protected] ~]# mkswap /dev/vdb1       ##格式化设备为swap文件系统格式
[[email protected] ~]# swapon -a /dev/vdb1    ##激活swap设备,使系统利用此设备
[[email protected] ~]# vim /etc/fstab    ##让此设备开机自动激活

/dev/vdb1       swap    swap    defaults        0       0

[[email protected] ~]# swapon -s        ##列出目前使用swap的设备有哪些

Filename                Type        Size    Used    Priority/dev/vdb1             partition    10484732    0     -1

当磁盘全部被占用,不能创建新分区时,可以用文件来代用分区                
[[email protected] ~]# dd if=/dev/zero of=/swapfile bs=1M count=1000  
此文件创建后的步骤和设备的步骤一致
mkswap /swapfile
swapon -a /swapfile
swapon -s

3. swap分区的删除

[[email protected] ~]# vim /etc/fstab
[[email protected] ~]# swapoff /dev/vdb1
[[email protected] ~]# swapoff /swapfile
[[email protected] ~]# rm -rf /swapfile
[[email protected] ~]# fdisk /dev/vdb


四.磁盘配额

目的:
为磁盘使用的用户分配额度,分区配额是针对于设备
过程:

1)新建分区,并进行xfs格式化

注:分区大小:500M

2)激活设备配额参数

mount -o usrquota /dev/vdb1 /westos/
chmod 777 /westos/
edquota -u student /dev/vdb1

Disk quotas for user student (uid 1000):  Filesystem                   blocks       soft       hard     inodes     soft     hard
  /dev/vdb1                         0          0      204800          0        0        0

3)结果如下:

[[email protected] ~]# su - student
Last login: Tue Nov  7 02:21:39 EST 2017 on pts/0
[[email protected] ~]$ dd if=/dev/zero of=/westos/swapfile  bs=1M count=250
dd: error writing ‘/westos/swapfile’: Disk quota exceeded
201+0 records in
200+0 records out

209715200 bytes (210 MB) copied, 0.235273 s, 891 MB/s

五.gtp分区

guid 磁蝶分割表(GUID Partition Table,缩写:GPT)其含义为“全局唯一标识分区表”
与MBR最大4个分区表项的限制相比,GTP对分区数量没有限制
windows最大仅支持128个GPT分区
GPT可管理硬盘大小达到了18Eb,满足企业最大支持容量.

六. 加密设备开机自动挂载

1) [[email protected] mapper]# vim /etc/fstab

 /dev/mapper/hongyeli    /mnt    xfs    defaults    0 0

2) [[email protected] mapper]# vim /root/passfile

 chmod 600 /root/passfile

3) [[email protected] mapper]# vim /etc/crypttab

      hongyeli    /dev/vdb1    /root/passfile##解密后设备管理文件    设备      加密字符存放文

4) [[email protected] mapper]# cryptsetup luksAddKey /dev/vdb1 /root/passfile 

3. 加密的清除

[[email protected] ~]# umount /mnt
[[email protected] ~]# cryptsetup close hongyeli
[[email protected] ~]# mkfs.xfs /dev/vdb1 -f     ##格式化为了破坏加密
[[email protected] ~]# vim /etc/fstab
[[email protected] ~]# vim /etc/crypttab

时间: 2024-10-15 14:18:26

磁盘管理基础的相关文章

Linux磁盘管理基础

Linux磁盘管理基础 硬盘结构 文件系统与MBR.GTP 磁盘管理三步骤:分区.格式化.挂载 mount 硬盘结构 硬盘的基本组成材质是盘片,不同容量硬盘的盘片数不等.每个盘片有两面,都可记录信息.盘片表面上以盘片中心为圆心,不同半径的同心圆称为磁道,不同盘片相同半径的磁道所组成的圆柱称为柱面,每个磁道被分成许多扇形的区域,每个区域叫一个扇区,每个扇区可存储128×2^N 次方(N=0.1.2.3)字节信息.在DOS中每扇区是128×2^2 次方=512字节. 硬盘存储相关术语:CHS hea

Linux 磁盘管理 基础篇--创建基本文件分区

1 概述 本文通过对讲解了磁盘的基本概念,分区,创建文件系统,挂载,卸载等步骤进行讲解.使得用户能够创建基本的磁盘并挂载使用空间. 2 磁盘基本概念 2.1 磁盘空间 每个扇区大小是512byte,这是磁盘的最小单位 每一个磁道上有多少个扇区就是扇区数 sectors 每一圈叫做磁道(track),最外面的叫做0磁道 依次往里增加,最里面的磁道数最大 每个盘有两个面,都有两个磁头(head)读取数据 相同的磁道组成的叫做柱面(cylinder),同样最外面叫0柱面,最里面柱面数最大 因此, 每个

Linux 磁盘管理基础

一.磁盘内部的相关知识 1.前言: 一些关于磁盘的英文 disk          #磁盘    head          #磁头 sector         #扇区 track          #磁道 cylinder        #柱面 units          #单元快      block          #数据块 iNode          #索引节点 2.磁盘内部的相关知识   一般来说,一块磁盘有1个到数个盘片不等,其中每个盘片的有效盘面对应一个读写磁头,从上到下从

Linux 磁盘管理基础<二>

一.分区加密 cryptsetup       luksFormat/dev/vdb1 WARNING! ======== This will overwrite data on /dev/vdb1irrevocably.   Are you sure? (Type uppercase yes): YES        ##确定加密 Enter passphrase:                   ##密码大于8位,并且不能太简单 Verify passphrase:           

inux系统磁盘管理基础知识及总结

Linux 磁盘设备基础知识指南 磁盘体系: [[email protected] ~]# free -m total       used       free     shared    buffers     cached Mem:           496        210        286          0         50         95 -/+ buffers/cache:         64        432 Swap:         1023 

磁盘管理基础知识

机械式硬盘:U盘.光盘.软盘.磁带.硬盘 这里主要说硬盘,先来说一下硬盘内部物理存储结构,内部是由许多盘片组成,中间有个高速旋转的轴,还有磁头和磁臂,每个盘片的正反面都存有数据,通过磁臂的移动的到固定的位置,然后磁头和盘面"接触",不是真正接触,只是两者之间只有只微米的距离,通过磁性变化,从而使盘面产生0和1信号,进而存储信息.注意:里面是真空的,试想一下如果不是真空,如果旋转是碰到了尘埃,那么久介质就会被损坏. 从逻辑上来说,产生了四个概念: 磁道:每个盘面被划分为多个同心圆,其实就

Linux磁盘管理及文件系统使用

磁盘管理基础知识 分区 fdisk parted gdisk 格式化 挂载 Linux中磁盘命名:IDE类型:/dev/hd[a-z]SCSI类型:/dev/sd[a-z] 一块磁盘经过哪些步骤才能够使用:分区(非必需)-->格式化-->挂载:磁盘分区的类型有MBR(master boot record)和GPT(GUID Partition Table),主要区别在MBR只能分4个主分区超过需要分为逻辑分区,磁盘容量最大不超过2T,超过部分无法识别. MBR 也就是主引导记录,位于硬盘的 0

Linux基础之磁盘管理

 Linux基础之磁盘管理         关于Linux中磁盘管理我们应该从以下四个方面入手,去了解和学习磁盘管理的知识. 第一点 磁盘的结构--硬盘         硬盘的参数 结构:磁盘的盘片,磁头,马达(机械键盘) 类型:固态硬盘(SSB)和机械硬盘 接口:早期的IDE接口,现在的SATA,SCSI,SAS 还有容量,转速,传输速度,缓存等. 硬盘存储术语 head: 磁头 track: 磁道 cylinder: 柱面 secotr: 扇区  512bytes(字节) 第二点 磁盘的分区

Linux命令工具基础04 磁盘管理

Linux命令工具基础04 磁盘管理 日程磁盘管理中,我们最常用的有查看当前磁盘使用情况,查看当前目录所占大小,以及打包压缩与解压缩: 查看磁盘空间 查看磁盘空间利用大小 df -h -h: human缩写,以人类易读方式显示结果(既带单位:比如M/G,如果不加这个参数,显示的数字以B为单位) $df -h /opt/app/todeav/config#df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/VolGroup00-