更改Centos的yum源

2011年10月31日 没有评论

前段时间一直使用http://centos.ustc.edu.cn/的源,最近发现更新有问题,遂换成默认的源,执行yum update的时候还是报错,似乎原因是还在使用默认的ustc的源,后来查了一下,把/etc/yum.repos.d目录下的文件全部干掉,即 rm -rf /etc/yum.repos.d/*就可以了。在国内163的源似乎也不错,添加方法为:

cd /etc/yum.repos.d/
wget http://mirrors.163.com/.help/CentOS-Base-163.repo
mv CentOS-Base-163.repo CentOS-Base.repo
yum makecache
yum update
分类: Linux 标签: ,

nginx设置wordpress静态资源压缩和过期时间设置

2011年10月27日 没有评论

通过对一些静态资源简单的设置,例如设置静态资源的过期时间、以及压缩,可以减少网站的加载时间,同时也能减少服务器的带宽。

在nginx下对静态的过期时间设置为:

        location ~* \.(ico|gif|bmp|jpg|jpeg|png|swf|js|css) {
            root    /var/www/netingcn.com;
            expires 7d;
        }

上述配置能对图片、flash、js、css文件设置了过期时间为7天,当用户在7天内再次访问网站时,大部分情况下都是直接使用本地的缓存,减少网络传输,从而加快了页面加载速度。

压缩的配置如下:

        gzip  on;
        gzip_min_length  1000;
        gzip_buffers     4 8k;
        gzip_types       text/plain application/x-javascript text/css;

对文本、js和css文件进行压缩,一般情况下,压缩后的大小是原始大小的25%,甚至更小。

centos、utunbu安装软件

2011年10月26日 没有评论

centos下配置好软件源,可以通过yum方便的安装需要的软件,例如:yum install vim,注意执行这样的操作需要root权限,切换到root下,或者用sudo yum install vim。不过有时候软件的名字和包名并不是一致的,在某个版本后centos就没有包含whois命令,当使用 yum install whois提示No package whois available,想要知道whois对于的包名,可以借助于yum search whois,执行后发现有jwhois.i686 : Internet whois/nicname client这行信息,然后使用yum install jwhois,顺利安装上whois了。

另外,在linux的另外一个发行版Ubuntu中,是采用apt来管理软件包的,对于的安装命令为apt-get install xxx,如果要搜索软件对应的包名,则是使用apt-cache search xxx

rsync同步时出现rsync: failed to set times on “xxxx”: Operation not permitted

2011年10月25日 没有评论

出现rsync: failed to set times on “xxxx”: Operation not permitted的原因大致是对文件夹(或文件)xxxx没有操作权限。如果执行同步的用户是root,是不会有这样的问题,但是rsync也可以不使用root用户来进行同步,不使用root用户的情况下,即使使用了-o,-g,同步到目的文件夹的文件用户和组都变成了同步使用的用户,但是用-p后文件权限可以保留。当目的文件夹(或文件)xxxx事后做过修改使owner不是rsync使用的用户,即使xxxx的权限是777,也会出现上述错误。

分类: Linux 标签: , ,

PHP Warning: date(): It is not safe to rely on the system’s timezone settings

2011年10月25日 没有评论

通过观察nginx的错误日志,发现大量的如下错误:

PHP Warning: date(): It is not safe to rely on the system’s timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected ‘Asia/Chongqing’ for ‘CST/8.0/no DST’ instead in

通过搜索,发现从php5.3 ,当对使用date()等函数时,如果timezone设置不正确,在每一次调用时间函数时,都会产生E_NOTICE 或者 E_WARNING 信息。知道了问题的根源,解决的方法有三种,任选一种即可。

一、在页头使用date_default_timezone_set()设置 date_default_timezone_set(‘PRC’);
二、在页头使用ini_set(‘date.timezone’,'Asia/Shanghai’);
三、修改php.ini。打开php5.ini查找date.timezone 去掉前面的分号修改成为:date.timezone =PRC

注意:上述设置都是针对中国大陆来设置的,同时PRC也可以用Asia/Shanghai,Asia/Chongqing,Asia/Urumqi来代替。

分类: Linux 标签: ,

rsync同步隐藏文件和排除文件

2011年10月21日 没有评论

rsync同步命令的基本写法

rsync 命令选项 源目录 目标目录

假如源目录写为 /var/www/就会把该目录下所有文件同步到目标目录,如果写为/var/www/*,那么当前目录下的隐藏文件(文件夹名或文件名是以”.”号开头)则不会被同步,不过子目录中的隐藏文件还是会被同步。

假设需要排除某个文件(或文件夹),可以用–exclude来指定,例如需要排除源目录下的dir1文件夹,可以写为:

/usr/bin/rsync -vzrtopg –exclude=dir1 /var/www/src/ /var/www/dest

可以同时排除多条,例如:

/usr/bin/rsync -vzrtopg –exclude=dir1 –exclude=dir2 /var/www/src/ /var/www/dest

除了上述方法,还可以通过–exclude-from来指定,例如:

/usr/bin/rsync -vzrtopg –exclude-from=exclude.list /var/www/src/ /var/www/dest

exclude.list文件中指定需要排除的列表,例如:

dir1
[0-9]*
dir2/.[a-z0-9]*
.svn

含义是排除/var/www/dir1、/var/www目录下所有以数字作为名字的文件和文件夹、/var/www/dir2/目录下的隐藏文件和/var/www目录下所有.svn文件夹,包括其子目录中的.svn文件夹。

注意:exclude和exclude-from前面都是有两个减号,如果漏写了一个,命令行不会报错,但是不能排除执行的文件或文件夹。

linux中配置的crontab不执行

2011年9月26日 1 条评论

在linux下提供的crontab可以很轻松的帮我们完成一些需要定时处理的任务。在某些系统下,明明通过terminal可以执行的动作,加入到crontab后却没有执行,检查配置也没有任何问题。最终发现是由于cron的运行环境(包括path等)可能不是和登陆的当前用户一致造成的,所以在配置crontab时,建议命令用完整路径。

分类: Linux 标签: ,

linux中去掉敲命令时用 tab 发出“嘀”的声音

2011年9月22日 没有评论

在linux下可能tab键是用的最多一个吧。在使用ls,cd等命令时使用tab可以帮我们减少很多键盘输入,比如我们要进入一个很长目录名的目录下,可能只需要敲入前几个字符,然后使用tab,这时整个目录名都帮补充出来了。如果有几个前面都相同的目录,它也会提示出来,有些系统下还会发出嘀”的响声,如果不喜欢这个声音,可以通过修改配置去掉它。用vi 编辑 /etc/inputrc 文件, 去掉 “set bell-style none”前面的#号,重启动系统即可!

分类: Linux 标签:

linux下删除文件名乱码文件

2011年9月22日 没有评论

linux下通过rm命令来删除文件,但是如果要删除文件名乱码的文件,就不能直接使用rm命令了,因为压根就无法输出文件名来。不过借助find命令可以实现对其删除。在linux下对于每个文件都一个对应的不变的inode号,使用 ls -li 可以查看到文件的inode号,同时find可以根据inode号来查找,另外find命令中可以执行其他的命令。删除的步骤如下:

  1. 通过ls -li 获取要删除乱码文件名文件的inode号,比如得到的是 123456
  2. 执行删除
find ./ -inum 123456 -exec rm -rf {} \;

注意:“{}”后要空一格再加上“\;”。

分类: Linux 标签: , , ,

find命令错误提示路径必须在表达式之前

2011年9月22日 没有评论

在某些版本的linux下,通过find查找当前目录下所有后缀名jpg的文件,命令为

find ./ -iname *.jpg

会出现“find: 路径必须在表达式之前”的错误提示。解决的方法有两种

  1. 使用转义符把*转义,即  \*.jpg
  2. 用引号引起来 ,即 “*.jpg”

注意:如果需要把find 的结果提交给while,例如:

`echo find ./ -iname "\*.jpg"` | while read f
do
   #do something
done

则既需要转义符,也需要引号

分类: Linux 标签: ,

无觅相关文章插件,快速提升流量