Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
77 changes: 36 additions & 41 deletions docs/gemstones/mtr.zh.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,49 +5,50 @@ contributors: Steven Spencer
date: 2021-10-20
---

# `mtr`简介
# `mtr` 简介

`mtr`是一个网络诊断工具,可以诊断网络问题,用来替代 `ping`与`traceroute`命令,在性能上,`mtr`命令的速度更加快。
`mtr`是一个可以诊断网络问题的网络诊断工具, 可用来替代`ping` 和 `traceroute` 命令。 就性能而言, `mtr` 命令更快。

## 使用 `mtr`

## 使用`mtr`
```bash
# 安装 mtr
shell > dnf -y install mtr
shell > dnf -y install mtr
```

`mtr`命令的常见选项如下,通常情况下,都不需要额外选项,后面直接跟主机名或IP地址
`mtr` 命令的常见选项如下, 通常情况下,都不需要额外选项,后面直接跟主机名或IP地址

|选项|说明|
|---|---|
|-4 |# 仅使用IPv4|
|-6 |# 仅使用IPv6|
|-c COUNT |# 发送的ping数|
|-n |# 不解析主机名|
|-z |# 显示AS号|
|-b |# 显示ip和主机名|
|-w |# 输出范围广泛的报告|
| 选项 | 说明 |
| -------- | ------------ |
| -4 | # 仅使用 IPv4 |
| -6 | # 仅使用 IPv6 |
| -c COUNT | # 发送的ping数 |
| -n | # 不解析主机名 |
| -z | # 显示AS号 |
| -b | # 显示IP和主机名 |
| -w | # 输出范围广泛的报告 |

终端交互的信息如下:

```bash
shell > mtr -c 10 bing.com

My traceroutr [v0.92]
li(192.168.100.4) 2021-10-20T08:02:05+0800
Keys:Help Display mode Restart Statistics Order of fields quit
HOST: li Loss% Snt Last Avg Best Wrst StDev
1. _gateway 0.0% 10 2.0 5.6 2.0 12.9 3.6
2. 10.9.128.1 0.0% 10 13.9 14.8 8.5 20.7 3.9
3. 120.80.175.109 0.0% 10 15.8 15.0 10.0 20.1 3.1
4. 112.89.0.57 20.0% 10 18.9 15.2 11.5 18.9 2.9
5. 219.158.8.114 0.0% 10 10.8 14.4 10.6 20.5 3.5
6. 219.158.24.134 0.0% 10 13.1 14.5 11.9 18.9 2.2
7. 219.158.10.30 0.0% 10 14.9 21.2 12.0 29.8 6.9
8. 219.158.33.114 0.0% 10 17.7 17.1 13.0 20.0 2.0
9. ??? 100.0 10 0.0 0.0 0.0 0.0 0.0
10. ??? 100.0 10 0.0 0.0 0.0 0.0 0.0
11. ??? 100.0 10 0.0 0.0 0.0 0.0 0.0
12. ??? 100.0 10 0.0 0.0 0.0 0.0 0.0
13. a-0001.a-msedge.net 0.0% 10 18.4 15.7 9.5 19.3 3.1
My traceroutr [v0.92]
li(192.168.100.4) 2021-10-20T08:02:05+0800
Keys:Help Display mode Restart Statistics Order of fields quit
HOST: li Loss% Snt Last Avg Best Wrst StDev
1. _gateway 0.0% 10 2.0 5.6 2.0 12.9 3.6
2. 10.9.128.1 0.0% 10 13.9 14.8 8.5 20.7 3.9
3. 120.80.175.109 0.0% 10 15.8 15.0 10.0 20.1 3.1
4. 112.89.0.57 20.0% 10 18.9 15.2 11.5 18.9 2.9
5.219.158.8.114 0.0% 10 10.8 14.4 10.6 20.5 3.5
6. 219.158.24.134 0.0% 10 13.1 14.5 11.9 18.9 2.2
7. 219.158.10.30 0.0% 10 14.9 21.2 12.0 29.8 6.9
8. 219.158.33.114 0.0% 10 17.7 17.1 13.0 20.0 2.0
9. ??? 100.0 10 0.0 0.0 0.0 0.0 0.0
10. ??? 100.0 10 0.0 0.0 0.0 0.0 0.0
11. ??? 100.0 10 0.0 0.0 0.0 0.0 0.0
12. ??? 100.0 10 0.0 0.0 0.0 0.0 0.0
13. a-0001.a-msedge.net 0.0% 10 18.4 15.7 9.5 19.3 3.1
...
```

Expand All @@ -56,14 +57,8 @@ HOST: li Loss% Snt Last Avg Best Wrst StDev
* Last - 最后一个包的延迟
* Avg - 平均延迟
* Best - 最低延迟
* Wrst - 最差延时
* StDev - 方差稳定性
* Wrst - 最差延迟
* StDev - 方差(稳定性)

## 交互时的快捷键
<kbd>p</kbd> - 暂停;
<kbd>d</kbd> - 切换显示模式;
<kbd>n</kbd> - 开/关DNS;
<kbd>r</kbd> - 重置所有计数器;
<kbd>j</kbd> - 切换延迟显示信息;
<kbd>y</kbd> - 切换IP信息;
<kbd>q</kbd> - 退出交互。
<kbd>p</kbd> - 暂停; <kbd>d</kbd> - 切换显示模式; <kbd>n</kbd> - 开/关 DNS; <kbd>r</kbd> - 重置所有计数器; <kbd>j</kbd> - 切换延迟显示信息; <kbd>y</kbd> - 切换IP信息; <kbd>q</kbd> - 退出交互.
86 changes: 43 additions & 43 deletions docs/gemstones/nmtui.zh.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,76 +7,76 @@ update: 2021-10-23

# 引言

对于初次使用GNU/Linux的新手用户来说,最先考虑的事情是安装操作系统后如何让机器连接互联网。本篇将告诉您如何配置IP地址、子网掩码、网关以及DNS,有几种方式作为参考,不管是新手还是熟手,相信您都都能快速上手。
对于初次使用GNU/Linux的新手用户来说,最先考虑的事情是安装操作系统后如何让机器连接互联网。 本篇将告诉您如何配置IP地址、子网掩码、网关以及DNS, 有几种方式作为参考, 不管是新手还是熟手,相信您都都能快速上手。

## nmtui

`NetworkManager`是标准 Linux 网络配置工具套件,支持服务器,也支持桌面环境,发展到如今,绝大多数流行的发行版都支持它。这套网络配置工具适用于 Rocky Linux 8 及更高版本,如果您希望图形化的方式配置网络信息(即命令行`nmtui`,只需要这么做:
`NetworkManager` 是一个标准的Linux网络配置工具套件,支持服务器,也支持桌面环境, 发展到如今,绝大多数流行的发行版都支持它。 这套网络配置工具适用于 Rocky Linux 8 及更高版本, 如果您希望以图形化的方式配置网络信息(即命令行`nmtui`),只需要这么做:

```bash
shell > dnf -y install NetworkManager NetworkManager-tui
shell > nmtui
```

|NetworkManager TUI||
|---|---|
|Edit a connection||
|Activate a connection||
|Set system hostname||
|Quit||
||\<OK\>|
| NetworkManager TUI | |
| --------------------- | -------- |
| Edit a connection | |
| Activate a connection | |
| Set system hostname | |
| Quit | |
| | \<OK\> |

您可以使用 <kbd>Tab</kbd>键 或者 <kbd>↑</kbd><kbd>↓</kbd><kbd>←</kbd><kbd>→</kbd>键的方式选择具体的功能,如果要更改网络信息,请选择 **Edit a connection** ,然后<kbd>Enter</kbd>键。选择不同的网卡,选择 **Edit..** 进行编辑。
您可以使用 <kbd>Tab</kbd>键 或者 <kbd>↑</kbd><kbd>↓</kbd><kbd>←</kbd><kbd>→</kbd>键的方式选择具体的功能,如果要更改网络信息,请选择 **Edit a connection** ,然后<kbd>Enter</kbd>键。 选择不同的网卡,选择 **Edit..** 进行编辑。

### DHCP的IPv4

针对IPv4,如果是使用DHCP的方式获取网络信息,则只需要选择 *IPv4 CONFIGURATION* 后面的 ** &lt;Automatic&gt; **,然后在您的终端中运行下`systemctl restart NetworkManager.service`,大多数的情况下都能生效极少数的情况下需要开关网卡才能生效,例如这样的方式——`nmcli connection down ens33`,`nmcli connection up ens33`
针对IPv4,如果是使用DHCP的方式获取网络信息,则只需要选择 *IPv4 CONFIGURATION* 后面的**&lt;Automatic&gt;**,然后在您的终端中运行下`systemctl restart NetworkManager.service`,大多数的情况下都能生效极少数的情况下需要开关网卡才能生效, 例如这样的方式——`nmcli connection down ens33`,`nmcli connection up ens33`

### 手动固定网络信息

如果要将所有IPv4的网络信息进行手动固定,需要选择 *IPv4 CONFIGURATION* 后面的 **&lt;Manual&gt;**,一行一行进行添加,例如我这样的
如果要将所有IPv4的网络信息进行手动固定,需要选择 **&lt;Manual&gt;** 后面的 *IPv4 CONFIGURATION*,一行一行进行添加, 例如,像我这样的

|项|值|
|---|---|
|Addresses|192.168.100.4/24||
|Gateway|192.168.100.1||
|DNS servers|8.8.8.8|
| 项 | 值 |
| ----------- | ---------------- |
| Addresses | 192.168.100.4/24 |
| Gateway | 192.168.100.1 |
| DNS servers | 8.8.8.8 |

然后点击 \<OK\> ,一步一步返回到终端界面,执行`systemctl restart NetworkManager.service` 即可。同样的,极少数的情况下需要开关网卡才能生效。
然后点击 \< OK \> ,一步一步返回到终端界面,执行`systemctl restart NetworkManager.service` 即可。 同样的,极少数的情况下需要开关网卡才能生效。

## 更改配置文件的方式

所有的RHEL发行版,不管是上游的还是下游的,都是一样的配置方式。网络信息的配置文件保存在 **/etc/sysconfig/network-scripts/** 目录下面,一个网卡对应一个配置文件。配置文件的参数非常的多,如下表所示。注意!参数一定要大写。
所有的RHEL发行版,不管是上游的还是下游的,都是一样的配置方式。 网络信息的配置文件保存在 **/etc/sysconfig/network-scripts/** 目录下面,一个网卡对应一个配置文件。 配置文件的参数非常的多,如下表所示。 注意! 参数一定要大写。

```bash
shell > ls /etc/sysconfig/network-scripts/
ifcfg-ens33
```

|参数名|含义|示例|
|---|---|---|
|DEVICE |系统逻辑设备名 |DEVICE=ens33 |
|ONBOOT |网卡是否随系统自启动,可选择yes或者no|ONBOOT=yes|
|TYPE|网卡接口类型,一般是Ethernet|TYPE=Ethernet|
|BOOTPROTO|获取ip的方式,可以是DHCP动态获取,也可以使用static静态手动配置|BOOTPROTO=static|
|IPADDR|网卡的ip地址,当BOOTPROTO=static时,该参数才生效|IPADDR=192.168.100.4|
|HWADDR|硬件地址,即MAC地址|HWADDR=00:0C:29:84:F6:9C|
|NETMASK|十进制的子网掩码|NETMASK=255.255.255.0|
|PREFIX|子网掩码,用数字表示的方式|PREFIX=24|
|GATEWAY|网关,若有多块网卡,该参数只能出现一次|GATEWAY=192.168.100.1|
|PEERDNS|当为yes时,此处定义的DNS参数会修改/etc/resolv.conf;当为no时,不会修改/etc/resolv.conf。当使用DHCP时,此处默认yes|PEERDNS=yes|
|DNS1|主选DNS,当PEERDNS=no时才生效|DNS1=8.8.8.8|
|DNS2|备选DNS,当PEERDNS=no时才生效|DNS2=114.114.114.114|
|BROWSER_ONLY|是否只允许浏览器|BROWSER_ONLY=no|
|USERCTL|是否允许普通用户控制网卡设备,yes表示允许,no表示不允许|USERCTL=no|
|UUID|通用唯一识别码,主要作用是标识硬件,一般来说可不填||
|PROXY_METHOD|代理的方式,一般为none,可不填||
|IPV4_FAILURE_FATAL|如果为yes,表示ipv4配置失败后禁用设备;为no,表示不禁用。|IPV4_FAILURE_FATAL=no|
|IPV6INIT|是否启用IPV6,yes启用,no不启用。当IPV6INIT=yes时,还能启用 IPV6ADDR 与 IPV6_DEFAULTGW 两个参数,前者表示IPV6地址,后者表示指定网关|IPV6INIT=yes|
|IPV6_AUTOCONF|是否使用IPV6的自动配置,yes表示使用;no表示不使用|IPV6_AUTOCONF=yes|
|IPV6_DEFROUTE|是否给IPV6默认路由|IPV6_DEFROUTE=yes|
|IPV6_FAILURE_FATAL|IPV6配置失败后,是否禁用设备|IPV6_FAILURE_FATAL=no|
|IPV6_ADDR_GEN_MODE|产生IPV6地址的模型,可选值有stable-privacy与eui64|IPV6_ADDR_GEN_MODE=stable-privacy|
| 参数名 | 含义 | 示例 |
| -------------------- | --------------------------------------------------------------------------------------------- | ----------------------------------- |
| DEVICE | 系统逻辑设备名 | DEVICE=ens33 |
| ONBOOT | 网卡是否随系统自启动,可选择yes或者no | ONBOOT=yes |
| TYPE | 网卡接口类型,一般是Ethernet | TYPE=Ethernet |
| BOOTPROTO | 获取ip的方式,可以是DHCP动态获取,也可以使用static静态手动配置 | BOOTPROTO=static |
| IPADDR | 网卡的ip地址,当BOOTPROTO=static时,该参数才生效 | IPADDR=192.168.100.4 |
| HWADDR | 硬件地址,即MAC地址 | HWADDR=00:0C:29:84:F6:9C |
| NETMASK | 十进制的子网掩码 | NETMASK=255.255.255.0 |
| PREFIX | 子网掩码,用数字表示的方式 | PREFIX=24 |
| GATEWAY | 网关,若有多块网卡,该参数只能出现一次 | GATEWAY=192.168.100.1 |
| PEERDNS | 当为yes时,此处定义的DNS参数会修改/etc/resolv.conf;当为no时,不会修改/etc/resolv.conf。 当使用DHCP时,此处默认yes | PEERDNS=yes |
| DNS1 | 主选DNS,当PEERDNS=no时才生效 | DNS1=8.8.8.8 |
| DNS2 | 备选DNS,当PEERDNS=no时才生效 | DNS2=114.114.114.114 |
| BROWSER_ONLY | 是否只允许浏览器 | BROWSER_ONLY=no |
| USERCTL | 是否允许普通用户控制网卡设备,yes表示允许,no表示不允许 | USERCTL=no |
| UUID | 通用唯一识别码,主要作用是标识硬件,一般来说可不填 | |
| PROXY_METHOD | 代理的方式,一般为none,可不填 | |
| IPV4_FAILURE_FATAL | 如果为yes,表示ipv4配置失败后禁用设备;为no,表示不禁用。 | IPV4_FAILURE_FATAL=no |
| IPV6INIT | 是否启用IPV6,yes启用,no不启用。 当IPV6INIT=yes时,还能启用 IPV6ADDR 与 IPV6_DEFAULTGW 两个参数, 前者表示IPV6地址,后者表示指定网关 | IPV6INIT=yes |
| IPV6_AUTOCONF | 是否使用IPV6的自动配置,yes表示使用;no表示不使用 | IPV6_AUTOCONF=yes |
| IPV6_DEFROUTE | 是否给IPV6默认路由 | IPV6_DEFROUTE=yes |
| IPV6_FAILURE_FATAL | IPV6配置失败后,是否禁用设备 | IPV6_FAILURE_FATAL=no |
| IPV6_ADDR_GEN_MODE | 产生IPV6地址的模型,可选值有stable-privacy与eui64 | IPV6_ADDR_GEN_MODE=stable-privacy |

配置文件修改成功后,记得重启网卡服务`systemctl restart NetworkManager.service`

Expand Down
26 changes: 11 additions & 15 deletions docs/gemstones/perl_search_replace.zh.md
Original file line number Diff line number Diff line change
@@ -1,40 +1,36 @@
---
title: Perl - 搜索与替换
author: Steven Spencer
contributors: tianci li
date: 2021-10-15
---

# `perl` 搜索与替换

有时您需要快速搜索与替换文件或者文件组中的字符串。有很多方法可以做到这一点 ,但在这里使用`perl`
有时您需要快速搜索与替换文件或者文件组中的字符串。 有很多方法可以做到这一点 ,但在这里使用`perl`

要在目录下的多个文件中搜索和替换特定字符串,命令应该为:

```
perl -pi -w -e 's/search_for/replace_with/g;' ~/Dir_to_search/*.html
```

对于可能有多个字符串实例的单个文件,可以指定该文件:

```
perl -pi -w -e 's/search_for/replace_with/g;' /var/www/htdocs/bigfile.html
```

此命令使用vi语法进行搜索和替换,以查找字符串的任何匹配项,并在单个或多个特定类型的文件中将其替换为另一个字符串。用于替换嵌入在这些类型文件中的html/php链接更改,以及许多其他内容。
此命令使用vi语法进行搜索和替换,以查找字符串的任何匹配项,并在单个或多个特定类型的文件中将其替换为另一个字符串。 用于替换嵌入在这些类型文件中的html/php链接更改,以及许多其他内容。

## 选项说明

| 选项 | 解释 |
| ---- | ------------------------------------------------------------ |
| -p | 循环遍历指定的文件,同时打印所有的行 |
| -i | 原地替换文件,并将旧文件用指定的扩展名备份,不指定扩展名则不备份 |
| -w | 打印警告信息 |
| -e | 使用命令行 |
| -s | 在程序文件之后启用基本解析的开关 |
| -g | 全局替换 |
| 选项 | 说明 |
| -- | -------------------------------- |
| -p | 循环遍历指定的文件,同时打印所有的行 |
| -i | 原地替换文件,并将旧文件用指定的扩展名备份,不指定扩展名则不备份 |
| -w | 打印警告信息 |
| -e | 使用命令行 |
| -s | 在程序文件之后启用基本解析的开关 |
| -g | 全局替换 |

## 结尾

使用`perl`替换一个或多个文件中的字符串的一种简单方法。

使用`perl`替换一个或多个文件中的字符串的一种简单方法。
6 changes: 3 additions & 3 deletions docs/guides/index.zh.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@ title: 指南首页

# Rocky Linux指南

欢迎访问Rocky Linux文档的 **指南** 部分。您在这里可以找到许多"how-to"文档,这部分一直在更新变化,还有一些长文档可以在 **"书籍"** 和 **"实验室"** 中找到,您可以在顶部的菜单中找到
欢迎访问Rocky Linux文档的 **指南** 部分。 您在这里可以找到许多"how-to"文档, 这部分一直在更新变化, 还有一些较长形式的文档组,可以在“书籍”和未来计划的有关教育的“实验室中找到,每一个都可以在顶部菜单中找到

大多数类别不需要特别的解释,如果您想了解如何帮助正在进行的Rocky Linux开发,请加入开发频道——[Mattermost Development channel](https://chat.rockylinux.org/rocky-linux/channels/development)。对于那些希望参与文档的人,请加入文档频道—— [Mattermost Documentation channel](https://chat.rockylinux.org/rocky-linux/channels/documentation) ,讨论以了解更多的信息。
大多数类别都无需解释。 如果您想了解如何帮助正在进行的Rocky Linux开发,请加入开发频道——[Mattermost Development channel](https://chat.rockylinux.org/rocky-linux/channels/development)。 对于那些希望参与文档的人,请加入文档频道—— [Mattermost Documentation channel](https://chat.rockylinux.org/rocky-linux/channels/documentation) ,讨论以了解更多的信息。

如果您想直接进入,现在可以 [安装Rocky Linux](installation.zh.md)
如果您想直接进入,现在可以 [安装Rocky Linux](installation.md)
Loading