python virtualenv

安装 pip

curl -O https://bootstrap.pypa.io/get-pip.py
sudo python get-pip.py

安装 virtualenv

sudo pip install virtualenv

使用

virtualenv venv --distribute
source venv/bin/activate

现在已经进入 venv,安装需要的模块

pip install flask
pip install redis

将现有的模块 freeze 下来

pip freeze > requirements.txt

gitlab fork库与源库保持更新

fork 之后做自己的功能,要与源库进行功能合并时用 MergeRequest

但是如果自己的库与源库落后太多,则可以这样

查看远程 repo

git remote -v

如果里面只能看到你自己的两个源(fetch 和 push),那就需要添加主repo的源:

git remote add upstream URL
git remote -v

如果想与主repo合并:

git fetch upstream
git merge upstream/master
或 git rebase upstream/master

timedatectl

centos7 中查看时区

[vagrant@localhost ~]$ timedatectl status
      Local time: Wed 2016-08-24 11:04:27 EDT
  Universal time: Wed 2016-08-24 15:04:27 UTC
        RTC time: Wed 2016-08-24 15:04:27
       Time zone: America/New_York (EDT, -0400)
     NTP enabled: n/a
NTP synchronized: no
 RTC in local TZ: no
      DST active: yes
 Last DST change: DST began at
                  Sun 2016-03-13 01:59:59 EST
                  Sun 2016-03-13 03:00:00 EDT
 Next DST change: DST ends (the clock jumps one hour backwards) at
                  Sun 2016-11-06 01:59:59 EDT
                  Sun 2016-11-06 01:00:00 EST

更改时区(sudo)

timedatectl set-timezone Asia/Shanghai

设置时间

timedatectl set-time '2013-06-02 23:26:00'

设置 ntp 时间同步

timedatectl set-ntp yes

官方文档
https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7/html/System_Administrators_Guide/chap-Configuring_the_Date_and_Time.html

logrotate

添加配置文件

cat /etc/logrotate.d/myservice

/data/log/myservice/*.log
{
    rotate 7
    daily
    dateext
    dateformat .%Y%m%d
    compress
    missingok
    notifempty
    sharedscripts
    postrotate
      /usr/bin/killall -HUP rsyslogd >/dev/null 2>&1 || true
    endscript
}

debug 配置文件是否正确,但不会真正动你的 log

logrotate -d /etc/logrotate.d/myservice

真实测试 logrotate 情况

logrotate -f /etc/logrotate.d/myservice