centos7/linux 磁盘管理入门
添加新磁盘并挂载:
设置虚拟机系统里添加磁盘,重启虚拟机后,虚拟机目录/dev下会增加一个sdb设备。
使用fdisk /dev/sdb 管理磁盘分区,首先p 查看磁盘分区信息,然后n增加一个主分区,然后在敲入p进行分区操作,再输入1表示命名分区为sdb1,接着会提示输入开始扇区,直接回车跳过,然后在最后扇区那里输入+2G表示该分区大小设置为2G,使用p再次查看分区是否成功创建,显示有新的分区后,敲入w键表示写入磁盘。命令执行完成后,会自动退出fdisk。现在file /dev/sdb1查询分区信息,如果出错,敲入命令partprobe或者直接重启虚拟机即可。
因为Linux系统无法对没有格式化的磁盘进行读写操作,所以接下来还需要格式化创建好的分区。输入命令mkfs.xfs /dev/sdb1将其格式化为xfs文件系统格式,如果需要换成其他格式可以在敲完mkfs后再使用两次tab键来显示其他文件系统格式。
那么,现在我们只需要再挂载该分区到系统里就可以了,首先mkdir /newFS 在根目录创建文件夹用来挂载,然后就是mount /dev/sdb1 /newFS。现在就可以正常使用该分区了。但每次重启虚拟机后都需要再挂载一遍,所以我们可以在每次开机时自动挂载该分区,vi /etc/fstab 然后在文件末尾添加 /dev/sdb1 /newFS xfs defaults 0(表示是否开机磁盘自检) 0
如果挂载命令写错,重启centos7后会进入emergency mode
当遇到这个问题是我们的解决方法是
根据提示输入root密码
编辑/etc/fstab,修改错误的那条挂载命令(就是你后来自己添加上去的命令)
然后重启就可以了
添加交换分区:
创建分区2跟上面创建分区1的步骤一直,创建好并退出fdisk之后,输入命令mkswap /dev/sdb2,格式化次盘为swap格式,使用free -h 查看交换区信息,挂载到系统中的命令是swapon /dev/sdb2,再次使用free -h命令查看交换区,会发现交换区swap比原来的大了分区2的大小。开机自动挂载命令也是在fstab文件末尾添加/dev/sdb2 swap swap defaults 0 0
磁盘容量配额:(没尝试过)
修改/etc/fstab文件,UUID更改该行为UUID=某些数字 /boot xfs defaults,uquota 1 2 重启系统生效,验证是否生效使用命令mount | grep boot显示最后一项为usrquota
以下命令是用户磁盘配额的,针对/boot
useradd tom
chmod -Rf o+w /boot
xfs_quota -x -c 'limit bsoft=3m bhard=6m isoft=3 ihard=6 tom' /boot(其中-x指专家模式,-c以参数的形式设置命令,bsoft硬盘软限制额度,bhard硬盘硬限制额度,isoft创建文件软额度,ihard创建文件硬额度,其中当达到软限制时会提示用户但仍可使用,而达到硬限制额度会提示用户并强制终止用户该操作)
xfs_quota -x -c report /boot查看配置情况
su - tom (最好在中间加一个减号)
dd if=/dev/zero of=/boot/tom bs=5M count=1(if输入,of输出,bs块大小,count数量)创建5m的文件到/boot/tom,创建成功,如果把5m改为8m,创建失败,因为bhard=6m。编辑quota配额限制,edquota -u tom,修改hard参数。dd命令解释:格式dd if=/dev/zero of=/root/tom bs=5M count=1创建一个5m的文件到/root/tom中,/dev/zero就是用来产生这么大的文件用的(cat
/root/tom没有内容)
高大上的RAID配置:
首先得要在vm软件添加四个虚拟磁盘,默认下一步下一步即可,然后开启虚拟机,如果没有mdadm命令的话就yum install mdadm -y,其它命令也类似,屡试不爽
mdadm -Cv /dev/md0 -a yes -n 4 -l 10 /dev/sdb /dev/sdc /dev/sdd /dev/sde(-C 创建RAID -v显示过程 -a自动创建文件-n磁盘个数 -l 10 表示RAID10方案,后面是四个磁盘)
mkfs.ext4 /dev/md0格式化磁盘
mkdir /RAID
mount /dev/md0 /RAID
df -h查看详情
mdadm -D /dev/md0 查看详情
echo "/dev/md0 /RAID ext4 defaults 0 0 " >>/etc/fstab
损坏磁盘列阵及修复:
mdadm /dev/md0 -f /dev/sdb(-f 模拟/dev/md0里的sdb损坏)
mdadm -D /dev/md0 查看详情,可以看到 sdb 处于faulty状态
umount /RAID(从这里开始犯迷糊了)
mdadm /dev/md0 -a /dev/sdb(-a添加设备)
mdadm -D /dev/md0查看
磁盘阵列组+备份组:
首先像前面那样添加四块磁盘,其中一块是用来做备份磁盘的
mdadm -Cv /dev/md0 -n 3 -l 5 -x 1 /dev/sdb /dev/sdc /dev/sdd /dev/sde (-n多少块-l表示RAID级别-x多少块备份盘)
现在开始格式化mkfs.ext4 /dev/md0
开机自动挂载echo " /dev/md0 /RAID ext4 defaults 0 0" >>/etc/fstab
mkdir /RAID
挂载全部mount -a,接着就可以查看情况了
现在模拟损坏情况:mdadm /dev/md0 -f /dev/sdb 模拟sdb损坏 ,使用mdadm -D /dev/md0查看情况,可以发现sde会自动顶替上去了(这里我执行的时候会提示错误,暂时还没有找到解决方法)
centos7/linux 磁盘管理入门的更多相关文章
- linux磁盘管理系列-软RAID的实现
1 什么是RAID RAID全称是独立磁盘冗余阵列(Redundant Array of Independent Disks),基本思想是把多个磁盘组合起来,组合一个磁盘阵列组,使得性能大幅提高. R ...
- linux磁盘管理系列-LVM的使用
LVM是什么 LVM是Linux操作系统的逻辑卷管理器. 现在有两个Linux版本的LVM,分别是 LVM1,LVM2.LVM1是一种已经被认为稳定了几年的成熟产品,LVM2 是最新最好的LVM版本. ...
- linux磁盘管理系列三:LVM的使用
磁盘管理系列 linux磁盘管理系列一:磁盘配额管理 http://www.cnblogs.com/zhaojiedi1992/p/zhaojiedi_linux_040_quota.html l ...
- linux磁盘管理系列二:软RAID的实现
磁盘管理系列 linux磁盘管理系列一:磁盘配额管理 http://www.cnblogs.com/zhaojiedi1992/p/zhaojiedi_linux_040_quota.html l ...
- Linux 磁盘管理,Linux vi/vim
一.Linux 磁盘管理 Linux磁盘管理好坏直接关系到整个系统的性能问题. Linux磁盘管理常用三个命令为df.du和fdisk. df:列出文件系统的整体磁盘使用量 du:检查磁盘空间使用量 ...
- Linux 磁盘管理
Linux磁盘管理好坏管理直接关系到整个系统的性能问题. Linux磁盘管理常用三个命令为df.du和fdisk. df:列出文件系统的整体磁盘使用量 du:检查磁盘空间使用量 fdisk:用于磁盘分 ...
- df、du、fdisk:Linux磁盘管理三板斧的使用心得(转载)
From:http://os.51cto.com/art/201012/240726_all.htm 作者介绍:李洋(博客),博士毕业于中科院计算所.10多年来一直从事计算机网络信息安全研发工作,曾主 ...
- linux 磁盘管理学习笔记
磁盘管理命令:fdisk df du fdisk #查看硬盘分区表 df #查看分区使用情况 du #查看文件占用空间情况lvdisplay #逻辑分区 [1] 李洋.df.du.fdisk:Linu ...
- linux磁盘管理系列一:磁盘配额管理
磁盘管理系列 linux磁盘管理系列一:磁盘配额管理 http://www.cnblogs.com/zhaojiedi1992/p/zhaojiedi_linux_040_quota.html l ...
随机推荐
- Java 几种showMessageDialog的表示
最近在做swing程序中遇到使用消息提示框的,JOptionPane类其中封装了很多的方法. 很方便的,于是就简单的整理了一下. 1.1 showMessageDialog 显示一个带有OK 按钮的模 ...
- .net core json配置相关用法
在.net core中,配置文件差不多都是json文件.我们在开发程序的时候,可以使用系统默认的appsettings.json,可以自定义json配置文件.当json配置文件里面的参数改变时,程序也 ...
- 内存管理和GC算法以及回收策略
JVM内存组成结构 JVM栈由堆.栈.本地方法栈.方法区等部分组成,结构图如下所示: JVM内存回收 Sun的JVMGenerationalCollecting(垃圾回收)原理是这样的:把对象分为年青 ...
- Comparable和Comparator接口是干什么的?列出它们的区别。
Comparable和Comparator接口是干什么的?列出它们的区别. Java提供了只包含一个compareTo()方法的Comparable接口.这个方法可以个给两个对象排序.具体来说,它返回 ...
- spring boot 集成 quartz 定时任务
spring boot: @EnableScheduling开启计划任务支持,@Scheduled计划任务声明 1.pom.xml 引入依赖 <dependency> <groupI ...
- 开发框架DevExtreme发布v18.2.4|附下载
DevExtreme Complete Subscription是性能最优的 HTML5,CSS 和 JavaScript 移动.Web开发框架,可以直接在Visual Studio集成开发环境,构建 ...
- 牛客第三场多校 H Diff-prime Pairs
链接:https://www.nowcoder.com/acm/contest/141/H来源:牛客网 Eddy has solved lots of problem involving calcul ...
- Paxos工程实践
Overview 是不是感觉看了这篇 Paxos算法 感觉完全没看懂?2333我也是 之前Paxos算法在工程实现的过程中,会遇到非常多的问题. Chubby Google Chubby是一个大名鼎鼎 ...
- js 数组去重的几种方式及原理
let arr = [1,1,'true','true',true,true,15,15,false,false, undefined,undefined, null,null, NaN, NaN,' ...
- Arduino显示PM2.5
这代码一般都是复制过来,在小改下就行了 代码如下: #include <Wire.h> #include <LiquidCrystal_I2C.h> #include < ...