linux 共享磁盘lmv,linux 磁盘管理

2024-03-13 12:30
文章标签 linux 共享 管理 磁盘 lmv

本文主要是介绍linux 共享磁盘lmv,linux 磁盘管理,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

新增硬盘管理

基本命令

fdisk -l    列出所有硬盘

fdisk /dev/sda      进入sda磁盘交互式分区界面

m     查看指令帮助

p     列出硬盘分区情况

n     指定新建分区

d删除分区

t      改变分区类型

q不保存退出

w保存退出

l     列出文件系统id

82   交换分区

83   linux中的ext4分区

8e   LVM逻辑卷

5    扩展分区

b    FAT32文件系统

partprobe  分区后需要使用partprobe让内核识别新的分区

dumpe2fs  可用来查看分区文件系统的信息(性能调整的时候用)

e2label    为指定文件系统添加卷标(建议大写)例:e2label /dev/sdb1 XIAOHANG

fsck     用以检查文件系统错误  (必须先卸载分区)

fsck -y /dev/sda1      直接修复系统分区不提示

fsck -t ext4 /dev/sda1   指定要修复的系统分区类型(一般会自动检测类型),系统每次启动时会对磁盘进行fsck操作,对于识别为文件的损坏数据(文件系统无记录),fsck会将文件放入lost + found目录

mke2fs   格式化文件系统,和mkfs差不多,但mke2fs有可选参数

-b  指定文件系统块(block)大小(block是文件系统读写操作的最小单位,默认是4096B)

-c  建立文件系统的时候检查块损坏

-L  指定卷标

-j   建立文件系统日志

mkfs 可用来快速建立文件系统分区(格式化)

mkswap  初始化交换分区   例:mkswap /dev/sdb2

free -m 或cat /proc/meminfo | grep "SwapTotal"查看交换分区大小

fuser     查看系统分区中正在使用的文件   例:fuser -m /opt

lsof      查看系统分区中正在被使用的文件

mount    查看系统内所有挂载分区

df -hT    查看系统挂载分区

umount   卸载分区

mount -a  当修改了etc/fstab文件,又不想重启系统,mount -a可以立即生效自动挂载

-t  指定文件系统的类型,如:-t ext4、-t vfat(一般-t参数不用,系统会自动识别文件系统类型)

-o  指定挂载选项:

ro,rw    只读挂载或读写挂载

sync     不使用文件缓存,所有操作直接写入磁盘(对于供电不稳定的环境)

async    使用缓存提高文件系统读写效率

noatime  不更新文件访问时间

atime    更新文件访问时间

remount  重新挂载

例:

mount -o ro /dev/sdb1 /opt  指定挂载分区的权限为只读(read only)

mount -o ro,remount /dev/sdb1 /opt   重新挂载分区,指定权限为只读(默认是写入权限)

mount -o sync,ro /dev/sdb6 /media/  挂载分区,并不启用缓存,所有操作直接写入硬盘

注!如果两个分区同时挂载到一个目录下,在该目录写入数据,则两个分区都会被写入

用remount参数重新挂载分区时,只能挂载到同一目录下,想挂载到不同目录,必须先卸载改分区

如果两个分区同时挂载到一个目录下,一个分区为ro,一个分区为rw,则ro覆盖rw

如果把分区挂到根目录,只有重启才能卸载

例题示范

新增块硬盘sdb,需sdb1为ext4文件系统,sdb2为交换分区,sdb3为ext4文件系统,sdb4为扩展分区,sdb5为FAT32文件系统,并将分区格式化,用三种不同的方式实现开机自动挂载

步骤一:分区,参考以上命令,完成分区如下图:

164cdd45f3e5bbf014f7079f547c9e8e.png

步骤二:格式化分区

mkfs.ext4 /dev/sb1       格式化ext4文件系统分区

mkswap /dev/sdb2       初始化交换分区

swapon /dev/sdb2        开启交换分区

mkfs.vfat /dev/sdb5      格式化vfat文件系统分区(即FAT 32)

步骤三:挂载

1.手动挂载

mount /dev/sdb1

2.自动挂载

vi /etc/fstab

*基于卷标挂载

e2label /dev/sdb1 XIAOHANG

*基于分区挂载

*基于UUID挂载

blkid /dev/sdb2 >> /etc/fstab

844756abc4030fec503467943cdc99c2.png

LVM逻辑卷管理LVM 管理命令

pv物理卷vg卷组lv逻辑卷

create(新建)√√√

scan(扫描)√√√

display(显示)√√√

extend(扩展)×√√

reduce(减少)×√√

remove(移除)√√√

例题示范一:

新增两块硬盘,建两块物理卷,一块卷组,三块逻辑卷,并基于三种不同方式开机自动挂载

yum install -y system-config-lvm   安装LVM软件包

1.分别为两块硬分区,并把文件系统类型转换成LVM(8e)

2.新建物理卷(可省略)

pvcreate /dev/sdb1

pvcreate /dev/sdc1

3.新建卷组vg1

vgcreate vg1 /dev/sdb1 /dev/sdc1

4.新建逻辑卷

lvcreate -L 100G -n vg1 lv1

5.格式化逻辑卷

mkfs.ext4 /dev/vg1/lv1

mkfs.vfat /dev/vg1/lv2

6.开机自动挂载

vi /etc/fstab

*基于卷标

e2label /dev/vg1/lv1 LV1

*基于UUID

blkid /dev/vg1/lv2 >> /etc/fstab

*基于分区

f32d368920540b90b3737c3bb5c54f39.png

df -hT

ae3b82af48ad64bb896e6af862195404.png

例题示范二:

lv1空间加50G,lv2空间减50G,vg1减掉一块物理卷,再增加两块物理卷,最后删除整个LMV

扩展逻辑卷容量

lvextend -L +50G /dev/vg1/lv1

resize2fs /dev/vg1/lv1      重新识别卷大小(初始化)

减少逻辑卷容量

lvextend -L -50G /dev/vg1/lv2

减少卷组容量

vgreduce vg1 /dev/dc1

扩展卷组容量

vgextend vg1 /dev/dd1

vgextend vg1 /dev/de1

移除逻辑卷

umount /dev/vg1/lv1       必须先卸载逻辑卷才能移除

lvremove /dev/vg1/lv1

移除卷组

vgremove /dev/vg1

移除物理卷

pvremove /dev/sdc1

磁盘配额

setenforce 0     关闭安全linux

1.重新挂载分区,并增加磁盘对用户、组配额的支持

mount -o remount,usrquota,grpquota /dev/vg1/lv1 /opt

2.检查磁盘配额,并生成磁盘配额文件

quotacheck -ugcv /dev/vg1/lv1 (-augcv表示检查所有系统分区磁盘配额)

3.设置777权限,为后续测试方便

chmod 777 /opt

4.编辑用户和组的配额设置

edquota -u/g tom

b818342f446113b11eaf16df98595e30.png

第一列表示磁盘配额的系统分区

第二列表示    已使用空间(单位KB)

第三列表示    软空间大小

第四列表示    硬空间大小

第五列表示    已使用i节点

第六列表示    软文件个数

第七列表示    硬文件个数

5.启动系统分区的磁盘配额功能

quotaon -ugv /dev/vg1/lv1 (-a启动所有系统分区的磁盘配额功能,-p查询是否开启成功)

6.验证磁盘配额

su - tom

cd/opt

dd if=/dev/zero of=1.txt bs=5M count=1      在zero取5M空间,取1次,生成文件1.txt,存放到opt目录下

muquota -u/g tom 查询用户或组的分区配额情况   或repquota /dev/vg1/lv1

6.开机自动支持磁盘配额功能

vi /etc/fstab

e310403b5ca3f25368d6ca6ffc6fe394.png

这篇关于linux 共享磁盘lmv,linux 磁盘管理的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

Linux中的自定义协议+序列反序列化用法

《Linux中的自定义协议+序列反序列化用法》文章探讨网络程序在应用层的实现,涉及TCP协议的数据传输机制、结构化数据的序列化与反序列化方法,以及通过JSON和自定义协议构建网络计算器的思路,强调分层... 目录一,再次理解协议二,序列化和反序列化三,实现网络计算器3.1 日志文件3.2Socket.hpp

redis中session会话共享的三种方案

《redis中session会话共享的三种方案》本文探讨了分布式系统中Session共享的三种解决方案,包括粘性会话、Session复制以及基于Redis的集中存储,具有一定的参考价值,感兴趣的可以了... 目录三种解决方案粘性会话(Sticky Sessions)Session复制Redis统一存储Spr

Linux中的HTTPS协议原理分析

《Linux中的HTTPS协议原理分析》文章解释了HTTPS的必要性:HTTP明文传输易被篡改和劫持,HTTPS通过非对称加密协商对称密钥、CA证书认证和混合加密机制,有效防范中间人攻击,保障通信安全... 目录一、什么是加密和解密?二、为什么需要加密?三、常见的加密方式3.1 对称加密3.2非对称加密四、

Linux之UDP和TCP报头管理方式

《Linux之UDP和TCP报头管理方式》文章系统讲解了传输层协议UDP与TCP的核心区别:UDP无连接、不可靠,适合实时传输(如视频),通过端口号标识应用;TCP有连接、可靠,通过确认应答、序号、窗... 目录一、关于端口号1.1 端口号的理解1.2 端口号范围的划分1.3 认识知名端口号1.4 一个进程

SpringBoot结合Knife4j进行API分组授权管理配置详解

《SpringBoot结合Knife4j进行API分组授权管理配置详解》在现代的微服务架构中,API文档和授权管理是不可或缺的一部分,本文将介绍如何在SpringBoot应用中集成Knife4j,并进... 目录环境准备配置 Swagger配置 Swagger OpenAPI自定义 Swagger UI 底

Linux权限管理与ACL访问控制详解

《Linux权限管理与ACL访问控制详解》Linux权限管理涵盖基本rwx权限(通过chmod设置)、特殊权限(SUID/SGID/StickyBit)及ACL精细授权,由umask决定默认权限,需合... 目录一、基本权限概述1. 基本权限与数字对应关系二、权限管理命令(chmod)1. 字符模式语法2.

使用Redis快速实现共享Session登录的详细步骤

《使用Redis快速实现共享Session登录的详细步骤》在Web开发中,Session通常用于存储用户的会话信息,允许用户在多个页面之间保持登录状态,Redis是一个开源的高性能键值数据库,广泛用于... 目录前言实现原理:步骤:使用Redis实现共享Session登录1. 引入Redis依赖2. 配置R

在Linux系统上连接GitHub的方法步骤(适用2025年)

《在Linux系统上连接GitHub的方法步骤(适用2025年)》在2025年,使用Linux系统连接GitHub的推荐方式是通过SSH(SecureShell)协议进行身份验证,这种方式不仅安全,还... 目录步骤一:检查并安装 Git步骤二:生成 SSH 密钥步骤三:将 SSH 公钥添加到 github

Linux线程同步/互斥过程详解

《Linux线程同步/互斥过程详解》文章讲解多线程并发访问导致竞态条件,需通过互斥锁、原子操作和条件变量实现线程安全与同步,分析死锁条件及避免方法,并介绍RAII封装技术提升资源管理效率... 目录01. 资源共享问题1.1 多线程并发访问1.2 临界区与临界资源1.3 锁的引入02. 多线程案例2.1 为

Oracle数据库定时备份脚本方式(Linux)

《Oracle数据库定时备份脚本方式(Linux)》文章介绍Oracle数据库自动备份方案,包含主机备份传输与备机解压导入流程,强调需提前全量删除原库数据避免报错,并需配置无密传输、定时任务及验证脚本... 目录说明主机脚本备机上自动导库脚本整个自动备份oracle数据库的过程(建议全程用root用户)总结