Ubuntu12下挂载硬盘(9TB)Shell版

2024-08-29 23:18
文章标签 shell 挂载 硬盘 ubuntu12 9tb

本文主要是介绍Ubuntu12下挂载硬盘(9TB)Shell版,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、背景

我们的服务器上安装了Ubuntu Server 12.04版本,由于开发环境的问题,所以没有上CenteOS或者Red Hat,我们有几块大的硬盘,需要通通挂载到root目录下,这个挂载的方式跟Windows是不太一样的。

单台机器的挂载方法可以参考:Ubuntu12下挂载硬盘(9TB),如果我们需要安装N台机器的话,我们有什么好的办法呢?难道要一台一台的安装不成?不,这个时候Shell可以帮助你。

 

二、挂载详细命令

1. 先查看一下磁盘信息

ls /dev/sd*

/dev/sda /dev/sda2 /dev/sdb /dev/sdc /dev/sdd /dev/sde /dev/sdf

/dev/sda1 /dev/sda5 /dev/sdb1 /dev/sdc1 /dev/sdd1 /dev/sde1 /dev/sdf1

2. 格式化

sudo mkfs.ext4 /dev/sdb1

sudo mkfs.ext4 /dev/sdc1

sudo mkfs.ext4 /dev/sdd1

sudo mkfs.ext4 /dev/sde1

sudo mkfs.ext4 /dev/sdf1

3. 创建PV

sudo pvcreate /dev/sdb1

sudo pvcreate /dev/sdc1

sudo pvcreate /dev/sdd1

sudo pvcreate /dev/sde1

sudo pvcreate /dev/sdf1

4. 查询卷的情况,获得VG名

sudo vgdisplay

VG Name ubuntu1

5. 加入VG(注意使用查询得到的VG名)

sudo vgextend ubuntu1 /dev/sdb1

sudo vgextend ubuntu1 /dev/sdc1

sudo vgextend ubuntu1 /dev/sdd1

sudo vgextend ubuntu1 /dev/sde1

sudo vgextend ubuntu1 /dev/sdf1

6. 获得可用PE大小(Free PE)

sudo vgdisplay

Alloc PE / Size 471797 / 1.80 TiB

Free PE / Size 1912136 / 7.29 TiB

7. 获得LV名

sudo lvdisplay

LV Name /dev/ubuntu1/root

8. 增加LV

sudo lvextend -l+1912136 /dev/ubuntu1/root

9. 修改容量

sudo resize2fs /dev/ubuntu1/root

10. 查看效果

df –h

 

三、Shell脚本

我们需要通过Shell脚本,把上面的所有命令都自动化,我们可以通过内网ssh远程到每一台机器上执行。下面是具体的脚本代码:

# ssh 通过某一台机器进行远程

ssh 192.168.0.1

# 模拟用户登录,输入yes和密码

yes

password

# 创建一个g.sh的脚本

vi g.sh

# 进入脚本编写

i

#!/bin/bash

# 获取主机名

name=$(hostname)

# 下面循环格式化

for i in sdb1 sdc1 sdd1 sde1 sdf1

do

# 格式化$i,$i表示sdb1等

sudo mkfs.ext4 /dev/$i

# 循环结束

done

# 下面循环创建PV

for j in sdb1 sdc1 sdd1 sde1 sdf1

do

# 创建PV$i,$i表示sdb1等

sudo pvcreate /dev/$j

# 循环结束

done

# 下面循环加入VG

for h in sdb1 sdc1 sdd1 sde1 sdf1

do

sudo vgextend $name /dev/$h

done

# 增加LV容量

sudo lvextend -l+1912136 /dev/$name/root

# 刷新容量

sudo resize2fs /dev/$name/root

# 修改g.sh文件的权限

chmod 777 g.sh

# 执行脚本文件g.sh

./g.sh

# 执行需要输入的密码

passwod

 

四、挂载效果图

1

(图1:挂载前)

2

这篇关于Ubuntu12下挂载硬盘(9TB)Shell版的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1119131

相关文章

Linux脚本(shell)的使用方式

《Linux脚本(shell)的使用方式》:本文主要介绍Linux脚本(shell)的使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录概述语法详解数学运算表达式Shell变量变量分类环境变量Shell内部变量自定义变量:定义、赋值自定义变量:引用、修改、删

Linux查看系统盘和SSD盘的容量、型号及挂载信息的方法

《Linux查看系统盘和SSD盘的容量、型号及挂载信息的方法》在Linux系统中,管理磁盘设备和分区是日常运维工作的重要部分,而lsblk命令是一个强大的工具,它用于列出系统中的块设备(blockde... 目录1. 查看所有磁盘的物理信息方法 1:使用 lsblk(推荐)方法 2:使用 fdisk -l(

linux lvm快照的正确mount挂载实现方式

《linuxlvm快照的正确mount挂载实现方式》:本文主要介绍linuxlvm快照的正确mount挂载实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录linux lvm快照的正确mount挂载1. 检查快照是否正确创建www.chinasem.cn2.

Linux实现简易版Shell的代码详解

《Linux实现简易版Shell的代码详解》本篇文章,我们将一起踏上一段有趣的旅程,仿照CentOS–Bash的工作流程,实现一个功能虽然简单,但足以让你深刻理解Shell工作原理的迷你Sh... 目录一、程序流程分析二、代码实现1. 打印命令行提示符2. 获取用户输入的命令行3. 命令行解析4. 执行命令

C#实现访问远程硬盘的图文教程

《C#实现访问远程硬盘的图文教程》在现实场景中,我们经常用到远程桌面功能,而在某些场景下,我们需要使用类似的远程硬盘功能,这样能非常方便地操作对方电脑磁盘的目录、以及传送文件,这次我们将给出一个完整的... 目录引言一. 远程硬盘功能展示二. 远程硬盘代码实现1. 底层业务通信实现2. UI 实现三. De

Linux区分SSD和机械硬盘的方法总结

《Linux区分SSD和机械硬盘的方法总结》在Linux系统管理中,了解存储设备的类型和特性是至关重要的,不同的存储介质(如固态硬盘SSD和机械硬盘HDD)在性能、可靠性和适用场景上有着显著差异,本文... 目录一、lsblk 命令简介基本用法二、识别磁盘类型的关键参数:ROTA查询 ROTA 参数ROTA

双系统电脑中把Ubuntu装进外接移动固态硬盘的全过程

《双系统电脑中把Ubuntu装进外接移动固态硬盘的全过程》:本文主要介绍如何在Windows11系统中使用VMware17创建虚拟机,并在虚拟机中安装Ubuntu22.04桌面版或Ubunt... 目录一、首先win11中安装vmware17二、磁盘分区三、保存四、使用虚拟机进行系统安装五、遇见的错误和解决

CentOS和Ubuntu系统使用shell脚本创建用户和设置密码

《CentOS和Ubuntu系统使用shell脚本创建用户和设置密码》在Linux系统中,你可以使用useradd命令来创建新用户,使用echo和chpasswd命令来设置密码,本文写了一个shell... 在linux系统中,你可以使用useradd命令来创建新用户,使用echo和chpasswd命令来设

shell编程之函数与数组的使用详解

《shell编程之函数与数组的使用详解》:本文主要介绍shell编程之函数与数组的使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录shell函数函数的用法俩个数求和系统资源监控并报警函数函数变量的作用范围函数的参数递归函数shell数组获取数组的长度读取某下的

SpringShell命令行之交互式Shell应用开发方式

《SpringShell命令行之交互式Shell应用开发方式》本文将深入探讨SpringShell的核心特性、实现方式及应用场景,帮助开发者掌握这一强大工具,具有很好的参考价值,希望对大家有所帮助,如... 目录引言一、Spring Shell概述二、创建命令类三、命令参数处理四、命令分组与帮助系统五、自定