注:本次实验应在server虚拟中进行
1.本地存储设备的识别
fdisk -l ##真实存在的设备
cat /proc/partitions ##系统识别的设备
blkid ##系统可使用的设备(没有投入使用,但随时可用)
df ##系统正在挂载的设备
df df -h df -H(后两者可以按照恰当的单位统计)
2.设备名称的读取
/dev/xd*
x=h /dev/hd0
/dev/hd1 (并口设备,ide硬盘,一般出现在老式电脑)
x=s /dev/sda
/dev/sdb ( 串口设备,sata硬盘,或者是iscsi网络储存)
x=v /dev/hd* (虚拟硬盘,一般出现在虚拟机中)
/dev/sr0 ##光驱
/dev/mapper/* ##虚拟设备
(/dev/mapper/rhel-root)
3.设备的挂载和卸载
设备必须要用目录来对设备中的内容进行读写,所以设备在使用时需要做挂载
mount 设 备 挂载点
例:
mount /dev/sdb1 /mnt ##挂载sdb1到mnt
umount /mnt/ (/dev/sdb1 ) ##卸载
mount -o ro /dev/sdb1 /mnt/ ##只读挂载
mount ##查看挂载信息
mount -o remount,rw /dev/sdb1 /mnt ##重新读写挂载
4.解决设备正忙情况
表示设备正忙时,卸载不掉时。
解决此问题
方法一:
fuser -vm /dev/sdb1 ##发现进程
fuser -kvm /dev/sdb1 ##终止进程
umount /dev/sdb1 ##卸载
方法二:
lsof /dev/sdb1 ##发现进程
kill -9 2764 ##结束进程
umount /dev/sdb1 ##卸载
5.磁盘分区
硬盘0磁道1扇区的512字节中记录的信息如下
512 = 446 + 64 + 2
mbr(主引导记录) mpt(主分区表) 55aa(硬盘的有效性标识)
设备分区信息
(1)mbr主引导记录446个字节
(2)mpt主分区表64个字节
(3)硬盘的有效性标识“55aa”2个字节
(4)一个主分区占用16个字节记录分区信息
(5)一块硬盘上如果用mbr的分区方式最多可以存在4个主分区
(6)主分区:分区信息存储在主引导记录扇区的分区表中
(7)拓展分区:一种特殊的分区,专门用来存储更多的分区
(8)逻辑分区:存储在拓展分区中的分区称为逻辑分区
1.分区步骤
1)fdisk -l (查看在那可以进行分区,这里我们看到可以在/dev/vdb中可以)
2)fdisk /dev/vdb
Command (m for help): m ##获得帮助
Command action
a toggle a bootable flag
b edit bsd disklabel
c toggle the dos compatibility flag
d delete a partition ##删除一个主分区
g create a new empty GPT partition table
G create an IRIX (SGI) partition table
l list known partition types
m print this menu
n add a new partition ##新建分区
o create a new empty DOS partition table
p print the partition table ##列出以分区信息
q quit without saving changes ##退出
s create a new empty Sun disklabel
t change a partition's system id ##修改分区id
u change display/entry units
v verify the partition table
w write table to disk and exit ##保存分区标信息到硬盘
x extra functionality (experts only)
Command (m for help): n
Partition type: ##分区类型位扩展分区
p primary (0 primary, 0 extended, 4 free) ##分区类型位主分区
e extended ####分区类型位扩展分区
Select (default p): p ##新建分区
Partition number (1-4, default 1): 1 ##主分区id
First sector (2048-20971519, default 2048):<此处按回车> ## 此分区起始位置
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-20971519, default 20971519): +100M ##分区大小
Partition 1 of type Linux and of size 100 MiB is set
Command (m for help): wq ##退出并保存
The partition table has been altered!
这样一个主分区就建立好了
建立一个分区后,记得一定要同步分区表,要不然后边就不能继续。
cat /proc/partitions ##查看系统识别的分区信息
注意:当我们想建立第五个分区时,我们将第四个分区建为扩展分区,在建立下一个分区
2.分区的格式转化
分完的区并不能被直接使用,需要进行相应格式的转化。然后才能进行挂载
ext3 rhel5及之前的版本 最多支持32TB的文件系统和2T的文件,实际2Tb文件系统,16G文件
ext rhel6 1EB 16TB
xfs rhel7 18EB 9EB 7G/s 4G/s
这里将以把/dev/vdb2格式化为xfs为例:
1)mkfs.xfs /dev/vdb2
mount /dev/vdb2 /mnt (临时挂载,重新开机会消失)
2)设置永久挂载
配置内部文件:vim /etc/fstab
添加 :设备 挂载点 文件系统 挂载参数 是否备份 是否检测
/dev/vdb2 /mnt xfs defaults 0 0
3)mount -a ##可以自动检测新的挂载
注:当参数配置错误时,重启系统会无法进入图形界面,但我们可以继续进行配置内部文件,修改好后,退出即可
3.swap分区管理
Swap分区,即交换区,系统在物理内存不够时,与Swap进行交换。 其实,Swap的调整对Linux服务器,特别是Web服务器的性能至关重要。通过调整Swap,有时可以越过系统性能瓶颈,节省系统升级费用。系统自己使用,不需要挂载,但需要创建后改默认Linux类型为swap,然后格式化,激活。
1.swap分区的建立
1)划分分区,并修改分区的id为swap
【1】先创建一个主分区(这里我有分好的区,不再进行分区)
【2】默认情况下,分区是Linux类
【3】t,表示修改分区id;l,表示列出所以id类型代码;找到关于swap分区类型的代码——>82
【4】输入82,把/dev/vdb1的分区类型修改为swap
【5】输入p可以查看到修改swap类型成功
2)格式化
格式:mkswap 设备
mkswap /dev/vdb2
可以看到,已经将设备格式化为swap文件系统格式
3)激活
格式:swapon -a 设备
swapon -a /dev/vdb2
激活swap设备,使系统利用此设备
4)swap分区的查看
swapon -s
2、开机自动激活
挂载策略文件的绝对路径: /etc/fstab
如让此设备开机自动激活,注意swap分区不需要挂载
配置内部文件:vim /etc/fstab
3、swap分区的删除
其实就是swap分区的逆操作
(1)删除自动激活文件 vim /etc/fstab
(2)swapoff 设备 如:swapoff /dev/vdb2
(3)swapoff /swapfile
(4)删除分区设备,fdisk /dev/vdb
(5)删除文件,rm -fr /swapfile
6.配额
可以让对用的用户使用固定的空间大小和文件的个数,保证服务器的稳定性(配额是针对于分区的)
1.设置分区配额
1.先新建一个设备
2.格式化
mkfs.xfs /dev/vdb1 -f
3.挂载
mkdir /public
chmod 777 /public/
mount -o usrquota,grpquota /dev/vdb1 /public
4.开启设备的配额功能
quotaon -ugv /dev/vdb1
5.对某个用户设置配额
edquota -u student
配置完对student的配额之后我们可以切换到student用户下进行测试:会发现超出磁盘配额
![](https://img-blog.csdn.net/20180804134725338?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2ZvcmV2ZXJfd2Vu/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)
2.查看配额
$ quota
# repquota -a
3.永久激活配额
编写/etc/fstab文件
/dev/vdb1 /public xfs defaults,usrquota 0 0
4.如何关闭配额
先卸载,再重新挂载