在工作中遇到部署项目需要先挂在一块硬盘作为项目存储空间,在挂载了几块硬盘后有少许经验,故先记录下,以防止忘记。好记性,不如烂笔头!
环境:
- 银河麒麟海光板 Hylin(SP2) Server (描述的不清楚,后面查询后修改)
涉及到的命令:
- patred
- lsblk
- blkid
- mkfs
- df等
1 创建目录作为挂载点
使用 mkdir /**/dirName 命令创建目录,例如下面的命令在根节点下创建data目录,用于挂载硬盘。
mkdir /data
2 通过命令lsblk查询是否存在未挂载的盘符
lsblk
输出结果:vdb为未挂载的盘符($diskName = vdb)
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 40G 0 disk
├─sda1 8:1 0 1G 0 part /boot
└─sda2 8:2 0 39G 0 part
├─centos-root 253:0 0 37G 0 lvm /
└─centos-swap 253:1 0 2G 0 lvm [SWAP]
vdb 11:0 1 1024M 0 rom
3 通过parted命令进行分区
3.1 进入分区工具
parted /dev/$diskName
输出结果:
[root@ecs-linux]# parted /dev/sdb
GNU Parted 3.1
Using /dev/vdb
Welcome to GNU Parted! Type 'help' to view a list of commands.
3.2 输入p命令查看当前磁盘分区方式
(parted) p
输出结果:
注释:“Partition Table”为“unknown”表示磁盘分区方式未知
Error: /dev/xvdb: unrecognised disk label
Model: Xen Virtual Block Device (sdb)
Disk /dev/vdb: 107GB
Sector size (logical/physical): 512B/512B
Partition Table: unknown
3.3 设置分区方式
(parted) mklabel gpt
成功无输出内容,可以通过p命令查看分区结果
(parted) p
Model: Xen Virtual Block Device (sdb)
Disk /dev/vdb: 209715200s
Sector size (logical/physical): 512B/512B
Partition Table: gpt
3.4 设置磁盘分区的大小
(parted) mkpart opt 0 100%
输出内容:通过输入 ‘Ignore’忽略警告进行下一步
Warning: The resulting partition is not properly aligned for best performance.
Ignore/Cancel? Ignore
3.5 退出parted命令
通过输入q命令退出parted命令
(parted) q
在这一步完成后,可以运行一下lsblk命令,查看以上命令是否有问题。没有问题的话 可以看到一个/vdb/vdb1的分区存在。($diskName1 = /vdb/vdb1)
4 格式化分区
mkfs -t xfs /dev/$diskName1
5 设置开机自动挂载
blkid /dev/$diskName1
6 编辑 /etc/fstab文件
vi /etc/fstab
在最后添加一行后保存并退出,内容如下:
/dev/$diskName1 /data xfs defaults 0 2
7 检查重启
mount -a
8 查看是否挂载成功
df -h
注意事项
1.主机系统启动时自动挂载磁盘,不能采用在 /etc/fstab直接指定 /dev/vdb1的方法,因为云中设备的顺序 编码在关闭或者开启云主机过程中可能发生改变。