Linux操作系统基础_第1页
Linux操作系统基础_第2页
Linux操作系统基础_第3页
Linux操作系统基础_第4页
Linux操作系统基础_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Linux操作系统基础从入门到系统管理·构建完整Linux知识体系Contents课程目录Linux操作系统基础·从入门到实践01Linux简介与发展历史02发行版选择与系统安装03文件系统与目录结构04命令行基础操作05用户与权限管理06软件包管理与服务控制07网络配置与系统监控08安全加固与数据备份CHAPTER01Linux简介与发展历史从赫尔辛基大学的学生项目到支撑全球90%云服务器的操作系统内核ORIGIN&SPIRITLinux的起源与开源精神Linux诞生于1991年LinusTorvalds的个人项目,在GNU计划、MINIX系统、POSIX标准和Internet网络四大支柱的支撑下,成长为全球最广泛使用的开源操作系统内核。01MINIX启发:1991年LinusTorvalds在赫尔辛基大学发布Linux0.01内核,基于MINIX教学系统重写x86架构操作系统内核02GNU工具链:RichardStallman发起的GNU计划提供编译器、编辑器等核心工具,Linux内核与GNU工具结合构成完整操作系统03社区协作:自由使用、自由修改、自由分发——全球数万开发者通过互联网协作持续打磨内核,形成社区驱动开发模式04POSIX兼容:遵循POSIX标准兼容Unix接口规范,大量Unix应用可低成本迁移至Linux平台,加速生态扩张LinusTorvalds·Linux内核创建者CHAPTER05Linux核心特性与系统优势Linux作为类Unix操作系统,具备完全免费、多用户多任务、POSIX兼容等核心特性,同时在网络功能、工具链完整性和安全可靠性方面展现出显著的系统优势,使其成为服务器、嵌入式和超级计算机领域的首选平台。开源免费遵循GPL许可证,用户可自由获取源代码并根据需求修改裁剪,极大降低企业IT基础设施成本GPLLicense多用户多任务原生支持多线程和多CPU架构,单个服务器可同时处理数千并发连接,资源调度效率高数千并发POSIX兼容遵循FHS文件系统层次规范,保证跨发行版的应用兼容性和系统管理一致性FHSStandard网络功能内嵌完整TCP/IP协议栈和防火墙组件,可实现路由器、网关和防火墙功能,配置灵活TCP/IPStack完整工具链拥有GCC、GDB、Make等完整开发工具链,支持C/C++/Python/Go等主流编程语言GCC·GDB·Make安全可靠性服务器连续运行数年无需重启,核心组件经全球开发者持续审查,安全漏洞响应速度极快数年运行ApplicationScenariosLinux的广泛应用场景Linux已渗透至现代数字基础设施的各个层面:从承载全球90%以上云服务的服务器,到100%占据超算TOP500榜单,再到数十亿台Android设备和海量嵌入式物联网终端。服务器与云计算—全球90%以上云服务器运行Linux,AWS、Azure、阿里云等主流云平台均以Linux为核心基础设施超级计算—TOP500榜单100%使用Linux,凭借出色的并行计算能力和高度可定制性,成为高性能计算唯一选择移动终端—Android底层基于Linux内核,全球超30亿台设备间接运行Linux,用户基数最大的操作系统内核嵌入式物联网—从路由器、智能摄像头到工业控制器和车载系统,Linux凭轻量、稳定、可裁剪特性占据主导数据中心服务器机房·承载全球90%以上云服务的Linux基础设施CHAPTER02发行版选择与系统安装从Ubuntu到CentOS,选择适合你的发行版并完成系统部署LinuxDistributions主流Linux发行版对比与选择Linux发行版的选择应匹配使用场景和技术水平:桌面学习首选Ubuntu,企业服务器推荐RockyLinux/CentOS,追求稳定性选Debian,深度学习选ArchLinux,安全测试选KaliLinux。初学者建议从Ubuntu或CentOSStream入门。五大主流发行版特点对比发行版核心特点适用人群包管理器Ubuntu用户友好、社区活跃、软件丰富初学者、桌面用户aptCentOS/Rocky稳定、企业级、兼容RHEL服务器运维、企业环境yum/dnfDebian稳定、自由软件严格审查追求极致稳定性的用户aptArchLinux极简、滚动更新、高度定制高级用户、学习原理pacmanKaliLinux预装600+安全工具网络安全从业者apt—不同发行版在稳定性、易用性和专业方向上各有侧重,选择时应以实际需求为导向而非盲目追新INITIALCONFIGURATION系统安装后的初始配置Linux系统安装完成后需执行标准化初始配置流程:创建sudo用户、配置SSH远程访问、更新系统软件包、设置时区与主机名,建议形成可复用的自动化脚本。01创建sudo用户—执行useradd-m-Gsudousername,遵循最小权限原则,避免日常操作使用root账户02配置SSH服务—修改默认端口为2222、禁用root远程登录、启用密钥认证替代密码认证03系统全面更新—执行aptupdate&&aptupgrade,修补已知安全漏洞,确保所有基础软件包为最新稳定版本04时区与主机名—timedatectlset-timezoneAsia/Shanghai,hostnamectlset-hostname,配置静态IP与网络参数Linux终端中的SSH连接与命令操作CHAPTER03文件系统与目录结构理解FHS标准与Linux目录树,掌握系统文件组织逻辑LinuxBasicsFHS标准与核心目录结构Linux文件系统遵循FHS层次标准,以根目录'/'为起点形成统一的目录树结构。理解各核心目录的功能定位,是高效使用Linux的前提。系统核心目录/bin·/usr/bin存放ls、cp、grep等基础命令和常用工具,系统启动和日常操作依赖这些可执行文件/etc全局配置文件目录,网络配置、用户信息、服务参数等集中存放于此,系统管理的核心配置中心/lib·/usr/lib共享库文件目录,类似Windows的DLL,存放命令和程序运行所需的动态链接库用户与数据目录/home普通用户主目录所在位置,每个用户拥有独立子目录,存放个人文件和用户级配置/root超级管理员root的专属主目录,与普通用户隔离,仅root本人可访问/tmp临时文件存放区,系统重启后内容可能被清除,所有用户均可读写运行时与设备目录/var可变数据目录,系统日志、邮件队列、缓存文件等持续增长的数据存放于此/dev设备文件目录,硬盘、终端等硬件设备以文件形式呈现,体现"一切皆文件"理念/proc·/sys虚拟文件系统,不占用磁盘空间,实时映射内核状态和进程信息FILESYSTEMLinux文件类型与"一切皆文件"哲学Linux遵循"一切皆文件"的核心设计哲学,将硬件设备、进程信息、网络套接字等所有资源统一抽象为文件接口,极大简化了系统设计并降低了学习与使用成本。−普通文件文本、二进制、图片、压缩包等,用cat/vim直接查看或编辑d目录文件包含文件名与inode映射关系,用ls-l查看条目及元数据l链接文件硬链接共享inode、删源不影响;软链接存储路径指针,类似快捷方式b/c设备文件块设备(硬盘/dev/sda)随机访问;字符设备(键盘/dev/tty)流式传输p/s管道与套接字命名管道用于主机内进程通信,套接字支持网络或本地IPC,体现资源统一抽象StorageManagement磁盘分区与挂载机制Linux采用统一目录树挂载模型,所有磁盘分区都挂载到根目录'/'下的某个挂载点,而非Windows的盘符分配方式。企业级SSD·服务器存储硬件01挂载机制:使用mount命令将分区关联到目录树节点,/etc/fstab文件定义开机自动挂载规则02主流文件系统:ext4兼容稳定为默认格式;xfs大文件高并发更优;btrfs支持快照压缩03分区规划:根分区20–50GB,/home保留用户数据,swap设为物理内存的1–2倍04管理命令:lsblk查看分区树,df-h查看使用率,fdisk/parted分区,mkfs格式化CHAPTER04命令行基础操作从文件管理到内容处理,掌握Shell环境下的高效工作方法LinuxEssentials文件与目录管理核心命令文件管理是Linux命令行操作最高频的场景,掌握基础命令和进阶技巧,配合通配符和Tab自动补全,能大幅提升效率。01·基础操作命令ls-la查看目录详细内容(含隐藏文件和权限),-lh人类可读格式,-lt按修改时间排序cd切换目录(~主目录、-上次目录、..上级),pwd显示当前路径cp-r递归复制目录,mv移动或重命名,rm-rf强制删除(高危,建议用-ri替代)02·进阶操作技巧mkdir-p递归创建多层目录,touch创建空文件或更新已有文件时间戳find多条件搜索:按名称-name、按大小-size、按时间-mtime-7(7天内修改)ln-s创建软链接,通配符*/?匹配字符,Tab键自动补全路径和命令名TextProcessing文件内容查看与文本处理Linux中大量系统信息以文本形式存储,掌握cat/less/head/tail等查看命令和grep/awk/sed等文本处理工具,配合管道符(|)实现命令串联,能高效完成日志分析、配置检查、数据提取等日常运维任务。01文件查看—cat查看完整文件,less分页浏览大文件(支持上下翻页和搜索),head-n20查看前20行,tail-f实时追踪日志更新(排查线上问题的核心命令)核心命令cat·tail-f02文本搜索—grep文本搜索利器:-i忽略大小写、-n显示行号、-r递归搜索目录、-v反向匹配(排除包含某关键词的行),是日志分析和配置检查的必备工具关键参数-i-n-r-v03数据处理—awk按列提取和统计数据(如awk'{print$1}'提取日志IP列),sed批量查找替换(如sed-i's/old/new/g'file),二者与grep组合可处理复杂文本任务工具组合awk+sed04管道流水线—管道符|将多个命令串联形成数据处理流水线,如cataccess.log|grep'500'|awk'{print$1}'|sort|uniq-c统计各IP的500错误次数流水线语法cmd1|cmd2|cmd3LINUXBASICSShell基础与高效操作技巧Shell(默认Bash)是用户与Linux内核的交互层,掌握命令历史、输入输出重定向、环境变量管理和快捷键操作,能显著提升命令行工作效率。管道与重定向的组合使用是实现自动化运维的基础能力。重定向与管道输出重定向:>覆盖写入、>>追加写入、2>重定向错误输出、&>同时重定向标准输出和错误输出管道符:|将前一命令输出作为后一命令输入,配合tee可同时输出到屏幕和文件ls|teeoutput.txt环境变量与历史环境变量:$PATH定义搜索路径,export设置变量,写入~/.bashrc永久生效命令历史:history查看记录,Ctrl+R反向搜索,!!重复上一条,!$引用最后参数~/.bashrc必备快捷键进程控制:Ctrl+C终止、Ctrl+Z挂起、Ctrl+D退出终端、Ctrl+L清屏编辑导航:Tab补全、Ctrl+A行首、Ctrl+E行尾、Ctrl+U删除光标前内容Ctrl+RSCRIPTINGShell脚本编程基础Shell脚本是将多个命令封装为可复用自动化工具的核心技能,掌握变量定义、条件判断、循环结构和参数传递等基础语法,配合crontab定时任务,可实现日志清理、数据备份、系统监控等运维工作的全面自动化。01脚本基础结构:首行#!/bin/bash声明解释器,用#添加注释,变量定义无需声明类型(如NAME='server01'),用$引用变量值02流程控制:if条件判断、for循环遍历文件列表、while循环读取文件内容,支持test命令和[[]]扩展条件表达式03参数与函数:$1–$9接收位置参数、$@获取所有参数、$#获取参数个数,function关键字定义可复用函数04实战应用:结合crontab定时执行脚本(如每天凌晨2点执行备份),实现日志轮转、数据库备份、磁盘监控告警等自动化运维任务Shell脚本编程·终端工作环境CHAPTER05用户与权限管理从rwx基础权限到SUID/SGID特殊权限,构建系统安全的第一道防线CHAPTER04·LINUXFUNDAMENTALS用户与组管理机制Linux通过UID/GID实现多用户身份管理,用户信息存储在/etc/passwd、密码哈希存储在/etc/shadow。遵循最小权限原则,为不同服务创建独立用户、合理分配组权限,是保障系统安全的基础策略。用户管理useradd-m-s/bin/bash创建用户并生成主目录,passwd设置密码,usermod-aG追加到指定组/etc/passwd存储用户基本信息(用户名、UID、GID、主目录、Shell),/etc/shadow存储加密密码哈希和过期策略/etc/passwd组管理groupadd创建新组、groupdel删除组、gpasswd-a将用户加入组,每个用户默认有一个同名主组idusername一个用户可同时属于多个附加组(SupplementaryGroups),用idusername查看用户所属的所有组和对应GIDPrimary+Supplementary安全最佳实践www-datamysql为Web服务、数据库等创建独立系统用户(如www-data、mysql),禁止使用root运行服务进程,限制安全爆炸半径/etc/passwdchage-M90定期审查/etc/passwd中是否存在异常账户,使用chage-M90设置密码过期策略LeastPrivilegeLinuxPermissionsrwx权限模型详解Linux的rwx权限模型将文件访问权限分为所有者(User)、所属组(Group)、其他用户(Other)三个层级,每个层级独立配置读(r=4)、写(w=2)、执行(x=1)权限,数字表示法(如755=rwxr-xr-x)和符号表示法(如u+x)是两种等效的权限设置方式。权限字符串解析'-rwxr-xr--'中首位'-'代表普通文件(d为目录、l为链接),后9位分为三组(所有者/组/其他),每组rwx分别对应读(4)、写(2)、执行(1)-rwxr-xr--文件与目录权限含义文件:r=查看内容、w=修改内容、x=作为程序执行;目录:r=列出内容、w=创建或删除文件、x=进入目录r·w·xchmod数字法快速设置755=rwxr-xr-x(所有者全权限、组和他人可读可执行),644=rw-r--r--(所有者读写、他人只读),700=rwx------(仅所有者全权限)755·644·700chown归属管理chownuser:groupfile修改文件所有者和所属组,-R参数递归修改目录树所有文件的归属,常用于部署项目时统一文件权限-R递归LinuxPermissions特殊权限与sudo配置SUID/SGID/StickyBit三种特殊权限扩展了基础rwx模型的能力边界,使普通用户能在受控范围内执行特权操作。sudo机制通过精细的命令级别授权,替代了直接共享root密码的粗放管理方式,是现代Linux系统权限治理的核心工具。三种特殊权限SUID(4)—执行文件时临时获得文件所有者权限,如/usr/bin/passwd让普通用户可修改自己的密码chmod4755SGID(2)—执行时临时获得文件所属组权限;设置在目录上时新建文件自动继承组归属,适合团队共享目录chmod2755StickyBit(1)—设置在公共目录(如/tmp),用户只能删除自己创建的文件,防止互相误删chmod1777sudo精细授权visudo—安全编辑/etc/sudoers配置文件,语法格式为"用户主机=(可切换身份)可执行命令列表",实现命令级别的精细权限控制visudo/etc/sudoers配置示例—允许alice免密重启Nginx服务,既满足运维需求又不暴露root权限aliceALL=(ALL)NOPASSWD:/usr/bin/systemctlrestartnginx安全最佳实践—遵循最小权限原则,仅授权必要命令;定期审计sudo日志/var/log/auth.log,及时发现异常提权行为Defaultslogfile="/var/log/sudo.log"CHAPTER06软件包管理与服务控制从apt/yum包管理到systemd服务编排,掌握软件生命周期管理PackageManagement包管理器使用与源码编译Linux包管理器(apt/yum/pacman)通过官方仓库实现软件的自动下载、依赖解析和版本管理,是系统软件安装的主要方式。对于仓库中不可用的软件,可通过源码编译安装(configure→make→makeinstall)获得最大的版本和配置灵活性。三大包管理器常用命令对照操作apt(Debian/Ubuntu)dnf(RHEL/CentOS)pacman(Arch)更新索引aptupdatednfcheck-updatepacman-Sy安装软件aptinstallpkgdnfinstallpkgpacman-Spkg卸载软件aptremovepkgdnfremovepkgpacman-Rpkg搜索软件aptsearchkeyworddnfsearchkeywordpacman-Sskeyword全面升级aptupgradednfupgradepacman-SyuSourceCompile源码编译安装三步录三种包管理器功能等价但命令语法不同,掌握其中一种后可快速迁移到其他系统。Linux服务管理systemd服务管理详解systemd是现代Linux的初始化系统和服务管理器,通过systemctl命令实现服务的启动、停止、重启和开机自启控制,journalctl提供集中式日志管理。服务生命周期管理systemctlstart/stop/restart服务名控制运行状态,systemctlstatus查看当前状态、运行PID和最近日志摘要systemctlstatus开机自启配置systemctlenable设置开机自启(创建symlink到multi-user.target.wants),disable取消自启,is-enabled检查状态systemctlenable集中日志查看journalctl-u查看指定服务日志,-f实时追踪,--since按时间过滤,-perr仅查看错误级别日志journalctl-u自定义服务在/etc/systemd/system/下创建.service文件,定义[Unit]、[Service]、[Install],daemon-reload后生效.service单元文件PRACTICE源码编译安装实战源码编译安装是包管理器的重要补充,适用于需要特定版本、定制功能模块或最新特性的场景。标准流程为解压源码→configure检测环境与配置选项→make编译→makeinstall部署,需预先安装编译工具链。01环境准备:安装编译工具链(aptinstallbuild-essential或dnfgroupinstall),确保gcc、make和所需开发库就绪02配置阶段:运行./configure--prefix指定安装路径,--enable-feature控制模块开关,脚本自动检测依赖并生成Makefile03编译与安装:make-j4并行编译加速,makeinstall部署到prefix目录,checkinstall可生成deb/rpm包04典型场景:安装特定版本Nginx、部署最新版Python、编译自定义内核裁剪驱动模块以优化性能开发人员在Linux终端中执行源码编译命令CHAPTER07网络配置与系统监控从IP配置到防火墙规则,从top进程监控到磁盘容量告警LinuxBasics网络配置与诊断工具Linux网络配置涵盖IP地址、路由网关和DNS解析三个层面,现代系统使用ip命令族和Netplan/YAML配置替代传统ifconfig。掌握ping/traceroute/ss/curl/dig等诊断工具的组合使用,能快速定位从物理层到应用层的各类网络问题。网络配置ipaddr查看所有网卡IP与MAC,iproute查看路由表和默认网关,替代传统ifconfigUbuntu用NetplanYAML配置静态IP,CentOS编辑ifcfg-eth0文件ip+NetplanDNS与连通性诊断ping测试连通性与延迟,traceroute追踪每一跳路由定位瓶颈节点dig查询DNS解析,curl-I测试HTTP响应头,wget测试下载连通ping·dig·curl端口与连接监控ss-tlnp查看TCP监听端口及进程PID,确认服务正常启动netstat-an查看连接状态,lsof-i查看占用指定端口的进程ss·netstat·lsofNETWORKSECURITY防火墙配置与安全策略Linux防火墙基于内核Netfilter框架构建,iptables提供底层规则管理,ufw和firewalld提供更友好的前端接口。配置原则是默认拒绝所有入站流量、仅开放必要服务端口,结合安全组实现多层防护。ufw简易防火墙ufwallow22/tcpufwallow80,443/tcpufwdeny3306ufwenableufwallow22/tcp开放SSHufwallow80,443/tcp开放Web服务ufwdeny3306拒绝外部MySQLufwenable启用并开机自启Ubuntufirewalld动态防火墙--add-service=http--add-port=8080/tcp--zone=publicreload--add-service=http添加HTTP服务规则--add-port=8080/tcp开放自定义端口指定--zone=public作用域reload使规则立即生效CentOSiptables底层规则-AINPUT-ptcp--dport22-jACCEPT-mstate--stateESTABLISHED-jACCEPT-AINPUT-ptcp--dport22-jACCEPT允许SSH入站-mstate--stateESTABLISHED-jACCEPT放行已建立连接返回包Netfilter安全最佳实践DROP默认策略设为DROP,拒绝所有未明确允许的流量仅开放SSH/Web等必要端口云服务器需同时配置平台安全组实现主机防火墙+安全组双重防护DROPSystemMonitoring系统资源监控与性能分析Linux监控覆盖CPU、内存、磁盘和进程四大维度,以top、free、iostat等为核心工具。建立定期采集与自动告警机制是运维关键实践。系统监控核心命令速查表监控维度核心命令典型用法与关注指标CPU与进程top/htop实时监控进程CPU和内存占用,按P按CPU排序、按M按内存排序,关注loadaverage负载值内存使用free-h查看总内存、已用、可用和缓存,重点关注available列(真实可用内存)而非free列磁盘空间df-h/du-shdf查看分区使用率(超80%需预警),du-sh*查看目录下各子目录大小,定位空间占用大户磁盘IOiostat-x1每秒刷新磁盘IO统计,关注%util(使用率超90%表示磁盘饱和)和await(IO等待时间)系统概况vmstat15每秒采样共5次,关注r(运行队列)、si/so(交换分区IO)、us/sy/wa(CPU时间分布)建立CPU、内存、磁盘、IO四维度的监控体系,设置阈值告警,是运维保障的基本功4监控维度CPU·内存·磁盘·进程5核心命令top·free·df·iostat·vmstat90%IO饱和阈值磁盘%util超限即触发告警CHAPTER08安全加固与数据备份从SSH安全配置到fail2ban防护,从rsync增量备份到crontab自动策略SecurityHardeningSSH安全配置与系统加固SSH是远程管理的主要通道也是攻击的首要目标,通过修改默认端口、禁用root登录、启用密钥认证和部署fail2ban自动封禁四层防护,可显著降低暴力破解风险。配合系统更新、最小服务原则和审计日志,构建纵深防御体系。SSH加固四步法01修改默认端口(Port2222)和禁用root登录(PermitRootLoginno),避开自动化扫描工具的默认端口攻击02生成SSH密钥对(ssh-keygen-ted25519),将公钥写入服务器的~/.ssh/authorized_keys,禁用密码认证(PasswordAuthenticationno)03部署fail2ban自动防护:监控SSH日志,当单IP在10分钟内失败5次以上时自动封禁该IP24小时,有效阻断暴力破解系统级安全策略01最小服务原则:用systemctllist-units审查运行中的服务,关闭所有不必要的端口和守护进程,减少攻击面02启用auditd审计框架:监控关键文件(/etc/passwd、/etc/shadow)的读写操作,记录所有sudo命令执行,满足安全合规要求03定期系统更新与补丁管理:配置自动安全更新(unattended-upgrades),及时修复内核和OpenSSL等关键组件漏洞,防止已知攻击手段利用BACKUPSTRATEGY数据备份与自动化恢复策略数据备份遵循3-2-1原则(3份数据、2种介质、1份异地),rsync提供高效增量同步能力,tar实现打包归档压缩,crontab驱动定时自动执行。三者组合可构建完整的数据保护体系。01rsync增量同步:rsync-avz--delete实现目录镜像同步,仅传输变化数据块,-a保留权限和时间戳,适合大规模数据的日常备份02tar打包归档:tar-czf按日期命名压缩备份文件,tar-

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论