Linux
xinhaozheng
skype:pto_georgezheng
xinhaozheng#gmail.com
展开
-
linux 将tar文件解压到指定的目录下
如果在使用tar解压时不解压到当前目录面是解压到指定的目录下,先用cd命令当然可以,但是如果你又不想改变当前工作目录时,可以使用tar的 -C参数tar -xvvf /source/tarfile.tar -C /target 当然了要确保目标目录存在。原创 2012-04-07 18:07:04 · 9027 阅读 · 1 评论 -
magento -- 优化magento速度时想起的
一直在不断的尝试优化提升magento的速度,在论坛中看到有人提到直接调用google的js文件.相信对magento稍微熟悉的人都对magento预装prototype和script.aculo.us这两个js库感到苦恼.magento的速度慢某种意义上说,也可以归功于这个问题.如果你有使用yslow或者google的page speed插件,测试一下你的magento站点,其实光就这两个库的js文件的加载有时候都要用上12s以上.毫不夸张.就是你使用压缩版时间或者把所以的文件综合到一个js文件中,文件的原创 2010-07-27 23:54:00 · 2004 阅读 · 0 评论 -
Linux -- 测试sendmail邮件发送
又碰到邮件问题,在magento前台注册新用户,下订单都没有收到邮件。但是提示都是说正常。 直接在ssh中使用下列命令测试,连接超时: echo "Subject: test" | /usr/lib/sendmail -v xinhaozheng(at)gmail.com(注:很多人在测试时直接把命令复制进去测试,导致我收到了N多的测试邮件。) 提示: WARN原创 2010-04-29 09:41:00 · 13851 阅读 · 0 评论 -
linux -- 批量替换多个文件中的某个字符串
在linux的日常服务器维护站点维护中,经常需要批量操作一部分文件,比如数据库用户的资料变更,那么所以相关站点的数据库配置文件要相应的修改。大家都知道,linux下面几乎所有的配置文件都是纯粹的文本文件,所以这其实就是一个基本的文本操作。一台服务器上有上百个甚至上千个的网站。如果我们一个个来修改不是不可以,但是那也实在太恐怖而且太脑残了。 那如何实现呢,比如我要批量修改50个用magent原创 2010-04-14 10:29:00 · 1939 阅读 · 0 评论 -
linux -- 搜索目录下所有具有某个字符串的文件夹
如何找出一个目录下包含某个字符串的所有文件?linux提供的grep命令可以很快做到: 命令格式: grep 要搜索的字符串 目录路径(相对或绝对路径都可以) 如grep block app/design/frontend/default/coow/layout/* 这是输出的一部分: app/design/frontend/default/co原创 2009-11-06 10:33:00 · 2324 阅读 · 0 评论 -
linux -- 禁用ipv6模块
在使用netstat -antp时会看到输出的IP地址有的前面会带有::ffff前缀.关闭掉ipv6模块就可以让IP以IPV4的格式显示: 在/etc/modprobe.conf中添加下面两行,然后重启系统:alias ipv6 offalias net-pf-10 off原创 2009-10-28 20:14:00 · 1223 阅读 · 0 评论 -
linux -- 使用DOS-Deflate防止DOS/DDO攻击
所有的web服务器都有可以有受到Dos(DDos)攻击。这种攻击的目的就是在短时间内制造数量巨大的并发连接,从而使用服务器down机或消耗掉网络带宽和系统资源导致正常用户无法正常访问浏览网站。 DOS/DDOS攻击有很多各类,防范攻击的工具也有很多,比如防火墙。 (D)DoS-Deflate是一款免费的用来防御和减轻DDOS攻击。它通过netstat监测跟踪创建大量网络连接的I原创 2009-10-23 19:02:00 · 1420 阅读 · 0 评论 -
linux -- centos 下网卡配置文件ifcfg-eth*的选项说明
在cent-os中,你可以redhat-config-network工具非常方便的配置网络信息。如果你没有安装这个工具也没关系,你可以通过直接编辑/etc/sysconfig/network-scripts/下面的网卡配置文件来进行配置,下面说明一下网卡配置文件夹的各个选项参数: BOOTPROTO=, where is o原创 2009-10-07 13:44:00 · 3423 阅读 · 0 评论 -
linux -- linux系统维护关于ssh安全篇
由于公司的技术团队还末完成成长,目前所有的服务器的日常维护在是由我来处理。总是在secure日志中看见很多关于暴力破解ssh密码的尝试。虽然没有成功,但是也还是很烦。所有找时间一定要好好调整一下SSH的安全配置。至于换端口,禁止root远程登陆,清除无用用户账户这些是最基本的了。至少还要做两个方面: 第一,限制密码尝试次数,如果尝试次数过多,则使用iptables封掉此IP.(将参考htt原创 2009-09-29 22:47:00 · 902 阅读 · 0 评论 -
linux -- 找出linux下面文件大小超过某个数值的所有文件并输出列表
如果你发现硬盘快满了,想找出超过某个大小的所有文件夹,比如超过100M的所有文件,什么办? find . -type f -size +2000k -exec ls -lh {} /; 2> /dev/null | awk { print $NF ": " $5 } | sort -nrk 2,2这个命令将找出所有超过2M大小的文件。看一下拆开各步执行的结果就清楚原创 2009-09-29 22:25:00 · 3950 阅读 · 0 评论 -
linux -- 如何将系统命令或脚本的输出同时输出到屏幕和文件呢
<br />在对一个大型网站爬行时,比如是有10W以上的记录时,相信谁也不能保证考虑到各方面的因素,那么就非常有必要的记录下看爬行的过程。自然你会想说把命令的输出重定向到一个文件中,以后再查看。但是,如何在当前的屏幕上也能查看呢?<br /> <br />linux中提供了一个tee命令可以结合管道达到这个目的<br /> <br />比如 ls | tee -a log.txt<br /> <br />可以进 一步的使用下列命令记录下错误信息:<br /> <br />ls 2>&1 | tee -a l原创 2010-06-18 19:11:00 · 4193 阅读 · 0 评论 -
ssh - 如何配置ssh服务,使之使用public key authentication
ssh - 如何配置ssh服务,使之使用public key authentication原创 2010-06-25 12:17:00 · 15045 阅读 · 0 评论 -
linux -- 在linux控制台下,如何列出某个目录下的所有子目录
在linux控制台下,如何列出某个目录下的所有子目录?ls -p | grep "/"|cut -f1 -d /这行命令组合可以,但是如果当前目录下有链接就会有问题了。 以下这个命令则只列出当前目录的所有子目录ls -d */|cut -f1 -d / 下在这个可以列出包含当前目录和父目录的所有子目录lsd='ls -ld */ .*/' |cut -f1 -d /原创 2012-03-17 23:27:36 · 2633 阅读 · 0 评论 -
zen cart -- 批量替换掉多个zen cart网站中的某个模板文件或语言文件
特定的需求是要对所有的zen cart网站中的同一个文件进行修改,删除掉掉某个字符串.因为涉及到多语言,也就可能是要替换多个文件了.比如将includes/languages/****/modules/payment/abc.php*** 可能是english,german,french ... 下面这个是经过测试,在linux下,通过一行命令可以实现的将不同语言的文件复制到对应语原创 2012-03-17 23:39:29 · 2317 阅读 · 0 评论 -
LINUX -- 如何不用输入密码使用putty
如何不用输入密码使用putty?相信很多喜欢使用这个小工具的人会想到这个问题。什么样才能不输入密码呢?有几种方案:1,你可以使用改进过的putty,因为putty是开源的,有的人已经添加上了这个功能。2,你可以使用ssh 公钥/私钥 加密的方式来登陆,只要在服务器上设置一次,以后就不再需要输入密码了。这个方案应该是比较安全的,也是推荐的方法。3,就是利用putty的命令行功能put原创 2012-03-15 07:53:11 · 2085 阅读 · 0 评论 -
linux -- 如何在CSF中删除掉误封的IP
很多人使用CSF来配置linux服务器的防火墙。常碰到这样的问题,就是三次登陆失败后IP被封。这个时候密码对了也上不了SSH了。这个时候只能通过其它的IP登陆(adsl重新连接就可以换个IP或者用其它的服务器来登陆),进入SSH后,进入到/etc/csf (默认是这个目录)编辑文件csf.denyvi csf.deny 删除掉对应的ip之后你需要重新启动一下CSFc原创 2012-03-14 08:08:35 · 2250 阅读 · 0 评论 -
mysql数据库备份shell脚本
#/bin/bash# author george zheng xinhaozheng@gmail.com># 2012 - 03 - 12# version 1.2MYUSER="root"MYPASS=k943587@djj^&ASHOST="localhost"DATE=$(date -I)NAME=$(date +%Y%m%d-%H%M%S)BACKUP原创 2012-03-12 11:33:01 · 1954 阅读 · 0 评论 -
linux -- 设置一个cron任务记录下服务器的web请求数据
想看看web服务器到底最高峰的时候同时在线用户的数量,于是就简单的设置了一个 cron 任务,每隔10分钟记录一下对80端口的连接数,当然了要把同一个IP的链接当一个算了。另外,把时间写在第一次统计之前,以便参照。*/10 * * * * date '+%Y-%m-%d %H:%M:%S' >> /root/stat1 && netstat -antp|grep :80 |awk '{prin原创 2012-03-27 12:21:44 · 1953 阅读 · 0 评论 -
tar命令选择性压缩备份
用tar压缩文件进行备份时,肯定会遇到这种情况,就是有的文件,比如生成的表态页面,比如缓存,或者一些日志是不需要进行备份的。这个时候可以把这些文件在压缩时排除掉tar可以排除整个目录,也可以通过模式匹配排除掉所以扩展名的文件 tar -cvzf abc.tar.gz ./abc --exclude "./abc/xyz" --exclude "./abc/logs"原创 2012-03-02 14:24:01 · 2401 阅读 · 1 评论 -
linux -- 如何查看服务器所使用的linux版本
如何查看服务器所使用的linux版本,我说的不是内核的版本,而是说品牌或者厂家吧.有如下方法可以尝试: egrep '^[^#]*title' /boot/grub/menu.lst | grep -v 'memtest'dmesg | head -1uname -acat /proc/version原创 2010-11-06 16:57:00 · 1440 阅读 · 0 评论 -
PHP - 如何手工安装zend optimizer
<br />如果没有root权限可以采用下面这个方法进行安装.当然如果有,则不必这么麻烦,直接使用二制安装程序安装.<br /> <br />1. Download Zend Optimizer:<br /><br />$ cd ~<br />$ mkdir zend<br />$ cd zend<br />$ wget http://downloads.zend.com/optimizer/2.5.10/ZendOptimizer-2.5.10a-linux-glibc21-i386.tar.gz<br原创 2010-11-05 16:48:00 · 1783 阅读 · 0 评论 -
cent os -- 关闭掉无用的kernel模块
最近优化magento花了很多时间,当然也花了很多时间有linux系统的管理配置方面,总知是订单式的学习.用到什么就学习什么,之后再系统的总结.最近困扰了很久,虽然说很简单.就是如何去掉无用的一些kernel模块,这样也可以节省一些内存,虽然对magento来讲这点内存不算什么,当然对安全性也有点好处. google之后得到两种答案: echo alias net-pf-31 o原创 2009-09-22 20:29:00 · 972 阅读 · 0 评论 -
mysql -- mysql直接在两个数据库服务器之间备份数据库
服务器更新换代,涉及到多个网站的多个数据库,如何才能以最快的速度将站点搬家而不影响营动是个大问题.如果一下子备份所有的数据库然后再导入虽然是方便,但是在这段备份导入期间所产生的数据就没法得到.理论上讲是不可能完全保持完全一致的.只能尽量缩短时间.所以,最后决定还是一个一个的搬家,在流量比较小的时候进行. 那么如何能够通过一条命令就实现在一个服务器上操作而不需要在两个服务器之间切换操作,创建原创 2009-09-12 18:45:00 · 1833 阅读 · 0 评论 -
vsftp的一个莫名的问题
我不知道是不是我在vsftp中配置的问题,我今天在用另一个服务器通过ftp客户端连接到vsftp时,发现有的文件能下载有的文件不能下载。后来发现那些下载不了的文件名比较长,所以主改了一个试试,果然可以下载。原创 2009-05-15 20:14:00 · 594 阅读 · 0 评论 -
linux -- 批量重命名文件名
你有有碰到过这种情况,有一堆文件,文件名有一定的规律,你想根据文件中的某一部分来重命名所有的这些文件,当然一个一个改是可以的,或者写个PHP,或者shell程序也是很容易就可以搞定的。不过这样似乎有点小题大做了。我相信结合linux的文件命令(ls,find)和文本处理命令(vim,emacs,sed,awk)一定可以轻松实现。 经过多方测试终于通过下列命令可以实现将文件的扩展名由大写改定原创 2009-07-23 07:30:00 · 1267 阅读 · 0 评论 -
在CentOS 5 或Red Hat Enterprise Linux安装语言包
Q. Howdo I install Languages in Linux after installation? I don’t have anylanguage specific support installed but need to install the same. I’musing both RHEL 5 and CentOS 5. A.Yellow dog转载 2009-05-05 16:46:00 · 1620 阅读 · 0 评论 -
linux系统下的日志文件
日志文件日志文件记录了系统上各个时候发生的事件信息,包括kernel,service和应用程序的相关信息。不同的日志用来保存不同的信息。比如,一般会有一个默认的系统日志,一个用户记录安全信息的日志和一个记录cron任务的日志。当系统发生问题时,或者我们想知道有哪些人在什么时候试图进入我们的系统,我们可以求助于日志文件。有一些日志文件是通过syslogd守护进程控制的。你可以查看/etc/syslo原创 2009-04-29 18:02:00 · 851 阅读 · 0 评论 -
命令行下linux的账户管理
添加一个新的账户: useradd username 这样创建了一个暂时被锁定的账户,可以给这个账户设置密码来解锁后才能使用: passwd username useradd 还可以使用下列参数选项 -c comment comment可以是任意的字符串,通常是用来指定这个账户对应用户的全名-d home-dir 为此账户指定一个home目录,而不是默原创 2009-04-29 08:17:00 · 1752 阅读 · 0 评论 -
.htaccess文件
事实上.htaccess并不一定叫做.htaccess.你可以使用apache的 AccessFileName的指令来修改它为其它的名称,如: AccessFileName .config .htaccess文件是保存在某个目录下的一个配置文件,它提供了一个针对目录进行特定配置的途径.它使用的语法格式和apache的配置文件的差不多. 事实上,并不提倡使用.htacces原创 2009-03-03 22:23:00 · 1487 阅读 · 0 评论 -
ubuntu软件包管理工具之dpkg
dpkg是 debian类linux系统的一个软件包管理器。它可以安装,卸载或创建软件包,但是不像其它的软件包管理系统它不能自动下载并安装软件包,无法处理软件包之间的依赖关系。所以它的主要用途是用来管理已经安装在本地的软件包或都安装已经下载的deb软件包。要查看当前系统上已经安装的所有的软件包可以使用下列命令:dpkg -l系统上可以已经安装了不少安装包,所以上面的这个命令可以会输出很多内容,这个原创 2008-11-29 23:04:00 · 1396 阅读 · 0 评论 -
如何才能使用apt-get使用本地安装源进行安装
我们都喜欢使用apt-get,因为它实在是让我们大大的省心。但是,有时候我们会为网速慢,安装源不好而烦恼,所以我们可能会将一些常用软件包的deb文件保存在本地以备不时之需。当然了使用dpkg也可以直接来安装保存在本地的deb软件包,问题是它并不能处理软件包之间的依赖(dependence)关系,那么如何使用apt-get来安装保存在本地的软件包和源代码呢? 下面是如何让apt-ge原创 2009-02-03 16:50:00 · 9743 阅读 · 0 评论 -
linux系统下常用的基本命令 -- ls
这些是在linux下经常使用而且功能强大的命令,但是尽管你可能天天在用这些命令,但是我相信你并不完全了解这些命令,如果是这样,那么阅读后你必定会有所收获。先来看看ls命令。ls命令用来显示某个文件目录的内容。SYNOPSIS ls [OPTION]... [FILE]... 列出所有目录的内容。若末指定目录,则默认列出当前目录的内容,并对结果做适当排序。下面是此命令可用的参原创 2009-01-06 21:30:00 · 1050 阅读 · 0 评论 -
转帖:Linux Kernel: Speed Up Compilation
Linux Kernel: Speed Up Compilationdigg_url="http://zaher14.blogspot.com/2009/04/linux-kernel-speed-up-compilation.html";I have been having a hard time for the last few days in doing转载 2009-07-27 15:53:00 · 977 阅读 · 0 评论 -
php -- pecl 安装模块时出现"pear.php.net is using a unsupported protocal - This should never happen. install failed "错误
在使用pecl install apc给magento安装apc来加速时碰到了如下错误: pear.php.net is using a unsupported protocal - This should never happen.install failed 在尝试了pecl update-channelspecl channel-discov原创 2009-09-08 23:06:00 · 5080 阅读 · 0 评论 -
centos -- 系统service的管理
在centos下,可以通过下列命令来查看所有当前service的状态: service --status-all 一般可以通过 service 服务脚本名称 stop/start/restart 来控制相应service的运行上面的脚本是指保存在/etc/init.d/目录下的脚本或称守护进程对应的文件名,后面可用的指令通过都差不多,不过要根据实际情况来确定。原创 2009-06-23 11:45:00 · 6987 阅读 · 0 评论 -
magento -- 如何禁止国内用户或某个特定地区的用户访问你的 magento网店呢
magento -- 如何禁止国内用户或某个特定地区的用户访问你的 magento网店呢我不知道这些客户是出于什么目的要禁止国内的客户访问他们的magento网店,或许是不想让别人知道自己在做哪些产品,或者觉得他们不是潜在客户,但是不管是出于什么目的,既然有人出钱要实现这个功能,我们就不管那么多了。 大概思考了一下,有好几种实现的方案: 第一是在防火墙上做文章,把来自那个地原创 2009-06-19 14:19:00 · 2830 阅读 · 0 评论 -
linux发布了新内核,启动速度将更快(Kernel 2.6.30)
linux发布了新内核Kernel 2.6.30,启动速度将更快根据 Linux Magazine,Linux社区在Jun 10, 2009发布了新的内核 -- Kernel 2.6.30,由于采用了“快速启动补丁”,新的kernel有能力同步识别硬盘,Ext4文件系统将更加安全,而且Ext 3的性能大大提高。 Kernel 2.6.30诞生了,还是以穿着燕尾服的企鹅(原创 2009-06-11 08:40:00 · 913 阅读 · 0 评论 -
监视,测试站点的工具
从世界各地ping服务器: http://just-ping.com/index.php原创 2009-06-09 08:50:00 · 533 阅读 · 0 评论 -
good place to learn
学习管理和配置linux系统的好地方:linux administration原创 2009-06-05 11:03:00 · 582 阅读 · 0 评论 -
linux -- 备份硬盘mbr记录
在linux下面,可以通过下列命令轻松备份硬盘的mbr记录 dd if=/dev/sda of=/tmp/COPY_OF_MBR bs=512 count=1 if指定输入文件of指定输出文件(即要保存的文件名)bs指定读取的字节数count读取的块数原创 2009-06-02 14:14:00 · 611 阅读 · 0 评论