July 8, 2011
linux下 lvm 磁盘扩容
"\u003cp\u003e打算给系统装一个oracle,发现磁盘空间不足。在安装系统的时候我选择的是自动分区,系统就会自动以LVM的方式分区。为了保证系统后期的可用性,建议所有新系统安装都采用LVM,之后生产上的设备我也打算这样做。\u003c/p\u003e\n\u003cp\u003e参于LVM基本介绍与常用命令请参考:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"http://blog.haohtml.com/wp-content/uploads/2011/07/lvm-pic.bmp\"\u003e\u003cimg src=\"http://blog.haohtml.com/wp-content/uploads/2011/07/lvm-pic.bmp\" alt=\"\"\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"http://blog.haohtml.com/wp-content/uploads/2011/07/lvm.jpg\"\u003e\u003cimg src=\"http://blog.haohtml.com/wp-content/uploads/2011/07/lvm.jpg\" alt=\"lvm\"\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eLVM结构图\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003e扩容之前的磁盘状况\u003c/strong\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e[root@localhost ~]# df -h\u003c/p\u003e\n\u003cp\u003e文件系统 容量 已用 可用已用%%挂载点\u003c/p\u003e\n\u003cp\u003e/dev/mapper/VolGroup-lv_root 5.3G 2.5G 2.6G 50% /\u003c/p\u003e\n\u003cp\u003etmpfs 538M 0 538M 0% /dev/shm\u003c/p\u003e\n\u003cp\u003e/dev/sda1 485M 30M 430M 7% /boot\u003c/p\u003e\n\u003cp\u003e[root@localhost ~]# fdisk -l\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eDisk /dev/sda: 8589 MB, 8589934592 bytes\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e……………\u003c/p\u003e\n\u003cp\u003eDevice Boot Start End Blocks Id System …\u003c/p\u003e\u003c/blockquote\u003e"
July 8, 2011
centos下安装新硬盘
"\u003cp\u003e下面的操作是在vmware下进行的.使用的是scsi硬盘.\u003c/p\u003e\n\u003cp\u003e一.新添加一个硬盘后,用fdisk -l查看的时候,没有发现新硬盘,后台重启了下linux.再次使用fdisk -l命令即可看发现新添加的硬盘.新使用大小为5G.\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"http://blog.haohtml.com/wp-content/uploads/2011/07/fdisk-l.bmp\"\u003e\u003cimg src=\"http://blog.haohtml.com/wp-content/uploads/2011/07/fdisk-l.bmp\" alt=\"\"\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e由于我们安装系统的时候用的一块scsi硬盘,SCSI接口设备是用sd命名的.所以第一块硬盘显示的是/dev/sda.当添加第二块scsi硬盘的时候,就成了/dev/sdb了.依次类推.如果使用的是 IDE 硬盘的话,则是 hda ,hdb,hdc…,同样依次类推.\u003c/p\u003e\n\u003cp\u003e二.使用fdisk进行分区\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e#fdisk /dev/sdb\u003c/p\u003e\u003c/blockquote\u003e\n\u003cpre tabindex=\"0\"\u003e\u003ccode\u003eDevice contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel\nBuilding a new DOS disklabel. Changes will remain in memory only,\nuntil you decide to write them. After that, of course, the previous …\u003c/code\u003e\u003c/pre\u003e"
July 8, 2011
CentOS下lvm分区简介
"\u003cp\u003eLVM 是逻辑盘卷管理器( Logical Volume Manager )的简称,是一种分区管理机制。 LVM 是建立在硬盘 和分区 之上的一个逻辑层,为文件系统屏蔽下层磁盘分区布局,从而提高磁盘分区管理的灵活性。\u003c/p\u003e\n\u003cp\u003e要配置LVM,可以按以下步骤进行:\u003c/p\u003e\n\u003cp\u003e1. 创建和初始化物理卷(Physical Volume),通过pvcreate建立pv,即pv阶段;\u003c/p\u003e\n\u003cp\u003e2. 添加物理卷到卷组(Volume Group),使用vgcreate加入多个pv成为vg,即vg阶段;\u003c/p\u003e\n\u003cp\u003e3. 在卷组上创建逻辑卷(logical volume),使用lvcreate划分vg,成为一个或多个lv,即lv阶段;\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"http://blog.haohtml.com/wp-content/uploads/2011/07/lvm-pic.bmp\"\u003e\u003cimg src=\"http://blog.haohtml.com/wp-content/uploads/2011/07/lvm-pic.bmp\" alt=\"\"\u003e\u003c/a\u003e 上图参考: \u003ca href=\"http://www.haohtml.com/server/unix/46733.html\"\u003ehttp://www.haohtml.com/server/unix/46733.html\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e具体思路是:将若干个磁盘分区连接为一个整块的卷组( Vloume group ),管理员可以在卷组上随意创建逻辑卷( logical volumes ),并进一步在逻辑卷上创建文件系统。\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003e物理卷( Physical Volume , PV )\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003ePV 在 LVM 系统中处于最底层,PV 一般是整个硬盘、或硬 …\u003c/p\u003e"
July 6, 2011
网络流量实时监控工具 nload
"\u003cp\u003e\u003cstrong\u003eLinux下nload的安装:\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003enload是个很好用的一个工具,功能也很强.只是相对单一,只能查看总的流量,不能像iptraf那样,可针对IP,协议等\n可以实时地监控网卡的流量,分Incoming,Outgoing两部分,也就是流入与流出的流量。同时统计当前,平均,最小,最大,总流量的值,使人看了一目了然,如下图\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"http://blog.haohtml.com/wp-content/uploads/2011/07/linux_nload.png\"\u003e\u003cimg src=\"http://blog.haohtml.com/wp-content/uploads/2011/07/linux_nload.png\" alt=\"\"\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e下载地址:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"http://sourceforge.net/project/showfiles.php?group_id=35865\"\u003ehttp://sourceforge.net/project/showfiles.php?group_id=35865\u003c/a\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003c/blockquote\u003e\n\u003cblockquote\u003e\n\u003cp\u003e#wget \u003ca href=\"http://cdnetworks-kr-1.dl.sourceforge.net/project/nload/nload/0.7.2/nload-0.7.2.tar.gz\"\u003ehttp://cdnetworks-kr-1.dl.sourceforge.net/project/nload/nload/0.7.2/nload-0.7.2.tar.gz\u003c/a\u003e\u003c/p\u003e\u003c/blockquote\u003e\n\u003cp\u003e#tar zxvf nload-0.7.2.tar.gz\u003c/p\u003e\n\u003cblockquote\u003e\n\u003c/blockquote\u003e\n\u003cblockquote\u003e\n\u003c/blockquote\u003e\n\u003cblockquote\u003e\n\u003cp\u003e#cd nload-0.7.2\u003c/p\u003e\u003c/blockquote\u003e\n\u003cblockquote\u003e\n\u003c/blockquote\u003e\n\u003cblockquote\u003e\n\u003cp\u003e#./configure –prefix=/usr/local/nload \u0026amp;\u0026amp; make \u0026amp;\u0026amp; make install\u003c/p\u003e\u003c/blockquote\u003e\n\u003cp\u003e安装好以后,来看看效果\u003c/p\u003e\n\u003cblockquote\u003e\n\u003c/blockquote\u003e\n\u003cblockquote\u003e\n\u003cp\u003e#/usr/local/nload/bin/nload …\u003c/p\u003e\u003c/blockquote\u003e"
July 5, 2011
关于Mysql的Qcache优化
"\u003cpre tabindex=\"0\"\u003e\u003ccode\u003e生产环境下建议关闭此功能,因绝大部分场景下此选项会产生效率低下问题。\n\u003c/code\u003e\u003c/pre\u003e\u003cp\u003e\u003cstrong\u003equery_cache_size = 64M\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e指定MySQL查询缓冲区的大小。可以通过在MySQL控制台执行以下命令观察:\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e# \u0026gt; SHOW VARIABLES LIKE ‘%query_cache%’;\n# \u0026gt; SHOW STATUS LIKE ‘Qcache%’;\u003c/p\u003e\u003c/blockquote\u003e\n\u003cp\u003e# 如果Qcache_lowmem_prunes的值非常大,则表明经常出现缓冲不够的情况;\n如果Qcache_hits的值非常大,则表明查询缓冲使用非常频繁,如果该值较小反而会影响效率,那么可以考虑不用查询缓冲;\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eQcache_free_blocks\u003c/strong\u003e,如果该值非常大,则表明缓冲区中碎片很多。\u003c/p\u003e\n\u003cp\u003e“Qcache_free_blocks”:Query Cache 中目前还有多少剩余的blocks。如果该值显示较大,则说明Query Cache 中的内存碎片较多了,可能需要寻找合适的机会进行整理。\n● “Qcache_free_memory”:Query Cache 中目前剩余的内存大小。通过这个参数我们可以较为准确的观察出当前系统中的Query …\u003c/p\u003e"
July 4, 2011
Ubuntu 网络配置ip.重启
"\u003cp\u003e\u003cstrong\u003e(1)Ubuntu Server修改IP\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e配置文件地址 /etc/network/interfaces\u003c/p\u003e\n\u003cp\u003e使用编辑器打开\u003c/p\u003e\n\u003cp\u003e加入以下语句:\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eauto eth0\niface eth0 inet static\naddress 192.168.1.11 #IP地址\nnetmask 255.255.255.0 #子网掩码\ngateway 192.168.1.1 #网关\u003c/p\u003e\u003c/blockquote\u003e\n\u003cp\u003e\u003cstrong\u003e(2)Ubuntu Server修改DNS\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e配置文件地址 /etc/resolv.conf\u003c/p\u003e\n\u003cp\u003e使用编辑器打开\u003c/p\u003e\n\u003cp\u003e改为如下内容:\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003esearch localdomain\nnameserver 202.96.128.86 希望修改成的DNS\nnameserver 202.96.128.166 备用DNS\u003c/p\u003e\u003c/blockquote\u003e\n\u003cp\u003e\u003cstrong\u003e(3)Ubuntu Server最后一步,也是最重要的一步。\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e在rc.local里加入这个重启网络配置的命令:\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003esudo /etc/init.d/networking restart\u003c/p\u003e\u003c/blockquote\u003e\n\u003cp\u003e** (4) 设置主机名称(hostname)**\u003c/p\u003e\n\u003cp\u003e查看当前主机的主机名称:\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003esudo /bin/hostname\u003c/p\u003e\u003c/blockquote\u003e\n\u003cp\u003e修改名称:\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003esudo …\u003c/p\u003e\u003c/blockquote\u003e"
July 4, 2011
centos搭建jira bug问题追踪系统
"\u003cp\u003e\u003cstrong\u003e一. 安装jdk\u003c/strong\u003e\n参考:\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003e二. 建立JIRA数据库\u003c/strong\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003emysql\u0026gt;create database jiradb character set utf8;\nmysql\u0026gt;grant all on jiradb.* to `jira`@`localhost` identified by ‘jira’;\u003c/p\u003e\u003c/blockquote\u003e\n\u003cp\u003e\u003cstrong\u003e三.JIRA 安装\u003c/strong\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003ewget \u003ca href=\"http://wpc.29c4.edgecastcdn.net/8029C4/downloads/software/jira/downloads/atlassian-jira-enterprise-4.2.4-b591-standalone.tar.gz\"\u003ehttp://wpc.29c4.edgecastcdn.net/8029C4/downloads/software/jira/downloads/atlassian-jira-enterprise-4.2.4-b591-standalone.tar.gz\u003c/a\u003e\ntar zxvf atlassian-jira-enterprise-4.2.4-b591-standalone.tar.gz\nmv atlassian-jira-enterprise-4.2.4-b591-standalone /usr/local/jira\u003c/p\u003e\u003c/blockquote\u003e\n\u003cp\u003e创建jira.home文件夹\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003emkdir -p /usr/local/jira_home\u003c/p\u003e\u003c/blockquote\u003e\n\u003cp\u003e修改vi …\u003c/p\u003e"
July 1, 2011
关于C语言中的extern
"\u003cp\u003ec语言有三种链接,外部链接,内部链接和无链接。\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e外部链接:对构成程序的所有文件可用,如函数和全局变量具有外部链接。\n内部链接:仅在声明他们的文件中是已知的。如声明为static的文件域具有内部链接。\n无连接:仅在自己的块中已知,其它地方没有办法访问,如局部变量。\u003c/p\u003e\u003c/blockquote\u003e\n\u003cp\u003eextern主要作用是:声明在程序的其它地方使用外部链接声明的对象。\n声明:表述对象的名称和类型。\n定义:为对象分配存储空间。\u003c/p\u003e\n\u003cp\u003e例如:\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eint main(void)\n{\nextern int a, b;\nprintf(“%d %d”, a, b);\ngetch();\nreturn 0;\n}\u003c/p\u003e\u003c/blockquote\u003e\n\u003cp\u003e/* 全局变量定义到了main之后 */\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eint a = 10, b = 20;\n程序输出10 20。\u003c/p\u003e\u003c/blockquote\u003e\n\u003cp\u003e通过extern声明变量a和b,可以在a和b定义之前使用,编译器不会提示错误。\u003c/p\u003e\n\u003cp\u003eextern最重要的用途是多文件程序,c允许程序分散在多个文件中,分别编译,链接到一起。\n我们在devc++中新建立一个c工程,然后在添新建一个单元保存名称为cunclx3.c\u003c/p\u003e\n\u003cp\u003emain.c的程序代码:\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e#include\n#include\nint …\u003c/p\u003e\u003c/blockquote\u003e"
June 30, 2011
redis入门教程
"\u003cp\u003ewindow平台下的redis dll文件下载: \u003ca href=\"https://github.com/char101/phpredis/downloads\"\u003ehttps://github.com/char101/phpredis/downloads\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eRedis 根据 5 种不同的数据类型来操作数据对象:\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eString(字符串)\nSets(集合)\nzsets( 排序后的sets集合)\nList(列表)\nhash(哈稀)\u003c/p\u003e\u003c/blockquote\u003e\n\u003ch2 id=\"操作-string-类型的值\"\u003e操作 String 类型的值:\u003c/h2\u003e\n\u003cp\u003eCommand\u003c/p\u003e\n\u003cp\u003eParameters\u003c/p\u003e\n\u003cp\u003eDescription\u003c/p\u003e\n\u003cp\u003eSET\u003c/p\u003e\n\u003cp\u003ekey value\u003c/p\u003e\n\u003cp\u003eSet a key to a string value\u003c/p\u003e\n\u003cp\u003eGET\u003c/p\u003e\n\u003cp\u003ekey\u003c/p\u003e\n\u003cp\u003eReturn the string value of the key\u003c/p\u003e\n\u003cp\u003eGETSET\u003c/p\u003e\n\u003cp\u003ekey value\u003c/p\u003e\n\u003cp\u003eSet a key to a string returning the old value of the key\u003c/p\u003e\n\u003cp\u003eMGET\u003c/p\u003e\n\u003cp\u003ekey1 key2 … keyN\u003c/p\u003e\n\u003cp\u003eMulti-get, return the strings values of the keys\u003c/p\u003e\n\u003cp\u003eSETNX\u003c/p\u003e\n\u003cp\u003ekey\u003c/p\u003e\n\u003cp\u003evalue Set a key to a string value if the key does not …\u003c/p\u003e"
June 30, 2011
is not in the sudoers file. This incident will be reported的解决办法
"\u003cp\u003e\u003cstrong\u003e在一般用户下执行sudo命令提示xxx is not in the sudoers file. This incident will be reported.解决方法:\u003c/strong\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e$whereis sudoers\n/etc/sudoers\u003c/p\u003e\u003c/blockquote\u003e\n\u003cp\u003e有时候我们只需要执行一条root权限的命令也要su到root,是不是有些不方便?这时可以用sudo代替。默认新建的用户不在sudo组,需要编辑/etc/sudoers文件将用户加入,该文件只能使用visudo命令,\u003c/p\u003e\n\u003col\u003e\n\u003cli\u003e\n\u003cp\u003e首先需要切换到root, su – (注意有- ,这和su是不同的,在用命令”su”的时候只是切换到root,但没有把root的环境变量传过去,还是当前用乎的环境变量,用”su -“命令将环境变量也一起带过去,就象和root登录一样)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e然后 visudo 或者 vim /etc/sudoers, visudo 这个和vi的用法一样,由于可能会有人不太熟悉vi,所以简要说一下步骤\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ol\u003e\n\u003cp\u003e移动光标,到一行 root ALL=(ALL) ALL 的下一行,添加一行\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eyour_user_name ALL=(ALL) ALL\u003c/p\u003e\u003c/blockquote\u003e\n\u003cp\u003e然后保存退出! …\u003c/p\u003e"
June 29, 2011
linux的vm相关参数介绍
"\u003col\u003e\n\u003cli\u003e保证linux有足够的物理内存,可以调整vm的如下参数\u003c/li\u003e\n\u003c/ol\u003e\n\u003cp\u003evm.min_free_kbytes=409600;//默认值是3797,保证物理内存有足够空闲空间,防止突发性换页\nvm.vfs_cache_pressure=200;//默认是100,增大这个参数设置了虚拟内存回收directory和i-node缓冲的倾向,这个值越大。越易回收\nvm.swappiness=40 //缺省60,减少这个参数会使系统尽快通过swapout不使用的进程资源来释放更多的物理内存\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003e一般在rac的配置环境中配置这三个参数,可以防止换页引起节点短暂无响应,导致节点重启\u003c/strong\u003e\n2. 改善io系统的性能\novercommit_memory = 0\nvm.overcommit_ratio = 10 //默认值是50,用于虚拟内存的物理内存的百分比\nvm.dirty_ratio = 20 //默认值是40,为了保持稳定,持续的写入,把这个值调整的小一些,经验值是20\u003c/p\u003e\n\u003cp\u003evm.dirty_background_ratio //缺省数值是500,也就是5秒,如果系统要求稳定持续的写,可以适当降低该值,把峰值的写操作平均多 …\u003c/p\u003e"
June 29, 2011
git常用命令总结[原创]
"\u003cp\u003e\u003cstrong\u003etxt笔记一篇: \u003ca href=\"http://blog.haohtml.com/wp-content/uploads/2011/06/git.txt\"\u003egit常用命令点击查看\u003c/a\u003e\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e深入理解学习Git工作流(git-workflow-tutorial) \u003ca href=\"http://segmentfault.com/a/1190000002918123\"\u003ehttp://segmentfault.com/a/1190000002918123\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e以下教程主要参考" \u003ca href=\"http://blog.haohtml.com/wp-content/uploads/2011/04/git-tut.pdf\"\u003eGit-tutor(Git使用指南):\u003c/a\u003e 和 \u003ca href=\"http://blog.haohtml.com/archives/9066\"\u003ehttp://blog.haohtml.com/archives/9066\u003c/a\u003e"实用指南而整理,第3章几乎直接在复制过来的.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003e相关教程:\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e在 CentOS 装 Git: \u003ca href=\"http://blog.haohtml.com/archives/10093\"\u003ehttp://blog.haohtml.com/archives/10093\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e在FreeBSD下安装Git: \u003ca href=\"http://blog.haohtml.com/archives/10065\"\u003ehttp://blog.haohtml.com/archives/10065\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003esvn git 的windows客户端: \u003ca href=\"http://blog.haohtml.com/archives/10069\"\u003ehttp://blog.haohtml.com/archives/10069\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e第一章 Git的基本操作方法\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003e一.初始化仓库\u003c/strong\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003egit init\u003c/p\u003e\u003c/blockquote\u003e\n\u003cp\u003e此时会在当前目录*假如为($WORK)生成一个.git的目录文件.这个.git目录就是Git仓库.其中存放的是我们所提交的文档索引内容,Git 可基于文档索引内容对其所管理的文档进行内容追踪, …\u003c/p\u003e"
June 29, 2011
如何查看自己的电脑是否是64位?
"\u003cp\u003e\u003cstrong\u003e2种方式:\u003c/strong\u003e\n一、开始>运行中输入“cmd”,然后在命令提示符窗口中输入“\u003cstrong\u003esysteminfo\u003c/strong\u003e”,如果您的系统是64位的,会在\n“OS 名称: Microsoft Windows XP Professional” 一行后明确标示出“x64 Edition”,否则您的系统就是32位的。\u003c/p\u003e\n\u003cp\u003e这个命令比较实用的,值很收藏.\u003c/p\u003e\n\u003cp\u003e二、开始\u0026gt;运行中输入“winver”,如果您的系统是64位的,同样会明确标示出“x64 Edition”。\u003c/p\u003e"
June 28, 2011
在 CentOS 装 Git
"\u003cp\u003e在 Ubuntu 上安装 Git 非常的简单,只需要:\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003esudo apt-get install git-core\u003c/p\u003e\u003c/blockquote\u003e\n\u003cp\u003e但是 CentOS 默认的 yum 源中没有 Git,只能下载 RPM 包安装,确保已安装了依赖的包\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003esudo yum -y install curl curl-devel zlib-devel openssl-devel perl cpio expat-devel gettext-devel perl-ExtUtils-MakeMaker perl-CPAN tk\u003c/p\u003e\u003c/blockquote\u003e\n\u003cp\u003e安装最新的 Git\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e$ wget \u003ca href=\"http://www.codemonkey.org.uk/projects/git-snapshots/git/git-latest.tar.gz\"\u003ehttp://www.codemonkey.org.uk/projects/git-snapshots/git/git-latest.tar.gz\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e$ tar xzvf git-latest.tar.gz\u003c/p\u003e\n\u003cp\u003e$ cd git-{date}\u003c/p\u003e\n\u003cp\u003e$ autoconf\u003c/p\u003e\n\u003cp\u003e$ ./configure –with-curl=/usr/local\u003c/p\u003e\n\u003cp\u003e$ make\u003c/p\u003e\n\u003cp\u003e$ sudo make install\u003c/p\u003e\u003c/blockquote\u003e\n\u003cp\u003e检查版本\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e$ git –version\u003c/p\u003e\n\u003cp\u003egit version 1.7.3.GIT\u003c/p\u003e\u003c/blockquote\u003e\n\u003cp\u003e\u003cstrong\u003e常 …\u003c/strong\u003e\u003c/p\u003e"
June 28, 2011
node.js在linux下的安装教程
"\u003cp\u003e\u003cstrong\u003e一.安装node.js\u003c/strong\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003ewet \u003ca href=\"http://nodejs.org/dist/node-v0.4.8.tar.gz\"\u003ehttp://nodejs.org/dist/node-v0.4.8.tar.gz\u003c/a\u003e\ntar zxvf node-v0.4.8.tar.gz\ncd node-v0.4.8\n./configure –prefix=/usr/local/node\nmake\nmake install\u003c/p\u003e\u003c/blockquote\u003e\n\u003cp\u003e\u003cstrong\u003e二.测试\u003c/strong\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e创建test.js文件,内容如下:\nvar http = require(‘http’);\nhttp.createServer(function (req, res) {\nres.writeHead(200, {‘Content-Type’: ‘text/plain’});\nres.end(‘Hello World\\n’);\n}).listen(1337, “127.0.0.1”);\nconsole.log(‘Server running at http://127.0.0.1:1337/’);\u003c/p\u003e\u003c/blockquote\u003e\n\u003cp\u003e执行:\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003enode test.js\u003c/p\u003e\u003c/blockquote\u003e\n\u003cp\u003e在浏览器里输入 http://127.0.0.1:1337/,可以看到 “Hello World“字样,即表示安装成功!注意后面不能加文件 …\u003c/p\u003e"