前面我有一篇文章写的是在CentOS 7中搭建nginx+django环境:点击这里,个人认为,如果你的服务器中需要一个共享资源式的django站点,可以按我文章中所写的方式搭建生产环境(即产品发布环境)。那么何为共享资源式的环境,其实这个名词是我想不到词了写出来的,意思是说,所以的django站点共享系统中所有的python开发库,这并不是一件非常值得炫耀的事,尤其对于爱整洁的强迫症犯者来说,可能是个灾难,在后面的文章中我将提到python的隔离环境。事实上,对于开发这件事,个人认为强迫症是值得“表扬”的一件事。
言归正传,我的django学习之路就要开始了。对于战士来说,上战场选择一件得心应手的兵器,显然将大大提高自身的攻击力和杀敌的能力。那么我们是选择何种系统作为开发机器呢?Windows or Linux?凭着个人对Linux多年的熟悉程度,果断选择了“Evertything is file”哲学理念的Linux,事实上,它的每一个错误我们都可以刨根问底的找到原因,而之前Windows的开发经历简直让我抓狂——软件安装不上时就两招:重启系统or卸载重装。我不喜欢在这种问题上浪费太多不必要的时间,当然大家可以说我不熟悉Windows,我毫不介意.
既然选择了Linux,那么这么多的发行版本,我该选择哪一种呢?我用过很多Linux发行版本,但CentOS系列我用了很多年了,大概从2009年开始到现在,已经熟透了,该发行版作为服务器系统,其简洁的包管理方式,Redhat团队的长期支持,稳定性和可靠性就可见一斑了。但在家用系统中,CentOS对新硬件的支持和桌面图形软件的支持相对Ubuntu来说就较差了,于是一个大胆的想法在我脑海中诞生了,我决定在我的物理机器上安装Ubuntu系统,原因如下:
1、在Windows中虽然可以用虚拟机安装CentOS开发,但经常会忍不住去看QQ和微信消息,如果系统直接是Linux,那么我就不用受聊天信息干扰了;
2、最新版的16.10是一个长期支持版本,而且ubuntu中总是能拿到最新软件安装包,我可以享受软件安装的乐趣;
3、可以充分利用我的硬件资源;
4、更好的熟悉其它Linux发行版本的软件包管理系统,挑战一下自己。
说干就干,我找来U盘,从Ubuntu官网下载最新的Desktop版本16.10,然后使用Universal USB Installer工具刻录好系统盘。安装时我特意选择安装了English版本,系统安装可以参考:点击这里。系统安装完成后,我一般是五步走:
1、让系统开始连接上互联网,这里可以参考我之前的文章:点击这里
2、通过man手册熟悉下ubuntu的包管理工具:apt-get dpkg apt-file等。我一般是通过对比CentOS的包管理方式来学习,如下表(命令全部以管理员用户运行):
实现目标 | Ubuntu | CentOS |
安装vim编辑器 | apt-get install vim -y | yum install vim -y |
查找tcpdump命令属于哪个软件包(未安装软件包的情况下) | apt-file search ifconfig | yum provides */ifconfig |
查找tcpdump命令属于哪个软件包(已经安装软件包的情况下) | dpkg -S /usr/sbin/tcpdump | rpm -qf /usr/sbin/tcpdump |
查找vim软件包安装了哪些文件 | dpkg -L vim | rpm -ql vim |
仅下载vim软件包不安装 | apt-get download vim | yum install --downloadonly vim |
安装一个已经下载的软件包 | dpkg -i vim-xx.x.x.deb | rpm -ivh vim-xx.x.x.rpm |
其实有这些常用命令就可以玩转ubuntu下的软件包管理了。但在使用过程中我一直有一个功能在ubuntu下没找到,即在CentOS中可以使用yum 指定软件安装目录(使用参数--installroot=[path]),而apt-get却没有这个功能,后面想找一个折中的办法,想通过apt-get download下载包过来,然后通过dpkg --instdir来安装,却有很多限制,无赖的放弃中……
3、感谢systemctl开机启动服务方式大一统了现有的流行发行版本;
4、熟悉下文件系统结构目录;
5、各种安装应用软件(详见正文分解)
- 微信扫码赞助
-
- 支付宝赞助
-