Linux实战技能100讲 一网打尽Linux必备核心技能
《Linux实战技能100讲》课程背景
在Linux实操的过程中,你是否有过这些疑问:
如何提取日志中含有关键字的指定行,上一行或上几行?
ln 做了符号链接,对符号链接进行权限修改,原文件是否会受到影响?
Shell 脚本里有很多特殊符号,到底该怎么用?网上流传的 .(){.|.&};. 脚本能不能执行?
Linux 里的编辑器繁多,比如 vim、sed、awk, 它们各自有哪些特点?
如何在不同的场景下做出合适的选择?
这些虽然不是什么刁钻的问题,你在网上也能搜到一堆参考资料,但是看完之后还是会觉得似懂非懂,无法举一反三,从网上复制粘贴了事,则极有可能不起作用。
如果侥幸解决了特定的问题,也意识到自己需要系统学习一下 Linux ,以便今后能更高效地解决其他 Linux 相关问题,但又发现 Linux 涉及到的常用命令实在是太多了,更别提每个命令又有一大堆相关参数,导致学起来毫无头绪。
而且,对于习惯了 Windows、macOS 等图形界面的用户来说,Linux 以命令行为主的操作方式导致它刚开始的学习曲线还是很陡峭的。因此,我们和有着15年运维工作经验尹会生老师一起开设了《Linux实战技能100讲》这门课程,希望能帮你构建起系统化的 Linux 实战技能,逐步成长为一名 Linux 实战高手。
《Linux实战技能100讲》课程亮点
实战导向:学完即可轻松应对工作中 85% 以上的 Linux 使用场景;
内容全面:不仅包括基本的系统操作指令和常见服务搭建,还包含 Vim 的使用、Shell 编程等内容;
结业项目:课程最后会通过搭建一个家用 NAS 系统将课程知识点全部贯穿起来,让你牢牢掌握所学知识。
本课程基于 CentOS 7 进行讲解。
《Linux实战技能100讲》讲师简介
你好,我是尹会生。
目前我在金山西山居担任系统运维经理,负责公司的运维平台建设和运维相关的工具开发工作。
在我从事运维工作的十多个年头中,几乎每天都在和 Linux 打交道,在工作中我使用 Linux 搭建了大量的软件平台和服务,诸如西山居私有云平台、运维管理平台和大数据处理平台等等,在对这些系统进行管理和优化的过程中,我深刻体会到了 Linux 系统的灵活和强大,同时积累了大量的 Linux 系统的使用经验,我也希望能够将这些知识分享给你。
Linux 是目前最流行也是最普及的服务端操作系统;你每天都在使用的 App、登录的网站大部分都运行在 Linux 操作系统之上,正是因为它稳定和安全的特性,得到了大部分公司的青睐。
如果你想从事服务端的运维和开发工作,Linux 是你必须具备的技能。
由于 Linux 的大部分操作都是通过命令行进行的,对于习惯了 Windows、macOS 等图形界面的用户来说,一开始学习曲线还是很陡峭的。
而很多网络上的资料为了强调全面性,会将大量的命令和参数进行简单的罗列,造成了很多同学在刚开始学习时就被大量的命令吓倒。
为了你更容易上手,我将基础功能、扩展功能进行拆解,先对常用的命令进行讲解和演示,争取让你能够在最短时间入门。
对于扩展功能,我会在课程中根据不同的使用场景来展开讲解,并结合原理带你边学边练,而不需要你死记硬背。
最后,我还会通过几个实际的案例,把这门课涉及到的知识点都贯穿在一起,让你对所学的内容掌握得更加牢固。
通过对本课程的学习,我将带你掌握 Linux 的管理、使用和常用服务搭建,无论你想从事 Linux 系统的运维还是开发工作,学完后都能像使用 Windows 一样熟练使用 Linux。
你在这门课程中学习到的知识也足够应对工作中大部分的 Linux 使用场景,同时也为你更深入地学习 Linux 高级功能打下坚实的基础。
课程的最后,我还设计了一个有趣的动手环节,带你搭建一个家用多媒体共享服务,你可以通过它远程下载你喜欢的电影,同时它还支持家庭成员之间的资料备份、文件共享等功能,未来你甚至还可以把它打造成一个家庭娱乐中心。
我也相信,随着你的 Linux 技能不断增长,你还可以用它来做出更好用、更好玩儿的事情。
课程收获
快速掌握 Linux 常用命令及配置;
熟练进行系统管理和故障排查;
熟悉 Vim 基本操作及 Shell 编程;
搭建并维护基于 Linux 的常用服务。
《Linux实战技能100讲》课程目录
基础篇
课程介绍
内容综述
什么是Linux
如何安装虚拟机(以VirtualBox为例)
在虚拟机上安装Linux系统
第一次启动Linux
系统操作篇
万能的帮助命令
- help命令
- man命令
- info命令
Linx系统下的文件管理(一切皆文件)
- 初识ls、cd、pwd命令
- 目录与文件的基本操作:mkdir、rmdir、cp、rm、mv命令
- 文本查看操作:head、 tail 、cat 、wc 命令
打包与压缩常用命令和参数介绍
- tar命令
- gzip命令
- bzip2命令
强大的文本编辑器Vim
- vi与Vim的区别
- Vim的四种模式
- 正常模式的基本指令
- 命令模式的基本指令
- 可视模式的用途及介绍
Linx系统下的用户管理
- 特权用户和普通用户有哪些区别
- 如何创建用户
- 用户、用户组管理及密码管理
- 用户身份的切换:su、sudo命令的区别及使用方法
- 用户和用户组的配置文件介绍
权限管理
- 文件与目录权限的表示方法
- 文件权限的修改方法和数字表示方法
- 使用chmod、chown命令进行权限管理
- 文件的特殊权限
系统管理篇
网络管理
网络状态查看命令:ifconfig、mii-tool、route
网络配置命令:ifconfig、ifup、ifdown
路由命令介绍:route、ip
网络故障排除命令:ping、traceroute、nslookup、 telnet、tcpdump、netstat、ss
网络服务管理命令:network与NetworkManager
常用网络配置文件
- ifcfg-eth0
- /etc/sysconfig/network
- /etc/hosts
- /etc/resolv.conf
软件安装
- 软件包管理器的使用
- 使用rpm命令安装软件包
- 使用Yum包管理器安装软件包
- 通过源代码编译安装软件包
- 如何进行内核升级
- grub配置文件介绍
进程管理
- 什么是进程
- 使用ps和top命令查看进程
- 进程的控制与进程之间的关系
- 进程的通信方式与信号:kill命令
- 守护进程和系统日志
- 服务管理工具systemctl
- SELinux简介
内存与磁盘管理
内存与磁盘使用情况查看:free、df、du命令
磁盘的分区格式化与挂载命令以及相关配置文件介绍
交换分区swap的查看与创建
ext4文件系统与文件访问控制列表facl功能
- inode 与 block
- 连接文件In
- facl
磁盘配额的应用
软件RAID的使用
逻辑卷LVM的用途与创建
如何对逻辑卷LVM进行在线扩容
系统综合状态查看命令sar以及第三方命令
Shell 篇
认识bash
- 什么是Shell
- Linux的启动过程
- bash有哪些特点
- Shell脚本的执行
- 内建命令与外部命令的区别
管道与重定向
- 管道符与子进程sort、join、cut命令及子Shell
- 重定向符号
变量与环境变量
- 变量的定义、查看与赋值、变量替换
- 变量的作用范围:全局变量与局部变量
- 常见环境变量:$?$$ $0 $PATH$PS1
- 坏境变量的配置文件
转义与引用
- 特殊符号在Shell中的处理
- 转义与引用符号
运算符:算数运算符号
特殊符号大全
测试与判断
- test测试:比较数值、字符串和文件
- 使用if-then语句判断
- 使用 if-then-else 语句
- 嵌套if的使用
循环
- 使用for遍历命令的执行结果
- for遍历变量和文件内容
- 使用C语言风格的for命令
- while循环的使用
- 死循环
- until循环
- break语句
- continue语句
- 对命令行参数的处理
函数
- 自定义函数的使用
- 分析常见的系统脚本
脚本控制
- 脚本优先级控制:nice、renice
- 捕获信号
计划任务
- —次性计划任务at
- 周期性计划任务cron
- 计划任务加锁flock
文本操作篇
正则表达式与文本搜索
- 元字符、扩展元字符
- 文件的查找find
- 文本内容的过滤grep
行编辑器sed与awk介绍
sed的替换命令
sed的替换命令加强版
sed的其他常用命令
sed多行模式
什么是sed的保持空间
awk的三个例程
awk的字段引用和分离
awk的表达式:常量、变量、操作符以及系统变量
awk的条件和循环
awk的数组
awk的函数
服务管理篇
防火墙
- iptables的表和链
- iptables 的 filter 表
- iptables 的 nat 表
- iptables配置文件与firewalld服务介绍
使用SSH服务远程管理主机
- SSH服务介绍
- SSH服务配置文件与SSH远程命令的使用
- SSH命令与一般故障排除
- SSH公钥认证
- 使用scp、sftp命令服务远程拷贝文件
使用FTP服务远程传输文件
FTP服务器vsftpd介绍与软件包安装
vsftpd服务的配置文件介绍
FTP命令行的使用与一般排错
基于虚拟用户的FTP服务器搭建
使用samba和NFS服务传输文件
samba与Windows共享服务介绍
samba服务的启动和基本配置
NFS服务的配置
NFS服务的启动停止
使用Nginx服务部署静态网站
- Nginx软件的下载和安装
- Ngfnx服务器的启动
- Nginx常用配置文件的修改
- 使用Nginx配置域名的虚拟主机
使用LNMP服务部署动态网站
- 什么是LNMP
- LNMP环境搭建
使用bind服务搭建DNS服务器
- DNS服务的原理
- bind服务器的安装和配置
- nslookup和dig命令的使用
- 从域名服务器的配置
案例篇
从0开始构建家用NAS服务
- 系统环境准备,软件包安装、挂载分区及设置防火墙
- 对各个服务进行配置,并设置相应权限
- 登录验证
共有 0 条评论