15. April 2007 · Comments Off on links for 2007-04-14 · Categories: 美味收藏
14. April 2007 · Comments Off on links for 2007-04-13 · Categories: 美味收藏

%(百分号)在 crontab 中是一个特殊字符,相当于回车,如果命令中包含 %,那么 % 之后的内容将作为标准输入赋值给前面的命令。

如果命令行中需要 %,那就得在 % 前面加一个反斜线“\”来转义,就变成了“\%”, 当然了,如果要用反斜线的话,那就是“\\”这样子啦。

不过,我要在计划任务中添加一个任务,是要每天分析前一天的 apache 日志。日志的文件名,是用命令行参数来指定的。昨天的日志文件名就写成这样子

$(date –date ‘yesterday’ ‘/%Y-%m/access_log_%Y_%m_%d.log’)

比如今天是2007年4月13日,那这条命令的结果就是:

/2007-04/access_log_2007_04_12.log

因为我这是在命令行中指定日志文件的,所以在添加到 crontab 中以后,需要在 % 之前添加反斜线。但是却出现了意外,因为 crontab 把上面的那个命令结果变成了

/\2007-\04/access_log_\2007_\04_\12.log

反斜线竟然还在!

服了他了,我只好把命令写到一个文件里,然后在 crontab 里面调用那个文件了。

13. April 2007 · Comments Off on links for 2007-04-12 · Categories: 美味收藏

用过 Linux 都知道,添加 DNS 服务器是在 /etc/resolv.conf 文件中,格式类似如下的样子:

nameserver 208.67.222.222
nameserver 208.67.220.220

BTW:这个两个 DNS 服务器是 OpenDNS (website: http://www.opendns.com)的,建议大家使用。

平时,我们只要添加了DNS服务器就可以正常解析域名了。但是 Solaris 中却不是这样,也不知道是安装时的问题还是本来就是这样,正常添加了DNS服务器,却还是不能解析域名,除非在 /etc/hosts 中添加了要解析的域名。

原因呢,就是在 /etc/nsswitch.conf 这个文件中,有那么两行:

hosts: files


networks: files

指明了解析域名时,用的是文件,而不用 DNS,所以只需要在这两行后面分别再添加一个 dns,变成如下这样就行了

hosts: files dns

networks: files dns

在 Solaris 5.8 中添加了 DNS 后,却不能解析 www.sunfreeware.com 之后的记录

12. April 2007 · Comments Off on links for 2007-04-11 · Categories: 美味收藏
11. April 2007 · Comments Off on links for 2007-04-10 · Categories: 美味收藏
10. April 2007 · Comments Off on links for 2007-04-09 · Categories: 美味收藏

一般来说,只要是从 Freeware for solaris 上下载的软件,只要用gunzip解压后,再用 pkgadd -d <filename> 就可以安装成功。

比如我们要安装 wget,下载地址是 ftp://ftp.sunfreeware.com/pub/freeware/sparc/8/wget-1.10.2-sol8-sparc-local.gz ,下载到本地后,用

gunzip wget-1.10.2-sol8-sparc-local.gz

解压得到文件 wget-1.10.2-sol8-sparc-local,然后用命令

pkgadd -d wget-1.10.2-sol8-sparc-local

即可安装成功。不过有的软件包可不是这么简单了,每次运行pkgadd -d <filename> 提示总是

pkgadd: ERROR: no packages were found in </var/tmp/aEzreACb41kZYZ>

类似这样的提示,用 cksum 检查文件,也都没有任何问题。用pkginfo -d <filename> 也会得到类似的错误。

说真的,这个问题困扰了我一天。直到我在 http://au.sunsolve.sun.com/pub-cgi/show.pl?target=patchpage 这里,用 pkgadd 作为关键字搜索后,才恍然大悟,原来这是 pkgadd 的bug。解决这个问题需要安装两个补丁,分别是

http://au.sunsolve.sun.com/search/document.do?assetkey=1-21-110380-04-1

http://au.sunsolve.sun.com/search/document.do?assetkey=1-21-110934-26-1

记住,先安装第一个,然后再第二个。

在安装 openssh-4.6p1-sol8-sparc-local 失败后的一次记录