
Linux 管理员手册
《Linux 管理员手册:既简单又深刻》这个专栏里收录的是我在 2019 年初时撰写的 Linux 管理员使用手册的中文版。
Snow Hide(雪诺海德)
多年互联网系统架构经验:参与过新西兰某电信供应商及某大型跨境电商系统的开发;主导过新西兰最大电子产品供应商及某跨国移动设备销售商系统的架构设计、技术选型、编码实现、生产部署。
已获国际认证:Linux Profesisonal(LPIC-3)* 2、Linux Engineer(LPIC-2)、Linux Administrator(LPIC-1)、Java(OCJP/OCJA)、MySQL(OCMDP)、PHP7(ZCE)、AWS
展开
-
82. 系统日志管理 - rsyslogd 收集本地及远程服务器日志
开篇词rsyslogd 是一个提供了消息日志支持的系统工具。支持网络及领域套接字使该工具既支持本地又支持远程日志记录。 配置文件/etc/rsyslog.conf 选择器工具用于生成日志消息的工具。这里是 rsyslog.conf 的一些工具:选项描述auth记录安全或授权日志消息。security与 auth 几乎一样。...原创 2020-03-21 09:48:24 · 228 阅读 · 0 评论 -
81. 包管理 - yum(Yellowdog 更新器)交互式操作 rpm 包
开篇词yum 是一个基于 rpm 包的交互式包管理器。 配置文件/etc/yum.conf/etc/yum/repos.d/*.repo仓库选项选项描述repositoryid唯一的仓库名称。name仓库名称。baseurl仓库路径目录。enabled是否使用仓库。gpgcheck是否执行 GPG 签名检查。g...原创 2020-03-20 07:48:52 · 204 阅读 · 0 评论 -
80. 包管理 - rpm(RPM 包管理器)查找、验证、安装、更新及删除应用
开篇词rpm 是一个可以用于查找、验证、安装、更新及删除应用的工具。 RPM 文件格式二进制:<name>-<version>-<release>.<architecture>.rpm源代码:<name>-<version>-<release>.src.rpm 常用的选项定位...原创 2020-03-19 16:51:56 · 271 阅读 · 0 评论 -
79. 守护进程管理 - systemd 和 systemctl 管理 systemd 系统及其服务
开篇词通过 systemctl 命令,我们可以方便地管理 systemd 系统及服务。 守护进程的可能存放目录/etc/systemd/system/*/run/systemd/system/*/usr/lib/systemd/system/* 服务守护进程类型这里是系统服务的一些分类:类型描述.service指定系统的服务。...原创 2020-03-18 06:33:16 · 351 阅读 · 0 评论 -
78. 作业调度 - anacron 周期性执行命令或脚本
开篇词anacron 可以周期性地执行命令或脚本;该工具同样是来自 cronie 安装包。 选项这里是 anacron 命令的一些选项:选项描述-f强制运行所有作业。-u更新所有作业的时间戳至当前日期。-s让 anacron 按顺序执行作业。-n立即运行所有作业,无视延迟时间。-d让 anacron 运行在前景,打印消息至标...原创 2020-03-17 05:49:20 · 182 阅读 · 0 评论 -
77. 作业调度 - crontab 配置调度任务并维护每个用户自身的调度配置文件
开篇词crontab 是一个用于配置调度任务的工具。它还同时维护每个用户各自的 crontab 文件。 选项这里是 crontab 命令的一些选项:选项描述-u user更改指定用户的 crontab。-e更改用户的 crontab。-l列出用户的 crontab。-r删除用户的 crontab。-i需要用户的确认以执行删除...原创 2020-03-16 10:25:15 · 606 阅读 · 0 评论 -
76. 作业调度 - at 列入、检查,或删除需要被执行的调度作业
开篇词入列、检查,或删除需要被执行的调度作业。 选项这里是 at 命令的以下选项:选项描述-q queue确定队列的优先级。-m作业完成时发送消息给用户。-M不要发送邮件给用户。-f file从文件读取作业而不是标准输入。-t time在特定时间执行作业。格式为:[[CC]YY]MMDDhhmm[.ss]-l这是 a...原创 2020-03-15 08:33:43 · 284 阅读 · 0 评论 -
75. 进程管理 - vmstat 统计虚拟内存信息
开篇词显示虚拟内存的统计信息。 虚拟内存模式字段内核区域虚拟内存字段字段描述r可运行进程数。b不间断睡眠进程数。内存区域虚拟内存字段字段描述swpd已使用的虚拟内存。free空闲内存数。buff已使用的内存缓冲数。cache已使用的内存缓存数。inact非活跃的内存数。active...原创 2020-03-14 14:23:29 · 147 阅读 · 0 评论 -
74. 进程管理 - sar 收集、报告,或存储系统行为信息
开篇词sar 是一个用于收集、报告,或存储系统活动信息的工具。 统计页面这里是页面字段的一些描述:字段描述pgpgin/s在磁盘里每秒分页的总字节数。pgpgout/s从磁盘里每秒分页的总字节数。fault/s由系统产生的每秒页丢失故障(主要及非主要故障)数。majflt/s由系统产生的每秒主故障数。pgfree/s系统每...原创 2020-03-13 06:28:53 · 190 阅读 · 0 评论 -
73. 进程管理 - pmap 和 pstree 查看进程内存映射或进程树
开篇词pmap 和 pstree 让我们可以查看进程的内存映射或树形显示进程信息。 选项pmap 命令选项这里是 pmap 命令的一些选项:选项描述-x 或 --extended显示扩展格式。-d 或 --device显示设备格式。-q 或 --quiet隐藏头即脚信息。-A 或 --range low,high限制指定内存地址的...原创 2020-03-12 07:52:47 · 314 阅读 · 0 评论 -
72. 进程管理 - nice 和 renice 调整进程优先级
开篇词使用 nice 和 renice 命令,我们可以在程序启动时指定其优先级,或更改运行中进程的优先级。 选项nice 命令选项这里是 nice 命令的一些选项:选项描述-n 或 --adjustment=N将指定程序的优先级替换成数字 N。renice 命令选项这里是 renice 命令的一些选项:选项描述-n 或 --...原创 2020-03-11 03:56:27 · 564 阅读 · 0 评论 -
71. 进程管理 - kill 和 killall 终止进程及其相关的进程
开篇词kill 命令可以通过进程编号或名来终止进程,以及 killall 命令可以通过进程名来终止进程自身及其关联的所有进程。 选项kill 命令选项这里是 kill 命令的一些选项:选项描述-s 或 --signal signal要发送的信号的编号或名称。-l 或 --list [number]输出可用信号的编号及名称。-p 或 --pi...原创 2020-03-10 05:41:42 · 448 阅读 · 0 评论 -
70. 进程管理 - iostat 显示 CPU 报告、磁盘/分区输入及输出统计数据
开篇词一个名叫 iostat 的工具可以被用来显示 CPU 报告,它还可以被用来显示磁盘、分区输入及输出统计报告。 CPU 利用率报告这里是 CPU 报告的一些列:列描述%user用户级别 CPU 使用率。(应用 CPU 使用率)%nice用户级别的带有 nice 优先级的 CPU 使用率。%system系统级别 CPU 使用率。(内核 C...原创 2020-03-09 05:18:15 · 847 阅读 · 0 评论 -
69. 进程管理 - glances 统计系统资源使用率,支持跨平台监控
开篇词我们可以通过 glances 工具来监控系统资源使用情况,它还支持跨平台监控。 选项这里是 glances 命令的一些选项:选项描述--disable-process启动 glances 时不包含进程模块,以节省 CPU 开销。-0 或 --disable-irix任务的 CPU 使用率按逻辑 CPU 数来划分。-1 或 --percp...原创 2020-03-08 05:32:27 · 239 阅读 · 0 评论 -
68. 进程管理 - dstat 统计系统资源使用率
开篇词我们可以使用 dstat 工具来生成系统资源使用率统计数据。 选项这里是 dstat 命令的一些选项:选项描述--list列出所有可用插件的名称。-a 或 --all显示默认插件集,等价于 dstat -cdngy。-c 或 --cpu显示 CPU 统计。(系统、用户、空闲时间、等待时间)。-C 0,1,N显示CPU0、CPU...原创 2020-03-07 05:37:22 · 355 阅读 · 0 评论 -
67. 进程管理 - &、bg、fg、jobs 和 nohup 管理后台进程
开篇词使用 bg、fg、jobs,我们可以对后台作业进行一些操作。 &使命令在当前会话的后台保持运行:vi & bg唤醒在当前环境中暂停的后台进程并继续运行。bg fg将后台进程从当前环境移至前景:fg jobs在当前会话中显示后台作业状态。这里是 jobs 命令的一些选项:选项描述...原创 2020-03-06 07:12:16 · 210 阅读 · 0 评论 -
66. 进程管理 - top 和 htop 交互式查看进程动态信息
开篇词我们可以通过两个工具查看所有进程的动态信息,top 及 htop 支持交互式查看进程信息。 toptop 命令是一个可以实时查看进程的命令。top 命令选项这里是任务窗口的一些选项。选项描述-b以批处理模式运行 top。-d N每 N 秒刷新一次任务窗口。-n限制 top 产生的批次数量。top 的任务窗口命令这里是 to...原创 2020-03-05 03:48:08 · 697 阅读 · 0 评论 -
65. 进程管理 - ps 进程快照管理
开篇词我们可以通过 ps 命令来查看当前进程的快照信息。 当前进程快照命令选项这里是 ps 命令的一些常见基本选项:选项描述-A, -e输出所有进程。-a输出所有 tty(电传打字机或终端)。a输出所有 tty 以及其他用户。-d输出所有进程但不包括会话领导者。r输出所有运行中的进程。T输出终端上的所有进程。...原创 2020-03-04 04:41:52 · 252 阅读 · 0 评论 -
64. 进程管理 - pgrep、pkill 和 pidof
开篇词我们可以通过 pgrep 命令来查看进程,并且我们可以通过 pkill 命令来向进程发送信号。 通过名称或其他属性来查看进程或向其发送信号这里是 pgrep 和 pkill 命令的一些常见选项:选项描述-c 或 --count输出找到的进程数而不是正常输出。-f 或 --full匹配到所有列的模式。-g 或 --pgroup pgrp,...原创 2020-03-03 04:18:33 · 251 阅读 · 0 评论 -
63. LVM - 逻辑卷管理
开篇词通过由 Linux 提供的逻辑卷管理技术,我们可以灵活地操作每一个卷内的文件系统。 先决条件被使用的分区系统类型必须被定义为 8e(Linux LVM)。 设备文件/dev/dm-# 映射文件/dev/mapper/VG_NAME-LV_NAME/dev/mapper/vol0-root/dev/VG_NAME/LV_NAME...原创 2020-03-02 04:43:07 · 125 阅读 · 0 评论 -
62. RAID - 独立磁盘冗余矩阵
开篇词使用 RAID 技术,我们可以结合多个磁盘来提高效能或可靠性。 常被使用的级别RAID0RAID1RAID5RAID10RAID50JBOD RAID 0这里是 RAID 0 的一些常见特性:特性描述读写性能升级可用空间N * min(S1, S2, …)容错性无最小磁盘数量2 个或以上N...原创 2020-03-01 05:33:45 · 948 阅读 · 0 评论 -
61. Linux 磁盘管理 - 工具
开篇词Linux 给我们提供了很多磁盘管理工具。这些工具允许我们查看磁盘使用率及其分区。 报告磁盘空间使用率这里是 du 命令的一些选项:选项描述-h 或 --human-readable显示的大小为人类可读格式。-s 或 --summarize只是指定目录的大小。du [OPTION] 评估文件空间使用率这里是 df 命令...原创 2020-02-29 12:14:12 · 389 阅读 · 0 评论 -
60. Linux 磁盘管理 - 概念
开篇词数据是系统里最关键的东西,而磁盘则是持久化数据所不可或缺的硬件设备。 磁盘类型HDD 硬盘每分钟转数(RPM)每秒 I/O描述5400-1500050-210成本低;数据可能被恢复,适用于数据库服务器。SSD 硬盘每分钟转数(RPM)每秒 I/O描述无5000 及以上成本低;数据不可能被恢复,适用于应用服务器。...原创 2020-02-28 06:34:10 · 303 阅读 · 0 评论 -
59. 高级文本处理 - Awk 的常见用法
开篇词Awk 是一个灵活的模式匹配、文本处理及面向行的语言。Linux 为我们提供了其实现版本:gwak。我们可以使用 awk 或 gawk 命令来演示,awk 是 gawk 的一个软链接:ll /bin/awk 选项这里是 gawk 命令的一些常见选项:选项用途-f 程序文件 或 --file 程序文件从文件读取 gawk 执行脚本。-F ...原创 2020-02-27 06:38:37 · 254 阅读 · 0 评论 -
58. 高级文本处理 - 流编辑器(Sed)
开篇词我们可以使用 Linux 提供的 sed 流编辑器来逐行过滤及转换文本。 sed 命令选项这里是 sed 命令的一些选选项。选项选项用途-n 或 --quiet 或 --slient忽略自动输出。-e script 或 --expression=script添加脚本。-f script-file 或 --file=script-fil...原创 2020-02-26 06:25:13 · 254 阅读 · 0 评论 -
57. 高级文本处理 - grep、egrep
开篇词我们可以使用 Linux 提供的 grep 工具来基于基本的或扩展的正则表达式来查找匹配的行。 grep 及 egrep 命令选项这里是 grep 及 egrep 命令的一些选项:匹配器选择选项用途-E 或 --extended-grep当 PATTERNS 作扩展正则表达式。-F 或 --fixed-strings当 PATTERNS 作...原创 2020-02-25 06:36:31 · 220 阅读 · 1 评论 -
56. 高级文本编辑器 - Vim 的视图和插入模式
开篇词除末行模式与编辑模式外,vim 还给我们提供了两个其他模式:用于拷贝、粘贴、删除选定内容的视图模式以及添加、删除文本的插入模式。 视图模式这里是一些从编辑模式切换至视图模式的命令:命令用途v最小选择单位是字符。V最小可选单位是行。这里是视图模式的一些命令:命令用途y从选定部分拷贝。p粘贴至选定部分。...原创 2020-02-24 06:16:00 · 480 阅读 · 0 评论 -
55. 高级文本编辑器 - Vim 的编辑模式
开篇词除了末行模式,vim 同时还提供了编辑模式,两者相辅相成。我们继续使用我们先前创建的测试内容。 保存并退出文件vim vim_file # 打开文件并做一些改动ZZ # 按下 Shift 键并双击 Z 键,保存改动并退出文件 搜索这里编辑模式中的两种搜索方式:命令用途?PATTERN向上匹配,按下 N 来继续向上查找...原创 2020-02-23 04:48:06 · 157 阅读 · 0 评论 -
54. 高级文本编辑器 - Vim 的末行模式
开篇词通过 Vim 的末行模式,我们可以方便地执行一些命令,例如文件切屏、文件保存、光标移动、内容删除及文本替换等等。 在打开的文件间进行切屏这里是末行模式的一些文件间切屏命令:命令用途:prev屏幕切换至上一个文件。:next屏幕切换至下一个文件。:first屏幕切换至第一行。:last屏幕切换至最后一行。:qa退出所有打...原创 2020-02-22 04:28:40 · 506 阅读 · 0 评论 -
53. 高级文本编辑器 - Vim 的常见用法
开篇词Vim 文本编辑器提供了让我们方便操作的指令,让我们可以以多种方式来打开文件。在开始之前,我们准备一些测试内容:printf '%s\n' \'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam nisi tellus,' \'egestas sed dolor nec, eleifend venenatis m...原创 2020-02-21 04:26:18 · 305 阅读 · 0 评论 -
52. 查找工具 - 文件高级搜索
开篇词find 命令提供了一些基于创建时间、更新时间、所有者、组、权限、类型或者大小来查找文件的有用选项。 操作符这是 find 命令的一些操作符:选项用途! 或 -not逻辑非-a 或 -and逻辑与-o 或 -or逻辑或 参数这里是 find 命令的数字参数:选项用途+n大于 n-n小...原创 2020-02-20 07:05:58 · 464 阅读 · 0 评论 -
51. 文件权限 - 文件属性
开篇词要使我们的文件更加安全,Linux 提供了一个叫文件属性的特性。通过配置文件的属性,我们可以指定其是只读或不可删除又或者是处于其他状态。 列出文件属性这里是 lsattr 命令的一些选项:选项用途-R输出一个指定目录下的文件、目录及子目录的所有属性。-a输出一个指定目录的文件、目录、目录自身以及父目录的所有属性。-d只输出目录本身而不...原创 2020-02-19 07:24:36 · 178 阅读 · 0 评论 -
50. 文件权限- 文件系统访问控制列表(ACL,Access Control List)
开篇词尽管 chmod 命令已经足够强力,但它无法对权限进行更精细的分配,所以 Linux 提供了一些灵活的命令以为特定用户或组指定权限。从 Linux 内核 2.6 开始,我们可以给用户或组分配更细粒度的权限。 开始之前在我们开始之前,我们要确保我们所使用的系统是基于 2.6 或以上的内核:uname -r 获取文件 ACL我们可以使用 getfacl 命...原创 2020-02-18 08:56:19 · 663 阅读 · 0 评论 -
49. 用户管理 - su、sudo、sudoers 文件、alias 以及 wheel 组
开篇词通过 su 和 sudo命令,我们可以在用户之间进行切换操作。同时,我们可以使用这两个命令来以其他用户的权限执行一些命令操作。 su这里是 mesg 命令的三个参数:选项用途- 或 -l 或 --login以登陆 Shell 启动一个 Shell 并切换至指定用户主目录。在切换用户之后留在当前空座目录默认情况下,su 命令用 root 用户来...原创 2020-02-17 07:42:49 · 798 阅读 · 0 评论 -
48. 用户管理 - SSH/Bash Shell 用户间沟通
开篇词Linux 给用户们提供了用于沟通的工具。一些是可以用来发送消息给特定的用户;一些是可以用于群发消息;一些则是可以将内容作为一封邮件发送至用户的邮箱列表中。 发送消息给指定用户在开始发用信息给用户致歉,我们首先需要直到消息接收者所处的终端:who在我们知道消息接收者所处的终端后,我们可以发送一些消息至终端:write user pts/1 # 先运行该命令...原创 2020-02-16 07:46:53 · 366 阅读 · 0 评论 -
47. 用户管理 - 登陆详情 / 登陆记录
开篇词Linux 提供了一些用来查看用户的命令:登录状态、登录记录、登录尝试日志、用户最近登录日志等等。 显示登录的用户及其举动使用 w 命令,我们可以查看当前登录的用户及其举动。这里是 w 命令的一些常见选项:选项用途-h 或 --no-header输出用户信息但不显示头信息。-s 或 --short以短格式输出用户信息。-f 或 --f...原创 2020-02-15 07:39:01 · 612 阅读 · 0 评论 -
46. 用户管理 - 创建、变更、删除
开篇词为了便于对用户的管理,Linux 提供了一些常用的命令,以允许我们以更标准的方式对用户进行增、删、改的操作。 添加用户使用 useradd 命令,我们可以创建新用户。一下是在创建用户时会涉及到的相关文件和目录:名称类型用途预览/etc/default/useradd文件useradd 命令的默认变量配置文件。/etc/login.de...原创 2020-02-14 14:18:42 · 606 阅读 · 0 评论 -
45. 组管理 - 创建、变更、删除
开篇词为了能方便地管理组,Linux 提供了一些常见的命令,以允许我们以更标准的方式对组进行增、删、改的操作。 创建组我们可以通过 groupadd 命令来添加组。这里是一些 groupadd 命令的选项:选项用途‑g 或 ‑‑gid指定组编号。指定的值必须大于等于 /etc/login.defs 配置文件中 GID_MIN 变量的值并小于等于同文件中 ...原创 2020-02-13 06:53:38 · 280 阅读 · 0 评论 -
44. 文件权限- chown、chgrp、chmod、umask
开篇词为方便用户与组对文件与目录的权限进行管控,Linux 提供了一些常见的命令可以将权限以一种更标准的方式分配给用户和组或从他们那召回。 更改一个或多个文件或目录的所有者和所属组使用 chown 命令,我们可以给文件或目录分配所有者或所属组。更改文件或目录的所有者、所属组或两者如果我们只想指定所有者:chown user file_for_user # 该命令只会将...原创 2020-02-12 07:54:26 · 326 阅读 · 0 评论 -
43. 文件权限 - 符号 & 数字模式,指定用户 ID、指定组 ID
开篇词我们可以通过查看一个文件的模式位来确定其权限。 模式位结构文件以及目录的模式位结构:选项用途r读权限w写权限x执行权限目录和文件的权限我们来看一下新建文件和目录的默认权限:touch mode_bits_filemkdir mode_bits_dirll | grep 'mode_bits*'目录权限正如我们在以...原创 2020-02-11 06:26:09 · 741 阅读 · 0 评论