当前位置:网站首页>磁盘和储存管理
磁盘和储存管理
2022-07-31 05:20:00 【cp_dvd】
分区,创建文件系统,挂在
分区方式
MBR:Master Boot Record,1982年,使用32位表示扇区数,分区不超过2T
划分分区的单位:
CentOS 5 之前按整柱面划分
CentOS 6 版本后可以按Sector划分 MBR分区中一块硬盘最多有4个主分区,也可以3主分区+1扩展(N个逻辑分区)
MBR分区:主和扩展分区对应的1--4,/dev/sda3,逻辑分区从5开始,/dev/sda
GPT:GUID(Globals Unique Identifiers) partition table 支持128个分区,使用64位,支持8Z(
512Byte/block )64Z ( 4096Byte/block)
使用128位UUID(Universally Unique Identifier) 表示磁盘和分区 GPT分区表自动备份在头和尾两份,
并有CRC校验位
UEFI (Unified Extensible Firmware Interface 统一可扩展固件接口)硬件支持GPT,使得操作系统可以
启动
备份删除
dd if=/dev/sda of=mdr bs=1 count=64 skip=446
名字 备份文件名 字节 64位 跳过源的前446字节dd if=/dev/zero of=dev/sda bs=1 count=64 seek=446
名字 备份名 字节 64位 跳过目标的446
增加新硬盘,让内核发现1
echo '- - -' > /sys/class/scsi_host/host2|0|1/scan 零或者1,2
mkpart (创建分区)primary(翻译:主)
[email protected] ~]# parted /dev/sdb print 查看是否分区
[[email protected] ~]# parted /dev/sdb mklabel msdos 将其分区为mbr
[[email protected] ~]# parted /dev/sdb mkpart primary 301 500 分区多少
[[email protected] ~]# parted /dev/sdb print 查看分区
[[email protected] ~]# parted /dev/sdb rm 1 删除分区后面跟位数
fdisk 管理MBR分区 现在mbr gpt都惯了 s8
gdisk 管理GPT分区
parted 高级分区操作,可以是交互或非交互方式
fdisk -l /dev/sdb (可以产看分区)
分区(fdisk)1
fdisk /dev/sdb(进如操作页面) gdisk 也一样(风险大自动转换为gpt)
p 分区列表
t 更改分区类型
n 创建新分区
d 删除分区
v 校验分区
u 转换单位
w 保存并退出
q 不保存并退出
[[email protected] ~]# cat /proc/partitions 查看内核是否已经识别新的分区
创建文件系统2
[[email protected] ~]# mkfs.ext4 /dev/sdb1 创建文件系统
[[email protected] ~]# blkid /dev/sdb1 产看是否创建成功
/dev/sdb1: UUID="0825e3d1-fe45-4533-88b0-b9cb37c04688" BLOCK_SIZE="1024" TYPE="ext4" PARTLABEL="Linux filesystem" PARTUUID="5adf7514-7288-4d46-a9e5-ba065cd11461" BLOCK_SIZE=" 块字节 最少一块
CentOS 7,8 同步分区表: partprob
CentOS6 通知内核重新读取硬盘分区表
新增分区用
partx -a /dev/DEVICE
kpartx -a /dev/DEVICE -f: force
#示例:
[[email protected] ~]#partx -a /dev/sda
删除分区用
partx -d --nr M-N /dev/DEVICE
#示例:
[[email protected] ~]#partx -d --nr 6-8 /dev/sda
echo -e 'n\np\n\n\n+2G\nw\n' | fdisk /dev/sdc
#增加了6,7分区
[[email protected] ~]#fdisk /dev/sda
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
[[email protected] ~]# tune2fs -l /dev/sdb1 查看文件的相关属性
文件系统检测和修复
文件系统夹故障常发生于死机或者非正常关机之后,挂载为文件系统标记为“no clean”
注意:一定不要在挂载状态下执行下面命令修复
fsck: File System Check
注意:FS_TYPE 一定要与分区上已经文件类型相同
fsck.FS_TYPE
fsck -t FS_TYPE
mkfs.ext4 -b 1024 xxx (可以指定块大小)
常用选项:
范例:修改破坏的ext文件系统
-a 自动修复
-r 交互式修复错误
e2fsck:ext系列文件专用的检测修复工具
-y 自动回答为yes
-f 强制修复
-p 自动进行安全的修复文件系统问
xfs_repair:xfs文件系统专用检测修复工具
-f 修复文件,而设备
-n 只检查
-d 允许修复只读的挂载设备,在单用户下修复 / 时使用,然后立即reboot
挂在3
[[email protected] ~]# blkid (查看uid)
[[email protected] ~]# mount /dev/sdc1 /mnt (文件挂在)临时挂在
挂在可以叠加,但是只显示最先的,文件可以同时挂在多个地方 挂在用UUID也可以建议用uid
如果有人正在使用的话没法取消挂在
[[email protected] ~]# umount /mnt (取消挂载)
du /SS/SS(可以查看文件夹大小) -s (可以查看文件夹总大小)
df (查看文件系统大小包括元数据)只能查看处于关在状态下的文件系统大小
[[email protected] ~]# fuser -v data/mysql/ 可以查看谁在访问挂载
[[email protected] ~]# ps aux 可以查看进程
[[email protected] ~]# fuser -km /xxx/xxx (把谁提出终端)
vim /etc/fstab 永久挂在 mount -a 重新加载
如果uid写错可能影响机器起不来,可以在页面注释掉错的,再起来
swap 分区 当内存不足时,可以用硬盘来模拟内存
none 禁用这行 就可以不用硬盘来做模拟内存
需要先进入 vim /etc/fstab 需要注销掉none这行 重启后才能生效,或者进入swapoff /dev/dm-1就禁用了了 在swapon -s 里面提取的/dev/dm-1 (partition)
增加内存 斯奥破文件
[[email protected] ~]# blkid 查看设配
[[email protected] ~]# fdisk /dev/sdc 首先进入到设置页面,创建分区,更改分区类型为Linux swap 然后w保存退出 blkid 查看uid是否更改分区成功,然后复制uid到[[email protected] ~]# vim /etc/fstab 下除了uid不同 其余的都和none一样
[[email protected] ~]# swapon -s 查看是否加载成功 swapon -a 重新加载一下
创建文件系统 以文件的格式来增加内存
[[email protected] ~]# dd if=/dev//zero of=/swapfile bs=1M count=1024 创建文件
[[email protected] ~]# mkswap /swapfile 创建文件系统
[[email protected] ~]# chmod 600 /swapfile 修改权限[[email protected] ~]# vim /etc/fstab 进入加上 、swapfile 复制上面none的权限
[[email protected] ~]# swapon -a 重新加载权限
[[email protected] ~]# swapon -s 显示分区
逻辑卷
1增加硬盘 2加载硬盘3给硬盘分区8e
[[email protected] ~]# pvs 查看物理卷
[[email protected] ~]# pvdislay 详细查看物理卷
[[email protected] ~]# pvcreate /dev/sd{d1,e} 创建物理卷[[email protected] ~]# vgcreate -s 16M testvg0 /dev/sdd1 /dev/sde
vgcreate创建卷组、 -s 指定PE将来空间以及容量扩容的最小单位 默认4M
[[email protected] ~]# vgdisplay 查看卷组
lvcreate -L 6G -n lv-mysql testvg0
lvcreate创建逻辑卷 -L6(指定大小) -n(起名) 逻辑卷名
[[email protected] ~]# mkfs.ext4 /dev/testvg0/lv-mysql (创建文件系统)
mkfs.ext4(格式化成ext4)
[[email protected] ~]# blkid (查看uid)
[[email protected] ~]# vim /etc/fstab (写入永久) uid data/mysql ext4 defaults
创建 data、mysql文件, mount -a 加载
[[email protected] ~]# lvextend -l +100%free /dev/testvg0/lv-mysql(扩展逻辑卷就是有空间了)
[[email protected] ~]# resize2fs /dev/testvg0/lv-mysql
(扩展文件系统 有空间了给文件系统)不同的文件系统用不同命令 xfs_growfs
[[email protected] ~]# lvextend -r -l +100%free /dev/testvg0/lv-mysql (两个命令变一个)
缩减逻辑卷 (缩减前建议备份)缩减很容易文件丢失 xfs(不支持缩减)
[[email protected] ~]# umount data/mysql 1(取消挂载)
[[email protected] ~]# lvreduce -L 8G -r /dev/testvg0/lv-mysql 2(缩减逻辑卷)仅支持ext
[[email protected] ~]# mount /dev/testvg0/lv-mysql data/mysql/ (重新挂在)
增加逻辑卷
1分区fdisk /dev/sdd t(更改分区类型8e)
2变成物理卷 pvcreate /dev/sdd
3家卷组 vgextend rl /dev/sdd
4连扩容在扩展文件系统 lvestend -r -L +10G /dev/mapper/rl-root
拆除硬盘
1添加硬盘[[email protected] ~]# pvcreate /dev/sdf
2加入到同一个卷组里[[email protected] ~]# vgextend testvg0 /dev/sdf
3把不要的一硬盘挪移到别的空间里[[email protected] ~]# pvmove /dev/sde
4把他从卷组中移走[[email protected] ~]# vgreduce testvg0 /dev/sde
5把硬盘从物理卷删掉[[email protected] ~]# pvremove /dev/sde
创建快照
[[email protected] ~]# lvcreate -n lv-mysql-snapshot -s -p r -L 1G /dev/testvg0/lv-mysql lvcreate 创建快照(也是逻辑卷) -n lv-mysql-snapshot 快照名 s(快照的意思)
-p r (只读防止修改) -L 1G(容量) /dev/testvg0/lv-mysql(谁的快照)
[email protected] data]# lvdisplay(可以查看快照信息)
[[email protected] mysql]# mount /dev/testvg0/lv-mysql-snapshot /mnt (快照绑定目录)
回复快照
1先取消所有挂载 [[email protected] ~]# umount /mnt
[[email protected] ~]# umount /data/mysql
2回复快照 [[email protected] mysql]# lvconvert --merg /dev/testvg0/lv-mysql-snapshot
挂载注意事项
挂载快照,xfs注意要使用-o ro实现只读,防止快照被修改
mkdir -p /mnt/snap
mount -o ro,nouuid /dev/vg0/data-snapshot /mnt/snap为现有逻辑卷创建快照,注意ext4建议使用-p r 实现只读
lvcreate -l 64 -s -n data-snapshot /dev/vg0/data
删除快照
1取消挂载[[email protected] mysql]# umount /data/mysql
查看逻辑卷[[email protected] mysql]# lvs
2删除逻辑卷[[email protected] mysql]# lvremove /dev/testvg0/lv-mysql
查看卷组[[email protected] mysql]# vgs
3删除卷组[[email protected] ~]# vgremove testvg0
4删除物理卷[[email protected] ~]# pvremove /dev/sdd1 /dev/sdf 查看物理卷pvs
边栏推荐
猜你喜欢
随机推荐
滴滴被罚超80亿!收集并泄露1.07亿条乘客人脸识别信息
变更管理与 DevOps —— 二者同时进行吗?
数据驱动,
Oracle入门 07 - Linux 操作系统安装配置(REHL 7.x)
cenos版本查询,及离线安装zip和unzip
911崩了,自养号测评环境IP有哪些更好的选择
国际站卖家大促攻略,只需要做好这几件事
通过js禁止ctrl+滚轮放缩浏览器页面,禁止用手势放大
ES6-01-ES的简介
记一次QT 2D 画图 实现3D动态效果
【博学谷学习记录】超强总结,用心分享 | 软件测试 抓包
【内网开发日记】用websocket手搓一个聊天软件
软件测试之登录测试详解
网盘程序 ZFile安装
在 AWS 上从零开始设置 Incredibuild 构建系统
读写文件,异常,模块和包
螺旋矩阵Ⅱ
Oracle入门 10 - Linux 设备类型与文件目录结构
Webrtc从理论到实践二: 架构
第一次实践——计算器