还剩48页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
系统管理与应用Linux欢迎参加《系统管理与应用》课程!本课程旨在帮助您掌握Linux Linux操作系统的核心管理技能,从基础命令到高级系统配置,全面提升您的应用能力无论您是初学者还是希望提升技能的专业人士,本Linux IT课程都将为您提供系统化的学习路径的发展历史与现状Linux起源Unix年,贝尔实验室的和开发了操作系统,奠定了现代1969Ken ThompsonDennis RitchieUnix操作系统的基础诞生Linux年,芬兰学生开发了内核,结合工具,形成了完整的操作系1991Linus TorvaldsLinux GNU统商业化发展、等商业发行版出现,为企业提供专业支持服务,推动进入企业市场RedHat SUSELinux云时代崛起如今,已成为服务器市场的主导系统,支撑着全球互联网基础设施、云计算平台和移动设Linux备与开源精神Linux社区协作全球开发者共同贡献代码透明共享源代码公开可见与修改自由使用使用、学习、分享的自由共同福祉技术进步惠及全人类项目由于年发起,旨在创建一个完全自由的操作系统自由软件基金会作为的主要支持组织,致力于推广软件自GNU RichardStallman1983FSF GNU由的理念与工具的结合形成了今天的系统Linux GNUGNU/Linux开源协议是开源软件发展的法律基础常见的开源协议包括强制开源、宽松自由、商业友好等理解这些协议对软件开发至关重要GPLMITApache爱好者可以通过官方论坛、、等平台获取技术支持与学习资源,中文社区如中国、等也提供本地化支持Linux StackOverflow GitHubLinux ChinaUnix系统架构与组成Linux应用程序层用户直接使用的软件与工具与图形界面Shell用户与系统交互的接口系统调用接口应用程序与内核通信的桥梁内核Linux管理硬件资源的核心组件硬件层计算机物理设备系统遵循分层设计原则,内核位于整个系统的核心,负责内存管理、进程调度、设备驱动和文件系统等核心功能用户空间包含所有非内核部分,如应用程序、库文件和用户界Linux面是用户与内核交互的命令解释器,常见的包括、等支持多种图形界面系统,如、等驱动程序负责硬件与操作系统的通信,服务则是后台运Shell Shell Bash ZshLinux GNOMEKDE行的守护进程,为系统和用户提供各种功能支持进程是程序的运行实例,通过精细的进程管理机制保证系统高效运行Linux主流发行版对比Linux系列系列其他独立发行版RedHat Debian包括、、等,特包括、、如、等,追求极致RHEL CentOSFedora DebianUbuntu Linux Mint Arch Linux Gentoo点是稳定性高,安全性好,拥有企业级等,特点是用户友好,社区支持强大,定制化和性能,适合高级用户和特定需支持服务适合生产环境和企业应用更新较为频繁,适合桌面用户和开发环求场景境•多采用滚动更新模式•使用包管理系统•使用包管理系统RPM DEB高度可定制性••软件包管理工具•软件包管理工具yum/dnf apt•需要更多技术知识•强调兼容性和稳定性•强调自由软件理念选择合适的发行版需考虑几个关键因素系统稳定性需求、技术支持渠道、应用场景特点、硬件兼容性以及团队的技术能Linux力水平企业环境通常选择有商业支持的发行版如,而个人用户或开发者则可能更偏向于等用户友好的系统RHEL Ubuntu虚拟机与安装准备Linux虚拟化软件选择虚拟机配置建议镜像准备工作•功能全面,•至少分配核心•从官方网站下载镜像VMware Workstation/Player CPU2ISO性能优秀,支持快照功能•内存最低,推荐以上•验证下载文件的完整性校验2GB4GB MD5/SHA•开源免费,跨平台支持,适合初VirtualBox•硬盘起步,生产环境更多•准备盘启动盘可选20GB U学者•网络桥接或模式根据需求选择•记录关键驱动程序信息NAT•自带,集成度高,适合Hyper-V Windows环境Windows虚拟化技术使得在一台物理计算机上同时运行多个操作系统成为可能,大大提高了硬件资源的利用率对于学习者,虚拟机提供了安全、隔离的实验环境,可以随时Linux创建快照,进行系统恢复,非常适合进行各种系统配置尝试和故障模拟网络设置中,模式允许虚拟机共享主机网络连接且相对安全,桥接模式则使虚拟机如同网络中的独立物理机,可被外部直接访问镜像文件可从各发行版官网获取,NAT初学者建议选择桌面版本,如或,它们提供图形化安装界面,操作更为直观Ubuntu DesktopFedora Workstation系统安装过程详解Linux启动安装程序从镜像或启动盘引导计算机,进入安装界面,选择语言与键盘布局ISO配置基本设置设定时区、网络连接和主机名,系统将检测网络可用性并配置相应参数磁盘分区选择自动分区或手动配置,典型方案包括(根分区)、、和分区//boot/home swap创建用户设置密码并创建普通用户账号,建议使用普通账号日常操作,需要时提升权限root软件选择选择预安装的软件包和桌面环境,可根据服务器或工作站用途定制完成安装系统将安装选中组件,重启后进入新系统,完成初始化设置安装时,可以选择标准分区方案或(逻辑卷管理)提供更灵活的空间管理能力,允许在不中断服务的情况下调整分区大小,非常适合生产环境建议初学者使用图Linux LVMLVM形安装界面,熟悉后可尝试使用等工具进行自动化批量部署Kickstart引导加载与启动过程初始化BIOS/UEFI计算机加电后,进行硬件自检,识别启动设备,并加载引导程序现BIOS/UEFI POST代系统多采用,相比传统提供更安全的启动验证机制和更灵活的配置选项UEFI BIOS引导加载器运行是最常用的引导加载器,负责显示操作系统选择菜单,加载内核和GRUB2Linux文件,并将控制权转交给内核配置文件位于目录,可initramfs GRUB/boot/grub/自定义启动选项和超时时间内核初始化内核加载后,创建临时根文件系统,挂载真正的根文件系统,然后启动第一个Linux进程(传统系统)或(现代系统)内核启动参数可在菜单中编init systemdGRUB辑,用于故障排除或特殊配置用户空间初始化并行启动各种系统服务,包括网络、图形界面等,最终呈现登录界面systemd整个启动过程可通过命令分析耗时细节,帮助优化启动速systemd-analyze度多系统环境下,能够管理、等多个操作系统的启动启动出现问GRUB WindowsLinux GRUB题时,可通过救援模式或启动系统,使用和命令修复引导程LiveCD grub-install update-grub序深入理解启动过程有助于解决系统无法启动等常见问题,是系统管理的关键技能Linux与常用终端介绍Shell常见类型终端控制技巧终端模拟器Shell是用户与内核交互的命令解释熟练使用终端快捷键可显著提高工作效图形环境下的终端模拟器提供了丰富功Shell器,中常见包括率能Linux Shell•最流行的,大多数发•中断当前命令•默Bash ShellCtrl+C GNOMETerminal GNOME行版默认认终端•退出当前Ctrl+D Shell•功能强大,定制性高,支持•默认终端Zsh•搜索历史命令Konsole KDECtrl+R先进补全•支持分屏功能•光标移至行首行尾TerminatorCtrl+A/E/•用户友好,自动补全和语法Fish•现代设计的终端模拟器•键自动补全命令和文件名TilixTab高亮•加速的高性能终端Alacritty GPU•兼容性好,脚本执行效率高Ksh的输入输出重定向是强大的特性之一,使用可将输出重定向到文件,追加到文件末尾,从文件读取输入,Shell Linux通过管道连接多个命令这些功能使得命令行操作更加灵活高效命令历史记录保存在文件中,可通过|~/.bash_history命令查看和重用history常用命令入门Linux目录导航文件操作用户信息•pwd显示当前工作目录•touch创建空文件•whoami显示当前用户•cd切换目录•cp复制文件或目录•id显示用户ID信息•ls列出目录内容•mv移动或重命名•who显示登录用户•mkdir创建新目录•rm删除文件或目录•w显示登录用户活动•rmdir删除空目录•ln创建链接•su切换用户帮助文档•man查看命令手册•info详细命令信息•whatis简短命令描述•--help命令帮助选项命令行遵循命令选项参数的基本格式其中短选项用单连字符(如),长选项用双连字符Linux[][]-a(如)大多数命令支持组合选项,如相当于掌握这些基础命令是操作的第一步,--all ls-la ls-l-a Linux为进一步学习奠定基础使用补全不仅可以提高输入效率,还能减少拼写错误通过命令可以查阅详细的命令使用说明,比Tab man如将显示命令的所有选项和用法说明初学者应养成查阅手册的习惯,这是自学的重要技能man lsls Linux文本查看与处理命令基础查看命令命令适合查看小文件内容,输出所有内容到标准输出命令提供基本分页功能,空格翻页,cat moreq退出命令是的增强版,支持上下滚动、搜索和标记功能,是查看大文件的最佳选择less more部分查看命令命令默认显示文件前行,使用选项指定行数命令默认显示文件末尾行,选项可head10-n tail10-f实时监控文件变化,对查看日志非常有用这两个命令结合使用可以快速了解文件结构文本搜索与处理命令用于文本搜索,支持正则表达式,选项忽略大小写,递归搜索目录命令用于计算行grep-i-r wc数、单词数和字节数,常与管道结合使用和是强大的文本处理工具,支持复杂的文本替换和sed awk处理操作文本排序与比较命令对文本行排序,选项按数值排序,逆序排列命令去除重复行,需先排序比sort-n-r uniqdiff较两个文件差异,应用差异文件这些命令组合使用可以实现复杂的文本分析需求patch文本处理命令的强大之处在于它们可以通过管道()组合使用,形成强大的文本处理流水线例如,|cat这个命令序列可以统计日志文件中各种错误信息出现的次数掌握file.log|grep error|sort|uniq-c这些命令及其组合使用方法,是成为高效用户的关键Linux文件与目录结构详解和/bin/sbin/etc存放基本命令和系统管理命令系统配置文件目录/tmp/home临时文件目录普通用户的主目录/usr/var4应用程序和文件存放目录存放变化数据如日志遵循文件系统层次结构标准,定义了主要目录的用途和内容目录包含系统配置文件,如网络配置、用户信息Linux FHS/etc/etc/network等目录存放经常变化的数据,如日志文件、邮件、打印队列等/etc/passwd/var/var/log/var/mail/var/spool中一切皆文件,包括硬件设备目录包含设备文件,如硬盘、终端等和是虚拟文件系统,提供对内核及运Linux/dev/dev/sdX/dev/tty/proc/sys行进程的访问了解这些目录结构有助于快速定位文件,也是理解系统工作原理的基础在最新的发行版中,、等目录通常是下Linux/bin/sbin/usr对应目录的符号链接,这是向合并的结果USR文件权限与所有权管理权限类型符号表示数字表示文件含义目录含义读权限可查看文件可列出目录r4内容内容写权限可修改文件可创建、删w2内容除文件执行权限可执行文件可访问目录x1内容无权限不能操作不能操作-0文件权限系统将权限分为三类用户文件所有者、所属组和其他用户Linux ug o每个文件或目录的权限通过命令显示,如表示所有者有读写执行ls-l-rwxr-xr--权限,组用户有读和执行权限,其他用户只有读权限命令用于修改文件权限,支持符号模式(如)和数字模式chmod chmodu+x file(如)命令更改文件所有者,命令更改所属组在chmod754file chownchgrp多用户环境中,正确设置文件权限是系统安全的关键特殊权限包括、SUID4和,添加在权限数字之前,如设置SGID2Sticky Bit1chmod4755file SUID权限用户与组管理基础用户配置文件组配置文件常用管理命令•/etc/passwd用户账号信息•/etc/group组信息•useradd创建新用户•/etc/shadow加密的密码信息•/etc/gshadow组密码信息•usermod修改用户属性•/etc/login.defs登录策略设置•/etc/skel新用户骨架目录•userdel删除用户•/etc/default/useradd用户创建默认值•passwd设置用户密码•groupadd创建新组•groupmod修改组属性•groupdel删除组文件的每行代表一个用户账号,格式为用户名密码占位符注释主目录默认真正的密码存储在文件中,采用加密形式保存,提高了系统安/etc/passwd::UID:GID:::Shell/etc/shadow全性系统用户通常小于,普通用户从开始分配UID1000UID1000创建新用户时,系统会从目录复制文件到新用户的主目录,这些文件包含默认的环境设置和配置文件使用命令时,可以指定多个参数,如主目录位置、默认/etc/skel useradd-d、所属组等组管理同样重要,每个用户必须属于至少一个主组,还可以加入多个附加组,通过用户名组名命令实现Shell-s-g gpasswd-a用户与组管理进阶用户锁定与解锁使用用户名锁定账户,用户名解锁锁定后用户无法登录但进passwd-l passwd-u程仍可运行也可通过命令使账户过期usermod--expiredate1权限委派Sudo通过文件或命令配置权限,允许普通用户执行特定的特权命/etc/sudoers visudosudo令,同时保留审计日志,是最佳安全实践密码策略管理使用模块和工具设置密码复杂度要求,命令管理密码过期策略,PAM pwqualitychage提高系统安全性在企业环境中,用户管理通常遵循最小权限原则,仅授予用户完成工作所需的最低权限通过限制用户的(如或),可以创建仅用于特定服务的系统账户,提高安全性Shell/bin/false/sbin/nologin使用用户名可以快速禁止用户登录系统usermod-s/sbin/nologin对于需要高度安全的系统,可以实施多因素认证,结合密码、证书和物理令牌等多种验证方式通过可插拔认证模块框架,系统可以灵活配置各种认证机制例如,使用PAMLinux Google提供基于时间的一次性密码功能,大大降低账户被入侵的风险密码历史记Authenticator TOTP录策略可以防止用户重复使用最近使用过的密码,进一步提高安全性文件查找与定位命令命令命令find locate最强大的文件搜索工具,直接搜索文件系统,精确灵活基于数据库的快速搜索工具,速度快但可能不是实时结果•按名称•基本用法find/path-name*.txt locatefilename•按类型文件或目录•忽略大小写find/path-type fdlocate-i filename•按大小大于•更新数据库find/path-size+10M10MB updatedb•按时间天内修改•限制结果数find/path-mtime-77locate-n10filename•按权限find/path-perm644依赖包,使用前确保已安装并运行来更locate mlocateupdatedb•执行操作新数据库数据库通常每天自动更新一次find/path-name*.tmp-exec rm{}\;在文件查找中,通配符和正则表达式是强大的模式匹配工具常用通配符包括(匹配任意多个字符)、(匹配单个字符)、(匹配一*[]组字符中的一个)而正则表达式提供更复杂的模式匹配能力,如匹配行首、匹配行尾、匹配任意字符等^$.命令实际应用案例查找并删除天前的日志文件();find30find/var/log-name*.log-type f-mtime+30-exec rm{}\;查找权限不当的配置文件();查找大文件以释放磁盘空间()这find/etc-type f-perm-o+w find/-type f-size+100M些命令在系统维护和故障排除中非常有用压缩与归档工具工具tar gzip/bzip2/xz zip/unzip最常用的归档工三种主要压缩工具,压缩率和速兼容的压缩格式,在Unix/Linux Windows具,可将多个文件合并为一个归度各有不同跨平台文件交换中常用档文件,并支持与多种压缩工具•gzip速度快,压缩率适•压缩zip-r压缩包.zip配合使用中,文件.gz...•创建归档tar-cf归档•bzip2压缩率高,速度较•解压unzip压缩包.zip名文件.tar...慢,.bz2•带密码zip-r-e压缩•解包归档tar-xf归档名.tar•xz压缩率最高,速度最包.zip文件...•查看内容tar-tf归档名.tar慢,.xz•带压缩tar-czf/-cjf/-cJf命令常用选项组合创建压缩归档,创建压缩归档,创建压缩归档提取tar-czf gzip-cjf bzip2-cJf xz时对应使用、和现代版本的能自动识别压缩格式,通常只需选项即可正确解压-xzf-xjf-xJf tar-xf提取归档时可使用选项指定目标目录,如归档目标目录-C tar-xf.tar-C/处理大型归档时,可以使用选项查看处理进度,使用选项保留原始权限,使用选项排除-v-p--exclude特定文件当需要压缩整个目录用于备份时,是常用命令组tar-czf backup.tar.gz/home/user合对于、等其他格式,可以安装对应的工具包进行处理7z rarp7zip-full,unrar进程与作业管理进程查看命令作业控制命令显示当前进程快照,常用选项组合在终端中,可通过在命令后加符号将程ps(所有进程详情)、(标序放入后台运行组合键可暂停ps auxps-ef Ctrl+Z准格式全部进程)命令提供实时系当前前台进程并放入后台命令列出top jobs统状态和进程列表,可按、内存等当前的所有作业,作业号恢复CPU Shellbg%排序,按键自定义显示字段,按键终止后台运行,作业号将后台作业调至前f kfg%进程是的增强替代品,提供彩台这些功能在单个终端管理多个任务时htop top色界面和鼠标支持非常有用进程控制命令命令向进程发送信号,常用终止进程,强制终止kill killPID SIGTERMkill-9PID按名称终止所有匹配进程,支持更复杂的模式匹配和命SIGKILL killallpkill nicerenice令用于调整进程优先级,值范围最高到最低,普通用户只能增加值减少优先-2019nice级系统中,每个进程都有唯一的进程,通过父子关系形成进程树或Linux IDPIDinit systemdPID是所有进程的始祖进程有前台和后台之分,前台进程与终端交互,后台进程独立运行使用1命令可使进程在用户注销后继续运行,如nohup nohupcommand在系统资源紧张时,了解如何识别和处理占用资源过多的进程至关重要使用命令可以根据pgrep各种条件查找进程例如,查找特定用户的进程通过信号机制控制ID pgrep-u usernameLinux进程行为,常用信号包括、、等,可通过查看所有可SIGTERM15SIGKILL9SIGHUP1kill-l用信号服务与守护进程管理功能命令(现代系统)命令(传统系统)systemd SysV启动服务服务名服务名systemctl startservice start停止服务服务名服务名systemctl stopservice stop重启服务服务名服务名systemctl restartservice restart查看状态服务名服务名systemctl statusservice status设置开机启动服务名服务名systemctl enablechkconfig on禁用开机启动服务名服务名systemctl disablechkconfig off是现代系统的初始化系统和服务管理器,提供了强大的功能和高效的并行启动能力服务配置systemd Linux文件单元文件位于和目录中,使用扩展名/usr/lib/systemd/system//etc/systemd/system/.service使用命令可以控制服务状态、查看系统状态systemctl命令列出所有服务单元,命令则显示所有systemctl list-units--type=service systemctl list-unit-files已安装单元文件及其状态当修改服务配置后,需使用重新加载配置自定义服systemctl daemon-reload务可通过创建目录下的单元文件实现,定义服务执行命令、依赖关系和启动条件等/etc/systemd/system/命令用于查看日志,如服务名显示特定服务的日志journalctl systemdjournalctl-u软件包管理工具概述包格式包格式其他包管理系统RPM DEB,用于,用于、不同发行版可能有特殊的包管理系统Red HatPackage ManagerDebian PackageDebian、、等系统、等系统RHEL CentOSFedora UbuntuLinuxMint•ArchLinuxpacman•文件扩展名•文件扩展名.rpm.deb•Gentoo Portage•包含二进制文件、配置文件、文档•包结构与类似RPM•SUSE zypper•包含元数据依赖关系、版本、描述•元数据格式不同•通用格式、、Flatpak Snap•低级工具命令•低级工具命令rpm dpkgAppImage•高级工具、•高级工具、yum dnfapt apt-get软件包管理系统解决了软件安装、更新和卸载过程中的依赖关系管理问题依赖关系是指软件需要软件才能正常运行,高级包管理工具可A B以自动解析和安装这些依赖包冲突则是两个软件包含相同文件或不兼容功能的情况,系统会警告并阻止安装冲突的包软件包版本遵循特定命名规则,如主版本号次版本号修订号架构软件源配置文件定义了系统获取软件包的位置,如系统的.-.RPM或系统的这些源可以是官方镜像、第三方仓库或本地镜像配置适当的软件源能够提/etc/yum.repos.d/Debian/etc/apt/sources.list高下载速度,确保软件包的安全性和完整性系统软件管理RedHat搜索软件包使用关键词或关键词可以在仓库中搜索包含特定关键词的软件包yum searchdnf search列出所有已安装的软件包,包名查看详细信息yum listinstalled yuminfo安装软件包使用包名或包名安装软件使用选项可自动确认所有提示使用yum installdnf install-y本地包文件可安装本地文件并解决依赖关系yum localinstall.rpm RPM更新软件包包名更新特定软件,或更新所有软件包更新前应yum updateyum updatednf upgrade使用检查可用更新对于重要系统,先测试再批量更新yum check-update移除软件包包名或包名删除软件及其依赖使用清理不yum removednf removeyum autoremove再需要的依赖包可以结合选项只下载不安装,用于离线部署--downloadonly在及更新版本中,替代了成为默认的包管理工具,提供了更好的性能和依赖解析能力两RHEL8dnf yum者命令格式大多相似,但增加了模块化支持等新特性使用命令查看已启用的软件源,dnf yum/dnf repolist仓库添加新的软件源yum/dnf config-manager--add-repo URL对于本地软件源的配置,可以通过挂载安装创建本地源或使用工具创建自定义软件仓库在ISO createrepo目录中创建以结尾的配置文件,指定、和等参数企业环/etc/yum.repos.d/.repo namebaseurl enabled境中常使用或等工具集中管理软件包,实施补丁策略,确保安全合规使用Satellite Spacewalkyum命令可以查看软件包管理的历史记录,必要时回滚操作history软件管理Debian/Ubuntu更新软件源索引搜索和检查软件包使用或命令更新本地软件包数据库这一步不会安装或升使用关键词找到相关软件包,包名查看详细信息,apt updateapt-get updateapt searchapt showapt list--级任何软件,只是获取可用软件包的最新信息建议在任何包管理操作前先执行此命列出所有已安装的软件包命令也可列出已安装软件,installed dpkg-l aptlist--令,确保操作基于最新数据显示可升级的软件包upgradable安装和升级软件删除软件包使用包名或包名安装软件包更新所有已安使用包名删除软件但保留配置文件,包名或apt installapt-get installapt upgrade apt removeapt purgeapt-get purge装的软件包,(或)会智能处理依赖关系变包名完全删除软件和配置移除不再需要的依赖包,清理本apt full-upgrade apt-get dist-upgradeaptautoremove aptclean化,必要时删除过时的软件包对于文件,使用文件名安装,出现依地缓存的软件包文件,释放磁盘空间.deb dpkg-i.deb赖问题可用修复apt install-f系统的软件源配置在文件和目录中的文件中源地址格式为发行版代号组件,如Debian/Ubuntu/etc/apt/sources.list/etc/apt/sources.list.d/.list debURLdeb修改源地址可以选择地理位置更近的镜像站点,提高下载速度http://mirrors.aliyun.com/ubuntu/focal mainrestricted universemultiverse是的特色功能,允许开发者和用户分享未收录在官方仓库的软件包使用命令添加,如用Personal PackageArchivesPPAs Ubuntuadd-apt-repository PPAadd-apt-repository ppa:户名软件名对于需要最新版本软件的用户,是重要资源,但应注意源的可信度企业环境中,可以使用或等工具建立内部软件源,管理大量系统的更新/PPA apt-mirror Landscape脚本基础Shell脚本基本结构变量与数据类型•首行Shebang#!/bin/bash•变量定义name=value无空格•注释使用#号•变量引用$name或${name}•命令按顺序执行•环境变量export name=value•每条命令通常占一行•命令结果result=$command或•可使用\或;分隔多条命令`command`•数值计算$表达式条件与控制流•if条件if[条件];then...fi•判断文件-e存在,-f常规文件,-d目录•字符串比较=,!=,-z空•数值比较-eq,-ne,-gt,-lt•逻辑运算与,||或,!非脚本是一系列命令的集合,保存在文本文件中,由解释器执行脚本创建后需要设置执行权限,使Shell Shell用命令行指定使用哪个解释器,这使得脚本可以像普通命令chmod+x script.sh Shebang#!/bin/bash一样直接运行脚本内可以使用所有命令,包括其他脚本和系统命令Shell脚本中可以定义和使用参数,代表脚本名称,、等代表第一个、第二个参数,代表所有参数,$0$1$2$@$#代表参数个数函数使用定义,通过调用脚本调试可以使用function name{commands;}name追踪执行过程,或在脚本内使用开启调试模式良好的脚本应包含适当的错误处理bash-x script.sh set-x和注释,提高可读性和维护性脚本实用案例Shell日志自动备份脚本是系统管理中的常用工具此类脚本通常使用命令创建归档,结合命令生成带时间戳的文件名,确保备份文件tar date唯一性脚本可通过命令自动删除过期备份,控制磁盘空间使用在设计备份脚本时,应考虑错误处理和日志记录,确保备份过程find可追踪用户批量创建脚本可从或文本文件读取用户信息,循环执行命令创建账户脚本应包含参数验证、错误处理和结果报告功CSV useradd能脚本调试技巧包括使用语句输出中间变量值,使用在出错时立即退出,使用捕获信号实现清理操作复杂脚本开发echo set-e trap可采用模块化方法,将功能分解为独立函数,提高可维护性通过结合,可以实现脚本的定时自动运行,进一步提高系统管理效crontab率系统启动与运行级别运行级别目标描述SysV systemd关机0poweroff.target单用户模式救援模式1rescue.target部分功能多用户模式,无网络服务2multi-user.target完整多用户模式,命令行界面3multi-user.target未使用通常未定义,可自定义4图形界面模式5graphical.target重启6reboot.target现代系统使用替代了传统的系统,引入了目标概念替代运行级别Linux systemdSysV inittarget通过并行启动服务大幅提高了启动速度使用查看默认目标,systemd systemctlget-default systemctl目标名设置默认目标,如切换到命令行模式set-default.target systemctlset-default multi-user.target临时更改运行级别可使用目标名命令,例如systemctl isolate.target systemctlisolate graphical.target切换到图形界面管理的启动项配置位于目录,特别是目录中包systemd/etc/systemd/system/*.wants/含了各目标的依赖服务使用命令查看服务自启动状态,systemctllist-unit-files--type=service服务名控制开机自启动开发自定义服务需在创systemctl enable/disable/etc/systemd/system/建文件,定义服务属性和依赖关系.service硬件信息与设备管理硬件信息查询块设备管理资源监控•显示总线设备•列出块设备•内存使用情况lspci PCIlsblk free•显示设备•块设备属性•磁盘空间使用lsusb USBblkid df•详细硬件信息•分区表信息•目录空间占用lshw fdisk-l du•系统•挂载设备•硬盘参数dmidecode DMImount hdparm信息•卸载设备•硬件温度umount sensors•图形化硬件概inxi-F览是现代系统的设备管理器,负责动态识别硬件并创建设备节点,实现热插拔功能udev Linux规则文件位于目录,可自定义设备接入行为,如自动挂载特定udev/etc/udev/rules.d/U盘或为特定设备分配固定名称目录包含所有设备文件,采用特定命名规则,如硬盘设/dev备通常为,分区为,设备为/dev/sdX/dev/sdXY NVMe/dev/nvmeXnY挂载设备是将存储设备连接到文件系统树的过程命令语法为设备挂载点,mount mount如可通过选项指定文件系统类型,选项指定挂载选项如mount/dev/sdb1/mnt-t-o读写权限、执行权限等命令用于安全卸载设备,如或umount umount/mnt umount在卸载前应确保没有进程正在访问该设备,否则会出现错误/dev/sdb1device isbusy磁盘分区与文件系统分区工具文件系统类型提供多种分区工具支持多种文件系统,各有特点Linux Linux•传统分区工具•默认文件系统,稳定可靠fdisk MBRext4Linux•分区表工具•高性能文件系统,适合大文件gdisk GPTxfs•支持和的通用工具•新一代文件系统,支持快照parted MBRGPT btrfs•交互式界面工具•为闪存优化的文件系统cfdisk/cgdisk f2fs•脚本化批量分区工具•交换分区,虚拟内存使用sfdisk swap•兼容系统vfat/ntfs Windows分区表限制为个主分区,最大支持磁盘支持个分MBR42TB GPT128区,突破限制,兼容2TB UEFI创建新分区后,需要格式化为特定文件系统才能使用命令用于创建文件系统,如创建文件系统,mkfs mkfs.ext4/dev/sdb1ext4mkfs.xfs创建文件系统命令用于创建交换分区,命令激活交换分区文件系统创建后可使用家族或/dev/sdb2xfs mkswapswapon tune2fsext等工具调整参数,如修改预留空间、设置挂载计数等xfs_adminXFS文件系统可能因意外断电或系统崩溃而损坏,需要定期检查命令是文件系统检查工具,不应对已挂载的活动文件系统运行根文件系统会在启动fsck时自动检查,其他文件系统可在中设置检查顺序对于文件系统,使用工具进行修复大型服务器环境中,建议使用高级文/etc/fstab XFSxfs_repair件系统如或,它们提供数据校验、快照和等企业级功能ZFS BtrfsRAID挂载与自动挂载机制字段说明示例fstab设备标识设备名、或标签或UUID/dev/sda1UUID=1234-5678挂载点文件系统挂载的目录路径/home文件系统类型、、等ext4xfs nfsext4挂载选项如读写权限、用户限制等defaults,noatime标志备份工具使用,通常为dump00顺序启动时检查顺序,表示不检查(根分区)或(其他分区)fsck012命令用于手动挂载文件系统,基本语法为类型选项设备挂载点常用选项包括只mount mount-t-o ro读,读写,禁止执行文件,禁止,禁止设备文件等使用命令挂rwnoexecnosuid SUIDnodevmount载的文件系统在系统重启后不会自动挂载,称为临时挂载文件用于配置开机自动挂载,系统启动时会读取该文件并挂载列出的文件系统推荐使用或/etc/fstab UUID标识设备,而非设备名,因为设备名可能在硬件变更后改变使用命令可查询设备的和LABEL blkidUUID引入了单元文件和自动挂载功能,可实现按需挂载,提LABEL systemd/etc/systemd/system/*.mount高启动速度并降低资源消耗对于网络文件系统如,可能需要配置选项确保网络可用后再挂载NFS_netdev逻辑卷管理LVM物理卷PV1底层物理存储设备,如磁盘分区或整个磁盘卷组VG多个物理卷的集合,统一管理的存储池逻辑卷LV从卷组分配的逻辑存储单元,可格式化使用逻辑卷管理器是系统的高级存储管理解决方案,提供灵活的磁盘空间分配机制创建的基本步骤首先使用命令将物理设LVMLinux LVMpvcreate备初始化为物理卷;然后使用命令将一个或多个物理卷组合成卷组;最后使用命令从卷组分配空间创建逻辑卷,然后格式化并挂载使vgcreate lvcreate用的主要优势在于其灵活性可以在不中断服务的情况下扩展逻辑卷命令,调整文件系统大小如使用,使用LVM lvextendext4resize2fs xfs;支持创建快照命令,用于备份或测试;可以跨多个物理设备分配存储空间,实现数据冗余还支持精简配置xfs_growfs lvcreate-sLVM thin功能,允许创建大于实际可用空间的逻辑卷,适合虚拟化环境高级功能如镜像和缓存可以提高数据安全性和访provisioning mirroringcaching问性能磁盘阵列原理与实践RAID(条带化)RAID0将数据分布在多个磁盘上,提高读写速度无数据冗余,一个磁盘故障会导致所有数据丢失适用于需要高性能但数据安全性要求不高的场景,如临时数据处理所需磁盘数至少个,容量利用率2100%(镜像)RAID1数据完全复制到多个磁盘,提供高可靠性一个磁盘故障不会丢失数据,但写入性能稍低,容量利用率仅适合安全性要求高的关键数据存储,如数据库日志所需磁盘数至少个50%2(带奇偶校验)RAID5数据和校验信息分布在多个磁盘上,平衡了性能和冗余可承受一个磁盘故障,容量利用率为n-1/n适合需要兼顾性能和可靠性的场景,如文件服务器所需磁盘数至少个3(组合)RAID101+0和的组合,提供高性能和高可靠性可承受多个磁盘故障取决于故障位置,容量利用率RAID1RAID0适合高性能数据库等要求极高的环境所需磁盘数至少个50%4支持软件,通过工具管理创建阵列的基本步骤首先使用命令创Linux RAID mdadm RAIDmdadm--create建阵列,指定级别、设备数量和设备路径;然后在阵列上创建文件系统;最后配置和RAID/etc/mdadm.conf实现自动挂载例如,创建阵列的命令/etc/fstab RAID5mdadm--create/dev/md0--level=5--raid-devices=3/dev/sdb1/dev/sdc1/dev/sdd1管理和监控使用命令查看状态,查看简要状态当磁盘故障RAIDmdadm--detail RAIDcat/proc/mdstat时,使用标记故障磁盘,然后使用mdadm--manage/dev/md0--fail/dev/sdb1mdadm--manage移除故障磁盘更换新硬盘后,使用/dev/md0--remove/dev/sdb1mdadm--manage/dev/md0--添加新磁盘,系统会自动重建数据可以配置服务监控健康状态并发送add/dev/sdb1rebuild mdadmRAID电子邮件通知文件与目录配额管理配额类型配额管理流程支持两种主要的配额限制实施配额管理的基本步骤Linux•用户配额限制单个用户可使用的空间安装软件包
1.quota•组配额限制整个用户组可使用的空间修改,添加挂载选项
2./etc/fstab usrquota,grpquota重新挂载文件系统或重启系统对于每种类型,又可以设置两个级别的限制
3.使用命令初始化配额数据库
4.quotacheck•软限制可以临时超过的警告阈值使用命令启用配额
5.quotaon•硬限制绝对不能超过的最大值使用命令设置用户或组的配额
6.edquota配额可以限制两种资源使用命令查看配额使用情况
7.quota使用命令生成配额报告•块数量限制磁盘空间使用
8.repquota•数量限制文件数量inode工具在多用户环境和共享存储系统中非常有用,可防止单个用户或组占用过多资源命令提供交互式编辑界面,设置软限制、硬限制和宽限期宽quota edquota限期是用户超过软限制后,系统允许继续使用资源的时间,超过宽限期后只能使用硬限制内的资源通常使用用户名设置用户配额,组edquota-u edquota-g名设置组配额对于大型系统,可以使用参考用户目标用户复制配额设置,快速为多个用户配置相同的限制配额报告可以通过生成,显示所有用edquota-p-u repquota-a户和组的配额使用情况配额系统支持通过命令自动发送警告邮件给接近或超过软限制的用户文件系统使用不同的配额工具(),但warnquota XFSxfs_quota基本概念相似配额不是防止磁盘空间耗尽的绝对方法,管理员应定期监控并适当调整配额设置日志管理与故障分析关键系统日志应用程序日志•/var/log/syslog或/var/log/messages一般系统日志•/var/log/httpd/或/var/log/apache2/Web服务器日志•/var/log/auth.log或/var/log/secure认证相关日志•/var/log/mysql/数据库日志•/var/log/dmesg内核引导消息•/var/log/mail.log邮件服务日志•/var/log/kern.log内核运行日志•/var/log/fail2ban.log安全防护日志•/var/log/boot.log系统启动日志•/var/log/cups/打印系统日志•/var/log/cron定时任务执行日志日志分析工具•grep搜索关键字•tail-f实时监控日志•less交互式查看•journalctlsystemd日志工具•logwatch日志汇总工具•ELK堆栈企业级日志分析平台日志轮转是防止日志文件过大的重要机制工具负责自动压缩和归档旧日志,其配置文件位于和logrotate/etc/logrotate.conf目录可以配置基于大小或时间的轮转策略,设置保留的日志文件数量,以及轮转后执行的操作(如重启服务)/etc/logrotate.d/典型配置包括轮转频率,参数设置保留数量,选项启用压缩daily/weekly/monthly rotatecompress系统故障排查通常从日志分析开始例如,系统启动问题可查看和日志();网络连接问题可查看dmesg systemdjournalctl-xb;用户登录失败可查看高级故障排查技巧包括使用搜索特定错误模式(如、、/var/log/syslog auth.log greperror fail),结合时间范围缩小搜索(),使用提取特定字段企业环境可部署集denied grepMay1015:/var/log/syslog awk/sed中式日志服务器,实现日志集中管理、实时监控和自动化分析任务计划与自动化字段含义有效值特殊字符crontab分钟每小时的第几分钟任意列表0-59*,-范围步长/小时一天中的第几小时同上0-23日期一个月中的第几天同上1-31月份一年中的第几个月同上1-12星期一周中的第几天和都表示同上0-707周日命令要执行的命令或脚本任何有效命令通常使用绝对路径是中最常用的任务调度工具,用于在特定时间执行重复性任务使用编辑当crontab Linuxcrontab-e前用户的定时任务,查看现有任务,删除所有任务系统级定时任务配置在crontab-l crontab-r文件和目录中,而、和/etc/crontab/etc/cron.d//etc/cron.daily//etc/cron.weekly/目录包含按不同周期执行的脚本/etc/cron.monthly/命令用于执行一次性任务,如可以调度一小时后执行的任务,可以安排特at atnow+1hour at23:30定时间执行的任务输入命令后按结束命令查看待执行的任务,命令删除任务系统Ctrl+D atqatrm维护自动化案例包括数据库定时备份、日志文件轮转清理、系统更新mysqldump apt/yum、安全扫描、监控报告生成等在编写自动化任务时,应考虑错误处理、日志记录update fail2ban和通知机制,确保任务顺利执行或在失败时能及时报警系统监控与性能分析3性能监控维度、内存、磁盘是系统性能的三大关键指标CPU I/O5关键监控工具、、、、是最常用的基础监控命令top vmstatiostat sarnetstat60%平均负载CPU多核系统中,低于核心数的负载通常被视为正常范围CPU70%内存使用率包括物理内存和交换空间使用,高于此值通常需要优化实时监控工具提供当前系统状态的即时视图命令显示进程资源使用情况,按可按排序,按按内存排序,按显示所有核心信息top PCPU M1CPU是的增强版,提供更友好的界面和交互功能是另一个现代监控工具,提供更全面的系统信息对于更专业的内存分析,htop topglances free-h命令显示内存使用详情,提供内存、交换、和活动统计vmstat I/O CPU磁盘监控对识别系统瓶颈至关重要命令显示设备统计信息,实时监控进程的使用网络性能可通过、或更现代的I/O iostatI/O iotopI/O netstatss命令监控对于长期性能分析,工具收集、报告和保存系统活动信息,通过包提供配置数据收集ip sarSystemActivity Reportersysstat sar后,可使用查看历史数据,查看内存历史数据,查看历史数据图形化监控工具如、、sar-u CPUsar-r sar-b I/O NagiosZabbix适合企业环境,提供警报、趋势分析和可视化仪表板Prometheus+Grafana用户登录与安全管理基于密钥验证加密配置替代密码登录的更安全方式SSH2使用强密钥算法和禁用不安全协议访问限制限制和用户的登录权限IP登录审计监控和记录所有登录活动多因素认证结合多种验证方式提高安全性是系统远程管理的标准工具,其配置文件位于增强安全的关键设置包括禁用直接登录SSHSecure ShellLinux/etc/ssh/sshd_config SSHroot,使用密钥认证,限制协议版本,更改默认端口,限制允许的用户或组PermitRootLogin no SSH PasswordAuthentication noSSHProtocol2Port2222使用生成密钥对,将公钥部署到远程服务器AllowUsers/AllowGroups ssh-keygen ssh-copy-id登录信息审计对安全监控至关重要命令显示用户的登录历史,显示失败的登录尝试,和命令显示当前登录用户这些日志存储在和last lastbw who/var/log/wtmp文件中多因素认证通过组合密码、密钥和一次性验证码等多种因素提高安全性,可使用等工具实现限制登录途径也/var/log/btmp MFAGoogle Authenticator是重要的安全措施,如使用和或防火墙规则限制来源,使用模块限制登录时间和失败尝试次数TCP Wrappers/etc/hosts.allow/etc/hosts.deny IPPAM防火墙与安全加固基础操作基本配置系统安全加固firewalld iptables是和是传统的防火墙工具,全面的安全加固包括多个层面文件权firewalld RHEL/CentOS7+iptables Linux的默认防火墙管理工具,基于区基于链和表的概念常限审计Fedora chaintable find/-type f-perm-域概念使用命用链包括入站、出,禁用不必要服务zone firewall-cmd INPUTOUTPUT o+w systemctl令控制,如站和转发基本命令如服务名,使用强密码策略firewall-cmd--list-allFORWARDdisable显示当前规则,配置,定期更新系统firewall-cmd--iptables-A INPUT-p tcp--PAMyum/apt添允许连,安装安全工具防暴permanent--add-service=https dport22-j ACCEPTSSH updatefail2ban加服务,接,默认力破解,限制程序HTTPS firewall-cmd--iptables-P INPUTDROPSUID find/-重新加载配置相比传统拒绝所有入站流量配置持久化需使用,配置资源限制reload perm-4000,提供更简洁的接口和动态规和命iptables iptables-save iptables-restore/etc/security/limits.conf则更新功能令端口管理是防火墙配置的核心使用可通过开放端口,或firewalld firewall-cmd--add-port=3306/tcp MySQLfirewall-cmd--add-添加预定义服务对应命令为是的现代替service=http iptablesiptables-A INPUT-p tcp--dport3306-j ACCEPTnftables iptables代品,提供更好的性能和功能使用或命令可查看当前开放的端口和相关进程ss-tulpn netstat-tulpn企业环境的安全基线通常基于或等标准基线加固建议包括禁用不使用的网络协议和端口,开启强CISCenter forInternet SecurityNIST制访问控制,实施最小权限原则,配置日志审计和监控安全扫描工具如或可检测系统漏洞应用SELinux/AppArmor OpenVASNessus Web防火墙如可保护服务免受常见攻击在实施安全加固时,应平衡安全性和可用性,根据系统用途确定适当的安全级别ModSecurity Web安全机制SELinux模式SELinux有三种运行模式强制模式,阻止违规行为、宽容模式,SELinux EnforcingPermissive仅记录不阻止、禁用使用命令查看当前模式,临时Disabledgetenforce setenforce0/1切换模式,文件设置永久模式/etc/selinux/config安全上下文为每个文件、进程和系统对象分配安全上下文,格式为使用SELinux user:role:type:level ls查看文件上下文,查看进程上下文部分最为重要,如表示服务-Z ps-Z typehttpd_t Web器进程,表示内容文件httpd_sys_content_t Web故障排查问题常见于新服务配置时使用查看拒绝日志,命令SELinux ausearch-m avcsealert-l翻译日志为可读形式并提供解决建议常用修复工具包括管理端口标签,semanage重置文件上下文,设置布尔值开关restorecon setsebool是开发的强制访问控制安全系统,作为传统自主访SELinuxSecurity-Enhanced LinuxNSA MACLinux问控制的补充与传统权限不同,根据安全策略控制所有主体进程对客体文件等的访问,DAC SELinux即使是用户也受限制这种最小特权原则可有效防止权限提升攻击和配置错误导致的安全问题root常见问题包括新安装的服务无法访问网站文件需设置正确的文件上下文,服务使用非标准SELinux Web端口需用添加端口标签,服务无法写入特定目录可semanage port-a-t http_port_t-p tcp8080用设置写入权限对于复杂semanage fcontext-a-t httpd_sys_rw_content_t/path/to/dir/.*环境,可考虑使用自定义策略模块解决特殊需求在排查服务问题时,建议首先检查标准日志,然后查看日志,而不是简单禁用,以免削弱系统安全性SELinux SELinux网络基础与配置配置方面传统命令现代命令配置文件系配置文件系RedHatDebian查看接口ifconfig ip addr show/etc/sysconfig/netwo/etc/network/interfacesrk-scripts/ifcfg-*启用禁用接口/ifup/ifdown iplink setup/down设置地址IP ifconfigeth0ipaddradd
192.
168.
1.
10192.
168.
1.10/24dev eth0查看路由route iproute网络配置可通过命令行工具或配置文件实现现代系统推荐使用命令代替传统的,提供更一致和强大的接口Linux ipifconfig NetworkManager服务在桌面环境中常用,提供图形化和命令行管理工具静态配置需要设置地址、子网掩码、默认网关和服务器例如,使用nmcli IPIP DNS命令配置静态以太网连接nmcli IPnmcli conmodipv
4.method manualipv
4.addresses
192.
168.
1.100/24ipv
4.gateway
192.
168.
1.1ipv
4.dns
8.
8.
8.8配置与类似,但使用更长的地址格式现代系统默认启用,可通过设置禁用网络诊断工具包括连通性测试、IPv6IPv4Linux IPv6sysctl ping路由跟踪、结合和功能、查询、网络连接状态网络性能测试traceroute/tracepathmtr pingtraceroutedig/nslookupDNSnetstat/ss可使用工具虚拟网络接口如桥接、绑定和常用于服务器环境,提供网络冗余、负载均衡和网络隔离功能iperf3bridge bondingVLAN主机名与管理DNS主机名管理客户端配置DNS主机名是网络中识别计算机的名称,由三部分组成将主机名转换为地址,客户端配置包括DNS IPLinux DNS•静态主机名系统的永久名称•本地主机名映射/etc/hosts•瞬态主机名可由或动态设置•名称服务查询顺序DHCP mDNS/etc/nsswitch.conf•漂亮主机名对用户友好的全限定名•服务器设置/etc/resolv.conf DNS使用命令管理主机名现代系统通常由管理,手动更改可能被覆hostnamectl NetworkManagerresolv.conf盖使用设置服务器nmcli DNS•查看hostnamectl status•连接名•设置新主机名nmcli conmodipv
4.dns
8.
8.
8.
88.
8.
4.4hostnamectl set-hostname•连接名•传统方法修改文件nmcli conup/etc/hostname文件提供本地主机名解析,格式为地址主机名别名,如对于小型网络,这是一种/etc/hosts IP[]
192.
168.
1.10server
1.example.com server1简单的名称解析方式,但大型网络应使用服务器文件中的行定义了名称解析顺序,通常为,表示先查DNS/etc/nsswitch.conf hosts:files dns,再查服务器/etc/hosts DNS解析流程应用请求解析域名时,系统按定义的顺序查询;如果未在本地找到,则向中列出的服务器发送查询;DNS nsswitch.conf/etc/resolv.conf DNS服务器可能直接返回结果或递归查询其他服务器使用和命令测试解析,如查询记录配置本地服务DNS dignslookup DNSdig www.example.com ADNS器可使用轻量级或功能全面软件包在企业环境中,通常配置主、辅服务器提供冗余,并使用分布式架构管理大型区域dnsmasqBINDDNS DNS常见网络服务部署服务器Web•Apache功能丰富,模块化设计•Nginx高性能,低资源消耗•主配置/etc/httpd/或/etc/nginx/•虚拟主机多站点托管加密•SSL/TLS HTTPS文件共享服务•FTPvsftpd,传统文件传输•SFTP基于SSH的安全传输兼容共享•Samba Windows•NFSUnix/Linux网络文件系统•安全考虑权限,加密,认证云与其他服务•NextCloud私有云存储平台•Postfix/Dovecot邮件服务•MariaDB/PostgreSQL数据库•Docker容器化服务部署•监控Prometheus,Grafana服务器部署是最常见的应用场景之一配置通常基于虚拟主机和模块,主配置文件为或Web LinuxApachehttpd/etc/httpd/conf/httpd.conf因其事件驱动架构,更适合高并发场景,配置文件位于两者都支持反向代理、负载均衡/etc/apache2/apache
2.conf Nginx/etc/nginx/nginx.conf和加密,通过等服务可免费获取证书服务安全配置包括禁用不必要模块、隐藏版本信息、设置适当的文件权限等SSL LetsEncrypt SSLWeb文件共享服务中,允许与系统无缝共享文件,配置文件为适合系统间的文件共享,性能Samba LinuxWindows/etc/samba/smb.conf NFSUnix/Linux较好,配置文件为虽然功能强大但安全性较弱,建议使用并启用加密,或完全使用基于的私有云存储如/etc/exports FTPvsftpd TLSSSH SFTP提供类似的功能,包括文件同步、日历和联系人管理,可与移动应用程序集成,是企业数据本地化的理想选择数据库和NextCloud/ownCloud Dropbox邮件服务器需要特别注意安全配置和备份策略,通常应配置在专用服务器上并实施严格的访问控制系统远程管理Linux密钥认证配置安全文件传输SSH相比密码认证,密钥提供更安全的远程访问方和基于提供安全文件传输功能SSH SCPSFTP SSH式配置步骤首先在客户端使用命令用于单次传输ssh-keygen-t SCPscp file.txt生成密钥对;然后使用(上传)或rsa-b4096ssh-copy-user@remote:/path scp将公钥复制到服务器;(下载)id user@remote-server user@remote:/path/file.txt local_dir最后修改服务器,设置提供交互式文件管理界面,支持命令如、/etc/ssh/sshd_config SFTPget禁用密码登录,重、等,适合复杂文件操作命令则专为PasswordAuthenticationnoput lsrsync启服务生效高效同步设计,只传输变化部分,如SSH rsync-avz/local/path user@remote:/remote/path远程桌面解决方案提供多种远程桌面选项转发允许通过运行单个图形应用;提供Linux X11SSH ssh-X user@remote VNC完整桌面环境,适合长时间会话;允许远程桌面客户端连接;提供粘性会话,断XRDP WindowsLinux Xpra开连接后应用继续运行;和是高性能商业开源替代品,在低带宽环境表现更好NoMachine NXX2Go/配置的高级功能可以显著提升远程管理效率在文件中定义主机别名和连接参数,如SSH~/.ssh/config Host,之后只需输入即可连接对webserver1HostName
192.
168.
1.10User adminPort2222ssh webserver1于需要通过跳板机访问的服务器,可配置或选项隧道功能允许安全转发本地或远ProxyJump ProxyCommandSSH程端口,如建立本地端口转发,访问本地端口等同于访问远程服务ssh-L8080:localhost:80user@remote8080器的端口80大规模服务器管理可使用专用工具提高效率提供无客户端的自动化管理;允许并行执行命令;Ansible pdshSSH可同时控制多个会话;在远程会话中提供终端多路复用,防止网络中断导致工作丢失ClusterSSH SSHtmux/screen对于关键系统,应配置会话记录和审计,可使用命令记录会话内容,或部署专业堡垒机系统基于的管SSH scriptWeb理面板如、提供图形化管理界面,适合不熟悉命令行的管理员,但需注意潜在安全风险Cockpit Webmin用户环境定制配置文件环境变量设置Shell•全局配置/etc/profile,/etc/bashrc•PATH可执行文件搜索路径•用户配置~/.bash_profile,~/.bashrc•HOME用户主目录•登录Shell读取顺序/etc/profile→~/.bash_profile•LANG系统语言和区域设置•非登录Shell读取顺序/etc/bashrc→~/.bashrc•设置方法export VAR=value•~/.bash_logout登出时执行的命令•查看所有变量env命令个性化定制•PS1提示符自定义•别名alias ll=ls-la•函数定义复杂命令组合•自动补全添加bash-completion•终端颜色和字体设置提示符(变量)定制是个性化环境的重要部分常用转义序列包括(用户名)、(主机名)、(当前目PS1Shell\u\h\w录)、(时间)、(普通用户,用户)彩色提示符可通过颜色代码实现,如\t\$$root#ANSI创建绿色用户名和蓝色路径别名()可简化常PS1=\[\e[32m\]\u@\h\[\e[0m\]:\[\e[34m\]\w\[\e[0m\]\$alias用命令,如启用删除确认,合并更新命令alias rm=rm-i aliasupdate=sudo aptupdatesudo aptupgrade多用户环境优化需考虑全局配置和用户权限可在目录放置模板文件,新用户创建时自动复制这些文件到其主目/etc/skel录使用目录存放全局脚本,避免直接修改设置控制新创建文件的默认权限,通常在/etc/profile.d//etc/profile umask或中设置对于高级用户,可考虑使用配合或等替代,获取更强大/etc/profile~/.bashrc ZshOh-My-Zsh FishShellBash的功能和更友好的界面定期备份用户配置文件,尤其是在进行重大修改前,可避免配置错误导致的问题系统备份与恢复Linux数据同步rsync是高效的文件同步工具,只传输变化的部分基本用法源目录目标目录常用选项包括归档模式、详细输出、压rsync rsync-avz//user@remote://-a-v-z缩、删除目标端多余文件、排除文件可结合实现定期自动同步--delete--excludecron归档备份tar适合完整系统备份或大型数据归档常用命令创建备份,恢复备份结合管道可直接备份tar tar-czvf backup.tar.gz/home/usertar-xzvf backup.tar.gz到远程服务器可使用选项排除不需要备份的文件tar-cz/home|ssh user@remote catbackup.tar.gz--exclude镜像备份dd命令可创建完整磁盘或分区的二进制副本基本用法可结合压缩工具减小文件大小dd ddif=/dev/sda of=/path/to/image.img bs=4M status=progress dd对于活动系统,建议先进入单用户模式或使用启动后再执行备份if=/dev/sda|gzipdisk.img.gz Live CD快速恢复策略有效的恢复策略包括保持备份介质离线并定期测试可恢复性;分层备份方案完整增量备份;建立恢复时间目标和恢复点目标;准备应急启动介质如+RTO RPO;记录恢复步骤以减少人为错误;定期执行恢复演练确保流程有效SystemRescueCD企业级备份解决方案通常采用原则至少个备份副本,存储在种不同介质上,其中个异地存储和是开源的企业备份管理工具,支持多种存储介质和自3-2-1321Bacula Amanda动化备份计划对于数据库系统,应使用专用工具如、进行一致性备份,避免使用文件级备份导致数据不完整mysqldumpMySQL pg_dumpPostgreSQL系统恢复技术包括多种方案基于的手动恢复;使用启动修复工具如;从备份镜像恢复完整系统;使用等工具进行批量系统部署对于灾难恢复,应LiveCDBoot-Repair Clonezilla建立完整的业务连续性计划,包括备份策略、恢复流程、责任划分和沟通计划云备份服务如、结合等工具,可提供经济高效的异地备份BCP AWSS3Azure BlobStorage rclone解决方案无论采用何种备份方法,都应加密敏感数据,防止备份介质丢失导致信息泄露容器技术与Linux容器基本原理镜像与容器利用内核特性实现资源隔离镜像是模板,容器是运行实例Linux轻量高效资源共享秒级启动和低资源消耗共享内核但隔离环境是当前最流行的容器平台,利用的和技术实现容器隔离与资源限制相比传统虚拟机,容器不需要模拟硬件和运行完整操作系统,因Docker Linuxnamesapce cgroups此启动速度更快,资源利用率更高架构包括引擎()、镜像()、容器()、注册表Docker DockerDocker EngineDocker ImagesDocker ContainersDocker()等组件,通过定义容器构建过程Registry Dockerfile基本命令包括名称(获取镜像)、名称(创建并启动容器)、(列出运行中容器)、Docker dockerpull imagedocker runoptions imagedocker psdocker容器(停止启动容器)、容器(进入容器终端)容器管理可通过实现多容器应用编排,则提stop/start ID/docker exec-it IDbash DockerCompose Kubernetes供企业级容器集群管理能力对于现代开发和运维团队,掌握容器技术已成为核心技能,能够显著简化应用部署和环境一致性管理系统作为容器技术的基础平Linux台,其理解对容器化应用的管理和故障排除尤为重要虚拟化与云计算平台架构平台KVM OpenStack是内核的一部分,将是开源的云计算管理平台,用于构建私有云和公有云Kernel-based VirtualMachineKVM LinuxOpenStack转变为虚拟机监视器Linux Type-1•模块化架构计算、对象存储、块存储、NovaSwiftCinder•基于硬件辅助虚拟化网络等Intel VT/AMD-V Neutron•结合提供完整虚拟化解决方案•多虚拟化支持、、等QEMU KVMXen VMware•提供统一管理虚拟机•自服务门户和接口libvirt APIAPI•支持热迁移、内存超额分配等高级功能•资源池化和动态分配•提供图形化管理界面•适合大规模数据中心部署virt-manager虚拟化服务器部署流程首先检查处理器支持;安装必要软件包如、、KVM egrep-c vmx|svm/proc/cpuinfoqemu-kvm libvirt-bin;启动服务;创建虚拟网络和存储池;使用命令或创建虚拟机针对性能优化可配置驱virt-manager libvirtdvirt-install virt-manager virtio动、固定、大页内存等生产环境通常配置高可用集群,实现虚拟机自动故障转移CPU除外,其他流行的云平台包括基于的集成解决方案、支持的企业级虚拟化平台、OpenStack ProxmoxVE KVM+LXCoVirtRed Hat项目,与兼容企业应用案例包括电信公司使用构建资源池,支持快速业务上线;金融机构利用CloudStackApache AWSAPIOpenStack部署隔离的开发测试环境;教育机构通过云平台提供学生实验环境云计算平台带来的优势包括资源利用率提高、自动化程度增强、服务交KVM付加速、运维成本降低等,但也需注意性能监控、资源规划和安全防护措施系统升级与补丁管理版本评估与规划升级前应查阅发行版更新文档,了解新功能、废弃特性和兼容性变化制定详细升级计划,包括时间节点、备份策略、回滚方案和验证步骤在非生产环境测试升级过程,识别并解决潜在问题升级前进行完整系统备份,确保数据安全内核升级流程主要发行版通过包管理系统提供内核更新使用升级内核RHEL/CentOS yum/dnf yumupdate,升级后旧内核保留在菜单中,可在启动问题时回退通过升级内核kernel GRUBUbuntu aptapt手动内核编译适用于特殊优化需求,但维护成本高updateapt dist-upgrade系统补丁管理安全补丁应及时应用,尤其是关键漏洞修复系统可使用插件识别安全RHEL yum-plugin-security更新企业环境应实施分层补丁策略先在测试系统验证,再应用到生yum--security update产环境采用红蓝部署模式时,可交替更新服务器组,减少停机风险版本升级工具发行版提供专用升级工具使用,使用RHEL/CentOS8dnf system-upgrade Ubuntudo-,使用大型系统升级应在维护窗口进行,并提前通release-upgrade Debian apt full-upgrade知用户跨多个版本升级时,通常需要逐版本升级,不建议跳过中间版本离线环境升级面临特殊挑战,需要预先下载所有必要软件包系统可使用工具创建本地源,Red Hatcreaterepo配合下载软件包可使用或工具创建本地镜像对于无法直reposync Ubuntu/Debianapt-mirror debmirror接连接互联网的安全环境,可配置镜像服务器作为中间代理,通过物理介质或限制网络传输更新内容通用漏洞披露是识别和跟踪安全漏洞的标准发行版通常通过安全公告网站发布修复补丁企业CVELinux CVE应建立漏洞管理流程,定期审核系统,识别未修补漏洞自动化补丁管理工具如、SatelliteRed Hat或可大规模部署补丁,同时提供补丁合规报告适当的测试和回滚机制是补丁管理LandscapeUbuntu Ansible的关键组成部分,确保在补丁导致问题时能快速恢复服务常见故障与应急处理Linux系统无法启动当系统无法启动时,可使用应急模式或救援模式进入系统在菜单按编辑启动参数,添加或进入紧急或GRUB erd.break singleshell单用户模式对于严重损坏的系统,使用启动,然后挂载根分区进行修复损坏可使用和LiveCD GRUBgrub-install/dev/sda重建损坏可用命令重新生成grub-mkconfig-o/boot/grub/grub.cfg initramfsdracut磁盘损坏处理磁盘硬件问题可通过监控工具检测文件系统损坏时,根据类型使用或等S.M.A.R.T smartctl-a/dev/sda fsck.ext4xfs_repair工具修复,操作前确保分区已卸载对于坏道问题,命令可检测,然后使用标记badblocks e2fsck-l badblocks.txt/dev/sda1坏块在数据无法恢复的极端情况下,使用等工具尝试恢复部分数据dd_rescue服务启动失败服务无法启动时,首先使用服务名查看状态和错误信息服务名可查看详细日志常见问题包括systemctl statusjournalctl-u配置文件语法错误、文件权限不当、依赖服务未启动等使用或命令可跟踪服务启动过程检查日志文件如strace ltrace寻找相关错误解决权限问题可能需要恢复上下文/var/log/messages restoreconSELinux应急救援方案准备应急工具包,包括等专用、盘启动盘、常用工具清单、系统配置备份建立应急响应流程问题记SystemRescue LiveCDU录、影响评估、临时解决方案、根本原因分析、永久修复关键系统应有完整的灾难恢复计划,包括恢复时间目标和DRP RTO恢复点目标,并定期演练验证RPO内存问题排查首先检查系统日志中的记录,使用查看内存使用状况,或识别内存消耗过高的进OOMOut OfMemory free-m tophtop程频繁交换可能导致系统性能下降,可调整参数减少交换倾向对于内存泄漏,可使用等工具分析网络问题vm.swappiness valgrind排查工具链包括连通性、路由、连接状态、数据包捕获和协议分析pingtraceroutenetstat/sstcpdumpwireshark系统安全事件处理需遵循取证原则优先保存证据,避免破坏现场;隔离受感染系统,防止横向扩散;使用工具如检测;rkhunter rootkit分析日志文件识别入侵时间和方法;确认影响范围后,制定修复计划对于关键服务器,应部署入侵检测系统和安全信息事件管理IDS系统,实现主动监控和告警良好的文档记录对故障处理至关重要,应记录问题现象、处理步骤、解决方案和预防措施,建立知识SIEM库供团队共享企业级运维实战案例Linux企业级用户权限分级管理案例某金融机构实施细粒度权限控制,将用户分为管理员、运维、开发、审计等角色使用集中管理用LDAP户身份,结合实现命令级授权关键操作要求双人复核,通过自定义模块实现所有特权命令执行记录实时转发到集中审计系sudo PAM统实施结果安全事件减少,合规审计效率提升,运维人员工作满意度提高65%40%自动化部署与批量维护案例某电商平台使用构建自动化运维平台,管理超过台服务器标准化服务器配置通过基Ansible2000Linux础设施即代码方式维护在仓库新服务器从启动,自动完成操作系统安装、基础配置、安全加固和应用部署,整个过程无需人Git PXE工干预变更管理通过流水线,确保一致性和可追溯性监控系统采用架构,配置异常自动触发修复CI/CD Prometheus+Grafana该平台将平均服务部署时间从天缩短至分钟,大大提升了业务响应速度playbook330学习资源与认证考试介绍专业认证在线学习平台社区与资源专业认证为职业发展提供有力支持优质学习资源推荐持续学习的社区支持Linux•认证系统管理员•结构化课程和云实验环境•中国中文技术社区RHCSA/RHCE Red Hat LinuxAcademy Linux/ChinaUnix工程师,侧重实操能力/•海量课程,定期促销•问答资源Udemy StackOverflow•专业协会多级认证,厂商中立LPIC Linux•名校开设的相关课程•新闻和深度技术文章edX/Coursera LinuxLWN.net Linux•入门级认证,基础知CompTIA Linux+•实验楼中文互动式学习平台•各发行版官方文档和Linux Wiki识覆盖广•开源项目实践学习•开源技术会议,开源年会GitHub COSCON•管理员应用开CKA/CKAD Kubernetes/•慕课网中文视频教程•基金会培训课程Linux发者认证•国内认证教育部考试中心认可NCRE Linux认证是业界公认的高含金量认证,考试基于实际操作任务,要求在限定时间内解决系统配置和故障排除问题认证有效期为年,提供RHCE Linux3RedHat不同专业方向的认证路径,如云计算、容器、自动化等认证分为三个级别,从基础管理到企业混合环境,认证内容全面且与发行版无关,适合需要在LPIC不同环境工作的专业人士Linux自学的有效策略包括建立个人实验环境(虚拟机或树莓派);设定明确学习目标;结合项目实践巩固知识;参与开源项目积累经验;加入学习小组Linux或社区交流对于企业培训,可考虑内部技术分享、导师制、轮岗实践和外部专业培训相结合的方式行业动态可通过关注基金会、主要发行版博Linux客、趋势项目等途径了解持续学习是技术领域的必然要求,建立个人知识管理系统有助于长期职业发展GitHub课程总结与QA实践应用将所学知识应用于实际工作环境系统运维掌握故障处理和系统优化技能核心命令熟练使用日常管理工具和命令系统概念理解系统架构和基本原理Linux通过本课程的学习,我们系统地掌握了操作系统的核心知识和技能,从基础的系统架构、文件系统到高级的系统管理、网络配置和安全加固我们了解了Linux的开源精神和发展历程,学会了常用命令的使用方法,掌握了用户管理、权限控制、服务配置等系统管理技能,还探索了虚拟化、容器化等现代技术在Linux环境中的应用Linux学习是一个持续的过程,建议采取以下学习路线首先掌握基础命令和系统概念;然后深入学习系统管理和网络配置;接着专注于特定领域如安全、高可用Linux或云计算;最后通过实际项目整合所学知识自学过程中应多动手实践,遇到问题先尝试独立解决,善用文档和社区资源欢迎大家在课后交流区提问,分享学习心得和遇到的挑战希望本课程为您的学习之旅提供了坚实的基础,祝您在开源技术的世界中不断进步!Linux。
个人认证
优秀文档
获得点赞 0