web后端攻城狮要学linux吗,一般要学到什么水平呢?
程序员文章站
2022-06-17 16:37:20
...
如题,本人想往php后端方向走,看好多招聘要懂linux,想提前了解下
至少需要会以下几点:
1、常用命令:cd, ls, cp, mkdir, mv, top, ps, cat, ssh, scp, tail, head, find, grep, chmod, chown,kill, rm, ping等等。
2、一些基本的概念:管道,重定向,标准输出,标准错误输出等等。
3、vi或vim的基本操作。
4、计划任务的配置。
5、日志查看分析。
6、了解php, apache, nginx等的配置。
7、能读懂一些bash shell脚本,会一些df,du,netstat之类的命令。
我说一下,为什么需要学习linux。
我是做PHP的,之前在一家国内电商公司做促销相关开发。
1、我接手这个项目的时候,很多东西都是没有文档的,我必须自己上服务器去摸清楚一些状况。
1)我想知道有哪些脚本在跑,这些脚本是否都有日志输出等等。
这个就需要会一些linux基本命令,cd,ls,find,cat,crontab等等。
2) 我想了解一些web项目放在什么位置,配置的域名,访问日志放在哪儿。
这个就需要我知道查看nginx的虚拟主机配置,vim等的基本用法。
2、部署上线是有专门运维负责的,但是上线之后,我得确认一切运行正常。
对于web程序,线上页面上作一些操作测试就行。
对于脚本,最好的方法当然是查看日志了,crontab, cat, tail等命令必不可少。
对于数据,就得mysql命令行查看了。
3、负载情况查看,有时候,运维会在服务器上装上一些zabbix之类的东西,让你可以很方便地在网页上查看服务器上的状况。
但是有的服务器上没有装,那你只好自己上服务器看了。top,sar, ps等命令就有必要了。
4、统计,有时候产品会让你帮统计一些数据。sed, grep, wc等就有了必要。
5、排查线上问题。这个时候所需要会的是最多的。
1)、分析日志很重要。cat, sed, tail, wc等必不可少。
2)、一些查看进程,磁盘状况,连接数,DNS状况的命令必不可少,ps, df, du, netstat, nslookup, ping等。公司是有专业运维的,但是他们是不了解的你的项目的,脱离你的项目,有些 问题单靠运维是发现不了的,所以这些你也得会。
6、有一次有个脚本,我们希望它循环执行,每次执行只有几秒的时间间隔,这个单靠计划任务不好弄,所以我还得会一些bash shell。
7、运维只管线上,开发环境和测试环境一般是不管的。那么对于有些项目,我们得自己安装一些扩展或软件,自己在开发环境和测试环境中部署。
我现在这个公司,有些东西运维是不管的,得自己去部署。
那就得会chmod, chown, scp, svn,mkdir, rm, crontab等命令了,得了解nginx, rsync的一些配置。
楼里人说不重要,用winscp就行了。
1、实际上,对权限管理稍微严格的公司,是不可能让你直接通过ssh协议登上去的,所以像winscp这样的软件根本就用不了。
我目前所在的公司,都是先登录到通道机,再登录到目的服务器上的。
2、难道大家做的项目中一个脚本都没有,不需要查看计划任务,不需要重定向输出计划任务的输出?
3、日志,有时候虽然运维通会让你能够直接通过web界面获取日志,但如果这个日志有好几个G呢? 谢邀,正如上面各位所答,如果仅仅是工作需要。并不需要太多的Linux水平。日常操作也不用登录到Linux中,删改文件用winscp拉到Windows就好了。
然而,如果题主把Linux作为兴趣,在业余时间钻研的话。那么对你PHP的帮助决不是一星两点的。熟悉Linux及其工作机制的话,你解决PHP问题的能力和速度都会有很大的提升。 一般学到会自制rpm/deb包的程度就差不多了。 看情况,普通PHP只要会文件操作,如果想成为大师级必须精通。 别学做包这种没用的,学学lnmp环境的搭建(lamp已经过时了,不过学学也可以),学学性能分析和优化 Apache,Nginx配置什么的要会吧。。。。最起码的 Web 后端, Linux 学得多深都不为过啊 因为目前业界99%都是 Linux 系。所以一定要学。但是懂 Linux 操作只是基本,那些命令,各种服务安装和配置,只要去用,就一定能学会,没什么难的。更重要的是原理,Linux 的基石,就算不学透至少要清楚,建议那些命令会了后要再看看 TCP/IP 协议详解,APUE。这样以后称自己是后端开发才有底气。 本人去年应届PHP,目前已经离不开Linux下的操作,个人看法是:非常有必要。
原因上面的答案已经有提到一些了。 软件测试
回复内容:
需要学习,非常重要。至少需要会以下几点:
1、常用命令:cd, ls, cp, mkdir, mv, top, ps, cat, ssh, scp, tail, head, find, grep, chmod, chown,kill, rm, ping等等。
2、一些基本的概念:管道,重定向,标准输出,标准错误输出等等。
3、vi或vim的基本操作。
4、计划任务的配置。
5、日志查看分析。
6、了解php, apache, nginx等的配置。
7、能读懂一些bash shell脚本,会一些df,du,netstat之类的命令。
我说一下,为什么需要学习linux。
我是做PHP的,之前在一家国内电商公司做促销相关开发。
1、我接手这个项目的时候,很多东西都是没有文档的,我必须自己上服务器去摸清楚一些状况。
1)我想知道有哪些脚本在跑,这些脚本是否都有日志输出等等。
这个就需要会一些linux基本命令,cd,ls,find,cat,crontab等等。
2) 我想了解一些web项目放在什么位置,配置的域名,访问日志放在哪儿。
这个就需要我知道查看nginx的虚拟主机配置,vim等的基本用法。
2、部署上线是有专门运维负责的,但是上线之后,我得确认一切运行正常。
对于web程序,线上页面上作一些操作测试就行。
对于脚本,最好的方法当然是查看日志了,crontab, cat, tail等命令必不可少。
对于数据,就得mysql命令行查看了。
3、负载情况查看,有时候,运维会在服务器上装上一些zabbix之类的东西,让你可以很方便地在网页上查看服务器上的状况。
但是有的服务器上没有装,那你只好自己上服务器看了。top,sar, ps等命令就有必要了。
4、统计,有时候产品会让你帮统计一些数据。sed, grep, wc等就有了必要。
5、排查线上问题。这个时候所需要会的是最多的。
1)、分析日志很重要。cat, sed, tail, wc等必不可少。
2)、一些查看进程,磁盘状况,连接数,DNS状况的命令必不可少,ps, df, du, netstat, nslookup, ping等。公司是有专业运维的,但是他们是不了解的你的项目的,脱离你的项目,有些 问题单靠运维是发现不了的,所以这些你也得会。
6、有一次有个脚本,我们希望它循环执行,每次执行只有几秒的时间间隔,这个单靠计划任务不好弄,所以我还得会一些bash shell。
7、运维只管线上,开发环境和测试环境一般是不管的。那么对于有些项目,我们得自己安装一些扩展或软件,自己在开发环境和测试环境中部署。
我现在这个公司,有些东西运维是不管的,得自己去部署。
那就得会chmod, chown, scp, svn,mkdir, rm, crontab等命令了,得了解nginx, rsync的一些配置。
楼里人说不重要,用winscp就行了。
1、实际上,对权限管理稍微严格的公司,是不可能让你直接通过ssh协议登上去的,所以像winscp这样的软件根本就用不了。
我目前所在的公司,都是先登录到通道机,再登录到目的服务器上的。
2、难道大家做的项目中一个脚本都没有,不需要查看计划任务,不需要重定向输出计划任务的输出?
3、日志,有时候虽然运维通会让你能够直接通过web界面获取日志,但如果这个日志有好几个G呢? 谢邀,正如上面各位所答,如果仅仅是工作需要。并不需要太多的Linux水平。日常操作也不用登录到Linux中,删改文件用winscp拉到Windows就好了。
然而,如果题主把Linux作为兴趣,在业余时间钻研的话。那么对你PHP的帮助决不是一星两点的。熟悉Linux及其工作机制的话,你解决PHP问题的能力和速度都会有很大的提升。 一般学到会自制rpm/deb包的程度就差不多了。 看情况,普通PHP只要会文件操作,如果想成为大师级必须精通。 别学做包这种没用的,学学lnmp环境的搭建(lamp已经过时了,不过学学也可以),学学性能分析和优化 Apache,Nginx配置什么的要会吧。。。。最起码的 Web 后端, Linux 学得多深都不为过啊 因为目前业界99%都是 Linux 系。所以一定要学。但是懂 Linux 操作只是基本,那些命令,各种服务安装和配置,只要去用,就一定能学会,没什么难的。更重要的是原理,Linux 的基石,就算不学透至少要清楚,建议那些命令会了后要再看看 TCP/IP 协议详解,APUE。这样以后称自己是后端开发才有底气。 本人去年应届PHP,目前已经离不开Linux下的操作,个人看法是:非常有必要。
原因上面的答案已经有提到一些了。 软件测试
上一篇: 用户登录处理的代码怎么写啊
下一篇: 关于在linux上安装php扩展库