基于Linux系统利用Quota功能实现FTP中用户的磁盘配额
基于linux系统的磁盘限额的实现方法

基于linux系统的磁盘限额的实现方法在Linux系统中,磁盘限额(disk quota)是一种机制,可用于限制用户或组在文件系统上的磁盘使用量。
它允许系统管理员为每个用户或组设置独立的磁盘配额,以确保磁盘资源被合理使用。
本文将详细介绍在Linux系统中实现磁盘限额的方法。
1.安装并启用磁盘配额支持:```/dev/sda1 /home ext4 defaults,usrquota,grpquota 0 0```2. 创建quota文件:使用命令`quotacheck`创建磁盘限额所需要的quota文件。
quota文件将存储用户和组的磁盘使用信息。
可以使用以下命令创建quota文件:```$ quotacheck -cug /home```上述命令将在/home目录下创建用户和组的quota文件。
3.开启磁盘限额:可以使用以下命令来开启磁盘限额:```$ quotaon /home```4.设置用户和组的磁盘限额:使用命令`edquota`可以为用户或组设置磁盘限额。
例如,为用户"john"设置1GB的磁盘限额:```$ edquota -u john```5.查看磁盘限额:使用命令`quota`可以查看当前用户或组的磁盘使用情况和限额。
例如,查看用户"john"的磁盘限额:```$ quota -u john```上述命令将显示出用户"john"的磁盘使用情况和限额。
6.超过磁盘限额的处理:当用户或组超过磁盘限额时,系统可以采取不同的处理方式。
可以通过修改/etc/quotatab文件来设置处理方式。
常见的处理方式有:- softlimit:在超过软限制时,用户会收到警告信息。
- hardlimit:超过硬限制时,用户无法继续写入文件。
可以通过修改/etc/quotatab文件来设置处理方式。
例如,将用户超过软限制时的处理方式设置为"softlimit":```/dev/sda1 softlimit```以上就是基于Linux系统的磁盘限额的实现方法。
Linux ,quota ,磁盘挂载详解

QUOTA(磁盘配额)QUOTA的基本概念QUOTA就是磁盘配额限制,指对于普通用户使用磁盘的大小进行限制,也就是说对于root用户是不能设定QUOTA配额的。
一般来说在WEB Server、Mail Server、File Server这些用户数量比较多而且需要对各个用户来进行磁盘空间管理时,QUOTA就就是一个蛮好的选择了。
使用QUOTA时有以下的几点需要注意的:QUOTA是针对整个分区来作用的,也就是说如果需要对/home目录单独来进行磁盘配额管理,那么/home必须挂载在一个单独的分区上。
这里要另外说明一下,如果在开始分区的时候只划分了/分区,应该如何操作来实现对/home目录的QUOTA呢!其实方法也蛮简单的,另外增加一块空闲分区,然后将/home目录全部移到新的分区下面,然后在利用ln -s /disk2/home /home来建立链接,这样就不会影响到现有的系统,也可以对/home 做磁盘配额了^_^∙系统的内核必须支持QUOTA,基本上在现在新的发行版RHEL 4或者FC4后都预设了QUOTA 的模块了,另外在fstab中挂载分区的时候也必须加入支持quota的参数usrquota,grpquota。
∙QUOTA只对一般用户有效。
QUOTA的建立步骤假设我的/home目录已经是独立挂载在了分区/dev/hda5上面,并且在fstab上已经加入了usrquota 参数,现在有两个普通用户auu、waterfall,下面就简单说一下QUOTA的建立步骤吧。
1、使用quotacheck命令来建立QUOTA的档案,quotacheck -avug,下面是一些参数的详细说明:a扫描所有在/etc/mtab内,含有quota支援的filesystem,也就是我们一开始在fstab中加入的参数使分区能够支持QUOTAu针对使用者扫描档案与目录的使用情况,会建立erg针对群组扫描档案与目录的使用情况,会建立aquota.groupv显示扫描过程的信息在使用完此命令后可以在/home目录底下生成两个文件er,aquota.group2、使用edquota来编辑各用户的磁盘限额,如:edquota -u auu。
Linux磁盘配额Quota配置详解

Linux磁盘配额Quota配置详解磁盘配额(Quota)一直就是个很有用的东西!怎么说呢?举个例子来说明,如果您曾经申请过网络的mail服务时,那么肯定就会明白什么是20MB的邮件空间、30MB的免费网页空间,好了,这个20MB,30MB是怎样定义出来的呢?哈哈!没错,就是quota这个东西搞出来的!如果我们要限制用户使用硬盘的容量使用大小,嗯!来这里看看就对了!什么是quota『quota』就字面上的意思来看,呵呵!就是有多少『限额』的意思啦!如果是用在零用钱上面,就是类似『有多少零用钱一个月』的意思之类的。
如果是在容量空间上面呢?以Linux 来说,呵呵!就是有多少容量限制的意思。
在Linux系统中,由于是多人多任务的环境,所以会有多人共同使用一个硬盘空间的情况发生,如果其中有少数几个使用者大量的占掉了硬盘空间的话,那势必压缩其它使用者的使用权力!因此管理员应该适当的开放硬盘的权限给使用者,以妥善的分配系统资源!避免有人抗议呀!举例来说,我们使用者的预设家目录都是在/home底下,如果/home是个独立的partition,他大概有10G好了,而/home底下共有30个人,也就是说,每个使用者平均应该会有333MB的空间才对。
偏偏有个使用者在他的家目录底下塞了好多只影片,占掉了8GB 的空间,想想看,是否造成其它正常使用者的不便呢?这个时候就得要靠『quota』的帮忙了!Quota的一般用途quota比较常使用的几个情况是:针对Web服务器,例如:每个人的网页空间的容量限制!针对Mail服务器,例如:每个人的邮件空间限制。
针对File服务器,例如:每个人最大的可用网络硬盘空间。
在Linux当中,使用来作为硬盘空间管理的就是所谓的quota这个东东啦!Quota的使用限制使用这个模块要有几个步骤,底下就分别说说吧!另外要特别注意的是,使用quota时有几个基本的限制需要谈一谈:仅针对整个partition:quota实际在运作的时候,是针对『整个partition』进行限制的,例如:如果你的/dev/hda5是挂载在/home底下,那么在/home底下的所有目录都会受到限制!核心必须支持quota:Linux系统核心必须有支持quota这个模块才行:如果您是使用FC4的预设核心,嘿嘿!那恭喜你了,你的系统已经预设有开放quota这个模块啰!如果您是自行编译核心的,那么请特别留意您是否已经『真的』开启了quota这个模块?至于核心编译的过程我们会在未来进行说明!Quota的记录文件:目前新版的Linux distributions如:Fedora Core 4与SuSE Server9等使用的是Kernel2.6.xx的核心版本,这个核心版本支持新的quota模块,使用的预设档案(er,aquota.group)将不同于旧版本的er,quota.group!(多了一个a!)而由旧版本的quota可以藉由convertquota这个程序来转换呢!只对一般身份使用者有效:这就有趣了!并不是所有在Linux上面的账号都可以设定quota呢,例如root就不能设定quota,因为整个系统所有的数据几乎都是他的!^_^quota这支程序对硬盘配额的限制项目:quota这个程序针对整个partition的限制项目主要分为底下几个部分:soft:这是最低限制容量的意思,使用者在宽限期间之内,他的容量可以超过soft,但必需要宽限时间之内将磁盘容量降低到soft的容量限制之下!hard:这是『绝对不能超过』的容量!跟soft相比的意思为何呢?通常hardlimit会比softlimit为高,例如网络磁盘空间为30MB,那么hardlimit就设定为30MB,但是为了让使用者有一定的警戒心,所以当使用空间超过25MB时,例如使用者使用了27MB的空间时,那么系统就会警告使用者,让使用者可以在『宽限时间内』将他的档案量降低至25MB(亦即是softlimit)之内!也就是说,soft到hard之间的容量其实就是宽限的容量啦!可以达到针对使用者的『警示』作用!宽限时间:那么宽限时间就可以很清楚的知道含意是什么了!也就是当您的使用者使用的空间超过了softlimit,却还没有到达hardlimit时,那么在这个『宽限时间』之内,就必需要请使用者将使用的磁盘容量降低到softlimit之下!而当使用者将磁盘容量使用情况超过softlimit时,『宽限时间』就会自动被启动,而在使用者将容量降低到softlimit之下,那么宽限时间就会自动的取消!基本的quota命令介绍在开始进行quota的实践之前,我们得来了解一下quota要使用的指令!基本上分为两种,一种是查询功能(quota、quotacheck、quotastats、warnquota、repquota),另一种则是编辑quota 的内容(edquota、setquota)。
在Linux中使用quota工具设置磁盘配额

在Windows中我们已经知道可以在NTFS分区里使用磁盘配额,磁盘配额的作用就是限制用户使用磁盘的空间来达到自己的管理目的。
比如:在公司里搭建FTP服务器来让员工来上传一些工作文档之类的东西,一般都是一些比较小的东西,但是假如有的员工把他的电影或游戏放上面的话就浪费了FTP服务器的磁盘空间,所以我们就会对FTP服务器上的磁盘空间进行磁盘配额来限制员工在FTP服务器上的使用空间。
好了,理解了磁盘配额的作用后我们来看一下如何在Linux系统中使用quota工具进行磁盘配额:1.在做磁盘配额之前你得首先得安装好quota工具(可以使用命令“rpm -q quota"来查看你的系统中是否安装了quota工具,没的话就把系统光盘挂载到系统中找到相应的rpm包来进行安装就OK了!),然后有一块硬盘或者是一个空于分区,然后对其进行格式化并挂载后才可以对其进行磁盘配额设置。
下面我以一块硬盘划分一个主分区来举例说明如何对磁盘进行磁盘配额,如何对磁盘进行分区和格式化在上一篇文章已经说过了,所以在这里就不在多说了,有什么不懂的可以看上一篇文章。
2.下面我以我系统中的/dev/sdc设备作为配额对象,我已经对磁盘"/dev/sdc"进行了分区(分了一个主分区sdc1)并格式化了。
如图:3.对磁盘进行了分区并格式化后还得对其进行挂载才可以使用,挂载当然得有挂载点了,可以使用命令"makedir"命令来创建。
有了挂载点后就可以对其进行挂载了,而对要进行磁盘配额的分区挂载的方法有两种,一种是使用命令“mount -o usrquota,grpquota +分区+挂载点"来进行挂载,其中“usrquota,grpquota"选项是为这个分区启用磁盘配额功能。
另一种是修改配置文件“/etc/fstab"来实现分区自动挂载。
下面我就来进行第一种挂载方法:4.我还是以"/dev/sdc1"为例来说明,首先使用命令“mkdir /sdc1"新建一个挂载点“/sdc1",然后再使用命令"mount -o usrquota,grpquota /dev/sdc1 /sdc1",这样就对分区"/dev/sdc1"进行了挂载,可以使用"df -lh"命令来查看一下是否挂载成功。
linux中edquota 命令的用法 -回复

linux中edquota 命令的用法-回复edquota是一个用于设置用户磁盘配额的命令。
在Linux中,管理员可以使用edquota命令为系统中的用户设置磁盘配额,限制用户可以使用的磁盘空间。
用户磁盘配额是一种限制用户使用硬盘空间的机制。
通过设置配额,管理员可以避免个别用户占用过多的磁盘空间,从而平衡系统资源的使用。
edquota命令提供了一种简单而有效的方式来设置和管理这些配额。
使用edquota命令的过程可以分为以下步骤:第一步:确定文件系统支持配额在开始使用edquota命令之前,管理员需要确保文件系统已启用磁盘配额功能。
通常,ext3和ext4文件系统支持磁盘配额。
可以通过查看/etc/fstab文件来确认文件系统类型。
如果文件系统使用了usrquota或grpquota选项,那么配额功能已启用。
第二步:创建并启用配额在启用磁盘配额之前,管理员需要为每个用户创建quota文件。
quota 文件存储了用户的磁盘配额信息。
可以使用quotacheck命令来创建quota文件。
例如,可以运行以下命令创建用户磁盘配额:sudo quotacheck -cug /path/to/filesystem上述命令将在指定的文件系统上创建quota文件,并扫描文件系统以收集用户信息。
第三步:设置用户配额一旦quota文件创建成功,就可以使用edquota命令为每个用户设置磁盘配额。
可以使用以下命令编辑用户配额:sudo edquota -u username上述命令将打开一个文本编辑器,显示与指定用户相关的配额信息。
在文本编辑器中,将会显示当前的软限制(用户的文件系统使用限制)和硬限制(超出该限制用户将无法创建新的文件)。
管理员可以根据需求修改这些限制。
例如,可以将硬限制设置为100MB,并将软限制设置为90MB。
Disk quotas for user username (uid xxx):Filesystem blocks soft hard inodes soft hard/dev/sda1 4 10 124 2 3在编辑完配额信息后,保存并关闭文本编辑器。
linux之磁盘配额(quota)

linux之磁盘配额(quota)1.什么是quota 简单的说就是限制⽤户对磁盘空间的使⽤量。
因为Linux是多⽤户多任务的操作系统,许多⼈共⽤磁盘空间,为了合理的分配磁盘空间,于是就有了quota的出现。
2.quota的⽤途显⽰磁盘使⽤情况和配额3.quota的⼀般作⽤对象(1)针对WWW server(2)针对mail server(3)针对file server4.quota的限制(1)仅能针对整个⽂件系统(2)需要kernel的⽀持(3)只对⼀般⽤户有效5.quota的使⽤ 测试环境 RHEL6.6(默认kernel已经⽀持quota功能) /dev/sdb1 供测试的⽂件系统 ⽤户组 myquota ⽤户 quota1,quota2 具体操作如下 (1)重新挂/dev/sdb1⽂件系统,并添加usrquota,grpquota参数 [root@localhost ~]# mount -o remount,usrquota,grpquota /dev/sdb1 重新挂载后,/dev/sdb1这个分区就⽀持quota功能了 [root@localhost ~]# mount | grep /dev/sdb1 /dev/sdb1 on /mnt/test type ext4 (rw,usrquota,grpquota) (2)添加⽤户组和⽤户 [root@localhost ~]# groupadd myquota [root@localhost ~]# useradd -g myquota quota1 [root@localhost ~]# useradd -g myquota quota2 (3)⽣成quota配置⽂件 [root@localhost ~]# cd /mnt/test/ [root@localhost test]# quotacheck -ug . [root@localhost test]# ls aquota.group er lost+found ⽣成quota配置⽂件 (4)启动quota功能 [root@localhost test]# quotaon /dev/sdb1 若要关闭使⽤quotaoff命令 (5)修改quota配置⽂件 配置⽂件内容如下 Filesystem blocks soft hard inodes soft hard /dev/sdb1 0 0 0 0 0 0 需要修改的是soft/hard的值,单位是KB,soft为警告值,hard为最⼤值,当磁盘使⽤量在soft-hard之间,就会发出警告(默认倒计时7天),若超过警告时间,磁盘使⽤量依然在soft-hard 之间,则会禁⽌使⽤磁盘空间。
Linux命令高级技巧使用quota命令进行磁盘配额管理
Linux命令高级技巧使用quota命令进行磁盘配额管理Linux命令高级技巧:使用quota命令进行磁盘配额管理在Linux操作系统中,quota命令是一个强大的工具,可用于管理用户或组的磁盘配额。
磁盘配额管理可以限制用户或组在文件系统中使用的磁盘空间量,帮助系统管理员更好地控制磁盘资源的使用情况。
本文将介绍如何使用quota命令进行磁盘配额管理。
一、什么是磁盘配额磁盘配额是指在一个文件系统中限制用户或组使用的磁盘空间量。
通过设置磁盘配额,管理员可以控制每个用户或组能够使用的磁盘空间的上限。
磁盘配额的设置可以帮助防止用户滥用磁盘资源,确保公平合理的磁盘空间分配。
二、quota命令的基本用法1. 安装quota命令在大多数Linux发行版中,quota命令并不是默认安装的。
因此,在使用quota命令之前,我们需要先安装它。
以Debian/Ubuntu为例,可以使用以下命令安装quota命令:```sudo apt-get install quota```2. 检查文件系统是否支持磁盘配额在使用quota命令之前,必须确保文件系统已经启用了磁盘配额的功能。
可以使用以下命令检查文件系统的情况:```mount | grep -w "usrquota\|grpquota"```如果该命令输出结果为空,表示当前文件系统未启用磁盘配额。
如果输出结果中有`usrquota`或`grpquota`,表示已经启用了磁盘配额。
如果未启用,需要手动修改文件系统的配置文件来启用磁盘配额。
3. 设置用户的磁盘配额要设置特定用户的磁盘配额,可以使用`edquota`命令。
以下是设置用户配额的示例命令:```sudo edquota username```该命令将打开一个文本编辑器,可以在其中设置用户的磁盘配额。
根据需要,可以设置硬配额和软配额,以及针对不同文件类型的配额。
4. 检查配额限制要查看用户或组的磁盘配额限制情况,可以使用`quota`命令。
Linux磁盘配额(Quota)配置过程
Linux系统的磁盘配额配置主要分七个步骤,具体如下:1、分区挂载选项配置:Linux默认挂载(Mount)是没有启用Quota选项的,因此需在挂载选项中添加,具体如下:用户配额选项:usrquota用户组配额选项:grpquota•配置fstab文件的挂载选项:[root@update~]#vim/etc/fstab##/etc/fstab#CreatedbyanacondaonWedMar2717:57:372013##Accessiblefilesystems,byreference,aremaintainedunder'/dev/disk'#Seemanpagesfstab(5),findfs(8),mount(8)and/orblkid(8)formoreinfo#/dev/mapper/vg_muban-lv_root/ext4defaults11UUID=60d6041c-d344-4b85-996e-beaff6277ff3/bootext4defaults12/dev/mapper/vg_muban-lv_home/homeext4usrquota12/dev/mapper/vg_muban-lv_var/varext4defaults12/dev/mapper/vg_muban-lv_swapswapswapdefaults00tmpfs/dev/shmtmpfsdefaults00devpts/dev/ptsdevptsgid=5,mode=62000sysfs/syssysfsdefaults00proc/procprocdefaults00##注:上述启用home分区的用户配额选项为usrquota,如果要启用组配额,则选项为grpquota •临时挂载是添加磁盘配额选项:[root@update~]#mount-ousrquota/dev/sdb2/mnt/homebak注:-o后加挂载选项2、重新挂载需要启用Quota的分区命令:mount-oremountFS[root@update~]#mount-oremount/home3、磁盘配额Quota检查命令:quotacheck-cumFS[root@update~]#quotacheck-cum/home4、启用磁盘配额命令:quotaonFS[root@update~]#quotaon/home5、编辑用户磁盘配额命令:edquotauser-fFS[root@update~]#edquotabarlow-f/home##编辑barlow用户在/home下的配额Diskquotasforuserbarlow(uid500):Filesystemblockssofthardinodessofthard/dev/mapper/vg_muban-lv_home414401024001500##第一列文件系统,第二列已用blocks(kb),第三列警告级别,第四列限制级别(我限制了barlow用户最高可以使用102400kb),后面三列为限制文件数6、测试检查磁盘配额:命令:dd;repquota-a;quota等[barlow@update~]$ddif=/dev/zeroof=testfilerbs=1Mcount=50##建一个50M的文件记录了50+0的读入记录了50+0的写出52428800字节(52MB)已复制,0.118772秒,441MB/秒出现上面提示,表示正常写入再次写入一个超过120M的文件试试:[barlow@update~]$rmtestfiler##先删除上次测试的文件[barlow@update~]$ddif=/dev/zeroof=testfilerbs=1Mcount=120##写入一个120M的文件dm-3:writefailed,userblocklimitreached.dd:正在写入"testfiler":超出磁盘限额记录了96+0的读入记录了95+0的写出100614144字节(101MB)已复制,0.265027秒,380MB/秒提示超出磁盘配额,查看下文件大小:[barlow@update~]$ll总用量98256-rw-rw-r--1barlowbarlow1006141446月1110:47testfiler 至此,磁盘配额配置结束。
手把手部署Linux下磁盘配额(quota)应用与实战
手把手部署Linux下磁盘配额(quota)应用与实战1、首先我们要了解磁盘配额的作用,以及什么是quota。
磁盘配额可以简单的理解为就是有多少限额的意思,我们知道Linux系统是多人的环境,所以容易出现当多人使用一个硬盘的时候,假如某个人占用了大量的空间,那么造成其他的用户无法使用磁盘,因此我们作为root应该针对硬盘的使用,来对硬盘的使用者设置使用权限。
我们可以简单的理解quota。
2、 Quota的主要用途:针对网站服务(www),IDC域名空间上一般会对网站空间做限制针对企业邮箱,对每个用户邮箱使用可以做软硬限制针对文件服务器,可以对每个用户来使用,ftp,nts等我们需要注意的是我们可以针对用户和组设置最大软硬磁盘配额。
3、 Quota的缺点:只能针对文件系统Linux系统需要支持quota,kernel2.4之前的版本是不支持quota的,目前我们大家都基本使用的是2.6内核,基本上都支持,除非老古董级别的不支持。
Quota只对普通用户有效,对root是不能设置quota的一、实战quota部署,我们通过一个小案例来完成我们的部署情况。
1、首先查看系统的分区的类型,以及挂载情况,如图可以看出我的每个分区都是单独的分区,我们在此实战中使用/home来做quota管理不建议使用“/”分区,如图2、然后我们创建测试的账户一个小脚本来完成,脚本内容如下:3、赋予执行权限,执行脚本,创建账户完成,查看如图:4、手动给/home挂载组和用的quota,需要注意的是,不要写错“usrquota grpquota”,挂载quota两种方法,一种临时生效的,第二中永久生效的,如图是临时设置挂载的quota重启需要重新挂载,如图是修改配置文件vim /etc/fstab 需要在/home这行后面添加,针对用户和组的quota即可。
测试自动挂载是否完成,首先我们先卸载,因为我们手动挂载了,然后我们在测试我们自动挂载的是否生效,如图测试一切都正常。
linux中edquota 命令的用法 -回复
linux中edquota 命令的用法-回复EDQUOTA命令是Linux系统中的一个重要工具,用于管理磁盘配额。
磁盘配额允许系统管理员限制用户在特定分区中可以使用的磁盘空间。
通过使用EDQUOTA命令,管理员可以设置和管理用户的磁盘配额。
本文将一步一步回答关于EDQUOTA命令的使用。
第一步:安装和配置磁盘配额在开始使用EDQUOTA命令之前,首先我们需要确保磁盘配额功能已经正确地安装和配置在我们的系统中。
我们可以通过以下步骤来完成这一任务。
1. 安装必要的软件包在大多数Linux系统中,磁盘配额功能通常作为一个可选的软件包提供。
我们可以通过包管理器来安装所需的软件包。
例如,在Debian或Ubuntu 中,我们可以使用以下命令来安装软件包。
sudo apt-get install quota2. 启用磁盘配额一旦软件包安装完成,我们需要确保磁盘配额功能已经启用。
我们可以通过编辑文件`/etc/fstab`来实现。
打开该文件并找到我们想要启用配额的分区。
在分区的配置行中添加`usrquota`和`grpquota`选项。
例如:/dev/sda1 / ext4 defaults,usrquota,grpquota 0 1保存文件并重新挂载分区:sudo mount -o remount /3. 创建磁盘配额数据库一旦磁盘配额功能已启用,我们需要创建配额数据库。
我们可以使用以下命令:sudo quotacheck -cug /home该命令将创建一个.quota文件保存在指定目录中(在此示例中为`/home`)以跟踪用户和组的磁盘使用情况。
第二步:使用EDQUOTA命令设置和管理配额现在,我们已经完成了安装和配置磁盘配额的步骤,可以开始使用EDQUOTA命令来设置和管理磁盘配额。
下面是EDQUOTA命令的一些常见用法。
1. 设置用户配额我们可以使用EDQUOTA命令来设置特定用户的磁盘配额。
例如,假设我们要设置用户"john"的磁盘配额为100MB。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
摘要随着现代教育技术的飞速发展和教学改革的需要,FTP服务的使用以其方便、快捷、安全地把文件从远程计算机上拷到本地计算机,或把本地计算机的文件送到远程计算机去这一技术特点受到越来越多的使用,为无纸化的办公自动化系统建立了一个良好的基础。
但如何更好地使用与维护成了FTP服务器管理员的难题。
关键词Linux FTP QuotaThe Use of Quota Function to Achieve the User's Disk Quotas in FTP Based on Linux//Shao Peng,Zhang Ting-tingAbstract With the rapid development of modern educational technology and the needs of teaching reform,FTP service has been more and more used for its technical characteristics of co-nveniently,fast,and securely deliver files among computers,and it establishes a good foundation for paperless office automation system.How to better use and maintain it has became a difficult problem for the administrator of FTP server.Key words Linux;FTP;QuotaAuthor's address Department of Modern Technology,Dalian Medical University,116044,Dalian,Liaoning,China1基于Linux系统下FTP服务的技术特点1.1Linux系统的特点分析稳定性。
只要提到Linux就不得不说到它的稳定性,这也是作为服务器应用的操作系统最为重要的指标之一。
Linux几乎很少会崩溃,试想你需要一台服务器一直在那里工作,以便为使用者随时提供服务。
例如WEB服务器或本文介绍的FTP服务器,但一次服务器的意外崩溃,对其基于服务器应用的影响可能是致命的。
又或者作为一个优秀的服务器,管理人员并不希望因为一些细微的改动而需要重新启动服务器。
而在这些方面Linux都把它的稳定性展现得异常突出。
有调查表明,Linux、与其他如Unix系统或IBM大型机等,有可以与之相媲美的稳定性表现。
Linux之所以有这样的稳定性主要有两点原因。
第一,Linux与Unix所共同享有的设计体系经过了长期的考验与验证,吸取了很多宝贵的使用经验,而Linux系统更代表了现代化操作系统的设计理念。
第二,Linux采用了源代码开源的方式来推广自己,这一特点不光使其降低了很多使用者的门槛,而且以Red Hat Linux,SUSE Linux为例,其利用Linux开源的代码来进行二次开发,使其更好地迎合适用人群。
另外开源的同时也保证了任何的系统漏洞都会在第一时间被发现以及及时地改正。
1.2FTP服务的技术特点文件传输协议即FTP,其英文全称为File Transfer Proto-col。
在没有FTP之初,用户想共享文件,大多使用网络文件夹共享或者使用可移动的存储介质,但显然都有其弊端。
主要问题之一就是,不管网络文件夹或者可移动的存储介质,其使用都加大了计算机互相感染病毒的可能性,对其计算机本身安全有着一定的风险,而FTP的出现以其快速、高效、可靠的信息传送方式,使其成为早期互联网上主要的网络应用之一。
作为使用者,只要知道FTP的地址便可访问世界各地所有运行了FTP协议的服务器,使用其上面的各种信息资源。
FTP的最主要功能,就是让使用者连接上一个远程FTP服务器,查找到自己需要的资源后把它拷贝到本地,或者把本地的可利用资源文件上传至远程FTP服务器上去。
2Vsftpd服务的基本配置说明Vsftpd的配置文件/etc/vsftpd/vsftpd.conf是个文本文件,以“#”字符开始的行是注释行。
每个选项设置为一行,格式为“option=value”,注意“=”号两边不能留空白符。
Vsftpd包中所带的vsftpd.conf文件配置比较简单,我们可以根据实际情况对其进行设置,以使得Vsftpd更加实用。
以下是对其一些基本配置信息的简单介绍。
·anonymous_enable=YES控制是否允许匿名用户登录,YES为允许(默认);NO 为不允许。
·local_enable=YES控制系统用户是否允许登录,YES为允许(默认);NO 为不允许。
·write_enable=YES控制是否允许使用任何可以修改文件系统的FTP指令,YES为允许:NO为不允许(默认),但是自带的简单配置文件中此项为打开。
·local_umask=000设置本地用户新增档案是umask的数值默认值为077,但大多数使用022。
·anon_umask=000设置匿名用户新增文件的umask的数值默认值为077。
·anon_upload_enable=YES控制是否允许匿名用户上传文件,YES为允许;NO为不允许(默认)。
此外还需两个条件1#write_enable=YES;2·文件系统中FTP匿名用户对某个目录有写权限。
·anon_mkdir_write_enable=YES控制匿名用户是否允许创建新目录,YES为允许;NO 为不允许(默认),当然与此同时匿名用户必须对新建目录的上层目录拥有写权限。
·dirmessage_enable=YES控制是否启用目录提示信息功能,YES为允许(默认);NO为不允许。
·xferlog_enable=YES控制是否启用日志,YES为允许;NO为不允许(默认),但是自带的简单配置文件中此项为打开。
·connect_from_port_20=YES控制连接以PORT模式传输数据时是否使用20端口,YES为允许;NO为不允许(默认),但是自带的简单配置文邵鹏张亭亭(大连医科大学现代教育技术部辽宁·大连116044)中图分类号:TP393.09文献标识码:A文章编号:1672-7894(2012)15-0077-0277NO 为不允许(默认)·ftpd_banner=Welcome to DLM EDU FTP service.自定义登录欢迎语。
·listen=YES 指明VSFTP 以独立运行方式启动。
·pam_service_name=vsftpd 指定VSFTP 进行PAM 认证时所使用的PAM 配置文件名。
·userlist_enable=YES 读取USERLIST_FILE 在此文件中的用户名直接不能登录,YES 为允许;NO 为不允许(默认)。
·tcp_wrappers=YES使用TCP 远程访问控制机制,YES 为允许(默认);NO 为不允许。
3Quota 功能的配置说明与技术特点3.1Quota 技术特点分析如果任何人都可以随意占用服务器的硬盘空间,那么的服务器硬盘能支撑多久?以我校FTP 服务器现状为例,从存储上划分到FTP 服务器的空间为2T ,而使用者不足1500人,平均每人有大概有1.5GB 的空间,但FTP 应用还是经常由于硬盘空间不足而崩溃。
所以利用现有技术,控制和管理用户自觉地对其FTP 目录下的内容进行定期删除就显得非常重要。
而无论是FTP 服务或者文件服务,都需要对用户使用磁盘空间进行有效控制,以避免用户不需要的垃圾文件占用大量的硬盘空间。
Linux 的磁盘配额(Disk Quotas )能够简单高效地实现这个功能,使用磁盘配额,系统管理员可以控制本域中的每个用户对其磁盘空间进行管理,即每一个用户都有一个针对服务器磁盘空间的最大使用量。
而管理员监视个人用户卷,对不同用户在文件和磁盘容量上加以限制,而不会影响同一卷上其他用户的正常使用。
这样就能有效地利用磁盘有限的存储空间,使得管理员可以方便地利用Quota 合理分配存储资源。
3.2Quota 的配置说明(1)开启磁盘的Quota 功能:编辑/etc/fstab ,使得准备要开放的Quota 磁盘可以支持Quota ,以根用户身份使用vi 编辑器来给需要配额的文件系统添加usrquota 和(或)grpquo-ta 选项。
(2)重新挂载文件系统:添加了userquota 和grpquota 选项后,重新挂载每个相应fstab 条目被修改的文件系统。
如果某文件系统没有被任何进程使用,使用umount 命令后再紧跟着mount 命令来重新挂载这个文件系统。
如果某文件系统正在被使用,要重新挂载该文件系统的最简捷方法是重新引导系统。
(3)在该文件系统建立er 文件(4)预扫描磁盘的使用情况:使用quotacheck 来扫描一下我们要使用的磁盘。
quotacheck -acug /var :-a 选项意味着在/etc/mtab 中所有挂载了的非NFS 文件系统都会被检查来决定是否启用了配额。
-c 选项指定每个启用了配额的文件系统都应该创建配额文件,-u 选项指定检查用户配额,-g 选项指定检查组群配额。
如果-u 或-g 选项被指定,只有用户配额文件被创建。
如果只指定了-g 选项,只有组群配额文件会被创建。
文件被创建后,运行以下命令来生成每个启用了配额的文件系统的当前磁盘用量表:quotacheck -avug 所用选项如下:a —检查所有启用了配额的在本地挂载的文件系统?v —在检查配额过程中显示详细的状态信息?u —检查用户磁盘配额信息?g —检查组群磁盘配额信息?(5)建立使用者的Quota :使用edquota 来编辑每个使用者或群组的可使用空间。
要为用户配置配额,以根用户身份在shell 提示下执行以下命令:edquota -u username 为每个你想实现配额的用户执行该步骤。
例如,如果在/etc/fstab 中为/var 分区启用了配额,执行了edquota 命令后,系统默认的编辑器中就会有如图3显示:(6)启动Quota :磁盘配额完毕后,必须以quotaon -av的命令启用配额管理(要看到turned on 才算成功)。
4实际部署后的使用情况我们利用Quota 来限制用户或者用户组可以使用的磁盘配额。