定位 发表于 2024-9-7 19:06:01

parted分区详解

Linux中有两种常用的分区表MBR分区表(主引导记录分区表)和GPT分区表(GUID分区表),其中:


MBR分区表:支持的最大分区时2TB,最多支持4个主分区,或3个主分区和1个拓展分区。


GPT分区表:支持最大18EB的分区,最多支持128个分区,其中1个系统保留分区,127个用户自定义分区。




MBR分区标准决定了MBR只支持在2TB以下的硬盘,为了支持能使用大于2T硬盘空间,需使用GPT格式进行分区。创建大于2TB的分区,需使用parted工具。


模拟实例


企业中经常会用大容量硬盘,常年大量读写,导致出现坏盘,需要更换硬盘,或者由于磁盘空间不足需要添加新的硬盘,新添加的硬盘需要格式化-分区-挂载后才能被linux系统使用。


本实验使用一块4TB硬盘作为实验。


一,添加一块4TB硬盘







二,查看新硬盘


新添加的硬盘可能不会被立即识别出来,需要重启系统后重新识别,还有一个命令不用重启。






三,使用parted分区


本次分区分三个区


p1分区 500G


p2分区 1TB


p3分区 剩余全部空间




操作命令如下:


# parted /dev/sdb    #进入parted命令交互后并使用/dev/sdb硬盘
GNU Parted 3.1
使用 /dev/sdb
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) mklabel gpt    # 设置格式类型为gpt                                                  
(parted) mkpart p1 1 500G   #创建p1分区                                             
(parted) mkpart p2 500G 1500G    #创建p2分区
(parted) mkpart p3 1500G -1    #创建p3分区,使用剩余空间                                 
(parted) print     #打印查看分区                                                      
Model: VMware, VMware Virtual S (scsi)
Disk /dev/sdb: 4398GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number  Start   End     Size    File system  Name  标志
1      1049kB  500GB   500GB                p1
2      500GB   1500GB  1000GB               p2
3      1500GB  4398GB  2898GB               p3
(parted) quit     #退出工具                                                        
信息: You may need to update /etc/fstab.


查看下刚刚分区情况:






四,格式化分区


这里使用 mkfs.xfs 也可以使用 mkfs.ext4 进行格式


# mkfs.xfs /dev/sdb1
meta-data=/dev/sdb1              isize=512    agcount=4, agsize=30517504 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0, sparse=0
data     =                       bsize=4096   blocks=122070016, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal log           bsize=4096   blocks=59604, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
# mkfs.xfs /dev/sdb2
meta-data=/dev/sdb2              isize=512    agcount=4, agsize=61035136 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0, sparse=0
data     =                       bsize=4096   blocks=244140544, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal log           bsize=4096   blocks=119209, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
# mkfs.xfs /dev/sdb3
meta-data=/dev/sdb3              isize=512    agcount=4, agsize=176882688 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0, sparse=0
data     =                       bsize=4096   blocks=707530752, imaxpct=5
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal log           bsize=4096   blocks=345474, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0

五,挂载使用


创建三个目录分别挂载


# mkdir -p /data/p{1..3}
# mount /dev/sdb1 /data/p1
# mount /dev/sdb2 /data/p2
# mount /dev/sdb3 /data/p3
# df -H
文件系统                 容量  已用  可用 已用% 挂载点
devtmpfs                 2.1G     0  2.1G    0% /dev
tmpfs                    2.1G     0  2.1G    0% /dev/shm
tmpfs                    2.1G   13M  2.1G    1% /run
tmpfs                    2.1G     0  2.1G    0% /sys/fs/cgroup
/dev/mapper/centos-root   31G  2.3G   29G    8% /
/dev/sda1                1.1G  145M  920M   14% /boot
tmpfs                    413M     0  413M    0% /run/user/0
/dev/sdb1                500G   34M  500G    1% /data/p1
/dev/sdb2                1.0T   34M  1.0T    1% /data/p2
/dev/sdb3                2.9T   34M  2.9T    1% /data/p3



六,设置开机自动挂载


方法一


编辑 /etc/fstab 文件


/dev/sdb1               /data/p1                xfs     defaults        0 0
/dev/sdb2               /data/p2                xfs     defaults        0 0
/dev/sdb3               /data/p3                xfs     defaults        0 0

方法二


编辑 /etc/rc.local 文件,编辑此文件需要保证 /etc/rc.d/rc.local 有执行权限


#给予权限


# chmod +x /etc/rc.d/rc.local
#编辑 /etc/rc.local 添加以下内容
mount /dev/sdb1 /data/p1
mount /dev/sdb2 /data/p2
mount /dev/sdb3 /data/p3
#重启服务器测试




七,mount 命令基本使用详解


Mount命令参数详解


Mount命令工具主要用于将设备或者分区挂载至Linux系统目录下,Linux系统在分区时,也是基于mount机制将/dev/sda分区挂载至系统目录,将设备与目录挂载之后,Linux操作系统方可进行文件的存储。


mount [-Vh]
mount -a [-fFnrsvw] [-t vfstype]
mount [-fnrsvw] [-o options [,...]] device | dir
mount [-fnrsvw] [-t vfstype] [-o options] device dir

[*]-V:显示mount工具版本号;
[*]-l:显示已加载的文件系统列表;
[*]-h:显示帮助信息并退出;
[*]-v:输出指令执行的详细信息;
[*]-n:加载没有写入文件/etc/mtab中的文件系统;
[*]-r:将文件系统加载为只读模式;
[*]-a:加载文件/etc/fstab中配置的所有文件系统;
[*]-o:                        指定mount挂载扩展参数,常见扩展指令:rw、remount、loop等,其中-o相关指令如下:
[*]-o atime:系统会在每次读取文档时更新文档时间;
[*]-o noatime:系统会在每次读取文档时不更新文档时间;
[*]-o defaults:            使用预设的选项 rw,suid,dev,exec,auto,nouser等;
[*]-o exec                         允许执行档被执行;
[*]-o user、-o nouser:使用者可以执行 mount/umount的动作;
[*]-o remount:将已挂载的系统分区重新以其他再次模式挂载;
[*]-o ro:只读模式挂载;
[*]-o rw:可读可写模式挂载;
[*]-o loop                          使用loop模式,把文件当成设备挂载至系统目录。
[*]-t:指定mount挂载设备类型,常见类型nfs、ntfs-3g、vfat、iso9660等,其中-t相关指令如下:
[*]iso9660                         光盘或光盘镜像;
[*]msdos                           Fat16文件系统;
[*]vfat                            Fat32文件系统;
[*]ntfs                              NTFS文件系统;
[*]ntfs-3g                          识别移动硬盘格式;
[*]smbfs                           挂载Windows文件网络共享;
[*]nfs                            Unix/Linux文件网络共享。


页: [1]
查看完整版本: parted分区详解