您的位置:首页 > 运维架构 > Linux

linux下parted创建gpt分区

2015-11-25 22:37 561 查看
一、常用2种分区表:

1、MBR分区表(即主引导记录)

所支持的最大分区:2T,而且对分区有限制:最多4个主分区或3个主分区加一个扩展分区


2、GPT分区表(即GUID分区表)

是源自EFI标准的一种较新的磁盘分区表结构的标准,与MBR分区方式相比,具有如下优点:
突破MBR 4个主分区限制,每个磁盘最多支持128个分区。支持大于2T的分区,最大可达18EB。


二、parted 常用选项

-h, --help                    显示此求助信息
-l, --list                    列出所有设别的分区信息
-i, --interactive             在必要时,提示用户
-s, --script                  从不提示用户
-v, --version                 显示版本


三、parted 操作命令

检查 MINOR                                      #对文件系统进行一个简单的检查
cp [FROM-DEVICE] FROM-MINOR TO-MINOR            #将文件系统复制到另一个分区
help [COMMAND]                                  #打印通用求助信息,或关于 COMMAND 的信息
mklabel 标签类型                                #创建新的磁盘标签 (分区表)
mkfs MINOR 文件系统类型                         #在 MINOR 创建类型为“文件系统类型”的文件系统
mkpart 分区类型 [文件系统类型] 起始点 终止点    #创建一个分区
mkpartfs 分区类型 文件系统类型 起始点 终止点    #创建一个带有文件系统的分区
move MINOR 起始点 终止点                        #移动编号为 MINOR 的分区
name MINOR 名称                                 #将编号为 MINOR 的分区命名为“名称”
print [MINOR]                                   #打印分区表,或者分区
quit                                            #退出程序
rescue 起始点 终止点                            #挽救临近“起始点”、“终止点”的遗失的分区
resize MINOR 起始点 终止点                      #改变位于编号为 MINOR 的分区中文件系统的大小
rm MINOR                                        #删除编号为 MINOR 的分区
select 设备                                     #选择要编辑的设备
set MINOR 标志 状态                             #改变编号为 MINOR 的分区的标志


四、脚本实现自动挂载

1、自动分区挂载脚本

root@ubuntu:~# cat disk.sh
device=`fdisk -l 2> /dev/null | grep "Disk /dev/sdb" | sort | uniq -c | sort -nr | head -1 | awk '{print $3}' | awk -F: '{print $1}'`
parted $device --script mklabel gpt mkpart primary 0 -- -1
pvcreate ${device}1
vgcreate -v vg01 ${device}1
lvcreate -l 100%VG -n lvdata vg01
mkfs.ext4 /dev/vg01/lvdata
UUID=`blkid | grep "lvdata" | awk -F: '{print $2}' | awk -F " " '{print $1}'`
echo "$UUID  /mnt  ext4  defaults,noatime  0  2" >> /etc/fstab
mount -a


2、脚本执行过程如下

root@ubuntu:~# bash -x disk.sh
++ fdisk -l
++ uniq -c
++ awk -F: '{print $1}'
++ sort -nr
++ sort
++ grep 'Disk /dev/sdb'
++ awk '{print $3}'
++ head -1
+ device=/dev/sdb
+ parted /dev/sdb --script mklabel gpt mkpart primary 0 -- -1
Warning: The resulting partition is not properly aligned for best performance.
+ pvcreate /dev/sdb1
Physical volume "/dev/sdb1" successfully created
+ vgcreate -v vg01 /dev/sdb1
Wiping cache of LVM-capable devices
Adding physical volume '/dev/sdb1' to volume group 'vg01'
Archiving volume group "vg01" metadata (seqno 0).
Creating volume group backup "/etc/lvm/backup/vg01" (seqno 1).
Volume group "vg01" successfully created
+ lvcreate -l 100%VG -n lvdata vg01
Logical volume "lvdata" created
+ mkfs.ext4 /dev/vg01/lvdata
mke2fs 1.42.9 (4-Feb-2014)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
196608000 inodes, 786430976 blocks
39321548 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=4294967296
24000 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968,
102400000, 214990848, 512000000, 550731776, 644972544

Allocating group tables: done
Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done

++ awk -F ' ' '{print $1}'
++ awk -F: '{print $2}'
++ grep lvdata
++ blkid
+ UUID='UUID="78a5489c-9c17-46b7-b7ab-0ecfd17280e4"'
+ echo 'UUID="78a5489c-9c17-46b7-b7ab-0ecfd17280e4"  /mnt  ext4  defaults,noatime  0  2'
+ mount -a


3、查看挂载分区详情

root@ubuntu:~# df -Th
Filesystem              Type      Size  Used Avail Use% Mounted on
/dev/sda1               ext4       98G  4.4G   89G   5% /
none                    tmpfs     4.0K     0  4.0K   0% /sys/fs/cgroup
udev                    devtmpfs  482M   12K  482M   1% /dev
tmpfs                   tmpfs      99M  1.5M   98M   2% /run
/dev/mapper/vg01-lvdata ext4      2.9T   72M  2.8T   1% /mnt


五、创建物理卷报错如下

root@ubuntu:~# pvcreate /dev/sdb1
Can't open /dev/sdb1 exclusively.Mounted filesystem?

root@ubuntu:~# ll /dev/mapper/
total 0
drwxr-xr-x  2 root root      80 11月 26 22:28 ./
drwxr-xr-x 17 root root    4440 11月 26 22:29 ../
crw-------  1 root root 10, 236 11月 26 22:28 control
lrwxrwxrwx  1 root root       7 11月 26 22:29 vg01-lvdata -> ../dm-0

root@ubuntu:~# dmsetup remove vg01-lvdata

root@ubuntu:~# pvcreate /dev/sdb1
Physical volume "/dev/sdb1" successfully created
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  linux disk parted gpt 分区