svn/git数据仓库无损迁移

前几天,公司的ubuntu desktop出现不定期死机,上面托管着公司的项目代码(git管理),美术资源(svn管理), 以及bug追踪系统(禅道管理), 排查了不是内存/cpu故障, 最终定位貌似是硬件故障. 为了一劳永逸, 干脆拿出一台古董机安装了mini版的centos server, 接下来的工作就是数据仓库迁移了.

1.svn

配置文件迁移: 直接拷贝故障机器上svn的配置文件, 确保用户/权限分配正常; 数据迁移: 考虑到需要保留提交记录, 采用原生的svnadmin进行操作.

svnadmin dump oldRepository > dumpfile       // 备份数据仓库
svnadmin create newRepository               // 新建数据仓库
svnadmin load newRepository < dumpfile      // 还原数据仓库

2.git

使用gitlab搭建内部git管理平台, 为了保留提交记录, 使用内置的gitlab-rake工具进行数据仓库迁移的工作.

Read More

supervisor--进程的守护者

##为什么推荐supervisor
接触过后台开发的人, 应该对以下内容不陌生.
比如, 你开发了一个服务, 放在服务器上运行, 供客户端调用. 你会这样做, 以python程序为例说明:

pyenv activate env_AntiCheat_2.7.9                                // 激活python虚拟环境
nohup python AntiCheat.py > AntiCheat.log 2>&1 &                 // 以后台形式运行服务

如果代码有更新, 需要重新部署服务, 不得不找到进程id, 杀死.

ps aux | grep AntiCheat.py                     // 找出进程id
kill -9 xxx                                   // 杀死进程

每次都重复着这样的操作, 实在是浪费时间, 当然你也可以针对每一个程序写一份脚本, 一旦服务数量很多, 重复性的劳动就会越来越多. 这时候就需要有一个程序能够统一管理目标服务.

Read More

Debian安装教程

##安装Debian7.9(wheezy)记录

###1. 刻录启动盘

  • Debian镜像下载, 直接下载DVD_1.iso即可, 32位系统去相应目录下载.
  • Windows平台下制作启动盘, 可供选择的软件比较多, 推荐2款自己平时常用的.
  • Linux平台下制作启动盘, 推荐dd命令

    dd if=/path/to/debian.iso of=/dev/sdb bs=1M    // 替换成你的实际路径
    

Read More

Debian之vim配置篇

##安装vim替换debian自带的vi

apt-get install vim

不需要从零开始学习配置vim, 直接用牛人的配置文件, 省得折腾.
vimrc, 按照文档操作即可.

##安装terminator替换字体自带的terminal

apt-get install terminator

##配置terminator颜色以及主题
terminator-solarized
美中不足的是, ls显示的文件和目录都是灰蒙蒙的, 这是因为默认情况下solarized各种bright方案基本都是灰色, 而系统默认显示目录和文件时多用bright色.

Read More