
|
课程培训
|
Linux操作系统应用原理与实践培训课程6
Linux操作系统应用原理与实践培训课程大纲
培训对象:
培训目标:
培训内容介绍:
一、Linux概述与系统部署 (1)Linux操作系统概述:Linux的发展历史与开源文化;GNU与Linux内核的关系;Linux的主要发行版(Red Hat/CentOS/Ubuntu/Debian)对比与选型;Linux在服务器、嵌入式、云计算等领域的广泛应用。 (2)Linux系统部署:获取安装镜像与制作安装U盘;CentOS/Ubuntu系统的安装过程详解(分区方案/软件包选择/网络配置);虚拟机环境(VMware/VirtualBox)中安装Linux;双系统安装的注意事项;首次登录与基本环境配置。 (3)Linux体系架构:Linux系统的层次结构(硬件层/内核层/系统调用层/用户层);Linux内核的主要子系统(进程管理/内存管理/文件系统/网络栈/设备驱动);用户态与内核态的切换机制;系统启动流程(BIOS→BootLoader→Kernel→Init→Login)。
二、命令行基础与Shell环境 (1)命令行入门:终端(Terminal)与Shell的概念;Bash作为默认Shell的核心功能;命令的基本结构(命令名 选项 参数);获得命令帮助(whatis/--help/man/info);命令历史与补全机制。 (2)文件系统导航:Linux文件系统层次标准(FHS);核心目录详解(/etc /var /usr /home /tmp /proc等);绝对路径与相对路径;目录操作命令(pwd/cd/ls/mkdir/rmdir);文件操作命令(touch/file/stat)。 (3)Bash环境定制:环境变量与本地变量的区别;PATH变量的作用与修改;别名(alias)的设置与应用;命令提示符(PS1)的自定义;Bash启动文件(.bashrc/.bash_profile)的配置。
三、文件与目录管理 (1)文件操作核心命令:复制(cp)的各种选项(-r/-p/-a/-d);移动与重命名(mv);删除(rm)的安全使用(-i/-f);创建空文件(touch)与修改时间戳。 (2)文件查看与处理:文本文件查看(cat/more/less/head/tail);tail -f实时监控日志;文件内容统计(wc);文件类型识别(file);文件内容排序(sort);去除重复行(uniq)。 (3)文件查找与定位:find命令的全面使用(按名/按型/按大小/按时间/按权限);find与-exec结合执行动作;locate命令与updatedb数据库;which与whereis定位程序文件。 (4)文件链接与归档:硬链接与软链接(符号链接)的原理与区别;ln命令创建链接;tar打包与压缩(gzip/bzip2/xz);tar的各种选项(-c/-x/-f/-z/-j/-J);cpio与dd命令简介。
四、文本处理三剑客 (1)正则表达式基础:基本正则表达式(BRE)与扩展正则表达式(ERE)的区别;元字符详解(. * + ? ^ $ [] {} () |);字符集与排除集;位置锚定与分组引用;正则表达式在Linux工具中的应用。 (2)grep文本搜索:grep命令的基本语法;常用选项(-i忽略大小写/-v反向匹配/-r递归搜索/-n显示行号/-c计数);grep结合正则表达式进行模式匹配;egrep与fgrep的区别;多模式匹配(-e/-f)。 (3)sed流编辑器:sed的工作原理(模式空间/保持空间);sed的基本语法(sed '范围+动作' 文件);常用动作(p打印/d删除/s替换/a/i/c插入/修改);地址定界(行号/正则/范围);sed脚本文件的使用;高级特性(保持空间/模式空间交换)。 (4)awk文本分析工具:awk的架构与执行流程;模式(Pattern)与动作(Action)的构成;内置变量($0/$1/$NF/NF/NR/FS/OFS);awk中的条件判断与循环;awk数组与统计功能;awk脚本编写;awk结合系统命令进行数据分析。
五、用户与权限管理 (1)用户与组管理:用户账户文件(/etc/passwd /etc/shadow)结构解析;组账户文件(/etc/group /etc/gshadow);用户管理命令(useradd/usermod/userdel);组管理命令(groupadd/groupmod/groupdel);passwd修改密码策略。 (2)文件权限体系:文件类型(-/d/l/b/c/s/p)的识别;权限表示法(rwx与八进制);chmod修改权限(符号模式与数字模式);chown更改所有者与组;chgrp更改所属组;umask默认权限设置。 (3)特殊权限与ACL:SUID/SGID/Sticky Bit的作用与设置;特殊权限的安全影响;ACL(访问控制列表)的概念与应用;setfacl与getfacl命令使用;ACL备份与恢复。 (4)用户切换与提权:su命令切换用户身份;sudo命令的配置(visudo);sudoers文件语法(用户/主机/别名/命令);sudo日志审计;限制root直接登录的安全策略。
六、进程与作业管理 (1)进程基础概念:进程与程序的区别;进程的状态模型(运行/就绪/阻塞/僵死);进程ID(PID)与父进程ID(PPID);前台进程与后台进程;作业(Job)与进程的关系。 (2)进程查看与控制:ps命令的选项组合(aux/ef);top动态查看进程(交互命令/排序/renice);htop增强工具;pstree树形显示进程关系;kill与killall发送信号;pgrep与pkill的进程选择。 (3)作业控制:后台运行(&);暂停/恢复作业(Ctrl+Z/bg/fg);作业列表查看(jobs);守护进程的概念;nohup与disown避免终端挂断;screen/tmux终端复用器。 (4)系统负载分析:系统平均负载(load average)的含义;uptime查看负载;CPU使用率与等待I/O;内存使用(free);虚拟内存统计(vmstat);I/O统计(iostat)。
七、软件包管理 (1)RPM包管理:RPM包的命名规范与依赖关系;rpm命令的安装/升级/查询/卸载;RPM数据库的管理;RPM包的签名验证。 (2)YUM/DNF仓库管理:YUM/DNF的工作原理(仓库元数据/依赖解析);仓库配置文件(/etc/yum.repos.d/);yum命令的常用操作(install/update/remove/search/repolist);yum历史回滚;启用第三方仓库(EPEL/ELRepo)。 (3)APT包管理:APT仓库配置(/etc/apt/sources.list);apt-get与apt命令的使用;软件包搜索与依赖处理;dpkg底层工具的使用。 (4)源码编译安装:源码编译的三步曲(./configure → make → make install);configure脚本的常用选项;解决编译依赖;卸载源码安装的软件;创建自定义RPM包。
八、磁盘与文件系统管理 (1)磁盘分区管理:MBR与GPT分区表的区别;fdisk交互式分区;parted命令的高级分区;partprobe通知内核分区表变化;lsblk查看块设备。 (2)逻辑卷管理(LVM):LVM的层次结构(PV/VG/LV);创建物理卷;卷组管理;创建逻辑卷;LVM的动态扩容与缩容;LVM快照的实现与应用。 (3)文件系统操作:文件系统类型(ext4/XFS/Btrfs)的特点;mkfs创建文件系统;fsck文件系统检查;tune2fs调整文件系统参数;xfs_admin管理XFS;挂载(mount)与卸载(umount)。 (4)磁盘配额与交换空间:磁盘配额(quota)的启用与配置;edquota设置用户/组配额;交换空间(swap)的作用;创建swap分区与swap文件;swapon/swapoff使用。
九、网络配置与管理 (1)网络基础配置:网络接口命名规则(eth0/enpXsY);ip命令显示与设置网络参数;nmcli配置网络连接;传统network脚本配置;主机名与hosts文件解析。 (2)网络诊断工具:ping测试连通性;traceroute/tracepath路由追踪;netstat与ss查看网络连接;dig/nslookup DNS查询;tcpdump抓包分析基础;telnet与nc端口测试。 (3)防火墙管理:Netfilter/iptables框架原理;iptables的表(filter/nat/mangle)与链(INPUT/OUTPUT/FORWARD);规则匹配条件与动作;firewalld动态防火墙的基本使用(zone/rich rules);nftables简介。 (4)远程访问服务:SSH服务配置(/etc/ssh/sshd_config);基于密钥的身份认证;禁止root登录;修改默认端口;SCP与SFTP安全文件传输;SSH隧道(端口转发)实现加密通信。
十、系统服务与启动管理 (1)Systemd核心概念:Systemd作为现代Linux初始化系统的优势;单元(Unit)的类型(service/target/socket/timer);目标(Target)与传统运行级别的对应关系。 (2)服务管理实践:systemctl命令全面掌握(start/stop/restart/enable/disable/status);查看服务依赖(list-dependencies);服务单元的配置文件(/etc/systemd/system/);自定义服务单元编写。 (3)启动过程详解:BIOS/UEFI自检;GRUB2引导配置(/etc/default/grub);内核初始化与initramfs;Systemd启动目标选择;启动故障排查(grub rescue/emergency mode)。 (4)计划任务管理:crontab周期性任务的时间语法;系统级cron(/etc/crontab)与用户级cron;at一次性任务;anacron非7×24小时系统的任务调度;systemd定时器(timer)的现代方案。
十一、Shell脚本编程 (1)脚本基础:Shell脚本的结构(#!解析器/注释/执行权限);脚本执行方式(bash ./source);变量定义与引用(普通变量/环境变量/位置参数);变量作用域(local/export)。 (2)条件判断与分支:test命令与[ ]测试;文件测试(-f/-d/-e/-r/-w/-x);数值比较(-eq/-ne/-gt);字符串比较(=/-z/-n);if-then-elif-else多分支结构;case多值匹配。 (3)循环控制结构:for循环(列表形式/C语言形式);while循环;until循环;循环控制(break/continue);select菜单生成;循环中的输入输出重定向。 (4)函数与数组:函数定义与调用;函数参数传递与返回值;局部变量;数组的定义与操作(赋值/访问/遍历);关联数组(bash 4.0+)的使用。 (5)脚本调试与安全:脚本执行跟踪(bash -x);set -e/x/u调试选项;trap捕获信号;脚本中防止SQL注入和命令注入;临时文件安全创建。
十二、系统安全与日志管理 (1)用户与账户安全:密码复杂度策略(PAM pwquality);账户锁定策略(pam_tally2);sudo权限最小化原则;禁用不必要的登录Shell。 (2)日志系统管理:rsyslog日志服务配置(/etc/rsyslog.conf);日志文件详解(/var/log/messages/secure/cron/dmesg);journalctl查看systemd日志;日志轮转logrotate配置。 (3)安全审计工具:AIDE文件完整性检查;chkrootkit/rkhunter rootkit检测;OpenSCAP安全基线扫描;fail2ban防止暴力破解;SELinux基本概念与模式切换。 (4)系统备份与恢复:备份策略设计(全量/增量/差异);常用备份工具(tar/cpio/dd/rsync);rsync远程同步与增量备份;使用rsnapshot实现快照型备份;恢复演练的重要性。
十三、Linux内核原理 (1)内核架构概述:Linux内核的单内核与微内核设计对比;内核模块的动态加载机制;系统调用作为用户态与内核态的接口;内核版本号的含义。 (2)进程管理:进程描述符(task_struct)的结构;进程调度策略(CFS完全公平调度器);进程上下文切换过程;调度优先级与nice值;实时进程调度(FIFO/RR)。 (3)内存管理:虚拟内存地址空间布局;内存分配与回收(伙伴系统/slab分配器);缺页异常处理;页面缓存与回写机制;交换空间(swap)的管理策略。 (4)文件系统抽象:虚拟文件系统(VFS)的作用;VFS的核心对象(superblock/inode/dentry/file);页缓存与块缓存;主流文件系统(ext4/XFS)的内部结构。 (5)设备驱动模型:字符设备与块设备的区别;设备文件与设备号;udev动态设备管理;内核模块编写基础;驱动与内核的交互机制。
十四、综合实战项目 (1)项目一:Linux服务器基础环境搭建:最小化安装CentOS/Ubuntu系统→配置静态网络地址→更新软件包源→安装必要工具链→配置SSH密钥认证→设置防火墙规则→配置NTP时间同步→完成系统安全加固。 (2)项目二:Shell脚本实现系统监控与告警:编写脚本收集CPU/内存/磁盘/网络信息→设置阈值判断→超过阈值发送邮件/钉钉告警→日志轮转与归档→添加到cron定时任务→测试告警有效性。 (3)项目三:搭建Web服务器与数据库环境:安装Apache/Nginx+PHP+MySQL/MariaDB→配置虚拟主机→优化服务性能→设置防火墙开放端口→实现服务自启动→配置日志分割与定期备份。 (4)项目四:搭建NFS与Samba文件共享服务器:安装配置NFS服务→设置导出目录与客户端权限→客户端自动挂载(autofs)→安装配置Samba服务→创建共享目录与用户映射→Windows/Linux客户端访问测试。 (5)项目五:Linux系统性能分析与调优:使用top/vmstat/iostat/mpstat收集性能数据→识别系统瓶颈(CPU/内存/IO)→调整内核参数(sysctl)→优化进程优先级→调整文件系统挂载选项→验证优化效果。
如果您想学习本课程,请预约报名
如果没找到合适的课程或有特殊培训需求,请订制培训 除培训外,同时提供相关技术咨询与技术支持服务,有需求请发需求表到邮箱soft@info-soft.cn,或致电4007991916 技术服务需求表点击在线申请 服务特点: 海量专家资源,精准匹配相关行业,相关项目专家,针对实际需求,顾问式咨询,互动式授课,案例教学,小班授课,实际项目演示,快捷高效,省时省力省钱。 专家力量: 中国科学院软件研究所,计算研究所高级研究人员 oracle,微软,vmware,MSC,Ansys,candence,Altium,达索等大型公司高级工程师,项目经理,技术支持专家 中科信软培训中心,资深专家或讲师 大多名牌大学,硕士以上学历,相关技术专业,理论素养丰富 多年实际项目经历,大型项目实战案例,热情,乐于技术分享 针对客户实际需求,案例教学,互动式沟通,学有所获 |
|