Archive for the Category » Linux / BSD «

Redhat nfs exports文件映射用户

BSD上的格式一般这样的:
/usr/local/nfs -mapall=www:www 192.168.0.0/24

但是在Redhat上则需要写成这样:
/usr/local/nfs 192.168.0.0/24(rw,all_squash,anonuid=80,anongid=80)

上面的方法,能把nfs写入的文件都映射到www用户,很多时候很有用的 :)

Category: Linux / BSD  Tags:  2 Comments

Ubuntu 8.04搞定CDMA上网

其实在Ubuntu下干活,主要目的是为了用Erlang开发个未来准备运行在该平台下的新东西,闲的时候就尝试折腾Ubuntu系统上的各种配置,晚上睡觉前又有了收获。

继下午搞定局域网连接打印机之后,刚才顺利搞定了CDMA PCMCIA卡拨号上网,大致的情况汇报如下。
more »

Category: Linux / BSD  Tags: ,  4 Comments

Ubuntu下顺利连上Windows打印机Brother MFC7420

折腾了将近5个小时,得出两句话:
1. Windows和比尔盖茨都是很伟大的,不要轻易人云亦云说Windows不好
2. 网上的那些所谓教程可能会和我这篇文章一样,害死人,浪费你的生命!

最近坚持了有四天没有返回Windows,工作中各种常用的软件都已经在Ubnutu下准备到位,基本上感觉,从桌面与工作的角度来看,已经具有Windows98的水平了 🙂

今天想连接另外一台win98上挂着的打印机,结果google,baidu了N 久,按照不少的教程来操作,还是未能成功,不过这中间逐渐掌握到一些要领,其实最后发现还是用系统自带的apt-get, apt-cache等工具即可搞定之,重要的是对连接打印机的几种模式和方法得有概念上的理解。

多的不说,有遇到相同问题的朋友,单独找我吧,避免因为个人偶然因素,也害了更多人 🙂

Category: Linux / BSD  Tags:  7 Comments

svn:Can’t convert string from ‘UTF-8’ to native encoding

之前遇到一个问题,svn里面如果提交了中文文件名的文件或者包含其他特殊字符的文件名的文件,会导致linux或者freebsd上svn update/checkout的时候出现错误“svn: Can’t convert string from ‘UTF-8’ to native encoding”

这个问题是由系统字符集设置导致的,可以使用如下方法解决:
在bash的shell下,输入如下命令:

#export LC_CTYPE=en_US.UTF-8

然后运行如下命令确认发生的变化如下:

#locale

将得到如下的结果返回:

LANG=
LC_COLLATE="C"
LC_CTYPE="en_US.UTF-8"
LC_MESSAGES="C"
LC_MONETARY="C"
LC_NUMERIC="C"
LC_TIME="C"
LC_ALL=

可以把以上内容直接加到svn的钩子里面,解决提交时自动输出处理遇到的问题。

Category: Linux / BSD, 其他技术  Tags:  3 Comments

服务器受到arp病毒攻击

前两天服务器在我不知情的情况下,我的机器被从一个机房搬到另外一个机房(狂晕),结果就开始一直无法访问,让机房的工程师帮忙看了半天,各方面正常,但网络就是不通,很郁闷,今天亲自去机房跑了一趟,搞定。

经查,我的机器所在的交换机上某台机器中了arp病毒,导致我的机器也受到攻击,我也没有功夫继续查是谁中了,简单搞了个脚本放在cron里面每10分钟执行一下,自动清理arp表和重新设置网关以及本机的网卡arp信息,感觉freebsd在抵抗arp攻击方面真的是太弱智了,有点不能接受。。。

我的cron脚本内容如下:

#!/bin/sh
/usr/sbin/arp -d -a
/usr/sbin/arp -s 124.254.29.1 00:05:31:d0:aa:bb
/usr/sbin/arp -s 124.254.29.196 00:20:ed:79:aa:bb
Category: Linux / BSD  6 Comments

服务器遭遇怪异问题

  前几天服务器硬盘坏了,换了一台新的服务器去机房替换,之前是FreeBSD6.1的,重新安装了系统为6.2,在家安装的系统,连续几天重启、开关机后都一切正常,前天放入机房后,重新配置了机房的ip地址,当时网络一切正常,后来前天晚上机器重启一次后就再也没有起来,今天去机房发现一个奇怪现象,机器是起来了,就是网不通了。

  经过各种可能性的检查没有找到原因,有时重启网络能通,有时重启不通,ping 网关得到 ping sendto: host is down的错误提示,但是ifconfig查看网卡一切正常, 有时使用ifconfig em0 down和ifconfig em0 up网络能起来,尝试修改hosts、rc.conf关于网络的配置多次均这样的现象,也确认过resolve.conf没有问题,更换网线、网口均不能解决问题,几乎崩溃!!!

  现在这次机器起来是网络通的,我就不敢再重启了,暂时先顶着吧,反正一般我几个月都不会重启一次机器。

  昨晚想到一个临时的解决办法,避免意外重启后又不通,写了一个shell脚本,启动的时候自动执行,策略如下:
1. 测试网络到网关是否通,如果不通则执行ifconfig em0 down 和ifconfig em0 up ,然后再次测试到网关是否通
2. 如果不通,重复1三次
3. 还不通,则执行reboot
4. 重复前面1-3,直到某一次启动网通了

  虽然不是好办法,至少让我能稍微省省心,没必要的情况下,千万别再自己买服务器自己维护了,太折腾!

Category: Linux / BSD  8 Comments

被SVN的 Non-ASCII character 错误困扰,郁闷之极。

  这两天在BSD上遇到 SVN的 Non-ASCII character (code xxx) detected 错误,导致svn无法使用,搞了很久也没有搞定,实在郁闷,影响到项目进度了,不知道谁能帮忙一下。

FreeBSD上两种认证方式配置SVN笔记二

  之前写过一个关于SVN的笔记,本来不想再弄这个东西,因为项目原因,被逼继续使用SVN进行配置管理。花费了几个小时总算搞清楚了具体细节,整理一份文档出来今后备用。

环境:
FreeBSD 6.2 Released C1
Apache 2.2.3
Subversion 1.4.0

目标:
通过Apache的WebDAV方式访问SVN进行日常开发和代码管理

more »

crontab 的格式备忘

经常用,但是经常忘记,基本的格式能记得,但是详细的或者复杂点的格式总会忘记或者拿不准,不知道是不是年纪大了记忆力下降,干脆整理出来今后方便查看。

基本格式 :
*  *  *  *  *  command
分 时 日 月 周 命令

第1列表示分钟1~59 每分钟用*或者 */1表示
第2列表示小时1~23(0表示0点)
第3列表示日期1~31
第4列表示月份1~12
第5列标识号星期0~6(0表示星期天)
第6列要运行的命令

crontab文件的一些例子:

30 21 * * * /usr/local/etc/rc.d/lighttpd restart
上面的例子表示每晚的21:30重启lighttpd 。

45 4 1,10,22 * * /usr/local/etc/rc.d/lighttpd restart
上面的例子表示每月1、10、22日的4 : 45重启lighttpd 。

10 1 * * 6,0 /usr/local/etc/rc.d/lighttpd restart
上面的例子表示每周六、周日的1 : 10重启lighttpd 。

0,30 18-23 * * * /usr/local/etc/rc.d/lighttpd restart
上面的例子表示在每天18 : 00至23 : 00之间每隔30分钟重启lighttpd 。

0 23 * * 6 /usr/local/etc/rc.d/lighttpd restart
上面的例子表示每星期六的11 : 00 pm重启lighttpd 。

* */1 * * * /usr/local/etc/rc.d/lighttpd restart
每一小时重启lighttpd

* 23-7/1 * * * /usr/local/etc/rc.d/lighttpd restart
晚上11点到早上7点之间,每隔一小时重启lighttpd

0 11 4 * mon-wed /usr/local/etc/rc.d/lighttpd restart
每月的4号与每周一到周三的11点重启lighttpd

0 4 1 jan * /usr/local/etc/rc.d/lighttpd restart
一月一号的4点重启lighttpd

Category: Linux / BSD  29 Comments

在FreeBSD上使用mod_dosevasive对抗DDos攻击

  mod_dosevasive是一个Apache上的可选模块,它能应对一些基于HTTP的拒绝服务攻击,就是常说的Dos或者DDos攻击,这种攻击是让很多大小网站都头疼的攻击方式,mod_dosevasive从Apache1.3开始出现,虽然不能完全彻底的防止大规模的DDos攻击,但是对于普通的攻击来说,还是非常不错的选择。

  我的服务器(http://www.toplee.com/blog/)就曾经收到过类似的测试攻击(就是估计别人是为了练手,并非真的要针对我),搞得很头疼,我一些朋友的应用也遇到过类似的烦恼,基本上都通过安装mod_dosevasive得到了较好的解决。下面我就来以我在FreeBSD上安装基于Apache2.2.2的mod_dosevasive经过给大家分享一下经验,顺便进一步讲述一下mod_dosevasive的特性。
more »