Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2519004
  • 博文数量: 867
  • 博客积分: 10010
  • 博客等级: 上将
  • 技术积分: 9800
  • 用 户 组: 普通用户
  • 注册时间: 2006-07-27 14:44
文章分类

全部博文(867)

文章存档

2007年(6)

2006年(861)

我的朋友

分类: LINUX

2006-08-10 17:16:49

Redhat界面美化

  1. 在redhat linux下怎样设置X系统的字体, 怎样同时指定中文字体和英文字体?
  2. 挂载windows的fat32硬盘分区: mount /dev/sda1 -t auto /mnt/usb/ -o codepage=936,iocharset=gb2312
  3. 在linux下怎么把simsun设置为xlsfonts字体?
  4. linux下制作光盘镜像的方法: dd if=/dev/cdrom of=~/cd1.iso
  5. 输入法的安装.

Shell环境

  1. /etc/hosts
  2. ~/.bash_profile ~/.bash_logout
  3. ssh配置

视听软件

  1. mplayer的安装和配置
  2. realplayer
  3. xmms

网络软件

  1. [www] mozilla firefox
  2. [email] mozilla thunderbird, mutt
  3. [bbs] qterm, zxvt+screen
  4. [ftp] lftp, bitterent

开发环境

  1. vi, emacs
  2. anjuta, eclipse
  3. gdb, totalview
  4. matlab, maxima, tecplot, opendx, xfig

文档环境

  1. TeX, mpost, TeXSlide
  2. wiki, preview-latex, png-preview

emacs的初始安装方法

  1. 缺省安装redhat9或者fedora core 1中的emacs
  2. 添加编程支持 eieco, speedbar, doxygen, cvs 等等
  3. 添加TeX支持 auctex, prevew-latex
  4. 添加wiki支持

rfinput输入法的安装 2004/12/1

  1. 从redflag4中拷出rf-xim-input-5.0-43.i386.rpm,并安装: rpm -ivh rf-xim-input-5.0-43.i386.rpm --nodeps
  2. 使得rfinput能自动运行: cd /etc/X11/xinit/xinitrc.d/ mv /etc/profild.d/rfinput.sh xinput 然后修改xinput,末尾的 # rfinput ; rfdock 改成 rfinput #; rfdock 如果你用kde,可以不用修改。
  3. 据说redflag中的紫光输入法有重启后词库丢失的毛病, 需要安装一个从中软linux拷来的自动保存词库的脚本upimd(可以从我的ftp下载)。 把upimd拷到/etc/rc.d/init.d 然后运行chkconfig --add upim 另外需要chmod +s /usr/bin/rfinput
  4. 输入gbk汉字: 修改usr/local/rfinput/conf/.rfinput(或~/.rfinput/.rfinnput),改成下面这样 GBFontSet "8x16,--simsun-medium-r-normal--16----c---,--r-" 这样就能输入gbk汉字了(需要你的simsun的fonts.dir定义了gbk字体)

技巧:

  1. 如果装好后,只有紫光输入法不能正常输入中文,可以重启一下试试。
  2. 你可以修改~/.rfinput/.rfinput,使得只保留紫光输入法,或把它放在最前。
  3. 如果你用普通用户xxx首次运行rfinput失败,请用root修改xxx的~/.rfinput的 属主为该用户(chown xxx /home/xxx/.rfinput -R)

* 配置小企鹅的输入法 2005/2/1

  1. 下载小企鹅的最新版源码
  2. ./configure; make; make install安装
  3. ln -s /usr/bin/fcitx /usr/bin/chinput
  4. 重新起动X
  5. 配置文件在在本地.fcitx/目录下

用wget实现开机自动登陆IP网关 2003/3/31

在/etc/rc.local文件中加入下面两行(将你的用户名和密码添到相应位置)

/usr/bin/wget --spider  '你的用户名  
&password=你的密码&range=2&timeout=1&operation=disconnectall'                   
                                                                                
/usr/bin/wget --spider  '你的用户名  
&password=你的密码&range=2&timeout=1&operation=connect'                         

使linux支持ntfs文件系统 2005/2/1

  1. 从网上下载kernel-ntfs-2.4.20-9.i686.rpm,直接安装
  2. 手工挂载ntfs分区的请进入到管理员权限执行: mount -t ntfs /dev/hdc2 /mnt/ntfs
  3. 手工挂完后就可以在/etc/mtab中看到
  4. 要使得开机自动挂载,请在/etc/fstab中加入一行: /dev/hdc2 /mnt/ntfs ntfs rw,gid=500,uid=500 0 0 其中gid,uid是指挂载后的目录所有者和所有组. 为了能使中文能正确显示,需要另加两个参数: /dev/hdc2 /mnt/wsrc vfat rw,gid=500,uid=500,codepage=936,iocharset=gb2312 0 0
  5. FAT16和FAT32对应的文件系统为vfat,在/proc/filesystems有所有支持的文件系统类型

自己编译模块支持ntfs文件系统 2003/4/10

方法A

  1. make menuconfig; make modeules; make modeules_install

方法B -- Red Hat Linux Release 7.0(Guinness) Kernel 2.2.16-22

  1. 找到编译内核所需要的.config文件。 在/usr/src/linux/configs目录下有若干编译内核所用的配置。 选择我们想要的配置,将它复制到/usr/src/linux目录下,改名为.config cp /usr/src/linux/configs/kernel-2.2.16-i686.config /usr/src/linux/.config
  2. 修改.config文件,去掉不用的模块,加上自己想要的模块。 打开.config,有许多XXXX=m的项,这些都是要被编译为模块的项,因为我们不希望编译这 些模块,所以要把XXXX=m的项统统去掉。然后再加上我们想要的模块,将# CONFIG_NTFS_FS is not set 改为CONFIG_NTFS_FS=m 当然,可以用你熟悉各种工具来做这件事。
  3. 编译NTFS模块。 在/usr/src/linux目录下运行命令make modules来编译我们想要的NTFS模块。
  4. 安装NTFS模块。 编译后得到的ntfs.o在/usr/src/linux/fs/ntfs目录下,手动将它复制到正确的目录下。 cp /usr/src/linux/fs/ntfs/ntfs.o /lib/modules/2.2.16-22/fs/ 注意:千万不能运行命令make modules_install,否则将带来严重的后果,它会删除你系统 中的所有模块,只安装刚刚编译的模块(ntfs.o)。
  5. 载入NTFS模块. 运行命令depmod;modprobe ntfs 试着访问你的NTFS文件系统吧,祝你成功!
  6. 有些模块依赖于你的系统内核,所以不适用本文所提供的方法。还有些模块和其他模块有依赖关系。如果你不熟悉这些依赖关系的话,建议你在第二步去掉不用的模块选项后,通过 make menuconfig来加上自己想要的模块.

qterm-0.2.0识别URL问题 2003/4/12

  1. 下载一个qterm 0.2.0源码
  2. 改qterm/qtermbbs.cpp第 411 行
        if(i<2)                                                                       
            return false;                                                           
       
       是什么意思呢?就是说,URL里面如果只有一个 . ,就认为不是URL                     
       改成:    
                                                                       
            if(i<1)                                                                 
                    return false;                                                   
            if (nNoType==1 && i<=1)                                                 
                    return false;                                                   
       
    就是说,如果只有一个 dot,那么要求他前面要有 这样的东西 没有 的话,要求至少有两个 dot
  3. 编译

simsun字体安装 2005/2/2

说明:这种方法不是安装到x font server中,所以还有问题

  1. make a directory named /usr/share/fonts/win32
  2. and copy windows font files to /usr/share/fonts/win32 including simsun.ttf, simfang.ttf, simhei.ttf, etc.
  3. modify file /etc/X11/XFree86config, change Load "freetype" to Load "xtt" then add /usr/share/fonts/win32 to fonts directory
  4. restart X

linux字体技术原理 2005/2/21

我们要理解X的字体引擎. X中支持Truetype字体(一种可放缩字体) 的主要有四种引擎. freetype, xtt, xfs和Xft.

首先, 我们要理解X的字体引擎. X中支持Truetype字体(一种可放缩字体) 的主要有四种引擎. freetype, xtt, xfs和Xft.

其中freetype 和 xtt 是 X 的内部模块. 使用的都是freetype1渲染引擎.

Xfs 和xft 是外部服务程序. xfs 是系统级的字体服务程序, 也可以作为X的内部模块,使用的是X 内部的freetype2. Xft 和其他类库一样, 只有被调用的时候才被加载. 其中只有xft才有antialias 支持.

这里有必要讲讲freetype. Freetype 是开源字体渲染引擎, 并不只为X设计. 它的功能就是读取Truetype字体信息, 如大小, 分辨率, 编码等, 然后渲染成所需的位图数据输出. Freetype 现在的版本是 2.x, 与1.0 相比, 最大的差别就是加入了抗锯齿功能.

有这么多引擎,到底要用哪个好? 其实我们目前为止, 支持中文最好的还是xtt. 因为小字体的时候, 用函数描述法算出来的中文字体效果不能让人满意, 所以很多中文字体公司就在Truetype字体里嵌入了位图字体. 这些位图字体需要用特殊的方式读出来, 所有的引擎中就只有xtt能做到这一点.

我们下一步就是将字体添加到X中, 使xtt可以正确读取, 这样就可以了.

首先, 由于要配置Linux系统文件, 我们需要用root帐号进入, 相当于windows下的administrator.

X的配置文件是/etc/XF86Config-4 (比较新的显卡) 或者是 XF86Config (比较老的显卡). 用你喜欢的文本编辑器打开, 如 kedit或gedit.

打开后我们发现配置文件分成很多个Section, 我们首先要配置的就是 Section "Files" , 这个部分描述了X所要调用的文件信息.

要加入一个字体目录, 只需在里面插入一行 "目录名" 就可以了, 如:

Section "Files" # Multiple entries are allowed (they are concatenated together) # By default, Mandrake 6.0 and later now use a font server independent of # the X server to render fonts. "unix/:-1" "/truetype" # 插入一个字体目录

然后, 我们让X加载xtt字体引擎:

找到Section "Module", 像这样修改:

Section "Module" # Load "dbe" # Double-Buffering Extension # Load "v4l" # Video for Linux Load "extmod" Load "glx # Load "type1" # type1 模组是渲染type1字体的, 和xtt冲突, 必需屏蔽 # Load "freetype" # freetype 模组是渲染Truetype字体的, 和xtt冲突, 必需屏蔽 Load "xtt" # 加入xtt模组引擎

好了, 现在xtt会自动去 /truetype 里找字体.

现在开始拷贝字体到 /truetype里去, 先要在根目录建一个truetype目录, 打

mkdir /truetype

就可以了.

从windows分区拷贝要先mount, 就是作一个联接, 将Linux目录连到windows分区. 在根目录下建一个"c"目录.

mkdir /c

然后

mount /dev/hda1 /c

这样就将windows下的C盘 联接到我们Linux下的/c目录了, 进入/c, 应该可以看到你C盘的文件.

然后, 进入/c 中的字体文件目录, 一般在window下面的Fonts里, 注意目录名大小写在Linux下面是有区别的.

拷贝字体文件到 /truetype里, 打

cp simsun.ttc /truetype/simsun.ttf cp tahoma* /truetype/

这样就将我们所需要的字体文件拷贝到truetype 里了.

下一步我们要设置字体文件, Linux中X的字体设置很烦锁, 不像windows一拷贝就完事, 初级阶段嘛, 大家还是忍忍吧, 呵呵.

  1. 建立字体信息文件fonts.dir

如下

24
simsun.ttf -misc-SimSun-medium-r-normal--0-0-0-0-c-0-gb2312.1980-0
ai=0.3:simsun.ttf -misc-SimSun-medium-i-normal--0-0-0-0-c-0-gb2312.1980-0
ds=y:simsun.ttf -misc-SimSun-bold-r-normal--0-0-0-0-c-0-gb2312.1980-0
ds=y:ai=0.3:simsun.ttf -misc-SimSun-bold-i-normal--0-0-0-0-c-0-gb2312.1980-0
tahoma.ttf -misc-SimSun-medium-r-normal--0-0-0-0-p-0-iso8859-1
ai=0.3:tahoma.ttf -misc-SimSun-medium-i-normal--0-0-0-0-p-0-iso8859-1
tahomabd.ttf -misc-SimSun-bold-r-normal--0-0-0-0-p-0-iso8859-1
ai=0.3:tahomabd.ttf -misc-SimSun-bold-i-normal--0-0-0-0-p-0-iso8859-1
simsun.ttf -misc-SimSun-medium-r-normal--0-0-0-0-p-0-gbk-0
ai=0.3:simsun.ttf -misc-SimSun-medium-i-normal--0-0-0-0-p-0-gbk-0
ds=y:simsun.ttf -misc-SimSun-bold-r-normal--0-0-0-0-p-0-gbk-0
ds=y:ai=0.3:simsun.ttf -misc-SimSun-bold-i-normal--0-0-0-0-p-0-gbk-0
simsun.ttf -misc-SimSun-medium-r-normal--0-0-0-0-p-0-fcd8859-15
ai=0.3:simsun.ttf -misc-SimSun-medium-i-normal--0-0-0-0-p-0-fcd8859-15
ds=y:simsun.ttf -misc-SimSun-bold-r-normal--0-0-0-0-p-0-fcd8859-15
ds=y:ai=0.3:simsun.ttf -misc-SimSun-bold-i-normal--0-0-0-0-p-0-fcd8859-15
simsun.ttf -misc-SimSun-medium-r-normal--0-0-0-0-p-0-iso8859-15
ai=0.3:simsun.ttf -misc-SimSun-medium-i-normal--0-0-0-0-p-0-iso8859-15
ds=y:simsun.ttf -misc-SimSun-bold-r-normal--0-0-0-0-p-0-iso8859-15
ds=y:ai=0.3:simsun.ttf -misc-SimSun-bold-i-normal--0-0-0-0-p-0-iso8859-15
simsun.ttf -misc-SimSun-medium-r-normal--0-0-0-0-c-0-iso10646-1
ai=0.3:simsun.ttf -misc-SimSun-medium-i-normal--0-0-0-0-c-0-iso10646-1
ds=y:simsun.ttf -misc-SimSun-bold-r-normal--0-0-0-0-c-0-iso10646-1
ds=y:ai=0.3:simsun.ttf -misc-SimSun-bold-i-normal--0-0-0-0-c-0-iso10646-1

第一行的24表示下面一共有24行设置 (好像有点傻) , 其他的格式都差不多:

ds=y:ai=0.3:simsun.ttf -misc--bold-i-normal--0-0-0-0-p-0-gbk-0

说明:

simsun.ttf: 字体文件名

ds=[yn]: ds是xtt的功能, 设成"y" 表示粗体, "n" 表示正常.

ai=Real_number: 表示倾斜度. 不设表示自动.

misc : 表示字体的类别

: 是字体的名称

bold : bold 表示粗体, 其他如medium表示正常,

i : 表示斜体, r 是正常

p: 可变长度, c 是正方形, m是固定宽度

gbk: 字体编码

这里大家发现我们还使用了tahoma英文字体, 这样替换, 系统读取Simsun英文字体的时候, 就会用pp的tahoma替代.

好了, 现在存盘. 然后拷贝一个到fonts.scale

cp fonts.dir fonts.scale

然后拷贝编码文件 encodings.dir 到目录里来.

cp /usr/X11R6/lib/X11/fonts/encodings/encodings.dir /truetype

好, 重起, 把KDE, mozilla, galeon 等等所有默认字体都改成simsun, 哈哈, 是不是比从前漂亮了很多?

大家还是把这几个配置文件备份起来, 以后安装的时候就不用再设置了.

这里顺带说一下其他几个字体引擎的配置:

xfs : 配置文件是 /etc/X11/fs/config xft : 配置文件是 /etc/X11/Xftconfig

xft 的配置相对来说比较容易, 只要将字体拷到配置文件中dir 指定的任何一个目录就可以了. 如果要小字体不显示AA, 可以在末尾加入:

match any size > 8 any size < 17 edit antialias = false; match any pixelsize > 8 any pixelsize < 17 edit antialias = false;

这样 8~17号的字体就不会用抗锯齿功能了.

设置ssh不用密码的方法

  1. 生成密钥 $ssh-keygen -t rsa(或dsa) 注意:passphrase不要设为空! 这一步将在~/.ssh目录下生成两个文件:id_rsa(私钥)和id_rsa.pub(公钥)
  2. 把你的公钥id_rsa.pub拷到你要访问的服务器(服务器也可以是本机)的 ~/.ssh/authorized_keys中 注意要使得只有当前用户对authorized_keys有写权限。 $chmod go-w authorized_keys
  3. 启动ssh-agent $ssh-agent $SHELL $ssh-add 然后你可以试试这个命令 $ssh 服务器名 date 如果没有向你要密码,那表明上面的设置成功了。 你可以设置使得每次登陆自动运行ssh-add,并向你要passphrase,方法如下: 1.如果主目录没有.Xclients和.Xclients-default这两个文件, 则运行switchdesk生成它们 2.修改.Xclients,在#!/bin/bash下加入两行: SSH_ASKPASS="/usr/libexec/openssh/x11-ssh-askpass" ssh-add < /dev/null

重新编译mpich,设置rsh为ssh

  1. 首先设置root的ssh不用密码
  2. 重新编译mpich(可以从) #./configure -prefix=/usr/local/mpich-1.2.4 -c++=icc -cc=icc -fc=ifc -f90=ifc -rsh=ssh --enable-debug #make #make testing(可选) #make install
  3. 设置普通用户的ssh不用密码

Linux 下基于 kile 的中文 X 集成环境

  1. 基本X系统,安装X(tetex,tetex-latex,tetex-fonts,tetex-dvips,tetex-afm,等包), 包含在标准 Linux 发布版中.
  2. 中文TeX系统 CCT 包: {cct 包, cct-fonts 包} (要求 cct-0.5.0-beta 或更新的版本, 其中增加了一些对集成环境的支持, 主要被 kile-xdvik.zip 中的 `kdvi' 脚本用到).

CJK 包: {CJK 包, CJK-GBKfonts 包, dvipdfmx 包} 安装说明见 注:CJK-GBKfonts包安装的时候要用到win98的几种ttf字体,安装命令为: env TTFFONTPATH=/dosc/windows/fonts \ TTFFONTNAMES="simsun simhei simkai simfang" \ CJKFONTNAMES="song hei kai fs" \ GBKFONTS_OPTS="-f" \ rpm -ivh --force CJK-GBKfonts-0.3-5.i386.rpm 其中: /dosc/windows/fonts 是你的win98之ttf字体文件存放目录 GBKFONTs_OPTS="-f" 表示不重新生成pfb字体,所以第一次安装时 不应该要这个选项!

  1. kile包 {kile 包, kile-xdvik.zip 文件} (kile-xdvik.zip 文件的内容及用法将在后面介绍). 该 rpm 包在 kile-1.5 的基础上做了下述改进 (这些修改在一组补丁文件中, 括号里是相应的补丁文件名): . 改正了当有多个源文件时源文件到 dvi 文件的正向搜索只能用于 主文档的 bug (forward-search-patch). . 当文件名的第一个字符为数字时, 在行号与文件名之间插入一个空格, 它使得 xdvik-22.74beta 能够找到 dvi 文件中的正确位置 (但使用 kdvi 时依然会不对, 因为 kdvi 不允许行号和文件名间有空格, 将来的 kdvi 版本也许会对此改进) (forward-search-patch). . 比较文件名时用全路径, 否则 kile 可能会将同一个文件调入两次, 如下面的例子: kile test.tex & kile ./test.tex & (pathname-patch) . 在 recent file 列表中使用全路径 (pathname-patch) . 当前文件没修改时调用外部命令前不对其自动存盘 (filesave-patch). . 允许编译扩展名不是 .tex 的文件, 以支持编译 .ctx 文件 (ctex-patch) . 双击文件结构树中的文件名打开一个文件时, 先检查对应的 .ctx 文件是否 存在, 如是则调入 .ctx 文件 (ctex-patch). . 在打开/保存文件的对话框中增加显示扩展名为 .ctx 的文件 (ctex-patch). . Clean 时清除 'ctextemp_*' 文件 (ctex-patch). . 收到 TERM, ABRT, 和 HUP signal 时, 在退出前存盘所有改动过的文件并 杀掉正运行的命令. (process-patch) . 增加杀掉正在运行的命令的功能 (Kill Processes). (process-patch)

该版本的缺省设置如下 (首次运行前最好删除 ~/.kde*/share/config/kilerc 和目录 ~/.kde*/share/apps/kile/ 中的所有文件): Options->Configure Kile->(Tools) Quick Build: X + View Dvi Options->Configure Kile->(Tools) Viewer: kdvi Options->Configure Kile->(Tools) X: cctlatex -interaction=nonstopmode %S Options->Configure Kile->(Tools) X: cctpdflatex -interaction=nonstopmode %S (注意不要用 '%S.tex', 以便允许编译 .ctx 文件) 在 cctlatex 和 cctpdflatex 命令后面还可以考虑增加下述可选项: . -no-cctspace (如果不想用 cctspace 做预处理的话) . -latex-runs=1 (如果不想自动重复运行 X/PDFLaTeX) 如果升级到 tetex-2, 还可以加 '-src-specials' 可选项. 虽然 kile 是用 KDE 环境开发的, 它在 GNOME 桌面下也能用, 但需要安装几个 基本的 KDE 包 (kdelibs 等). 安装 kile 包时它会检查这些包是否已安装.

  1. dvi文件预览 kile 是为与 kdvi 配套使用设计的 (包括预览及正向和反向搜索). 但 kdvi 有 几个缺陷, 一方面是它占用资源太多 (它似乎是将整个页面图像存在内存中, 按 缺省比例显示一个 600 DPI A4 幅面的 dvi 文件约需 60MB 内存空间, 放大至 250% 时竟需要 150MB 之多), 最主要的是它不支持 Type 1 字库. 因此建议从 下述地址下载经过修改的 xdvik beta 版用于 dvi 文件的预览: {xdvik 包} (主要修改是增加了对 ctex 的支持, 如在处理文件名时去掉 ctextemp_ 前缀). 如果用 xdvik 的标准 beta 版, 建议下载 22.74-beta3-RC5 以后的版本, 更早 的版本处理中文空格 (0xa1 0xa1) 及 Type1 字库中缺少的汉字时不对.

为了便于与 kile 间的交互, 我在 kile-xdvik.zip 中提供了两个脚本文件, 一个脚本名为 kile-xdvik, xdvik 通过它回到 kile 中的源文件的位置 (即 kile 所说的 Reverse Search), 另一个脚本名为 kdvi, 用来取代 KDE 中 的 kdvi 脚本. 两个脚本的安装方法如下:

  1. 将两个脚本文件拷贝到 PATH 中的某个目录下, 如 /usr/bin 或 /usr/local/bin.
  2. 删除(或重命名) KDE 系统中的 kdvi 脚本 (通常在 /usr/bin 中, Linux 中它由 kdegraphics 包提供).
  3. (可选) 在用户登录初始化文件中 (.cshrc, .profile, 等) 设置 环境变量: setenv XEDITOR kile-xdvik (.cshrc) 或: export XEDITOR=kile-xdvik (.profile) 这两个脚本文件针对 ctex, CCT 等排版文件的特点做了一些特殊处理, 如 自动去掉文件名中的 ctextemp_ 前缀、自动判别 dvi 文件的格式 (即是否需 要 patchdvi) 及进行后处理, 等等, 它能保证对同一个 dvi 文件只运行一份 xdvi, 并且完全支持与 kile 间的交互 (在 kile 中点 `View Dvi' 或 `Forward Search' 可以跳到 dvi 文件的当前位置或指定位置, 而如果 dvi 文件中包含 source special 的话, 还可在 xdvi 中按鼠标中键回到 kile 中的相应位置, 不 论使用 CCT 还是 CJK).

beamer的安装 2005/2/2

  1. 将beamer需要的三个包解压缩到texmf中的latex目录,一般是在/usr/share/tex/latex/latex目录下
  2. 运行texhash命令更新tex的目录数据库

vimrc配置文件

set mousehide
set incsearch
set hlsearch
set smartindent
set shiftwidth=4
set showmatch
set tabstop=4
set ch=2

在Fedora core 3上的quota设置 2005/9/6

参考

  1. 修改/etc/fstab文件. 在文件系统相应的mount命令行中加入限额选项(如下面的例子):
    /dev/hda7 /var/ftp2/ftpusers ext3 defaults,usrquota,grpquota 1 2
  2. 重新装载Linux分区, 例如:
    mount -o remount /var/ftp2/ftpusers
  3. 在欲加磁盘限额的文件系统的安装点目录建立 aquota.user 和 aquota.group 文件:
       [root@fileserver root]# cd /var/ftp2/ftpusers (/home 为单个分区 /dev/hda7 的装载点)
       [root@fileserver home]# touch aquota.user  (为用户设置磁盘限额)
       [root@fileserver home]# touch aquota.group (为用户组设置磁盘限额)
       
    这时生成 的 aquota.user 和 aquota.group 是空的,不符合系统的要求。请看下一步。
  4. 生成符合系统要求的 aquota.user 和 aquota.group
       [root@fileserver home]# quotacheck /var/ftp2/ftpusers 
       [root@fileserver home]# quotacheck -g /var/ftp2/ftpusers 
       
    生成时,有错误提示。这不要紧。因为 先前 touch 生成的是一个空文件,肯定格式不对。 这样 正确的 aquota.user 和 aquota.group 生成啦。
  5. 为用户设置磁盘空间限额:
       [root@fileserver home]# edquota   [-u] user_name 
       [root@fileserver home]# edquota -g   group_name (对于用户组)
       
    本命令开启一个 vi 窗口,为用户设置磁盘空间和i节点数目的限 额.其中 soft 限额为一个临时性的限额;hard 限额为一个永久 性限额(soft 限额可略大于 hard 限额),编辑方法与 vi 完全 相同,以 ZZ 或 :wq 命令退出.如要给若干用户 user1, user2, user3 指定相同的磁盘限额,可用下面的命令给这些用户赋予与 protuser 相同的限额:
       [root@fileserver home]# edquota [-u] -p protuser user1 user2 user3 
       [root@fileserver home]# edquota -g -p protgroup group1 group2 group3
       
    设定soft quota和hard quota之间的时间:
        [root@fileserver home]# edquota -t
       
    出现一个 vi 窗口:Grace period before enforcing soft limits for users: Time units may be: days, hours, minutes, or seconds Filesystem Block grace period Inode grace period /dev/hda7 7days 7days 修改成自己所需要的,并 保存退出就设置这个时间啦。您在这之后可能需要重新启动,以 使磁盘限额生效。您可以啦,不过还要注意一些问题,请继续看 下去。
  6. 检查磁盘空间限制的一致性,系统会自动每次重新启动时,在检 查硬盘后进行( /etc/rc.sysinit ),无须您亲手进行。假若 分 区 已经以“读写”方式挂上时,您要小心,例如:
       [root@fileserver root]# quotacheck /var/ftp2/ftpusers
       quotacheck: Quota for users is enabled on mountpoint /var/ftp2/ftpusers so quotacheck might damage the file.
       Please turn quotas off or use -f to force checking.
       
    这时, 由于某种需要,或者在某种情况,“不得不”运行这个命令 :
        [root@fileserver home]# quotacheck -mf [-u] /dev/hda7
        [root@fileserver home]# quotacheck -mf -g /dev/hda7
       
    参数 -m[M] 意思是:强迫在“读、写”模式下检查硬盘的 quota 有一定的“正在写”的数据丢失可能,应确保没有进程在写这个 分区。建议在单用户模式下进行。)。例如:(在平时检查)
    [root@fileserver root]# quotacheck /var/spool/ -f
    quotacheck: Cannot remount filesystem mounted on /var/spool read-only so counted values might not be right.
    Please stop all programs writing to filesystem or use -m flag to force checking.
    [root@fileserver root]# quotacheck /var/spool/ -m
    quotacheck: Quota for users is enabled on mountpoint /var/spool so quotacheck might damage the file.
    Please turn quotas off or use -f to force checking.
    [root@fileserver root]# quotacheck /var/spool/ -mf
    [root@fileserver root]#
       
  7. 以后您如果要取消磁盘空间和i节点数目的限制,可用以下命令,请看:
    [root@fileserver root]# quotaoff /home (取消磁盘空间限制。)
    [root@fileserver root]# quotaon /home (现在启动磁盘空间限制。)
    [root@fileserver root]# quotaon /home (已经启动磁盘空间限制啦,所以出现以下错误:)
    quotaon: using /home/aquota.group on /dev/hda7: Device or resource busy
    quotaon: using /home/aquota.user on /dev/hda7: Device or resource busy
    
阅读(1336) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~