Author: jpuyy

  • CentOS6.2安装epel包

    官方介绍:

    https://fedoraproject.org/wiki/EPEL/zh-cn

    在装了epel之后,要安装nginx,php,mysql,直接yum install就可以了。

    EPEL 包含一个叫做’epel-release’的包,这个包包含了 EPEL 源的 gpg 密钥和软件源信息。

    现在安装epel-release

    rpm -ivh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm

    重装

    rpm -iv --replacepkgs http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm

    上面的地址经常变,可以打开下面网址找到epel包

    http://dl.fedoraproject.org/pub/epel/6/x86_64/

    导入RPM-GPG-KEY-EPEL的key

    rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6

    epel安装完之后在/etc/yum.repos.d/下生成了两个文件,epel.repo,epel-testing.repo

    修改epel.repo文件(epel-testing包含最新的测试软件包,其版本很新但是安装有风险)

    在[epel-debuginfo]前添加

    priority=11

    这样yum时会先去官方源查找,官方源没有再去epel安装

    PS:还有一款不错的源,叫atomic,包含有php-fpm,安装这个源则更为方便,此脚本会自动安装对应系统的版本,更省心。

    wget -q -O - http://www.atomicorp.com/installers/atomic | sh

    同样rpmforge也很不错,在这里查看对应版本的安装方法

    http://wiki.centos.org/zh/AdditionalResources/Repositories/RPMForge

    epel centos6 源

    [epel]
    name=Extra Packages for Enterprise Linux 6 - $basearch
    baseurl=http://mirrors.tuna.tsinghua.edu.cn/epel/6/$basearch
    failovermethod=priority
    enabled=1
    gpgcheck=1
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6
    
    [epel-debuginfo]
    name=Extra Packages for Enterprise Linux 6 - $basearch - Debug
    baseurl=http://mirrors.tuna.tsinghua.edu.cn/epel/6/$basearch/debug
    failovermethod=priority
    enabled=0
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6
    gpgcheck=1
    
    [epel-source]
    name=Extra Packages for Enterprise Linux 6 - $basearch - Source
    baseurl=http://mirrors.tuna.tsinghua.edu.cn/epel/6/SRPMS
    failovermethod=priority
    enabled=0
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6
    gpgcheck=1
    
  • 购买了创新小魔镜和罗技k240

    在58同城上浏览电脑配件,发现有个人发了一堆东西,里面有我想要的创新mp3和无线键鼠

    记得大学那会儿买了创新小石头,便宜又好用,电量坚挺,到现在淘宝上二手的都比当时买的价格贵了,毕业了有时候跑步,还是有个mp3方便。

    去和卖主见面,才发现他就是做电子产品生意的,包装还没有拆封,生产日期是2008年07月,现在都2012年9月了,拆开试了一下,一点问题没有,¥90成交。

    还有mk240黑色的也是未拆封的,用了一下,挺迷你,平时办公可能不太适合,娱乐就很适合了;鼠标是不发光的,带开关,键盘没有开关,用起来很省地方,但是没有指示灯。没有数字键用起来也很不错。¥75成交
    罗技的mk240,在windows下安装好set point,可以查看电量, 某些按键如Caps Lock的屏幕提示。

  • linux工具之top/htop

    主要介绍top

    第一行:

    时间 运行时间 登陆用户数 系统负载(任务队列的平均长度,分别为1分钟、5分钟、15分钟前到现在的平均值。)

    top - 08:36:25 up 19 min, 2 users, load average: 1.33, 0.86, 0.60

    负载的意思是在 run queue 中的进程数量除以 cpu 。 小于 cpu 个数都算没有超负载。

    第二行:

    进程总数 正在运行进程数 睡眠进程数 停止进程数 僵尸进程数

    Tasks: 179 total,   1 running, 178 sleeping,   0 stopped,   0 zombie

    第三行:

    cpu信息,按1显示每个cpu的情况,us表示进程处理所占的百分比,ni表示被nice改变优先级的命令占的百分比,id表示idle空闲, hi 代表 hardware interrupts,si 代表 software interrupst, 通过 cat /proc/interrupts 可以查看中断。

    Cpu(s):  4.8%us,  1.7%sy,  0.0%ni, 93.2%id,  0.3%wa,  0.0%hi,  0.0%si,  0.0%st

    四行、五行为内存和swap信息

    在进程信息栏中,查看进程更丰富的信息,h或?,会显示帮助命令
    列出常用的控制命令有

    M 根据驻留内存大小进行排序(常用)
    P 根据CPU使用百分比大小进行排序(常用)
    T 根据时间/累计时间进行排序(常用)
    R 将当前的排序倒转(常用)
    N 按进程ID排序
    u 可输入用户进行筛选
    空格  立即刷新信息
    k输入想要kill掉的进程ID号

    一页显示不完整,使用<>分别上下翻页

    控制显示的列:

    f  可控制显示列输出的内容, 对应a-z
    o键 可改变列的顺序,大写字母往左(上),小写字母身右(下)
    大写O 调整按某列排序

    过滤 nginx 用户执行的程序

    shift + u 然后输入 nginx
    或者在开始的时候就

    top -u nginx

    只显示某几个进程,跟进程号

    top -p  9943,11162

    只打印一次并重定向到文件中

    top -b -n 1 >> top1.txt

    按 z 显示颜色

    对于 mysqld 单进程多线程,默认其他线程会收缩起来,如果要显示按 H

    按 i 不显示空闲的进程及僵尸进程

    top 默认每 3 秒刷新一次,按 d 或 s 按提示可以输入想要的刷新间隔

    显示某个进程运行在某个 cpu 上,按 f 找到 Last used cpu ,按 j 选取上,这样显示就有此进程使用哪个 cpu 了。如果一个软件长期运行在一个 cpu 上,那么有可能是设置错误。

    按 F 根据某一列排序

    按 c 显示具体的进程名字

    当进行完上面的设置之后,按 W 保存当前的配置到 ~/.toprc 下次会直接调用。

    显示进程和线程

    top -H

    排序后只取前 n 位,按 n,输入数字

    设置 filter

    o 输入过滤条件,字段上面的都可以输入,如

    %CPU>100.0
    COMMAND=java

    查看当前的 filter

    Ctrl + o 

    清空当前的 filter

    =
  • vim复制粘贴

    vim

    复制整行

    yy

    粘贴一次

    p

    粘贴多次(n代表数字)

    np

    +y 复制
    +p 粘贴

  • ls命令按文件大小排序

    今天想在某网站找一个10KB大小的图片文件可是了半天

    后来想起ls可以按文件大小排序

    ls可以按照文件大小进行输出排序,这是一个很实用的参数。

    man ls

    -S sort by file size

    由大到小排序

    ls -Sl

    从小到大排序

    ls -Slr

    -h,表示”–human-readable”,单位是k或者M ,比较容易看清楚结果。

    显示子目录结构

    ls -R

    附:

    ls按时间排序

    ls -lt 从新到旧
    ls -lrt 从旧到新

    ls对当前目录和文件大小排序

    du -s * | sort -nr

    只对当前目录排序,并用直观的大小显示出来

    for i in $(ls -l |grep '^d' |du -s * |sort -nr|awk '{print $2}');do du -sh $i;done
  • 将数据文件的指定域读取到shell脚本中

    这个例子说明了怎样在 shell 脚本中从数据文件读取特定的域(field)并进行操作。例如,假设文件 employees.txt 的格式是{employee-name}:{employee-id}:{department-name},以冒号进行划分,如下所示。

    $ cat employees.txt

    Emma Thomas:100:Marketing
    Alex Jason:200:Sales
    Madison Randy:300:Product Development
    Sanjay Gupta:400:Support
    Nisha Singh:500:Sales

    下面的 shell 脚本说明了如何从这个 employee.txt 文件中读取特定的域(field)。

     $ vi read-employees.sh
    #!/bin/bash
    IFS=:
    echo "Employee Names:"
    echo "---------------"
    while read name empid dept
    do 
       echo "$name is part of $dept department"
    done < ~/employees.txt

    赋予脚本可执行权限后执行该脚本

     $ chmod u+x read-employees.sh 
     $ ./read-employees.sh 

    Employee Names:
    —————
    Emma Thomas is part of Marketing department
    Alex Jason is part of Sales department
    Madison Randy is part of Product Development department
    Sanjay Gupta is part of Support department
    Nisha Singh is part of Sales department

    来自:http://www.linuxnote.org/the-data-file-to-the-specified-domain-to-read-shell-scripts.html