shell基础–带条件的参数替换

这次我们来讨论一下变量的求值运算。变量求值运算的结果取决于该变量的值是null还是一个数值。shell的这个特性被称为参数替换。Bourne shell也有这个特性。变量求值运算的一般形式为:

${:}

上式中,表示一个变量,后面跟一个冒号(:),冒号后面的是可选项,它是+、-、=、?四个符号中的任一个;符号后面又跟一个字符串。除了一种例外情况外,参数替换不会改变变量本身的值,但会影响变量的求值运算结果。

iostat和iowait[转]

%iowait并不能反应磁盘瓶颈

iowait实际测量的是cpu时间:
%iowait = (cpu idle time)/(all cpu time)

这个文章说明:高速cpu会造成很高的iowait值,但这并不代表磁盘是系统的瓶颈。唯一能说明磁盘是系统瓶颈的方法,就是很高的read/write时间,一般来说超过20ms,就代表了不太正常的磁盘性能。为什么是20ms呢?一般来说,一次读写就是一次寻到+一次旋转延迟+数据传输的时间。由于,现代硬盘数据传输就是几微秒或者几十微秒的事情,远远小于寻道时间2~20ms和旋转延迟4~8ms,所以只计算这两个时间就差不多了,也就是15~20ms。只要大于20ms,就必须考虑是否交给磁盘读写的次数太多,导致磁盘性能降低了。

作者的文章以AIX系统为例,使用其工具filemon来检测磁盘每次读写平均耗时。在Linux下,可以通过iostat命令还查看磁盘性能。其中的svctm一项,反应了磁盘的负载情况,如果该项大于15ms,并且util%接近100%,那就说明,磁盘现在是整个系统性能的瓶颈了。

centos6分区大小限制

周四去机房装系统,新买的dell的服务器,6块2T的硬盘做了raid5,在安装系统的时候要使用全部硬盘空间,我在《2T以上硬盘安装centos6》这篇文章中做了介绍。

本次安装使用的是kickstart文件的方式,总共10台服务器全都装完总共也不超过1小时(主要是硬盘初次格式化等待时间长)。

装完之后本想已经没啥问题了。结果,为了检查安装结果,就登录上了一台服务器,发现磁盘/居然只有8T(只分了一个/)。