放弃fedora,换用centos,试用debian

fedora15感觉跟有几分的不稳定,在thinkpad t420s上多次挂起,甚至几次鼠标会动,gui键盘都没有任何响应,tty终端也切换不了,只能强制关机断电。正好是要换大硬盘,于是想换个发行版用。很关注并恶补了debian相关的文章,旧电脑上安装试用,结果是差异比较大,在学习成本高,镜像里都找不着包,完全不像熟悉的yum,因为老电脑在2.6.31等几个内核下花屏,纯字符单人模式都这样。升级,或者降级为其他版本,但找不到deb包。grub也是很新的版本,不习惯。于是装centsos 6,感觉跟fedora很类似。以后装个debain,学习一下

使用 Wordmobi 发布

---------------------

昨天晚上下班回去搞前几装的debian 6 , 很有点不习惯,grub 1.98, 相当新的版本,跟redhat系列一直坚持的0.97版差别好像不小;还有其它的一些东西,还有apt-get升级,也玩不转,因为linux kernel 2.6.32 与之前用的笔记本不兼容,命令行下都花屏。启动安装进程时才发现grub新版本kernel命令没有了,改成了linux。想升级一个内核,到debian镜像网站上找内核包,但死活就找不到,不懂apt-get的机制。于是放弃,安装centos 6 i386, 几乎选择了所有的包,感觉安装花费时间跟长。安装完成后,发现centos 6跟前两个版本的fedora(13,14)很像似——没有用过redhat 6——与centos 5/redhat e 5界面差别比较大一些。比较熟悉的yun升级,还是有不少包的,几百兆,于是中止,里面也没有新版内核。屏幕还是花的,因为内核版本,于是镜像源里下载了个fedora14的最新内核,处理了几个包的依赖包下载,安装内核,很顺利,重启没有花屏了。用起来,简直就是fedora的前两个版本。这下就搞到近凌晨一点,yum升级,睡觉感觉意犹未尽,于是手机写些东西,实在很困,连续好几天这么折腾,几乎睡着了,于是提交睡觉。今天早上起来,设置prmfusion源,关机上班。
睡觉前手机发的几行字,草草写了几行字。

(110913看到本文,好几处行文次序、用词等的错乱,改之)

对 Linux 文件名中有短横线“-”的操作

对 Linux 文件 名 中有“-”的操作

[日期:2008-08-22] 来源:红联 Linux   作者:albume

Linux 中"-"有特殊的含义,比如在命令的后面加"-"表示后面跟的是选项。但是如何新建带名字中有"-",下面介绍三种方法,比如要新建 文件 "-a":

1、cd .>-a

2、vi -- -a

3、echo"">-a

上面三种方法都可以在当前目录下新建一个"-a" 文件 ,当然还可以有别的方法新建,这里就不在介绍。如果要删除"-a"就比较麻烦了,如果你输入 rm -a,系统会提示你:

rm:无效选项 -- a

请尝试执行‘rm --help’来获取更多信息。

对于这样的 文件 可以有两种方法来删除,如下所示:

1、rm ./-a

2、rm -- -a

改名字也不用说了,基本上就是在 文件 名前面加"--"来表示转义字符就可以了!

在Cygwin里安装使用dig命令/How to install dig on Cygwin

How to install dig on Cygwin

Here's a synopsis of how I installed dig on Cygwin:

1. Run the Cygwin setup and for the download site use:
ftp://sunsite.dk/projects/cygwinports

[推荐使用国内源http://mirrors.163.com/cygwin/]
2. Install the "Bind" package.

3. Determine the DNS being used.
ipconfig /all

4. Create the /etc/resolv.conf.
nameserver <DNS IP>

If this is not done, you'll get the error "communcations error: connection reset" when you run dig.

5. Run dig

from http://www.otweb.com/phramework/pw/module/blog/index.php?id=862

ssh无密码登入设置(完全版)/linux下免输入密码ssh登录

配置ssh不需要密码登录远程主机,网上有很多文章,但好像完整的不多,笔者参照操作,但得到消息:

Agent admitted failure to sign using the key.

原来是没有启动ssh-agent及把私钥加入到ssh-agent,参考如下文章得以解决问题。下文是完整的配置无密码登录ssh远程主机的方法,推荐参阅。

[注]正文来自http://www.jiangmiao.org/blog/559.html,在此表示感谢!

 

现有2台机器

1、服务器192.168.1.112

2、个人机192.168.1.110

要使110无需密码通过ssh登入112

步骤

1、创建密钥

miao@u32-192-168-1-110:~/.ssh$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter passphrase (empty for no passphrase): (忽略)
Enter same passphrase again: (忽略)
Your identification has been saved in /home/miao/.ssh/id_rsa.
Your public key has been saved in /home/miao/.ssh/id_rsa.pub.

2、复制公密到服务器

miao@u32-192-168-1-110:~/.ssh$ scp id_rsa.pub miao@192.168.1.112:/home/miao/.ssh/192.168.1.110
miao@192.168.1.112's password:
id_rsa.pub                                                                   100%  404     0.4KB/s   00:00
miao@u32-192-168-1-110:~/.ssh$

3、添加公密到192.168.112的信任区域

miao@debian-192-168-1-112:~/.ssh$ cat 192.168.1.110 >> authorized_keys
miao@debian-192-168-1-112:~/.ssh$

注: 2,3两步可由命令ssh-copy-id一步到位

miao@ubuntu-192-168-1-110:~/.ssh$ ssh-copy-id miao@192.168.1.112
Password:
Now try logging into the machine, with "ssh 'miao@192.168.1.112'", and check in:

  .ssh/authorized_keys

to make sure we haven't added extra keys that you weren't expecting.

4、启动ssh-agent

如果ssh 192.168.112返回 Agent admitted failure to sign using the key
ps -Af | grep agent查看有无ssh-agent有无运行,若没有

miao@u32-192-168-1-110:~/.ssh$ ssh-agent

5、添加id_rsa到ssh-agent

miao@u32-192-168-1-110:~/.ssh$ ssh-add id_rsa

6、完成

from http://www.jiangmiao.org/blog/559.html

linux 下系统信息的查阅命令

这是文字版

系统信息

#uname -a                 #查看内核/操作系统/cpu信息

#cat /etc/issue        #查看操作系统版本

#cat /proc/version    #包含GCC的版本信息

#cat /proc/cpuinfo     #查看CPU信息

#hostname               #查看计算机名

#lspci -tv                    #列出所有pci设备

#lsusb -tv                   #列出所有usb设备

#lsmod                      #列出加载的内核模块

#env                          #查看环境变量

资源信息

#free -m              #查看内存使用量和交换区使用量

#df -h                    #查看各分区使用情况

#du -sh <目录名>  #查看指定目录的大小

#grep MemTotal /proc/meminfo  #查看内存总量

#grep MemFree /proc/meminfo  #查看空闲内存总量

#uptime           #查看系统运行时间,用户数,负载

#cat /proc/loadavg  #查看系统负载

 

磁盘信息

#mount | column -t    #查看挂接的分区状态

#fdisk -l                    #查看所有分区

#swapon -s                #查看所有交换分区

#hdparm -i /dev/hda   #查看磁盘参数(仅适用于ide设备)

#dmesg | grep IDE          #查看启动时IDE设备检测状况

 

网络信息

#ifconfig                       #查看所有网络接口的属性

#iptables -L                 #查看防火墙设置

#route -n                     #查看路由表

#netstat -lntp               #查看所有监听端口

#netstat  -antp             #查看已经建立的连接

进程信息

#ps -ef                         #查看所有进程

#top                             #实时显示进程状态

用户信息

#w                                  #查看活动用户

#id <用户名>                   #查看指定用户信息

#last                               #查看用户登录日志

#cut -d : -f1 /etc/passwd #查看系统所有用户                                   

#cut -d: -f1 /etc/group     #查看系统所有组

#crontab -l                       #查看当前用户的计划任务

支持中文变量的smarty模板引擎(修改版):程序与模板全部使用utf8编码的情况下,可以支持中文变量名

程序与模板全部使用utf8编码的情况下,可以支持中文变量名

smarty 基于smarty 3.0.6修改,只能用于utf-8编码的php程序+utf-8编码的模板(两者必须是utf-8!)

感谢maquan 的辛勤不懈的努力付出。

详细讨论过程,请参考这里 http://topic.csdn.net/u/20110304/09/6656b521-6d7b-4188-a9ca-316aafcd65b6.html

原smarty代码修改处:

3.0.6,在 Smarty/sysplugins/smarty_internal_templatelexer.php:455 附近有如下的内容:
function yylex2()
{
...
$yy_global_pattern = "...|^(0[xX][0-9a-fA-F]+)|^([0-9]*[a-zA-Z_]\\w*)|^(\\d+)|^(\\s+)|^(.)/u";
...

改成下面的样子即可:

function yylex2()
{
...
$yy_global_pattern = "...|^(0[xX][0-9a-fA-F]+)|^([0-9]*[a-zA-Z_\\pL][\\w\\pL]*)|^(\\d+)|^(\\s+)|^(.)/u";
...

可以直接下载本文附件,如不放心,请按上述说明自行修改。

php与asp/vbscript对input表单数组的处理比较

php与asp/vbscript对input表单数组的处理比较

arrayform

啥也不用说,自己运行吧,很简单的几个小文件。

本站www.path8.net是linux主机,不能运行asp,不然倒可以在线运行代码了 ^=^

结论是,php比asp/vbs更合理,更先进,不要犹豫了,全面转战php吧!

——谨以此献给有志从asp转php、有志向自由软件(也包括开源软件)贡献一份力的同学们。

 

乱七八糟(一次聊天记录)

whoami 说:
域名目前都要通过国外主机转向,只要是国外主机的就可以。
someone 说:
哦,难道是要经过思科?检查信息是否合法然后才能上线?呵呵
whoami 说:
机房有规定,(当然其实还是朝廷的规定),服务器上开设的域名必须经过备案,否则发到后将直接关闭
所以只能把这些域名开设在国外主机上,通过国外主机跳转到我们做的专题站点上
备案可能几个月都搞不定,非常麻烦
someone 说:
哦,~~传说“朝廷”花了好多银子买相关的系统,原来是这么操作的。
呵呵,了解了好多~~谢啦~
whoami 说:
这是还不是那个传说中的G--,这一切是一大帮人,在人工检查审核的
someone 说:
呵呵,复杂。。
whoami 说:
传说中的gxx是在网络的国际接口上安装的一套设置+软件
someone 说:
哦~

百度爬虫蜘蛛ip地址表

百度蛛蛛有很多假冒user-agent的,可靠的蜘蛛ip有反向解析地址,例如

40.221.206.111.in-addr.arpa name = baiduspider-111-206-221-40.crawl.baidu.com.

分析某站点的日志,得到以下几个可靠的地址段,及抓取次数、地址数、示例ip等

subnet cral_times ip_count example
123.125.71.0 1106531 76 123.125.71.36
220.181.108.0 1101992 75 220.181.108.121
180.76.15.0 412563 60 180.76.15.145
111.206.221.0 15614 80 111.206.221.40

 

假冒蜘蛛(至少严重嫌疑)示例:113.97.50.220, 123.125.67.152, 113.99.114.197, 58.218.213.134, 114.95.226.126, 123.125.143.11, 117.177.97.16, 39.108.233.0, 27.148.157.107, 122.10.64.19, 103.29.23.132

邮箱域名的spf记录添加方法

什么是SPF
就是Sender Policy Framework。SPF可以防止别人伪造你来发邮件,是一个反伪造性邮件的解决方案。当你定义了你的domain name的SPF记录之后,接收邮件方会根据你的SPF记录来确定连接过来的IP地址是否被包含在SPF记录里面,如果在,则认为是一封正确的邮件,否则 则认为是一封伪造的邮件。关于更详细的信息请参考RFC4408(http://www.ietf.org/rfc/rfc4408.txt

如何增加SPF记录
非常简单,在DNS里面添加TXT记录即可。登陆http://www.openspf.org/在里面输入你的域名,点击Begin,然后会自动得到你域名的一些相关信息。
a 你域名的A记录,一般选择yes,因为他有可能发出邮件。
mx 一般也是yes,MX服务器会有退信等。
ptr 选择no,官方建议的。

a: 有没有其他的二级域名?比如:mail.abc.com和www不在一台server上,则填入mail.abc.com。否则清空。
mx: 一般不会再有其他的mx记录了。
ip4: 你还有没有其他的ip发信?可能你的smtp服务器是独立出来的,那么就填入你的IP地址或者网段。
include: 如果有可能通过一个isp来发信,这个有自己的SPF记录,则填入这个isp的域名,比如:hichina.com
~all: 意思是除了上面的,其他的都不认可。当然是yes了。

好了,点击Continue…..
自动生成了一条SPF记录,比如abc.com的是
v=spf1 a mx ~all
并且在下面告诉你如何在你的bind里面添加一条
abc.com. IN TXT “v=spf1 a mx ~all”

加入你的bind,然后ndc reload即可。
检查一下:
dig -t txt extmail.org

如果您的域名是由万网的dns服务器进行解析的,万网的网页上没有设置TXT记录的地方,但是如果你的DNS主server是在Hichina的,可以在diy.hichina.com上设置。设置完毕后您即可以通过使用spf策略进行垃圾邮件验证了。

SPF 的 TXT 记录

SPF 记录包含在一个 TXT 记录之中,格式如下:

  v=spf1 [[pre] type [ext] ] ... [mod]

每个参数的含义如下表所示:

参数 描述
v=spf1 SPF 的版本。如果使用 Sender ID 的话,这个字段就应该是 v=spf2
pre 定义匹配时的返回值。

可能的返回值包括:

返回值 描述
+ 缺省值。在测试完成的时候表示通过。
- 表示测试失败。这个值通常是 -all,表示没有其他任何匹配发生。
~ 表示软失败,通常表示测试没有完成。
? 表示不置可否。这个值也通常在测试没有完成的时候使用。
type 定义使用的确认测试的类型。

可能的值包括:

候选值 描述
include 包含一个给定的域名的测试
以 include:domain 的形式书写。

all 终止测试序列。
比如,如果选项是 -all,那么到达这条记录也就意味着测试失败了。但是如果无法确定,可以使用"?all"来表示,这样,测试将被接受。

ip4 使用 IPv4 进行验证。
这个可以以 ip4:ipv4 或 ip4:ipv4/cidr 的形式使用。建议使用这个参数,以减少域名服务器的负荷。

ip6 使用 IPv6 进行验证。

a 使用一个域名进行验证。
这将引起对域名服务器进行一次 A RR 查询。
可以按照 a:domain, a:domain/cidr 或 a/cidr 的形式来使用。

mx 使用 DNS MX RR 进行验证。
MX RR 定义了收信的 MTA,这可能和发信的 MTA 是不同的,这种情况基于 mx 的测试将会失败。
可以用 mx:domain, mx:domain/cidr 或 mx/cidr 这些形式进行 mx 验证。

ptr 使用域名服务器的 PTR RR 进行验证。
这时,SPF 使用 PTR RR 和反向图进行查询。如果返回的主机名位于同一个域名之内,就验证通过了。
这个参数的写法是 ptr:domain

exist 验证域名的存在性。
可以写成 exist:domain 的形式。

ext 定义对 type 的可选扩展。如果没有这个字段,那么仅使用单个记录进行问询。
mod 这是最后的类型指示,作为记录的一个修正值。

修正值 描述
redirect 重定向查询,使用给出的域名的 SPF 记录。
以 redirect=domain 的方式使用。

exp 这条记录必须是最后一条,允许给出一条定制的失败消息。

IN TXT "v=spf1 mx -all exp=getlost.example.com"

getlost IN TXT "You are not authorized to send mail for the domain"
Pages: Prev 1 2 3 4 5 6 7 8 9 10 11 12 13 Next