1. 认识系统服务(daemon)
简单的说,系统为了某些功能必须要提供一些服务 (不论是系统本身还是网络方面),这个服务就称为 service 。 但是 service 的提供总是需要程序的运作吧!否则如何执行呢?所以达成这个 service 的程序我们就称呼他为 daemon 啰! 举例来说,达成循环型例行性工作排程服务 (service) 的程序为 crond 这个 daemon 啦!
1.1. daemon与service
早期system V 的init管理操作中的daemon的主要分类(Optional)
systemd使用的unit分类
1.2. 通过systemctl管理服务
通过systemctl 管理单一服务(service unit)的启动/开机启动与查看状态
通过systemctl 查看系统上的所有的服务
通过systemctl 管理不同的操作环境(target unit)
通过systemctl 分析各服务之间的依赖性
与systemd 的daemon 运行过程相关的目录简介
关闭网络服务
1.3. systemctl针对service 类型的配置文件
systemctl 配置文件相关目录简介
systemctl 配置文件的设置项目简介
两个 vsftpd 运行的实例
多重的重复设置方式: 以getty 为例
1.4. systemctl 针对timer 的配置文件
2. 认识与分析日志文件
2.1. 什么是log file
CentOS 7 日志文件简易说明
日志文件内容的一般格式
2.2. rsyslog.service:记录log file 的服务
rsyslog.service 的配置文件:/etc/rsyslog.conf
log file 的安全性设置
log file 的服务器的设置
2.3. log file 的轮循(logrotate)
logtotate 的配置文件
实际测试logrotate 的操作
自定义log file 的轮循功能
2.4. systemd-journald.service 简介
使用journalctl 查看登录信息
loggerr 命令的应用
保存journal 的方式
2.5. 分析log file
- CentOS 默认提供的logwatch
3. 基础系统设置与备份策略
3.1. 系统基本设置
网络设置(手动设置与DHCP自动获取)
日期与时间设置
语系设置
防火墙简易设置
3.2. 服务器硬件数据的收集
使用 demidecode 查看硬件设备
硬件资源的收集与分析
了解磁盘的健康状态
3.3. 备份要点
备份数据的考虑
哪些linux数据具有备份的意义
备份用存储媒介的选择
3.4. 备份的种类、频率与工具的选择
-
完整备份之累计备份(Incremental backup)
-
完整备份之差异备份(Differrential backup)
关键数据备份
4. 软件安装:源代码与Tarball
4.1. 开放源码的软件安装与升级简介
开放源码、编译器与可执行文件
函数库
make 与 configure
Tarball
所谓的 Tarball 文件,其实就是将软件的所有原始码文件先以 tar 打包,然后再以压缩技术来压缩,通常最常见的就是以 gzip 来压缩了。因为利用了 tar 与 gzip 的功能,所以 tarball 文件一般的扩展名就会写成 *.tar.gz 或者是简写为 *.tgz !不过,近来由于 bzip2 与 xz 的压缩率较佳,所以 Tarball 渐渐的以 bzip2 及 xz 的压缩技术来取代 gzip 啰!因此档名也会变成 *.tar.bz2, *.tar.xz 之类的哩。所以说, Tarball 是一个软件包
如何安装与升级软件
4.2. 使用传统程序语言进行编译的简单范例
- 单一程序:打印 Hello world
-主、子程序链接:子程序的编译
调用外部函数库:加入链接的函数库
gcc的简易用法(编译、参数与连接)
4.3. make 宏编译
- makefile 的基本语法与变量
4.4. Tarball 的管理与建议
使用源代码管理软件所需要的基础软件
Tarball安装的基本步骤
一般Tarball 软件安装的建议事项(删除?升级?)
一个简单的范例、利用ntp(网络时间服务器)来师范
利用patch更新源代码
4.5. 函数库管理
- 动态与静态函数库
-ldconfig 与 /etc/ld.so.conf
- 程序的动态函数库解析: ldd
4.6. 校验软件正确性
md5sum
sha1sum
sha256sum
5. 软件安装RPM、SRPM与YUM
5.1. 软件管理器简介
Linux界的两大主流: RPM与DPKG
RPM
RPM 全名是『 RedHat Package Manager 』顾名思义,当初这个软件管理的机制是由 Red Hat 这家公司发展出来的。 RPM 是以一种数据库记录的方式来将你所需要的软件安装到你的 Linux 系统的一套管理机制。 他最大的特点就是将你要安装的软件先编译过, 并且打包成为 RPM 机制的包装文件,透过包装好的软件里头默认的数据库记录, 记录这个软件要安装的时候必须具备的相依属性软件,当安装在你的 Linux 主机时, RPM 会先依照软件里头的数据查询 Linux 主机的相依属性软件是否满足, 若满足则予以安装,若不满足则不予安装。那么安装的时候就将该软件的信息整个写入 RPM 的数据库中,以便未来的查询、验证与反安装
SRPM
SRPM 是什么呢?顾名思义,他是 Source RPM 的意思,也就是这个 RPM 文件里面含有原始码哩!特别注意的是,这个 SRPM 所提供的软件内容『并没有经过编译』, 它提供的是原始码喔! 通常 SRPM 的扩展名是以 ***.src.rpm 这种格式来命名的。
i386,i586,i686,noarrch,x86,x86_64
-RPM 的优点
-
RPM 属性以来的解决方式: YUM在线升级
5.2. RPM 软件管理程序:rpm
RPM 默认的安装路径
RPM安装
RPM 升级与更新(upgrade/freshen)
RPM 查询(query)
RPM 验证与数字签名(Verify/signature)
RPM 反安装与重建数据库(erase/rebuilddb)
5.3. YUM在线升级功能
这个 yum 是透过分析 RPM 的标头资料后, 根据各软件的相关性制作出属性相依时的解决方案,然后可以自动处理软件的相依属性问题,以解决软件安装或移除与升级的问题。
利用 YUM 进行查询、安装、升级与删除功能
YUM 的配置文件
YUM 的软件群组功能
Epel/elrepo 外挂软件及自定义配置文件
全新系统自动升级
管理的巨额啧啧: RPM还是Tarball
基础服务管理: 以Apache 为例
5.4. SRPM 的使用:rpmbuild(Optional)
利用默认值安装SPRM文件(--rebuid/--recompile)
SPRM 使用的路径与需要的软件
配置文件的主要内容(*.spec)
SPRM 的编译命令(--ba/--bb)