自从自动化课程升级加入了 Docker 技术之后,Docker 相关操作都在 Linux 上,很多同学自己在操作的时候导致各种问题,有些命令不存在,环境变量不会配,容器访问不了,启动报错等等一些列问题。导致这些问题的根源还是大家对 Linux 操作系统不熟悉,接下来我们就讲一下作为测试工程师应该掌握哪些 Linux 技能。

一、什么是 Linux

Linux,全称 GNU/Linux,是一种免费使用和自由传播的类 UNIX 操作系统,其内核由林纳斯·本纳第克特·托瓦兹于 1991 年 10 月 5 日首次发布,它主要受到 Minix 和 Unix 思想的启发,是一个基于 POSIX 的多用户、多任务、支持多线程和多 CPU 的操作系统。它能运行主要的 Unix 工具软件、应用程序和网络协议。它支持 32 位和 64 位硬件。Linux 继承了 Unix 以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。Linux 有上百种不同的发行版,如基于社区开发的 debian、archlinux,和基于商业开发的 Red Hat Enterprise Linux、SUSE、Oracle Linux 等。简单来说 Linux 和 windows 一样也是一个操作系统,但是又区别与 windows。

二、Linux 与 windows 区别

源:Linux 是开源的,windows 是闭源的。

内核:Linux 操作系统使用 Linux 内核,Windows 操作系统使用 NT 内核。

软件支持:Linux 软件支持很少,Windows 软件支持丰富,目前大部分硬件驱动厂商都支持 Windows 少部分支持 Linux

人机交互:Linux 使用命令行模式为主要交互方式,有一定的门槛。windows 通过图形界面使用鼠标点击为主要交互方式,易用性更好。

市场定位:Linux 市场主攻服务器市场,Windows 系统主打桌面市场。所以企业服务器都是用的 Linux 系统,而日常办公都是实用的 Windows 系统。

三、Linux 目录介绍

在学习 Linux 之前,了解 Linux 文件系统的目录结构,是学好 Linux 的至关重要的一步,深入了解 Linux 文件目录结构的标准和每个目录的详细功能,对于我们用好 Linux 系统至关重要。

/bin/: 用来贮存用户命令。目录 /usr/bin 也被用来贮存用户命令。

/boot/: 开机引导目录,包括 Linux 内核文件与开机所需要的文件。

dev (devices):设备目录,所有的硬件设备及周边均放置在这个设备目录中。

/etc/: 系统配置文件。

/home/: 用户主目录的默认位置。

/lib/: 开机时常用的动态链接库,bin 及 sbin 指令也会调用对应的 lib 库。

/lib64/: 开机时常用的动态链接库 64 位,bin 及 sbin 指令也会调用对应的 lib 库。

/media/: 可移除设备挂载目录,类似软盘 U 盘 光盘等临时挂放目录。

/mnt/: 用户临时挂载其他的文件系统,额外的设备可挂载在这里。

/opt/: 第三方软件安装目录,现在习惯性的放置在/usr/local 中。

/proc/: 虚拟文件系统,通常是内存中的映射。

/root/: 超级用户的主目录。

/run/: 保存系统运行时需要的内容,系统下次启动时会重新生成。

/sbin/: 许多系统命令(例如 shutdown)的贮存位置。目录 /usr/sbin 中也包括了许多系统命令。

/srv/: 服务启动后需要访问的数据目录。

/sys/: 跟 proc 一样虚拟文件系统,记录核心系统硬件信息。

/var (variable) :用于存放运行时需要不断改变数据的文件,例如日志文件和打印机假脱机文件。

/tmp/: 用户和程序的临时目录,所有用户对该目录均可读写。

/usr/: 包括与系统用户直接有关的文件和目录,例如应用程序及支持它们的库文件。

/var/log/

/var/log/message :系统启动后的信息和错误日志,是 Linux 中最常用的日志之一

/var/log/secure :与安全相关的日志信息

/var/log/maillog :与邮件相关的日志信息

/var/log/cron :与定时任务相关的日志信息

/var/log/spooler :与 UUCP 和 news 设备相关的日志信息

/var/log/boot.log :守护进程启动和停止相关的日志消息

四、基本命令

查看系统信息

lsb_release -a

如果 lsb_release 命令不存在,则需要先安装再使用

yum -y install lsb_release-lsb

环境变量配置

VIM /etc/profile

修改配置文件后重新加载配置文件

source /etc/profile

显示当前系统中资源消耗情况

top

显示当前内存和交换空间使用情况

free -m

free -h

显示文件系统磁盘空间的使用情况

df

显示网卡

ifconfig

检查网络或者项目是否可访问

ping www.baidu.com
curl -I 172.40.1.142:18001/lemnon-base

查看进程

ps -ef | grep 进程名称

结束进程

kill -9 PID

查看端口

netstat: netstat -an |grep 8080
lsof -i :8080

五、服务器时间相关命令

查看当前时间

date

修改时间时分秒

data -s “11:30:30”

修改完整时间

data -s “2021-12-12 11:30:30”

同步网络时间

如果没有 ntpdate 命令要先安装,-u 参数可以越过防火墙与主机同步

ntpdate -u ntp.api.bz

查看硬件时间

hwclock --show

将系统时间写入到硬件

hwclock -w

设置系统时间和硬件时间同步

hwclock --hctosys

注意点

修改服务器时间修改的是系统时间,如果不写入硬件,服务器重启后设置的时间会失效。

六、防火墙相关命令

查看 firewall 服务状态

systemctl status firewalld

查看 firewall 的状态

firewall-cmd --state

查看防火墙规则

firewall-cmd --list-all

开启防火墙

service firewalld start

重启防火墙

service firewalld restart

关闭防火墙

service firewalld stop

查询端口是否开放

firewall-cmd --query-port=8080/tcp

返回 no 表示未开放,yes 表示已开放

开放指定端口

firewall-cmd --permanent --add-port=8080/tcp

从防火墙规则中移除指定端口

firewall-cmd --permanent --remove-port=8080/tcp

重启防火墙

firewall-cmd --reload

修改配置后要重启防火墙才会生效

七、文件与目录操作

跨服务器拷贝命令

scp -r testdir root@172.21.0.132:/mnt/test

分页显示文本文件内容,可前后翻页,空格向前,b 向后,q 退出,回车:查看行,空格:翻页

more test1.txt

分页显示文本文件内容,可前后翻页,空格向前,b 向后,支持底行模式,q 退出,回车在:模式下/输入查找的字符

less test1.txt

文字过滤:在指定文件中查找包含指定内容的行,在 test1.log 中查找包含 aaa 的所有行

grep aaa test1.log

动态查看文件

tail -200f test.log

读取标准输入的数据,并将其内容输出成文件,追加写入

grep Linux boot.log | tee -a 2022.txt

tail -200 test1.log | grep ‘test’ | tee -a test2.log

查找包含 name 或者 age 的行(两个条件)

sed -n ‘/name/,/age/p’ aaa.txt

查看文件的创建、修改时间

stat text.txt

Access:文件最近访问时间

Modify:文件内容最近修改时间

Change:文件属性最近修改时间

覆盖写入文件

>:echo "test"> test.txt

追加写入文件

>>: echo "test" >> test.txt

VIM 常用操作

:set nu 显示行号。
:set nonu 取消显示行号。
i 在光标签插入。
:wq 强制性写入文件并退出。即使文件没有被修改也强制写入,并更新文件的修改时间。
:x 写入文件并退出。仅当文件被修改时才写入,并更新文件修改时间,否则不会更新文件修改时间。

八、压缩与解压

tar 命令

将 test.txt 压缩成 test.tar 文件,被压缩文件可以是多个文件或者文件夹

tar -cvf test.tar test.txt

解压缩.tar 文件

tar -xvf test.tar

是否需要使用 gzip 压缩和解压(压缩/解压 .gz 和 .tar)

tar -zcvf test.tar.gz test.txt

tar -zxvf test.tar.gz

zip 命令

压缩递归处理,将 test1.txt 压缩成 test.zip 文件,被压缩文件可以是多个文件或者文件夹

zip -r test.zip test.txt

解压缩.zip 文件

unzip test.zip

gzip 命令

压缩命令后面的文件,原文件会消失,直接变成压缩后的文件

gzip test.txt

解压 test.txt.gz

gzip -d test.txt.gz

递归解压

gzip -dr test.txt.gz

九、文件与目录权限相关

文件或目录权限

u:表示文件所属者;

g:表示用户组;

o:表示其他用户

r:4 可读权限;

w:2 可写权限;

x:1 可执行权限;

-:0 表示无权限

+:表示添加权限;

-:表示去掉权限

chmod u+x test.txt:给当前用户添加可执行权限

chown user:group test.txt 修改文件所属用户和所属组

chown -R user:group test.txt 修改指定目录以及其子目录下所有文件所属用户和所属组

十、用户相关

useradd testUser: 添加用户
passwd testUser: 修改用户密码
userdel testUser: 删除用户


这些资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。

关注我的微信公众号:【伤心的辣条】自行获取~

我的自动化测试之路,一路走来都离不每个阶段的计划,因为自己喜欢规划和总结,所以,我和朋友花了一段时间整理编写了《软件测试工程师发展规划路线》,也整理了不少【教程资源】,打包好了分享在群里面。有需要的朋友可以进群:914172719 获取。希望会给你带来帮助和方向

喜欢软件测试的小伙伴们,如果我的博客对你有帮助、如果你喜欢我的博客内容,请 “点赞” “评论” “收藏” 一键三连哦!

黄金三月,技术自检 | 作为测试人必备的10项 Linux 技能相关推荐

  1. 独家 | 成功开发者必备的5项软技能

    作者:Marisa Hoenig 翻译:王可汗 校对:欧阳锦本文约2000字,建议阅读6分钟 本文介绍了除了扎实的编程能力之外,成功开发者必备的5项软技能. 标签:编程 一次又一次的面试失败,我感到很 ...

  2. 2020年,JavaScript开发人员必备的5项高薪技能

    全文共1816字,预计学习时长5分钟 图源:unsplash 开发人员的一生可以用两句话概括:计算器,以及学习新技能.成为开发人员绝非易事,他们是解决问题的人,也是不断学习的人.科技世界每天都在快速变 ...

  3. UX设计师必备的10项技能

    随着用户体验设计变得越来越受欢迎,需求也越来越大,显然需要多样化的技能.以下是用户体验设计师必须具备的10项技能 没有哪个严肃的用户体验设计师想成为一个无所不知.一事无成的人.但是,有许多UI-UX设 ...

  4. 2013年必备的四项工作技能

    尽 管企业明年仍将对花在员工身上的每个子儿斤斤计较,但他们同时也希望员工表现出更高超的技能和更好的业绩. 对于希望获得成功的员工而言,仅仅拥有基本的能力是不够的. 专家说,为了在明年获得晋升或找到工作 ...

  5. Linux运维工程师必学必备的8项IT技能

    如果你在学习Linux,那么强烈推荐你选择RHEL和Centos作为学习的Linux发行版本,在公司及企业当中他们是使用最多的,毕竟学习除了本身是爱好,其次也是为了就业.Centos是RHEL的克隆版 ...

  6. 你需要培养科研必备的10项能力

    1 阅读文献能力 阅读文献是科研者比较重要的一项工作,因此需要科研者培养自己的阅读文献的能力.阅读文献能力并不是简单地阅读一篇或几篇文献就好了,而是需要你在阅读的过程中提炼有价值的东西,从中受到何种启 ...

  7. 不只是技术!成为IT经理必备的十大软技能

    不只是技术!成为IT经理必备的十大软技能 地址http://www.csdn.net/article/2013-11-07/2817427-10-soft-skills

  8. 程序员必备的10大健康装备!

    前言 做为程序员,为了实现理想而奋斗不懈,每天对着电脑辐射坐在工位上拼搏8小时甚至更久,这种如同机器旁边的机器般的工作对于健康的损耗何其之大?再这么下去,还真得应了:"职务不高,工资不高,血 ...

  9. 年薪40万AI工程师必备的能力项,你达标了吗?

    对人工智能而言,2017是不平凡的一年: AlphaGo再胜人类 腾讯宣布进军AI 百度无人驾驶汽车上五环 AI教育要从娃娃抓起 寒武纪成全球AI芯片首个独角兽 阿里巴巴成立达摩院 类人机器人Soph ...

最新文章

  1. 界面之下:还原真实的MV*模式
  2. 不是开发者也能玩得high!科大讯飞1024开发者节,看AI如何改变你的生活
  3. 如何用auto_ptr做为函数的参数进行传递
  4. 诈骗者如何伪造电子邮件地址,以及如何分辨
  5. IdentityServer4实战 - 与API单项目整合
  6. [转载]PSCAD调用MATLAB/SIMULINK之接口元件设计
  7. 实现Fragment的切换和ViewPager自动循环设置切换时间
  8. 《程序员代码面试指南》第二章 链表问题 删除无序链表中值重复的链表
  9. Adobe下周将推新补丁和新的更新模式
  10. 每日算法系列【LeetCode 926】将字符串翻转到单调递增
  11. oracle 体系结构及内存管理 14_锁
  12. 快点来学吧!Spring事务是如何传播的?快来收藏!
  13. 华为android 驱动安装失败,华为手机驱动出现安装失败的问题怎样解决?
  14. CH582M,PWM模拟DAC实现WAV播放,FATFS文件
  15. 【离散数学】集合的基数
  16. Power BI中使用图片作为切片器
  17. UG/NX二次开发Siemens官方NXOPEN实例解析—1.6 BlockStyler/SelectionExample
  18. 腾讯高工保姆级“Java成长手册”,层层递进,全是精华!Github上都没有!
  19. c语言程序设计分值,计算机考试题分值分布
  20. Android Data Recovery for Mac(安卓数据恢复软件)破解版安装

热门文章

  1. Windows Workflow HOL学习笔记(十二):创建状态基工作流
  2. 《网管员必读》系列丛书试读连载
  3. python 构造函数_Python和其他编程语言的代码对比
  4. linux命令大全_Linux 系统下查看硬件信息命令大全
  5. 我用Python把抖音上的美女图片转字符画,期望的AI目标更进一步【机器学习算法实战小项目,k聚类算法图片转化字符画】
  6. 培养逻辑思维的app_久趣数学思维V1.4.1-久趣数学思维APP下载
  7. 原理 rpm_图文详解,微型直流电机的工作原理
  8. java 正则判断二进制_用正则表达式判断一个二进制数是否能被3整除
  9. java通道 硬件通道 如何联系_Java NIO5:通道和文件通道
  10. error C2248: “CObject::CObject”: 无法访问 private 成员(在“CObject”类中声明) [问题点数