二丫讲梵 二丫讲梵
首页
  • 最佳实践
  • 迎刃而解
  • Nginx
  • Php
  • Zabbix
  • AWS
  • Prometheus
  • Grafana
  • CentOS
  • Systemd
  • Docker
  • Rancher
  • Ansible
  • Ldap
  • Gitlab
  • GitHub
  • Etcd
  • Consul
  • RabbitMQ
  • Kafka
  • MySql
  • MongoDB
  • OpenVPN
  • KVM
  • VMware
  • Other
  • ELK
  • K8S
  • LLM
  • Nexus
  • Jenkins
  • 随写编年
  • 家人物语
  • 追忆青春
  • 父亲的朋友圈
  • 电影音乐
  • 效率工具
  • 博客相关
  • Shell
  • 前端实践
  • Vue学习笔记
  • Golang学习笔记
  • Golang编程技巧
  • 学习周刊
  • Obsidian插件周刊
关于
友链
  • 本站索引

    • 分类
    • 标签
    • 归档
  • 本站页面

    • 导航
    • 打赏
  • 我的工具

    • 备忘录清单 (opens new window)
    • json2go (opens new window)
    • gopher (opens new window)
    • 微信MD编辑 (opens new window)
    • 国内镜像 (opens new window)
    • 出口IP查询 (opens new window)
    • 代码高亮工具 (opens new window)
  • 外站页面

    • 开往 (opens new window)
    • ldapdoc (opens new window)
    • HowToStartOpenSource (opens new window)
    • vdoing-template (opens new window)
GitHub (opens new window)

二丫讲梵

行者常至,为者常成
首页
  • 最佳实践
  • 迎刃而解
  • Nginx
  • Php
  • Zabbix
  • AWS
  • Prometheus
  • Grafana
  • CentOS
  • Systemd
  • Docker
  • Rancher
  • Ansible
  • Ldap
  • Gitlab
  • GitHub
  • Etcd
  • Consul
  • RabbitMQ
  • Kafka
  • MySql
  • MongoDB
  • OpenVPN
  • KVM
  • VMware
  • Other
  • ELK
  • K8S
  • LLM
  • Nexus
  • Jenkins
  • 随写编年
  • 家人物语
  • 追忆青春
  • 父亲的朋友圈
  • 电影音乐
  • 效率工具
  • 博客相关
  • Shell
  • 前端实践
  • Vue学习笔记
  • Golang学习笔记
  • Golang编程技巧
  • 学习周刊
  • Obsidian插件周刊
关于
友链
  • 本站索引

    • 分类
    • 标签
    • 归档
  • 本站页面

    • 导航
    • 打赏
  • 我的工具

    • 备忘录清单 (opens new window)
    • json2go (opens new window)
    • gopher (opens new window)
    • 微信MD编辑 (opens new window)
    • 国内镜像 (opens new window)
    • 出口IP查询 (opens new window)
    • 代码高亮工具 (opens new window)
  • 外站页面

    • 开往 (opens new window)
    • ldapdoc (opens new window)
    • HowToStartOpenSource (opens new window)
    • vdoing-template (opens new window)
GitHub (opens new window)
  • 最佳实践

    • 运维最佳实践

      • 一句话经验
      • 基于CNAME解析实践的域名优雅方案
      • 如何配置历史命令中有详细的时间戳
      • 建设一个运维外挂的最佳实践
      • 关于打包压缩几种格式(gzip,bzip2,xz)的试验对比
      • 利用谷歌浏览器自定义agent监听日志来调试服务
      • fdisk,parted使用非交互式方式对磁盘进行分区操作
        • 1,fdisk 分区
        • 2,parted 风格
        • 3,插曲
      • GitLab部署的最佳实践
      • GitLab全局搜索之SourceGraph
      • vector实践-性能吊打logstash
      • 规范编码之利用pre-commit给项目添加提交前检查
      • CMDB平台建设指南
      • 用上赛博菩萨CNB,咱直接起飞
    • 成本优化实践

  • 迎刃而解

  • Nginx

  • Php

  • Zabbix

  • AWS

  • Prometheus

  • Grafana

  • Loki

  • CentOS

  • Supervisord

  • Systemd

  • Docker

  • Docker-Compose

  • Rancher

  • Ansible

  • OpenLdap

  • GitLab

  • GitHub

  • Etcd

  • Consul

  • RabbitMQ

  • Kafka

  • Mysql

  • MongoDB

  • OpenVPN

  • Kvm

  • VMware

  • 配置文件详解

  • Other

  • 运维观止
  • 最佳实践
  • 运维最佳实践
二丫讲梵
2020-01-09
目录

fdisk,parted使用非交互式方式对磁盘进行分区操作

文章发布较早,内容可能过时,阅读注意甄别。

磁盘分区的时候,平常都是使用交互式的方式进行,但是交互式有时候对一些批量的,或者脚本式的,就不那么友好了,今天刚好要对一批设备初始化进行分区操作,几百 G 的以及十来 T 的都有,因此两个分区命令的非交互式这里一并拿下了。

# 1,fdisk 分区

直接进入正题,关于两种分区方式的选型等问题,这里不做讨论。

创建如下交互文本:

$ cat fdisk.txt
n




w
1
2
3
4
5
6
7

注意:文件内容就两步,一个 n,一个 w,但是注意中间有 4 个换行,表示分区过程选项保持默认,如此分配整个磁盘为一个分区。

fdisk /dev/vdb < ./fdisk.txt
fdisk /dev/vdc < ./fdisk.txt
1
2

接下来就是格式化,挂载的事情了,比较常规,下边会给出例子,这里不多赘述。

img

# 2,parted 风格

debian 系统默认没有 parted 命令,需要先安装:

apt-get update
apt-get -y install parted
1
2

然后创建如下交互文本:

$cat parted.txt
mklabel gpt
yes
mkpart
1
ext4
0
100%
Ignore
q
1
2
3
4
5
6
7
8
9
10

文本内也都是格式化过程中需要的步骤,同样是将整块磁盘分给一个分区。

然后进行分区:

parted /dev/vdd < ./parted.txt
parted /dev/vde < ./parted.txt
parted /dev/vdf < ./parted.txt
parted /dev/vdg < ./parted.txt
parted /dev/vdh < ./parted.txt
parted /dev/vdi < ./parted.txt
parted /dev/vdj < ./parted.txt
parted /dev/vdk < ./parted.txt
parted /dev/vdl < ./parted.txt
parted /dev/vdm < ./parted.txt
parted /dev/vdn < ./parted.txt
parted /dev/vdo < ./parted.txt
1
2
3
4
5
6
7
8
9
10
11
12

然后对如上分区进行格式化:

mkfs.ext4 /dev/vdb1
mkfs.ext4 /dev/vdc1
mkfs.ext4 /dev/vdd1
mkfs.ext4 /dev/vde1
mkfs.ext4 /dev/vdf1
mkfs.ext4 /dev/vdg1
mkfs.ext4 /dev/vdh1
mkfs.ext4 /dev/vdi1
mkfs.ext4 /dev/vdj1
mkfs.ext4 /dev/vdk1
mkfs.ext4 /dev/vdl1
mkfs.ext4 /dev/vdm1
mkfs.ext4 /dev/vdn1
mkfs.ext4 /dev/vdo1
1
2
3
4
5
6
7
8
9
10
11
12
13
14

接着创建需要挂载的目录:

cd /
mkdir data00 data01 data02 data03 data04 data05 data06 data07 data08 data09 data10 data11 data12 data13
1
2

然后将自动挂载写入配置:

echo "/dev/vdb1 /data00 ext4  defaults 0 0" >> /etc/fstab
echo "/dev/vdc1 /data01 ext4  defaults 0 0" >> /etc/fstab
echo "/dev/vdd1 /data02 ext4  defaults 0 0" >> /etc/fstab
echo "/dev/vde1 /data03 ext4  defaults 0 0" >> /etc/fstab
echo "/dev/vdf1 /data04 ext4  defaults 0 0" >> /etc/fstab
echo "/dev/vdg1 /data05 ext4  defaults 0 0" >> /etc/fstab
echo "/dev/vdh1 /data06 ext4  defaults 0 0" >> /etc/fstab
echo "/dev/vdi1 /data07 ext4  defaults 0 0" >> /etc/fstab
echo "/dev/vdj1 /data08 ext4  defaults 0 0" >> /etc/fstab
echo "/dev/vdk1 /data09 ext4  defaults 0 0" >> /etc/fstab
echo "/dev/vdl1 /data10 ext4  defaults 0 0" >> /etc/fstab
echo "/dev/vdm1 /data11 ext4  defaults 0 0" >> /etc/fstab
echo "/dev/vdn1 /data12 ext4  defaults 0 0" >> /etc/fstab
echo "/dev/vdo1 /data13 ext4  defaults 0 0" >> /etc/fstab
1
2
3
4
5
6
7
8
9
10
11
12
13
14

执行加载命令,查看是否正常。

mount -a
1

记录两个常用分区命令的非交互方式,方便日常的操作。

申明

原创文章eryajf,未经授权,严禁转载,侵权必究!此乃文中随机水印,敬请读者谅解。

Copyright 二丫讲梵 (opens new window) 版权所有

# 3,插曲

过程中还遇到过一个插曲,vdc磁盘应该按照 fdisk 风格来分区即可,因为这个磁盘并没有超过 2T,可以直接分区,但是当时搞错了分区名称,于是误把此分区给搞成了 gpt 风格的,这个时候想要改回 mbr 分区类型,发现并不太容易。

parted /dev/vdc
(parted)mktable
New disk label type? msdos
Warning: The existing disk label on /dev/vdc will be destroyed and all data on
this disk will be lost. Do you want to continue?
Yes/No?Yes
1
2
3
4
5
6

注意:这个地方在重新定义分区类型的时候,并不能写 mbr,或者形如其他分区写成 dos,如果写成这些,命令行将会一直报错,正确的应该是 msdos,然后在保存退出,这个时候此分区就变回所谓的 mbr 分区了。

微信 支付宝
上次更新: 2024/07/04, 22:40:37
利用谷歌浏览器自定义agent监听日志来调试服务
GitLab部署的最佳实践

← 利用谷歌浏览器自定义agent监听日志来调试服务 GitLab部署的最佳实践→

最近更新
01
学习周刊-总第212期-2025年第21周
05-22
02
从赵心童世锦赛夺冠聊聊我的斯诺克情缘
05-16
03
学习周刊-总第211期-2025年第20周
05-15
更多文章>
Theme by Vdoing | Copyright © 2017-2025 | 点击查看十年之约 | 浙ICP备18057030号
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式