📄 00000016.htm
字号:
:sh:\ <BR> <BR> :af=/var/log/lp-acct:\ <BR> <BR> :if=/var/spool/lpd/filter1:\ <BR> <BR> :lp=/dev/lp0:fo=true: <BR> <BR> af选项定义了打印机的记账文件,然后就可以用/usr/sbin/pac程序显示用户的记账信 <BR>息了,例如: <BR> <BR> [root@mail /etc]# pac <BR> <BR> Login pages/feet runs price <BR> <BR> total 0.00 0 $ 0.00 <BR> <BR> 注意后面的price选项,它按照每页2美分的价格计算打印费用,你应该用pac –p选项 <BR>更改这个价格,例如pac –p0.30等等。 <BR> <BR> 需要指出的一点是,pac程序盲目地按照输入过滤器产生的页数计算价格,说实话我不 <BR>太相信过滤器能否产生正确的页数结果,你就当个乐子吧。 <BR> <BR> 9.3 硬盘管理 <BR> <BR> 无论你的硬盘有多大,你都会比预料的时间更快地看到它被塞满。UNIX用磁盘限额来 <BR>对付这种情况。某些操作系统(比如早期的Windows NT)不使用磁盘限额,因此一个愚 <BR>蠢的用户可以在一夜之间塞满你的全部剩余硬盘空间。在Linux下面你可以防止这种情况 <BR>,不过这个功能在缺省情况下是并不打开的,因此你必须手工启动它。 <BR> <BR> 除此之外,我们还要介绍fsck程序,它是在出现文件系统灾难的时候唯一的恢复工具 <BR>。说实话我不太喜欢UNIX的灾难恢复能力,或许因为它出现灾难的几率比较小,但是无 <BR>论如何,灾难总会发生。 <BR> <BR> 9.3.1 磁盘限额 <BR> <BR> 磁盘限额是设置用户可以使用的最大磁盘空间。在使用磁盘限额之前,你必须理解它 <BR>是基于文件系统的,也就是说,如果你有多个文件系统,而且某个用户在每一个系统上 <BR>都有写权限,那么你限制他的办法是对每个文件系统限制其使用空间。这确实是一件比 <BR>较恶心的事情,但是总比不带限额功能要好。 <BR> <BR> 要启动磁盘限额,首先必须保证内核编译时打开了Disk Quota选项,这个选项在File <BR> System选单中: <BR> <BR> <BR> <BR> 图9.2 配置核心quota支持 <BR> <BR> 在确认内核支持quotas之后,需要建立缺省的quota文件,必须注意,如果你有若干个 <BR>文件系统,对每一个想使用quotas的文件系统,你都需要在它的根目录下面建立一个qu <BR>ota文件,例如,某个文件系统连接到/home,你就需要将它连接上之后在/home下面建立 <BR>quota文件。 <BR> <BR> quota文件的名字是quota.user和quota.group,属主必须是root。你可以这样建立: <BR>(假设需要限额的文件系统是/) <BR> <BR> #touch /quota.user <BR> <BR> #chmod 600 /quota.user <BR> <BR> #touch /quota.group <BR> <BR> #chmod 600 /quota.group <BR> <BR> 然后就可以启动磁盘限额了,要启动磁盘限额,需要在文件系统说明文件/etc/fstab <BR>中明确地设置quota选项,例如,你的fstab文件是 <BR> <BR> /dev/hda1 / ext2 defaults 1 1 <BR> <BR> /dev/hda4 swap swap defaults 0 0 <BR> <BR> /dev/fd0 /mnt/floppy ext2 noauto 0 0 <BR> <BR> /dev/cdrom /mnt/cdrom iso9660 noauto,ro 0 0 <BR> <BR> none /proc proc defaults 0 0 <BR> <BR> none /dev/pts devpts mode=0622 0 0 <BR> <BR> 现在你想对/文件系统加上quota,那么需要在参数栏里面加上usrquota参数,也就是 <BR>/dev/hda1那一行改成: <BR> <BR> /dev/hda1 / ext2 defaults,usrquota 1 1 <BR> <BR> 注意不要拼写错误。 <BR> <BR> 接下来,执行限额检验程序,填入每个用户使用的磁盘空间: <BR> <BR> #cd / <BR> <BR> #quotacheck /dev/hda1 <BR> <BR> 参数是进行quota的文件系统的设备名字,如果你想统计所有的文件系统,使用quota <BR>check –a。 <BR> <BR> 依照系统中用户和文件的多少,这个动作会消耗几秒钟到十几分钟的时间,然后你会 <BR>看到/quota.user文件的变化: <BR> <BR> #ls -l /q* <BR> <BR> -rw-r--r-- 1 root root 0 Mar 21 11:12 /quota.group <BR> <BR> -rw-r--r-- 1 root root 19232 Mar 21 11:17 /quota.user <BR> <BR> 下面可以为每个用户编辑磁盘限额了,这是通过edquota程序实现的,这个程序会调用 <BR>在环境变量EDITOR里面设置的编辑器来编辑对应用户的quota值,语法是edquota [用户 <BR>名]: <BR> <BR> #edquota wanghy <BR> <BR> Quotas for user wanghy: <BR> <BR> /dev/hda7: blocks in use: 1442, limits (soft = 0, hard = 0) <BR> <BR> inodes in use: 48, limits (soft = 0, hard = 0) <BR> <BR>~ <BR> <BR>~ <BR> <BR> "/tmp/EdP.ahjUuba" 3L, 132C <BR> <BR> 缺省的编辑器是vi程序,在每个用户的quota 值中存在两组数据。首先是块数,这组 <BR>数值用来限制用户使用的磁盘空间,缺省下,每个块是1KB。另外一组数值是i-结点的数 <BR>目,或者说用户可以使用的文件个数。在现在的情况下,用户wanghy已经使用了1442KB <BR>磁盘空间和48个文件。 <BR> <BR> 括号内的数值是对用户的限制,限制有两种,称为软限制和硬限制。硬限制是用户所 <BR>能使用的实际上限。而软限制只是一个警戒线,一旦用户使用的量突破这个数值,系统 <BR>就会向用户发出警告。为了避免用户简单地忽略警告,quota程序设置了内部定时,一旦 <BR>经过确定的时间(缺省是一星期),软限制将被硬化,用户无法再使用硬盘空间,除非清 <BR>理磁盘。 <BR> <BR> 在现在的情况,用户wanghy的软限制和硬限制都是0,意味着系统并没有对这个用户进 <BR>行限额。你可以修改soft和hard值到你认为合适的数值,然后存盘。 <BR> <BR> 也可以用edquota程序修改quota程序的计时期限,命令是edquota –t,例如: <BR> <BR> #edquota –t <BR> <BR> Time units may be: days, hours, minutes, or seconds <BR> <BR> Grace period before enforcing soft limits for users: <BR> <BR> /dev/hda1: block grace period: 7 days, file grace period: 7 days <BR> <BR>~ <BR> <BR> "/tmp/EdP.aJWEBkD" 3L, 170C <BR> <BR> 这个信息说明/dev/hda1系统的缺省限时是7天,你可以修改它到一个合适的值,然后 <BR>存盘退出。因为这个过程实际就是用vi编辑一个临时文件,可以使用vi的各种调试命令 <BR>。 <BR> <BR> 要编辑对于用户组的限额,使用命令edquota –g,例如,要对group1设置限额,使用 <BR>edquota –g group1。 <BR> <BR> 当你修改正确了全部的信息之后,可以用quotaon程序启动quota功能了,例如: <BR> <BR> quotaon /dev/hda1 <BR> <BR> 如果你要启动在/etc/fstab中包含usrquota参数的所有文件系统的磁盘限额,使用 <BR> <BR> quotaon –a <BR> <BR> 由于缺省的系统启动脚本就带有quotaon –a命令,所以你也可以简单地重新启动系统 <BR>来启动磁盘限额。如果你改变了缺省的系统启动脚本,注意不要把这一行删掉。一般情 <BR>况下,启动quotaon之前应该用quotacheck刷新quota数据,你可以察看脚本中是否有下 <BR>面形式的行: <BR> <BR> quotacheck –a –p <BR> <BR> quotaon -a <BR> <BR> edquota的编辑器是使用环境变量EDITOR中的值,缺省下是vi。我个人很讨厌这个东西 <BR>,如果你对这个感到困扰,将EDITOR变量设置为你喜欢的任何编辑器,比如: <BR> <BR> #EDITOR=/usr/bin/joe <BR> <BR> #export EDITOR <BR> <BR> 再启动edquota就使用joe编辑了。 <BR> <BR> 这里使用的是命令行管理quota。一般来说,这个过程确实很简单,但一旦弄错却绝对 <BR>不是好玩的。在大部分Linux发行版本中提供了一个配置工具linuxconf,它包含许多程 <BR>序的配置功能,对我们来说,配置disk quota可以使用这个工具: <BR>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -