黑帽联盟

 找回密码
 会员注册
查看: 120|回复: 0
打印 上一主题 下一主题

[资源教程] parted分区详解

[复制链接]

895

主题

38

听众

3324

积分

管理员

Rank: 9Rank: 9Rank: 9

  • TA的每日心情
    开心
    昨天 22:18
  • 签到天数: 1645 天

    [LV.Master]伴坛终老

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


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


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




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


    模拟实例


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


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


    一,添加一块4TB硬盘


    1.png




    二,查看新硬盘


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


    2.png



    三,使用parted分区


    本次分区分三个区


    p1分区 500G


    p2分区 1TB


    p3分区 剩余全部空间




    操作命令如下:


    [root@wscyun ~]# 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.


    查看下刚刚分区情况:


    3.png



    四,格式化分区


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


    [root@wscyun ~]# 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
    [root@wscyun ~]# 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
    [root@wscyun ~]# 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

    五,挂载使用


    创建三个目录分别挂载


    [root@wscyun ~]# mkdir -p /data/p{1..3}
    [root@wscyun ~]# mount /dev/sdb1 /data/p1
    [root@wscyun ~]# mount /dev/sdb2 /data/p2
    [root@wscyun ~]# mount /dev/sdb3 /data/p3
    [root@wscyun ~]# 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 有执行权限


    #给予权限


    [root@wscyun ~]# 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、本主题所有言论和图片纯属会员个人意见,与本论坛立场无关
    2、本站所有主题由该帖子作者发表,该帖子作者与黑帽联盟享有帖子相关版权
    3、其他单位或个人使用、转载或引用本文时必须同时征得该帖子作者和黑帽联盟的同意
    4、帖子作者须承担一切因本文发表而直接或间接导致的民事或刑事法律责任
    5、本帖部分内容转载自其它媒体,但并不代表本站赞同其观点和对其真实性负责
    6、如本帖侵犯到任何版权问题,请立即告知本站,本站将及时予与删除并致以最深的歉意
    7、黑帽联盟管理员和版主有权不事先通知发贴者而删除本文

    勿忘初心,方得始终!
    您需要登录后才可以回帖 登录 | 会员注册

    发布主题 !fastreply! 收藏帖子 返回列表 搜索
    回顶部