谈起一个高效动态网站的构建,那就不得不提到LAMP,即Linux操做系统、Apache网络服务器、Mysql数据库、Perl、PHP或Python编程语言等开源产品所组成的网站架构框架,其最大的优点是开放性强,安全性高,且成本低廉。所以,LAMP成为了国际流行的网站构建方案。而做为一名php开发人员,在工做中,广泛也使用LAMP来开发一个高性能的网站,固然,也有其余构建方案,如LNMP,WAMP等。所以,Linux系统不只是一个高性能网站的构建基础,也是一名php开发人员的必修课。php
开始学习Linux系统,书籍教程方面,我选择的是这本语言精练,更易上手的《Linux就该这么学》,它是一本注重实用性的Linux自学书籍,其做者刘遄从事于linux运维技术行业多年,经过红帽架构师认证RHCA认证,学习生态圈较完善,有完备的书籍、网站、专业培训、论坛和其余社区的Linux学习生态圈。固然,对于慢节奏的同窗,也能够经过网络上的教学视频进行学习;那么,跟随教程,我在windows下使用了VMware安装了一个虚拟机,配置好Centos系统,第一步固然是熟悉Linux的基本操做命令,如文档管理项的rm、mv、cat等,磁盘管理的cd、ls、fdisk等。固然,在熟悉其基本命令的同时,也会学习到Linux的目录结构,权限管理,进程管理等基础知识,我就不一一赘述了。在这里我推荐几个关于进程管理的命令:Ps,用于显示当前进程状态,经常使用的搭配有ps aux 、ps -ef、 ps -eFH。dstat:动态系统资源统计命令。top:动态显示inux进程。htop:交互式进程查看器。这几个命令对于咱们的进程管理有至关大的帮助。html
如何搭建LAMP环境?第一步固然是下载安装必要的产品,顺序通常是:Apache、mysql、php,固然,linux下每个软件都有各类依赖,人工安装依赖是一项很复杂的工做,因而,包管理器便应运而生,centos使用的是yum包管理器,它会自动帮咱们把须要安装的依赖包自动安装,只需输入此命令:yum -y install httpd mysql mysql-server php php-mysql postgresql postgresql-server php-postgresql php-pgsql php-devel,安装过程大概几分钟,安装完成。mysql
第二步即是测试环境是否正常运行(run),首先,咱们启动Apache服务器:/etc/rc.d/init.d/httpd start,启动以后检测启动结果:ps aux | grep httpd,如过出现一堆进程,那么Apache网络服务器已正常运转,而后,我用ifconfig命令查看服务器的IP并进入网站根目录下建立一个phpinfo.php的程序,用于查看php的配置信息,若是配置信息正常显示,那么php模块已配置完成,接下来就进行数据库的配置,固然第一步是启动数据库:/etc/rc.d/init.d/mysqld start,而后检查启动结果:netstat -tulnp | grep :3306,结果为正常启动,接下来我进入mysql数据库,新建了一个用于测试的表,并简单的插入了几条数据,而后再写了一个用php链接mysql数据库的测试代码:linux
运行后如能正常查询数据,那么,咱们的LAMP环境便搭建完成。sql
为了进一步熟悉Linux系统,我决定安装另外一款Linux OS进行平常开发,流行的发行版有不少,诸如Debian,红帽(Redhat) http://www.linuxprobe.com/chapter-00.html、Ubuntu(包括kubuntu,xubuntu等)、OpenSuse(原Suse)、Mandriva(原Mandrake)、CentOS、Fedora、Veket等,各有其优缺点,我就不对其深刻讨论了。我最终选择安装的是Ubuntu,选择的缘由是其友好的界面以及许多经常使用软件的集成。数据库
安装好Ubuntu后,我第一步是搭建PHP的开发环境,直接使用apt-get安装软件,固然,还有deb包的安装方式以及独具ubuntu特点的新立得软件包管理等方法。安装谷歌浏览器时,发现缺乏依赖包,这时候,这条命令就能帮你自动安装依赖包:sudo apt-get install -f。固然,在ubuntu系统下有许多好用的软件,好比浏览器有:firefox,谷歌,opera,音乐播放器有:Audacious、Rhythmbox。我我的推荐几款实用的软件:谷歌浏览器,wps文件处理器,ATOM代码编辑器,Thunderbird邮件,filezilla等。编程
在安装完必备的软件后,我决定对个人桌面进行一次美化,ubuntu有许多很精美的主题,你甚至能够将其打造为mac的界面风格,能够参考网上资料,调整桌面环境,我推荐使用unity-tweak-tool,这是一个很是好用的Unity图形化管理工具,能够修改工做区,热区数量等。主题我推荐使用Flatabulous,它是一款ubuntu下扁平化主题,也是我试过众多主题中最喜欢的一个!ubuntu
至此,一个个性化的Linux OS 便打形成功,不过也推荐你看下书籍《Linux就该这么学》来学习RHEL 7系统,迎合更多的发行版系统。至今,Linux系统已经成为我开发工做的一部分,简单的指令操做,彻底开放的权限,稳定的运行效率,之前在windows下很繁琐的操做,在Linux下只须要一条命令,在开发工做中极大的节约了时间成本。我想,对于开发者而言,不只仅是php开发者,Linux系统对于咱们来讲都是不可缺乏的工做平台!windows