Elmerzhang - elmerzhang.com - ElmerZhang's Blog
General Information:
Latest News:
CentOS 下 Redmine 的 init 脚本 27 Apr 2013 | 09:32 am
近几天选型项目管理系统,最终定下来使用 Redmine。维护时感觉启动、重启敲那么长的命令很麻烦,而且还不能在操作系统启动时自动启动,就自己写了个 init 脚本,在此分享给大家。 以下是脚本代码: #!/bin/sh # # redmine Redmine Daemon # # chkconfig: - 99 36 # description: Remine Daemo...
Cgroups 学习笔记[6] – blkio 子系统 28 Dec 2012 | 11:15 am
参数说明 可设置的参数: blkio.weight 说明:指定 cgroup 默认可用 IO 的比例(加权),值的范围为 100 至 1000。该值可由具体设备的 blkio.weight_device 参数覆盖。 示例:设置 cgroup lv0 的默认加权为 500: cgset -r blkio.weight=100 lv0 blkio.weight_device 说明:指定 c...
推荐杨万富写的“思考MySQL内核”系列文章 26 Dec 2012 | 08:46 am
MySQL 用到一定程度后,免不了要去读一下 MySQL 的源码。这里推荐一下杨万富的“思考MySQL内核”系列文章,写的挺浅显易懂的,对准备读 MySQL 源码的同学应该会有一点帮助: 思考mysql内核之初级系列1— mysql的启动过程 思考mysql内核之初级系列2—我可以为你服务什么? 思考mysql内核之初级系列3—办理业务的流程 思考mysql内核之初级系列4–innodb缓...
关于 Linux 文件系统的 Superblock, Inode, Dentry 和 File 25 Dec 2012 | 01:34 pm
首先,Superblock, Inode, Dentry 和 File 都属于元数据(Metadata),根据维基百科中的解释,所谓元数据,就是描述数据的数据(data about data),主要是描述数据属性(property)的信息,用来支持如指示存储位置、历史数据、资源查找、文件纪录等功能。Linux/Unix 文件系统的元数据以多级结构保存。 Superblock 是文件系统最基本的元...
MegaCli 有关 RAID Rebuild 的几条指令 12 Dec 2012 | 07:52 am
1. 查看物理磁盘状态: # MegaCli -PdInfo -PhysDrv \[E:S\] -aALL Rebuild 中的物理磁盘状态中会显示:"Firmware state: Rebuild" 2. 查询 Rebuild 进度: # MegaCli -pdrbld -showprog -physdrv\[E:S\] -aALL 返回内容类似于下面这样: Rebuild Progr...
Cgroups 学习笔记[5] – 管理 Cgroups 中的进程 23 Nov 2012 | 03:26 pm
1. 将已有进程加入 Cgroups 我们可以使用 cgclassify 将进程加入 Cgroups,其用法为: ~]# cgclassify -g subsystems:path_to_cgroup pidlist 其中 subsystems 可以为一个子系统或者多个以逗号 ‘,’ 隔开的子系统,pidlist 为进程 ID,多个进程 ID 之间以空格隔开。 例如: ~]# cgclass...
Cgroups 学习笔记[4] – 设置控制参数 19 Nov 2012 | 12:39 pm
我们可以使用 cgset 来设置 Cgroups 的参数,其格式为: ~]# cgset -r parameter=value path_to_cgroup 例如,当存在 /cgroup/cpuset/group1 时,可以使用如下命令指定该组有权访问的 CPU: ~]# cgset -r cpuset.cpus=0-1 group1 如果要设置根层次结构(如 /cgroup/cpuset/)...
Cgroups 学习笔记[3] – 如何编辑层次结构和组 16 Nov 2012 | 03:45 pm
要创建和修改 Cgroups 的层次结构和组,最简单的办法就是修改 /etc/cgconfig.conf,然后重启 cgconfig 服务。 以下这段配置创建了一个名为 cpu_and_mem 的层次结构,并关联了 cpuset, cpu, cpuacct, memory 四个子系统: mount { cpuset = /cgroup/cpu_and_mem; cpu ...
Cgroups 学习笔记[2] – cgconfig 简介 14 Nov 2012 | 09:00 am
RHEL 6 提供了 libcgroup 来管理 Cgroups,该软件包中包含了一系列 Cgroup 工具及其使用手册。我们可以使用它来绑定 Cgroups 层次结构,设置 Cgroups 参数。上文开头我们提到的 cgconfig 服务便是包含在 libcgroup 软件包里的。 cgconfig 默认是不随系统启动的,我们可以使用 chkconfig 来配置它随系统启动,以便每次系统重启后...
Cgroups 学习笔记[1] – Cgroups 介绍 13 Nov 2012 | 03:36 pm
Control Groups (Cgroups) 是 Red Hat Enterprise Linux 6 (以后简称 RHEL6) 提供的一项内核功能。我们可以使用 Cgroups 为任务(进程)分配资源,例如 CPU 时间、系统内存、网络带宽等。我们可以对 Cgroups 进行监控,禁止 Cgroups 控制下的进程访问某些资源,还可以在一个运行中的系统中对 Cgroups 动态地进行配置。c...