磁盘管理和文件系统

  • 硬盘分区

    分区优势
    分区工具
    fdisk
    gdisk

    分区类型
    MBR分区
    GPT分区

    同步分区表
    cat /proc/partations

  • 文件系统

    文件系统类型
    ext2
    ext3
    ext4
    xfs
    swap

    创建文件系统命令
    mkfs
    创建ext文件系统命令
    mke2fs
    tune2fs

  • 挂载mount

    说明:
    挂在方法:
    格式:
    常用命令选项:

  • 分区实验

    分区说明

    MBR分区实验
    分区步骤:
    GPT分区实验
    分区步骤:

  • swap分区实验

    swap硬件分区
    分区说明
    分区步骤

  • 命令相关

磁盘管理命令 parted
*文件的破坏和销毁
*dd命令用法示例

  • 正文↓↓↓↓
  • 硬盘分区
    分区优势:
    优化I/O性能
    实现磁盘空间配额限制
    提高修复速度
    隔离系统和程序
    安装多各个OS
    采用不同的文件系统
    
    分区工具fdisk和gdisk
    gdisk /dev/sdb 类fdisk 的GPT分区工具
    fdisk -l [-u] [device...] 查看分区
    fdisk /dev/sdb 管理分区
    子命令:
    p 分区列表
    t 更改分区类型
    n 创建新分区
    d 删除分区
    v 校验分区
    u 转换单位
    w 保存并退出
    q 不保存并退出
    
    创建分区使用
    fdisk 创建MBR分区
    gdisk 创建GPT分区
    
    分区类型
    MBR分区  	     
         
         特点:    	               
               MBR分区中一块硬盘最多有4个主分区,也 区+1扩展(N个逻辑分区)
     
         0磁道0扇区: 512bytes               
                     
               446bytes:boot loader
               64bytes:分区表,其中每16bytes标识一个分区
               2bytes:55AA
    
         分区表结构:
    

MBR分区表结构这里插入图片描述

GPT分区
     
     特点:
          GUID(Globals Unique Identifiers) partition table 支持128个分区,使用64
     位,8Z(512Byte/block )64Z ( 4096Byte/block)
    
          使用128位UUID(UniversallUnique Identifier) 表示磁盘和分区 GPT分区表
     自动备份在头和尾两份,并有CRC校验位
     
          UEFI (Unified Extensible Firmware Interface 统一可扩展固件接口)硬件支持
         GPT,使操作系统启动
    
    分区表结构:

GPT分区表

同步分区表

       查看内核是否已经识别新的分区
         cat /proc/partations
 
     centos6通知内核重新读取硬盘分区表新增分区用
          partx -a /dev/DEVICE
          kpartx -a /dev/DEVICE -f: force	
          删除分区用
          partx -d --nr M-N /dev/DEVICE

    CentOS 5,7: 使用partprobe
      partprobe [/dev/DEVICE]
  • 文件系统

文件系统类型

  ext2:
     适用于那些分区容量不是太大,更新也不频繁的情况,例如 /boot 分区
 
  ext3:
      是ext2 的改进版本,其支持日志功能,能够帮助系统从非正常关机导致的异常中恢
     复。它通常被用作通用的文件系统

  ext4:
      是ext 文件系统的最新版。提供了很多新的特性,包括纳秒级时间戳、创建和
     使用巨型文件(16TB)、最大1EB的文件系统,以及速度的提升
 
  xfs:
      SGI,支持最大8EB的文件系统
      根据所记录的日志在很短的时间内迅速恢复磁盘文件内容
      采用优化算法,日志记录对整体文件操作影响非常小
      是一个全64-bit的文件系统,最大可以支持8EB的文件系统
      能以接近裸设备I/O的性能存储数据
 
  swap:
      swap交换分区是系统RAM的补充,swap 分区支持虚拟内存。当没有足够的
     RAM 保存系统处理的数据时会将数据写入 swap 分区

创建文件系统命令

 mkfs命令:
(1) mkfs.FS_TYPE /dev/DEVICE
         ext4
         xfs
         btrfs
         vfat

(2) mkfs -t FS_TYPE /dev/DEVICE
       -L 'LABEL' 设定卷标

创建ext文件系统命令

(1)mke2fs : ext系列文件系统专用管理工具
      -t {ext2|ext3|ext4} 指定文件系统类型
      -b {1024|2:048|4096} 指定块大小
      -L ‘LABEL’ 设置卷标
      -j 相当于 -t ext3
        mkfs.ext3 = mkfs -t ext3 = mke2fs -j = mke2fs -t ext3
      -i # 为数据空间中每多少个字节创建一个inode;不应该小于block大小
      -N # 指定分区中创建多少个inode
      -I 一个inode记录占用的磁盘空间大小,128---4096
      -m # 默认5%,为管理人员预留空间占总空间的百分比
      -O FEATURE[,...] 启用指定特性
      -O ^FEATURE 关闭指定特性

(2)tune2fs:重新设定ext系列文件系统可调整参数的值
      -l 查看指定文件系统超级块信息;super block
      -L 'LABEL’ 修改卷标
      -m # 修预留给管理员的空间百分比
	  -j 将ext2升级为ext3
	  -O 文件系统属性启用或禁用, –O ^has_journal
      -o 调整文件系统的默认挂载选项,–o ^acl
      -U UUID 修改UUID号  
   
   dumpe2fs:显示ext文件系统信息,将磁盘块分组管理
 	  -h:查看超级块信息,不显示分组信息
   
   xfs_info:显示已挂载的 xfs 文件系统信息
      xfs_info mountpoint
  • 挂载mount
    说明:		
      	将额外文件系统与根文件系统某现存的目录建立起关联关系,进而使得此
      目录做为其它文件访问入口的行为
    
    挂载方法:               
              mount DEVICE MOUNT_POINT
    格式: 		 		
      mount [-fnrsvw] [-t vfstype] [-o options] device dir
         device:指明要挂载的设备;
      	 (1) 设备文件:例如/dev/sda5
      	 (2) 卷标:-L 'LABEL', 例如 -L 'MYDATA'
      	 (3) UUID, -U 'UUID':例如 -U '0c50523c-43f1-45e7-
               85c0-a126711d406e'
      	 (4) 伪文件系统名称:proc, sysfs, devtmpfs, configfs 
     
    常用命令选项 : 		
      	-t vsftype 指定要挂载的设备上的文件系统类型
      	-r readonly,只读挂载
      	-w read and write, 读写挂载
      	-n 不更新/etc/mtab,mount不可见
      	-a 自动挂载所有支持自动挂载的设备(定义在了/etc/fstab文件
         	中,且挂载选项中有auto功能)  
        -L 'LABEL' 以卷标指定挂载设备
      	-U 'UUID' 以UUID指定要挂载的设备
      	-B, --bind 绑定目录到另一个目录上
         
         查看内核追踪到的已挂载的所有设备
          cat /proc/mounts
    
  • 分区实验

    分区说明:

      步骤一:给虚拟机添加一块硬盘
      步骤二:使用fdisk或gdisk命令给新增硬盘分区
      步骤三:使用mkfs.xfs命令制作文件系统
      步骤四:使用mount命令挂载文件系统并使用
    

    MBR分区

    步骤一:
    1、双击图示此处 (也可在库页面列表选择要添加硬盘的主机名右键选择设置)
    在这里插入图片描述
    2、在这里插入图片描述
    3、向导页面中选择添加硬盘在这里插入图片描述
    4、选择磁盘类型 默认即可在这里插入图片描述
    5、设定新增硬盘的大小 建议容量大于100GB
    在这里插入图片描述

6、
在这里插入图片描述
7、确定新增硬盘
在这里插入图片描述
8、返回页面查看新增的虚拟机
在这里插入图片描述
8、 使用lsblk命令查看新增硬盘 到此步骤一完成
在这里插入图片描述
步骤二:

1、

   	# fdiak /dev/sdb 

在这里插入图片描述
2、
在这里插入图片描述
3、
在这里插入图片描述
4、
在这里插入图片描述
5、
在这里插入图片描述
6、
在这里插入图片描述
7、查看分区的结果
在这里插入图片描述
8、

	通知内核读取更新的分区表:
	# partprobe /dev/sdb

在这里插入图片描述
9、

	查看分区表是否更新:
	# cat /proc/partitions

在这里插入图片描述

			成功分区后,就可以制作文件系统了。

步骤三:使用mkfs.xfs命令制作文件系统

1、新增磁盘分区完成后,开始制作文件系统。

	# mkfs.xfs /dev/sdb1

在这里插入图片描述

2、使用blkid命令查看分区类型

	sdb1分区已经创建完成,接下来就可以挂载分区后正常使用了。

在这里插入图片描述
步骤四:使用mount命令挂载文件系统并使用
1、挂载新硬盘分区

	创建/dev/sdb1分区的挂载点:
	# mkdir /magedu_data

2、

	挂载/dev/sdb1分区:
    # mount /dev/sdb1 /magedu_data

使用lsblk命令查询sdb1的挂载情况在这里插入图片描述
3、使用df -h命令查看磁盘分区
在这里插入图片描述

4、配置开机自动挂载

	挂载完成后,记住要写在/etc/fstab配置文件里,使其新增磁盘分区在开机后能自动挂载。
	# vim /etc/fstab
	 ↓↓↓↓↓↓↓↓↓↓↓
	/dev/sdb1 /magedu_data      xfs       defaults        0  0

在这里插入图片描述
5、检查配置文件语法:

	[root@Magedu ~]# mount -a
	执行该命令后,没有报错,说明配置文件正确,能开机自动挂载,到此整个新增
	硬盘、分区、制作文件系统以及自动挂载配置全过程完成结束。

6、退出分区后同步分表
(退出分区后一定要同步分区表)

	# partprobe

7、查看分区表是否已更新

	# cat /proc/partations

GPT分区实验
步骤:
1、进入分区命令界面

	    # gdisk /dev/sdb

在这里插入图片描述
在这里插入图片描述
2、分区后,就看制作文件系统,并挂载使用了,过程步骤同MBR分区实验,此处不做冗余介绍。

  • swap分区实验

    swap硬件分区
    分区说明
    swap读写优先级

      以指定swap分区0到32767的优先级,值越大优先级越高  如果用户没有指
      定,那么核心会自动给swap指定一个优先级,这个优先级从-1开始,每加
      入一个新的没有用户指定优先级的swap,会给这个优先级减一  先添加的
      swap的缺省优先级比较高,除非用户自己指定一个优先级,而用户指定的
      优先级(是正数)永远高于核心缺省指定的优先级(是负数)。
    

    分区步骤
    1、 对新增的硬盘分出1G空间的分区

    # echo -e "n\n\n\n+1G\nt\n\n82\nw\n" | fdisk /dev/DEVICE
    

在这里插入图片描述
2、格式化新增设备的文件系统

	# mkswap /dev/DEVICE

在这里插入图片描述
3、swapon /dev/DEVICE 挂载swap分区到设备
执行或没有命信息提示则表示挂载成功在这里插入图片描述
4、 写入设备配置文件

  # vim /dev/sdb1 

在这里插入图片描述
5、查询swap使用情况及优先级
swapon
注:(设备sda5的优先级最高 但按照磁盘读取顺序来分 sdb1的速度更快一点
可以手动修改优先级)
在这里插入图片描述
6、手动修改优先级
修改前先停用要修改的设备

 #swapoff /dev/sdb1

在这里插入图片描述

7、swapon -p # /dev/DEVICE 修改设备优先级

(1)可以指定swap分区0到32767的优先级,值越大优先级越高								         
 # swapon -p 2 /dev/sdb1       * 将sdb1的设备优先级指定为"2"

在这里插入图片描述

(2)swapon -s  查看设备优先级修改情况

在这里插入图片描述
8、将挂载配置写入配置文件

UUID=          swap      swap     pri= (优先级)      0 0
  (r!blkid /dev/DEVICE)获取指定设备的UUID
   pri= #    指定设备存储优先级 

在这里插入图片描述
9、启用swap分区

#swapon -a

在这里插入图片描述
10、 查看当前正在使用的swap分区

   cat /proc/swaps    
 或	
   swapon  -s

在这里插入图片描述

  • 相关命令
    一、磁盘类相关工具

      	1) parted
          2)dd、du和df
    

1) parted

	parted的操作都是实时生效的,小心使用
	用法:part [选项]... [设备[命令[参数]...]...]
    例:
	parted /dev/sdb mklabel gpt|msdos
	parted /dev/sdb print  打印分区信息
	parted /dev/sdb mkpart primary 1 200 (默认M)
	parted /dev/sdb rm 1   删除sdb硬盘下的1分区
	parted -l              列出分区信息

2)dd、du和df

工具df   
   	文件系统空间占用状态的查看工具
       df [OPTION]...[FILE...]
   		-H   以10为单位
   		-T   查看文件系统
   		-h   human-readable
   		-i   inodes instead of blocks
   		-P   以Posix兼容的格式输出

工具du  
   	某个目录总体空间占用状态的查看工具
       du [OPTION]...[DIR]
   	     -h  human-readable
   		 -s  summary
   		 --max-depth=#  指定目录深度层级

工具dd
     命令格式:
      
        dd if=/PATH/FROM/SRC of=/PATH/TO/DEST bs=# count=#

     常用选项: 		
   	 	
		if=file 		从所命名文件读取而不是从标准输入
   		of=file 		写到所命名的文件而不是到标准输出
   		ibs=size  		一次读size个byte
   		obs=size  		一次写size个byte
   		bs=size block size, 指定块大小(既是是ibs也是obs)
   		cbs=size 		一次转化size个byte
   		skip=blocks 	从开头忽略blocks个ibs大小的块
   		seek=blocks 	从开头忽略blocks个obs大小的块
   		count=n 		复制n个bs
 
      功能实例:
    
    1、备份文件
      
      用法:
            # dd if=/dev/sdx of=/dev/sdy
        将本地的/dev/sdx整盘备份到/dev/sdy
         
       例:
            # dd if=/dev/sda of=/tmp/mbr.bak bs=512 count=1
              备份MBR分区表
       例:
            # dd if=/dev/sdx of=/path/to/image
              将/dev/sdx全盘数据备份到指定路径的image文件
    
    2、恢复文件
      
        用法:
            # dd if=/path/to/image of=/dev/sdx
            将备份文件恢复到指定盘
        
          例:
            gzip -dc /path/to/image.gz | dd of=/dev/sdx
            将压缩的备份文件恢复到指定盘


    * 3、破坏文件
          破坏MBR中的bootloader
        	# dd if=/dev/zero of=/dev/sda bs=64 count=1 seek=446
       
        *例:快速删除分区表          	
            # dd if=/dev/zero  of=/dev/DEVICE  bs=1 count=66  seek=446  

       
        * 例:销毁磁盘数据
            # dd if=/dev/urandom of=/dev/sda1
   	    * 利用随机的数据填充硬盘,在某些必要的场合可以用来销毁数据,执行此操作
   	      以后,/dev/sda1将无法挂载,创建和拷贝操作无法执行

   	
   	    * 测试硬盘写速度	  
     dd if=/dev/zero of=/root/1Gb.file bs=1024 count=1000000
		
		* 测试硬盘读速度	  
     dd if=/root/1Gb.file bs=64k | dd of=/dev/null
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值