linux系统的磁盘空间限制的两种方法
最近在搞VPS,要用到磁盘的限额,在网上找了一些相关的资料,总结起来,有两个方法能实现,一是用quota,另外一种是限制目录大小,下面我就将这两种方法写出来,与大家一起分享!
首先我们来看第一种方法,用quota实现。
步骤:
1、挂载需要限额的磁盘
mount -o usrquota,grpquota /dev/sdb1 /mnt/sd1
针对普通磁盘
mount -o remount,usrquota /
这个是针对根分区
2、检查并创建磁盘配额的数据库文件
quotacheck -camugv
c创建,
v创建过程的详细信息,
u对用户的配额支持,
g对组的配额支持,
a表示激活所有配额的磁盘分区,
m只在对根分区创建的时候使用。
注:以上参数根据自己的情况而定
3、开启磁盘配额
quotaon -a
4、配置用户或组的限额的大小
edquota -u user (-g group)
5、查看用户或组的限额情况
quota -uv user (-gv group)
6、查看系统的配额情况
repquota -augv
注:以上5、6步,根据自己的情况来操作,当然,也可以不用查看,但前提是你确定配置是没有问题的!
7、将磁盘的挂载参数写入fstab,确保在系统下次启动的时候,能加载配额功能
defaults,usrquota,grpquota
至此,磁盘配额完成,为了大家更好的理解配置的时候的参数,我把编辑用户和组的各字段含义,贴出来,希望参大家用帮助。
FIlesystem:表示文件系统,即需要设置配额的硬盘分区;
block:表示所占的字节数,单位:KB (不要修改)
soft:磁盘空间限定值 单位:KB (需要设定)
hard:磁盘空间限定值 单位: KB (需要设定)
inodes:i节点数,用户拥有文件的文件的数目 (不要修改)
soft:文档限制数量 (根据需要修改)
hard:文档限制数量 (根据需要修改)
如果说,你不想使用磁盘配额了,就用quotaoff -a 关闭quota(删除/etc/mtab)、删除用户或组的数据库文件,修改/etc/fstab参数。
下面我们来看另外一种方法,限制目录的大小
主要的思路是通过dd命令COPY出你需要的大小,然后挂载到一个目录下使用。
步骤
1、copy出相应的文件大小,比如1G
dd if=/dev/zero bs=1024 count=1000000 of=/1Gfile.loop
2、对此文件进行格式化
mkfs.ext3 /1Gfile.loop
3、建立目录
mkdir /1Gdir
4、挂载使用
mount -o loop /1Gfile.loop /1Gdir
5、为了确保在系统启动的进时也要挂载,就要在/etc/rc.local最后增加
mount -o loop /1Gfile.loop /1Gdir
以上两种方法的优点和缺点
磁盘配额优点:不会先占用磁盘的空间
磁盘配额缺点:只针对磁盘用效,而且必须是针对用户和组的
限制目录大小优点:方便灵活,适用性强。但具体的性能如何,没有测试
限制目录大小缺点:在建立之初就占相应大小的磁盘空间
大家可以根据自己的情况,来选择适合自己的方法!
linux系统的磁盘空间限制的两种方法的更多相关文章
- Linux下查看alert日志文件的两种方法
--linux下查看alert日志文件的两种方法: --方法1: SQL> show parameter background_dump_dest; NAME TYPE VALUE ------ ...
- [ARM-Linux开发]Linux下加载.ko驱动模块的两种方法:insmod与modprobe
假设要加载的驱动程序模块名为SHT21.ko 加载驱动模块 方法一: 进入SHT21.ko驱动模块文件所在的目录,然后直接 insmod SHT21.ko 即可 方法二: 将SHT21.ko文 ...
- windows和linux之间上传下载文件的两种方法
一 用rz和sz http://blog.csdn.net/register_man/article/details/53860774 http://www.jb51.net/article/7 ...
- Linux设置环境变量PATH路径的两种方法
echo 'export dataPath=$HOME/data/pre' >> ~/.bash_profile 路径即刻生效: . .bash_profile 或 source .bas ...
- LINUX下添加磁盘空间的方法详解
给Linux系统添加磁盘空间在工作会经常遇到. 在添加第二块磁盘一般系统默认为hdb(IDE硬盘)sdb(SCSI 硬盘),以hdb为例. linux-isep:~ # fdisk /dev/hdb ...
- Linux上安装Perl模块的两种方法
Linux/Unix下安装Perl模块有两种方法:手工安装和自动安装.第一种方法是从CPAN上下载 您需要的模块,手工编译.安装.第二种方法是联上internet,使用一个叫做CPAN的模块自动完 ...
- PyQt(Python+Qt)学习随笔:QTableWidget中表格各列平均分配宽度的两种方法
老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 在QTableWidget表格部件中,如果需要实现表格中各列要占满部件中的可用空间,同时实现各列平分 ...
- linux系统查看磁盘分区使用空间
Df命令是linux系统以磁盘分区使用空间:df -hl
- Linux系统的磁盘管理
Linux系统的磁盘管理有三个命令:df.du.fdisk. df:列出Linux中所有文件系统的整体磁盘使用量: du:对文件和目录所占用磁盘空间的查看: fdisk:用于磁盘分区时列出所有的磁盘. ...
随机推荐
- 蓝牙核心技术概述(五):蓝牙协议规范(irOBEX、BNEP、AVDTP、AVCTP)
关键词:蓝牙核心技术协议 irDA BNEP AVDTP AVCTP 作者:xubin341719(欢迎转载,请注明作者,请尊重版权,谢谢! )欢迎指正错误,共同学习.共同进步!! 下载链接:Bl ...
- python+mysql+flask创建一个微博应用(持续更新)
微博应用的结构: 用户管理,包括登录管理,会话,用户角色,个人档案及用户头像. 数据库管理,包括数据库迁移处理. Web表单支持,包括字段检验和用于防止垃圾邮件的验证码功能. 大数据的分页功能. 全文 ...
- redis的set类型
1.简单描述 redis的set类型是string类型数值的无序集合.set元素最大可以包含2的32次方减1个元素.由于set类型是通过hash table实现(旧版本是这样,新版本不确定是不是改用了 ...
- [UWP]了解模板化控件(6):使用附加属性
1. 基本需求 之前的ContentView2添加了PointerOver等效果,和TextBox等本来就有Header的控件放在一起反而变得鹤立鸡群. 为了解决这个问题,这次把ContentView ...
- EJB:快速入门
1.EJB概念 2.EJB体系结构 3.SessionBean 3.1 SessionBean 服务端组件 3.2 Remote 与 Local 模式 3.3 Client访问处理流程 3.3.1 R ...
- idea历史版本下载
https://confluence.jetbrains.com/display/IntelliJIDEA/Previous+IntelliJ+IDEA+Releases
- Redis4.0.0 安装及配置 (Linux — Centos7)
本文中的两个配置文件可在这里找到 操作系统:Linux Linux发行版:Centos7 安装 下载地址,点这里Redis4.0.0.tar.gz 或者使用命令: wget http://downlo ...
- 【JS】数据类型
其他类型转化为boolean类型规则: number:非0为true,0和NaN为false: String:非空为true,空为false: Object:任何对象都为true 任何变量赋值为nul ...
- 【十九】require和include的区别
1.require是一个函数,include是一个关键字 2.require是无返回值,include有返回值 3.include()会产生一个警告,而require()则导致一个致命的错误(出现错误 ...
- SQLMap安装步骤
SQLMap是利用Python语言写的,所以需要将Python这个语言环境给安装上 : 1.首先下载Python(这里Python版本为2.7.2,可以下载不同或高版本的) 2.然后在下载sqlmap ...