July 9, 2011
升级centos内核
"因要测试一些软件,需要2.6.30以上的内核,安装好CentOS 5.5,内核是2.6.18-194.el5.这次的升级还算比较顺利,具体的过程如下:\n[root@localhost ~]# uname -r 2.6.18-194.el5\n1.下载linux-2.6.30内核包到/usr/src目录\ncd /usr/src wget ftp://ftp.kernel.org/pub/linux/kernel/v2.6/linux-2.6.30.tar.gz tar -xzvf linux-2.6.30.tar.bz2 -C /usr/src cd linux-2.6.30 make mrproper 清除环境变量,即清除配置文件 make menuconfig 在菜单模式下选择需要编译的内核模块:\nnetworking support—\u0026gt;networking options—\u0026gt;network packet filtering framework(netfilter)\n(1).core netfilter configuration A 勾中”Netfilter …"
July 8, 2011
linux下 lvm 磁盘扩容
"打算给系统装一个oracle,发现磁盘空间不足。在安装系统的时候我选择的是自动分区,系统就会自动以LVM的方式分区。为了保证系统后期的可用性,建议所有新系统安装都采用LVM,之后生产上的设备我也打算这样做。\n参于LVM基本介绍与常用命令请参考:\nLVM结构图\n扩容之前的磁盘状况\n[root@localhost ~]# df -h\n文件系统 容量 已用 可用已用%%挂载点\n/dev/mapper/VolGroup-lv_root 5.3G 2.5G 2.6G 50% /\ntmpfs 538M 0 538M 0% /dev/shm\n/dev/sda1 485M 30M 430M 7% /boot\n[root@localhost ~]# fdisk -l\nDisk /dev/sda: 8589 MB, 8589934592 bytes\n……………\nDevice Boot Start End Blocks Id System\n/dev/sda1 * 1 64 512000 83 Linux\nPartition 1 does not end on cylinder boundary. …"
July 8, 2011
centos下安装新硬盘
"下面的操作是在vmware下进行的.使用的是scsi硬盘.\n一.新添加一个硬盘后,用fdisk -l查看的时候,没有发现新硬盘,后台重启了下linux.再次使用fdisk -l命令即可看发现新添加的硬盘.新使用大小为5G.\n由于我们安装系统的时候用的一块scsi硬盘,SCSI接口设备是用sd命名的.所以第一块硬盘显示的是/dev/sda.当添加第二块scsi硬盘的时候,就成了/dev/sdb了.依次类推.如果使用的是 IDE 硬盘的话,则是 hda ,hdb,hdc…,同样依次类推.\n二.使用fdisk进行分区\n#fdisk /dev/sdb\nDevice contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel Building a new DOS disklabel. Changes will remain in memory only, until you decide to write them. After that, of course, the previous content …"
July 8, 2011
CentOS下lvm分区简介
"LVM 是逻辑盘卷管理器( Logical Volume Manager )的简称,是一种分区管理机制。 LVM 是建立在硬盘 和分区 之上的一个逻辑层,为文件系统屏蔽下层磁盘分区布局,从而提高磁盘分区管理的灵活性。\n要配置LVM,可以按以下步骤进行:\n1. 创建和初始化物理卷(Physical Volume),通过pvcreate建立pv,即pv阶段;\n2. 添加物理卷到卷组(Volume Group),使用vgcreate加入多个pv成为vg,即vg阶段;\n3. 在卷组上创建逻辑卷(logical volume),使用lvcreate划分vg,成为一个或多个lv,即lv阶段;\n上图参考: http://www.haohtml.com/server/unix/46733.html\n具体思路是:将若干个磁盘分区连接为一个整块的卷组( Vloume group ),管理员可以在卷组上随意创建逻辑卷( logical volumes ),并进一步在逻辑卷上创建文件系统。\n物理卷( Physical Volume , PV )\nPV 在 LVM 系统中处于最底层,PV 一般是整个硬盘、或硬盘 …"
July 6, 2011
网络流量实时监控工具 nload
"Linux下nload的安装:\nnload是个很好用的一个工具,功能也很强.只是相对单一,只能查看总的流量,不能像iptraf那样,可针对IP,协议等 可以实时地监控网卡的流量,分Incoming,Outgoing两部分,也就是流入与流出的流量。同时统计当前,平均,最小,最大,总流量的值,使人看了一目了然,如下图\n下载地址:\nhttp://sourceforge.net/project/showfiles.php?group_id=35865\n#wget http://cdnetworks-kr-1.dl.sourceforge.net/project/nload/nload/0.7.2/nload-0.7.2.tar.gz\n#tar zxvf nload-0.7.2.tar.gz\n#cd nload-0.7.2\n#./configure –prefix=/usr/local/nload \u0026amp;\u0026amp; make \u0026amp;\u0026amp; make install\n安装好以后,来看看效果\n#/usr/local/nload/bin/nload\nDevice eth0 …"
July 5, 2011
关于Mysql的Qcache优化
"生产环境下建议关闭此功能,因绝大部分场景下此选项会产生效率低下问题。 query_cache_size = 64M\n指定MySQL查询缓冲区的大小。可以通过在MySQL控制台执行以下命令观察:\n# \u0026gt; SHOW VARIABLES LIKE ‘%query_cache%’; # \u0026gt; SHOW STATUS LIKE ‘Qcache%’;\n# 如果Qcache_lowmem_prunes的值非常大,则表明经常出现缓冲不够的情况; 如果Qcache_hits的值非常大,则表明查询缓冲使用非常频繁,如果该值较小反而会影响效率,那么可以考虑不用查询缓冲;\nQcache_free_blocks,如果该值非常大,则表明缓冲区中碎片很多。\n“Qcache_free_blocks”:Query Cache 中目前还有多少剩余的blocks。如果该值显示较大,则说明Query Cache 中的内存碎片较多了,可能需要寻找合适的机会进行整理。 ● “Qcache_free_memory”:Query Cache 中目前剩余的内存大小。通过这个参数我们可以较为准确的观察出当前系统中的Query …"
July 4, 2011
Ubuntu 网络配置ip.重启
"(1)Ubuntu Server修改IP\n配置文件地址 /etc/network/interfaces\n使用编辑器打开\n加入以下语句:\nauto eth0 iface eth0 inet static address 192.168.1.11 #IP地址 netmask 255.255.255.0 #子网掩码 gateway 192.168.1.1 #网关\n(2)Ubuntu Server修改DNS\n配置文件地址 /etc/resolv.conf\n使用编辑器打开\n改为如下内容:\nsearch localdomain nameserver 202.96.128.86 希望修改成的DNS nameserver 202.96.128.166 备用DNS\n(3)Ubuntu Server最后一步,也是最重要的一步。\n在rc.local里加入这个重启网络配置的命令:\nsudo /etc/init.d/networking restart\n** (4) 设置主机名称(hostname)**\n查看当前主机的主机名称:\nsudo /bin/hostname\n修改名称:\nsudo …"
July 4, 2011
centos搭建jira bug问题追踪系统
"一. 安装jdk 参考:\n二. 建立JIRA数据库\nmysql\u0026gt;create database jiradb character set utf8; mysql\u0026gt;grant all on jiradb.* to `jira`@`localhost` identified by ‘jira’;\n三.JIRA 安装\nwget http://wpc.29c4.edgecastcdn.net/8029C4/downloads/software/jira/downloads/atlassian-jira-enterprise-4.2.4-b591-standalone.tar.gz tar zxvf atlassian-jira-enterprise-4.2.4-b591-standalone.tar.gz mv atlassian-jira-enterprise-4.2.4-b591-standalone /usr/local/jira\n创建jira.home文件夹\nmkdir -p /usr/local/jira_home\n修改vi …"
July 1, 2011
关于C语言中的extern
"c语言有三种链接,外部链接,内部链接和无链接。\n外部链接:对构成程序的所有文件可用,如函数和全局变量具有外部链接。 内部链接:仅在声明他们的文件中是已知的。如声明为static的文件域具有内部链接。 无连接:仅在自己的块中已知,其它地方没有办法访问,如局部变量。\nextern主要作用是:声明在程序的其它地方使用外部链接声明的对象。 声明:表述对象的名称和类型。 定义:为对象分配存储空间。\n例如:\nint main(void) { extern int a, b; printf(“%d %d”, a, b); getch(); return 0; }\n/* 全局变量定义到了main之后 */\nint a = 10, b = 20; 程序输出10 20。\n通过extern声明变量a和b,可以在a和b定义之前使用,编译器不会提示错误。\nextern最重要的用途是多文件程序,c允许程序分散在多个文件中,分别编译,链接到一起。 我们在devc++中新建立一个c工程,然后在添新建一个单元保存名称为cunclx3.c\nmain.c的程序代码:\n#include #include int x,y; …"
June 30, 2011
redis入门教程
"window平台下的redis dll文件下载: https://github.com/char101/phpredis/downloads\nRedis 根据 5 种不同的数据类型来操作数据对象:\nString(字符串) Sets(集合) zsets( 排序后的sets集合) List(列表) hash(哈稀)\n操作 String 类型的值: Command\nParameters\nDescription\nSET\nkey value\nSet a key to a string value\nGET\nkey\nReturn the string value of the key\nGETSET\nkey value\nSet a key to a string returning the old value of the key\nMGET\nkey1 key2 … keyN\nMulti-get, return the strings values of the keys\nSETNX\nkey\nvalue Set a key to a string value if the key does not …"