Ubuntu 下安装PuTTY

如题,ubuntu上我一直是直接用ssh的但是有一个缺点就是老要输入xxx@yyy putty可以记录,就爱这个。
以前在nokia E71 上也装了putty 好用,于是想在ubuntu上也装个,看了下官网,还真可以。
Step 1.
打开下面的下载页:
http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html

找到 Unix source code 那一段

Release source code for Unix
Source: putty-version.tar.gz (or by FTP) (RSA sig) (DSA sig)

把源码下下来,找个地方放,解压。

Step 2.

#cd /path/to/putty-version/
#cd unix

注意了 要进入到里面的unix目录。

Step 3.
#./configure
#make -f Makefile.gtk
#make install

又要注意在编译安装时如果不用.gtk的Mf那你就看不到图像界面了。
图像界面需要Gtk+ 2.0的支持 别忘了装 libgtk-dev

Last Step .
跑起~

$putty

/*******************************************************************/

Share

防止ssh恶意攻击

DenyHosts是Python语言写的一个程序,它会分析sshd的日志文件,当发现重复的攻击时就会记录IP到/etc/hosts.deny文件,从而达到自动屏IP的功能。
 
DenyHosts官方网站为:http://denyhosts.sourceforge.net
 
以下是安装记录(以CentOS 4.3, DenyHosts 2.5 为例)
 
安装 # cd /usr/local/src
# wget http://mesh.dl.sourceforge.net/sourceforge/denyhosts/DenyHosts-2.5.tar.gz
# tar -zxvf DenyHosts-2.5.tar.gz
# cd DenyHosts-2.5
# python setup.py install
 
默认是安装到/usr/share/denyhosts目录的。
 
配置 # cd /usr/share/denyhosts/
# cp denyhosts.cfg-dist denyhosts.cfg
# vi denyhosts.cfg
 
根据自己需要进行相应的配置(解释见下文件的配置文件)
 
设置启动脚本 # cp daemon-control-dist daemon-control
# chown root daemon-control
# chmod 700 daemon-control
 
完了之后执行daemon-contron start就可以了。 # ./daemon-control start
 
如果要使DenyHosts每次重起后自动启动还需做如下设置: # cd /etc/init.d
# ln -s /usr/share/denyhosts/daemon-control denyhosts
# chkconfig �add denyhosts
# chkconfig �level 2345 denyhosts on
 
或者修改/etc/rc.local文件: # vi /etc/rc.local
 
加入下面这条命令 /usr/share/denyhosts/daemon-control start
 
DenyHosts配置文件: vi /etc/denyhosts.cfg
SECURE_LOG = /var/log/secure
#ssh 日志文件,它是根据这个文件来判断的。
HOSTS_DENY = /etc/hosts.deny
#控制用户登陆的文件
PURGE_DENY = 5m
#过多久后清除已经禁止的
BLOCK_SERVICE  = sshd
#禁止的服务名
DENY_THRESHOLD_INVALID = 1
#允许无效用户失败的次数
DENY_THRESHOLD_VALID = 10
#允许普通用户登陆失败的次数
DENY_THRESHOLD_ROOT = 5
#允许root登陆失败的次数
HOSTNAME_LOOKUP=NO
#是否做域名反解
ADMIN_EMAIL = iakuf@163.com
#管理员邮件地址,它会给管理员发邮件
DAEMON_LOG = /var/log/denyhosts
#自己的日志文件
 
然后就可以启动了: service denyhost start
 
可以看看/etc/hosts.deny内是否有禁止的IP,有的话说明已经成功了。
Share

centOS 常用管理手札


for centOS
 
一、用户环境
#locale    显示系统语言环境      语言环境参数保存在/etc/sysconfig/i18n文件里 LANG最主要
#locale �a       查看系统对语言的支持情况
#LANG=zh_CN.GB2312       使系统支持以中文形式显示
 
#chkconfig kudzu –list  检查某个服务状态(包括各个级别0~6的状态)
#less /etc/sysconfig/hwconf 硬件信息
 
二、系统管理常用命令
 
1.      useradd redhat
 
2.      passwd redhat
 
3.      su �
 
4.      exit
 
5.      df �h 分区情况
 
6.      du �sh  /*      统计文件或目录使用空间的大小
 
7.      fdisk �l  /dev/sda
 
8.      netconfig        配置网络参数
 
9.      ifconfig          显示网络配置信息
 
10.  service network restart
 
11.  route �n          查看路由信息(默认路由)
 
12.  ping �b 192.168.0.255    扫描整个网段(检查活动主机)
 
13.  ifconfig eth0 10.0.0.254 netmask 255.255.255.0  修改IP地址
 
14.  ifconfig eth0显示指定网卡参数
 
15.  修改IP信息后会删除默认路由,需手工添加
 
route add default gw 192.168.0.1
 
16.  ifconfig route 修改过的参数不会保存,重启后会消失
 
要用service network restart命令把参数保存到文件ifcfg-eth0
 
/etc/sysconfig/network-scripts/ifcfg-eth0
 
可以vi直接修改该文件,然后service network restart 重新启用网络服务
 
17.  redhat-config-network-tui是redhat独有的配置工具,当用这个命令配置网络参数后,会写入到/etc/sysconfig/networking/profiles/目录里,并且比network-scripts/ifcfg-eth0优先,所以用过这个工具配置就不要再使用netconfig,或者先将profiles目录清空
 
三、文件系统维护
 
ext2/ext3通过数据块储存文件
 
格式化文件系统:
 
mkfs.ext3 �b 4096 �i 8192 �m 5 /dev/sdb4
 
-b      数据块大小
 
-i inode节点表示的字节数(或数据块大小)
 
-m 5      为管理员保留的磁盘管理空间5% 
 
ls �lh /mnt/u
 
du �sh /mnt/u
 
df �lh
 
#tune2fs �l /dev/sdb1          打印文件系统属性
 
#df
 
tune2fs 调整ext2/ext3文件系统特性的工具
 
-l 查看文件系统信息
 
-m      保留块百分比
 
-c   设置强制自检的挂载次数
 
-i   设置强制自检的间隔时间
 
-j          ext2转成ext3
 
 
 
tune2fs �c -1 /dev/sdb1    不管挂载多小次都不自检
 
tune2fs �c -1 �i 0 /dev/sdb1  让分区永远不自检
 
#mkfs.ext2 /dev/sdb4  格式化成ext2
 
#tune2fs �j /dev/sdb4  转换为ext3
 
#df �T              查看分区信息
 
判断间ext2还是ext3:
 
tune2fs �l /dev/sdb1 | grep features
 
看Filesystem features: has_journal
 
是否有has_journal,有则是ext3文件系统
 
 
 
grep �i “name”  不区分大小写
 
df �T 分区类型
 
fsck      检查文件系统数据完整性的工具
 
用法一、fsck �t ext2 /dev/sdb1
 
  二、fsck.ext3 /dev/sdb1
 
#more /etc/fstab
 
如发现挂载选项有1或2,那么应该进行自检了
 
#fsck.ext3 �y /dev/sdb1          自动修复错误
 
四、管理磁盘文件系统
 
mount 设备名 挂载点
mount /dev/fd0 /mnt/floppy
光驱(IDE) /dev/cdrom    (/dev/hdx)
光驱(SCSI)/dev/scdN    (N=0,1…)
硬盘(IDE) /dev/hdX      (X=a,b,c…)
硬盘(SCSI)/dev/sdX      (X=a,b,c…)
U盘        /dev/sdX      (X=a,b,c…)
 
弹出光盘#eject
收回#eject �t
因为USB设备内置USB-SCSI转换接口,所以被认为是SCSI硬盘
#mkdir /mnt/u
#mount /dev/sda1 /mnt/u
默认内核已支持SCSI和USB接口
#modprobe usb-storage          检查usb-storage模块是否已加载,否则无法自动识别USB设备
 
#mount �t vfat /dev/hda2 /mnt/c
#mount �t ntfs /dev/hda3 /mnt/d 需重新编译内核才能支持NTFS
#mount �t iso9660 /dev/cdrom /mnt/cdrom
#mount �t vfat �o iocharset=gb2312 /dev/sdb1 /mnt/u
常用字符编码有gb2312和utf8
#mount /dev/sdb2 /mmt/d �o iocharset=utf8,ro,uid=redhat,umask=0077 
 
Linux下使用U盘
#ls /dev          确认设备已识别
#mount -o iocharset=gb2312 /dev/sda1
more后ctrl+F向下翻页(或空格)ctrl+b(上滚)
ls -a            显示隐藏文件(以.开头的文件)
文件权限rws        s表示执行这个程序的使用者,临时拥有和所有者一样的权力身份来执行该程序
cp -r 源  目的    -r参数表示连子目录一起拷贝
rm -i            确认删除
  -r            删除子目录
  -f            强制删除
du                磁盘或目
录使用了多少空间
df                磁盘或目录剩余可用空间
cat >file1        等价你输入文字,输完后ctrl+C或ctrl+D结束
>>符号表示在文件尾附加,>符号表示创建新文件
less  可上下滚动文件内容
which    在$PATH设置的目录查找文件
 
五、使用磁盘配额
 
默认系统内核已支持quota
 
mount �o usrquota,grpquota /dev/sdb1 /mnt/d1 或
 
mount �o remount,usrquota,grpquota /
 
也可以修改 /etc/fstab文件来启用每个文件系统的配额 —- 添加选项usrquota,grpquota
 
例:
 
将LABEL=/home  /home  ext3  defaults  1 2
改为
LABEL=/home  /home  ext3  defaults,usrquota  1 2
 
#init 1      (进入单用户环境)
 
#quotacheck �cvuga  或 quotacheck �cvag  /dev/sdb1    (a代表all)(g代表用户组)
 
#quotaon �a 激活
 
#edquota �u redhat          进VI编缉用户配额
 
编缉用户可用的字节数,软性的,硬性的,文件数,软件性的,硬性的
 
quota �u redhat      查看用户磁盘配额
 
edquota �t          配置过期时间
 
edquota命令能为一系列用户设置同一配额。假设已为用户ez设立了配额,以下命令将为随后的用户(即mj、jm和tp)复制完全相同的配额限制:
 
$ sudo /usr/sbin/edquota -up ez mj jm tp
 
quotaoff /mnt/sdb1  关闭磁盘配额
 
quotaon /mnt/sdb1    开启
 
repquota命令按用户(-u)或组(-g)报告配额使用情况。用repquota -a命令可以得到所有文件系统的报告。
 
如果想检查单个用户(-u)或组(-g),可以使用quota命令。单个用户可以用此命令检查他们自己的配额使用情况。
 
关于putty 0.58的简单设置
 
1.      修改语言环境 LANG=zh_CN.utf8
 
2.      修改传输数据的字符集translationàUTF8
 
3.      修改外观appearance字体font为新宋体
 
  ls �ld      显示文件属主,详细信息
 
六、Raid
 
安全的动态磁盘策略
linux内核可以模拟RAID控制器,用来管理硬盘,但只支持级别0,1,4,5
RAID0 又称striping
把连续的数据访问分散到多个磁盘上来提高存储性能,速度最快,但最危险。
RAID1 又称Mirror或Mirroring
最大限度的保证用户数据的可用性和可修复性,用户数据100%自动复制到另外一个硬盘上,速度稍慢,因为要同时写多个硬盘。
RAID5    最少需三个硬盘
不对存储的数据时行备份,而把数据和对应的奇偶校验信息分别存储在不同的磁盘上,当一个磁盘数据发生损坏后,利用剩下的数据和相应的奇偶校验信息去恢复被损坏的数据。
RAID0+1      也称RAID10
结合RAID0和RAID1的优点,很多公司在应用
 
Linux中的软件RAID
1.默认内核已支持软件RAID控制器
2.需安装raidtools工具来创建管理RAID设备,raidtools包含有RAID创建管理工具和默认的示范性配置文件,安装完后编辑/etc/raidtab这配置文件,它可以从raidtools中的示范配置文件里(在/usr/share/doc/raid-~/目录下)复制。最后用以下命令创建RAID设备:
 
#mkraid /dev/md0
#mkraid -f /dev/md0
#mkraid -R /dev/md0
  后两个命令是强制创建,覆盖以前建的超级块。
 
  但Fedora Core5不使用这个,而用mdadm工具。
3.软件RAID设备文件名:/dev/mdN        (N=0,1,2…)
4.软件RAID设备可以当分区看待,需格式化后挂载
#mkfs.ext3    /dev/md1
#mount /dev/md1 /opt
5.停止RAID设备
#umount /opt
#raidstop /dev/md0
  要永久删除RAID设备,还需删除raidtab文件,否则重启后RAID仍起作用。
6.显示RAID设备信息
#lsraid -A -a /dev/md1
7.RAID1故障模拟
  假设sdb1与sdc1两个磁盘做RAID1,sdb1磁盘坏了,加入新一块磁盘sdd1。
#raidsetfaulty /dev/md1 /dev/sdb1
#raidhotadd /dev/md1 /dev/sdd1       
#more /proc/mdstat                    查看磁盘修复过程
#raidhotremove /dev/sdb1
  最后还要修改raidtab文件。
 
使用mdadm来创建和管理RAID
RAID0
      添加硬盘
      RAID设备的成员是硬盘分区,需先对硬盘分区,分区不能在同一物理硬盘上
      #fdisk /dev/sdb
      n创建主分区,t分区类型fd,w写保存
      #fdisk /dev/sdc
      #mdadm �Cv /dev/md0 �l0 �n2 /dev/sdb1 /dev/sdc1
              -C,–create            创建一个新的阵列
              -v,verbose            显示细节
              /dev/md0              阵列设备的名称
              -l,–level=              阵列级别,如0,1,4,5,6
              -n,–raid-devices=  阵列活动数目
              /dev/sd[bc]1          阵列包含的设备列表
      #more /proc/mdstat              查看阵列状态
      #mkfs.ext3 /dev/md0    创建文件系统
      #mount /dev/md0 /mnt/raid
      让系统自动挂载,修改/etc/fstab,添加
      /dev/md0      /mnt/raid        ext3 defaults 0 0
 
RAID5 故障模拟
      前面已创建了一个RAID5设备md0
      #mdadm �Cv /dev/md0 �l5 �n3 �x1 �c128 /dev/sd[b,c,d,e]1
      1.将/dev/sdb1标记为已损坏的设备
      #mdadm /dev/md0 �f  /dev/sdb1
 &n
bsp;    这时阵列开始重构和恢复数据
      2.移除损坏的设备
      #mdadm /dev/md0 �r /dev/sdb1
      3.将新设备添加到阵列
      注意,一:对硬盘正确分区,二:添加设备名要与被移除的一致,如sdb1
      #mdadm /dev/md0 �a /dev/sdb1
     
生成配置文件/etc/mdadm.conf
格式如下:
DEVICE /dev/sdb1 /dev/sdc1 /dev/sdd1 /dev/sde1 ARRAY /dev/md10 level=raid10 num-devices=4 UUID=12334343dkfj
 
其中UUID信息通过#mdadm �D /dev/md10得到
#mdadm �Ds 扫描该文件信息
 
常用阵列维护命令
1.启用阵列
      #mdadm �As /dev/md0
      -A    启用已存在的阵列
      -s    以/etc/mdadm.conf为依据
      没有创建mdadm.conf文件,则采用如下方法启用
      #mdadm �A /dev/md0 /dev/sd[bc]1
2.停止阵列
      #mdadm �S /dev/md0
3.显示阵列详细信息
      #mdadm �D /dev/md0
Share

FreeBSD 用cvsd创建cvs服务器

1. 下载及安装

 

用ports 安装cvsd,位于 /usr/ports/devel/cvsd
用ports 安装cvs,位于 /usr/ports/devel/cvs ipv6

创建 cvsd 用户(#useradd)。

2. 修改配置

指定虚拟根目录的实际路径,在RootJail命令后设置
/usr/local/etc/cvsd/cvsd.conf

# RootJail
# This is the location of the chroot jail
# cvs should be run in.
# Specify @#none@# (without quotes) to not use
# a chroot jail.
# This directory should be initialized with
# the cvsd-buildroot script.
RootJail /home/soft/cvsd

创建 /home/soft/cvsd,
使用命令行 /usr/local/sbin/cvsd-buildroot /home/soft/cvsd/ 初始化虚根目录

创建cvsroot 目录 : mkdir /home/soft/cvsd/cvsroot

用命令 cvs -d /home/soft/cvsd/cvsroot init 初始化cvs目录

用命令建立cvs用户:
cvsd-passwd /home/soft/cvsd/cvsroot/ cvsuser:cvsd
上面的命令建立cvsuer 这个帐号,它和系统的 cvsd用户挂接。注意,cvsd是操作系统的用户名,是第一步操作中建立的。
你还可以使用该命令建立其它帐号.

将cvsroot 加入/usr/local/etc/cvsd/cvsd.conf的最后一行,如下面
Repos /cvsroot

此句指明要使用虚拟根下的 "cvsroot" 这个仓库。

3 设置启动脚本
#echo cvsd_enable="YES" >> /etc/rc.conf
#reboot

4.注意事项

cvsd只是cvs的一个外壳程序,将cvs运行在虚拟根环境下,提高系统的安全性。你在安装cvsd后还必须安装cvs程序。

不要跨分区建立仓库,否则会提示找不到用户.
我的/home 和/ 是两个不同的分区.我开始在home下创建仓库,在var下创建虚根目录,作了符号链接后不能读取文件.

声明:

转载此文请保留此声明信息。

驱动开发网 华语地区核心层开发专业网站 http://www.driverdevelop.com

软件创造价值,驱动提供力量!

Share

freeBSD ftpd配置介绍

像自带sendmail一样,freeBSD在系统安装时自带了ftp,这就是freeBSD的ftpd进程,默认以inetd方式运行,你只要在/etc/inetd.conf里如下设置:
ftp stream tcp nowait root /usr/libexec/ftpd ftpd -l
ftp stream tcp6 nowait root /usr/libexec/ftpd ftpd -l
并在/etc/rc.conf里设置:
inetd_enable="YES"
这样ftpd就能顺畅运行。
但是如果你的ftp运行很繁忙,用inetd方式运行ftp势必影响效率和性能,此时建议你以独立方式运行freeBSD的ftpd,方法很简单,如下:
在/etc/inetd.conf里注释掉以上两句,用如下方式启动:
#/usr/libexec/ftpd -D
ftpd的参数比较多常用的如下:
-A: 只允许匿名登录;
-M: 不允许匿名创建目录;
-m: 赋予匿名修改,覆盖等权限;
更多参数请man ftpd.
ftpd的相关设置文件:
/etc/ftpusers List of unwelcome/restricted users.
/etc/ftpchroot List of normal users who should be chroot'd.
/etc/ftphosts Virtual hosting configuration file.
/etc/ftpwelcome Welcome notice.
/etc/ftpmotd Welcome notice after login.
/var/run/nologin Displayed and access refused.
/var/log/ftpd Log file for anonymous transfers.
/var/log/xferlog Default place for session logs.

Share

基于Apache mod_proxy的反向代理缓存加速实现

  Apache包含了mod_proxy模块,可以用来实现代理服务器,针对后台服务器的反向加速
  安装apache 1.3.x 编译时:
  –enable-shared=max –enable-module=most
  注:Apache 2.x中mod_proxy已经被分离成mod_proxy和mod_cache:同时mod_cache有基于文件和基于内存的不同实现
  创建/var/www/proxy,设置apache服务所用户可写
  mod_proxy配置样例:反相代理缓存+缓存
  架设前台的www.example.com反向代理后台的www.backend.com的8080端口服务。
  修改:httpd.conf
  
  ServerName www.example.com
  ServerAdmin admin@example.com
  # reverse proxy setting
  ProxyPass / http://www.backend.com:8080/
  ProxyPassReverse / http://www.backend.com:8080/
  # cache dir root
  CacheRoot "/var/www/proxy"
  # max cache storage
  CacheSize 50000000
  # hour: every 4 hour
  CacheGcInterval 4 bitsCN_com
  # max page expire time: hour
  CacheMaxExpire 240
  # Expire time = (now – last_modified) * CacheLastModifiedFactor
  CacheLastModifiedFactor 0.1
  # defalt expire tag: hour
  CacheDefaultExpire 1
  # force complete after precent of content retrived: 60-90%
  CacheForceCompletion 80
  CustomLog /usr/local/apache/logs/dev_access_log combined
  

  
  基于Squid的反向代理加速实现
  Squid是一个更专用的代理服务器,性能和效率会比Apache的mod_proxy高很多。
  如果需要combined格式日志补丁:
   http://www.squid-cache.org/mail-archive/squid-dev/200301/0164.html
  squid的编译:
  ./configure –enable-useragent-log –enable-referer-log –enable-default-err-language=Simplify_Chinese –enable-err-languages="Simplify_Chinese English" –disable-internal-dns 
  make
  #make install
  #cd /usr/local/squid
  make dir cache
  chown squid.squid *
  vi /usr/local/squid/etc/squid.conf 中国网管论坛
  在/etc/hosts中:加入内部的DNS解析,比如:
   192.168.0.4 [url]www.chedong.com[/url]
  192.168.0.4 news.chedong.com
  192.168.0.3 bbs.chedong.com
  ———————cut here———————————-
  # visible name
  visible_hostname cache.example.com
  # cache config: space use 1G and memory use 256M
  cache_dir ufs /usr/local/squid/cache 1024 16 256
  cache_mem 256 MB
  cache_effective_user squid
  cache_effective_group squid
  
  http_port 80
  httpd_accel_host virtual
  httpd_accel_single_host off
  httpd_accel_port 80
  httpd_accel_uses_host_header on
  httpd_accel_with_proxy on
  # accelerater my domain only
  acl acceleratedHostA dstdomain .example1.com
  acl acceleratedHostB dstdomain .example2.com
  acl acceleratedHostC dstdomain .example3.com
  # accelerater http protocol on port 80
  acl acceleratedProtocol protocol HTTP
  acl acceleratedPort port 80
  # access arc 中国网管联盟
  acl all src 0.0.0.0/0.0.0.0
  # Allow requests when they are to the accelerated machine AND to the
  # right port with right protocol
  http_access allow acceleratedProtocol acceleratedPort acceleratedHostA
  http_access allow acceleratedProtocol acceleratedPort acceleratedHostB
  http_access allow acceleratedProtocol acceleratedPort acceleratedHostC
  # logging
  emulate_httpd_log on
  cache_store_log none
  # manager
  acl manager proto cache_object
  http_access allow manager all
  cachemgr_passwd pass all
  
  ———————-cut here———————————
  创建缓存目录:
  /usr/local/squid/sbin/squid -z
  启动squid
  /usr/local/squid/sbin/squid
  停止squid:
  /usr/local/squid/sbin/squid -k shutdown
  启用新配置:
  /usr/local/squid/sbin/squid -k reconfig
  通过crontab每天0点截断/轮循日志:
  0 0 * * * (/usr/local/squid/sbin/squid -k rotate)
  
  附:SQUID性能测试试验

bitscn.com

  phpMan.php是一个基于php的man page server,每个man
  page需要调用后台的man命令和很多页面格式化工具,系统负载比较高,提供了Cache
  Friendly的URL,以下是针对同样的页面的性能测试资料:
  测试环境:Redhat 8 on Cyrix 266 / 192M Mem
  测试程序:使用apache的ab(apache benchmark):
  测试条件:请求50次,并发50个连接
  测试项目:直接通过apache 1.3 (80端口) vs squid 2.5(8000端口:加速80端口)
  
  测试1:无CACHE的80端口动态输出:
  ab -n 100 -c 10 [url]http://www.chedong.com:81/phpMan.php/man/kill/1[/url]
  This is ApacheBench, Version 1.3d <$Revision: 1.2 $> apache-1.3
  Copyright (c) 1996 Adam Twiss, Zeus Technology Ltd,
  [url]http://www.zeustech.net/[/url]
  Copyright (c) 1998-2001 The Apache Group, [url]http://www.apache.org/[/url]
  
  Benchmarking localhost (be patient)…..done
  Server Software:   
  Apache/1.3.23                  
  Server Hostname:    localhost
  Server
  Port:      BBS.bitsCN.com网管论坛
  80
  
  Document Path:    
  /phpMan.php/man/kill/1
  Document Length:    4655 bytes
  
  Concurrency Level:   5
  Time taken for tests:  63.164 seconds
  Complete requests:   50
  Failed requests:    0
  Broken pipe errors:   0
  Total transferred:   245900 bytes
  HTML transferred:    232750 bytes
  Requests per second:  0.79 [#/sec] (mean)
  Time per request:    6316.40 [ms]
  (mean)
  Time per request:    1263.28 [ms]
  (mean, across all concurrent requests)
  Transfer rate:    
  3.89 [Kbytes/sec] received
  
  Connnection Times (ms)
        
  min mean[+/-sd] median  max
  Connect:    0 
  29 106.1   0  553
  Processing: 2942 6016
  1845.4  6227 10796
  
  Waiting:  
  2941 5999 1850.7  6226 10795
  
  Total:   
  2942 6045 1825.9  6227 10796
  
  Percentage of the requests served within a certain time (ms)

bitsCN.Com

   50%  6227
   66%  706
9
   75%  7190
   80%  7474
   90%  8195
   95%  8898
   98%  9721
   99% 10796
  100% 10796 (last request)
  
  测试2:SQUID缓存输出
  /home/apache/bin/ab -n50 -c5
  "http://localhost:8000/phpMan.php/man/kill/1"
  This is ApacheBench, Version 1.3d <$Revision: 1.2 $> apache-1.3
  Copyright (c) 1996 Adam Twiss, Zeus Technology Ltd,
  [url]http://www.zeustech.net/[/url]
  Copyright (c) 1998-2001 The Apache Group, [url]http://www.apache.org/[/url]
  
  Benchmarking localhost (be patient)…..done
  Server Software:   
  Apache/1.3.23                  
  Server Hostname:    localhost
  Server
  Port:     
  8000
  
  Document Path:    
  /phpMan.php/man/kill/1
  Document Length:    4655 bytes
  
  Concurrency Level:   5
  Time taken for tests:  4.265 seconds
  Complete requests:   50

bitsCN.nET中国网管博客

  Failed requests:    0
  Broken pipe errors:   0
  Total transferred:   248043 bytes
  HTML transferred:    232750 bytes
  Requests per second:  11.72 [#/sec] (mean)
  Time per request:    426.50 [ms] (mean)
  Time per request:    85.30 [ms] (mean,
  across all concurrent requests)
  Transfer rate:    
  58.16 [Kbytes/sec] received
  
  Connnection Times (ms)
        
  min mean[+/-sd] median  max
  Connect:   
  0   1 
  9.5   0  68
  Processing:  
  7  83 537.4  
  7 3808
  
  Waiting:   
  5  81 529.1  
  6 3748
  
  Total:    
  7  84 547.0  
  7 3876
  
  Perce

Share

FreeBSD 下安装Samba

1. Samba 安装
—————–
Samba有二进制安装的版本, 也有源代码安装版本. 我用的系统是FreeBSD,
Samba的二进制安装并不支持FreeBSD. 所以, 我就选择了源代码安装方式.
 
我使用的samba版本是 samba-3.0.21a.tar.gz
 
shell> tar zxvf samba-3.0.21a.tar.gz
shell> cd samba-3.0.21a/source
shell> ./configure
shell> make
shell> make install
shell> cp ../examples/smb.conf.default /usr/local/samba/lib/smb.conf
 
 
 
2. 创建用户
————-
这里我不得不说一句,目前我还没看到网上有任何一篇文章仔细地解释samba的用户关系问题!
不厚道啊~~ 我是摸索了好久才得出以下认识的:
    (1)samba用户管理使用smbpasswd和pdbedit命令
    (2)samba认证使用的用户和组首先要在本地系统中存在
    (3)samba只存储独立于本地系统的用户和口令信息,组则使用本地系统的组信息
 
首先在本地系统中创建用户user1和user2, 创建组group1和group2, user1属于group1,
user2属于group2.
 
 
然后再创建samba用户:
 
shell> /usr/local/samba/bin/smbpasswd -a user1
New SMB password:
Retype new SMB password:
 

shell> /usr/local/samba/bin/smbpasswd -a user2
New SMB password:
Retype new SMB password:

 
如果失败,则可能是本地系统没有事先建立同名帐号.
 
 
可以使用pdbedit -L列出现有samba用户清单, 如果清单中有新加入的用户名, 则说明用户
创建成功.
 
 
 
3. 配置Samba
—————–
 
shell> vi /usr/local/samba/lib/smb.conf
 
下面是我实际搭建环境中的一个实例:
———————————–
# Samba config file created using SWAT
# from 10.217.15.133 (10.217.15.133)
# Date: 2006/01/05 09:42:54
 
[global]
        workgroup = MYGROUP
        netbios name = SINA-NFS
        server string = Sina NFS
        log file = /usr/local/samba/var/log-%M-%I
        max log size = 50
        load printers = No
        dns proxy = No
 
[it]
        path = /data1/it
        valid users = @group1, @group2
        read list = @group1, @group2
        write list = @group1, @group2
 
[driver]
        path = /data2/driver
        write list = @group1
        guest ok = Yes
 
[software]
        path = /data2/software
        write list = @group1
        guest ok = Yes
 

        path = /data2/patch
        write list = @group1
        guest ok = Yes
 
 
以上是通过SWAT配置后生成的最终配置文件,但实际上我手工配置时还在global部分加入了:
 
   security = user
   encrypt passwords = yes
   smb passwd file = /usr/local/samba/private/smbpasswd
 
 
那上面配置要实现的目的是:
 

(1)所有用户都可以看到(browseable)共享目录it,driver,software,patch;

(2)group1的用户对共享目录it,driver,software,patch有读写权限;
(3)group2的用户对共享目录it有读写权限,对共享目录driver,software,patch只读;
(4)非group1和group2的用户对共享目录driver,software,patch只读,对共享目录it无读写权限;
 
 
 
 
4.设置共享目录权限
———————
shell> chmod -R 0777 /data1/it

shell> chmod -R 0777 /data2/driver
shell> chmod -R 0777 /data2/patch
shell> chmod -R 0777 /data2/software

 
 
 
5.启动samba
—————
/usr/local/samba/sbin/smbd -D &
/usr/local/samba/sbin/nmbd -D &
 
 
 
6.自动运行samba
——————
 
有两种方法:
 
(1)在/etc/rc.local加入以下内容:
 

/usr/local/samba/sbin/smbd -D &
/usr/local/samba/sbin/nmbd -D &

 
 
 
(2)在/etc/inetd.conf中加入以下内容:
 
netbios-ssn  stream  tcp  nowait       root  /usr/local/samba/sbin/smbd -D   smbd
netbios-ns   dgram   udp  wait         root  /usr/local/samba/sbin/nmbd -D   nmbd
swat         stream  tcp  nowait/400   root  /usr/local/samba/sbin/swat      swat
第二种方法要保证inetd正常运行.
 
 
 
7.SWAT管理
————-
默认情况下SWAT已被安装.
我试过通过执行/usr/local/samba/sbin/swat启动SWAT没有成功, 只有通过inetd.conf才可以成功启动.
 
启动成功后可以通过http://samba_server_ip:901/访问SWAT管理页面.
 
默认情况, SWAT使用本地系统的root用户作为管理帐号. 注意, 是系统用户, 不是samba的共享用户.
 
 
 
8.检查服务是否正常
———————
 
通过netstat -an看到服务端口已处理监听状态:
tcp4       0      0  *.901                  *.*                    LISTEN
tcp4       0      0  *.139                  *.*                    LISTEN
udp4       0      0  10.0.0.38.138          *.*                   
udp4       0      0  10.0.0.38.137          *.*
udp4       0      0  *.138                  *.*
udp4       0      0  *.137                  *.*
 
 
 
9.小技巧
————-
 
(1)如何在一个共享目录中嵌入其它目录
 
有时我们需要使用多块磁盘, 那经常变更目录或更换磁盘非常麻烦, 我还不了解在samba中如何
使用多个磁盘支持同一共享目录. 所以, 我使用的方法是:
 
    *在已有共享目录中建立一个到其它磁盘的链接.*
 
假设我要在共享目录it下建立一个到磁盘/data3上的目录iso的链接, 那么需要进行以下操作:
shell> cd /data1/it
shell> ln -s /data3/iso iso
shell> chmod -R 0777 /data3/iso
Share

scp(ssh文件复制)[freebsd]

SSH提供了一些命令和shell用来登录远程服务器。在默认情况下它不允许你拷贝文件,但是还是提供了一个"scp"命令。上传:scp 源文件 用户名@主机:目的文件名。scp -r 原文件夹 用户名@主机:目的文件夹。下载:scp 用户名@主机:/path/文件名 /path/文件名。

Share

sendmail.群发[freebsd]


今天弄清了怎么实现群发功能,设置一个 all@domain.com的邮箱地址当向这个地址发送邮件时可以发送给指定用户
 
在sendmail的设置文件里有这样一支/etc/mail/aliases
我们vi它
最后+上
 
保存
 
#makemap hash /etc/mail/aliases.db < /etc/mail/aliases
 
好了!!
Share

cvsup资源 – 中国[freebsd]

用之前先ping一下看看速度!!!
 
中国大陆
 
非官方:
 
 
中国台湾
Share

freebsd 安装 一个老机车的插曲


公司有一台hp的迷你机,光驱是笔记本光驱接口,只有一个ide。于是我在这个ide口上接了一个cd一个hdd准备安装bsd
安装好之后去掉cd发现原来此机器不能用bios来选择先启动的设备,只能按主-从 启动。。。装的时候cd当然是master了,于是hdd就被判为了ad1(从盘)。cd一去掉bsd启动不起了,原因是 /etc/fstab里记录的ad1***都不存在了!!hdd现在变成了master也就是ad0
于是我就进单用户想编辑/etc/fstab。。。郁闷的是我也不知道咋的他就成了只读模式了,还不让我改!!!
逼不得已我拆下硬盘接到了另外一个我已经装好了的bsd下。
 
然后
先check一下是否读到
#dmesg|grep ad
FreeBSD is a registered trademark of The FreeBSD Foundation.
xl0: Ethernet address: 00:b0:d0:bc:9d:ce
uhub0: Intel UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub1: Intel UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
ad0: DMA limited to UDMA33, controller found non-ATA66 cable
ad0: 14324MB at ata0-master UDMA33
ad1: DMA limited to UDMA33, controller found non-ATA66 cable
ad1: 14594MB
at ata0-slave UDMA33
 
看到了ad1那就是了
 
# fsck ad1
** /dev/ad1s1a
** Last Mounted on /mnt
** Phase 1 – Check Blocks and Sizes
** Phase 2 – Check Pathnames
** Phase 3 – Check Connectivity
** Phase 4 – Check Reference Counts
** Phase 5 – Check Cyl groups
1045 files, 18408 used, 235407 free (1783 frags, 29203 blocks, 0.7% fragmentation)
 
***** FILE SYSTEM MARKED CLEAN *****
# mount -rw /dev/ad1s1a /disc2
#cd /disc2/etc
#ee fstab
 
 
 
 
# Device                Mountpoint      FStype  Options         Dump    Pass#
/dev/ad0s1b             none            swap    sw              0       0
/dev/ad0s1a             /               ufs     rw              1       1
/dev/ad0s2f             /data           ufs     rw              2       2
/dev/ad0s2e             /tmp            ufs     rw              2       2
/dev/ad0s2g             /usr            ufs     rw              2       2
/dev/ad0s2d             /var            ufs     rw              2       2
/dev/acd0               /cdrom          cd9660  ro,noauto       0       0
 
 将Device列全改成ad0
保存退出关机卸硬盘
 
装到那台机车机器上一看。。。。oh yeah
起来了!!
Share