服务器 频道

Postfix邮件系统安装手册

  【IT168 服务器学院】参照别人的文章,原文已经忘记是哪篇了

  Postfix邮件系统安装手册(MySQL+IGENUS+TLS+QUOTA)

  1.分区:

  1G /

  1G swap

  3G /var 邮件存储在这里所以设置比较大

  1G /tmp

  1G /home

  3G /usr

  剩下 /data

  以上看自己的意愿了,想怎么分就怎么分

  2.用户

  添加cnhawk用户,口令另行约定,cnhawk用户需加入wheel组,root口令另行约定

  3. packages安装

  选择最小化安装

  选中

  在custom选项里选中

  compat3x

  compat4x

  man

  ports

  4.rc.conf

  设定:

  sendmail_enable="NONE"

  5. 安装mysql

  A.可以在ports中安装 (注意client和server的一致性,否则怕有麻烦,我就被4.1和3.23累坏过:()

  Cd /usr/ports/databases/mysql323-server

  Make install

  安装的mysql的版本是mysql-3.23.58

  B.以下是手动安装mysql-3.23.55

  1)添加mysql用户组及mysql用户

  hawk# pw groupadd mysql

  hawk# pw useradd mysql -g mysql -s /nonexistent

  2)配置安装

  hawk# tar zxvf mysql-3.23.55.tar.gz

  hawk# cd mysql-3.23.55

  hawk# ./configure --prefix=/usr/local/mysql --with-low-memory

  --with-charset=gb2312 --without-debug

  hawk# make

  hawk# make install

  hawk# scripts/mysql_install_db

  hawk# chown -R root /usr/local/mysql

  hawk# chown -R mysql /usr/local/mysql/var

  hawk# chgrp -R mysql /usr/local/mysql

  hawk# cp support-files/my-medium.cnf /etc/my.cnf

  hawk# ln -s /usr/local/mysql/bin/safe_mysqld /usr/local/bin/safe_mysqld

  hawk# ln -s /usr/local/mysql/bin/mysqladmin /usr/local/bin/mysqladmin

  hawk# ln -s /usr/local/mysql/bin/mysql /usr/local/bin/mysql

  hawk# ln -s /usr/local/mysql/lib/mysql /usr/local/lib/mysql

  3)编辑用户数据库

  以下是建库的语句 创建用户用于访问数据库

  use mysql;

  #======================postfix=====================

  INSERT INTO user (host,user,password) VALUES(''localhost'',''postfix'','''');

  update user set password=password(''hawk'') where User=''postfix'';

  FLUSH PRIVILEGES;

  GRANT ALL ON mail.* TO postfix@localhost IDENTIFIED BY "hawk";

  #======================courier=======================

  INSERT INTO user (host,user,password) VALUES (''localhost'',''courier'','''');

  update user set password=password(''hawk'') where User=''courier'';

  FLUSH PRIVILEGES;

  GRANT select,insert,update on mail.* TO courier;

  #=======================MAIL.SQL====================

  #Create mail database

  CREATE DATABASE mail;

  use mail;

  #Create the aliases table

  CREATE TABLE aliases (

  alias varchar(255) NOT NULL default '''',

  rcpt varchar(255) default NULL,

  PRIMARY KEY (alias)

  ) TYPE=MyISAM;

  #Create the transport table

  CREATE TABLE transport (

  domain char(128) NOT NULL default '''',

  transport char(128) NOT NULL default '''',

  UNIQUE KEY domain (domain)

  ) TYPE=MyISAM;

  #Create thevirtua_users table

  CREATE TABLE virtual_users (

  unique_id int(32) unsigned NOT NULL auto_increment,

  id char(128) NOT NULL default '''',

  password char(128) default NULL,

  uid int(10) unsigned default ''2003'',

  gid int(10) unsigned default ''2003'',

  home char(255) default NULL,

  maildir char(255) default NULL,

  date_add date default NULL,

  time_add time default NULL,

  domain char(128) default NULL,

  name char(255) default NULL,

  imapok tinyint(3) unsigned default ''1'',

  quota char(255) default ''10485760'',

  PRIMARY KEY (id),

  KEY unique_id (unique_id)

  ) TYPE=MyISAM;

  #Create address table //该部分是为使用igenus而增加的。

  CREATE TABLE address (

  id int(32) unsigned NOT NULL auto_increment,

  unique_id int(32) NOT NULL default ''0'',

  name char(255) NOT NULL default '' '',

  email char(255) NOT NULL default '' '',

  PRIMARY KEY (id),

  key unique_id (unique_id)

  ) TYPE=MyISAM;

  #================================================

  4)设置自启:

  hawk# edit /usr/local/etc/rc.d/mysqld.sh

  示例:mysqld.sh

  #!/bin/sh

  case "$1" in

  start)

  if [ -x /usr/local/mysql/bin/safe_mysqld ]; then

  /usr/local/mysql/bin/safe_mysqld --user=mysql & > /dev/null && echo -n '' mysqld''

  fi

  ;;

  stop)

  /usr/bin/killall mysqld > /dev/null 2>&1 && echo -n '' mysqld''

  ;;

  *)

  echo ""

  echo "Usage: `basename $0` { start | stop }"

  echo ""

  exit 64

  ;;

  esac

  
  hawk# chmod 755 /usr/local/etc/rc.d/mysqld.sh

0
相关文章