PHP开发者的Linux学习之路
谈起一个高效动态网站的构建,那就不得不提到LAMP,即Linux操作系统、Apache网络服务器、Mysql数据库、Perl、PHP或Python编程语言等开源产品所组成的网站架构框架,其最大的优势是开放性强,安全性高,且成本低廉。因此,LAMP成为了国际流行的网站构建方案。而作为一名php开发人员,在工作中,普遍也使用LAMP来开发一个高性能的网站,当然,也有其他构建方案,如LNMP,WAMP等。因此,Linux系统不仅是一个高性能网站的构建基础,也是一名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:交互式进程查看器。这几个命令对于我们的进程管理有相当大的帮助。

如何搭建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,安装过程大概几分钟,安装完成。
第二步便是测试环境是否正常运行(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数据库的测试代码:
运行后如能正常查询数据,那么,我们的LAMP环境便搭建完成。
为了进一步熟悉Linux系统,我决定安装另一款Linux OS进行日常开发,流行的发行版有很多,诸如Debian,红帽(Redhat)、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下扁平化主题,也是我试过众多主题中最喜欢的一个!
至此,一个个性化的Linux OS 便打造成功,不过也推荐你看下书籍《Linux就该这么学》来学习RHEL 7系统,迎合更多的发行版系统。至今,Linux系统已经成为我开发工作的一部分,简单的指令操作,完全开放的权限,稳定的运行效率,以前在windows下很繁琐的操作,在Linux下只需要一条命令,在开发工作中极大的节约了时间成本。我想,对于开发者而言,不仅仅是php开发者,Linux系统对于我们来说都是不可缺少的工作平台!
PHP开发者的Linux学习之路的更多相关文章
- Linux学习之路-Linux-at及cron命令【7】---20171215
Linux学习之路-Linux-at及cron命令[7]---20171215 DannyExia000人评论986人阅读2017-12-24 17:28:03 ntpdate 命令 [root@ ...
- Linux学习之路(一)
导语: 早前为了方便日常开发,建立跟生产环境类型的环境的时候考虑使用docker作为模拟生产环境,结果没想到给自己的学习挖了一个大坑.其他关于docker容器技术的坑先不在这里赘述,有时间的话在其他文 ...
- 我的Linux学习之路及参考书籍
学习目的 很简单的考虑,最近在各大招聘网站上找工作,发现多数c/c++开发职位都需要Linux开发经验,让我很苦恼,因为Linux我到目前为止知之甚少,知道Linux的概念,也在大学期间了解过一段时间 ...
- 新手小白的Linux学习之路
大家好,我是一个零基础的新手小白,在此和大家分享一下新手小白的学习之路.欢迎各位大神指教!谢谢 Linux简介: Linux操作系统诞生于1991年10月,由芬兰赫尔辛基大学的在校生Linus Tor ...
- Linux学习之路--常用命令讲解
Linux常用命令讲解 1.命令格式:命令 [-选项] [参数] 超级用户的提示符是# 一般用户的提示符是$ 如:ls -la /usr说明: 大部分命令遵从该格式多个选项时,可以一起写 eg:ls ...
- linux 学习之路
很多同学接触Linux不多,对Linux平台的开发更是一无所知. 而现在的趋势越来越表明,作为一个优秀的软件开发人员,或计算机IT行业从业人员, 掌握Linux是一种很重要的谋生资源与手段. 下来我将 ...
- 后端开发者的Vue学习之路(一)
目录 前言: iview组件库示例 element组件库示例 Vue的介绍 兼容性: 学习Vue需要的前置知识: MVVM模型 补充: 安装/导入 导入Vue 安装 两种方式的区别: HelloWor ...
- linux 学习之路(学linux必看)
很多同学接触Linux不多,对Linux平台的开发更是一无所知. 而现在的趋势越来越表明,作为一个优秀的软件开发人员,或计算机IT行业从业人员, 掌握Linux是一种很重要的谋生资源与手段. 下来我将 ...
- 我的Linux学习之路的感悟
首先要跟大家说声抱歉,这么久一直没有更新,有负大家对我的期望. 半年的Linux运维的学习到目前已工作一个月零9天,这一路走来的艰辛和挣扎只有自己最清楚. 首先要感谢公司的同事的宽容接纳和耐心指点.感 ...
随机推荐
- maven配置环境变量失败解决办法
配置maven路径什么的统统正确,最后测hi不成功.在网上搜索了好多资料方法都解不了 具体问题具体对待吧,如果有和我类似的小伙伴,可以尝试一下我的这个办法,在maven路径后面加/bin path变量 ...
- nodejs使用log4js记录日志
log4j是java里面最好用的日志记录插件,在.net上面也有移植log4j.net.同样也移植到了nodejs里面,多的不说,把自测通过的代码粘出来吧. var log4js = require( ...
- 日常英语---七、[Updated November 14 at 4:10 PM PST] Scheduled Game Update - November 14, 2018(n.标准)
日常英语---七.[Updated November 14 at 4:10 PM PST] Scheduled Game Update - November 14, 2018(n.标准) 一.总结 一 ...
- HeadFIrst Ruby 第七章总结 hashes
前言 这一章节介绍了 Ruby 中 hash 这一数据类型的用法和特征. Hash 的定义 与 array 的对比 最大的不同: An array can only use integers as i ...
- MyEclipse配置Tomcat服务器(最简单的配置过程)
MyEclipse配置Tomcat服务器比较简单,在这里直接给出简要的配置步骤了,相信大家都能很容易明白…… 1.Window->Preferences 2.根据你的Tomcat版本找到对应的T ...
- LeetCode--278--第一个错误的版本
问题描述: 你是产品经理,目前正在带领一个团队开发新的产品.不幸的是,你的产品的最新版本没有通过质量检测.由于每个版本都是基于之前的版本开发的,所以错误的版本之后的所有版本都是错的. 假设你有 n 个 ...
- 利用adb截图然后传到电脑
首先配置好adb环境变量 然后adb devices查看是否连接手机,记得把手机调成开发者模式. 截屏 adb shell /system/bin/screencap -p 路径/文件名.后缀名 ad ...
- 一个项目中既有移动端,同时也有PC端的代码,并且 他们的代码分开写的,那么如何实现在手机跳转手机页面,pc点击跳转pc页面
将以下代码放入pc首页即可 <script type="text/javascript"> function mobile_device_detect(url) { v ...
- unitest 测试集 实例
-->baidy.py #coding=utf-8from selenium import webdriverfrom selenium.webdriver.common.by import B ...
- python-django rest framework框架之渲染器
渲染器 看到的页面时什么样子的,返回数据. restframework中默认就是下面 这两个render类,它的内部实现原理是拿url中的后缀名 .json 和类中的format字段进行比较,如果re ...