This commit is contained in:
wizardforcel 2017-08-26 11:24:51 +08:00
parent 978c403440
commit 007b46e54b
1 changed files with 297 additions and 0 deletions

297
ex30.md Normal file
View File

@ -0,0 +1,297 @@
# 练习 30打磨、洗练、重复总复习
> 原文:[Exercise 30. Lather, Rinse, Repeat: The Grand Rote Learning](https://archive.fo/RCaku)
> 译者:[飞龙](https://github.com/wizardforcel)
> 协议:[CC BY-NC-SA 4.0](http://creativecommons.org/licenses/by-nc-sa/4.0/)
> 自豪地采用[谷歌翻译](https://translate.google.cn/)
本指南中的信息量相当大。没有足够长的练习和一些深入研究,你不能记住它。所以剩下的唯一的工作就是填写这张表,每天都把这张表打印在你的记忆中,直到你知道了它。
你可能想问,为什么需要记住所有这些东西,如果你可以随时查看的话。那么简短的答案是因为你不能。这意味着为了高效地查找事物,你需要知道要寻找什么,并且为了知道要寻找什么,你需要一个坚实的基础。一旦你有了这个基础,一旦你明白什么是重要的,什么不是,以及系统的组织方式,你将能够高效寻找东西。
你可能会想知道,为什么在我的指南中有很多详细的表格,其中包含许多字段的列表,其中包含几乎不需要的信息。你必须明白的是,你应该以这种方式训练自己,来查看任何控制台程序。你应该熟悉这个信息,而不像是一本科幻小说那样,其中你可能不会注意细节,但仍然很了解它。你应该将所有这些数据看做数学公式,其中每个符号都有其意义,甚至更多,如果你不明白特定的符号意味着什么,你将无法走地更远。
有时完全可以留下一些未解释的东西,但让自己变得更深入,即使经常是这样。通过研究这个特定的工具,了解它告诉你什么以及为什么,给自己一个礼物。如果你这样做,如果你会深入内部,你对操作系统的理解(在我们这种情况下是 Linux将会极大增加。
## 文档
### `man`, `info`
| 命令或概念 | 含义 |
| --- | --- |
| `man` | |
| `info` | |
| `man 1` | |
| `man 2` | |
| `man 3` | |
| `man 4` | |
| `man 5` | |
| `man 6` | |
| `man 7` | |
| `man 8` | |
| `man 9` | |
| `man -k` | |
| `man -wK` | |
| **粗体** | | |
| *斜体* | | |
| `[]` | |
| `-a|-b` | |
| `argument ...` | |
| `[expression] ...` | |
### Google 和实用资源
| 搜索术语/资源 | 含义 |
| --- | --- |
| `(a|b) c` | |
| `site:foo.bar` | |
| `"a long query"` | |
| <http://en.wikipedia.org> | |
| <http://stackexchange.com/> | |
| <http://www.cyberciti.biz/> | |
| <http://tldp.org/> | |
| `programname.site` | |
### 包管理Debian 包管理工具`aptitude`
| 命令或概念 | 含义 |
| --- | --- |
| `aptitude` | |
| `aptitude search` | |
| `aptitude install` | |
| `dpkg -l` | |
| `dpkg -L` | |
| 预期操作 | |
| 包状态 | |
| <http://www.debian.org/distrib/packages> | |
### 系统启动:运行级别, `/etc/init.d`, `rcconf`, `update-rc.d`
| 命令或概念 | 含义 |
| --- | --- |
| `rcconf` | |
| `update-rc.d` | |
| `sysv-rc-conf` | |
| 运行级别 | |
| 运行级别 1 | |
| 运行级别 2 | |
| 运行级别 6 | |
### 进程:处理进程,`ps``kill`
| 命令或概念 | 含义 |
| --- | --- |
| `ps` | |
| `kill` | |
| `ps ax` | |
| `ps axue` | |
| `ps axue --forest` | |
| 信号 | |
| `HUP` | |
| `TERM` | |
| `KILL` | |
| 为什么 `KILL -9` 是不好的? | |
### 任务调度:`cron``at`
| 命令或概念 | 含义 |
| --- | --- |
| `crontab -l` | |
| `crontab -e` | |
| `crontab -r` | |
| `crontab /foo` | |
| `crontab > foo` | |
| `* * * * *` | |
| `at` | |
| `atq` | |
| `atq` | |
| `atrm` | |
| `batch` | |
### 日志, `/var/log`, `rsyslog`, `logger`
| 命令或概念 | 含义 |
| --- | --- |
| `logger` |
| `grep -irl` |
| `find . -mmin -5` |
| `tail -f` |
| `logrotate` |
| 日志守护程序 | |
| 日志级别 | |
| 日志轮替 | |
### 文件系统
| 命令或概念 | 含义 |
| --- | --- |
| 文件系统 | |
| 文件 | |
| 目录 | |
| 索引节点 | |
| 块 | |
| 挂载 | |
| UUID | |
| 日志 | |
| MBR | |
| 分区 | |
| 分区表 | |
### 挂载, `mount`, `/etc/fstab`
| 命令或概念 | 含义 |
| --- | --- |
| `parted` | |
| `cfdisk` | |
| `fdisk` | |
| `mount` | |
| `umount` | |
| `mount -a` | |
| `/etc/fstab` | |
| `fsck` | |
| `blkid` | |
### 创建和修改文件系统,`mkfs``tune2fs`
| 命令或概念 | 含义 |
| --- | --- |
| `tune2fs` | |
| `mkfs` | |
| 块大小 | |
| 保留块数量 | |
| 最大挂载数量 | |
| 检查间隔 | |
### 更改根目录,`chroot`
| 命令或概念 | 含义 |
| --- | --- |
| `chroot` | |
| `ldd` | |
| 根目录 | |
| 更改根目录 | |
| 动态库依赖 | |
### 移动数据:`tar``dd`
| 命令或概念 | 含义 |
| --- | --- |
| `tar` | |
| `dd` | |
| `losetup` | |
### 安全权限:`chown``chmod`
| 命令或概念 | 含义 |
| --- | --- |
| `chmod` | |
| `chown` | |
| `umask` | |
| 权限 | |
| 权限模式 | |
| 权限类 | |
| Umask 机制 | |
### 网络
| 网络概念 | 含义 |
| --- | --- |
| OSI 模型 | |
| DOD 模型 | |
| 通信协议 | |
| 以太网 | |
| MAC 地址 | |
| 以太网广播地址 | |
| TCP/IP | |
| IP | |
| IP 封包 | |
| IP 地址 | |
| IP 子网 | |
| 端口 | |
| 网络套接字 | |
| 本地套接字地址 | |
| 远程套接字地址 | |
| 套接字对 | |
| 路由 | |
| 默认网关 | |
| IP 广播地址 | |
| ICMP | |
| TCP | |
| TCP 封包 | |
| UDP | |
| UDP 封包 | |
| 主机名称 | |
### 网络配置, `ifconfig`, `netstat`, `iproute2`, `ss`
| 命令或概念 | 含义 |
| --- | --- |
| `/etc/network/interfaces` | |
| `auto` | |
| `allow-hotplug` | |
| `/etc/hosts` | |
| `/etc/hostname` | |
| `localhost` | |
| 回送接口 | |
| 伪接口 | |
### 封包过滤配置,`iptables`
| 命令或概念 | 含义 |
| --- | --- |
| `iptables-save` | |
| `iptables` | |
| `modprobe` | |
| `nc` | |
| `tcpdump` | |
| `LINKTYPE_LINUX_SLL` | |
| 以太网帧头部 | |
| IPv4 头部 | |
| TCP 段 | |
| `netfilter` | |
| iptables 表 | |
| iptables 链 | |
| iptables 目标 | |
### 安全 Shell, `ssh`, `sshd`, `scp`
| 命令或概念 | 含义 |
| --- | --- |
| `ssh` | |
| `sshd` | |
| `scp` | |
| `ssh-keygen` | |
| 主机密钥 | |
| 证密钥 | |
| 数据加密密码 | |
| 数据完整性算法 | |
| SSH 会话密钥 | |
### 性能:获取性能状态, `uptime`, `free`, `top`
| 命令或概念 | 含义 |
| --- | --- |
| `uptime` | |
| `free` | |
| `vmstat` | |
| `top` | |
| CPU 占用 (`us`,`sy`,`id`,`wa`) | |
| 内存 (`swpd`, `free`, `buff`, `cache`, `inact`, `active`) |
| Slab 分配 | |
| 磁盘 (`IOPS`, `read`, `write`) | |
| 进程 (`PR`, `NI`, `VIRT`, `RES`, `SHR`, `Status`) | |
### 内核:内核消息,`dmesg`
| 命令或概念 | 含义 |
| --- | --- |
| `dmseg` | |
| `/var/log/dmesg` | |
| `/var/log/messages` | |
| `/var/log/syslog` | |
| `/var/log/kern.log` | |
| 内核消息缓冲区 | |