动态网站制作指南 [  QQ表情  ]
[ 投票调查 ]
[ 企业邮箱 ]
[ 网站空间 ]
网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
ASP源码 | .Net源码 | PHP源码 | JSP源码 | JAVA源码 | CGI源码 | VB源码 | C++源码 | Delphi源码 | PB源码 | VF源码 | 汇编 | 服务器
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > 数据库 > Oracle教程
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
数据库:数据库教程,数据库技巧,Oracle教程,MySQL教程,Sybase教程,Access教程,DB2教程,数据库安全,数据库文摘
文章搜索服务
邮件订阅
输入你的邮件地址,
你将不会错过任何关于:
[ Oracle教程 ]的信息

本月文章推荐
.Red Hat Linux 7.1使用手册(上).
.PGA自动管理原理深入分析及性能调.
.剖析:Oracle融合中间件为何会全.
.从Oracle到SQL Server的透明网关.
.程序员如何掌握计算机英语.
.Oracle数据库的后台进程管理技术.
.Oracle利用UTL_MAIL发送电子邮件.
.Oracle数据库备份与恢复之日志备.
.Oracle 9i 数据库移动过程.
.实现类GRID报表功能的程序包.
.oracle 在win2000 DOS 下的启动.
.Install Oracle10g On RedhatEL .
.Oracle DBA 回滚段管理试题选.
.Oracle全局数据库名、环境变量和.
.Oracle体系结构简介.
.Oracle 9i管理工具的使用.
.新手学习之Oracle trunc()函数的.
.建立与Oracle服务器连接的两种连.
.Oracle10g + Solaris9 for x86 +.
.UNIX和WINDOWS2000上的ORACLE的差.

sendmail中一种限定用户邮箱大小的实用方法

发表日期:2008-2-9 |



  目前,在Linux/Unix平台上,Sendmail因成为缺省安装的邮件服务器而得到非常广泛的应用。 但是Sendmail本身并不具有限定用户邮箱大小的功能,所以,假如某些用户长时间不取信或设定了保留邮件副本,其信件将在服务器上不断堆积,以致邮箱越来越大,占用大量的硬盘空间,很多网络治理员对此都很有意见。这里介绍一种简单实用的方法,通过它,我们可以很方便灵活地对用户邮箱的大小进行设定。
  
  一、 基本思路
  
  ---- 先设定一个用户邮箱大小的门限值;然后定期启动一个进程,检查每一个用户邮箱文件的大小,将所有超过这一限值的邮箱文件名临时写进某一特定的文件中; 再读取该文件,将它写进Sendmail 的黑名单(blacklist_recipients) 中,从而使邮件服务器拒收该用户的新邮件,直到下次检查时该邮箱大小已小于设定的门限值为止。
  
  二、运行环境
  
  ---- 我们以Solaris 2.7操作系统为例进行说明,其他Unix(或Linux)系统可参照来做。
  
  ---- 本文以Sendmail 8.11.3为例,若无该版本的Sendmail运行软件,可到http://freesoft.cei.gov.cn或 http://www.sendmail.org站点下载。
  
  三、具体操作
  
  ---- 1. 下载编译
  ---- 在Sendmail软件包已下载到当前目录后即可进行编译,操作步骤如下。
  ---- $ gzip -dc sendmail.8.11.3.tar.gz tar -xf - (Gzip 是一个压缩/解压缩的工具,相当于 Windows平台上的WinZip,在网上能很轻易地找到并下载)
  ---- $ cd sendmail-8.11.3/sendmail
  ---- $ ./Build
  ---- (编译Sendmail )
  
  ---- 2. 安装
  ---- # ./Build install
  ---- (用超级用户身份安装)
  
  ---- 3. 生成配置文件
  ---- # cd ../cf/domain
  ---- # vi generic.m4
  ---- 此时,在文件的末尾增加如下两行内容。
  ---- FEATURE('Access_db','dbm /etc/mail/access')dnl
  ---- FEATURE('blacklist_ recipients')dnl
  ---- 然后,我们可以按着输入以下内容。
  ---- # cd ../cf
  ---- # m4 ../m4/cf.m4 ./generic-solaris2.mc > ./sendmail.cf
  ---- # cp ./sendmail.cf /etc/mail/
  
  ---- 4.生成 access 文件及邮件服务器名称的参数文件
  ---- # cd /etc/mail
  ---- # makemap dbm access < /dev/null
  ---- # vi local-host-names
  ---- (该文件是一个文本文件,内容为本地邮件服务器的域名和别名,它们之间要用回车分隔。详见Readme文件的有关介绍)
  
  ---- 5. 启动Sendmail
  ---- # /usr/lib/sendmail -bd -q30m
  
  ---- 6. 编缉限制邮箱大小的程序
  ---- 用sh命令编缉一个限制邮箱大小的程序,然后用操作系统的定时执行功能crontab设定其执行的频率,内容如下。
  ---- # vi /etc/mail/limit_mailbox.sh
  ---- (内容见附录)
  ---- # chmod u+x /etc/mail/limit_mailbox.sh
  ---- # crontab -e
  
  ---- 接着,我们可以输入以下内容。

  
  ---- 0 6,7,8,9,10,11,12,13,14,15,16,17,18,19,20 * * * /etc/mail/limit_mailbox.sh 10
  
  ---- 它表示在天天6:00~20:00间,每隔1小时启动一次,检查邮箱大小的sh命令。用户也可根据实际情况进行调整。“10”表示邮箱大小的门限值为10MB。
  
  四、附录limit_mailbox.sh 源代码
  
  ---- #!/usr/bin/ksh
  ---- # search the mailbox larger than MAXSIZE , then set this mailbox full and reject new mails
  
  error() {
  echo " $1 "
  exit 1
  }
  BIN=/usr/bin
  MAIL=/etc/mail
  #Sendmail 参数文件所在的目录
  MAILDIR=/var/mail
  #存放邮箱文件的目录
  ACCESS=access.db
  #用于临时存放超过门限值的邮箱名
  SUBACCESS=access.sub
  #用于存放额外的收、转发限制规则
  if [ $# -lt 1 ]; then
  error "Must set the MAX mailbox size with the command!"
  fi
  if [ $1 -le 0 ] ; then
  error " Mailbox Size < 0, Failed"
  fi
  ((MAXSIZE=$1*1024*1024))
  if [ -f $MAIL/$SUBACCESS ]; then
  $BIN/cat $MAIL/$SUBACCESS > $MAIL/$ACCESS ' '
  error "piping $MAIL/$SUBACCESS into $MAIL/$ACCESS, Failed"
  else
  > $MAIL/$ACCESS' 'error "clearing $MAIL/$ACCESS, Failed"
  fi
  cd $MAILDIR' 'error "entering $MAILDIR Failed"
  for box in '$BIN/find .
  ! -user root -size +"$MAXSIZE"c -type f -print'; do
  case $box in
  ..../.*.pop)
  ;;
  *)
  mailuser=${box#./}
  echo "To:$mailuser@
  ERROR:550 $mailuser's Mailbox is full " >> $MAIL/$ACCESS
  ;;
  esac
  done
  cd $MAIL error " entering $MAIL Failed"
  /usr/sbin/makemap dbm access
  < ./$ACCESS error "makemaping access Failed"
  exit 0'
上一篇:好用的Linux小工具:Autofs 人气:449
下一篇:linux可以绕开三茗硬盘保护卡 人气:573
浏览全部Oracle教程的内容 Dreamweaver插件下载 常用网页广告代码全集
  最新网站源码 最新软件下载
2008-10-7 Web Wiz Forums(论坛系统) v9.53
2008-10-7 Web Wiz Forums(论坛系统) v9.53
2008-10-7 Web Wiz Forums(论坛系统) v9.53
2008-10-7 HDWiki v4.0.1 bulid 081007 UTF
2008-10-7 迅易评选投票管理系统 v10.0
2008-10-7 HDWiki v4.0.1 bulid 081007 GBK
2008-10-7 Bitrac单用户博客 v1.14 bulid 0
2008-10-7 OpenX(广告管理系统) v2.6.2 多国
2008-10-7 乐铺网店系统免费普及版 v3.41
2008-9-29 酷狗音乐(原KuGoo)2008 v5.310 正
2008-9-29 QQTab 1.1
2008-9-29 网络传送带 Net Transport 2.64a
2008-9-29 谷歌金山词霸v1.8
2008-9-29 TweakVI 1.0 Build 1090
2008-9-29 ACDSee Pro 2.5 Build 333 汉化绿
2008-9-29 Winamp v5.541(2189) 周明波简体
2008-9-27 CCleaner 2.12.651
2008-9-27 Mozilla Thunderbird 2.0.0.17 英
  发表评论
姓 名: 验证码:
内 容:
站长工具:网站收录查询 | Google PR查询 | ALEXA排名查询 | CSS在线编辑器 | 广告代码 | js/vbs加密 | md5加密 | 进制转换 | UTF-8 转换工具 | Html转换js | Html转换asp | Html转换php | Html转换perl
实用工具:汉字翻译拼音 | 拼音字典 | 符号对照表 | 个税计算 | 实时汇率查询换算 | 经典小工具 | 汉字简繁转换 | 普通单位换算 | 公制单位换算 | 生辰老黄历 | 国内电话区号 | 国家代码与域名缩写 | 文字加密解密 | 健康查询 | 万年历 | 汉字横竖排版 | 手机号码查询 | 计算器 | ip搜索
业务联系 | 广告刊登 | 频道合作 | 投稿荐稿 | 联系方式 | 加入收藏 | RSS订阅
Copyright © 2000-2008 www.knowsky.com All rights reserved | 网络实名:动态网站制作指南 | 沪ICP备05001343号
ホームページ制作 不動産検索システム 求人情報
防水工事·改修工事 フットサル大会 探偵
SEO対策 中国語教室 ホームページ作成