June 15, 2011
Linux环境变量的设置和查看方法
"1. 显示环境变量HOME\n$ echo $HOME\n/home/redbooks\n2. 设置一个新的环境变量hello\n$ export HELLO=”Hello!”\n$ echo $HELLO\nHello!\n3. 使用env命令显示所有的环境变量\n$ env\nHOSTNAME=redbooks.safe.org\nPVM_RSH=/usr/bin/rsh\nShell=/bin/bash\nTERM=xterm\nHISTSIZE=1000\n…\n4. 使用set命令显示所有本地定义的Shell变量\n$ set\nBASH=/bin/bash\nBASH_VERSINFO=([0]=”2″[1]=”05b”[2]=”0″[3]=”1″[4]=”release”[5]=”i386-redhat-linux-gnu”)\nBASH_VERSION=’2.05b.0(1)-release’\nCOLORS=/etc/DIR_COLORS.xterm\nCOLUMNS=80\nDIRSTACK=()\nDISPLAY=:0.0\n…\n5. 使用unset命令来清除环境变量\nset可以设置某个环境变量的值。清除环境变 …"
June 15, 2011
Linux下使用Iptraf进行网络流量的分析
"下面的教程我个人安装的时候,总是失败,在/usr/local/bin目录里没有iptraf这个文件,没有办法直接用\nyum -y install iptraf\n命令安装成功了.\nIptraf是一款Linux环境下,监控网络流量的一款绝佳的免费小软件,特别是安装到防火墙上,与Iptables一起工作,监控流经防火墙的网络异常,效果非常好。\n我的安装配置环境是redhat 9.0\n一、软件下载\nIptraf的最新版本是2.7.0,可以从下面的地址下载\n二、安装环境需要\n— gcc 2.7.2.3 or later\n— GNU C (glibc) development library 2.1 or later\n— ncurses development libraries 4.2 or later\n可以在Linux下执行:\n# rpm -qa | grep gcc\n# rpm -qa | grep glibc\n# rpm -qa | grep ncurses\n如果没有,则请安装。\n三、安装\n从网站下载软件包,将下载得到的Iptraf-2.7.0.tar.gz上传到你所要安装的机器上,我的是 …"
June 13, 2011
CentOS 5.5 Nginx+JDK+MySQL+Tomcat(jsp)
"一.安装Nginx\nhttp://blog.haohtml.com/archives/6051\n二.安装jdk\nhttp://blog.haohtml.com/archives/9765\n三、安装apache tomcat 1、下载apache tomcat并安装tomcat\nwget http://labs.renren.com/apache-mirror/tomcat/tomcat-7/v7.0.14/bin/apache-tomcat-7.0.14.tar.gz tar zxvf apache-tomcat-7.0.14.tar.gz mv apache-tomcat-7.0.14 /usr/local/tomcat cp -rf /usr/local/tomcat/webapps/* /www/\n2、配置tomcat的server.xml文件,并启动或停止tomcat\n#vim /usr/local/tomcat/conf/server.xml\n查找appBase=”webapps”,修改为appBase=”/www”,其中/www 即为网页的根目录。 安装完成后,启 …"
June 13, 2011
CentOS下配置Java环境JDK
"**第一步:**查看Linux自带的JDK是否已安装 (卸载centOS已安装的1.4)\n\u0026lt;1\u0026gt;# rpm -qa|grep jdk ← 查看jdk的信息或直接执行 或 # rpm -q jdk\n或 # java -version # rpm -qa | grep gcj ← 确认gcj的版本号 # yum -y remove java-1.4.2-gcj-compat ← 卸载gcj\n第二步:安装JDK \u0026lt;1\u0026gt;从SUN下载jdk-1_5_0_14-linux-i586-rpm.bin或jdk-1_5_0_14-linux-i586.bin\njdk1.6的下载地址: 在/usr下新建java文件夹,将安装包放在/usr/java目录下\n# mkdir /usr/java\n\u0026lt;2\u0026gt;安装JDK # cd /usr/java\n①jdk-1_5_0_14-linux-i586-rpm.bin文件安装 # chmod 777 jdk-1_5_0_14-linux-i586-rpm.bin ← 修改为可执行 # …"
June 12, 2011
数据中心TCP优化:同时满足低时延和高吞吐量
"大的数据中心有成千上万台服务器,服务器之间大都用TCP来协作并传输数据,最终为用户提供服务。那数据中心的TCP工作得如何呢? 斯坦福大学和微软的两人对Bing服务的6000多台服务器集群在TCP方面的数据进行研究,用的数据是一个月的日志,包括应用、套接字级别和包级别的日志,压缩完后大概是150T的数据。老外真是牛!\n一、发现的问题 1、突发的丢包现象 2、部分包传输时延大,90%的传输RTT值小于1毫秒,10%的RTT值在1到15毫秒之间\n二、可能的原因 交换机是是先存储后转发数据包的,在一个端口上缓冲的数据包太多时,会有两种结果,一是交换机会丢掉新过来的包,二是已经缓冲的包的转发时延变大。这就是造成上面问题的原因。\n下面是两种场景,第一种是如下图: 多台工作机器把数据发给一台负责聚合的机器,这个有时会造成聚合机器所连接的交换机端口上缓冲太多的数据包,因缓冲区不多了而丢弃新收到的包。这些有些工作机器会出现超时重发。\n另一种场景如下图:\n两种机器同时给另一台机器发数据,其中一台发送的数据量很大,这样使得接收者上连的交换机端口缓冲区缓冲了大量数据包,使得另一个发送者发送的少量数据包产生比较 …"
June 9, 2011
CentOS访问Windows共享文件夹的两种方法
"1 在地址栏中输入下面内容:\nsmb://Windows IP/Share folder name\nsmb为Server Message Block协议的简称,是一种IBM协议,运行在TCP/IP协议之上。\n从Windows 95开始,Microsoft Windows都提供了Server和Client的SMB协议支持,Microsoft为Internet提供了SMB开源版本,及CIFS(Common Internet File System),通用文件系统。\n2 将Windows的共享文件夹挂载到本地\n在终端中输入命令:\nmount -t cifs -o username=”Admin”,password=”” //192.168.1.1/ShareFolder /mnt/MyShare\n注意命令行中的空格和逗号,空密码也可以。\n此命令就是将192.168.1.1上的共享文件夹ShareFolder 挂载到本地的/mnt/MyShare文件夹,执行完,就可在MyShare里看到ShareFolder里的内容。\n删除挂载用命令:umount /mnt/MyShare\n摘自:"
June 9, 2011
[教程]centos连接windows远程桌面
"大家都知道linux下都是用rdesktop来连接windows的远程桌面。注意只能在centos下的gui模式下运行,如果在cli下运行,则会提示以下错误:\nAutoselected keyboard map en-us\nERROR: Failed to open display:\n所以先安装rdesktop\n可以通过yum list看看有没有rdesktop包,可以看到有rdesktop.i386-1.4.1-4\n下面我们直接安装:\nshell\u0026gt; yum install rdesktop.i386\n----过程省略—-\n安装完成后我们直接用\nshell\u0026gt; rdesktop -a 16 192.168.1.5:3389来连接windows远程桌面。 -a 16表示用16位颜色打开桌面,后面的ip地址是windows服务器地址 :3389是windows的远程桌面的端口号,其实默认的3389可以省略,如果调整了windows远程桌面的端口,这里就必须带上。\n整个地球都知道rdesktop,有了它,我们可以从Solaris或者Linux使用Windows,当然Windows要 …"
June 9, 2011
为CentOS配置snmp代理(转)
"切换到系统管理员帐户\n安装snmp 确认snmp代理已安装\nrpm -q net-snmp\n如果未安装,安装snmp\nyum install net-snmp\n设置开机自动运行snmp\n/sbin/chkconfig snmpd on\n配置snmp 编辑/etc/snmp/snmpd.conf\n更改团体名 查找如下行 # sec.name source community com2sec notConfigUser default public 将团体名public改为其它任意字段,例: com2sec notConfigUser default monit\n给予可读权限 查找如下行 # group context sec.model sec.level prefix read write notif access notConfigGroup “” any noauth exact systemview none none 将read权限systemview改为all,例: access notConfigGroup “” any noauth exact all none none …"
June 9, 2011
linux ifstat网卡流量监测
"在Linux/Unix监控系统网卡的实时流量,iftop是个不错的选择她可以详细到来源和目标及端口,iftop相比ifstat信息更加的丰富,但是如果只监控网卡的流量ifstat当然是最佳选择,可以从下载,她还提供了window版本。\n安装方法: http://blog.haohtml.com/archives/9671 ifstat——–报告接口状态,是一个网络流量监测程序。能查看网卡的流出和流入的字节. **简单描述:**ifstat就像iostat/vmstat描述其它的系统状况一样,是一个统计网络接口活动状态的工具\n参数: -l 监测环路网络接口(lo)。缺省情况下,ifstat监测活动的所有非环路网络接口。经使用发现,加上-l参数能监测所有的网络接口的信息,而不是只监测lo的接口信息,也就是说,加上-l参数比不加-l参数会多一个lo接口的状态信息。\n-a 监测能检测到的所有网络接口的状态信息。使用发现,比加上-l参数还多一个plip0的接口信息,搜索一下发现这是并口(网络设备中有一个叫PLIP (Parallel Line Internet Protocol). 它提供了并 …"
June 9, 2011
利用PHP操作Linux消息队列完成进程间通信
"当我们开发的系统需要使用多进程方式运行时,进程间通信便成了至关重要的环节。消息队列(message queue)是Linux系统进程间通信的一种方式。\n关于Linux系统进程通信的概念及实现可查看: http://www.ibm.com/developerworks/cn/linux/l-ipc/\n关于Linux系统消息队列的概念及实现可查看: http://www.ibm.com/developerworks/cn/linux/l-ipc/part4/ PHP的sysvmsg模块是对Linux系统支持的System V IPC中的System V消息队列函数族的封装。我们需要利用sysvmsg模块提供的函数来进进程间通信。先来看一段示例代码_1:\n01``\u0026lt;?php\n02\n03``$message_queue_key = ftok ( __FILE__ , 'a' );\n04\n05``$message_queue = msg_get_queue( $message_queue_key , 0666);\n06``var_dump( $message_queue );\n07 …"