知识

磁盘配额Quota

可以限制磁盘的使用容量,可以对用户、群组磁盘的最大使用容量。

磁盘配额Quota的使用限制

  1. 只能针对整个文件系统。
  2. 核心必须支持Quota。

自行编译的核心需要注意

  1. Quota的记录文件

旧的记录文件是quota.user,quota.group

新的记录文件是aquota.user,aquota.group

通过程序convertquota可以进行转换

  1. 只对一般身份使用者有效。

Quota可使用项目

  1. 容量限制或档案数量限制(block或inode)

限制inode数量,从而限制档案数量

限制block数量,从而限制磁盘容量

  1. 软限制和硬限制(soft/hard)

超过soft限制,会进行警告,并给予一个宽限时间(grace time)

hard限制是最大上限,不能超过

  1. 会倒数计时的宽限时间

磁盘容量介于soft和hard限制,才会出现grace time倒数

一般grace time时间为7天

grace time内不进行磁盘瘦身,磁盘会变成soft限制值,并被锁住不能新增档案。

Quota流程

  1. 查看目录是否是独立的文件系统,找到对应的磁盘档案

可以通过 df -h /home 进行查看

或者通过 mount | grep "home" 进行查看

  1. 如何加入quota支持

mount -o remount,usrquota,grpquota /home

mount | grep "home"

确定/etc/mtab已经加入usrquota,grpquota到相应的文件系统中。

也可以直接修改/etc/fstab,使得每次登陆都开启quota支持

vi /etc/fstab

LABEL=/home /home ext3 defaults,usrquota,grpquota 1 2

umount /home

mount -a (过载/etc/fstab的设定)

  1. 建立quota的记录文件

通过命令quotacheck 扫描文件系统,并建立Quota记录文件

  1. quota启动、关闭与限制值设定

通过命令quotaon启动quota服务

通过命令quotaoff关闭quota服务

通过命令edquota设定限制时间

---- block和inodes设定值结构 ----

FileSystem blocks soft hard inodes soft hard

/dev/sda3 80 0 0 10 0 0

-- FileSystem -> 针对哪个文件系统

-- blocks -> quota自动算出,单位为Kbytes,不要动它

-- soft -> block的soft值,单位为KB

-- hard -> block的hard值,单位为KB

-- inodes -> quota自动算出,单位为个数,不要动它

-- soft -> inodes的sotd值

-- hard -> inodes的hard值

一般只需要设置 block的soft值和hard值即可

设置好一个用户后,可以通过edquota命令进行复制

edquota -p okUser -u newUser1

edquota -p okUser -u newUser2

edquota -p okUser -u newUser3

---- grace time的设定值结构 ----

Filesytem Block grace period Inode grace period

/dev/sda3 14days 7days

  1. Quota设定值的报表

---- 单一用户的quota报表 ----

通过命令quota -uvs username 进行用户quota报表

通过命令quota -gvs groupname 进行群组quota报表

通过命令repquota 进行文件系统quota的报表

  1. quota的测试与管理

通过命令dd 可以进行quota的限额测试

通过命令warnquota 可以进行quota限额的警告

通过设置日程,让系统自动执行warnquota

vi /etc/cron.daily/warnquota

/usr/sbin/warnquota

chmod 755 /usr/sbin/warnquota

  1. 通过软连接避免只针对文件系统的限制

mv /var/spool/mail /home

ln -s /home/mail /var/spool/mail

对/home进行quota限额

磁盘阵列RAID

RAID可以通过一个技术,将多个较小的磁盘整合成一个较大的磁盘装置。

RAID等级

  1. RAID-0(等量模式,stripe):效能最佳

多个磁盘会被分成等大小的小区块,数据存储时会根据区块大小细分,并分散放到各个磁盘当中。

任何一颗磁盘损坏都会影响所有数据

  1. RAID-1(映像模式,mirror):完整备份

让同一份数据,完整地保存在两颗磁盘上头。

  1. RAID-0+1 RAID-1+0

RAID-0+1 是先以两颗磁盘组成RAID-0,并设定有两组。再以两组RAID-0组成一组RAID-1

RAID-1+0 是先以两颗磁盘组成RAID-1,并设定有两组。再以两组RAID-1组成一组RAID-0

  1. RAID-5 : 效能与数据备份的均衡考虑

RAID-5至少需要3颗以上的磁盘才能够组成这样的磁盘阵列。

数据写入有点类似RAID-0,但在每个循环写入时,在每个磁盘加上一个同位检查数据(Parity)

Parity这个数据用于记录其他磁盘的备份数据

当有一颗磁盘损坏时,可以通过Parity数据重建原本磁盘的数据

RAID5 预设只能支持一颗磁盘的损坏情况。

  1. RAID-6

由RAID-5发展而来,允许两颗磁盘损坏

  1. Spare Disk : 预备磁盘的功能

为了让系统能够实时地在磁盘损坏时进行重建,引入了预备磁盘(Spare Disk)

磁盘阵列的优点

  1. 数据的安全可靠性:能够在磁盘损坏时,进行安全救援和使用
  2. 读写效能:例如RAID-0能够加强读写效能
  3. 容量:可以增加单一文件系统的用量

software RAID 和 hardware RAID

  1. hardware RAID

硬件磁盘阵列是通过磁盘阵列卡来达成数组的目的。

磁盘阵列卡上有专门的芯片用于处理RAID任务

中高阶的磁盘阵列卡都支持热拔插

硬件磁盘阵列就是一颗大硬盘,其装置档案名为/dev/sda[0-n]

  1. software RAID

软件磁盘阵列通过软件的方式仿真数组的目的

可以通过mdadm这个软件实现

软件磁盘阵列的装置档案名为/dev/md[0-n]

  1. 创建software RAID例程

----1. 新建分区

fdisk /dev/sda

partprobe

----2. 利用mdadm建立RAID

mdadm --create --auto=yes /dev/md0 --level=5

--raid-devices=4 --spare-devices=1 /dev/sda{6,7,8,9,10}

mdadm --detail /dev/md0

#查看系统软件磁盘阵列的情况

cat /proc/mdstat

----3. 格式化分区

mkfs -t ext3 /dev/md0

----4. 挂载

mkdir /mnt/raid

mount /dev/md0 /mnt/raid

#查看挂载情况

df

mount

仿真RAID错误的救援模式

通过命令mdadm 进行仿真RAID出错时的救援

仿真RAID的配置文件 /etc/mdadm.conf

获取RAID的UUID

mdadm --detaill /dev/md0 | grep -i uuid

接着编辑配置文件/etc/mdadm.conf

vi /etc/mdadm.conf
#新增
ARRAY /dev/md0 UUID=刚刚查到的UUID #开始设定开机自动挂载并测试
vi /etc/fstab
/dev/md0 /mnt/raid ext3 defaults 1 2 #重新挂载
umount /dev/md0; mount -a
df /mnt/raid

关闭RAID

  1. 先卸载并删除/etc/fstab的自动挂载设定
umount /dev/md0
vi /etc/fstab
删除 /dev/md0 /mnt/raid ext3 defaults 1 2
  1. 直接关闭md0
mdadm --stop /dev/md0
cat /proc/mdstat
  1. 删除配置文件/etc/mdadm.conf中的内容
vi /etc/mdadm.conf
删除 ARRAY /dev/md0 UUID=7c60c049:57d60814:bd9a77f1:57e49c5b

逻辑卷管理 LVM (Logical Volumn Manager)

LVM用于弹性调整文件系统的容量。LVM将实体的磁盘(/dev/sda)或分区(/dev/sda1)组成一个大的逻辑上的大磁盘VG(Volumn Group),将VG切割成大量等大小的最小单位区块PE(Pysical Extend),这些PE区块用于组成可以进行格式化和挂载的LV(Logical Volumn),LVM的弹性就是通过在LV中弹性地添加和移除PE实现的。

LVM能够通过软件的方式将几个实体的分区或磁盘组合成一个看起来是独立的大磁盘(VG,Volumn Group)。然后将这个大磁盘分割成可以使用的逻辑分割槽(LV Logical Volumn),最终就能挂载使用了。

PV (Physical Volumn)

实际的磁盘需要将system id改成8e(LVM的id),然后经过pvcreate指令将它转化为LVM最底层的PV,然后才能够对PV进行利用。可以通过fdisk命令调整system id。

大磁盘 VG (Volumn Group)

大磁盘VG 就是 将许多个PV进行整合所得。

实体扩展区块 PE (Pysical Extend)

LVM预设使用4MB的PE区块,而上面所说的大磁盘VG最多只能含有65536个PE区块。所有VG最大为4M*65536=256G。PE是LVM最小的存储区块,有点类似于文件系统中的block。

LV (Logical Volumn)

大磁盘VG会被分割成LV,而LV就是可以进行格式化的类似于分区的东西。因为PE是LVM的最小存储区块,所以LV的大小与LV包含的PE数量有关。为了方便LVM的管理,LV的装置档案名为/dev/vgname/lvname。

LVM可以弹性调整文件系统的容量,是通过PE的转移和交换实现的。

整个LVM的逻辑过程

  1. 进行实体磁盘的分区,并将system id改成8e.

通过命令 fdisk

  1. 建立并观察PV

通过命令 pvcreate 和 pvscan

  1. 用PV建立VG

通过命令 vgcreate 和 vgdisplay

  1. 从VG中分割出LV

通过命令 lvcreate 和 lvdisplay

  1. 格式化lv并挂载使用

通过命令 mkfs 和 mount

LVM将数据写入硬盘的模式分为两种

  1. 线性模式:一个物理分区写完再写另外一个
  2. 交错模式:数据交错写入多个物理分区

PV阶段

pvcreate => 将物理分区建立成PV;

pvscan => 搜寻目前系统里面任何具有PV的磁盘;

pvdisplay => 显示目前系统上的PV状态;

pvremove => 将物理分区的PV属性移除

流程

pvscan
pvcreate /dev/sda{6,7,8,9}
pvscan
pvdisplay

VG阶段

vgcreate => 建立VG;

vgscan => 搜寻系统上是否为VG存在;

vgdisplay => 显示系统上VG的状态;

vgextend => 在VG内增加额外的PV

vgreduce => 在VG内移除PV

vgchange => 设定VG是否启动

vgremove => 删除VG

流程

vgcreate -s 16M vgname /dev/sda{6,7,8}
# vgcreate [-s PE大小] vg名称 pv名称
vgscan
pvscan
vgdisplay
# 增加VG容量 增加了/dev/sda9的容量
vgextend vgname /dev/sda9

LV阶段

lvcreate => 建立LV

lvscan => 查询系统上的LV

lvdisplay => 显示系统上的LV状态

lvextend => 增加LV的容量

lvreduce => 减少LV的容量

lvremove => 删除一个LV

lvresize => 对LV进行容量大小调整

流程

lvcreate -L 500M -n lvname vgname
# 也可以 lvcreate -l PE个数 -n lvname vgname
lvscan
lvdisplay

文件系统阶段

之后LV需要使用装置档案全名 /dev/vgname/lvname

流程

# 文件系统格式化
mkfs -t ext3 /dev/vgname/lvname
# 挂载
mkdir /mnt/lvm
mount /dev/vgname/lvname /mnt/lvm
df
# 文件备份
cp -a /etc /var/log /mnt/lvm

LV扩容步骤

  1. 用fdisk创建新的具有8e system id的partition
  2. 利用pvcreate建立PV
  3. 利用vgextend将PV将入到先前的vgname
  4. 利用lvresize将新加入的PV内的PE加入到lvname中
  5. resize2fs 确定增加文件系统的容量

流程

fdisk /dev/sda
partprobe
fdisk -l pvcreate /dev/sda10
pvscan vgextend vgname /dev/sda10
vgdisplay lvresize -l +179 /dev/vgname/lvname
lvdisplay df /mnt/lvm dumpe2fs /dev/vgname/lvname resize2fs /dev/vgname/lvname
# resize2fs [-f] [device] [size]
# -f 强制resize动作
df /mnt/lvm

减少LV的容量

流程

pvdisplay
pvscan ## 不支持在线缩小容量
## 不能resize2fs /dev/vgname/lvname 6900M
umount /dev/vgname/lvname
resize2fs /dev/vgname/lvname 6900M
# 进行磁盘检查
e2fsck -f /dev/vgname/lvname
resize2fs /dev/vgname/lvname 6900M # 重新挂载
mount /dev/vgname/lvname /mnt/lvm
df /mnt/lvm # 明确知道要抽离89个PE
lvresize -l -89 /dev/vgname/lvname
lvdisplay # 先确认移除的分区 /dev/sda6的所有PE都移除了
pvdisplay # PE的搬运
pvmove /dev/sda6 /dev/sda10 # 将PV从VG移除
vgreduce vgname /dev/sda6
pvscan pvremove /dev/sda6

LVM系统快照

流程

vgdisplay
# 发现没有多余的PE可用 pvcreate /dev/sda6
vgextend vgname /dev/sda6
vgdisplay
# 发现有多余的PE可用,因此可以建立快照区 # 建立系统快照区,通过-s选项建立快照区
# -n 后接快照区的装置名称
lvcreate -l 60 -s -n ssname /dev/vgname/lvname
lvdislpay mkdir /mnt/snapshot
# 注意 /dev/vgname/ssname ssname为snapshot的名称
mount /dev/vgname/ssname /mnt/snapshot
df umount /mnt/snapshot

利用LVM快照区恢复系统

恢复的容量必须小于LVM快照区的大小

流程

# 查看快照区状态
lvdislpay /dev/vgname/ssname # 挂载快照区
mount /dev/vgname/ssname /mnt/snapshot
df #将快照区的内容复制出来
mkdir -p /backups
cd /mnt/snapshot
tar -jcv -f /backups/lvm.tar.bz2 * # 恢复系统
umount /mnt/snapshot
lvremove /dev/vgname/ssname
umount /mnt/lvm
mkfs -t ext3 /dev/vgname/lvname
mount /dev/vgname/lvname /mnt/lvm
tar jxv -f /backups/lvn.tar.bz2 -C/mnt/lvm

利用快照区可以进行各项练习和测试任务,然后利用快照复原

# 建立一个大一点的快照区
lvcreate -s -l 89 -n ssname /dev/vgname/lvname
lvdisplay /dev/vgname/ssname # 挂载快照区
umount /mnt/lvm
mount /dev/vgname/ssname /mnt/snapshot
df /mnt/snapshot # 开始恶搞 snapshot
mount /dev/vgname/lvname /mnt/lvm # 复原
umount /mnt/snapshot
lvremove /dev/vgname/ssname lvcreate -s -l 89 -n ssname /dev/vgname/lvname
mount /dev/vgname/ssname /mnt/snapshot

移除LVM

  1. 先卸载系统上的LVM文件系统
  2. 使用lvremove移除LV
  3. 使用vgchange -a n vgname 让vgname这个VG不再具有Active属性
  4. 使用vgremove移除 VG
  5. 使用pvremove移除 PV
  6. 使用fdisk修改system id

流程

umount /mnt/lvm
umount /mnt/snapshot
lvremove /dev/vgname/ssname
lvremove /dev/vgname/lvname vgchange -a n vgname vgremove vgname pvremove /dev/sda{6,7,8,9,10} # 最后利用fdisk将system id改成82
fdisk /dev/sda

在RAID上使用LVM

1.先umount卸载之前挂载的多余的文件系统

2.修改/etc/fstab 让开机不自动挂载

3.利用fdisk将分区删除

4.建立RAID

# 利用fdisk建立多个分区,例如 建立5个
fdisk /dev/sda # 利用mdadm建立软件RAID
mdadm --create --auto=yes /dev/md0 --level=5 \
--raid-devices=4 --spare-devices=1 /dev/sda{6,7,8,9,10}

5.处理LVM

pvcreate /dev/md0
vgcreate vgname /dev/md0
lvcreate -L 2.8G -n lvname vgname
lvdisplay

6.文件系统的建立和挂载

mkfs -t ext3 /dev/vgname/lvname
mkdir /mnt/raidlvm
mount /dev/vgname/lvname /mnt/raidlvm

7.删除过程

umount /dev/raidlvm
lvremove /dev/vgname/lvname
vgchange -a n vgname
vgremove vgname
pvremove /dev/md0 mdadm --stop /dev/md0 # 还原原本的分区
fdisk /dev/sda

散乱知识 (随意记)

fdisk -l 查看所有分区

df 查看挂载情况

命令

  1. quotacheck (扫描文件系统,并建立Quota记录文件)

quotacheck [-avugfM] [/mount_point]

quotacheck -a 扫描所有在/etc/mtab中所有具有quota支持的文件系统

quotacheck -u 针对用户扫描档案和目录的使用情况,会建立quota.user

quotacheck -g 针对群组扫描档案和目录的使用情况,会建立quota.group

quotacheck -v 显示扫描过程信息

quotacheck -f 强制扫描文件系统,并写入新的quota配置文件(危险)

quotacheck -M 强制以读写的方式扫描文件系统只有在特殊情况下才会使用

一般直接使用 quota -avug

quota -avug -fm强制扫描已挂载的文件系统

  1. quotaon (启动quota服务)

quotaon [-avug]

quotaon [-vug] [/mount_point]

quotaon -u 针对使用者启动(quota.user)

quotaon -g 针对群组启动(quota.group)

quotaon -v 显示启动过程信息

quotaon -a 根据/etc/mtab内的设定启动qutao

没有-a选项则需要加上 /mount_point

一般直接使用 quotaon -avug

quotaon -vug /var 启动/var对quota的支持

该指令只需要第一次启动quota时执行

下次系统启动会通过/etc/rc.d/rc.sysinit自动下达该命令

  1. quotaoff (关闭quota服务)

quotaoff [-a]

quotaoff [-ug] [/mount_point]

quotaoff -a 根据/etc/mtab关闭所有文件系统的quota

quotaoff -u 仅针对后面那个/mount_point关闭user quota

quotaoff -g 仅针对后面那个/mount_point关闭group quota

  1. edquota (设置quota的限制值)

edquota [-u username] [-g groupname]

edquota -t 修改宽限时间grace time

edquota -p 范本账号 -u 新账号

edquota -u 后接用户名,可以进入quota的编辑页面(vi)设置username的限制值

edquota -g 后接群组名,可以进入quota的编辑页面(vi)设置groupname的限制值

edquota -t 可以修改宽限时间grace time

edquota -p 范本账号 -u 新账号 //复制范本账号的quota值给新账号

  1. quota (进行quota报表)

quota -uvs username

quota -gvs groupname

quota -v 显示每个用户filesystem的quota值

quota -s 显示易读的单位

  1. repquota (跟对整个文件系统进行quota报表)

repquota -a [-vugs]

repquota -a 找到/etc/mtab中具有quota标志的文件系统,并报告quota的结果

repquota -v 输出统计信息

repquota -u 显示用户的quota限制值

repquota -g 显示群组的quota限制值

repquota -s 使用易读的单位显示

  1. warnquota (进行quota的警告)

可以根据/etc/warnquota.conf的设定,找出超过soft的账号透过email进行警告

  1. setquota (直接在指令中设定quota的值)
  1. mdadm (设置软件磁盘阵列RAID)

mdadm --detail /dev/md0

mdadm --create --auto=yes /dev/md[0-9] --raid-device=N --level=[015] --spare-devices=N /dev/sdx /dev/hdx

---- 选项与参数 ----

--create 建立RAID

--auto=yes 决定建立后面接的软件磁盘阵列,即/dev/md0、/dev/md1..

--raid-devices=N 使用N个磁盘(Partition)作为磁盘阵列装置

--spare-devices=N 使用几个磁盘作为备用(Spare)装置

--level=[015] 设定这组磁盘阵列的等级

--detail 接磁盘阵列的详细信息

后面接的装置名可以是整个磁盘,也可以是Partition,但总数要和--raid-devices和--spare-devices的综合相同

---- 救援模式 ----

mdadm --manage /dev/md0[0-9] [--add 装置] [--remove 装置] [--fail 装置]

---- 选项和参数 ----

--add 将后面的装置加入到md中

--remove 将后面的装置由md中移除

--fail 将后面的装置设定成为出错状态

madam --manage /dev/md0 --fail /dev/sda8 另装置sda8出错

madam --manage /dev/md0 --add /dev/sda11 --remove /dev/sda8 移除sda8和增加sda11

参考

鸟哥的Linux私房菜 第三版

liniux备忘录-磁盘配额与进阶文件系统管理的更多相关文章

  1. 别人的Linux私房菜(15)磁盘配额与高级文件系统管理

    磁盘配额在网站.邮件.文件等服务器常见,主要有针对用户.用户组.限制某一目录的的最大磁盘配额. ext文件系统进能针对整个文件系统配额,xfs可以针对目录配额.配额和文件系统有关. 内核必须支持磁盘配 ...

  2. 鸟哥私房菜基础篇:磁碟配额(Quota)与进阶文件系统管理习题

    猫宁!!! 参考:http://cn.linux.vbird.org/linux_basic/0420quota.php 1-在前一章的第一个大量新增帐号范例中, 如果我想要让每个用户均具有 soft ...

  3. Linux进阶文件系统管理之RAID

    RAID 1.引言 RAID全称Redundant Arrays of Inexpensive Disks / Redundant Arrays of Independent Disks,即独立冗余磁 ...

  4. Linux之磁盘与文件系统管理

    磁盘及文件系统管理详解 [参考文献:马哥视频] 原文:http://blog.csdn.net/u013008795/article/details/51150075 目前市场上主流的磁盘是机械式硬盘 ...

  5. Windows中的权限设置、文件压缩、文件加密、磁盘配额和卷影副本

      目录 权限设置 文件夹的NTFS权限 文件的NTFS权限 NTFS权限的应用规则 文件压缩 文件加密 磁盘配额 卷影副本 权限设置的应用 遇到的一个权限问题的小bug 权限问题的实际应用 权限设置 ...

  6. 磁盘配额-----quota

    为什么要使用磁盘配额:为了限制普通用户使用普通磁盘的空间与创建文件的个数等. 不至于个别人的浪费影响所有人的使用. 需要安装quota的软件包. mount -o usrquota,grpquota ...

  7. ★Linux磁盘配额的使用 ★——牛刀小试

    磁盘配额的作用:限制普通用户使用磁盘的空间和创建文件的个数,不至于因为个别人的浪费而影响所有人的使用 需要用户程序quota软件包 #rpm -qa | grep quota  查看quota软件包安 ...

  8. xfs文件系统磁盘配额

    引言 这篇文章简单介绍一下xfs文件系统的磁盘配额配置. 文章目录 0×1.开启分区磁盘配额 0×2.使用xfs_quota命令配置磁盘配额 0×1.开启分区磁盘配额 对于ext4文件以前的文件系统, ...

  9. Linux磁盘配额实验

    1.实现磁盘限额的条件 *需要Linux内核支持 *安装quota软件包2.Linux磁盘限额的特点 作用范围:针对指定 文件系统(分区) 限制对象:普通用户帐号.组帐号 限制类型:磁盘容量(默认单位 ...

随机推荐

  1. Java基础——数组复习

    数组是一个变量,存储相同数据类型的一组数据 声明一个变量就是在内存空间划出一块合适的空间 声明一个数组就是在内存空间划出一串连续的空间 数组长度固定不变,避免数组越界   数组是静态分配内存空间的,所 ...

  2. Openresty最佳案例 | 第4篇:OpenResty常见的api

    转载请标明出处: http://blog.csdn.net/forezp/article/details/78616660 本文出自方志朋的博客 获取请求参数 vim /usr/example/exa ...

  3. 菜鸟笔记 -- Chapter 6.2.5 代码块

    6.2.5  代码块 在编程过程中我们通常会遇到如下这种形式的程序: package democlass; public class CodeBlock { { System.out.println( ...

  4. 菜鸟崛起 DB Chapter 3 MySQL 5.6的基本操作

    3   MySQL的基本操作 上面我们学习一如何安装数据库,那么这节我们来认识一下数据库: 我们在MySQL安装后,在data目录下会自动生成几个必须的数据库,可以使用SHOW DATABASES语句 ...

  5. Spring boot中使用servlet filter

    Spring boot中使用servlet filter liuyuhang原创,未经允许请勿转载! 在web项目中经常需要一些场景,如参数过滤防止sql注入,防止页面攻击,空参数矫正等, 也可以做成 ...

  6. Ionic的项目结构(angluar js)

    Hybird HTML5 App(移动应用开发)之3.Ionic的项目结构 前面使用命令ionic start myapp下载了默认的Ionic应用程序,下面我们打开应用程序项目,来分析一下Ionic ...

  7. B. Train Seats Reservation 2017 ACM-ICPC 亚洲区(南宁赛区)网络赛

    You are given a list of train stations, say from the station 1 to the station 100. The passengers ca ...

  8. aix下oracle 12.1.0.2 asmca不能打开的故障

    因为要添加一个新的13T磁盘组,所以决定通过asmca处理. 结果输入asmca之后,没有反应,前后两天都是如此. 第三天,IBM的存储工程师已经把心的MPIO挂上,如果还无法操作,只能使用asmcm ...

  9. 基于SpringBoot+SpringSecurity+mybatis+layui实现的一款权限系统

    这是一款适合初学者学习权限以及springBoot开发,mybatis综合操作的后台权限管理系统 其中设计到的数据查询有一对一,一对多,多对多,联合分步查询,充分利用mybatis的强大实现各种操作, ...

  10. centos7中vsftp的搭建

    开启vsftpd:service vsftpd start关闭vsftp:service vsftpd stop 安装vsftpd: yum -y install vsftpd 建立vsftpd帐号: ...