安装配置一个全新的linux server开发环境
安装配置一个全新的linux server开发环境
软件运行在虚拟机linux server上,但是开发环境却在windows上. 这样就能够享受linux和开源的好处,又能拥有windows用户友好的图形界面,一举两得.
操作系统安装配置部分
1. 安装最新版本的virtualbox,
2. 下载最新版本的Ubuntu Server 64位版本.
3. 创建虚拟机. 在选项配置中: 网络连接方式选择bridged, 创建一个shared folder用于windows和linux之间共享内容,设置其为auto mount. 其它没用的东西比如软盘,声音等等统统禁止掉.
4. 安装过程中一切都按照默认, 不安装任何附加服务软件.直到安装完成
5. 虚机的虚拟光驱载入virtulboxguestaddition.iso,这个文件一般在virtualbox的安装目录可以找到. 重启虚机并登录.
6. sudo apt-get update, 然后 sudo apt-get upgrade 将操作系统升级到当前可用的最新版本.
7. sudo apt-get install ssh, 然后 用putty登录linux. 这样就支持ssh远程连接控制虚机了.
8. sudo mount /dev/cdrom /media/cdrom, 然后 cd /media/cdrom. mount光驱,切换到光驱的目录.
9. 下面开始安装virtualbox guest addition,目的是为了能够在windows和linux虚拟机之间共享文件.
10. 首先 sudo apt-get install build-essential linux-headers-`uname -r` 否则装不上virtualbox guest addition. 这一步安装的是跟系统编译相关的东西.
11. 然后就 sudo ./VBoxLinuxAdditions.run. 最后可能提示Window System drivers安装失败,很正常,因为ubuntu server根本就没有图形界面
12. 安装完之后重启虚拟机,登陆后"sudo su -"切换到root用户,到/media目录下应该就能看到跟windows主机共享的目录了. 以后这个目录的文件在虚机和宿主机之间共享, 传文件非常方便.
13. 到这步操作系统部分的安装设置都完成了. 聪明谨慎的人会在此时把虚拟机备份下.
python/django 配置部分
1. 上为切换到root用户的话"sudo su -"切换到root用户.以下操作都是以root用户开展的.当然直接在ubuntu上用root用户进行操作是不推荐的,因为root权限最大,万一执行了什么危险操作比如删除/目录则后悔莫及.鉴于我们只是自己搭建的虚机测试环境, 对安全性要求不高,直接用root进行操作其实无妨.
2. sudo aptitude 安装 python-virtualenv. 安装它会自动安装python-setuptools和python-pip这两个python包管理工具. 这样我们就能够创建python运行的虚拟环境, 并在虚拟环境自由安装各种python软件包了.
3. pip install virtualenvwrapper. virtualenvwrapper顾名思义就是virtualenv的wrapper,它能使我们更方便地使用virtualenv.
1. export WORKON_HOME=~/Envs
2. mkdir -p $WORKON_HOME 这条命令会创建文件夹, 并且会自动创建指定文件夹的父文件夹,如果其不存在的话.
3. source /usr/local/bin/virtualenvwrapper.sh
4. 把上面的第1和第3条放入~/.bashrc文件的末尾, 这样每次登录到root,它都会自动运行那两条语句.
4. mkvirtualenv django. 这句话创建一个名叫django的env, 执行完会直接就切换到django这个env. (命令行的最左端会出现"(django)")
5. 如果什么时候想切换到django这个env,比如说刚刚登录操作系统的时候, 就用命令 workon django
6. 定制virtualenv, 在$WORKON_HOME有很多可执行文件,比如postactivate, 这些可执行文件是一些钩子(hook), 可以在这些钩子的末尾加上自己想要的命令, 这些命令可以在适当的时候自动触发,非常方便. 比如在 echo 'cd $VIRTUAL_ENV' >> $WORKON_HOME/postactivate
备注: 以上是针对ubuntu server 64bit进行的. 但是后来我又弄了一套debian的开发环境. 个人感觉debian更干净一些. 可以一开始什么软件都不装.非常酷.