Linux从入门到精通
2019-11-05 10:03:31 0 举报
AI智能生成
Linux从入门到精通
作者其他创作
大纲/内容
第5篇 程序开发篇
20 Linux编程
20.1 编辑器的选择
20.1.1 Vim编辑器
20.1.2 Emacs编辑器
20.1.3 图形化的编程工具
20.2 C和C++的编译器:gcc
20.2.1 编译第一个C程序
20.2.2 同编译有关的选项
20.2.3 优化选项
20.2.4 编译C++程序:g++
20.3 调试:gdb
20.3.1 启动gdb
20.3.2 获得帮助
20.3.3 查看源代码
20.3.4 设置断点
20.3.5 运行程序和单步执行
20.3.6 监视变量
20.3.7 临时修改变量
20.3.8 查看堆栈情况
20.3.9 退出gdb
20.3.10 命令汇总
20.4 与他人协作:版本控制系统
20.4.1 什么是版本控制
20.4.2 安装Subversion
20.4.3 建立项目仓库
20.4.4 创建项目并导入源代码
20.4.5 开始项目开发
20.4.6 修改代码和提交改动
20.4.7 解决冲突
20.4.8 撤销改动
20.4.9 命令汇总
20.5 小结
21 Shell编程
21.1 正则表达式
21.1.1 什么是正则表达式
21.1.2 不同风格的正则表达式
21.1.3 快速上手:在字典中查找单词
21.1.4 字符集和单词
21.1.5 字符类
21.1.6 位置匹配
21.1.7 字符转义
21.1.8 重复
21.1.9 子表达式
21.1.10 反义
21.1.11 分支
21.1.12 逆向引用
21.2 Shell脚本编程
21.2.1 我需要什么工具
21.2.2 第一个程序:Hello World
21.2.3 变量和运算符
21.2.4 表达式求值
21.2.5 脚本执行命令和控制语句
21.2.6 条件测试
21.2.7 循环结构
21.2.8 读取用户输入
21.2.9 脚本执行命令
21.2.10 创建命令表
21.2.11 其他有用的Shell编程工具
21.2.12 定制工具:安全的delete命令
21.3 Shell定制
21.3.1 修改环境变量
21.3.2 设置别名
21.3.3 个性化设置:修改.bashrc文件
21.4 小结
第6篇 服务器配置篇
22 服务器基础知识
22.1 系统引导
22.1.1 Linux启动的基本步骤
22.1.2 init和运行级
22.1.3 服务器启动脚本
22.1.4 Ubuntu和Debian的init配置
22.2 管理守护进程
22.2.1 什么是守护进程
22.2.2 服务器守护进程的运行方式
22.2.3 配置xinetd
22.2.4 举例:通过xinetd启动SSH服务
22.2.5 配置inetd
22.3 小结
23 HTTP服务器——Apache
23.1 快速上手:搭建一个HTTP服务器
23.2 Apache基础
23.2.1 HTTP工作原理
23.2.2 获得并安装Apache服务器
23.2.3 服务器的启动和关闭
23.3 设置Apache服务器
23.3.1 配置文件
23.3.2 使用日志文件
23.3.3 使用cgi
23.4 使用PHP+MySQL
23.4.1 PHP和MySQL简介
23.4.2 安装MySQL
23.4.3 安装PHP
23.4.4 配置Apache
23.5 小结
24 FTP服务器——vsftpd
24.1 快速上手:搭建一个FTP服务器
24.1.1 安装并登录FTP服务器
24.1.2 匿名用户的目录
24.2 vsftpd基础
24.2.1 FTP的工作原理
24.2.2 从源代码编译安装vsftpd服务器
24.2.3 服务器的启动和关闭
24.3 vsftpd用户设置
24.3.1 设置匿名用户登录
24.3.2 设置本地用户登录
24.3.3 限制用户在本地目录中
24.4 更好的选择:使用虚拟用户
24.4.1 为用户jcsmith和culva开放FTP:一步步地指导
24.4.2 创建虚拟用户的数据库文件
24.4.3 配置PAM验证
24.4.4 创建本地用户映射
24.4.5 设置用户目录和权限
24.4.6 重新启动vsftpd服务器
24.4.7 总结虚拟用户原理:PAM验证
24.5 杂项
24.6 关于FTP的安全
24.7 小结
25 Samba服务器
25.1 快速上手:搭建一个Samba服务器
25.2 Samba基础
25.2.1 从源代码安装Samba服务器
25.2.2 服务器的启动和关闭
25.3 Samba配置
25.3.1 关于配置文件
25.3.2 设置全局域
25.3.3 设置匿名共享资源
25.3.4 开启Samba用户
25.3.5 配合用户权限
25.3.6 孤立用户的共享目录
25.3.7 设置用户访问自己的主目录
25.4 SWAT管理工具
25.5 安全性方面的几点建议
25.6 小结
26 网络硬盘——NFS
26.1 快速上手:搭建一个NFS服务器
26.1.1 安装NFS服务器
26.1.2 简易配置
26.1.3 测试NFS服务器
26.2 NFS基础
26.2.1 关于NFS协议的版本
26.2.2 RPC:NFS的传输协议
26.2.3 无状态的NFS
26.3 NFS配置
26.3.1 理解配置文件
26.3.2 启动和停止服务
26.4 安全性方面的几点建议
26.4.1 充满风险的NFS
26.4.2 使用防火墙
26.4.3 压制root和匿名映射
26.4.4 使用特权端口
26.5 监视NFS的状态:nfsstat
26.6 小结
第7篇 系统安全篇
27 任务计划:cron
27.1 快速上手:定期备份重要文件
27.2 cron的运行原理
27.3 crontab管理
27.3.1 系统的全局cron配置文件
27.3.2 普通用户的配置文件
27.3.3 管理用户的cron任务计划
27.4 理解配置文件
27.5 简单的定时:at命令
27.6 小结
28 防火墙和网络安全
28.1 Linux的防火墙——IP Tables
28.1.1 名字的来历
28.1.2 初始化防火墙设置
28.1.3 添加链规则
28.1.4 删除链规则
28.1.5 防火墙保险吗
28.2 网络安全工具
28.2.1 扫描网络端口:nmap
28.2.2 找出不安全的口令:John the Ripper
28.3 主机访问控制:hosts_access
28.4 小结
29 病毒和木马
29.1 随时面临的威胁
29.1.1 计算机病毒
29.1.2 特洛伊木马
29.1.3 掩盖入侵痕迹:rootkits
29.2 Linux下的防毒软件:ClamAV
29.2.1 更新病毒库
29.2.2 基本命令和选项
29.2.3 图形化工具
29.3 反思:Linux安全吗
29.4 小结
附录 Linux常用指令
1.文件操作相关指令
2.目录操作相关指令
3.Shell操作相关指令
4.系统管理相关操作指令
5.打印相关指令
6.实用工具相关指令
7.硬件相关指令
8.文件系统管理相关操作指令
9.软件包管理相关操作指令
10.编程开发相关操作指令
11.网络管理相关指令
第1篇 基础篇
1 Linux概述
1.1 Linux的起源和发展
1.1.1 Linux的起源
1.1.2 追溯到UNIX
1.1.3 影响世界的开源潮流
1.1.4 GNU公共许可证:GPL
1.2 为什么选择Linux
1.2.1 作为服务器
1.2.2 作为桌面
1.3 Linux的发行版本
1.3.1 不同的发行版本
1.3.2 哪种发行版本最好
1.3.3 本书选择的发行版本
1.4 Internet上的Linux资源
1.5 小结
2 Linux安装
2.1 安装前的准备工作
2.1.1 我能从哪里获得Linux
2.1.2 硬件要求
2.1.3 与Windows“同处一室”
2.1.4 虚拟机的使用
2.1.5 免费的虚拟机软件:VMware Server
2.2 安装Linux至硬盘
2.2.1 第一步:从光驱启动
2.2.2 关于硬盘分区
2.2.3 配置Ubuntu基本信息
2.2.4 设置用户和口令
2.2.5 第一次启动
2.3 获取帮助信息和搜索应用程序
2.4 进阶:修复受损的Grub
2.4.1 Windows惹的祸
2.4.2 使用救援光盘
2.4.3 重新安装Grub
2.5 小结
3 Linux基本配置
3.1 关于超级用户root
3.1.1 root可以做什么
3.1.2 避免灾难
3.1.3 Debian和Ubuntu的root用户
3.2 依赖于发行版本的系统管理工具
3.3 中文支持
3.4 关于硬件驱动程序
3.5 获得更新
3.6 进阶:配置Grub
3.6.1 Grub的配置文件
3.6.2 使用Grub命令行
3.7 小结
4 桌面环境
4.1 快速熟悉你的工作环境
4.1.1 运行应用程序
4.1.2 浏览文件系统
4.1.3 创建一个文本文件
4.2 个性化设置
4.2.1 桌面背景和字体
4.2.2 显示器分辨率
4.2.3 代理服务器
4.2.4 鼠标和键盘
4.2.5 键盘快捷键
4.3 进阶:究竟什么是“桌面”
4.3.1 可以卸载的图形环境
4.3.2 X窗口系统的基本组成
4.3.3 X系统的启动过程
4.3.4 启动X应用程序
4.3.5 桌面环境:KDE和Gnome谁更好
4.4 小结
第2篇 系统管理篇
5 Shell基本命令
5.1 Shell简介
5.2 印刷约定
5.3 快速上手:浏览你的硬盘
5.4 提高效率:使用命令行补全和通配符
5.5 查看目录和文件
5.5.1 显示当前目录:pwd
5.5.2 改变目录:cd
5.5.3 列出目录内容:ls
5.5.4 列出目录内容:dir和vdir
5.5.5 查看文本文件:cat和more
5.5.6 阅读文件的开头和结尾:head和tail
5.5.7 更好的文本阅读工具:less
5.5.8 查找文件内容:grep
5.6 我的东西在哪——find命令
5.7 更快速地定位文件——locate命令
5.8 从终端运行程序
5.9 查找特定程序:whereis
5.10 用户及版本信息查看
5.11 寻求帮助——man命令
5.12 获取命令简介:whatis和apropos
5.13 小结
6 文件目录管理
6.1 Linux文件系统的架构
6.2 快速上手:和你的团队共享文件
6.3 建立文件和目录
6.3.1 建立目录:mkdir
6.3.2 建立一个空文件:touch
6.4 移动、复制和删除
6.4.1 移动和重命名:mv
6.4.2 复制文件和目录:cp
6.4.3 删除目录和文件:rmdir和rm
6.5 文件和目录的权限
6.5.1 权限设置针对的用户
6.5.2 需要设置哪些权限
6.5.3 查看文件和目录的属性
6.5.4 改变文件所有权:chown和chgrp
6.5.5 改变文件权限:chmod
6.5.6 文件权限的八进制表示
6.6 文件类型
6.6.1 查看文件类型
6.6.2 建立链接:ln
6.7 输入输出重定向和管道
6.7.1 输出重定向
6.7.2 输入重定向
6.7.3 管道:—
6.8 小结
7 软件包管理
7.1 快速上手:安装和卸载Chrome for Linux
7.1.1 安装Chrome for Linux
7.1.2 运行Chrome for Linux
7.1.3 卸载Chrome for Linux
7.2 软件包管理系统简述
7.3 管理.deb软件包:dpkg
7.3.1 安装软件包
7.3.2 查看已安装的软件包
7.3.3 卸载软件包
7.4 管理RPM软件包:rpm
7.4.1 安装软件包
7.4.2 升级软件包
7.4.3 查看已安装的软件包
7.4.4 卸载软件包
7.5 高级软件包工具:APT
7.5.1 APT简介
7.5.2 下载和安装软件包
7.5.3 查询软件包信息
7.5.4 配置apt-get
7.5.5 使用图形化的APT
7.6 进阶:从源代码编译软件——以MPlayer为例
7.6.1 为什么要从源代码编译
7.6.2 下载和解压软件包
7.6.3 正确配置软件
7.6.4 编译源代码
7.6.5 安装软件到硬盘
7.6.6 出错了怎么办
7.7 小结
8 磁盘管理
8.1 关于硬盘
8.2 Linux文件系统
8.2.1 ext3fs和ext4fs文件系统
8.2.2 ReiserFS文件系统
8.2.3 有关swap
8.3 挂载文件系统
8.3.1 快速上手:使用光盘
8.3.2 Linux下设备的表示方法
8.3.3 挂载文件系统:mount命令
8.3.4 在启动的时候挂载文件系统:/etc/fstab文件
8.3.5 为什么无法弹出光盘:卸载文件系统
8.4 查看磁盘使用情况:df
8.5 检查和修复文件系统:fsck
8.6 在磁盘上建立文件系统:mkfs
8.7 使用USB设备
8.8 压缩工具
8.8.1 压缩文件:gzip
8.8.2 更高的压缩率:bzip2
8.8.3 支持rar格式
8.9 存档工具
8.9.1 文件打包:tar
8.9.2 转移文件:dd
8.10 进阶1:安装硬盘和分区——fdisk
8.10.1 使用fdisk建立分区表
8.10.2 使用mkfs建立ext3fs文件系统
8.10.3 使用fsck检查文件系统
8.10.4 测试分区
8.10.5 创建并激活交换分区
8.10.6 配置fstab文件
8.10.7 重新启动系统
8.11 进阶2:高级硬盘管理——RAID和LVM
8.11.1 独立磁盘冗余阵列:RAID
8.11.2 逻辑卷管理器:LVM
8.12 进阶3:备份你的工作和系统
8.12.1 为什么要做备份
8.12.2 选择备份机制
8.12.3 选择备份介质
8.12.4 备份文件系统:dump
8.12.5 从灾难中恢复:restore
8.12.6 让备份定时自动完成:cron
8.13 小结
9 用户与用户组管理
9.1 用户与用户组基础
9.2 快速上手:为朋友John添加账户
9.3 添加用户
9.3.1 使用命令行工具:useradd和groupadd
9.3.2 使用图形化的管理工具
9.3.3 记录用户操作:history
9.3.4 直接编辑passwd和shadow文件
9.4 删除用户:userdel
9.5 管理用户账号:usermod
9.6 查看用户信息:id
9.7 用户间切换:su
9.8 受限的特权:sudo
9.9 进阶1:/etc/passwd文件
9.9.1 /etc/passwd文件概览
9.9.2 加密的口令
9.9.3 UID号
9.9.4 GID号
9.10 进阶2:/etc/shadow文件
9.11 进阶3:/etc/group文件
9.12 小结
10 进程管理
10.1 快速上手:结束一个失控的程序
10.2 什么是进程
10.3 进程的属性
10.3.1 PID:进程的ID号
10.3.2 PPID:父进程的PID
10.3.3 UID和EUID:真实和有效的用户ID
10.3.4 GID和EGID:真实和有效的组ID
10.3.5 谦让度和优先级
10.4 监视进程:ps命令
10.5 即时跟踪进程信息:top命令
10.6 查看占用文件的进程:lsof
10.7 向进程发送信号:kill
10.8 调整进程的谦让度:nice和renice
10.9 /PROC文件系统
10.10 小结
第3篇 网络篇
11 网络配置
11.1 几种常见的连网方式
11.1.1 通过办公室局域网
11.1.2 无线连接
11.1.3 有线宽带连接
11.1.4 “古老”的拨号上网
11.2 连接PC至局域网和Internet
11.2.1 连接办公室局域网
11.2.2 使用ADSL
11.2.3 无线网络
11.2.4 拨号上网
11.3 进阶1:在命令行下配置网络
11.3.1 使用ifconfig配置网络接口
11.3.2 使用route配置静态路由
11.3.3 主机名和IP地址间的映射
11.4 进阶2:使用wvdial建立PPP连接
11.4.1 PPP协议简介
11.4.2 wvdial简介
11.4.3 配置wvdial
11.4.4 使用wvdial拨号上网
11.5 小结
12 浏览网页
12.1 使用Mozilla Firefox
12.1.1 启动Firefox
12.1.2 设置Firefox
12.1.3 清除最新的历史记录
12.1.4 订阅新闻和博客
12.1.5 安装扩展组件
12.2 使用Opera
12.3 基于文本的浏览器:lynx
12.3.1 为什么还要使用字符界面
12.3.2 启动和浏览
12.3.3 下载和保存文件
12.4 其他浏览器
12.5 小结
13 收发邮件
13.1 准备工作
13.1.1 获得邮箱
13.1.2 邮件协议:浏览器还是邮件客户端
13.2 Gnome下的邮件客户端:Evolution
13.3 KDE下的邮件客户端:Kmail
13.4 小结
14 传输文件
14.1 Linux间的网络硬盘:NFS
14.1.1 安装NFS文件系统
14.1.2 卸载NFS文件系统
14.1.3 选择合适的安装选项
14.1.4 启动时自动安装远程文件系统
14.2 与Windows协作:Samba
14.2.1 什么是Samba
14.2.2 快速上手:访问Windows的共享文件夹
14.2.3 查看当前可用的Samba资源:smbtree和nmblookup
14.2.4 Linux下的Samba客户端:smbclient
14.2.5 挂载共享目录:mount.cifs
14.3 使用FTP
14.3.1 使用Web浏览器
14.3.2 使用FTP图形客户端
14.3.3 使用ftp命令
14.4 基于SSH的文件传输:sftp和scp
14.4.1 安全的FTP:sftp
14.4.2 利用SSH通道复制文件:scp
14.5 小结
15 远程登录
15.1 快速上手:关于搭建实验环境
15.1.1 物理网络还是虚拟机
15.1.2 安装OpenSSH
15.1.3 安装vnc4server
15.1.4 SUSE的防火墙设置
15.2 登录另一台Linux服务器
15.2.1 安全的Shell:SSH
15.2.2 登录X窗口系统:图形化的VNC
15.2.3 我想从Windows登录这台Linux
15.3 登录Windows服务器
15.4 为什么不使用telnet
15.5 进阶:使用SSH密钥
15.5.1 为什么要使用密钥
15.5.2 生成密钥对
15.5.3 复制公有密钥至远程主机
15.5.4 测试配置
15.5.5 密钥的安全性
15.6 小结
第4篇 娱乐与办公篇
16 多媒体
16.1 关于声卡
16.2 播放器软件概述
16.3 播放音频
16.3.1 播放CD
16.3.2 播放数字音乐文件
16.4 播放视频:使用MPlayer
16.5 Linux中的游戏
16.5.1 发行版自带的游戏
16.5.2 Internet上的游戏资源
16.6 小结
17 图像
17.1 查看图片
17.1.1 使用Konqueror和Nautilus查看图片
17.1.2 使用GIMP查看图片
17.1.3 使用Shotwell管理相册
17.2 使用GIMP处理图像
17.2.1 GIMP基础
17.2.2 漫步工具栏
17.2.3 实例:移花接木
17.2.4 使用插件
17.3 LibreOffice的绘图工具
17.4 小结
18 打印机配置
18.1 为什么要有这一章
18.1.1 打印机还是计算机
18.1.2 打印机的语言:PDL
18.1.3 驱动程序和PDL的关系
18.1.4 Linux如何打印:CUPS
18.2 添加打印机
18.2.1 打印机的选择
18.2.2 连接打印机
18.2.3 让CUPS认识打印机
18.2.4 配置打印机选项
18.2.5 测试当前的打印机
18.3 管理CUPS服务器
18.3.1 设置网络打印服务器
18.3.2 设置打印机的类
18.3.3 操纵打印队列
18.3.4 删除打印机和类
18.4 回顾:CUPS的体系结构
18.5 KDE和Gnome的打印工具
18.6 小结
19 办公软件的使用
19.1 最常用的办公套件:LibreOffice.org
19.1.1 文字处理软件
19.1.2 电子表格
19.1.3 演示文稿
19.1.4 文档兼容
19.2 查看PDF文件
19.2.1 使用Xpdf
19.2.2 使用Adobe Reader
19.3 光盘刻录
19.3.1 制作音乐CD
19.3.2 刻录镜像文件
19.4 小结
0 条评论
下一页