学会Linux,看完这篇就行了!
对于测试同学来说,Linux基本属于必学必会内容,招聘要求中基本都会出现Linux相关字眼,面试也经常被问到,原因很简单,因为现在公司的服务器绝大多数都是Linux,如果你一无所知,很多时候听不懂别人在说什么,自然而然也很难开展工作。
那么对于测试人员来说,Linux在日常工作中有哪些应用场景呢?
搭建测试环境
对于测试环境的搭建,稍微具备一定规模的公司,一般是由专门的运维人员进行环境搭建和维护,包括生产环境和测试环境;如果只有几个人的初创公司,都不存在运维这个岗位,那么自然而然就需要测试人员或开发人员来搭建了;有时候需要本地部署测试,因此也可能需要测试人员自己搭建一套环境。
查看日志,分析定位Bug
查看日志用的比较多的就是tail和grep这两个命令,前者是动态查找,后者是查找。
先说一下tail动态查找,一般格式为
tail -f -n
,-f 表示持续侦测,实时请求一下页面或者接口就会刷新的日志出来,比如tail -f logs/catalina.out,要等到按下ctrl+c
才能退出tail的侦测,-n 这里的n需要替换成具体的数字,表示显示几行的意思,如tail -5 caituotuo.log就表示查看末尾5行。再说一下grep查找,一般是根据开发代码中打印的关键字信息去查找日志,比如关键字是caituotuo,就可以使用grep caituotuo test.log进行查找,对于关键字是什么,日志文件名是什么,以及去哪个服务器里面查找等问题如果不清楚可以问下开发同学。现在一般都是微服务架构,不同的服务处理不同的业务,可能就会有多类日志文件,比如前台日志、后台日志、缓存日志等,每类日志可能还会根据时间进行分别存储,比如按日生成一份日志文件2022-9-17.log、2022-9-18.log,不同公司可能不太一样,但是方式都是大同小异。
性能监控,监控操作系统服务器硬件资源
监控CPU会用到top命令;监控内存会用到free命令如free /proc/meminfo;监控磁盘会用到df、du命令;监控网络会用到netstat命令,如netstat -ntpl。
同时监控以上四个资源可以用到vmstat或dstat,也可以用可视化工具nmon对操作系统硬件资源进行监控。
修改配置文件
比如:修改Tomcat端口号 vi server.xml
以上说了这么多,可见测试人员具备Linux技能是十分重要的,下面就来介绍一下Linux以及一些常用命令。
Linux简介
作者
林纳斯·托瓦兹(Linux Torvalds),的电脑程序员、黑客、Linux内核的发明人及该计划的合作者。
“有些人生来就是具有统率百万人的风范;另一些人则是写出颠覆世界的软件而生。一个能同时做到这两者的人,就是托瓦兹。”
美国《时代》周刊对“Linux之父”林纳斯·托瓦兹(Linux Torvalds)给出了极高的评价。甚至,在《时代》周刊根据读者投票评选出的二十世纪100位重要人物中,林纳斯·托瓦兹(Linux Torvalds)居然排到了第15位,而从20世纪的后几年就开始霸占全球首富称号的比尔盖茨(微软,Windows)不过才是第17位。
Linux版本
Linux的发行版本其实就是Linux核心(通过uname -a命令可以查看),再加上国外的实用程序组成的一个大软件包而已。
Linux常用的发行版本:
- Ubuntu:Ubuntu是一个以桌面应用为主的Linux操作系统,其名称来自非洲南部祖鲁语或豪萨语的“Ubuntu”一词(译为乌帮托或乌班图)。
- Red Hat:Red Hat Linux是全世界应用广泛的Linux之一,Red Hat因其易于安装而闻名,在很大程度上减轻了用户安装程序的负担。
- CentOS:CentOS是Community ENTerprise Operating System的简称,CentOS正是这个Red Hat的克隆版本,CentOS可以像Red Hat一样的构筑Linux系统环境,但不需要向Red Hat付任何的产品和服务费用,同时也得不到任何有偿技术支持和升级服务。
Linux优势
企业部署软件的服务器为什么大多数会选择Linux系统,在我看来主要有以下几个优点:
- Linux系统所执行各种程序的速度是比windows要快很多的。
- 在windows中我们会安装不同杀毒软件来保证计算机不被各种病毒攻击,但在Linux中你可以完全放心,只要有病毒在Linux中运行,不出几个小时Linux的各个版本都会进行更新,因为全世界的程序员都在维护它,因此Linux要比windows安全。
- 在Windows中安装各种软件的时候,很多软件都会需要计算机进行重启才可以进行使用,重启导致客户体验差,但在Linux中根本不需要重启计算机,每安装一种软件都会有相应的服务,只需要使用命令重启软件服务即可。
- Windows太浪费系统资源,但是Linux不会,在Linux系统启动后,内存与CPU消耗的资源非常少,但Windows只要一启动就会占用很大的内存。
- 在Windows中进行编程的时候,我们要安装不同的开发软件之类的,但是在Linux,我们只需要学会一种,vi命令(纯文本的方式)就可以了。
Linux虚拟机
对于想练习Linux命令的同学,首先需要有一台Linux操作系统的虚拟机,提供几种方法:
自行购买一台云服务器
在线练习Linux命令网站:https://copy.sh/v86/?profile=archlinux
在本机上搭建虚拟机(例如通过VMware工具搭建)
需要
VMware安装包
以及搭建好的虚拟机文件
可关注公众号测试蔡坨坨
回复关键词虚拟机
获取。操作步骤:
下载并安装VMware工具
下载搭建好的虚拟机文件(centOS7,已安装Java环境及MySQL数据库)
打开虚拟机文件
开机并打开网络连接,可查看IP地址并通过Xsheel和Xftp工具连接
远程工具
Linux服务器一般都是在远程,因此我们需要通过工具去连接远程服务器,工具也是多种多样,这里推荐Xshell和Xftp。
Linux常用命令
文件和目录的相关命令
ls命令(list directory)
功能描述:列出指定目录下的文件和文件夹名称。
格式:ls [参数] [目录或文件]
参数 含义 -a 列举目录中的全部文件,包括隐藏文件(开头为 . 的文件为隐藏文件)。 -l 长数据串列出,列举目录中的细节,包含权限(r/w/x/-)、所有者、组群、大小、创建日期、文件是否是链接等(不包含隐藏文件)。可以使用ll代替ls -l ,表示列出当前路径下的所有文件及文件夹的详细信息。 -R 递归查询,不仅查看当前目录下所包含的内容,还会把子目录的内容一并查询出来。 -al 列举目录中的细节,包含权限、所有者、组群、大小、创建日期、文件是否是链接等(含隐藏文件)。 -r 逆向查询,从后面向前地列举目录中的内容。 -s 文件大小,以数据块(Linux中自己的一种数据大小的表示形式)的形式做表示。 ls -l caituotuo.txt 列举文件caituotuo.txt的所有信息,也可以指定目录,例如:ls -l /etc。 相关文章