zoukankan      html  css  js  c++  java
  • 分区工具parted的详解及常用分区使用方法

    一、 parted的用途及说明

    1.1 MBR分区与GPT分区

    传统的MBR分区表格式,仅支持最大四个主分区,而且不可以格式化2TB以上的磁盘,因此,大磁盘更适合使用parted工具进行GPT的分区格式。

    1.2 概要说明

    parted用于对磁盘(或RAID磁盘)进行分区及管理,与fdisk分区工具相比,支持2TB以上的磁盘分区,并且允许调整分区的大小。

    1.3 GNU手册说明

    parted是一个用于硬盘分区或调整分区大小的工具。使用它你可以创建、清除、调整、移动和复制ext2、ext3、linux-swap、FAT、FAT32和reiserfs分区;也能创建、调整和移动苹果系统的HFS分区;还能检测jfs、ntfs、ufs和xfs分区。该工具常用于为新安装的操作系统创建空间,重新分配硬盘使用情况,在将数据拷贝到新硬盘的时候也常常使用。

    二、parted的使用方法(交互式)

    2.1 对磁盘进行分区

    $ parted /dev/sdb
    # 对/dev/sdb进行分区或管理操作
    
    GNU Parted 3.1
    使用 /dev/sdb
    Welcome to GNU Parted! Type 'help' to view a list of commands.
    
    (parted) mklabel gpt
    # 定义分区表格式(常用的有msdos和gpt分区表格式,msdos不支持2TB以上容量的磁盘,所以大于2TB的磁盘选gpt分区表格式)
    
    警告: The existing disk label on /dev/sdb will be destroyed and all data on this disk will be lost. Do you want to continue?
    # /dev/sdb上现有的磁盘标签将被销毁,该磁盘上的所有数据将丢失。你想要继续
    是/Yes/否/No? yes                                                         
    
    (parted) mkpart p1
    # 创建第一个分区,名称为p1(p1只是第一个分区的名称,用别的名称也可以,如part1)
    
    文件系统类型?  [ext2]? xfs        
    # 定义分区格式(不支持ext4,想分ext4格式的分区,可以通过mkfs.ext4格式化成ext4格式)
                                           
    起始点? 1       
    # 定义分区的起始位置(单位支持K,M,G,T)
                                                             
    结束点? 100%   
    # 定义分区的结束位置(单位支持K,M,G,T)    
                                                          
    (parted) print   # 查看当前分区情况
    Model: VMware, VMware Virtual S (scsi)
    Disk /dev/sdb: 107GB
    Sector size (logical/physical): 512B/512B
    Partition Table: gpt
    Disk Flags: 
    
    Number  Start   End    Size   File system  Name  标志
     1      1049kB  107GB  107GB  xfs          p1
    

    2.2 删除分区

    $ parted /dev/sdb
    # 对/dev/sdb进行分区或管理操作
    
    (parted) rm                
    # rm删除命令(删除之前必须确保分区没有被挂载)
                                                   
    分区编号? 1          
    # 删除第一个分区
                                                        
    (parted) print   # 打印当前分区情况                                                         
    Model: VMware, VMware Virtual S (scsi)
    Disk /dev/sdb: 107GB
    Sector size (logical/physical): 512B/512B
    Partition Table: gpt
    Disk Flags: 
    
    Number  Start  End  Size  File system  Name  标志
    

    在格式化几个TB的磁盘的时候,时间会非常的长,格式化6T的磁盘时间大概在一个半小时左右。(据硬盘实际情况而定)

    三、partd分区实例

    fdisk工具虽然很好用,但对于大于2T以上的硬盘分区特别慢,可能一部分容量识别不了,也不支持非交互模式。
    用parted就非常方便了,对大硬盘支持很好,也可以实现脚本分区。

    parted该指令默认都已经安装过了,如果没有安装的话,使用以下命令进行安装:

    $ yum install parted
    

    parted有个不提示用户参数选项,就是通过这个选项来实现非交互!

           -s, --script
                  never prompts for user intervention
    

    3.1 定义分区类型

    $ parted -s /dev/sdb mklabel gpt
    # -s表示不输出提示信息
    # 如果不是用脚本执行分区操作,不建议忽略提示信息
    

    3.2 查看磁盘分区信息

    $ parted /dev/sdb print
    Model: VMware, VMware Virtual S (scsi)
    Disk /dev/sdb: 107GB
    Sector size (logical/physical): 512B/512B
    Partition Table: gpt
    Disk Flags: 
    
    Number  Start  End  Size  File system  Name  标志
    

    3.3 创建与删除分区

    命令格式如下:

    parted 磁盘 mkpart 分区类型 [文件系统类型] 开始  结束
    

    其中,分区类型有 primary、logical、extended三种,文件系统类型为可选项,一般选择为 ext4、xfs或swap等。开始与结束表示分区开始与结束的位置(默认单位为MB),也可以使用百分比表示分区位置,比如你想把整个磁盘创建一个分区,可以使用下面的命令:

    把整个磁盘/dev/sdb创建为一个主分区

    $ parted /dev/sdb mkpart primary xfs 0% 100%
    

    把磁盘/dev/sdb创建为多个主分区

    $ parted /dev/sdb mkpart primary xfs 1G 10G
    $ parted /dev/sdb mkpart primary xfs 10G 50%
    $ parted /dev/sdb mkpart primary xfs  50% 100%
    $ parted /dev/sdb print       # 查看
    Model: VMware, VMware Virtual S (scsi)
    Disk /dev/sdb: 107GB
    Sector size (logical/physical): 512B/512B
    Partition Table: gpt
    Disk Flags: 
    
    Number  Start   End     Size    File system  Name     标志
     1      1000MB  10.0GB  9000MB               primary
     2      10.0GB  53.7GB  43.7GB               primary
     3      53.7GB  107GB   53.7GB               primary
    

    删除分区

    $ parted /dev/sdb rm 1
    # 删除分区号为 1 的分区
    $ parted /dev/sdb print
    Model: VMware, VMware Virtual S (scsi)
    Disk /dev/sdb: 107GB
    Sector size (logical/physical): 512B/512B
    Partition Table: gpt
    Disk Flags: 
    
    Number  Start   End     Size    File system  Name     标志
     2      10.0GB  53.7GB  43.7GB               primary
     3      53.7GB  107GB   53.7GB               primary
    

    格式化并挂载

    $ mkfs.xfs /dev/sdb2
    $ mkdir /data
    $ mount /dev/sdb2 /data
    $ df -hT /data
    文件系统                类型      容量  已用  可用 已用% 挂载点
    /dev/sdb2               xfs        41G   33M   41G    1% /data
    

    四、操作示例

    需求:一块 100G的磁盘,使用parted创建一个分区(此分区包含所有磁盘空间),然后挂载到 /data 目录进行使用。过程如下:

    $ parted /dev/sdb mklabel gpt
    $ parted /dev/sdb mkpart primary xfs 0% 100%
    $ mkfs.xfs /dev/sdb1
    $ mount /dev/sdb1 /data
    $ df -hT /data
    文件系统       类型  容量  已用  可用 已用% 挂载点
    /dev/sdb1      xfs   100G   33M  100G    1% /data
    $ vim /etc/fstab
    /dev/sdb1   /data   xfs   defaults   0 0
    # 实现开机自动挂载
    
    *************** 当你发现自己的才华撑不起野心时,就请安静下来学习吧!***************
  • 相关阅读:
    PowerShell里的数组
    题解 cf gym 103261 D FFT Algorithm
    欧拉筛求积性函数的一般形式
    题解 LOJ 6053
    题解 SP34112 UDIVSUM
    题解 luogu P5162 WD与积木
    Java 关闭流同步输入输出
    题解 luogu P6620 [省选联考 2020 A 卷] 组合数问题
    hdu 6588 题解
    题解 cf gym 102979 E Expected Distance
  • 原文地址:https://www.cnblogs.com/lvzhenjiang/p/14391479.html
Copyright © 2011-2022 走看看