磁盘管理

硬盘接口和硬盘种类

从整体的角度上,硬盘接口分为IDE、SATA、SCSI和SAS四种,IDE接口硬盘多用于家用产品中,也部分应用于服务器,SCSI接口的硬盘则主要应用于服务器市场,而SAS只在高端服务器上,价格昂贵

SATA硬盘:  

  用SATA接口的硬盘又叫串口硬盘,是以后PC机的主流发展方向,因为其有较强的纠错能力,错误一经发现能自动纠正,这样就大大的提高了数据传输的安全性。新的SATA 使用了差动信号系统"differential-signal-amplified-system"。这种系统能有效的将噪声从正常讯号中滤除,良好的噪声滤除能力使得SATA只要使用低电压操作即可,和 Parallel ATA 高达5V的传输电压相比,SATA 只要0.5V(500mv) 的峰对峰值电压即可操作于更高的速度之上。"比较正确的说法是:峰对峰值'差模电压'"。一般转速可达7200转/分。

SCSI硬盘:

  SCSI硬盘即采用SCSI接口的硬盘。 优点:SCSI接口具有应用范围广、多任务、带宽大、CPU占用率低,以及热插拔等。它由于性能好、稳定性高,因此在服务器上得到广泛应用。缺点:由于SCSI硬盘价格非常昂贵,所以一般的PC是不会使用SCSI硬盘。 一般转速可达10000转/分。

SAS硬盘:

  SAS(Serial Attached SCSI)即串行连接SCSI,是新一代的SCSI技术,和现在流行的Serial ATA(SATA)硬盘相同,都是采用串行技术以获得更高的传输速度,并通过缩短连结线改善内部空间等。改善存储系统的效能、可用性和扩充性。 一般转速可达15000转/分,甚至更高。

磁盘分区

目前的磁盘主要有 MBR 以及 GPT 两种格式,这节我们主要谈 MBR

  MBR的意思是“主引导记录”,最早在1983年在IBM PC DOS 2.0中提出。之所以叫“主引导记录”,是因为它是存在于驱动器开始部分的一个特殊的启动扇区。这个扇区包含了驱动器的分区信息(64个字节,大小固定,一个分区用16个字节记录)和已安装的操作系统的启动加载器(446字节)和2个字节的结束标志,所以这个扇区的大小是512个字节。。所谓启动加载器,是一小段代码,用于加载驱动器上其他分区上更大的加载器。如果你安装了Windows,Windows启动加载器的初始信息就放在这个区域里——如果MBR的信息被覆盖导致Windows不能启动,你就需要使用Windows的MBR修复功能来使其恢复正常。如果你安装了Linux,则位于MBR里的通常会是GRUB加载器。MBR支持最大2TB磁盘,它无法处理大于2TB容量的磁盘。MBR还只支持最多4个主分区——如果你想要更多分区,你需要创建所谓“扩展分区”,并在其中创建逻辑分区。

分区符

  盘的0柱面、0磁头、1扇区称为主引导扇区(也叫主引导记录MBR)。它由三个部分组成,主引导程序、硬盘分区表DPT(Disk Partition table)和分区有效标志(55AA)。在总共512字节的主引导扇区里主引导程序(boot loader)占446个字节,第二部分是Partition table区(分区表),即DPT,占64个字节,硬盘中分区有多少以及每一分区的大小都记在其中。第三部分是魔数magic number,占2个字节,固定为5AA。

分区编号:主分区1-4 ,逻辑分区5……

LINUX规定:逻辑分区必须建立在扩展分区之上,而不是建立在主分区上

分区作用:

主分区:主要是用来启动操作系统的,它主要放的是操作系统的启动或引导程序,/boot分区最好放在主分区上

扩展分区不能使用的,它只是做为逻辑分区的容器存在的,先创建一个扩展分区,在拓展分区之上创建逻辑分区;我们真正存放数据的是主分区和逻辑分区,大量数据都放在逻辑分区中。

使用分区工具fdisk对磁盘进行操作,分区,格式化

主分区+扩展分区 最多只能有4个

扩展分区可以是0个,最多是1个

扩展分区不能直接使用,扩展分区必须首先创建成逻辑分区才能使用

逻辑分区可以是0个 1个 多个

命名方式: /dev/sd{a-z}n——a代表第一块,b表示第二块,以此类推

n  表示每块磁盘上划分的磁盘分区编号

文件系统

文件系统的特征:我们都知道磁盘分区完毕后还需要进行格式化(format),之后操作系统才能使用这个文件系统。为什么要格式化?这是因为每种操作系统所设置的文件属性/权限并不相同,为了存放所需的数据就需要将分区进行格式化,以成为操作系统能够利用的文件系统格式(filesystem)。

用户在硬件存储设备中执行的文件建立、写入、读取、修改、转存与控制等操作都是依靠文件系统来完成的。文件系统的作用是合理规划硬盘,以保证用户正常的使用需求。Linux系统支持数十种的文件系统,而最常见的文件系统如下所示。

Ext3

  是一款日志文件系统,能够在系统异常宕机时避免文件系统资料丢失,并能自动修复数据的不一致与错误。然而,当硬盘容量较大时,所需的修复时间也会很长,而且也不能百分之百地保证资料不会丢失。它会把整个磁盘的每个写入动作的细节都预先记录下来,以便在发生异常宕机后能回溯追踪到被中断的部分,然后尝试进行修复。

Ext4

  Ext3的改进版本,作为RHEL 6系统中的默认文件管理系统,它支持的存储容量高达1EB(1EB=1,073,741,824GB),且能够有无限多的子目录。另外,Ext4文件系统能够批量分配block块,从而极大地提高了读写效率。

XFS

  是一种高性能的日志文件系统,而且是RHEL 7中默认的文件管理系统,它的优势在发生意外宕机后尤其明显,即可以快速地恢复可能被破坏的文件,而且强大的日志功能只用花费极低的计算和存储性能。并且它最大可支持的存储容量为18EB,这几乎满足了所有需求。

fdisk磁盘分区管理

作用:对磁盘进行操作,分区,格式化

语法:fdisk  [选项]  device

  常用选项  -i  查看磁盘分区表

使用方法

  fdisk  /dev/sda

  1. 输入 m 显示所有命令列示。

  2. 输入 p 显示硬盘分割情形。

  3. 输入 a 设定硬盘启动区。

  4. 输入 n 设定新的硬盘分割区。

    4.1. 输入 e 硬盘为[延伸]分割区(extend)。

    4.2. 输入 p 硬盘为[主要]分割区(primary)。默认不输入为p

  5. 输入 t 改变硬盘分割区属性。(制作交换分区时会用到)

  6. 输入 d 删除硬盘分割区属性。

  7. 输入 q 结束不存入硬盘分割区属性。

  8. 输入 w 结束并写入硬盘分割区属性。

添加主分区

首先添加一块新的硬盘(要注意要在虚拟机关机的前提下才能对磁盘进行添加)

第一步查看磁盘   ls  /dev/sd*

  

  1. [root@localhost ~]# ls /dev/sd*
  2. /dev/sda /dev/sda1 /dev/sda2 /dev/sdb /dev/sdc

lsblk -f 也可以查看磁盘,这个命令还可以查看每个磁盘上面安装的文件系统,这个命令很重要哦

  1. [root@localhost ~]# lsblk -f
  2. NAME FSTYPE LABEL UUID MOUNTPOINT
  3. sda
  4. ├─sda1 xfs 19cc0cdc-62b9-4e32-b5ac-c946e7ed608a /boot
  5. └─sda2 LVM2_member BgwSVO-gUJY-gioG-uUWY-OgtR-hdHR-cbKwLk
  6. ├─cl-root xfs 27369bc8-d775-4805-8896-7f7dd5762b06 /
  7. └─cl-swap swap 319fd4ba-62a8-4be2-bc04-2caded22ecfe [SWAP]
  8. sdb
  9. └─sdb1 xfs f0ea650e-357b-4fa1-a8f6-be95982866b4
  10. sdc

第二步 对sdb分配一个100M的空间

  

  1.  

root@localhost ~]# fdisk /dev/sdb              #进入磁盘管理
  欢迎使用 fdisk (util-linux 2.23.2)。

  1. 更改将停留在内存中,直到您决定将更改写入磁盘。
  2. 使用写入命令前请三思。
  3.  
  4. Device does not contain a recognized partition table
  5. 使用磁盘标识符 0xcf5dbbb2 创建新的 DOS 磁盘标签。
  6.  
  7. 命令(输入 m 获取帮助):m
  8. 命令操作
  9. a toggle a bootable flag
  10. b edit bsd disklabel
  11. c toggle the dos compatibility flag
  12. d delete a partition
  13. g create a new empty GPT partition table
  14. G create an IRIX (SGI) partition table
  15. l list known partition types
  16. m print this menu
  17. n add a new partition
  18. o create a new empty DOS partition table
  19. p print the partition table
  20. q quit without saving changes
  21. s create a new empty Sun disklabel
  22. t change a partition's system id
  23. u change display/entry units
  24. v verify the partition table
  25. w write table to disk and exit
  26. x extra functionality (experts only)
  27.  
  28. 命令(输入 m 获取帮助):p
  29.  
  30. 磁盘 /dev/sdb:21.5 GB, 21474836480 字节,41943040 个扇区
  31. Units = 扇区 of 1 * 512 = 512 bytes
  32. 扇区大小(逻辑/物理):512 字节 / 512 字节
  33. I/O 大小(最小/最佳):512 字节 / 512 字节
  34. 磁盘标签类型:dos
  35. 磁盘标识符:0xcf5dbbb2
  36.  
  37. 设备 Boot Start End Blocks Id System
  38.  
  39. 命令(输入 m 获取帮助):n #建立一个新的分区
  40. Partition type:
  41. p primary (0 primary, 0 extended, 4 free)
  42. e extended
  43. Select (default p): p #默认为p,直接回车即可
  44. 分区号 (1-4,默认 1):
  45. 起始 扇区 (2048-41943039,默认为 2048):
  46. 将使用默认值 2048
  47. Last 扇区, +扇区 or +size{K,M,G} (2048-41943039,默认为 41943039):+100M
  48. 分区 1 已设置为 Linux 类型,大小设为 100 MiB
  49.  
  50. 命令(输入 m 获取帮助):
  51. 命令(输入 m 获取帮助):p #查看已经分好的磁盘
  52.  
  53. 磁盘 /dev/sdb:21.5 GB, 21474836480 字节,41943040 个扇区
  54. Units = 扇区 of 1 * 512 = 512 bytes
  55. 扇区大小(逻辑/物理):512 字节 / 512 字节
  56. I/O 大小(最小/最佳):512 字节 / 512 字节
  57. 磁盘标签类型:dos
  58. 磁盘标识符:0xcf5dbbb2
  59.  
  60. 设备 Boot Start End Blocks Id System
  61. /dev/sdb1 2048 206847 102400 83 Linux
  62.  
  63. 命令(输入 m 获取帮助):w #保存并退出,如果不想保存选择 q
  64. The partition table has been altered!
  65.  
  66. Calling ioctl() to re-read partition table.
  67. 正在同步磁盘。

第三步  格式化

格式化即给新建的磁盘分区添加一个文件系统,现在常用的为 XFS文件系统

mkfs.xfs  /dev/sdb1

  1. [root@localhost ~]# mkfs.xfs /dev/sdb1
  2. mkfs.xfs: /dev/sdb1 appears to contain an existing filesystem (xfs).
  3. mkfs.xfs: Use the -f option to force overwrite.

第四步  挂载

在挂载之前要新建一个文件夹来作为挂载点

mkdir  /test

mount  /dev/sdb1  /test

  1. [root@localhost /]# mkdir /test
  2. [root@localhost /]# mount /dev/sdb1 /test #挂载
  3. [root@localhost /]# df -h #查看磁盘分配空间
  4. 文件系统 容量 已用 可用 已用% 挂载点
  5. /dev/mapper/cl-root 17G 5.2G 12G 31% /
  6. devtmpfs 473M 0 473M 0% /dev
  7. tmpfs 489M 144K 489M 1% /dev/shm
  8. tmpfs 489M 7.1M 482M 2% /run
  9. tmpfs 489M 0 489M 0% /sys/fs/cgroup
  10. /dev/sda1 1014M 173M 842M 18% /boot
  11. tmpfs 98M 20K 98M 1% /run/user/0
  12. /dev/sdb1 97M 5.2M 92M 6% /test

第五步  写入系统文件开机自启

echo  “/dev/sdb1  /test  xfs  defaults  0   0 ” >>  /etc/fstab

/dev/sdb1 ——要挂载的分区设备

/test——挂载点

xfs——文件系统类型

第一个 0 ——是否备份

第二个 0 ——是否检测

defaults——挂载选项

添加交换分区

  SWAP(交换)分区是一种通过在硬盘中预先划分一定的空间,然后将把内存中暂时不常用的数据临时存放到硬盘中,以便腾出物理内存空间让更活跃的程序服务来使用的技术,其设计目的是为了解决真实物理内存不足的问题。但由于交换分区毕竟是通过硬盘设备读写数据的,速度肯定要比物理内存慢,所以只有当真实的物理内存耗尽后才会调用交换分区的资源。

第一步  新建磁盘分区

fdisk  /dev/sdb

  1. 命令(输入 m 获取帮助):n
  2. Partition type:
  3. p primary (1 primary, 0 extended, 3 free)
  4. e extended
  5. Select (default p):
  6. Using default response p
  7. 分区号 (2-4,默认 2):
  8. 起始 扇区 (10487808-41943039,默认为 10487808):
  9. 将使用默认值 10487808
  10. Last 扇区, +扇区 or +size{K,M,G} (10487808-41943039,默认为 41943039):+5G
  11. 分区 2 已设置为 Linux 类型,大小设为 5 GiB
  12.  
  13. 命令(输入 m 获取帮助):p
  14.  
  15. 磁盘 /dev/sdb21.5 GB, 21474836480 字节,41943040 个扇区
  16. Units = 扇区 of 1 * 512 = 512 bytes
  17. 扇区大小(逻辑/物理):512 字节 / 512 字节
  18. I/O 大小(最小/最佳):512 字节 / 512 字节
  19. 磁盘标签类型:dos
  20. 磁盘标识符:0x6c292b76
  21.  
  22. 设备 Boot Start End Blocks Id System
  23. /dev/sdb1 2048 10487807 5242880 83 Linux
  24. /dev/sdb2 10487808 20973567 5242880 83 Linux
  25.  
  26. 命令(输入 m 获取帮助):w

第二步 格式化操作

mkswap /dev/sdb2

  1. [root@localhost /]# mkswap /dev/sdb2
  2. 正在设置交换空间版本 1,大小 = 5242876 KiB
  3. 无标签,UUID=c63f4ad4-00b7-48d4-87d6-caf88d96df08

第三步 挂载使用

swapon   /dev/sdb2  swap设备是挂载到设备里面的,所以不用加挂载点

  1. [root@localhost /]# free -h
  2. total used free shared buff/cache available
  3. Mem: 976M 487M 86M 8.6M 402M 273M
  4. Swap: 2.0G 0B 2.0G
  5. [root@localhost /]# swapon /dev/sdb2
  6. [root@localhost /]# free -h
  7. total used free shared buff/cache available
  8. Mem: 976M 491M 83M 8.6M 402M 270M
  9. Swap: 7.0G 0B 7.0G

第四步  写在系统里

echo “/dev/sdb2   swap  swap  defaults  0   0”  >> /etc/fstab

第五步  停止swap

   swapoff  /dev/sdb2

或者 swapoff   -a

  1. total used free shared buff/cache available
  2. Mem: 999936 499740 90608 8836 409588 279980
  3. Swap: 2097148 0 2097148
  4. [root@localhost /]# swapoff -a
  5. [root@localhost /]# free -h
  6. total used free shared buff/cache available
  7. Mem: 976M 486M 89M 8.6M 399M 274M
  8. Swap: 0B 0B 0B

LVM ——逻辑卷管理器

在现实生活中,我们常用来存放数据的磁盘不够大了怎么办,,比如一开始规划主机的时候只给了100GB,但用户众多之后发现这个文件系统不够大,此时能怎么做,我相信大多数的朋友都是再加一块新硬盘,然后重新格式化,再将原硬盘数据拷贝过来,然后将原来的分区卸载重新挂载新的分区,如果下一次又不够了呢,随着数据越来越多工作量会越来越大,是不是听上去都很麻烦呢?那么LVM这玩意的作用就体现出来了。

什么是LVM:PV、PE、VG、LV

  LVM的全名是 Logical  Volume Manager ,中文翻译是逻辑卷管理器,是一种可以弹性的调节文件系统的容量的管理器,而不在调整性能与数据安全上面,那是RAID的工作可不要搞混了!它是在硬盘分区和文件系统之间添加了一个逻辑层,它提供了一个抽象的卷组(VG),可以把多块硬盘进行卷组合并再经过划分成为可使用的分区(LV),就可以进行挂载使用了。

物理卷(Physical  Volume  PV)

  物理卷就是LVM的基本存储逻辑块,我们实际的分区(disk)需要调整系统标识符(system ID)成为8e(LVM的标识符),然后再经过 pvcreat 的命令将它转化为LVM最底层的物理卷(PV),之后才能讲这些PV加以利用。

卷组(Volume  Group, VG)

  所谓的LVM大磁盘就是将许多的PV整合成这个VG,所以VG就是LVM组合起来的超大磁盘,那么这个磁盘最大可以到多大容量呢,

Linux磁盘管理和lvm的更多相关文章

  1. Linux磁盘空间扩容(LVM)

    Linux磁盘空间扩容(lvm) 随着系统的运行时间增长,业务数据的增长,原有磁盘的空间会存在空间不足情况,导致系统不能正常运行,或者系统管理员磁盘没有完全划完,根据使用者的需求自行划分.那么怎么才能 ...

  2. 【转载】Linux磁盘管理:LVM逻辑卷管理

    Linux学习之CentOS(二十五)--Linux磁盘管理:LVM逻辑卷基本概念及LVM的工作原理 这篇随笔将详细讲解Linux磁盘管理机制中的LVM逻辑卷的基本概念以及LVM的工作原理!!! 一. ...

  3. Linux学习之CentOS(二十六)--Linux磁盘管理:LVM逻辑卷的创建及使用

    在上一篇随笔里面 Linux学习之CentOS(二十五)--Linux磁盘管理:LVM逻辑卷基本概念及LVM的工作原理,详细的讲解了Linux的动态磁盘管理LVM逻辑卷的基本概念以及LVM的工作原理, ...

  4. Linux磁盘管理:LVM逻辑卷基本概念及LVM的工作原理

    一.传统的磁盘管理 其实在Linux操作系统中,我们的磁盘管理机制和windows上的差不多,绝大多数都是使用MBR(Master Boot Recorder)都是通过先对一个硬盘进行分区,然后再将该 ...

  5. linux磁盘管理系列-LVM的使用

    LVM是什么 LVM是Linux操作系统的逻辑卷管理器. 现在有两个Linux版本的LVM,分别是 LVM1,LVM2.LVM1是一种已经被认为稳定了几年的成熟产品,LVM2 是最新最好的LVM版本. ...

  6. Linux磁盘管理及LVM讲解

    硬盘接口 硬盘接口分为IDE.SATA.SCSI和SAS四种, IDE接口硬盘多用于家用产品中,也部分应用于服务器.不支持热添加,比较老. SCSI接口的硬盘则主要应用于服务器市场.linux. 而S ...

  7. Linux磁盘管理之LVM

    一.LVM介绍 在我们管理Linux磁盘的时候,通常会遇到这么一种情况.在最初规划Linux的磁盘的时候,我们给某个分区划分了一定量的磁盘空间,使用一段时间后,发现我们规划的磁盘空间不足了,这个时候怎 ...

  8. Linux磁盘配额与LVM

    一.LVM概述  逻辑卷管理 Logical Volume Manager二.LVM机制的基本概念三.LVM的管理命令  ① 主要命令  ② ==LVM逻辑卷操作流程==  ③ 举例四.磁盘配额概述  ...

  9. Linux磁盘分区管理-LVM回顾

    LVM(逻辑分区管理)的几个概念:PV(物理卷),VG(卷组),LV(逻辑卷),PE(物理区域),LE(逻辑区域),其中PV, VG, LV 三者之间的关系如下图 : 物理存储介质:这里指系统的存储设 ...

随机推荐

  1. iDempiere 使用指南 开发环境搭建

    Created by 蓝色布鲁斯,QQ32876341,blog http://www.cnblogs.com/zzyan/ iDempiere官方中文wiki主页 http://wiki.idemp ...

  2. 转:hive-列转行和行转列

    1. 假设我们在hive中有两张表,其中一张表是存用户基本信息,另一张表是存用户的地址信息等,表数据假设如下: user_basic_info: id name 1 a 2 b 3 c 4 d use ...

  3. hdu 1010 Tempter of the Bone(dfs)

    Tempter of the Bone Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Othe ...

  4. windows c++ 修改用户的文件夹操作权限

    一般Windows下的系统文件(夹)只让受限帐户读取而不让写入和修改.如果要开启写操作权限就需要手动修改文件(夹)的用户帐户安全权限(这操作当然要在管理员帐户下执行).以下用程序封装了一下该操作: # ...

  5. Word 2010 去除文字或段落背景色

    在复制网页文本到Word时,有时会带有网页上的背景颜色.下面采用两种方法解决这种问题,可根据不同需要进行选择. 方法一:清除样式 此种方法适用于只需要网页文字,而不想要网页任何样式信息,如字体大小,段 ...

  6. css中attribute selector及pseudo class

    https://developer.mozilla.org/en-US/docs/Web/CSS/Reference#Selectors 在css3规范中,定义了以下几种类型的selector: Ba ...

  7. Intellij IDEA 格式化代码

  8. java里面list是引用的好例子

    java里面的赋值和引用是不同的,以后要详细总结一下! 看一个例子: public static void main(String[] args) { List<String> list ...

  9. POJ 3368 Frequent values 【ST表RMQ 维护区间频率最大值】

    传送门:http://poj.org/problem?id=3368 Frequent values Time Limit: 2000MS   Memory Limit: 65536K Total S ...

  10. ASP.NET Web API编程——使用Odata

    路由配置 routePrefix路由前缀,必须含有Odata字符串,否则路由不到Odata控制器. V1表示版本,可以使用这种方式进行版本控制,也可以使用其他方式. config.Count().Fi ...