CentOS服务器维护之基本操作:扩容硬盘
下面简单记录下一些常规的Linux服务器操作,由于篇幅有限,仅记录一些常规的操作,力求精简。
以下分别介绍场景一(硬盘扩容)和场景二(新增硬盘)两种情况:
场景一:在现有的系统盘或数据盘上面扩容
数据盘容量才40G,需要扩容到80G,控制台已经操作完毕,服务器上该如何操作呢?
A、CentOS 7服务器【数据盘】扩容:
一、查看数据盘的文件系统类型
df -ihT
点评:我都是centOS7以上的系统,通常都是xfs格式,这时候可以直接第二步。
CentOS6系统会是ext4,(腾讯云装了centos8,依旧是ext4)会使用e2fsck -f /dev/vdb 、resize2fs /dev/vdb等命令。请自己另行百度查询。
二、开始扩容了!
如果是XFS,直接使用这个命令进行内部扩容即可
xfs_growfs /mnt
注意:我的硬盘是挂载在mnt文件夹,如果你的是data文件夹或其它名称,请将扩容命令修改一下,别傻乎乎复制粘贴,谢谢!
数据盘扩容完毕。掌声在哪里!
B、CentOS 7服务器【系统盘】扩容
实例环境:阿里云、centos8、系统盘40G升50G、系统文件格式xfs
第一步:扩容系统盘分区表
growpart /dev/vda 1
注意:vda和1之间有空格
第二步:扩容xfs格式系统盘文件系统
xfs_growfs /
ps:如果是ext*系统(例如ext4)文件系统
resize2fs /dev/vda1
结束。可自行df -ihT 或进宝塔查看系统空间,已成功扩容
小结:针对xfs和和ext格式系统,命令不同。前者xfs是到/(系统盘挂载点),后者是到/dev/vda1,注意区分。
场景二:新增一块数据盘,需要挂到服务器上的“D盘”,该如何操作呢?
置顶:BT提供了一键挂载,仅供参考:
centos系统:
yum install wget -y && wget -O auto_disk.sh http://download.bt.cn/tools/auto_disk.sh && bash auto_disk.sh
Ubuntu系统:
wget -O auto_disk.sh http://download.bt.cn/tools/auto_disk.sh && sudo bash auto_disk.sh
debian系统:
wget -O auto_disk.sh http://download.bt.cn/tools/auto_disk.sh && bash auto_disk.sh
挂载完成后,必须重启一次服务器,重启后服务器能正常打开,说明挂载没有问题。
腾讯云,新增一块数据盘。每次都很折腾,但其实很简单。
以下是挂载新增硬盘的老人操作流程,只记录步骤
1、查看硬盘情况(控制台已挂载)
fdisk -l
使用 df -ihT 命令查看系统文件格式
2、为新数据盘创建文件系统
mkfs -t ext4 /dev/vdb
mkfs -t <文件系统格式> /dev/vdb
ps:腾讯云默认都是ext4的,其它云主机商可能xfs等。例如阿里云是:mkfs.xfs /dev/vdb
3、新增目录及挂载点
mkdir /data
mount /dev/vdb /data
4、查看挂载结果
df -TH
重点:设置开机自动挂载磁盘
5、执行以下命令,备份 /etc/fstab 文件。以备份到 /home 目录下为例:
cp -r /etc/fstab /home
6、执行以下命令,使用 VI 编辑器打开 /etc/fstab 文件。
vi /etc/fstab
7、按 i,进入编辑模式。
将光标移至文件末尾,按 Enter,添加如下内容
/dev/vdb /data ext4 defaults 0 0
编辑保存方法:按 Esc,输入 :wq,按 Enter。保存设置并退出编辑器。
不保存直接退出方法:按Esc,输入:q! 并回车不保存文件,强制退出vi
ps:有多种挂载启动方式,尝试UIID失败,自己很难提取只能客服提供,客服给的还报错。。用上一行代码,不修改data文件夹名称即可。一般也没人脑残到随便修改它吧。
最后,重启,搞定!
以下是挂载新增硬盘的详细解释:
请根据您实际使用场景选择初始化方式:
- 若整块硬盘只呈现为一个独立的分区(即不存在多个逻辑盘,如 vdb1 和 vdb2 ),强烈推荐您不使用分区,直接 在裸设备上构建文件系统。
- 若整块硬盘需要呈现为多个逻辑分区(即存在多个逻辑盘),则您需要先进行分区操作,再 在分区上构建文件系统。
在裸设备上构建文件系统
- 登录 Linux 云服务器。
- 以 root 用户执行以下命令,查看磁盘名称。
fdisk -l
回显信息类似如下图,表示当前的云服务器有两块磁盘,“/dev/vda” 是系统盘,“/dev/vdb” 是新增数据盘。
- 执行以下命令,对 “/dev/vdb” 裸设备直接创建文件系统格式。
mkfs -t <文件系统格式> /dev/vdb
不同文件系统支持的分区大小不同,请根据实际需求合理选择文件系统。以设置文件系统为
EXT4
为例:mkfs -t ext4 /dev/vdb
注意:格式化需要等待一段时间,请观察系统运行状态,不要退出。
- 执行以下命令,新建挂载点。
mkdir <挂载点>
以新建挂载点
/data
为例:mkdir /data
- 执行以下命令,将新建分区挂载至新建的挂载点。
mount /dev/vdb <挂载点>
以新建挂载点
/data
为例:mount /dev/vdb /data
- 执行以下命令,查看挂载结果。
df -TH
说明:若无需设置开机自动挂载磁盘,则跳过后续步骤。
- 确认挂载方式并获取对应信息。
您可以根据业务需求选择使用弹性云硬盘的软链接、文件系统的 UUID(universally unique identifier)或设备名称自动挂载磁盘,相关说明和信息获取方式如下:挂载方式 优缺点 信息获取方式 使用弹性云硬盘的软链接(推荐) 优点:每个弹性云硬盘的软链接固定且唯一,不会随卸载挂载、格式化分区等操作而改变。
缺点:只有弹性云硬盘才有软链接。无法感知分区的格式化操作。执行以下命令,查看弹性云硬盘的软链接。 ls -l /dev/disk/by-id
使用文件系统的 UUID 可能会因文件系统的 UUID 变化而导致自动挂载设置失效。
例如,重新格式化文件系统后,文件系统的 UUID 将会发生变化。执行以下命令,查看文件系统的 UUID。 blkid /dev/vdb
使用设备名称 可能会因设备名称变化而导致自动挂载设置失效。
例如,迁移数据时将云服务器上的弹性云硬盘卸载后再次挂载,操作系统再次识别到该文件系统时,名称可能会变化。执行以下命令,查看设备名称。 fdisk -l
- 执行以下命令,备份
/etc/fstab
文件。以备份到 /home 目录下为例:cp -r /etc/fstab /home
- 执行以下命令,使用 VI 编辑器打开
/etc/fstab
文件。vi /etc/fstab
- 按 i,进入编辑模式。
- 将光标移至文件末尾,按 Enter,添加如下内容。
<设备信息> <挂载点> <文件系统格式> <文件系统安装选项> <文件系统转储频率> <启动时的文件系统检查顺序>
- (推荐)以使用弹性云硬盘的软链接自动挂载为例,结合前文示例则添加:
/dev/disk/by-id/virtio-disk-drkhklpe /data ext4 defaults 0 0
- 以使用磁盘分区的 UUID 自动挂载为例,结合前文示例则添加:
UUID=d489ca1c-5057-4536-81cb-ceb2847f9954 /data ext4 defaults 0 0
- 以使用设备名称自动挂载为例,结合前文示例则添加:
/dev/vdb /data ext4 defaults 0 0
- (推荐)以使用弹性云硬盘的软链接自动挂载为例,结合前文示例则添加:
- 按 Esc,输入 :wq,按 Enter。
保存设置并退出编辑器。 - 执行以下命令,检查 /etc/fstab 文件是否写入成功。
mount -a
如果运行通过则说明文件写入成功,新建的文件系统会在操作系统启动时自动挂载。
CentOS服务器维护之基本操作:扩容硬盘:等您坐沙发呢!