Author: jpuyy

  • pidstat查看进程I/O读写

    查看一个进程的 io 读写

    每秒钟输出一次

    -d 参数:

    打印 I/O 信息,2.6.20及以后内核才支持。kB_rd/s 每秒读的 kB 数,kB_wr/s 每秒写的 kB 数,kB_ccwr/s 每秒取消写入磁盘的 kB 数。

    -l 参数:

    打印详细信息

    pidstat -dl 1 -p 29866
  • seq使用方法

    seq 5 会打印 1-5 的数字,一个数字一行

    1
    2
    3
    4
    5
    

    seq 22 27 打印 22-27 数字

    22
    23
    24
    25
    26
    27
    

    seq -w 00 05 打印 00-05

    00
    01
    02
    03
    04
    05
    

    同理
    seq -w 000 005 打印 000-005

    000
    001
    002
    003
    004
    005
    
  • 记录指定状态码的 nginx log

    在 server 里配置,记录 403 的日志

    server {
        server_name example.com;
        access_log /var/log/nginx_access_403.log combined;
        include block_inject.conf;
        location / {
            if ($status != "403") {
                access_log off;
            }
            #......
        }
    }
    
  • git 在每一次 commit 中清理文件

    有两个很大的二进制文件,在版本库中没有一点用处。
    使用核武器 filter-branch ,将每一次提交中出现这两个文件的时候删掉,然后重新提交,所以 commit 的 hash 值都会变掉。

    git filter-branch -f --tree-filter 'rm -f nginx/files/GeoLiteCity.dat nginx/files/GeoIP.dat' HEAD

    强制 push 到 origin

    git push origin --force

    你的合作者现在混乱了。需要将远端的 master rebase 过来

    git rebase --onto origin/master master master
    git fetch
    git reset --hard origin/master

    强制 pull 下来

    git pull --force
  • kvm 模板配置

    装好系统之后,在关机前,需要把网卡信息清理掉

    http://www.andrewklau.com/device-eth0-does-not-seem-to-be-present-delaying-initialization/

    关机后,压缩模板,使发布过程更快

    qemu-img convert -c g97m01st.img -O qcow2 centos.img
  • python随机取出列表元素

    dns 三台,分别选出一台和两台

    #!/usr/bin/env python
    import random
    
    resolv_servers = ['192.168.1.1', '192.168.1.2', '192.168.1.3']
    # 选出一个
    print random.choice(resolv_servers)
    # 选出两个,做为一个列表
    print random.sample(resolv_servers, 2)