资源搜
资源搜
👀 联系夏柔
🔥 投稿源码
资源搜

资源搜

  • 全部
  • 123盘
  • 阿里盘
  • 百度云
  • 迅雷
  • 夸克
  • 115
  • 蓝奏云
  • 其他
已收录34127条资源,仅供学习交流,请在24h内删除资源!

UNIX Linux网络日志分析与流量监控 PDF_操作系统教程

资源名称:UNIX Linux网络日志分析与流量监控 PDF 内容简介: 《UNIX/Linux网络日志分析与流量监控》以开源软件为基础,全面介绍了UNIX/Linux安全运维的各方面知识。第一篇从UNIX/Linux系统日志、Apache等各类应用日志的格式和收集方法讲起,内容涵盖异构网络系统日志收集和分析工具使用的多个方面;第二篇列举了二十多个常见网络故障案例,每个案例完整地介绍了故障的背景、发生、发展,以及最终的故障排除过程。其目的在于维护网络安全,通过开源工具的灵活运用,来解决运维实战工作中的各种复杂的故障;第三篇重点讲述了网络流量收集监控技术与OSSIM在异常流量监测中的应用。 本书使用了大量开源工具解决方案,是运维工程师、网络安全从业人员不可多得的参考资料。 作者简介: 李晨光,毕业于中国科学院研究生院,就职于世界500强企业,资深网络架构师、51CTO学院讲师、IBM精英讲师、UNIX/Linux系统安全专家,现任中国计算机学会(CCF)高级会员;曾获2011~2013年度全国IT博客10强。从事IDC机房网络设备运维十多年,持有多个IT认证;对Linux/UNIX、网络安全防护有深入研究。曾出版畅销书《Linux企业应用案例精解》和《Linux企业应用案例精解第2版》,多次在国内信息安全大会发表技术演讲,2012年受邀担任中国系统架构师大会(SACC)运维开发专场嘉宾主持人;先后在国内《计算机安全》、《程序员》、《计算机世界》、《网络运维与管理》、《黑客防线》等专业杂志发表论文六十余篇,撰写的技术博文广泛刊登在51CTO、IT168、ChinaUnix、赛迪网、天极网、比特网等国内知名IT网站。 资源目录: 第一篇 日志分析基础 第1章 网络日志获取与分析 1.1 网络环境日志分类 1.2 Web日志分析 1.3 FTP服务器日志解析 1.4 用LogParser分析Windows系统日志 1.5 Squid服务日志分析 1.6 NFS服务日志分析 1.7 iptables日志分析 1.8 Samba日志审计 1.9 DNS日志分析 1.10 DHCP服务器日志 1.11 邮件服务器日志 1.12 Linux下双机系统日志 1.13 其他UNIX系统日志分析GUI工具 1.14 可视化日志分析工具 第2章 UNIX/Linux系统取证 2.1 常见IP追踪方法 2.2 重要信息收集 2.3 常用搜索工具 2.4 集成取证工具箱介绍 2.5 案例一:闪现Segmentation Fault为哪般 2.6 案例二:谁动了我的胶片 第3章 建立日志分析系统 3.1 日志采集基础 3.2 时间同步 3.3 网络设备日志分析与举例 3.4 选择日志管理系统的十大问题 3.5 利用日志管理工具更轻松 3.6 用Sawmill搭建日志平台 3.7 使用Splunk分析日志 第二篇 日志分析实战 第4章 DNS系统故障分析 4.1 案例三:邂逅DNS故障 4.2 DNS漏洞扫描方法 4.3 DNS Flood Detector让DNS更安全 第5章 DoS防御分析 5.1 案例四:网站遭遇DoS攻击 5.2 案例五:“太囧”防火墙 第6章 UNIX后门与溢出案例分析 6.1 如何防范rootkit攻击 6.2 防范rootkit的工具 6.3 安装LIDS 6.4 安装与配置AIDE 6.5 案例六:围堵Solaris后门 6.6 案例七:遭遇溢出攻击 6.7 案例八:真假root账号 6.8 案例九:为rootkit把脉 第7章 UNIX系统防范案例 7.1 案例十:当网页遭遇篡改之后 7.2 案例十一:UNIX下捉虫记 7.3 案例十二:泄露的裁员名单 第8章 SQL注入防护案例分析 8.1 案例十三:后台数据库遭遇SQL注入 8.2 案例十四:大意的程序员之SQL注入 8.3 利用OSSIM监测SQL注入 8.4 LAMP网站的SQL 注入预防 8.5 通过日志检测预防SQL注入 第9章 远程连接安全案例 9.1 案例十五:修补SSH服务器漏洞 9.2 案例十六:无辜的“跳板” 第10章 Snort系统部署及应用案例 10.1 Snort安装与使用 10.2 Snort日志分析 10.3 Snort 规则详解 10.4 基于OSSIM平台的WIDS系统 10.5 案例研究十七:IDS系统遭遇IP碎片攻击 10.6 案例十八:智取不速之客 第11章 WLAN案例分析 11.1 WLAN安全漏洞与威胁 11.2 案例十九:无线网遭受的攻击 11.3 案例二十:无线会场的“不速之客” 第12章 数据加密与解密案例 12.1 GPG概述 12.2 案例二十一:“神秘”的加密指纹 第三篇 网络流量与日志监控 第13章 网络流量监控 13.1 网络监听关键技术 13.2 用NetFlow分析网络异常流量 13.3 VMware ESXi服务器监控 13.4 应用层数据包解码 13.5 网络嗅探器的检测及预防 第14章 OSSIM综合应用 14.1 OSSIM的产生 14.2 OSSIM架构与原理 14.3 部署OSSIM 14.4 OSSIM安装后续工作 14.5 使用OSSIM系统 14.6 风险评估方法 14.7 OSSIM关联分析技术 14.8 OSSIM日志管理平台 14.9 OSSIM系统中的IDS应用 14.10 OSSIM流量监控工具应用 14.11 OSSIM应用资产管理 14.12 OSSIM在蠕虫预防中的应用 14.13 监测shellcode 14.14 OSSIM在漏洞扫描中的应用 14.15 常见OSSIM应用问答
陌佑
百度云
百度云

《从零开始学Linux编程》PDF_操作系统教程

资源名称:《从零开始学Linux编程》PDF 内容简介: 《从零开始学Linux编程》内容简介:Linux系统可以免费地应用到多种服务器上,所以开发人员都在往Linux系统上转移,且很多开发都是使用C语言来完成的,这也是《从零开始学Linux编程》推出的关键所在。《从零开始学Linux编程》共分为五篇:第一篇是Linux系统知识,讲述Linux系统的安装和使用、常用命令、文本编辑器及程序的编译与调试;第二篇是C语言基本知识,讲述C语言的基本语法、指针、结构体、系统库函数等知识;第三篇是Linux系统编程,讲述Shell编程和文件处理方法;第四篇是Linux网络编程,讲解TCP和UDP网络编程的知识;第五篇是LinuxC项目实战,通过案例的学习,既复习了前面介绍的知识,也了解了项目实践的流程和技巧,从而增加读者的编辑经验。 资源目录: 第1篇 Linux系统知识  第1章 认识Linux系统   1.1 Linux发行版的介绍   1.1.1 Red Hat Linux   1.1.2 Debian Linux   1.2 Linux的安装   1.2.1 Linux的分区格式   1.2.2 在Windows系统中划分Linux分区   1.2.3 Red Hat Linux 9.0的安装   1.2.4 GRUB在Windows分区中引导Linux   1.3 VMware虚拟机安装Linux系统   1.3.1 VMware软件安装   1.3.2 新建虚拟计算机   1.3.3 VMware的使用   1.3.4 在VMware虚拟机中安装Linux系统   1.4 第一个C程序   1.4.1 在Linux中编写C程序代码   1.4.2 编译程序   1.5 小结   1.6 小测试  第2章 常用的Linux操作命令   2.1 与文件命令   2.1.1 查看命令pwd   2.1.2 打开命令cd   2.1.3 查看命令ls   2.1.4 建立文件命令touch   2.1.5 建立与删除文件夹命令mkdir、rmdir   2.1.6 文件复制命令cp   2.1.7 文件移动和更名命令mv   2.1.8 删除文件与命令rm   2.1.9 创建链接命令ln   2.1.10 查看文件信息命令wc   2.1.11 文件查看命令cat   2.1.12 查看文件视图命令head与tail   2.1.13 文件权限设置命令chmod   2.1.14 查找文件命令find   2.2 man系统帮助命令   2.2.1 man手册的使用方法   2.2.2 帮助文档的结构   2.3 info手册   2.4 小结   2.5 小测试  第3章 文本编辑器的使用   3.1 VIM的使用   3.1.1 VIM的启动   3.1.2 在桌面上创建VIM启动器   3.1.3 VIM的工作模式   3.1.4 保存与打开文件   3.1.5 移动光标   3.1.6 常用操作   3.1.7 选项设置   3.1.8 调用shell命令   3.2 VIM使用实例   3.2.1 字符的插入与删除   3.2.2 字符的查找与替换   3.3 带菜单的GVIM   3.3.1 文件的新建与保存   3.3.2 查找与替换   3.4 图形化的gedit   3.4.1 gedit的启动与打开文件   3.4.2 gedit编辑文件   3.4.3 gedit打印文件   3.4.4 gedit的首选项   3.5 小结   3.6 小测试  第4章 编译与调试   4.1 编译的概念和理解   4.1.1 程序编译的过程   4.1.2 编译器   4.2 gcc编译器   4.2.1 gcc编译器简介   4.2.2 gcc对源程序扩展名的支持   4.3 C程序的编译   4.3.1 编写第一个C程序   4.3.2 用gcc编译程序   4.3.3 查看gcc的参数   4.3.4 设置输出的文件   4.3.5 查看编译过程   4.3.6 设置编译的语言   4.4 编译过程的控制   4.4.1 编译过程简介   4.4.2 控制预处理过程   4.4.3 生成汇编代码   4.4.4 生成目标代码   4.4.5 链接生成可执行文件   4.5 gdb调试程序   4.5.1 gdb简介   4.5.2 在程序中加入调试信息   4.5.3 启动gdb   4.5.4 在gdb中加载需要调试的程序   4.5.5 在gdb中查看代码   4.5.6 在程序中加入断点   4.5.7 查看断点   4.5.8 运行程序   4.5.9 查看变量   4.6 程序调试实例   4.6.1 编写一个程序   4.6.2 编译文件   4.6.3 程序调试   4.6.4 gdb帮助的使用   4.7 gdb常用命令   4.8 编译程序常见的错误与问题   4.8.1 逻辑错误与语法错误   4.8.2 C程序中的错误与异常   4.8.3 编译中的警告提示   4.8.4 找不到包含文件的错误   4.8.5 错误地使用逗号   4.8.6 括号不匹配错误   4.8.7 小括号不匹配错误   4.8.8 变量类型或结构体声明错误   4.8.9 使用不存在的函数错误   4.8.10 大小写错误   4.8.11 数据类型错误   4.8.12 赋值类型错误   4.8.13 循环或判断语句中多加分号   4.9 小结   4.10 小测试 第2篇 C语言基本知识  第5章 C语言基础   5.1 C程序的基本概念   5.1.1 C程序的基本结构   5.1.2 C程序的一般格式   5.1.3 C程序中的注释   5.2 数据类型   5.2.1 整型(int)   5.2.2 浮点型(float)   5.2.3 字符型(char)   5.2.4 变量名   5.2.5 字符NULL   5.3 变量赋值与输出   5.3.1 变量赋值   5.3.2 printf函数输出变量   5.3.3 scanf函数从键盘读入变量   5.4 运算符   5.4.1 算术运算符   5.4.2 关系运算符   5.4.3 逻辑运算符   5.5 小结   5.6 小测试  第6章 C程序的常用语句   6.1 流程控制语句   6.1.1 if条件语句   6.1.2 if语句嵌套   6.1.3 switch选择执行语句   6.1.4 for循环语句   6.1.5 for循环嵌套   6.1.6 for循环应用实例:输出九九乘法口诀表   6.1.7 while循环语句   6.1.8 do while循环语句   6.1.9 转移控制语句:continue   6.1.10 转移控制语句:break   6.1.11 转移控制语句:return   6.2 流程控制语句实例   6.2.1 三个数字的排序   6.2.2 解一元二次方程   6.3 两种特殊语句结构   6.3.1 三元操作符   6.3.2 块语句   6.4 小结   6.5 小测试  第7章 数组与指针   7.1 数组的理解与操作   7.1.1 什么是数组   7.1.2 数组的定义与访问   7.1.3 数组使用实例   7.2 指针   7.2.1 对指针的理解   7.2.2 指针操作符   7.2.3 指针的定义与访问   7.2.4 指针使用实例   7.3 数组与指针   7.3.1 数组与指针的关系   7.3.2 指针的算术运算   7.3.3 字符数组与字符串   7.4 二维数组与多维数组   7.4.1 对二维数组的理解   7.4.2 二维数组与指针   7.5 实例   7.5.1 学生成绩统计实例   7.5.2 冒泡法排序实例   7.5.3 统计字符串中的字符   7.5.4 小写字母转换成大写字母   7.5.5 用指针访问数组   7.6 常见问题   7.6.1 错误的写操作   7.6.2 指针的错误赋值   7.6.3 数组指针的越界错误   7.7 小结   7.8 小测试  第8章 函数   8.1 对函数的理解   8.1.1 什么是函数   8.1.2 系统函数(库函数)与用户自定义函数   8.1.3 函数的返回值   8.1.4 无参函数   8.1.5 有参函数   8.1.6 函数参数实例   8.2 自定义函数   8.2.1 自定义函数的编写   8.2.2 函数中调用函数   8.2.3 函数声明   8.2.4 递归函数   8.2.5 main函数的参数argc与argv   8.3 函数与指针   8.3.1 值调用与引用调用   8.3.2 引用调用与指针   8.3.3 指针参数实例   8.3.4 自定义函数中指针使用实例   8.3.5 数组作为参数   8.3.6 数组作为函数参数实例   8.4 返回值   8.4.1 函数返回值的类型   8.4.2 函数返回指针   8.4.3 函数返回指针实例   8.4.4 函数返回结果到参数   8.5 库函数   8.5.1 库函数的种类   8.5.2 库函数包含文件   8.5.3 头文件使用实例   8.6 小结 资源截图:
陌佑
百度云
百度云

奔跑吧Linux内核基于Linux4.x内核源代码问题分析_操作系统教程

资源名称:奔跑吧Linux内核基于Linux4.x内核源代码问题分析 内容简介: 本书内容基于Linux4.x内核,主要选取了Linux内核中比较基本和常用的内存管理、进程管理、并发与同步,以及中断管理这4个内核模块进行讲述。全书共分为6章,依次介绍了ARM体系结构、Linux内存管理、进程调度管理、并发与同步、中断管理、内核调试技巧等内容。本书的每节内容都是一个Linux内核的话题或者技术点,读者可以根据每小节前的问题进行思考,进而围绕问题进行内核源代码的分析。 本书内容丰富,讲解清晰透彻,不仅适合有一定Linux相关基础的人员,包括从事与Linux相关的开发人员、操作系统的研究人员、嵌入式开发人员及Android底层开发人员等学习和使用,而且适合作为对Linux感兴趣的程序员的学习用书,也可以作为大专院校相关专业师生的学习用书和培训学校的教材。 作者简介: 张天飞,笔名“笨叔叔”。Linux内核爱好者,从事Linux内核和驱动开发十余年,在多家芯片公司从事过手机芯片底层软件开发和客户支持工作。 资源目录: LINUX内核奔跑卷 1 第1章 处理器体系结构 4 本章思考题 4 第2章 内存管理 32 本章思考题 32 2.1 物理内存初始化 36 2.1.1 内存管理概述 36 2.1.2 内存大小 37 2.1.3 物理内存映射 38 2.1.4 zone初始化 40 2.1.5 空间划分 44 2.1.6 物理内存初始化 45 2.2 页表的映射过程 51 2.2.1 ARM32页表映射 51 2.2.2 ARM64页表映射 60 2.3 内核内存的布局图 67 2.3.1 ARM32内核内存布局图 67 2.3.2 ARM64内核内存布局图 70 2.4 分配物理页面 72 2.4.1 伙伴系统分配内存 72 2.4.2 释放页面 85 2.4.3 小结 89 2.5 slab分配器 90 2.5.1 创建slab描述符 91 2.5.2 分配slab对象 103 2.5.3 释放slab缓冲对象 108 2.5.4 kmalloc分配函数 111 2.5.5 小结 112 2.6 vmalloc 113 2.7 VMA操作 120 2.7.1 查找VMA 122 2.7.2 插入VMA 124 2.7.3 合并VMA 129 2.7.4 红黑树例子 131 2.7.5 小结 133 2.8 malloc 133 2.8.1 brk实现 134 2.8.2 VM_LOCK情况 138 2.8.3 小结 148 2.9 mmap 150 2.9.1 mmap概述 151 2.9.2 小结 153 2.10 缺页中断处理 155 2.10.1 do_page_fault() 157 2.10.2 匿名页面缺页中断 165 2.10.3 文件映射缺页中断 169 2.10.4 写时复制 175 2.10.5 小结 183 2.11 page引用计数 184 2.11.1 struct page数据结构 185 2.11.2 _count和_mapcount的区别 188 2.11.3 页面锁PG_Locked 192 2.11.4 小结 192 2.12 反向映射RMAP 192 2.12.1 父进程分配匿名页面 193 2.12.2 父进程创建子进程 198 2.12.3 子进程发生COW 200 2.12.4 RMAP应用 201 2.12.5 小结 202 2.13 回收页面 204 2.13.1 LRU链表 204 2.13.2 kswapd内核线程 216 2.13.3 balance_pgdat函数 219 2.13.4 shrink_zone函数 228 2.13.5 shrink_active_list函数 233 2.13.6 shrink_inactive_list函数 238 2.13.7 跟踪LRU活动情况 244 2.13.8 Refault Distance算法 244 2.13.9 小结 249 2.14 匿名页面生命周期 251 2.14.1 匿名页面的诞生 251 2.14.2 匿名页面的使用 252 2.14.3 匿名页面的换出 252 2.14.4 匿名页面的换入 254 2.14.5 匿名页面销毁 254 2.15 页面迁移 254 migrate_pages()函数 255 2.16 内存规整(memory compaction) 262 2.16.1 内存规整实现 263 2.16.2 小结 272 2.17 KSM 273 2.17.1 KSM实现 274 2.17.2 匿名页面和KSM页面的区别 293 2.17.3 小结 294 2.18 Dirty COW内存漏洞 296 2.19 总结内存管理数据结构和API 309 2.19.1 内存管理数据结构的关系图 309 2.19.2 内存管理中常用API 312 2.20 最新更新和展望 315 2.20.1 页面回收策略从zone迁移到node 315 2.20.2 OOM Killer改进 316 2.20.3 swap优化 317 2.20.4 展望 318 第3章 进程管理 319 本章思考题 319 3.1 进程的诞生 320 3.1.1 init进程 321 3.1.2 fork 325 3.1.3 小结 344 3.2 CFS调度器 345 3.2.1 权重计算 346 3.2.2 进程创建 358 3.2.3 进程调度 369 3.2.4 scheduler tick 379 3.2.5 组调度 382 3.2.6 PELT算法改进 386 3.2.7 小结 387 3.3 SMP负载均衡 389 3.3.1 CPU域初始化 389 3.3.2 SMP负载均衡 401 3.3.3 唤醒进程 415 3.3.4 调试 421 3.3.5 小结 422 3.4 HMP调度器 422 3.4.1 初始化 423 3.4.2 HMP负载调度 425 3.4.3 新创建的进程 436 3.4.4 小结 437 3.5 NUMA调度器 438 3.5.1 node和page的关系 439 3.5.2 扫描进程 441 3.5.3 NUMA缺页中断 442 3.5.4 进程迁移 450 3.5.5 小结 455 3.6 EAS绿色节能调度器 457 3.6.1 能效模型 459 3.6.2 WALT算法 465 3.6.3 唤醒进程 480 3.6.4 CPU动态调频 491 3.6.5 小结 494 3.7 实时调度 496 3.8 最新更新与展望 500 3.8.1 进程管理更新 500 3.8.2 展望 500 第4章 并发与同步 501 本章思考题 501 4.1 原子操作与内存屏障 503 4.1.1 原子操作 503 4.1.2 内存屏障 506 4.2 spinlock 508 4.2.1 spinlock实现 509 4.2.2 spinlock变种 511 4.2.3 spinlock和raw_spin_lock 512 4.3 信号量 513 4.3.1 信号量 513 4.3.2 小结 516 4.4 Mutex互斥体 517 4.4.1 MCS锁机制 518 4.4.2 Mutex锁的实现 525 4.4.3 小结 531 4.5 读写锁 531 4.5.1 读者信号量 532 4.5.2 写者锁 538 4.5.3 小结 544 4.6 RCU 544 4.6.1 经典RCU和Tree RCU 547 4.6.2 Tree RCU设计 551 4.6.3 小结 573 4.7 内存管理中的锁 574 4.8 最新更新与展望 584 4.8.1 Queued Spinlock 584 4.8.2 读写信号量优化 591 4.8.3 展望 592 4.8.4 推荐书籍 593 第5章 中断管理 594 本章思考题 594 5.1 Linux中断管理机制 595 5.1.1 ARM中断控制器 595 5.1.2 硬件中断号和Linux中断号的映射 599 5.1.3 注册中断 610 5.1.4 ARM底层中断处理 618 5.1.5 高层中断处理 626 5.1.6 小结 636 5.2 软中断和tasklet 637 5.2.1 SoftIRQ软中断 638 5.2.2 tasklet 642 5.2.3 local_bh_disable/local_bh_enable 647 5.2.4 小结 649 5.3 workqueue工作队列 650 5.3.1 初始化工作队列 652 5.3.2 创建工作队列 659 5.3.3 调度一个work 665 5.3.4 取消一个work 675 5.3.5 和调度器的交互 680 5.3.6 小结 682 第6章 内核调试 684 6.1 QEMU调试Linux内核 684 6.1.1 QEMU运行ARM Linux内核 684 6.1.2 QEMU调试ARM Linux内核 687 6.1.3 QEMU运行ARMv8开发平台 688 6.1.4 文件系统支持 690 6.1.5 图形化调试 691 6.1.6 实验进阶 693 6.2 ftrace 694 6.2.1 irqs跟踪器 695 6.2.2 preemptoff跟踪器 696 6.2.3 preemptirqsoff跟踪器 697 6.2.4 function跟踪器 698 6.2.5 动态ftrace 699 6.2.6 事件跟踪 700 6.2.7 添加tracepoint 702 6.2.8 trace-cmd和kernelshark 705 6.2.9 trace marker 707 6.2.10 小结 709 6.3 SystemTap 710 6.4 内存检测 714 6.4.1 slub_debug 714 6.4.2 内存泄漏检测kmemleak 718 6.4.3 kasan内存检测 720 6.5 死锁检测 722 6.6 内核调试秘籍 728 6.6.1 printk 728 6.6.2 动态打印 730 6.6.3 RAM Console 731 6.6.4 OOPS分析 731 6.6.5 BUG_ON()和WARN_ON() 734 资源截图:
陌佑
百度云
百度云

《UNIX网络编程 卷2:进程间通信(第2版)》PDF_操作系统教程

资源名称:《UNIX网络编程 卷2:进程间通信(第2版)》PDF 内容简介: 《UNIX网络编程.卷2:进程间通信(第2版)》是一部UNIX网络编程的经典之作!进程间通信(IPC)几乎是所有Unix程序性能的关键,理解IPC也是理解如何开发不同主机间网络应用程序的必要条件。《UNIX网络编程.卷2:进程间通信(第2版)》从对Posix IPC和System V IPC的内部结构开始讨论,全面深入地介绍了4种IPC形式:消息传递(管道、FIFO、消息队列)、同步(互斥锁、条件变量、读写锁、文件与记录锁、信号量)、共享内存(匿名共享内存、具名共享内存)及远程过程调用(Solaris门、Sun RPC)。附录中给出了测量各种IPC形式性能的方法。 《UNIX网络编程.卷2:进程间通信(第2版)》内容详尽且具权威性,几乎每章都提供精选的习题,并提供了部分习题的答案,是网络研究和开发人员理想的参考书。 作者简介: W.Richard Stevens,国际知名的UNIX和网络专家,备受赞誉的技术作家他1951年2月5日出生于赞比亚,后随父母回到美国中学时就读于弗吉尼亚菲什伯恩军事学校,1973年获得密歇根大学航空和航天工程学士学位,1975年至1982年,他在亚利桑那州图森市的基特峰国家天文台从事计算机编程工作,业余时间喜爱飞行运动,做过兼职飞行教练这期间他分别在1978年和1982年获得亚利桑那大学系统工程硕士和博士学位此后他去康涅狄格州纽黑文的健康系统国际公司任主管计算机服务的副总裁,1990年他回到图森,从事专业技术写作和咨询工作写下了多种经典的传世之作。 资源目录: 第一部分 简介 第1章 简介 1.1 概述 1.2 进程、线程与信息共享 1.3 IPC对象的持续性 1.4 名字空间 1.5 fork、exec和exit对IPC对象的影响 1.6 出错处理:包裹函数 1.7 Unix标准 1.8 书中IPC例子索引表 1.9 小结 习题 第2章 Posix IPC 2.1 概述 2.2 IPC名字 2.3 创建与打开IPC通道 2.4 IPC权限 2.5 小结 习题 第3章 System V IPC 3.1 概述 3.2 key_t键和ftok函数 3.3 ipc_perm结构 3.4 创建与打开IPC通道 3.5 IPC权限 3.6 标识符重用 3.7 ipcs和ipcrm程序 3.8 内核限制 3.9 小结 习题 第二部分 消息传递 第4章 管道和FIFO 4.1 概述 4.2 一个简单的客户-服务器例子 4.3 管道 4.4 全双工管道 4.5 popen和pclose函数 4.6 FIFO 4.7 管道和FIFO的额外属性 4.8 单个服务器,多个客户 4.9 对比迭代服务器与并发服务器 4.10 字节流与消息 4.11 管道和FIFO限制 4.12 小结 习题 第5章 Posix消息队列 5.1 概述 5.2 mq_open、mq_close和mq_unlink函数 5.3 mq_getattr和mq_setattr函数 5.4 mq_send和mq_receive函数 5.5 消息队列限制 5.6 mq_notify函数 5.7 Posix实时信号 5.8 使用内存映射I/O实现Posix消息队列 5.9 小结 习题 第6章 System V消息队列 6.1 概述 6.2 msgget函数 6.3 msgsnd函数 6.4 msgrcv函数 6.5 msgctl函数 6.6 简单的程序 6.7 客户-服务器例子 6.8 复用消息 6.9 消息队列上使用select和poll 6.10 消息队列限制 6.11 小结 习题 第三部分 同步 第7章 互斥锁和条件变量 7.1 概述 7.2 互斥锁:上锁与解锁 7.3 生产者-消费者问题 7.4 对比上锁与等待 7.5 条件变量:等待与信号发送 7.6 条件变量:定时等待和广播 7.7 互斥锁和条件变量的属性 7.8 小结 习题 第8章 读写锁 8.1 概述 8.2 获取与释放读写锁 8.3 读写锁属性 8.4 使用互斥锁和条件变量实现读写锁 8.5 线程取消 8.6 小结 习题 第9章 记录上锁 9.1 概述 9.2 对比记录上锁与文件上锁 9.3 Posix fcntl记录上锁 9.4 劝告性上锁 9.5 强制性上锁 9.6 读出者和写入者的优先级 9.7 启动一个守护进程的唯一副本 9.8 文件作锁用 9.9 NFS上锁 9.10 小结 习题 第10章 Posix信号量 10.1 概述 10.2 sem_open、sem_close和sem_unlink函数 10.3 sem_wait和sem_trywait函数 10.4 sem_post和sem_getvalue函数 10.5 简单的程序 10.6 生产者-消费者问题 10.7 文件上锁 10.8 sem_init和sem_destroy函数 10.9 多个生产者,单个消费者 10.10 多个生产者,多个消费者 10.11 多个缓冲区 10.12 进程间共享信号量 10.13 信号量限制 10.14 使用FIFO实现信号量 10.15 使用内存映射I/O实现信号量 10.16 使用System V信号量实现Posix信号量 10.17 小结 习题 第11章 System V信号量 11.1 概述 11.2 semget函数 11.3 semop函数 11.4 semctl函数 11.5 简单的程序 11.6 文件上锁 11.7 信号量限制 11.8 小结 习题 第四部分 共享内存区 第12章 共享内存区介绍 12.1 概述 12.2 mmap、munmap和msync函数 12.3 在内存映射文件中给计数器持续加 12.4 .4BSD匿名内存映射 12.5 SVR4/dev/zero内存映射 12.6 访问内存映射的对象 12.7 小结 习题 第13章 Posix共享内存区 13.1 概述 13.2 shm_open和shm_unlink函数 13.3 ftruncate和fstat函数 13.4 简单的程序 13.5 给一个共享的计数器持续加 13.6 向一个服务器发送消息 13.7 小结 习题 第14章 System V共享内存区 14.1 概述 14.2 shmget函数 14.3 shmat函数 14.4 shmdt函数 14.5 shmctl函数 14.6 简单的程序 14.7 共享内存区限制 14.8 小结 习题 第五部分 远程过程调用 第15章 门 15.1 概述 15.2 door_call函数 15.3 door_create函数 15.4 door_return函数 15.5 door_cred函数 15.6 door_info函数 15.7 例子 15.8 描述符传递 15.9 door_sever_create函数 15.10 door_bind、door_unbind和door_revoke函数 15.11 客户或服务器的过早终止 15.12 小结 习题 第16章 Sun RPC 16.1 概述 16.2 多线程化 16.3 服务器捆绑 16.4 认证 16.5 超时和重传 16.6 调用语义 16.7 客户或服务器的过早终止 16.8 XDR:外部数据表示 16.9 RPC分组格式 16.10 小结 习题 后记 附录A 性能测量 附录B 线程入门 附录C 杂凑的源代码 附录D 精选习题解答 参考文献 索引 资源截图:
陌佑
百度云
百度云

Linux深度攻略 PDF_操作系统教程

资源名称:Linux深度攻略 PDF 资源目录: 封面 书名 版权 前言 目录 第1章 Linux系统的简介和安装 第2章 Linux字符界面 第3章 目录和文件管理 第4章 Linux常用命令 第5章 Shell编程 第6章 用户和组群账户管理 第7章 权限、所有者和ACL 第8章 归档、压缩和备份 第9章 软件包管理 第10章 磁盘和文件系统管理 第11章 逻辑卷管理 第12章 进程和服务管理 第13章 任务计划 第14章 Linux系统引导和启用 第15章 Linux网络基本配置 第16章 配置OpenSSH服务器 第17章 配置VNC服务器 第18章 配置NFS服务器 第19章 配置DHCP服务器 第20章 配置Szmba服务器 第21章 配置DNS服务器 第22章 配置Apache服务器 第23章 配置vsftpd服务器 第24章 配置sendmail服务器 第25章 配置Squid服务器 封底 资源截图:
陌佑
百度云
百度云

深度探索嵌入式操作系统_操作系统教程

资源名称:深度探索嵌入式操作系统 内容简介: 相信很多同行和笔者以前一样,阅读过很多操作系统理论方面的书籍,感觉它们所讲述的理论大同小异且比较容易理解,但是真要我们自己去动手开发和实现操作系统时,我们可能连操作系统的第一行代码该怎么写都不知道。为什久会这样? 因为操作系统是硬件平台上的第—层软件,若不了解硬件平台的细节,是不能实现操作系统的,所以本书一开始就选择了一款常用的硬件平台,并对其进行了详细描述,重点介绍了硬件平台上的实时时钟、定时器、串口、中断控制器、内存芯片、flash芯片、CPU、MMU等,然后介绍操作系统架构设计和开发环境与开发工具,尤其开发工具,详细了解开发工具会大大方便后面的开发工作并解决一些困惑,最后介绍了操作系统的初始化、HAL、内存管理、中断管理、设备管理、进程管理、文件系统、系统调用接口、应用程序库。对这些组件的介绍都是先明确这个组件要完成什久功能,达到什么要求。接着详述这个组件必须要关注的硬件的细节,然后把我们的想法和设计归纳成数据结构。最后编写完成这些功能的代码。 这些内容将奠定本书田晏作系统实践领域中里程碑式的地位。 资源目录: 前言 第1章 操作系统的功能及为什么需要它1 1.1从hello world开始1 1.2 操作系统功能演进3 1.3 小结7 第2章 硬件平台8 2.1 选择平台8 2.1.1 mini24408 2.1.2 mini2440平台的信息9 2.2 必须要关注的硬件13 2.2.1 原因14 2.2.2 RTC15 2.2.3 定时器16 2.2.4 串口17 2.2.5 中断控制器18 2.2.6 SDRAM19 2.2.7 Norflash23 2.2.8 Nandflash24 2.3 小结26 第3章 处理器28 3.1 ARM公司与其处理器28 3.2 ARM920T的结构与特性29 3.2.1 ARM920T CPU结构29 3.2.2 ARM920T CPU特性32 3.3 ARM920T存储体系33 3.3.1 ARM920T地址空间33 3.3.2 ARM920T存储器格式34 3.3.3 ARM920T存储地址对齐35 3.4 ARM920T 状态35 3.4.1 ARM状态36 3.4.2 Thumb 状态36 3.5 ARM920T处理器的7种工作模式37 3.6 寄存器38 3.7 异常和中断43 3.7.1 什么是异常和中断43 3.7.2 异常中断向量46 3.8 ARM920T指令集47 3.8.1 指令及其编码格式48 3.8.2 分支跳转指令50 3.8.3 数据处理指令53 3.8.4 装载和存储指令63 3.8.5 程序状态寄存器操作指令73 3.8.6 协处理器操作指令76 3.8.7 异常中断产生指令79 3.9 MMU80 3.9.1 MMU概述80 3.9.2 为什么要有MMU82 3.9.3 ARM920T CP15协处理器85 3.9.4 MMU 页表98 3.9.5 MMU页面访问权限的控制113 3.9.6 MMU的快表TLB113 3.9.7 MMU的编程接口114 3.10 Cache115 3.10.1 ARM920T的Cache115 3.10.2 Cache的原理116 3.10.3 Cache的类型及要注意的问题117 3.10.4 ARM920T Cache的编程接口119 3.11 小结120 第4章 操作系统内核的设计与构建122 4.1 操作系统内核的设计122 4.1.1 内核要完成的功能123 4.1.2 内核的架构124 4.1.3 分离硬件的相关性126 4.1.4 我们的选择127 4.2 开发环境及相关工具129 4.2.1 Linux环境129 4.2.2 文本编辑器132 4.2.3 GCC134 4.2.4 LD136 4.2.5 make139 4.3 LMOSEM的构建系统142 4.3.1 LMOSEM的makefile142 4.3.2 LMOSEM的链接脚本147 4.4 开发板的安装150 4.5 小结154 第5章 语言间调用约定与基本数据结构156 5.1 寄存器使用约定156 5.1.1 寄存器别名157 5.1.2 参数传递与返回值157 5.2 基本数据结构159 5.2.1 C语言的基本数据结构160 5.2.2 list_h_t数据结构161 5.2.3 spinlock_t数据结构164 5.2.4 kwlst_t数据结构165 5.2.5 sem_t数据结构166 5.3 数据结构存在于内存中的形式168 5.4 C与汇编的混用170 5.5 小结174 第6章 内核初始化175 6.1 开始175 6.1.1 第一行汇编代码175 6.1.2 第一个C函数178 6.2 MMU和中断向量的初始化181 6.2.1 初始化MMU181 6.2.2 复制中断向量186 6.3 串口初始化190 6.3.1 串口硬件190 6.3.2 内核的printf196 6.4 机器数据结构201 6.4.1 设计数据结构201 6.4.2 确定一些重要数据结构与内核的地址203 6.5 初级内存管理初始化205 6.5.1 设计一些数据结构205 6.5.2 初始化mmapdsc_t结构数组209 6.5.3 建立起内存分配数据结构212 6.6 中断初始化215 6.6.1 设计一些数据结构215 6.6.2 初始中断源描述符220 6.7 初始化测试222 6.8 小结225 第7章 内存管理226 7.1 内核功能层入口226 7.2 内存管理组件的设计228 7.3 块级内存管理229 7.3.1 块级内存管理数据结构视图229 7.3.2 块级内存管理接口230 7.3.3 主分配函数232 7.3.4 分配时查找alcfrelst_t 234 7.3.5 分配时查找和操作mmapdsc_t236 7.3.6 分配代码写得对吗239 7.3.7 主释放函数240 7.3.8 释放时查找alcfrelst_t 241 7.3.9 释放时查找和操作mmapdsc_t242 7.3.10 测试块级内存管理层246 7.4 页级内存管理248 7.4.1 页级内存管理接口及调用流程248 7.4.2 相关的数据结构251 7.4.3 页级内存管理初始化254 7.4.4 分配主函数256 7.4.5 分配时查找mplhead_t257 7.4.6 分配时新建页级内存池258 7.4.7 分配时操作mplhead_t262 7.4.8 分配代码写得对吗263 7.4.9 释放主函数265 7.4.10 释放时查找mplhead_t266 7.4.11 释放时操作mplhead_t268 7.4.12 释放时删除页级内存池269 7.4.13 测试页级内存管理层271 7.5 字级内存管理273 7.5.1 字级内存接口及调用流程274 7.5.2 相关的数据结构275 7.5.3 分配主函数276 7.5.4 分配时查找mplhead_t278 7.5.5 分配时新建字级内存池279 7.5.6 分配时操作mplhead_t282 7.5.7 分配代码写得对吗283 7.5.8 释放主函数285 7.5.9 释放时查找mplhead_t285 7.5.10 释放时操作mplhead_t287 7.5.11 释放时删除字级内存池288 7.5.12 测试字级内存管理层289 7.6 小结292 第8章 中断管理293 8.1 中断与中断控制器293 8.1.1 什么是中断293 8.1.2 S3C2440A中断控制器294 8.2 中断管理的架构与相关数据结构298 8.2.1 中断管理的架构298 8.2.2 设计数据结构intfltdsc_t和intserdsc_t298 8.3 中断处理301 8.3.1 中断辅助例程301 8.3.2 从中断向量开始305 8.3.3 保存CPU上下文306 8.3.4 中断主分派例程310 8.3.5 确定中断源314 8.3.6 调用中断处理例程317 8.4 安装中断回调例程319 8.5 小结322 第9章 驱动模型323 9.1 操作系统内核如何管理设备323 9.1.1 分权而治323 9.1.2 设备类型325 9.1.3 驱动程序327 9.2 相关数据结构328 9.2.1 驱动329 9.2.2 派发例程类型329 9.2.3 设备ID330 9.2.4 设备331 9.2.5 IO包332 9.2.6 设备表333 9.3 驱动模型的基础设施335 9.3.1 驱动程序从哪里执行335 9.3.2 新建与注册设备340 9.3.3 注册回调函数344 9.3.4 发送IO包345 9.3.5 调用驱动程序函数346 9.3.6 等待服务347 9.3.7 完成服务350 9.3.8 驱动模型辅助函数352 9.4 systick驱动程序实例356 9.4.1 systick硬件356 9.4.2 systick驱动程序框架360 9.4.3 systick驱动程序实现362 9.4.4 测试systick驱动程序368 9.5 RTC驱动程序实例370 9.5.1 RTC硬件370 9.5.2 RTC驱动程序实现375 9.6 小结385 第10章 进程386 10.1 应用程序的运行386 10.1.1 程序运行需要什么资源387 10.1.2 任何时刻资源都可用吗388 10.1.3 提出多道程序模型389 10.2 相关的数据结构390 10.2.1 设计进程的数据结构391 10.2.2 调度进程表392 10.3 LMOSEM内核的第一个进程394 10.3.1 进程管理组件的初始化395 10.3.2 建立空转进程396 10.3.3 空转进程运行399 10.4 新建进程404 10.4.1 分配进程描述符404 10.4.2 分配内存空间406 10.4.3 加入进程调度表408 10.5 进程调度410 10.5.1 调度算法410 10.5.2 处理进程时间片411 10.5.3 检查调度状态414 10.5.4 选择进程415 10.5.5 进程切换418 10.5.6 进程等待与唤醒421 10.5.7 进程测试425 10.6 小结428 第11章 文件系统430 11.1 文件系统设计430 11.1.1 文件系统只是一个设备430 11.1.2 数据格式与存储块432 11.1.3 如何组织文件433 11.1.4 关于我们文件系统的限制434 11.2 相关的数据结构434 11.2.1 超级块435 11.2.2 位图435 11.2.3 目录437 11.2.4 文件管理头438 11.3 文件系统格式化440 11.3.1 建立超级块440 11.3.2 建立位图445 11.3.3 建立根目录448 11.4 文件系统基础操作452 11.4.1 获取与释放根目录文件453 11.4.2 字符串操作455 11.4.3 分解路径名457 11.4.4 检查文件是否存在459 11.5 文件操作460 11.5.1 新建文件461 11.5.2 删除文件463 11.5.3 打开文件466 11.5.4 读写文件469 11.5.5 关闭文件472 11.5.6 驱动整合473 11.6 文件系统测试475 11.6.1 格式化测试475 11.6.2 文件操作测试479 11.7 小结482 第12章 系统调用与应用程序库483 12.1 系统调用机制483 12.1.1 软中断指令484 12.1.2 传递系统调用参数486 12.1.3 系统调用分发器488 12.2 时间管理系统调用489 12.3 进程管理系统调用492 12.3.1 进程的运行与退出492 12.3.2 获取进程的ID494 12.4 内存管理系统调用496 12.5 设备与文件系统调用498 12.5.1 设备与文件的打开498 12.5.2 设备与文件的关闭506 12.5.3 设备与文件的读写508 12.5.4 设备与文件的控制512 12.6 应用程序库514 12.7 测试520 12.8 小结526 后记528 资源截图:
陌佑
百度云
百度云

跟阿铭学Linux 第3版 PDF_操作系统教程

资源名称:跟阿铭学Linux 第3版 PDF 内容简介: 本书是一本入门级的Linux 学习教材,适合初学者阅读。本教程由浅入深,内容精湛,案例丰富,通俗易懂!书中分两部分:前面为基础知识,内容涉及Linux 的安装、使用远程登录工具登录Linux、文件和目录管理、磁盘管理、Vim、压缩和解压缩文件和目录、安装和卸载软件包等;后面为进阶知识,内容包括正则表达式、shell 脚本、日常管理操作、LAMP 环境、LNMP 环境、MySQL 常用的操作、NFS、FTP、Tomcat、Linux 集群和Zabbix 监控等。 与上一版相比,这一版不仅基于CentOS 7.3 进行了全面修订,还增加了firewalld、Tomcat 连接MySQL、集群架构、Zabbix 监控等内容。 即使是零基础的人,只要能够坚持把所有章都学完,也一定会受益匪浅。对于有工作经验的人,它也是一本详尽的工具书,助你解决工作当中的一些需求和难题,让你受益匪浅。 作者简介: 李世明 阿铭Linux培训创办者,猿课联合创始人,从事互联网运维工作8年多,先后就职于Discuz、腾讯、好贷,从最基础的运维到高级运维工程师,再到运维部门负责人,运维过的网站从访问量十几万PV到上亿PV,经历过各种各样的突发事故,运维实战经验非常丰富。2011年编写的《跟阿铭学Linux》电子版入门教程,阅读量高达几十万,对初学者提供了莫大的帮助。近些年,在从事Linux运维培训工作中积累了丰富的教学经验,培训过的学生薪资大多在8000元以上。 资源目录: 第1章 学习之初  1 1.1 Linux是什么  1 1.1.1 Linux的由来  1 1.1.2 Linux怎么读  2 1.1.3 常见Linux发行版  2 1.1.4 我们要学习哪个Linux发行版  2 1.2 Linux系统管理员要养成的习惯  3 1.2.1 要习惯使用命令行  3 1.2.2 操作要严谨  4 1.2.3 安全不可忽视  4 1.3 学习建议  5 1.3.1 稳中求进  5 1.3.2 善于总结文档  5 1.3.3 复习很关键  5 1.3.4 举一反三  6 1.4 课后习题  6 第2章 安装CentOS  7 2.1 安装虚拟机  7 2.1.1 下载虚拟机软件  7 2.1.2 安装虚拟机  8 2.1.3 新建一个虚拟机  9 2.2 安装Linux操作系统  13 2.2.1 下载CentOS镜像文件  13 2.2.2 设置虚拟光驱  13 2.2.3 安装CentOS  15 2.3 第一次亲密接触  21 2.3.1 初次使用命令行登录  21 2.3.2 设置网络  22 2.3.3 图形和命令行切换  29 2.3.4 学会使用快捷键  30 2.3.5 学会查询帮助文档 —— man  30 2.3.6 Linux系统目录结构  31 2.3.7 如何正确关机、重启  34 2.3.8 忘记root密码怎么办  34 2.3.9 学会使用救援模式  36 2.4 课后习题  39 第3章 远程登录Linux系统  40 3.1 安装PuTTY  40 3.1.1 下载PuTTY  40 3.1.2 安装  41 3.2 远程登录  41 3.2.1 使用密码直接登录  41 3.2.2 使用密钥认证  43 3.3 两台Linux相互登录  45 3.3.1 克隆CentOS  46 3.3.2 使用密码登录  47 3.3.3 使用密钥登录  47 3.4 课后习题  49 第4章 Linux文件和目录管理  50 4.1 绝对路径和相对路径  50 4.1.1 命令cd  50 4.1.2 命令mkdir  51 4.1.3 命令rmdir  52 4.1.4 命令rm  52 4.2 环境变量PATH  53 4.2.1 命令cp  54 4.2.2 命令mv  55 4.3 几个与文档相关的命令  56 4.3.1 命令cat  56 4.3.2 命令tac  57 4.3.3 命令more  57 4.3.4 命令less  57 4.3.5 命令head  57 4.3.6 命令tail  58 4.4 文件的所有者和所属组  59 4.5 Linux文件属性  59 4.6 更改文件的权限  60 4.6.1 命令chgrp  60 4.6.2 命令chown  61 4.6.3 命令chmod  62 4.6.4 命令umask  63 4.6.5 修改文件的特殊属性  64 4.7 在Linux下搜索文件  66 4.7.1 用which命令查找可执行文件的绝对路径  66 4.7.2 用whereis命令查找文件  66 4.7.3 用locate命令查找文件  67 4.7.4 使用find搜索文件  67 4.8 Linux文件系统简介  69 4.9 Linux文件类型  70 4.9.1 常见文件类型  70 4.9.2 Linux文件后缀名  70 4.9.3 Linux的链接文件  71 4.10 课后习题  72 第5章 Linux系统用户与用户组管理  74 5.1 认识/etc/passwd和/etc/shadow  74 5.1.1 /etc/passwd解说  75 5.1.2 /etc/shadow解说  75 5.2 用户和用户组管理  76 5.2.1 新增组的命令groupadd  76 5.2.2 删除组的命令groupdel  76 5.2.3 增加用户的命令useradd  77 5.2.4 删除账户的命令userdel  78 5.2.5 使用命令chfn更改用户的 finger  78 5.3 用户密码管理  78 5.3.1 命令passwd  79 5.3.2 命令mkpasswd  79 5.4 用户身份切换  80 5.4.1 命令su  80 5.4.2 命令sudo  81 5.4.3 不允许root远程登录Linux  82 5.5 课后习题  82 第6章 Linux磁盘管理  84 6.1 查看磁盘或者目录的容量  84 6.1.1 命令df  84 6.1.2 命令du  85 6.2 磁盘的分区和格式化  86 6.2.1 增加虚拟磁盘  86 6.2.2 命令fdisk  87 6.3 格式化磁盘分区  96 6.3.1 命令mke2fs、mkfs.ext2、mkfs. ext3、mkfs.ext4和mkfs.xfs  96 6.3.2 命令e2label  99 6.4 挂载/卸载磁盘  99 6.4.1 命令mount  100 6.4.2 /etc/fstab配置文件  101 6.4.3 命令blkid  103 6.4.4 命令umount  104 6.5 建立一个swap文件增加虚拟内存  105 6.6 课后习题  106 第7章 文本编辑工具Vim  107 7.1 Vim的3种常用模式  107 7.1.1 一般模式  107 7.1.2 编辑模式  108 7.1.3 命令模式  109 7.2 Vim实践  109 7.3 课后习题  111 第8章 文档的压缩与打包  112 8.1 gzip压缩工具  112 8.2 bzip2压缩工具  113 8.3 xz压缩工具  113 8.4 tar打包工具  114 8.4.1 打包的同时使用gzip压缩  116 8.4.2 打包的同时使用bzip2压缩  116 8.5 使用zip压缩  117 8.6 zcat、bzcat命令的使用  118 8.7 课后习题  118 第9章 安装RPM包或源码包  119 9.1 RPM工具  119 9.1.1 安装RPM包  120 9.1.2 升级RPM包  120 9.1.3 卸载RPM包  120 9.1.4 查询一个包是否已安装  121 9.1.5 得到一个已安装的RPM包的 相关信息  121 9.1.6 列出一个RPM包的安装文件  122 9.1.7 列出某个文件属于哪个 RPM包  122 9.2 yum工具  122 9.2.1 列出所有可用的RPM包  122 9.2.2 搜索RPM包  123 9.2.3 安装RPM包  124 9.2.4 卸载RPM包  125 9.2.5 升级RPM包  126 9.2.6 使用本地光盘制作yum源  127 9.2.7 利用yum工具下载RPM包  128 9.3 安装源码包  130 9.3.1 下载源码包  130 9.3.2 解压源码包  131 9.3.3 配置相关的选项并生成 Makefile  131 9.3.4 进行编译  132 9.3.5 安装  133 9.4 课后习题  133 第10章 shell基础知识  135 10.1 什么是shell  135 10.1.1 记录命令历史  135 10.1.2 命令和文件名补全  136 10.1.3 别名  136 10.1.4 通配符  137 10.1.5 输入/输出重定向  137 10.1.6 管道符  137 10.1.7 作业控制  137 10.2 变量  139 10.2.1 命令env  139 10.2.2 命令set  140 10.3 系统环境变量与个人环境变量的 配置文件  144 10.4 Linux shell中的特殊符号  145 10.4.1 *代表零个或多个任意字符  145 10.4.2 ?只代表一个任意的字符  145 10.4.3 注释符号#  145 10.4.4 脱义字符\\\\  146 10.4.5 再说管道符|  146 10.4.6 命令cut  146 10.4.7 命令sort  147 10.4.8 命令wc  148 10.4.9 命令uniq  148 10.4.10 命令tee  149 10.4.11 命令tr  149 10.4.12 命令split  149 10.4.13 特殊符号$  150 10.4.14 特殊符号;  150 10.4.15 特殊符号~  150 10.4.16 特殊符号&  151 10.4.17 重定向符号>、>>、2>和 2>>  151 10.4.18 中括号[]  151 10.4.19 特殊符号&&和||  151 10.5 课后习题  152 第11章 正则表达式  154 11.1 grep/egrep工具的使用  154 11.1.1 过滤出带有某个关键词的 行,并输出行号  155 11.1.2 过滤出不带有某个关键词 的行,并输出行号  155 11.1.3 过滤出所有包含数字的行  156 11.1.4 过滤出所有不包含数字 的行  156 11.1.5 过滤掉所有以#开头的行  156 11.1.6 过滤掉所有空行和以#开头 的行  157 11.1.7 过滤出任意一个字符和重复 字符  158 11.1.8 指定要过滤出的字符出现 次数  158 11.1.9 过滤出一个或多个指定的 字符  159 11.1.10 过滤出零个或一个指定的 字符  159 11.1.11 过滤出字符串1或者 字符串2  160 11.1.12 egrep中()的应用  160 11.2 sed工具的使用  160 11.2.1 打印某行  160 11.2.2 打印包含某个字符串的行  161 11.2.3 删除某些行  161 11.2.4 替换字符或者字符串  162 11.2.5 调换两个字符串的位置  163 11.2.6 直接修改文件的内容  163 11.2.7 sed练习题  164 11.3 awk工具的使用  165 11.3.1 截取文档中的某个段  165 11.3.2 匹配字符或者字符串  165 11.3.3 条件操作符  166 11.3.4 awk的内置变量  167 11.3.5 awk中的数学运算  168 11.3.6 awk练习题  169 11.4 课后习题  170 第12章 shell脚本  171 12.1 什么是shell脚本  171 12.1.1 shell脚本的创建和执行  172 12.1.2 命令date  173 12.2 shell脚本中的变量  173 12.2.1 数学运算  174 12.2.2 和用户交互  174 12.2.3 shell脚本预设变量  175 12.3 shell脚本中的逻辑判断  176 12.3.1 不带else  176 12.3.2 带有else  176 12.3.3 带有elif  177 12.3.4 和文档相关的判断  178 12.3.5 case逻辑判断  179 12.4 shell脚本中的循环  180 12.4.1 for循环  180 12.4.2 while循环  181 12.5 shell脚本中的函数  181 12.6 shell脚本中的中断和继续  182 12.6.1 break  182 12.6.2 continue  183 12.6.3 exit  183 12.7 shell脚本练习题  184 12.8 课后习题  186 第13章 Linux系统管理技巧  187 13.1 监控系统的状态  187 13.1.1 使用w命令查看当前系统的负载  187 13.1.2 用vmstat命令监控系统的 状态  189 13.1.3 用top命令显示进程所占的系统资源  190 13.1.4 用sar命令监控系统状态  191 13.1.5 用nload命令查看网卡流量  194 13.1.6 用free命令查看内存使用 状况  195 13.1.7 用ps命令查看系统进程  196 13.1.8 用netstat命令查看网络 状况  197 13.2 抓包工具  199 13.2.1 tcpdump工具  199 13.2.2 wireshark工具  200 13.3 Linux网络相关  200 13.3.1 用ifconfig命令查看网卡  IP  200 13.3.2 给一个网卡设定多个IP  201 13.3.3 查看网卡连接状态  202 13.3.4 更改主机名  203 13.3.5 设置DNS  203 13.4 Linux的防火墙  204 13.4.1 SELinux  204 13.4.2 netfilter  205 13.4.3 firewalld  212 13.5 Linux系统的任务计划  215 13.5.1 命令crontab  215 13.5.2 cron练习题  216 13.6 Linux系统服务管理  217 13.6.1 chkconfig服务管理工具  217 13.6.2 systemd服务管理  218 13.7 Linux下的数据备份工具rsync  222 13.7.1 rsync的命令格式  222 13.7.2 rsync常用选项  223 13.7.3 rsync应用实例  227 13.8 Linux系统日志  233 13.8.1 /var/log/messages  233 13.8.2 dmesg  234 13.8.3 安全日志  234 13.9 xargs与exec  235 13.9.1 xargs应用  235 13.9.2 exec应用  236 13.10 screen工具介绍  236 13.10.1 使用nohup  236 13.10.2 screen工具的使用  237 13.11 课后习题  237 第14章 LAMP环境搭建与配置  239 14.1 安装MySQL  239 14.1.1 下载软件包  240 14.1.2 初始化  240 14.1.3 配置MySQL  241 14.2 安装Apache  242 14.3 安装PHP  244 14.4 配置httpd支持PHP  246 14.5 测试LAMP是否成功  247 14.5.1 测试配置文件是否正确  247 14.5.2 测试是否正确解析PHP  248 14.6 httpd配置  248 14.6.1 默认虚拟主机  248 14.6.2 用户认证  250 14.6.3 配置域名跳转  251 14.6.4 配置访问日志  253 14.6.5 配置静态元素过期时间  255 14.6.6 配置防盗链  257 14.6.7 访问控制  258 14.7 PHP配置  261 14.7.1 PHP的disable_functions  262 14.7.2 配置error_log  262 14.7.3 配置open_basedir  263 14.8 PHP动态扩展模块安装  264 14.9 课后习题  266 第15章 LNMP环境配置  267 15.1 安装MySQL  267 15.2 安装PHP  268 15.3 安装Nginx  270 15.4 Nginx配置  275 15.4.1 默认虚拟主机  275 15.4.2 用户认证  275 15.4.3 域名重定向  277 15.4.4 Nginx的访问日志  277 15.4.5 配置静态文件不记录日志并添加过期时间  279 15.4.6 Nginx防盗链  280 15.4.7 访问控制  281 15.4.8 Nignx解析PHP  282 15.4.9 Nginx代理  283 15.4.10 Nignx配置SSL  287 15.5 php-fpm配置  291 15.5.1 php-fpm的pool  291 15.5.2 php-fpm的慢执行日志  292 15.5.3 php-fpm定义open_basedir  293 15.5.4 php-fpm进程管理  293 15.6 课后习题  293 第16章 常用MySQL操作  295 16.1 更改MySQL数据库root的密码  295 16.2 连接数据库  297 16.3 MySQL基本操作的常用命令  297 16.3.1 查询当前库  297 16.3.2 查询某个库的表  297 16.3.3 查看某个表的全部字段  298 16.3.4 查看当前是哪个用户  300 16.3.5 查看当前所使用的数据库  300 16.3.6 创建一个新库  300 16.3.7 创建一个新表  300 16.3.8 查看当前数据库的版本  300 16.3.9 查看MySQL的当前状态  301 16.3.10 查看MySQL的参数  301 16.3.11 修改MySQL的参数  301 16.3.12 查看当前MySQL服务器 的队列  302 16.3.13 创建一个普通用户并授权  302 16.4 常用的SQL语句  303 16.4.1 查询语句  303 16.4.2 插入一行  303 16.4.3 更改表的某一行  304 16.4.4 清空某个表的数据  304 16.4.5 删除表  304 16.4.6 删除数据库  304 16.5 MySQL数据库的备份与恢复  305 16.5.1 MySQL备份  305 16.5.2 MySQL恢复  305 16.6 课后习题  305 第17章 NFS服务配置  307 17.1 服务端配置NFS  307 17.2 客户端挂载NFS  308 17.3 命令exportfs  309 17.4 课后习题  310 第18章 配置FTP服务  311 18.1 使用vsftpd搭建FTP服务  311 18.1.1 安装vsftpd  311 18.1.2 建立账号  311 18.1.3 创建和用户对应的配置 文件  312 18.1.4 修改全局配置文件/etc/ vsftpd/vsftpd.conf  313 18.2 安装配置pure-ftpd  314 18.2.1 安装pure-ftpd  314 18.2.2 配置pure-ftpd  314 18.2.3 建立账号  314 18.2.4 测试pure-ftpd  315 18.3 课后习题  315 第19章 配置Tomcat  316 19.1 安装Tomcat  316 19.1.1 安装JDK  316 19.1.2 安装Tomcat  317 19.2 配置Tomcat  319 19.2.1 配置Tomcat服务的访问 端口  319 19.2.2 Tomca的虚拟主机  319 19.3 测试Tomcat解析JSP  321 19.4 Tomcat日志  322 19.5 Tomcat连接MySQL  322 第20章 MySQL Replication配置  325 20.1 配置MySQL服务  325 20.2 配置Replication  326 20.2.1 设置主(master)  326 20.2.2 设置从(slave)  327 20.3 测试主从  328 20.4 课后习题  329 第21章 Linux集群  330 21.1 搭建高可用集群  330 21.1.1 keepalived工作原理  331 21.1.2 安装keepalived  331 21.1.3 keepalived+Nginx实现Web高可用  331 21.2 搭建负载均衡集群  337 21.2.1 LVS介绍  337 21.2.2 LVS的调度算法  341 21.2.3 NAT模式LVS搭建  343 21.2.4 DR模式LVS搭建  345 21.2.5 keepalived+LVS  346 21.3 课后习题  348 第22章 配置监控服务器  349 22.1 Zabbix监控介绍  349 22.1.1 Zabbix组件  350 22.1.2 Zabbix架构  350 22.2 Zabbix监控安装和部署  351 22.2.1 用yum安装Zabbix  351 22.2.2 配置Nginx  352 22.2.3 配置MySQL  353 22.2.4 配置Web界面  353 22.2.5 Zabbix客户端部署  356 22.3 Zabbix配置和使用  357 22.3.1 忘记Admin密码  357 22.3.2 添加主机  357 22.3.3 添加模板  359 22.3.4 主机链接模板  368 22.3.5 图形中的中文乱码  368 22.3.6 添加自定义监控项目  370 22.3.7 配置告警  371 资源截图:
陌佑
百度云
百度云

《Linux命令行大全》PDF_操作系统教程

资源名称:《Linux命令行大全》PDF 内容简介: 《Linux命令行大全》主要介绍Linux命令行的使用,循序渐进,深入浅出,引导读者全面掌握命令行的使用方法。 《Linux命令行大全》分为四部分。第一部分开始了对命令行基本语言的学习之旅,包括命令结构、文件系统的导引、命令行的编辑以及关于命令的帮助系统和使用手册。第二部分主要讲述配置文件的编辑,用于计算机操作的命令行控制。第三部分讲述了从命令行开始执行的常规任务。类UNIX操作系统,比如Linux,包含了很多“经典的”命令行程序,这些程序可以高效地对数据进行操作。第四部分介绍了shell编程,这是一个公认的初级技术,并且容易学习,它可以使很多常见的系统任务自动运行。通过学习shell编程,读者也可以熟悉其他编程语言的使用。 《Linux命令行大全》适合从其他平台过渡到Linux的新用户和初级Linux服务器管理员阅读。没有任何Linux基础和Linux编程经验的读者,也可以通过本书掌握Linux命令行的使用方法。 作者简介: William E. Shotts, Jr.,作为一名软件开发人员和狂热的Linux用户已经有15年之久。他在软件开发领域有广泛的背景,先后涉及过技术支持、质量保证和文档编写等工作。他还是LinuxCommand.org网站的创始人,该网站是一个Linux教育和宣传网站,以新闻、评论和为人们使用Linux命令行提供广泛支持而见长。 资源目录: 第一部分 学习shell 第1章 shell是什么 3 1.1 终端仿真器 3 1.2 第一次键盘输入 4 1.2.1 命令历史记录 4 1.2.2 光标移动 4 1.3 几个简单的命令 5 1.4 结束终端会话 6 第2章 导航 7 2.1 理解文件系统树 7 2.2 当前工作目录 8 2.3 列出目录内容 9 2.4 更改当前工作目录 9 2.4.1 绝对路径名 9 2.4.2 相对路径名 9 2.4.3 一些有用的快捷方式 10 第3章 linux系统 13 3.1 ls命令的乐趣 13 3.1.1 选项和参数 14 .3.1.2 进一步了解长列表格式 15 3.2 使用file命令确定文件类型 16 3.3 使用less命令查看文件内容 16 3.4 快速浏览 18 3.5 符号链接 20 第4章 操作文件与目录 23 4.1 通配符 24 4.2 mkdir——创建目录 26 4.3 cp——复制文件和目录 26 4.4 mv——移除和重命名文件 27 4.5 rm——删除文件和目录 28 4.6 ln——创建链接 29 4.6.1 硬链接 29 4.6.2 符号链接 30 4.7 实战演练 30 4.7.1 创建目录 30 4.7.2 复制文件 31 4.7.3 移动和重命名文件 31 4.7.4 创建硬链接 32 4.7.5 创建符号链接 33 4.7.6 移除文件和目录 34 4.8 本章结尾语 35 第5章 命令的使用 37 5.1 究竟什么是命令 38 5.2 识别命令 38 5.2.1 type——显示命令的类型 38 5.2.2 which——显示可执行程序的位置 39 5.3 获得命令文档 39 5.3.1 help——获得shell内置命令的帮助文档 39 5.3.2 help——显示命令的使用信息 40 5.3.3 man——显示程序的手册页 40 5.3.4 apropos——显示合适的命令 41 5.3.5 whatis——显示命令的简要描述 42 5.3.6 info——显示程序的info条目 42 5.3.7 readme和其他程序文档文件 43 5.4 使用别名创建自己的命令 43 5.5 温故以求新 45 第6章 重定向 47 6.1 标准输入、标准输出和标准错误 48 6.1.1 标准输出重定向 48 6.1.2 标准错误重定向 50 6.1.3 将标准输出和标准错误重定向到同一个文件 50 6.1.4 处理不想要的输出 51 6.1.5 标准输入重定向 51 6.2 管道 53 6.2.1 过滤器 53 6.2.2 uniq——报告或忽略文件中重复的行 54 6.2.3 wc——打印行数、字数和字节数 54 6.2.4 grep——打印匹配行 54 6.2.5 head/tail——输出文件的开头部分/结尾部分 55 6.2.6 tee——从stdin读取数据,并同时输出到stdout和文件 56 6.3 本章结尾语 57 第7章 透过shell看世界 59 7.1 扩展 59 7.1.1 路径名扩展 60 7.1.2 波浪线扩展 61 7.1.3 算术扩展 61 7.1.4 花括号扩展 62 7.1.5 参数扩展 63 7.1.6 命令替换 64 7.2 引用 65 7.2.1 双引号 65 7.2.2 单引号 67 7.2.3 转义字符 67 7.3 本章结尾语 68 第8章 高级键盘技巧 69 8.1 编辑命令行 69 8.1.1 光标移动 70 8.1.2 修改文本 70 8.1.3 剪切和粘贴(killing and yanking)文本 71 8.2 自动补齐功能 71 8.3 使用历史命令 73 8.3.1 搜索历史命令 73 8.3.2 历史记录扩展 75 8.4 本章结尾语 76 第9章 权限 77 9.1 所有者、组成员和其他所有用户 78 9.2 读取、写入和执行 79 9.2.1 chmod——更改文件模式 81 9.2.2 采用gui设置文件模式 84 9.2.3 umask——设置默认权限 85 9.3 更改身份 87 9.3.1 su——以其他用户和组id的身份来运行shell 88 9.3.2 sudo——以另一个用户的身份执行命令 89 9.3.3 chown——更改文件所有者和所属群组 90 9.3.4 chgrp——更改文件所属群组 91 9.4 权限的使用 91 9.5 更改用户密码 93 第10章 进程 95 10.1 进程如何工作 96 10.1.1 使用ps命令查看进程信息 96 10.1.2 使用top命令动态查看进程信息 98 10.2 控制进程 100 10.2.1 中断进程 100 10.2.2 使进程在后台运行 101 10.2.3 使进程回到前台运行 101 10.2.4 停止(暂停)进程 102 10.3 信号 102 10.3.1 使用kill命令发送信号到进程 103 10.3.2 使用killall命令发送信号给多个进程 105 10.4 更多与进程相关的命令 105 第二部分 配置与环境 第11章 环境 109 11.1 环境中存储的是什么 109 11.1.1 检查环境 110 11.1.2 一些有趣的变量 111 11.2 环境是如何建立的 112 11.2.1 login和non-login shell 112 11.2.2 启动文件中有什么 113 11.3 修改环境 114 11.3.1 用户应当修改哪些文件 114 11.3.2 文本编辑器 115 11.3.3 使用文本编辑器 115 11.3.4 激活我们的修改 117 11.4 本章结尾语 118 第12章 vi简介 119 12.1 为什么要学习vi 119 12.2 vi背景 120 12.3 启动和退出vi 120 12.4 编辑模式 121 12.4.1 进入插入模式 122 12.4.2 保存工作 122 12.5 移动光标 123 12.6 基本编辑 124 12.6.1 添加文本 124 12.6.2 插入一行 125 12.6.3 删除文本 126 12.6.4 剪切、复制和粘贴文本 127 12.6.5 合并行 128 12.7 查找和替换 128 12.7.1 行内搜索 128 12.7.2 搜索整个文件 129 12.7.3 全局搜索和替换 129 12.8 编辑多个文件 130 12.8.1 切换文件 131 12.8.2 载入更多的文件 132 12.8.3 文件之间的内容复制 132 12.8.4 插入整个文件 133 12.9 保存工作 134 第13章 定制提示符 135 13.1 提示符的分解 135 13.2 尝试设计提示符 137 13.3 添加颜色 138 13.4 移动光标 140 13.5 保存提示符 141 13.6 本章结尾语 141 第三部分 常见任务和主要工具 第14章 软件包管理 145 14.1 软件包系统 146 14.2 软件包系统工作方式 146 14.2.1 软件包文件 146 14.2.2 库 147 14.2.3 依赖关系 147 14.2.4 高级和低级软件包工具 147 14.3 常见软件包管理任务 148 14.3.1 在库里面查找软件包 148 14.3.2 安装库中的软件包 148 14.3.3 安装软件包文件中的软件包 149 14.3.4 删除软件包 149 14.3.5 更新库中的软件包 150 14.3.6 更新软件包文件中的软件包 150 14.3.7 列出已安装的软件包列表 150 14.3.8 判断软件包是否安装 151 14.3.9 显示已安装软件包的相关信息 151 14.3.10 查看某具体文件由哪个软件包安装得到 151 14.4 本章结尾语 152 第15章 存储介质 155 15.1 挂载、卸载存储设备 156 15.1.1 查看已挂载的文件系统列表 157 15.1.2 确定设备名称 160 15.2 创建新的文件系统 162 15.2.1 用fdisk命令进行磁盘分区 162 15.2.2 用mkfs命令创建新的文件系统 164 15.3 测试、修复文件系统 165 15.4 格式化软盘 166 15.5 直接从/向设备转移数据 166 15.6 创建cd-rom映像 167 15.6.1 创建一个cd-rom文件映像副本 167 15.6.2 从文件集合中创建映像文件 168 15.7 向cd-rom写入映像文件 168 15.7.1 直接挂载iso映像文件 168 15.7.2 擦除可读写cd-rom 169 15.7.3 写入映像文件 169 15.8 附加认证 169 第16章 网络 171 16.1 检查、监测网络 172 16.1.1 ping——向网络主机发送特殊数据包 172 16.1.2 traceroute——跟踪网络数据包的传输路径 173 16.1.3 netstat——检查网络设置及相关统计数据 174 16.2 通过网络传输文件 175 16.2.1 ftp——采用ftp(文件传输协议)传输文件 175 16.2.2 lftp——更好的ftp(文件传输协议) 177 16.2.3 wget——非交互式网络下载工具 177 16.3 与远程主机的安全通信 178 16.3.1 ssh——安全登录远程计算机 178 16.3.2 scp和sftp——安全传输文件 181 第17章 文件搜索 183 17.1 locate——较简单的方式查找文件 184 17.2 find——较复杂的方式查找文件 185 17.2.1 test选项 186 17.2.2 action选项 190 17.2.3 返回到playground文件夹 194 17.2.4 option选项 196 第18章 归档和备份 197 18.1 文件压缩 198 18.1.1 gzip——文件压缩与解压缩 198 18.1.2 bzip2——牺牲速度以换取高质量的数据压缩 200 18.2 文件归档 201 18.2.1 tar——磁带归档工具 201 18.2.2 zip——打包压缩文件 205 18.3 同步文件和目录 207 18.3.1 rsync——远程文件、目录的同步 207 18.3.2 在网络上使用rsync命令 209 第19章 正则表达式 211 19.1 什么是正则表达式 211 19.2 grep——文本搜索 212 19.3 元字符和文字 213 19.4 任意字符 214 19.5 锚 214 19.6 中括号表达式和字符类 215 19.6.1 否定 216 19.6.2 传统字符范围 216 19.6.3 posix字符类 217 19.7  posix基本正则表达式和扩展正则表达式的比较 220 19.8 或选项 221 19.9 限定符 222 19.9.1 ?——匹配某元素0次或1次 222 19.9.2 *——匹配某元素多次或零次 222 19.9.3 +——匹配某元素一次或多次 223 19.9.4 {}——以指定次数匹配某元素 223 19.10 正则表达式的应用 224 19.10.1 用grep命令验证号码簿 224 19.10.2 用find查找奇怪文件名的文件 225 19.10.3 用locate查找文件 226 19.10.4 利用less和vim命令搜索文本 226 19.11 本章结尾语 227 第20章 文本处理 229 20.1 文本应用程序 230 20.1.1 文件 230 20.1.2 网页 230 20.1.3 电子邮件 230 20.1.4 打印机输出 231 20.1.5 程序源代码 231 20.2 温故以求新 231 20.2.1 cat——进行文件之间的拼接并且输出到标准输出 231 20.2.2 sort——对文本行进行排序 232 20.2.3 uniq——通知或省略重复的行 238 20.3 切片和切块 239 20.3.1 cut——删除文本行中的部分内容 239 20.3.2 paste——合并文本行 242 20.3.3 join——连接两文件中具有相同字段的行 243 20.4 文本比较 245 20.4.1 comm——逐行比较两个已排序文件 245 20.4.2 diff——逐行比较文件 246 20.4.3 patch——对原文件进行diff操作 248 20.5 非交互式文本编辑 249 20.5.1 tr——替换或删除字符 249 20.5.2 sed——用于文本过滤和转换的流编辑器 251 20.5.3 aspell——交互式拼写检查工具 258 20.6 本章结尾语 260 20.7 附加项 261 第21章 格式化输出 263 21.1 简单的格式化工具 264 21.1.1 nl——对行进行标号 264 21.1.2 fold——将文本中的行长度设定为指定长度 266 21.1.3 fmt——简单的文本格式化工具 267 21.1.4 pr——格式化打印文本 270 21.1.5 printf——格式化并打印数据 270 21.2 文档格式化系统 273 21.2.1 roff和tex家族 274 21.2.2 groff——文档格式化系统 274 21.3 本章结尾语 279 第22章 打印 281 22.1 打印操作简史 282 22.1.1 灰暗时期的打印 282 22.1.2 基于字符的打印机 282 22.1.3 图形化打印机 283 22.2 linux方式的打印 284 22.3 准备打印文件 284 22.3.1 pr——将文本文件转换为打印文件 285 22.4 向打印机发送打印任务 285 22.4.1 lpr——打印文件(berkeley类型) 286 22.4.2 lp——打印文件(system v类型) 287 22.4.3 另外一个参数选项:a2ps 287 22.5 监测和控制打印任务 290 22.5.1 lpstat——显示打印系统状态 290 22.5.2 lpq——显示打印队列状态 291 22.5.3 lprm与cancel——删除打印任务 291 第23章 编译程序 293 23.1 什么是编译 294 23.2 是不是所有的程序都需要编译 295 23.3 编译一个c程序 295 23.3.1 获取源代码 296 23.3.2 检查源代码树 297 23.3.3 生成程序 298 23.3.4 安装程序 302 23.4 本章结尾语 302 第四部分 编写shell脚本 第24章 编写第一个shell脚本 305 24.1 什么是shell脚本 305 24.2 怎样写shell脚本 306 24.2.1 脚本文件的格式 306 24.2.2 可执行权限 307 24.2.3 脚本文件的位置 307 24.2.4 脚本的理想位置 308 24.3 更多的格式诀窍 309 24.3.1 长选项名 309 24.3.2 缩进和行连接 309 24.5 本章结尾语 310 第25章 启动一个项目 311 25.1 第一阶段:最小的文档 311 25.2 第二阶段:加入一点数据 313 25.3 变量和常量 314 25.3.1 创建变量和常量 314 25.3.2 为变量和常量赋值 316 25.4  here文档 317 25.5 本章结尾语 319 第26章 自顶向下设计 321 26.1 shell函数 322 26.2 局部变量 325 26.3 保持脚本的运行 326 26.4 本章结尾语 328 第27章 流控制:if分支语句 329 27.1 使用if 330 27.2 退出状态 330 27.3 使用test命令 332 27.3.1 文件表达式 332 27.3.2 字符串表达式 334 27.3.3 整数表达式 335 27.4 更现代的test命令版本 336 27.5 (( ))——为整数设计 338 27.6 组合表达式 339 27.7 控制运算符:另一种方式的分支 341 27.8 本章结尾语 342 第28章 读取键盘输入 343 28.1 read——从标准输入读取输入值 344 28.1.1 选项 346 28.1.2 使用ifs间隔输入字段 347 28.2 验证输入 349 28.3 菜单 350 28.4 本章结尾语 351 28.5 附加项 352 第29章 流控制:while和until循环 353 29.1 循环 353 29.2 while 354 29.3 跳出循环 356 29.4 until 357 29.5 使用循环读取文件 358 29.6 本章结尾语 358 第30章 故障诊断 359 30.1 语法错误 359 30.1.1 引号缺失 360 30.1.2 符号缺失冗余 360 30.1.3 非预期的展开 361 30.2 逻辑错误 362 30.2.1 防御编程 363 30.2.2 输入值验证 364 30.3 测试 364 30.3.1 桩 365 30.3.2 测试用例 365 30.4 调试 366 30.4.1 找到问题域 366 30.4.2 追踪 366 30.4.3 运行过程中变量的检验 368 30.5 本章结尾语 369 第31章 流控制:case分支 371 31.1 case 371 31.1.1 模式 373 31.1.2 多个模式的组合 374 31.2 本章结尾语 375 第32章 位置参数 377 32.1 访问命令行 377 32.1.1 确定实参的数目 378 32.1.2 shift——处理大量的实参 379 32.1.3 简单的应用程序 380 32.1.4 在shell函数中使用位置参数 381 32.2 处理多个位置参数 381 32.3 更完整的应用程序 383 32.4 本章结尾语 386 第33章 流控制:for循环 389 33.1 for:传统shell形式 389 33.2 for:c语言形式 392 33.3 本章结尾语 393 第34章 字符串和数字 395 34.1 参数扩展(parameter expansion) 395 34.1.1 基本参数 396 34.1.2 空变量扩展的管理 396 34.1.3 返回变量名的扩展 397 34.1.4 字符串操作 398 34.2 算术计算和扩展 400 34.2.1 数字进制 401 34.2.2 一元运算符 401 34.2.3 简单算术 401 34.2.4 赋值 402 34.2.5 位操作 404 34.2.6 逻辑操作 405 34.3 bc:一种任意精度计算语言 407 34.3.1 bc的使用 407 34.3.2 脚本例子 408 34.4 本章结尾语 409 34.5 附加项 409 第35章 数组 411 35.1 什么是数组 411 35.2 创建一个数组 412 35.3 数组赋值 412 35.4 访问数组元素 413 35.5 数组操作 414 35.5.1 输出数组的所有内容 415 35.5.2 确定数组元素的数目 415 35.5.3 查找数组中使用的下标 416 35.5.4 在数组的结尾增加元素 416 35.5.5 数组排序操作 416 35.5.6 数组的删除 417 35.6 本章结尾语 418 第36章 其他命令 419 36.1 组命令和子shell 419 36.1.1 执行重定向 420 36.1.2 进程替换 420 36.2 trap 422 36.3 异步执行 425 36.4 命名管道 426 36.4.1 设置命名管道 427 36.4.2 使用命名管道 427 36.5 本章结尾语 428 资源截图:
陌佑
百度云
百度云

LINUX宝典-(第4版)_操作系统教程

资源名称:LINUX宝典-(第4版) 内容简介:《Linux宝典(第4版)》全面地介绍了Linux的世界。全书共分为6个部分,从讲述基本的Linux概念、shell基本命令以及图形用户界面开始,一直到最后介绍Linux编程环境,每一部分都提供了主要命令的详细解释和流程说明。《Linux宝典(第4版)》另外一个特别之处在于安排了很多章节来介绍各种流行的最新Linux发行版(多达12个)。另外,《Linux宝典(第4版)》最后提供的大量参考资料可帮助您获得所需的各种知识。 资源目录: 第1部分 Linux基础  第1章 Linux初步    1.1 了解Linux    1.2 探索Linux历史     1.2.1 从贝尔实验室的UNIX文化开始     1.2.2 UNIX的商业化     1.2.3 GNU的免费UNIX     1.2.4 BSD失去了机会     1.2.5 Linus填补了空缺    1.3 为什么Linux如此出色     1.3.1 Linux的特性     1.3.2 OSI开放源代码定义     1.3.3 充满活力的社区     1.3.4 主要的软件项目    1.4 Linux神话、传奇和FUD     1.4.1 能阻止对病毒的担忧吗     1.4.2 会因使用Linux而受到指控吗     1.4.3 Linux是否能运行在所有计算机上     1.4.4 Linux会颠覆Microsoft吗     1.4.5 使用Linux时如何获得支持     1.4.6 Linux只面向专家级用户吗     1.4.7 公司如何用Linux获得利润     1.4.8 不同的Linux发行版之间有何不同     1.4.9 Linux吉祥物是企鹅吗    1.5 运行Linux    1.6 小结   第2章 从shell运行命令    2.1 启动shell     2.1.1 使用shell提示符     2.1.2 使用终端窗口     2.1.3 使用虚拟终端    2.2 选择shell     2.2.1 使用bash(以及早期的sh)shell     2.2.2 使用tcsh(以及早期的csh)shell     2.2.3 使用ash     2.2.4 使用ksh     2.2.5 使用zsh    2.3 探索shell     2.3.1 检查登录会话     2.3.2 检查目录和许可     2.3.3 检查系统活动     2.3.4 退出shell    2.4 在Linux中使用shell     2.4.1 命令的位置     2.4.2 重新运行命令     2.4.3 连接和扩展命令    2.5 创建shell环境     2.5.1 配置shell     2.5.2 使用shell环境变量     2.5.3 管理后台和前台进程    2.6 使用Linux文件系统     2.6.1 创建文件和目录     2.6.2 移动、复制和删除文件    2.7 使用vi文本编辑器     2.7.1 运行vi     2.7.2 在文件中移动     2.7.3 搜索文本     2.7.4 使用命令和数字    2.8 小结   第3章 进入桌面    3.1 了解桌面    3.2 K桌面环境     3.2.1 使用KDE桌面     3.2.2 使用Konqueror文件管理器管理文件     3.2.3 配置Konqueror选项     3.2.4 管理窗口     3.2.5 配置桌面     3.2.6 添加应用程序启动器和MIME类型    3.3 GNOME桌面     3.3.1 使用Metacity窗口管理器     3.3.2 使用GNOME面板     3.3.3 使用Nautilus文件管理器     3.3.4 AIGLX的3D效果     3.3.5 改变GNOME首选项     3.3.6 退出GNOME    3.4 配置自己的桌面     3.4.1 配置X     3.4.2 选择窗口管理器     3.4.3 选择个人的窗口管理器    3.5 获得更多信息    3.6 小结  第2部分 运行显示  第4章 学习基本的管理功能    4.1 图形管理工具     4.1.1 使用基于Web的管理     4.1.2 不同发行版的图形管理    4.2 使用根登录(Root Login)     4.2.1 在shell中变成根(su命令)     4.2.2 允许有限的管理访问  4.3 了解管理命令、配置文件和日志文件     4.3.1 管理命令     4.3.2 管理配置文件     4.3.3 管理日志文件    4.4 使用sudo和其他管理登录    4.5 管理Linux系统    4.6 创建用户账号     4.6.1 用useradd添加用户     4.6.2 设置用户默认值    4.7 配置硬件     4.7.1 管理可移动硬件     4.7.2 使用可装载的模块    4.8 管理文件系统和磁盘空间     4.8.1 挂载文件系统     4.8.2 使用mkfs命令创建文件系统     4.8.3 添加硬盘     4.8.4 检查系统空间    4.9 监视系统性能    4.10 小结   第5章 连接到Inter    5.1 连接到网络     5.1.1 通过拨号服务进行连接     5.1.2 将单台计算机连接到宽带     5.1.3 将多台计算机连接到宽带     5.1.4 服务器连接     5.1.5 连接其他设备    5.2 使用以太网连接到Inter     5.2.1 在安装期间配置以太网     5.2.2 从桌面配置以太网     5.2.3 使用Fedora中的Network Configuration GUI     5.2.4 识别其他计算机(主机和DNS)     5.2.5 使用Ubuntu中的Network Setting GUI     5.2.6 理解Inter连接  5.3 使用拨号连接到Inter     5.3.1 获得信息     5.3.2 设置拨号PPP     5.3.3 使用Inter配置向导创建拨号连接     5.3.4 启动PPP连接     5.3.5 按需启动PPP连接     5.3.6 检查PPP连接  5.4 通过无线连接到Inter  5.5 小结   第6章 Linux的安全保证    6.1 Linux安全检查列表     6.1.1 了解特定于发行版的安全资源     6.1.2 了解一般的安全资源    6.2 安全地使用Linux     6.2.1 使用密码进行保护     6.2.2 选择健壮的密码     6.2.3 使用影子密码文件    6.3 使用日志文件     6.3.1 Syslogd的作用     6.3.2 使用syslogd将日志重定向到Loghost     6.3.3 理解messages日志文件    6.4 使用安全shell工具     6.4.1 启动SSH服务     6.4.2 使用ssh、sftp和scp命令     6.4.3 不带密码使用ssh、scp和sftp    6.5 保护Linux服务器的安全     6.5.1 使用TCP Wrapper来控制对服务的访问     6.5.2 了解各种攻击技术     6.5.3 拒绝服务攻击的防护     6.5.4 分布式DoS攻击的防护     6.5.5 针对入侵攻击的防护     6.5.6 使用SELinux保护服务器的安全     6.5.7 使用证书和加密保护Web服务器    6.6 使用安全工具Linux Live CD     6.6.1 安全Live CD的优势     6.6.2 使用INSERT检查rootkit    6.7 小结  第3部分 挑选和安装Linux发行版  第7章 安装Linux    7.1 选择Linux发行版     7.1.1 Linux的使用情况     7.1.2 其他发行版    7.2 获得自己的Linux发行版     7.2.1 寻找其他Linux发行版     7.2.2 了解需要     7.2.3 下载发行版     7.2.4 将发行版刻录到CD上    7.3 了解常见的安装问题     7.3.1 了解计算机硬件     7.3.2 升级或从头进行安装     7.3.3 与Windows双引导还是只用Linux     7.3.4 使用安装引导选项     7.3.5 分区硬盘驱动器     7.3.6 使用LILO或GRUB引导装载程序     7.3.7 配置网络     7.3.8 配置其他管理特性    7.4 小结   第8章 运行Fedora Core和Red Hat Enterprise Linux    8.1 探究各种特性     8.1.1 Red Hat安装程序(Anaconda)     8.1.2 RPM软件包管理     8.1.3 Kudzu硬件检测     8.1.4 Red Hat桌面的外观     8.1.5 系统配置工具    8.2 深入研究Fedora Core     8.2.1 日益增加的论坛支持Fedora     8.2.2 Fedora Extras     8.2.3 Fedora遗留项目     8.2.4 论坛和邮寄列表    8.3 Fedora变得成熟起来    8.4 Fedora展望    8.5 安装Fedora Core     8.5.1 选择计算机硬件     8.5.2 选择安装方法     8.5.3 选择安装还是升级     8.5.4 开始安装     8.5.5 运行Fedora Setup Agent    8.6 小结   第9章 运行Debian GNU/Linux    9.1 Debian GNU/Linux的内幕     9.1.1 Debian软件包     9.1.2 Debian软件包管理工具     9.1.3 Debian的版本    9.2 获得Debian的帮助    9.3 安装Debian GNU/Linux     9.3.1 硬件要求和安装计划     9.3.2 运行安装程序    9.4 管理Debian系统     9.4.1 配置网络连接     9.4.2 使用APT进行软件包管理     9.4.3 使用dpkg进行软件包管理     9.4.4 使用tasksel安装软件包集(任务)     9.4.5 替换、转换和改写     9.4.6 使用debconf管理软件包配置    9.5 小结   第10章 运行SUSE Linux    10.1 了解SUSE    10.2 SUSE中有什么     10.2.1 使用YaST进行安装和配置     10.2.2 RPM软件包管理     10.2.3 软件自动更新    10.3 获得SUSE支持    10.4 安装OpenSUSE     10.4.1 开始之前     10.4.2 开始安装    10.5 开始使用SUSE    10.6 小结   第11章  运行KNOPPIX    11.1 KNOPPIX的特性    11.2 了解KNOPPIX     11.2.1 KNOPPIX新闻     11.2.2 KNOPPIX内幕     11.2.3 KNOPPIX的出色之处     11.2.4 KNOPPIX的挑战     11.2.5 KNOPPIX的出处     11.2.6 探究KNOPPIX的使用    11.3 启动KNOPPIX     11.3.1 获得一台计算机     11.3.2 引导KNOPPIX     11.3.3 解决引导问题    11.4 使用KNOPPIX     11.4.1 使用KNOPPIX中的KDE桌面     11.4.2 上网     11.4.3 在KNOPPIX中安装软件     11.4.4 在KNOPPIX内保存文件     11.4.5 保存KNOPPIX配置     11.4.6 重新启动KNOPPIX    11.5 小结   第12章 运行Yellow Dog Linux    12.1 理解Yellow Dog Linux    12.2 Yellow Dog前景    12.3 深入Yellow Dog    12.4 安装Yellow Dog Linux     12.4.1 硬件支持     12.4.2 规划安装     12.4.3 开始安装     12.4.4 重新引导Linux Mac    12.5 更新Yellow Dog Linux    12.6 利用Mac-on-Linux运行Mac应用程序    12.7 支持选项    12.8 小结   第13章 运行Gentoo Linux    13.1 了解Gentoo     13.1.1 Gentoo的开放源代码精神     13.1.2 Gentoo社区     13.1.3 构建、调优和调整Linux     13.1.4 Gentoo的使用场所    13.2 Gentoo包含的内容     13.2.1 用Portage管理软件     13.2.2 查找软件包     13.2.3 进入2007年时Gentoo的新功能    13.3 安装Gentoo     13.3.1 获得Gentoo     13.3.2 从live CD开始Gentoo安装     13.3.3 使用最小化CD开始Gentoo安装     13.3.4 通过Emerge获得软件    13.4 小结   第14章 运行Slackware Linux    14.1 了解Slackware    14.2 Slackware社区的特色     14.2.1 Slackware的创造者     14.2.2 Slackware用户     14.2.3 Slackware的Inter站点    14.3 使用Slackware的挑战    14.4 将Slackware用做开发平台    14.5 安装Slackware     14.5.1 获得Slackware     14.5.2 Slackware 11.0中的新特性     14.5.3 硬件要求     14.5.4 开始安装    14.6 开始使用Slackware    14.7 小结   第15章 运行Linspire    15.1 Linspire概述    15.2 哪个版本更适合您     15.2.1 使用Click-N-Run安装软件     15.2.2 其他安装选项    15.3 Linspire和Freespire支持     15.3.1 论坛和信息     15.3.2 Audio Assistant    15.4 安装Linspire或Freespire     15.4.1 硬件需求     15.4.2 安装Linspire或Freespire    15.5 保护Linspire和Freespire    15.6 小结   第16章 运行Mandriva    16.1 Mandriva的特性    16.2 探究Mandriva     16.2.1 Mandriva安装程序(DrakX)     16.2.2 通过RPMDrake进行RPM软件包管理     16.2.3 Mandriva Linux控制中心(MCC)    16.3 Mandriva社区     16.3.1 Mandrivaclub上的RPM储存库     16.3.2 Mandriva论坛    16.4 安装Mandriva Limited Edition     16.4.1 适合Mandriva的硬件     16.4.2 开始DrakX安装    16.5 小结   第17章 运行Ubuntu Linux    17.1 Ubuntu概述     17.1.1 Ubuntu版本     17.1.2 Ubuntu安装程序     17.1.3 将Ubuntu作为桌面     17.1.4 将Ubuntu作为服务器     17.1.5 Ubuntu副产品     17.1.6 Ubuntu面临的挑战    17.2 安装Ubuntu    17.3 开始使用Ubuntu     17.3.1 试用桌面系统     17.3.2 添加更多软件    17.4 获得有关Ubuntu的更多信息    17.5 小结   第18章 运行Linux防火墙/路由器    18.1 了解防火墙    18.2 通过防火墙保护桌面系统     18.2.1 在Fedora中启动防火墙     18.2.2 在Mandriva中配置防火墙    18.3 通过iptables使用防火墙     18.3.1 用iptables启动     18.3.2 使用iptables进行SNAT或IP伪装     18.3.3 通过iptables添加模块     18.3.4 将iptables用作透明代理     18.3.5 使用iptables进行端口转发    18.4 制作Coyote Linux可引导软盘防火墙     18.4.1 创建Coyote Linux防火墙     18.4.2 创建Coyote Linux软盘     18.4.3 运行Coyote Linux软盘防火墙     18.4.4 管理Coyote Linux软盘防火墙    18.5 使用其他防火墙发行版    18.6 小结   第19章 运行可引导的Linux发行版    19.1 可引导Linux发行版概述    19.2 选择可引导的Linux     19.2.1 安全和救援可引导发行版     19.2.2 演示可引导版本     19.2.3 多媒体可引导版本     19.2.4 微型桌面发行版    19.3 特殊目的的可引导发行版    19.4 自定义可引导Linux    19.5 小结  第4部分 运行应用程序  第20章 播放音乐和视频    20.1 播放数字媒体并遵守法律     20.1.1 版权保护问题     20.1.2 探究编解码器    20.2 播放音乐     20.2.1 安装声卡     20.2.2 选择音频CD播放器     20.2.3 使用MIDI音频播放器     20.2.4 执行音频文件转换和压缩    20.3 录制和处理音乐     20.3.1 使用cdrecord创建音频CD     20.3.2 使用Grip处理CD     20.3.3 使用cdlabelgen创建CD标签  20.4 使用电视、视频和数字成像设备进行工作     20.4.1 使用tvtime看电视     20.4.2 使用Ekiga召开视频会议  20.5 观看电影和视频     20.5.1 使用xine观看视频     20.5.2 使用Helix Player和RelPlayer 10    20.6 通过Gtkam和gPhoto2使用数码相机     20.6.1 使用Gtkam下载数字照片     20.6.2 使用相机作为存储设备    20.7 小结   第21章 处理文字和图像   第22章 电子邮件和网页浏览   第23章 通过Linux玩游戏  第5部分 运行服务器  第24章 运行Linux、Apache、MySQL和PHP(LAMP)服务器   第25章 运行邮件服务器   第26章 运行打印服务器   第27章 运行文件服务器  第6部分 Linux编程  第28章 编程环境和接口   第29章 编程工具和实用程序  附录A 创建Linux CD以及获得源代码  附录B 走入Linux社区
陌佑
百度云
百度云

LINUX企业应用案例精解 第2版 PDF_操作系统教程

资源名称:LINUX企业应用案例精解 第2版 PDF 内容简介: 全书共14章,结合几十个经典案例,所讲解的内容无不来源于大中型企业生产一线的实践性总结。其中主要介绍了Web系统集成方法、漏洞测试方法和LAMP安全配置;配置OpenLDAP实现Linux下的应用统一认证;配置Postfix大型邮件系统;Oracle RAC数据库集群的配置与管理;Heartbeat、WebLogic和OSCAR高可用集群的搭建;VSFTP和ProFTP的整合管理;Snort在企业中的部署与管理;配置Xen和VMware的企业虚拟化应用;Linux系统和服务的安全防护策略和入侵案例分析;Nagios的安装和高级配置以及OSSIM配置和综合应用分析;Linux内核加固、iptables防火墙在企业中高级应用;利用Rsync进行数据自动化备份以及NetBackup安装配置与Oracle备份实例等。 本书适合Linux系统管理员、网络工程师、系统集成工程师使用,也适合作为大专院校计算机专业师生的参考书。 作者简介: 李晨光,毕业于中国科学院研究生院,就职于世界500强企业信息部门,资深网络架构师、IBM精英讲师、Linux系统安全专家,现任中国计算机学会(CCF)高级会员、会员代表;51CTO、IT专家网和ChinaUnix论坛专家博主;曾获2011~2013年度全国IT博客10强。从事IDC机房网络设备运维10年,持有Microsoft、Cisco、CIW多个IT认证;对Linux/UNIX、Windows Server操作系统、网络安全防护有深入研究。2012年受邀担任中国系统架构师大会(SACC)运维开发专场嘉宾主持人;先后在国内《计算机安全》、《程序员》、《计算机世界》、《网络运维与管理》、《黑客防线》、《办公自动化》等IT杂志发表专业论文六十余篇,撰写的技术博文广泛刊登在51CTO、IT168、ChinaUnix、赛迪网、天极网、比特网、ZDNet等国内知名IT网站。 资源目录: 第1章 Web系统集成与安全 1 1.1 构建大型网站 1 1.2 LAMP网站架构方案分析 3 1.2.1 操作系统的选择 3 1.2.2 Web服务器、缓存和PHP加速 4 1.2.3 数据库 4 1.3 LAMP 安装 5 1.3.1 LAMP安装准备 5 1.3.2 开始安装LAMP 8 1.3.3 安装PHP扩展Eaccelerator 0.9.6.1加速软件 11 1.3.4 安装Suhosin 13 1.4 利用Nginx实现Web负载均衡 13 1.3.1 安装、配置Nginx 14 1.3.2 Nginx实施负载均衡 20 1.3.3 设置Nginx 的反向代理配置 21 1.3.4 在Nginx 负载均衡服务器上设置缓存 22 1.4 Apache安全加固 22 1.4.1 使用配置指令进行访问控制 22 1.4.2 使用.htaccess进行访问控制 23 1.4.3 使用认证和授权保护Apache 25 1.4.4 使用Apache中的安全模块 27 1.4.5 使用SSL保证Web通信安全 28 1.4.6 其他安全措施 30 1.5 利用Sphinx提高 LAMP应用检索性能 34 Sphinx 安装过程 34 1.6 Apache与Tomcat集成 37 1.6.1 安装模块 37 1.6.2 Tomcat5优化 38 1.7 分析Apache网站状态 40 1.7.1 AWStats简介 40 1.7.2 安装AWStats 41 1.7.3 配置AWStats 41 1.7.4 应用AWStats分析日志 42 1.7.5 扩展功能加入IP插件 43 1.8 如何应对分布式拒绝服务(DDoS)的攻击 44 1.8.1 DDoS攻击原理 44 1.8.2 DDoS的检测方法 47 1.8.3 防范DDoS攻击 47 1.8.4 基于角色的防范 51 1.8.5 小结 53 1.9 案例实战:网站遭遇DDoS攻击 53 1.9.1 事件发生 53 1.9.2 事件分析 56 1.9.3 针对措施 57 1.9.4 小结 61 1.10 基于开源的WEB应用防火墙(FreeWAF) 62 1.10.1 安装FreeWAF注意事项 62 1.10.2 FreeWAF网络部署 64 1.10.3 防篡改设置 65 1.11 Web漏洞扫描工具 66 1.11.1 Nikto 67 1.11.2 其他WEB检测工具 69 1.11.3 利用开源软件扫描漏洞 69 1.11.4 Fast-Track 70 1.11.5 商业软件 72 1.11.5 小结 73 1.12 基于PHP 的SQL注入防范 73 1.12.1 服务器端的安全配置 73 1.12.2 PHP代码的安全配置 74 1.12.3 PHP代码的安全编写 74 1.12.4 小结 75 1.13 SQL注入漏洞检测方法 75 1.13.1 基本渗透测试 75 1.14 BIND View 实现网通电信互访 79 1.14.1 背景 79 1.14.2 选择BIND解决方案 79 1.14.3 BIND View方案 80 1.14.4 方案实施步聚 82 1.13.3 小结 85 第2章 目录服务配置案例 86 2.1 Linux下LDAP统一认证的实现 86 2.1.1 LDAP概述 86 2.1.2 实现思路 87 2.1.3 使用LDAP做身份认证 88 2.1.4 LDAP版本的选择 89 2.1.5 LDAP软件的选择 89 2.1.6 OpenLDAP的安装和配置 89 2.1.7 轻松搞定LDAP账号管理 92 2.1.8 配置Apache支持LDAP 95 2.1.9 利用Smbldap-tool工具管理Samba 97 2.1.10 利用Smbldap-tool初始化LDAP 100 2.1.11 使用phpLDAPadmin管理LDAP服务器 101 2.1.12 LDAP的安全管理 103 2.2 利用LDAP实现Windows和Linux平台统一认证 104 2.2.1 Linux认证 104 2.2.2 Windows认证 107 2.2.3 Linux+Windows统一认证 109 第3章 基于Postfix的大型邮件系统案例 112 3.1 基于Postfix的大型邮件系统 112 3.1.1 Postfix与其他MTA的对比 112 3.1.2 基本邮件服务器的搭建 113 3.1.3 Postfix常见问题指南 117 3.1.4 Postfix的反垃圾配置 118 3.1.5 Postfix的反病毒配置 120 3.1.6 自动监控Postfix邮件服务器 122 3.2 搭建分布式的邮件系统 123 3.2.1 搭建分布式邮件系统的架构设计 123 3.2.2 邮件接收服务器的配置与设计 124 3.2.3 用户邮件服务器的配置与设计 125 3.3 利用Stunnel加密保护邮件服务器 125 3.3.1 安装编译Stunnel 126 3.3.2 保障IMAP安全 126 3.3.3 保障POP3安全 127 3.3.4 保障SMTP安全 127 第4章 Oracle RAC 数据库集群在Linux系统下搭建案例 129 4.1 确定Oracle系统的规模 130 4.1.1 CPU规模的调整 130 4.1.2 内存规模的调整 131 4.1.3 I/O子系统的调整 131 4.1.4 Raid磁盘子系统 132 4.2 Oracle RAC设置流程 132 4.2.1 安装前的系统关键配置 133 4.2.2 配置主机解析文件hosts 136 4.2.3 配置系统内核参数 136 4.2.4 给Oracle用户配置Shell 140 4.2.5 配置系统安全设置 141 4.2.6 添加Oracle用户和组 141 4.2.7 设置Oracle用户环境变量 142 4.2.8 配置节点间的SSH信任 143 4.2.9 配置共享存储系统 144 4.2.10 建立和配置raw设备 149 4.2.11 安装Oracle Clusterware 151 4.2.12 安装Oracle数据库 156 4.2.13 配置Oracle Net 158 4.2.14 创建RAC数据库 160 4.2.15 Oracle CRS的管理与维护 167 4.2.16 测试Oracle RAC数据库的集群功能 171 4.2.17 ASM基本操作 176 第5章 企业集群案例分析 180 5.1 基于Heartbeat 的双机热备系统范例 180 5.1.1 准备工作 180 5.1.2 安装Heartbeat 181 5.1.3 配置/etc/ha.d/ha.cf 181 5.1.4 配置/etc/ha.d/haresources 182 5.1.5 配置haresources文件 184 5.1.6 配置/etc/ha.d/authkeys 184 5.1.7 在备份服务器上安装Heartbeat 185 5.1.8 设置系统时间 185 5.1.9 启动Heartbeat 185 5.1.10 在备份服务器上启动Heartbeat 187 5.1.11 检查主服务器上的日志文件 188 5.1.12 停止并启动Heartbeat 188 5.1.13 监视资源 189 5.1.14 小结 190 5.2 企业服务器搭建双机集群配置 190 5.2.1 Heartbeat、Mon、Rsync简介 190 5.2.2 安装环境 191 5.2.3 安装Heartbeat 192 5.2.4 测试HA系统 195 5.2.5 Mon服务监控 196 5.2.6 数据同步 198 5.2.7 集群测试技术 199 5.3 利用HA-OSCAR创建高可用Linux集群 202 5.3.1 支持的发行版和系统要求 202 5.3.2 HA-OSCAR的体系结构 203 5.3.3 HA-OSCAR的向导安装步骤详解 205 5.3.4 监控和配置Webmin 208 5.3.5 小结 213 5.4 WebLogic集群高可用案例 214 5.4.1 RHEL 5.4操作系统的安装 215 5.4.2 Java环境的配置安装 216 5.4.3 设置环境变量 216 5.4.4 WebLogic 11安装部署 217 5.4.5 启动WebLogic的AdminServer 服务 223 5.4.6 部署Web应用 226 5.4.7 启动Web应用 228 5.4.8 WebLogic优化 229 第6章 FTP服务器的安全配置案例 231 6.1 VSFTP服务的基本配置 231 6.1.1 vsftpd服务的安装 231 6.2 Linux下VSFTPD和ProFTPD用户集中管理 236 6.2.1 建立程序安装目录 236 6.2.2 安装MySQL 237 6.2.3 安装ProFTPD 238 6.2.4 MySQL与ProFTPD组合 240 6.1.5 VSFTPD与MySQL的组合 243 6.2.6 开机自动启动VSFTPD 245 6.3 在VSFTPD中实现对IP的安全管理案例 245 6.3.1 项目背景 246 6.3.2 准备工作 246 6.3.3 用于封禁和解封的Shell脚本 247 6.3.4 部署实施 248 6.3.5 小结 249 6.4 暴力破解FTP服务器的技术探讨与防范 249 6.4.1 网络本身的负载能力与高速网络 249 6.4.2 CPU运算、处理能力低下的解决方法 251 6.4.3 安全策略的突破 252 6.4.4 应对措施——第三方软件Fail2ban加固方法 256 第7章 部署IDS案例分析 260 7.1 在Linux下部署IDS案例 260 7.1.1 安装Snort 260 7.1.2 维护Snort 264 7.1.3 编写Snort规则 268 7.1.4 分析Snort规则 271 7.2 Linux下PortSentry的配置 276 7.2.1 入侵检测工具简介 276 7.2.2 PortSentry的安装配置 277 7.2.3 启动检测模式 279 7.2.4 测试 280 7.3 利用IP碎片绕过Snort 280 7.3.1 事件发生 280 7.3.2 故障处理 283 7.3.3 数据包解码 284 7.3.4 针对IP碎片攻击的预防措施 290 7.3.5 如何检测你的NIDS 291 7.3.6 服务器被入侵后应该做的5件事 291 7.3.7 小结 292 第8章 虚拟化技术应用案例 293 8.1 Linux下Wine虚拟机 293 8.1.1 Wine的体系结构 293 8.1.2 Wine运行的技术背景 294 8.1.3 Wine启动分析 295 8.1.4 Win32启动分析 296 8.1.5 Winelib启动分析 296 8.1.6 Win16与DOS程序启动分析 297 8.1.7 Wine安装 297 8.2 基于SUSE Linux Server上的Xen虚拟化应用 298 8.2.1 Xen和KVM虚拟化的对比 298 8.2.2 Xen的特点 299 8.2.3 Xen架构和Xen虚拟化技术简介 299 8.2.4 安装使用SUSE Xen软件 300 8.2.5 引导Xen系统 303 8.2.6 安装Xen客户机——Domain-U 307 8.2.7 故障查询 310 8.3 VMware HA在企业中的应用 312 8.3.1 项目基本情况 312 8.3.2 VMware资源动态分配的实现 312 8.3.3 VMware高可用性的实现 312 8.3.4 高可用性集群的实现 313 第9章 Linux性能优化 315 9.1 Linux 性能评估 315 监测工具 315 9.2 网络性能优化 324 9.2.1 网络性能 324 9.2.2 TCP连接优化 326 9.3 Oracle应用优化案例 327 9.3.1 Oracle数据库性能优化 327 9.3.2 Oracle数据库系统性能调优的方法 327 9.3.3 性能调优工具 329 9.3.4 系统调整 329 9.4 动态PHP网站优化案例 330 9.4.1 初期性能问题及处理 330 9.4.2 逐步解决问题 330 9.4.3 网站结构优化 330 第10章 主机监控应用案例 331 10.1 基于 Linux 系统的Nagios网络管理 331 10.1.1 Nagios 系统及特点 332 10.1.2 在Linux上运行 Nagios 系统 333 10.1.3 运用 Nagios 实现对网络上服务器的监控 334 10.1.4 对Nagios系统的评价和建议 336 10.2 运用NRPE扩展Nagios功能 337 10.2.1 监控原理 337 10.2.2 配置Nagios客户端 337 10.2.3 配置Nagios服务器端 339 10.3 利用飞信实现Nagios短信报警功能 341 10.3.1 飞信简介 341 10.3.2 安装与配置飞信 341 10.3.3 整合飞信到Nagios中 343 10.4 运用Ntop监控网络流量 344 10.4.1 几种流量采集技术的比较 345 10.4.2 Ntop系统的部署及性能 346 10.4.3 Ntop安装配置 347 10.4.4 应用Ntop 349 10.4.5 优化Ntop 361 10.5 基于Linux的集群监控系统 365 10.5.1 安装准备 366 10.5.2 集群节点管理器部署Ganglia 367 10.6 使用cheops-ng加强管理Linux网络 373 10.6.1 cheops-ng的工作原理 373 10.6.2 cheops-ng的下载和安装 373 10.6.3 cheops-ng的配置 374 10.6.4 cheops-ng的运行 378 10.7 打造开源安全信息管理平台 380 10.7.1 OSSIM背景介绍 380 10.7.2 安装OSSIM 384 10.7.3安装远程管理工具 385 10.7.5 配置解析 389 10.7.6 分布式部署(VPN连接 )举例: 389 10.7.7 OSSIM的系统配置 391 10.7.8 OSSIM的后台管理及配置 403 10.8 Ossim插件配置管理 408 10.8.1 原始日志格式对比 408 10.8.2 插件配置工作步骤 409 10.8.3 插件导入方法 410 14.6.5 收集Cisco防火墙日志 414 10.8.4 收集CheckPoint设备日志 417 10.8.5 将Squid的日志收集到Ossim系统 418 10.8.6 对日志中含有中文字符的处理方式 419 10.8.7 Linux系统下网络服务日志方法总结 420 10.9 Ossim压力测试 421 10.9.1 软硬件测试环境 421 10.9.2 测试项目: 421 10.9.3 测试工具 422 10.9.4 BT中的网络压力测试工具 427 10.10 运用TC工具控制网络流量 429 10.10.1 相关概念 429 10.10.2 使用TC 430 10.10.3 创建HTB队列 431 10.9.4 为根队列创建相应的类别 431 10.10.5 为各个类别设置过滤器 431 10.10.6 应用实例 432 第11章 iptables 防火墙应用案例 434 11.1 调整netfilter内核模块以限制P2P连接 434 11.1.1 netfilter的结构框架 434 11.1.2 连线跟踪 436 11.2 基于Linux的iptables/netfilter限制BT下载案例分析 442 11.2.1 禁止基于标准协议的BT下载 442 11.2.2 禁止下载者和Tracker服务器之间的交互 443 11.2.3 禁止下载者之间接连 443 11.2.4 禁止基于非标准协议的BT下载 443 11.2.5 禁止BT客户端加入DHT网络 445 11.2.6 小结 448 11.3 基于iptables的Web认证系统的实现 448 11.3.1 引言 448 11.3.2 系统应用模块 448 11.3.3 系统功能及实现方法 449 11.3.4 系统性能与优化 451 11.4 运用iptables防御Syn Flood攻击 452 11.4.1 传统的SYN Flood攻击防御方案 452 11.4.2 基于iptables的动态包过滤防火墙 453 11.4.3 iptables和入侵检测软件的集成 454 11.4.4 测试结果和分析 454 11.4.5 性能优化 455 11.4 iptables过滤实例 456 11.4.1 过滤URL 456 11.4.2 过滤关键字 457 11.4.3 iptables过滤特定网段 457 11.4.4 禁上某些网站 457 第12章 数据备份与恢复 459 12.1 运用SSH、Rsync实现数据自动备份 459 12.1.1 SSH无密码安全登录 459 12.1.2 crontab定时数据同步 460 12.1.3 Rsync数据同步 461 12.2 用日志进行 MySQL数据库实时恢复 461 12.2.1 设置二进制日志 462 12.2.2 简单的数据恢复 462 12.2.3 手动恢复数据 463 12.2.4 针对某一时间点恢复数据 463 12.2.5 使用position参数恢复 464 12.3 NetBackup安装、配置及管理 465 12.3.1 NetBackup的基本概念 465 12.3.2 安装NetBackup 466 12.3.3 NetBackup的配置 467 12.3.4 创建一个基本备份任务 469 12.3.5 管理NetBackup 472 12.3.6 优化措施 474 12.4 运用NetBackup进行Oracle备份和恢复 476 12.4.1 备份 476 12.4.2 恢复过程 483 第13章 内核安全加固案例 493 13.1 用VXE保护Linux系统安全 493 13.1.1 VXE的工作原理 493 13.1.2 与chroot服务的比较 494 13.1.3 VXE安装使用 496 13.1.4 小结 497 13.2 用DSM模块来阻止缓冲区溢出 498 13.2.1 初步认识缓冲区溢出 498 13.2.2 用Gcc编译 499 13.2.3 示例 500 13.2.4 阻止缓冲区溢出攻击解决方案 503 13.2.5 DSM与缓冲区溢出攻击 505 13.2.6 利用DSM阻止缓冲区溢出攻击 505 13.2.7 总结 507 第14章 远程连接 508 14.1 应用Linux远程桌面 508 14.1.1 X-window初步 508 14.1.2 理解X server 509 14.1.3 Linux下配置XDM 511 14.1.4 Windows下X-Win32连接设置 513 14.1.5 小结 514 14.2 远程控制VNC攻击案例研究 515 14.2.1 功能强大的VNC工具:vncpwdump 515 14.2.2 使用vncpwdump进行渗透测试 516 14.2.3 针对VNC密码验证绕过漏洞的扫描 519 14.2.4 小结 521 14.3 加固SSH 服务器九条 521 14.4 SSH/RDP远程访问审计方法 528 14.4.1 远程桌面审计实现 529 14.4.2 SSh审计实现 530 14.4.3 加密协议审计的实施 530 附录A Linux系统软件包的依赖性问题 532 A.1 什么是依赖性 532 A.2 动态可执行文件和共享对象 532 A.3 RPM软件包和共享库依赖性 534 A.4 手动解决依赖性问题 535 A.5 自动解决依赖性故障 538 A.5.1 使用Yum来安装RPM软件包 538 A.5.2 使用Yum安装新的Glibc软件包 538 A.6 关于升级Gilbc的建议 539 A.7 总 结 541 附件B 开源监控软件比较 542 资源截图:
陌佑
百度云
百度云
⬅️ 1...20142015201620172018...2920

添加微信,反馈问题

微信及时反馈问题,方便沟通,请备注 ❤️

搜索榜单

1

骚老板资源网整站源码 打包数据高达2GB

1623

2

绿色风格网络公司源码 php网络建站公司源码

1060

3

(自适应手机版)响应式餐饮美食企业网站源码 餐饮品牌连锁机构织梦模板

1026

4

雷速问卷调查系统(疫情上报系统) v7.08

899

5

Zblog仿918回忆模特写真网带整站数据图库系统源码

864

6

一款笑话类网站源码 简约清爽的织梦笑话网站模板

798

最新资源

1

网狐电玩系列/乐游电玩城/免微信免短信登陆

2

湖南地方玩法好玩互娱纯源码

3

最新更新网狐旗舰大联盟+UI工程

4

傲玩系列客户端通用加解密工具

5

优米H5电玩城组件/多语言/带84个游戏/后台带控+搭建视频教程

6

网狐系列猫娱乐新UI蜡笔小新金币组件

友情链接:
免费APISSL在线检测在线pingAPI版本项目seo教程免费下载狗凯源码网 查看更多
网站地图 法律声明
本站所存储的源码数据均为转载,不提供在线播放和下载服务。本站为非盈利性,不收取费用,所有内容不用于商业行为,仅供学习交流使用。如有侵权,请联系15001904@qq.com
  • 联系微信,反馈问题

  • 点此立刻反馈