管理系统的存储

一  分区划分

硬盘的分区由主分区,扩展分区和逻辑分区组成,逻辑分区是在扩展分区中来划分的分区,这样我们就可以合理的利用硬盘的大小

主分区(包括扩展分区)的最大个数是四个,主分区的个数是由硬盘的主引导记录MBR决定的,MBR存放启动管理程序和分区表记录。其中扩展分区可以包含很多的逻辑分区,所以主分区一般从1~4,而逻辑分区是由5开始的

分区划分的命令

fdisk /dev/vdb

管理系统的存储

再次按 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)

按 n 键建立新的分区

管理系统的存储

Command (m for help): n            ##新建分区
Partition type:
   p   primary (0 primary, 0 extended, 4 free)    ##分区类型为主分区
   e   extended                    ##分区类型为扩展分区
Select (default p):                 ##默认位主分区
Using default response p
Partition number (1-4, default 1):        ##主分区id,默认为1
First sector (2048-20971519, default 2048):     ##此分区起始位置,默认为2048
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-20971519, default 20971519): +500M    ##分区大小,为500M
Partition 1 of type Linux and of size 500 MiB is set
Command (m for help): p

Disk /dev/vdb: 10.7 GB, 10737418240 bytes, 20971520 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x9ef3f58f

Device Boot       Start         End            Blocks        Id      System
/dev/vdb1            2048      1026047      512000      83      Linux

创建好之后,wq 退出保存

管理系统的存储

Command (m for help): wq        ##保存推出,如果安q表示放弃更改退出

管理系统的存储

可以看到我们在这里建立了四个主分区,其中一个是扩展分区,占了硬盘剩下的全部空间,接下来建立的都为逻辑分区,且都建立在扩展分区上面

但是这样的话系统并不会认出,我们需要同步分区表

 partprobe     ##同步分区表

cat   /proc/partitions            ##查看系统识别的分区信息

管理系统的存储

vdb1~vdb3的主分区,vdb4的扩展分区

二  如何挂载分区

分区是一个硬件设施,而挂载点为一个软件,一个硬件如何能够挂载在软件上

这里我们提出了将分区格化后,再挂载

mkfs.xfs  /dev/vdb1            ##格式化

管理系统的存储

再将其挂载在 /mnt 下

mount /dev/vdb1     /mnt            ##临时挂载

如何实现一个永久性的挂载

vim /etc/fstab                ##开机自动挂载(编写这个文件)
devic       mountpoint       ftype       defaults(mountpoint)             0               0
/dev/vdb1    /mnt               xfs           defaults                                 0                0
#设备        挂载点        系统格式       参数                               不备份    不检查磁盘

管理系统的存储

设置永久挂载点

 mount -a                #使/etc/fstab中记录的挂载策略生效

管理系统的存储

三  swap分区

swap分区(交换分区)当内存不够用的时候,把数据存放在这个分区中,大小一般为内存的1.5-2倍,但是速度低于内存

fdisk /dev/vdb    #分区

管理系统的存储

这里我们在扩展分区中建立一个100M 的逻辑分区 vdb5,用它来作swap分区

管理系统的存储

t 键改变分区功能id,选择vdb5 ,l 键查看命令帮助,可以看到红色框的部分为 swap 格式 ,前面的代码为 82

输入82,执行命令

管理系统的存储

更改完毕后,p 键查看,可以看到红色框中格式已经更改为swap  ,别忘了wq 退出保存

partprobe    ##更新分区表

mkswap /dev/vdb5      # 设置为交换分区

管理系统的存储

swapon -a /dev/vdb5    #启动
vim /etc/fstab         #设置开机自动挂载
  /dev/vdb5    swap    swap    defaults,qsrquota    0 0

管理系统的存储

swapoff /dev/vdbn    #关闭交换分区

四  磁盘加密

1) fdisk  /dev/vdb                        #创建新的分区

管理系统的存储

创建新的逻辑分区 vdb6

partprobe          ##同步分区表

cryptsetup luksFormat /dev/vdb6        #加密/dev/vdb6   确认时候YES为大写

管理系统的存储

加密成功,密码为 2018westos   注:密码不可以少于8位

cryptsetup open /dev/vdb6 westos    #打开加密的分区

管理系统的存储

mkfs.xfs  /dev/mapper/westos        #格式化分区为xfs格式

管理系统的存储

mount /dev/mapper/westos  /mnt/    #挂载

管理系统的存储

挂载成功

touch  /mnt/file{1..5}   #写入东西
切换进 /mnt 可以查看到写入的东西

管理系统的存储

如果不想让别人看到,可以:
umount /mnt/                #卸载
cryptsetup close westos            #关闭加密分区

管理系统的存储

可以看到第一次卸载挂载是失败的,是因为你正在 /mnt 下面,而占用了进程,需要退出,再卸载挂载

关闭加密分区后,切回来,并不会看到写入的内容

如果要再次读取,就需要:
cryptsetup open /dev/vdb6 westos     ##打开加密的分区
mount /dev/mapper/westos  /mnt/      ##挂载

管理系统的存储

这样就可以再次读取

2) 加密磁盘的永久挂载

vim /etc/crypttab

管理系统的存储

解密后设备管理文件                       设备             加密字符存放文件
westos                                        /dev/vdb6                 /root/lukspsfile

管理系统的存储

vim /root/lukspsfile                #加密字符文件
#写入你设置的密码

管理系统的存储

chmod 600 /root/lukspsfile            #密码文件600权限,密码文件权限
cryptsetup luksAddKey /dev/vdb6  /root/lukspsfile        #关联设备和密码文件
vim /etc/fstab                         #自动挂载
/dev/mapper/westos    /mnt    xfs    defaults    0 0

管理系统的存储

mount -a                #检测/etc/fstab自动挂载

管理系统的存储

reboot  之后,输入 df 命令来查看是否是开机自动挂载

管理系统的存储

设置成功,确实是开机自启

3)加密清除
vim /etc/fstab        #删除自动挂载
> /etc/crypttab        #清空文件
rm -fr /root/lukspsfile        #删除
umount /mnt/            #取消挂载
cryptsetup close westos        #关闭    
mkfs.xfs  /dev/vdb1 -f        #强制格式化

管理系统的存储

这样就将刚才的加密设置清除完毕了

五  配额

可以让对用的用户使用固定的空间大小和文件的个数,保证服务器的稳定性

先将 /dev/vdb5  格式化   mkfs.xfs  /dev/vdb5

管理系统的存储

mount -o usrquota,grpquota /dev/vdb5 /mnt        #挂载,加上配额参数打开,默认是关闭的,加-o

df -h    #查看挂载情况

管理系统的存储

在根下建立新目录 /pub,因为要求普通用户对其可写,所以给其权限

chmod 777 /pub           #给文件权限
 

管理系统的存储

useradd westos   #添加用户
edquota  -u  westos  ##对westos设定大小

管理系统的存储

su -  westos

dd if=/dev/zero of=/pub/file bs=1M count=20
du -sh  /pub/file   ##查看 /pub/file 的大小

管理系统的存储

可以看到 pub 下面的 file 大小仍然是 20M ,并没有因为写入 30M 而变大,因为它的最大容量设定是20M