码迷,mamicode.com
首页 > 其他好文 > 详细

磁盘管理

时间:2018-04-13 16:15:13      阅读:183      评论:0      收藏:0      [点我收藏+]

标签:linux系统管理

磁盘管理
########################################################
磁道 track
扇区 sector 一个扇区默认512Byte
磁头 head
柱面 cylinde 一个柱面 8Mb
传统MBR分区方案
1~4个主分区,或者 0~3个主分区+1个扩展分区(n个逻辑分区)
最大支持容量为 2.2TB 的磁盘
扩展分区不能格式化
识别硬盘=>分区规划=>格式化=>挂载使用
毛坯楼层=>打隔断=>装修=>入住
########################################################
如何查看磁盘
[root@server0 ~]# lsblk
修改硬盘分区表
-fdisk 硬盘设备
常用交互指令:
m 列出指令帮助
p 查看现有的分区表
n 新建分区
d 删除分区
q 放弃更改并退出
w 保存更改并退出
[root@server0 ~]# fdisk /dev/vdb
n 创建新的分区----->回车----->回车---->回车----->在last结束时 +2G
p 查看分区表
n 创建新的分区----->回车----->回车---->回车----->在last结束时 +2G
d 删除分区
w 保存并退出
[root@server0 ~]# ls /dev/vdb[1-2]
/dev/vdb1 /dev/vdb2
[root@server0 ~]# lsblk
########################################################
格式化文件系统
mkfs 工具集
mkfs.ext3 分区设备路径
mkfs.ext4 /dev/vdb2
mkfs.xfs /dev/vdb1
mkfs.vfat 分区设备路径

[root@server0 ~]# mkfs.xfs /dev/vdb1
[root@server0 ~]# mkfs.ext4 /dev/vdb2

查看分区文件系统
blkid
[root@server0 ~]# blkid /dev/vdb1
[root@server0 ~]# blkid /dev/vdb2

挂载使用
[root@server0 ~]# mkdir /part1
[root@server0 ~]# mkdir /part2
[root@server0 ~]# mount /dev/vdb1 /part1
[root@server0 ~]# mount /dev/vdb2 /part2

查看正在挂载使用的设备信息
[root@server0 ~]# df -h
文件系统 容量 已用 可用 已用% 挂载点
/dev/vda1 10G 3.0G 7.1G 30% /
devtmpfs 906M 0 906M 0% /dev
tmpfs 921M 80K 921M 1% /dev/shm
tmpfs 921M 17M 904M 2% /run
tmpfs 921M 0 921M 0% /sys/fs/cgroup
/dev/vdb1 2.0G 33M 2.0G 2% /part1
/dev/vdb2 2.0G 6.0M 1.8G 1% /part2
#######################################################
缓解根分区压力
[root@server0 ~]# find -size 查找较大的目录有哪些

[root@server0 ~]# 划分新的分区 /dev/vdc1

[root@server0 ~]# mount /dev/vdc1 /mnt
[root@server0 ~]# cp -r /home/ /mnt
[root@server0 ~]# rm -rf /home/

[root@server0 ~]# umount /mnt
[root@server0 ~]# mount /dev/vdc1 /home
######################################################
重起虚拟机server

开机自动挂载 修改配置文件 /etc/fstab 书写开机自动挂载设备的配置文件
配置/etc/fstab的记录格式
设备路径 挂载点 类型 参数 备份标记 检测顺序

[root@server0 ~]# tail -1 /etc/fstab
/dev/vdb1 /part1 xfs defaults 0 0

验证:
[root@server0 ~]# mount -a
检测/etc/fstab开机自动挂载配置文件,格式是否正确
检测/etc/fstab中,书写完成,但当前没有挂载的设备,进行挂载

[root@server0 ~]# df -h
######################################################
综合分区练习
[root@server0 ~]# fdisk /dev/vdb
p 查看分区表
n 创建新的分区----->回车----->回车---->回车----->在last结束时 +2G
p 查看分区表
n 创建新的分区
----->回车---->起始回车----->结束回车 将所有空间给扩展分区
p 查看分区表
n 创建新的分区----->起始回车------>结束+2G
d 删除分区
w 保存并退出
[root@server0 ~]#partprobe #刷新分区表
[root@server0 ~]# ls /dev/vdb[1-5]
[root@server0 ~]# lsblk
##########################################################
总结:

1.查看硬盘 lsblk
2.划分分区 fdisk
3.刷新分区表 partprobe
4.格式化文件系统 mkfs.xfs mkfs.ext4
5.挂载 mount
6.开机自动挂载 /etc/fstab
##########################################################
分区的高级使用 LVM逻辑卷
1 整合分散的空间
2 实现分区的动态扩大与缩减
在“分区 --> 格式化”中间增加的一个逻辑层
– 零散空闲存储 ---- 整合的虚拟磁盘 ---- 虚拟的分区----- 格式化------ 挂载

物理卷
Physical Volume #PV
卷组
Volume Group #VG
逻辑卷
Logical Volume #LV
将众多的物理卷 组成卷组 然后再从卷组重划分逻辑卷
##########################################################
添加全新的硬盘
[root@server0 ~]# lsblk
#########################################################
综合分区
将/dev/vdc划分6个分区,3个主分区,一个扩展分区,2个逻辑分区
[root@server0 ~]# fdisk /dev/vdc
n 创建新的分区----->回车----->回车---->回车----->在last结束时 +10G
n 创建新的分区----->回车----->回车---->回车----->在last结束时 +10G
n 创建新的分区----->回车----->回车---->回车----->在last结束时 +10G
p 查看分区表
n 创建新的分区
----->回车---->起始回车----->结束回车 将所有空间给扩展分区
p 查看分区表
n 创建新的分区----->起始回车------>结束+10G
n 创建新的分区----->起始回车------>结束+10G
w 保存并退出
[root@server0 ~]# partprobe #刷新分区表
[root@server0 ~]# ls /dev/vdc[1-6]
[root@server0 ~]# lsblk
[root@server0 ~]# ls /dev/vdc*
#########################################################
新建逻辑卷
1 新建卷组
命令格式:vgcreate 卷组名称 分区路径
[root@server0 ~]# vgcreate myvg /dev/vdc1 /dev/vdc2
Physical volume "/dev/vdc1" successfully created
Physical volume "/dev/vdc2" successfully created
Volume group "myvg" successfully created
2创建逻辑卷
命令格式:lvcreate -n 逻辑卷名称 -L 大小 基于卷组
[root@server0 ~]# lvcreate -n mylv -L 16G myvg
[root@server0 ~]# lvs
3.使用LVM逻辑卷
[root@server0 ~]# mkfs.ext4 /dev/myvg/mylv
[root@server0 ~]# mkdir /lvm
[root@server0 ~]# tail -1 /etc/fstab
/dev/myvg/mylv /lvm ext4 defaults 0 0

[root@server0 ~]# mount -a
[root@server0 ~]# df -h
#########################################################
LVM逻辑卷的扩展
一 卷组有足够的剩余空间
1直接扩展逻辑卷的空间
[root@server0 ~]# lvextend -L 19G /dev/myvg/mylv

2扩展文件系统的大小(不影响原有的文件系统)
扩展ext4文件系统 resize2fs
扩展xfs文件系统 xfs_growfs
[root@server0 ~]# df -h | tail -1
[root@server0 ~]# blkid /dev/myvg/mylv
[root@server0 ~]# resize2fs /dev/myvg/mylv
[root@server0 ~]# df -h | tail -1

二 卷组没有足够的剩余空间
1扩展卷组空间
[root@server0 ~]# vgextend myvg /dev/vdc3
[root@server0 ~]# vgs
2直接扩展逻辑卷的空间
[root@server0 ~]# lvextend -L 19G /dev/myvg/mylv

3扩展文件系统的大小(不影响原有的文件系统)
扩展(刷新)ext4文件系统 resize2fs
扩展(刷新)xfs文件系统 xfs_growfs
[root@server0 ~]# df -h |tail -1
[root@server0 ~]# resize2fs /dev/myvg/mylv
[root@server0 ~]# df -h |tail -1
##########################################################
了解内容
缩减 :不要做,会造成扇区或者柱面分布不均匀
顺序不能颠倒
先缩减文件系统的大小
再缩减空间的大小
[root@server0 ~]# resize2fs /dev/myvg/mylv 10G
[root@server0 ~]# umount /lvm
[root@server0 ~]# resize2fs /dev/myvg/mylv 10G
resize2fs 1.42.9 (28-Dec-2013)
请先运行 ‘e2fsck -f /dev/myvg/mylv‘.

[root@server0 ~]# e2fsck -f /dev/myvg/mylv
[root@server0 ~]# resize2fs /dev/myvg/mylv 10G
[root@server0 ~]# lvreduce -L 10G /dev/myvg/mylv

[root@server0 ~]# lvreduce -L 10G /dev/myvg/mylv
WARNING: Reducing active logical volume to 10.00 GiB
THIS MAY DESTROY YOUR DATA (filesystem etc.)
Do you really want to reduce mylv? [y/n]: y

#########################################################
创建卷组的时候设置PE大小
vgcreate -s PE大小 卷组名 空闲分区...
vgchange -s PE大小 卷组名

PE:卷组划分空间的单位 默认4M

[root@server0 ~]# vgdisplay myvg
[root@server0 ~]# vgchange -s 2M myvg
[root@server0 ~]# vgdisplay myvg

创建逻辑卷的时候指定PE个数
– lvcreate -l PE个数 -n 逻辑卷名 卷组名

[root@server0 ~]# lvcreate -l 102 -n lvtest02 myvg
Logical volume "lvtest02" created
[root@server0 ~]# lvs
#########################################################
交换分区 (虚拟内存)
相当于虚拟内存
当物理内存不够用时 使用磁盘空间来模拟内存
在一定程度上缓解内存不足的问题
交换分区 以空闲分区充当的交换空间
[root@server0 ~]# swapon -s #查看交换空间 组成成员信息
[root@server0 ~]# mkswap /dev/vdc5 #格式化,交换文件系统
[root@server0 ~]# swapon /dev/vdc5 #启用交换分区
[root@server0 ~]# swapon -s

[root@server0 ~]# mkswap /dev/vdc6 #格式化,交换文件系统
[root@server0 ~]# swapon /dev/vdc6 #启用交换分区
[root@server0 ~]# swapon -s
##########################################################
开机自动启用交换分区
[root@server0 ~]# vim /etc/fstab
[root@server0 ~]# tail -2 /etc/fstab
/dev/vdc5 swap swap defaults 0 0
/dev/vdc6 swap swap defaults 0 0

[root@server0 ~]# swapoff /dev/vdc[5-6] #停用交换分区
[root@server0 ~]# swapon -s
[root@server0 ~]# swapon -a #检测/etc/fstab 交换分区
[root@server0 ~]# swapon -s
+++++++++++++++++++++++++++++++++++++++++++++++++
划分分区指令 parted #专门做大空间划分 2T以上
GPT:全新的分区方案 突破了4个主分区的限制 可以有128个主分区(并且全是主分区)
MBR 和GPT 不能共存
print #输出分区表
mktable gpt #设置分区模式为GPT
mkpart #划分新的分区
分区名称? []? haha #分区名称随便起
文件系统类型? [ext2]? ext4 #文件系统不起作用
起始点? 0 #上一个分区的结束,是下一个分区的开始
结束点? 2G
忽略/Ignore/放弃/Cancel? Ignore #忽略,分区表信息会占用一部分空间
(parted) print #输出分区表
(parted) quit

[root@server0 ~]# ls /dev/vdb1
######################################################
iSCSI 网络磁盘共享 Internet SCSI 网际SCSI 接口
一种基于C/S架构的虚拟磁盘技术
服务器提供磁盘空间,客户机连接并当成本地磁盘使用

服务端server0思路
划分分区
运行targetcli命令
建立后端存储
建立共享磁盘的名字
关系:将共享磁盘的名字与后端存储联系起来
做ACL 允许客户端通过哪个名字来访问
起用端口和IP

ISCSI Qualified Name 名称规范
iqn.yyyy-mm.倒序域名:自定义标识
用来识别 target 磁盘组,也用来识别客户机身份

1 服务端软件 targetcli

2 运行targetcli 命令进行配置
[root@server ~]# targetcli #运行交互式的配置模式
/> ls
/> backstores/block creat nsd /dev/vdb1 #创建后端存储并起名
/> iscsi/ create iqn.2017-12.com.example:server0 #为共享磁盘起名
/> iscsi/iqn.2017-12.com.example:server0/tpg1/luns create /backstores/block/nsd #关联后端存储
/> iscsi/iqn.2017-12.com.example:server0/tpg1/acls create iqn.2017-12.com.example:desktop0 #设置客户端名称
/> iscsi/iqn.2017-12.com.example:server0/tpg1/portals create 172.25.0.11 #启用端口与IP
Using default IP port 3260 #端口默认3260
Created network portal 172.25.0.11:3260.
/> exit #退出配置

Global pref auto_save_on_exit=true
Last 10 configs saved in /etc/target/backup.
Configuration saved to /etc/target/saveconfig.json
#退出时系统会自动将上述配置写入配置文件中

3 重起target服务 设置为开机自启
[root@server ~]# systemctl restart target
[root@server ~]# systemctl enable target
######################################################
客户端desktop0
1 安装客户端软件
#yum tab键的前提 生成缓存 命令 yum repolist
[root@desktop0 ~]# yum -y install iscsi-initiator-utils
2指定客户端自称的名字
[root@desktop0 ~]# vim /etc/iscsi/initiatorname.iscsi
nitiatorName=iqn.2017-12.com.example:desktop0
#指明访问服务端 客户端自称的名字 是服务端ACL指定的名字
3指定服务端位置
[root@server ~]# man iscsiadm #使用man帮助
找到example 第一行
EXAMPLES
Discover targets at a given IP address:

        iscsiadm --mode discoverydb --type sendtargets --portal 192.168.1.10 --discover  #复制此行 修改服务端IP

[root@desktop0 ~]# iscsiadm --mode discoverydb --type sendtargets --portal 172.25.0.11 --discover

4加载共享存储
[root@desktop0 ~]# systemctl restart iscsi
[root@desktop0 ~]# systemctl daemon-reload
[root@desktop0 ~]# systemctl restart iscsi
[root@desktop0 ~]# systemctl enable iscsi
[root@desktop0 ~]# lsblk

#补充 写错了配置文件中自称的名字
客户端刷新vim /etc/iscsi/initiatorname.iscsi文件的服务
[root@desktop0 ~]# systemctl restart iscsid
[root@desktop0 ~]# systemctl restart iscsi

磁盘管理

标签:linux系统管理

原文地址:http://blog.51cto.com/2168836/2102971

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!