diff --git a/README.md b/README.md index 579097b3a47a885314822ee85a0c655acb1ff57f..f80d7cecafaaa36887e4c89c9baeb534e458387f 100644 --- a/README.md +++ b/README.md @@ -2,6 +2,11 @@ [English](./README-en.md) | 简体中文 +文档捉虫活动火热进行中,欢迎参加:
+[点我马上开启文档捉虫](https://docs.openeuler.org/zh/) +
+[点我查看活动详情](https://docs-bug.openeuler.sh/) + ### 介绍 Docs包含了openEuler社区的所有文档,包括发行说明、操作系统安装、管理员指南、虚拟化和容器的使用指导、A-Tune使用指导和应用开发指导等内容。 diff --git a/contribute/.keep b/contribute/.keep new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git "a/contribute/MarkDown\345\270\270\347\224\250\350\257\255\346\263\225\345\217\202\350\200\203.md" "b/contribute/MarkDown\345\270\270\347\224\250\350\257\255\346\263\225\345\217\202\350\200\203.md" new file mode 100644 index 0000000000000000000000000000000000000000..f2f4a6098dd5d950f931b75317a1262eb3b9ae12 --- /dev/null +++ "b/contribute/MarkDown\345\270\270\347\224\250\350\257\255\346\263\225\345\217\202\350\200\203.md" @@ -0,0 +1,140 @@ +# MarkDown常用语法参考 + +## 标题 + +使用\#号标记:使用 \# 号可表示 1-6 级标题,一级标题对应一个 \# 号,二级标题对应两个 \# 号,以此类推。 + +``` +# 一级标题 +## 二级标题 +### 三级标题 +#### 四级标题 +##### 五级标题 +###### 六级标题 +``` + +## 字体 + +- 斜体:使用一个星号(\*)表示斜体。 + + ``` + *斜体文本* + ``` + +- 粗体:使用两个星号(\*\*)表示粗体。 + + ``` + **粗体文本** + ``` + +- 粗斜体:使用3个星号(\*\*\*)表示粗斜体。 + + ``` + ***粗斜体文本*** + ``` + + +## 列表 + +- 无序列表:无序列表使用星号(**\***)、加号(**+**)或是减号(**-**)作为列表标记,这些标记后面要添加一个空格,然后再填写内容。同一个无序列表,建议使用同一个符号。 + + ``` + * 第一项 + * 第二项 + * 第三项 + + + 第一项 + + 第二项 + + 第三项 + + + - 第一项 + - 第二项 + - 第三项 + ``` + + +- 有序列表:有序列表使用数字并加上 **.** 号来表示。 + + ``` + 1. 第一项 + 2. 第二项 + 3. 第三项 + ``` + + +- 嵌套列表:列表嵌套只需在子列表中的选项前面添加四个空格即可。 + + ``` + 1. 第一项: + - 第一项嵌套的第一个元素 + - 第一项嵌套的第二个元素 + 2. 第二项: + - 第二项嵌套的第一个元素 + - 第二项嵌套的第二个元素 + ``` + + +## 引用 + +Markdown 区块引用是在段落开头使用 **\>** 符号 ,然后后面紧跟一个**空格**符号。 + +``` +> 说明: +``` + +## 代码 + +- 行间代码:如果是段落上的一个函数或片段的代码可以用反引号把它包起来(**\`**)。 + +``` +`printf()` 函数 +``` + +- 代码块:可以用 **\`\`\`** 包裹一段代码。 + +``` +``` +select * from table; +``` +``` + +## 链接 + +链接使用方法如下: + +``` +[链接名称](链接地址) +``` + +## 图片 + +图片使用方法如下: + +``` +![alt 属性文本](图片地址) + +![alt 属性文本](图片地址 "可选标题") +``` + +- 开头一个感叹号 (!)。 +- 接着一个方括号,里面放上图片的替代文字。 +- 接着一个普通括号,里面放上图片的网址,最后还可以用引号包住并加上选择性的 'title' 属性的文字。 + +## 表格 + +Markdown 制作表格使用 **|** 来分隔不同的单元格,使用 **-** 来分隔表头和其他行。语法格式如下: + +``` +| 表头 | 表头 | +| ---- | ---- | +| 单元格 | 单元格 | +| 单元格 | 单元格 | +``` + +我们可以设置表格的对齐方式: + +- -: 设置内容和标题栏居右对齐。 +- :- 设置内容和标题栏居左对齐。 +- :-: 设置内容和标题栏居中对齐。 + diff --git a/contribute/figures/.keep b/contribute/figures/.keep new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/contribute/figures/SafetyAlert.png b/contribute/figures/SafetyAlert.png new file mode 100644 index 0000000000000000000000000000000000000000..0f672abbd6d2bba5621632e953d423f06db72789 Binary files /dev/null and b/contribute/figures/SafetyAlert.png differ diff --git "a/contribute/\345\206\231\344\275\234\350\247\204\350\214\203.md" "b/contribute/\345\206\231\344\275\234\350\247\204\350\214\203.md" new file mode 100644 index 0000000000000000000000000000000000000000..7fd09dbfb186439cfd7f6debfdc66430506ae153 --- /dev/null +++ "b/contribute/\345\206\231\344\275\234\350\247\204\350\214\203.md" @@ -0,0 +1,112 @@ +# 写作规范 + +## 命名 + +对于新增文档,请在对应的文件目录下新增MarkDown文档(即以.md结尾的文件)。文档命名需要根据文档的内容声明。 + +- 新增文档名称不能与已有文档重名,如果有请重新命名。 +- 新增文档之后,需要在menu文件夹下的index文件中新增对应的目录,否则新增文件无法显示。目录层级不建议超过三级。 +- 文件名中不能包含括号,会导致文件目录无法正常显示。可以将括号修改为可识别的下划线(\_)或者中划线(-)。 + +## 目录 + +文档为以.md结尾的文件,存储在https://gitee.com/openEuler/docs 路径下。 + +docs文件夹中包含以下内容: + +- zh:全量版中文资料。 +- en:全量版英文资料。 + +根据文档所属的手册,选择对应的文件夹。不同手册所在文件夹请参见下表。 + +| 文件夹 | 手册 | +|-----|----| +| A-Tune | A-Tune用户指南 | +| Adminnistration | 管理员指南 | +| ApplicationDev | 应用开发指南 | +| Container | 容器用户指南 | +| Installation | 安装指南 | +| Quickstart | 快速入门 | +| Releasenotes | 发行说明 | +| SecHarden | 安全加固指南 | +| Virtualization | 虚拟化应用指南 | +| userguide | openEuler工具集用户指南 | +| StratoVirt | StratoVrit虚拟化用户指南 | + + +## 内容 + +- 提交内容必须是与openEuler特性相关内容。 +- 内容不能包含敏感信息、有强烈的种族歧视或性别歧视的内容。 +- 提交的内容必须是原创内容,不得侵犯他人知识产权。 +- 提交的内容必须客观、真实,不允许使用夸大宣传等词汇。 + +## 标题 + +- 标题尽量采用简洁的语句概况反映章节的中心内容,注意不要省略必要的信息。例如:xxx概述,如果用概述来代替,就会导致读者无法从标题中获取到有用信息。 +- 操作类文档标题尽量用动宾结构(例如:申请权限)。 +- 相同级别,相同类型的标题结构保持一致。 +- 标题不使用标点符号结尾。 +- 标题中尽量采用圆括号来表示补充说明。 + +## 文档结构 + +- **操作类文档** + + 操作类文档写明步骤、注意事项、前提条件等,以便能对其他开发者起到帮助。 + + 以[StratoVirt用户指南](https://docs.openeuler.org/zh/docs/22.03_LTS/docs/StratoVirt/%E5%87%86%E5%A4%87%E4%BD%BF%E7%94%A8%E7%8E%AF%E5%A2%83.html)为例,可以参考如下文档结构: + + - 使用说明 + + 说明此操作在什么场景下使用可以解决用户的什么问题。 + + - 环境要求 + + 执行此操作需要用户准备的软硬件环境、权限以及其它约束条件。 + + - 操作步骤 + + 具体的操作步骤,需要注意如下事项: + + - 建议一步一个操作步骤,不建议多个操作步骤合并在一个步骤中描写。 + - 如果操作可选,要明确可选条件。 + - 开发步骤中,涉及调用接口(例如使用了工具或者SQL语句),需要对使用的接口进行说明。 + + - 结果验证 + + 说明如何验证操作结果正确。如果验证操作与步骤强相关,可以在步骤中描述。例如,执行SQL语句的返回信息。 + + + + +## 图片 + +- 图片统一存放到文档同级目录下的figures文件夹中。例如,[A-Tune用户指南](https://docs.openeuler.org/zh/docs/22.03_LTS/docs/A-Tune/A-Tune.html)中的手册中使用的图片,统一存储在[A-Tune](https://gitee.com/openeuler/docs/tree/stable2-22.03_LTS/docs/zh/docs/A-Tune/figures) 路径下。该文件夹下的文件引用图片时,使用相对引用。 +- 请使用原创图片,避免存在知识产权侵权风险。 +- 图形清晰可辨识,图形信息完整,例如流程图有“开始”和“结束”。 +- 图形逻辑清晰。 +- 图文配合使用,切忌图文分离。 +- 图片格式首选png,此外也接受jpg。图片的高不超过640px,宽不超过 393px,图片大小建议不超过150K。 +- 中文用中文插图,英文用英文插图。 +- 图片建议根据内容命名,只用数字序列不利于后续图片的继承。 +- 如果是截图,请在允许的范围内只保留有用的信息。图形中需要突出的关键信息,可增加红色框线或者文字备注说明。 + +## 代码 + +代码示例说明了如何实现特定功能,开发人员使用代码示例来编写和调试代码。代码要求如下: + +- 代码的逻辑和语法正确。 +- 代码的输入和输出尽可能的分开。 +- 保证代码中关键步骤要有注释说明。 +- 代码源于具体实例。 + +## 注释符号 + +文档中会出现以下注释符号,代表不同的使用场景和提示程度。如果需要提示用户注意的信息,可以根据重要程度选择对应的注释符号。 +![](figures/SafetyAlert.png) + +## 链接 + +链接需要确保指向的目标文件存在,否则会造成链接跳转不正常。 + diff --git a/docs/en/docs/ClusterDeployment/k8s+isulad-deployment.md b/docs/en/docs/ClusterDeployment/k8s+isulad-deployment.md index cbb015d1bb72c1ffe83ad58a3bc9cf9c3b0afb19..555732b20e6e43e1a1b3a533cee2876dd2d90908 100644 --- a/docs/en/docs/ClusterDeployment/k8s+isulad-deployment.md +++ b/docs/en/docs/ClusterDeployment/k8s+isulad-deployment.md @@ -128,7 +128,7 @@ The following table lists software packages and images used in the example. The 7. Create the configuration file. ```shell - $ vim br_netfilte.service + $ vim br_netfilter.service [Unit] Description=To enable the core module br_netfilter when reboot diff --git a/docs/en/docs/ClusterDeployment/native-development-cluster-deployment-guide.md b/docs/en/docs/ClusterDeployment/native-development-cluster-deployment-guide.md index c1fb74c51983729a75f51b205dcab6c2d50febf2..bb594ef731e3886c355e12afc814e1815f151199 100644 --- a/docs/en/docs/ClusterDeployment/native-development-cluster-deployment-guide.md +++ b/docs/en/docs/ClusterDeployment/native-development-cluster-deployment-guide.md @@ -52,20 +52,20 @@ The following table lists the software and images required during installation. 1. Change the host name. The following uses one host as an example. - ``` + ```shell # hostnamectl set-hostname lab1 # sudo -i ``` 2. Open the **/etc/hosts** files of the three hosts. - ``` + ```shell # vim /etc/hosts ``` 3. Add the following content (IP address + host name) to the **hosts** file: - ``` + ```shell 197.xxx.xxx.xxx lab1 197.xxx.xxx.xxx lab2 197.xxx.xxx.xxx lab3 @@ -75,27 +75,27 @@ The following table lists the software and images required during installation. 1. Disable the firewall. - ``` + ```shell # systemctl stop firewalld # systemctl disable firewalld ``` 2. Disable SELinux. - ``` + ```shell # setenforce 0 ``` 3. Disable the system swap. - ``` + ```shell # swapoff -a # sed -ri 's/.*swap.*/#&/' /etc/fstab ``` 4. Enable the forwarding mechanisms. - ``` + ```shell # cat > /etc/sysctl.d/kubernetes.conf < **CI/CD** > **Runners** > **Expand**. - - 5. Record the address and token for registering the Runner. - - 6. Import certificate files. Check and generate certificate files **admin.crt**, **admin.key**, and **ca.crt** on the master node. @@ -535,8 +525,6 @@ Perform registration in the GitLab Runner container. Currently, interactive regi ![register-gitlab-runner](figures/15.register-gitlab-runner.jpg) - - Upload the prepared **gitlab-runner-helper** image to the private image repository in advance, go to the GitLab Runner container, and modify the configuration file. ```shell @@ -564,7 +552,7 @@ Upload the prepared **gitlab-runner-helper** image to the private image reposito # kubectl edit configmaps coredns -n kube-system ``` -![dns](figures/18.dns-config.png) + ![dns](figures/18.dns-config.png) 3. Restart the CoreDNS service. @@ -577,12 +565,8 @@ Upload the prepared **gitlab-runner-helper** image to the private image reposito Return to the GitLab web IDE and choose **CI/CD** > **Editor** > **Create new CI/CD pipeline**. - - - Compile the YAML file as follows: ![yaml](figures/20.yaml.png) - Choose **Pipelines** and view the status. - - diff --git a/docs/en/docs/Embedded/container-build-guide.md b/docs/en/docs/Embedded/container-build-guide.md index 859bc03c1446b73c6504cec89e77059d5d074e45..082d3fa245711fcc53961d1f3966d3f5728b595c 100644 --- a/docs/en/docs/Embedded/container-build-guide.md +++ b/docs/en/docs/Embedded/container-build-guide.md @@ -53,7 +53,7 @@ sudo yum install docker Run the `docker pull` command to pull the image from Huawei Cloud to the host machine: ``` -docker pull swr.cn-north-4.myhuaweicloud.com/openeuler-embedded/openeuler-container:lastest +docker pull swr.cn-north-4.myhuaweicloud.com/openeuler-embedded/openeuler-container:22.03-lts ``` ### Preparing the Container Build Environment @@ -65,7 +65,7 @@ docker pull swr.cn-north-4.myhuaweicloud.com/openeuler-embedded/openeuler-contai Run the docker run command to start the container. To ensure that the container can run in the background and access the Internet after being started, you are advised to run the following command to start the container: ``` -docker run -idt --network host swr.cn-north-4.myhuaweicloud.com/openeuler-embedded/openeuler-container:lastest bash +docker run -idt --network host swr.cn-north-4.myhuaweicloud.com/openeuler-embedded/openeuler-container:22.03-lts bash ``` Parameter description: @@ -74,7 +74,7 @@ Parameter description: - -d: starts a container in daemon mode in the background. - -t: allocates a pseudo-tty and binds it to the standard input of the container. - \--network: connects the container to the network of the host machine. -- swr.cn-north-4.myhuaweicloud.com/openeuler-embedded/openeuler-container:lastest (image_name:image_version) +- swr.cn-north-4.myhuaweicloud.com/openeuler-embedded/openeuler-container:22.03-lts (image_name:image_version) - bash: method for accessing a container. #### 2. Check the ID of the started container. diff --git a/docs/en/docs/Installation/installation-guideline.md b/docs/en/docs/Installation/installation-guideline.md index 3091497256a240636160af9205f740d3ec314bf6..cbeafca567f306bb2e5d86c14daaf13b9b3c4284 100644 --- a/docs/en/docs/Installation/installation-guideline.md +++ b/docs/en/docs/Installation/installation-guideline.md @@ -30,7 +30,7 @@ Mount the ISO image of openEuler to the CD/DVD-ROM drive of the server and resta ### Installation Boot Menu -A boot menu is displayed after the system is booted using the boot medium. In addition to options for starting the installation program, some other options are available on the boot menu. During system installation, the **Test this media & install openEuler 22.03-LTS-SP3** option is selected by default. Press the arrow keys on the keyboard to change the selection, and press **Enter** when the desired option is highlighted. +A boot menu is displayed after the system is booted using the boot medium. In addition to options for starting the installation program, some other options are available on the boot menu. During system installation, the **Test this media & install openEuler 22.03-LTS-SP3** option is selected by default. If you want to select an option other than the default option, use the "↑" and "↓" arrow keys on the keyboard to make the selection and press Enter when the option is highlighted. >![](./public_sys-resources/icon-note.gif) **Note** > diff --git a/docs/en/docs/Installation/installation-preparations.md b/docs/en/docs/Installation/installation-preparations.md index 8e2d04198ad44a4bc1a047acd5c37b756e53655a..b13f339bf95fc497696cc1f72a28fbd6f58f3217 100644 --- a/docs/en/docs/Installation/installation-preparations.md +++ b/docs/en/docs/Installation/installation-preparations.md @@ -6,7 +6,7 @@ This section describes the compatibility of the hardware and software and the re Obtain the openEuler release package and verification file before the installation. -Perform the following operations to obtain the openEuler release package: +Please follow the steps below to obtain the openEuler release package and verification file: 1. Visit the [openEuler](https://www.openeuler.org/en/) website. 2. Click **Downloads**. @@ -84,7 +84,7 @@ You need to take hardware compatibility into account before installing openEuler ## Installation Requirements for VMs -To install the openEuler OS on a VM, the VM must meet the following requirements. +To install the openEuler OS on a VM, the VM must meet the following hardware compatibility and minimum hardware requirements. ### Virtualization Platform Compatibility diff --git a/docs/en/docs/Virtualization/figures/status-transition-diagram.png b/docs/en/docs/Virtualization/figures/status-transition-diagram.png index acbf4df149f57f43fbbcbb746980bd4748fb71d9..f0e9bb814b155e4abde372c93677a97f207b5475 100644 Binary files a/docs/en/docs/Virtualization/figures/status-transition-diagram.png and b/docs/en/docs/Virtualization/figures/status-transition-diagram.png differ diff --git a/docs/en/docs/desktop/figures/Cinnamon-01.png b/docs/en/docs/desktop/figures/Cinnamon-01.png new file mode 100644 index 0000000000000000000000000000000000000000..8f1dd8c6b2ef654721a92ce7b984091b7a60b455 Binary files /dev/null and b/docs/en/docs/desktop/figures/Cinnamon-01.png differ diff --git a/docs/en/docs/desktop/figures/Cinnamon-02.png b/docs/en/docs/desktop/figures/Cinnamon-02.png new file mode 100644 index 0000000000000000000000000000000000000000..f4ab1c606047753d63b42fd317d436e05bb3e081 Binary files /dev/null and b/docs/en/docs/desktop/figures/Cinnamon-02.png differ diff --git a/docs/en/docs/desktop/figures/Cinnamon-03.png b/docs/en/docs/desktop/figures/Cinnamon-03.png new file mode 100644 index 0000000000000000000000000000000000000000..b594c087d327834325773b13a6914b7b9f252bdc Binary files /dev/null and b/docs/en/docs/desktop/figures/Cinnamon-03.png differ diff --git a/docs/en/docs/desktop/figures/Cinnamon-04.png b/docs/en/docs/desktop/figures/Cinnamon-04.png new file mode 100644 index 0000000000000000000000000000000000000000..36990d16627102e3e6de16b0efdf84ae501b7a4f Binary files /dev/null and b/docs/en/docs/desktop/figures/Cinnamon-04.png differ diff --git a/docs/en/docs/desktop/figures/Cinnamon-05.png b/docs/en/docs/desktop/figures/Cinnamon-05.png new file mode 100644 index 0000000000000000000000000000000000000000..4b3819b482ebd3fdc9598de1a59a03afbf64583f Binary files /dev/null and b/docs/en/docs/desktop/figures/Cinnamon-05.png differ diff --git a/docs/en/docs/desktop/figures/Cinnamon-06.png b/docs/en/docs/desktop/figures/Cinnamon-06.png new file mode 100644 index 0000000000000000000000000000000000000000..c0210abe865c0c6d22cd93ed1f457be631cde7aa Binary files /dev/null and b/docs/en/docs/desktop/figures/Cinnamon-06.png differ diff --git a/docs/en/docs/desktop/figures/Cinnamon-07.png b/docs/en/docs/desktop/figures/Cinnamon-07.png new file mode 100644 index 0000000000000000000000000000000000000000..e88a10d5df1644180a443b4929adf3e2d756f4d2 Binary files /dev/null and b/docs/en/docs/desktop/figures/Cinnamon-07.png differ diff --git a/docs/en/docs/desktop/figures/Cinnamon-08.png b/docs/en/docs/desktop/figures/Cinnamon-08.png new file mode 100644 index 0000000000000000000000000000000000000000..40c8120544a37d05bc0040e9b84efb377e6d7048 Binary files /dev/null and b/docs/en/docs/desktop/figures/Cinnamon-08.png differ diff --git a/docs/en/docs/desktop/figures/Cinnamon-09.png b/docs/en/docs/desktop/figures/Cinnamon-09.png new file mode 100644 index 0000000000000000000000000000000000000000..1b4130f9acfec91124abc67a3f1c407349fd5d54 Binary files /dev/null and b/docs/en/docs/desktop/figures/Cinnamon-09.png differ diff --git a/docs/en/docs/desktop/figures/Cinnamon-10.png b/docs/en/docs/desktop/figures/Cinnamon-10.png new file mode 100644 index 0000000000000000000000000000000000000000..c323c13fa9614f6ac6e86a99c3d16b9c53ca1afa Binary files /dev/null and b/docs/en/docs/desktop/figures/Cinnamon-10.png differ diff --git a/docs/en/docs/desktop/figures/Cinnamon-11.png b/docs/en/docs/desktop/figures/Cinnamon-11.png new file mode 100644 index 0000000000000000000000000000000000000000..5de0e15d0df74fb9170951a1a3d9109f53010f8e Binary files /dev/null and b/docs/en/docs/desktop/figures/Cinnamon-11.png differ diff --git a/docs/en/docs/desktop/figures/Cinnamon-12.png b/docs/en/docs/desktop/figures/Cinnamon-12.png new file mode 100644 index 0000000000000000000000000000000000000000..0e22f5197045a91d36fa72d0aaf7fab639b85ec7 Binary files /dev/null and b/docs/en/docs/desktop/figures/Cinnamon-12.png differ diff --git a/docs/en/docs/desktop/figures/Cinnamon-13.png b/docs/en/docs/desktop/figures/Cinnamon-13.png new file mode 100644 index 0000000000000000000000000000000000000000..09065ff4b6b2de69c4cf88d5b021b74e3baf3582 Binary files /dev/null and b/docs/en/docs/desktop/figures/Cinnamon-13.png differ diff --git a/docs/en/docs/desktop/figures/Cinnamon-14.png b/docs/en/docs/desktop/figures/Cinnamon-14.png new file mode 100644 index 0000000000000000000000000000000000000000..4cdf44f509ce1eb7a5aefb8eb720a449c98297c1 Binary files /dev/null and b/docs/en/docs/desktop/figures/Cinnamon-14.png differ diff --git a/docs/en/docs/desktop/figures/Cinnamon-15.png b/docs/en/docs/desktop/figures/Cinnamon-15.png new file mode 100644 index 0000000000000000000000000000000000000000..a15da3f6a00d340c6e06b68e481e7c5eb21294d6 Binary files /dev/null and b/docs/en/docs/desktop/figures/Cinnamon-15.png differ diff --git a/docs/en/docs/desktop/figures/Cinnamon-16.png b/docs/en/docs/desktop/figures/Cinnamon-16.png new file mode 100644 index 0000000000000000000000000000000000000000..be8833fef87a9e9cb9d0be64b21adcb73c55c57e Binary files /dev/null and b/docs/en/docs/desktop/figures/Cinnamon-16.png differ diff --git a/docs/en/docs/desktop/figures/Cinnamon-17.png b/docs/en/docs/desktop/figures/Cinnamon-17.png new file mode 100644 index 0000000000000000000000000000000000000000..c8cc9e130cee4abb6faa6c81d3002e4b4e41741c Binary files /dev/null and b/docs/en/docs/desktop/figures/Cinnamon-17.png differ diff --git a/docs/en/docs/desktop/figures/Cinnamon-18.png b/docs/en/docs/desktop/figures/Cinnamon-18.png new file mode 100644 index 0000000000000000000000000000000000000000..81ceb2219ff8ed31341f1f884f83c159f2feb412 Binary files /dev/null and b/docs/en/docs/desktop/figures/Cinnamon-18.png differ diff --git a/docs/en/docs/desktop/figures/Cinnamon-19.png b/docs/en/docs/desktop/figures/Cinnamon-19.png new file mode 100644 index 0000000000000000000000000000000000000000..35fa5b80633ba285d88244c5315fc181ada6e64a Binary files /dev/null and b/docs/en/docs/desktop/figures/Cinnamon-19.png differ diff --git a/docs/en/docs/desktop/figures/Cinnamon-20.png b/docs/en/docs/desktop/figures/Cinnamon-20.png new file mode 100644 index 0000000000000000000000000000000000000000..bdfbe2d724929b11817fa8f2e4e172e18e297b80 Binary files /dev/null and b/docs/en/docs/desktop/figures/Cinnamon-20.png differ diff --git a/docs/en/docs/desktop/figures/Cinnamon-21.png b/docs/en/docs/desktop/figures/Cinnamon-21.png new file mode 100644 index 0000000000000000000000000000000000000000..41dcd5f2740f6c5ab306ae0f31185a1f1c591102 Binary files /dev/null and b/docs/en/docs/desktop/figures/Cinnamon-21.png differ diff --git a/docs/en/docs/desktop/figures/Cinnamon-22.png b/docs/en/docs/desktop/figures/Cinnamon-22.png new file mode 100644 index 0000000000000000000000000000000000000000..a36a20761061a5a1dca3aed461db66256241515c Binary files /dev/null and b/docs/en/docs/desktop/figures/Cinnamon-22.png differ diff --git a/docs/en/docs/desktop/figures/Cinnamon-23.png b/docs/en/docs/desktop/figures/Cinnamon-23.png new file mode 100644 index 0000000000000000000000000000000000000000..87d8c4e303a990c3735b5f8ab18960c0f7b74e17 Binary files /dev/null and b/docs/en/docs/desktop/figures/Cinnamon-23.png differ diff --git a/docs/en/docs/desktop/figures/Cinnamon-24.png b/docs/en/docs/desktop/figures/Cinnamon-24.png new file mode 100644 index 0000000000000000000000000000000000000000..c163b1b241db5c913064f4e7d73229d78c30863a Binary files /dev/null and b/docs/en/docs/desktop/figures/Cinnamon-24.png differ diff --git a/docs/en/docs/desktop/figures/Cinnamon-25.png b/docs/en/docs/desktop/figures/Cinnamon-25.png new file mode 100644 index 0000000000000000000000000000000000000000..135f8aae40f03bf371d802ec484a5b2a3313a0f8 Binary files /dev/null and b/docs/en/docs/desktop/figures/Cinnamon-25.png differ diff --git a/docs/en/docs/desktop/figures/Cinnamon-26.png b/docs/en/docs/desktop/figures/Cinnamon-26.png new file mode 100644 index 0000000000000000000000000000000000000000..fd659ed83107754abe99dc6a6caca798272eb5e5 Binary files /dev/null and b/docs/en/docs/desktop/figures/Cinnamon-26.png differ diff --git a/docs/en/docs/desktop/figures/Cinnamon-27.png b/docs/en/docs/desktop/figures/Cinnamon-27.png new file mode 100644 index 0000000000000000000000000000000000000000..8a66c6e683fa7ac2ad506871cc2489c8884516ba Binary files /dev/null and b/docs/en/docs/desktop/figures/Cinnamon-27.png differ diff --git a/docs/en/docs/desktop/figures/Cinnamon-28.png b/docs/en/docs/desktop/figures/Cinnamon-28.png new file mode 100644 index 0000000000000000000000000000000000000000..08b73e344e740f3c5c8bb473f422aad6cb13bc2a Binary files /dev/null and b/docs/en/docs/desktop/figures/Cinnamon-28.png differ diff --git a/docs/en/docs/desktop/figures/Cinnamon-29.png b/docs/en/docs/desktop/figures/Cinnamon-29.png new file mode 100644 index 0000000000000000000000000000000000000000..474ac9b05c82e7b7a144a63403a7a11691603e9f Binary files /dev/null and b/docs/en/docs/desktop/figures/Cinnamon-29.png differ diff --git a/docs/en/docs/desktop/figures/Cinnamon-30-0.png b/docs/en/docs/desktop/figures/Cinnamon-30-0.png new file mode 100644 index 0000000000000000000000000000000000000000..417679dbf2647fea9da0c5a75b5a7b55b8d77c60 Binary files /dev/null and b/docs/en/docs/desktop/figures/Cinnamon-30-0.png differ diff --git a/docs/en/docs/desktop/figures/Cinnamon-30-1.png b/docs/en/docs/desktop/figures/Cinnamon-30-1.png new file mode 100644 index 0000000000000000000000000000000000000000..04c7e4f94c2d50cd0f7bef07cda2d0f8c2d3350e Binary files /dev/null and b/docs/en/docs/desktop/figures/Cinnamon-30-1.png differ diff --git a/docs/en/docs/desktop/figures/Cinnamon-31.png b/docs/en/docs/desktop/figures/Cinnamon-31.png new file mode 100644 index 0000000000000000000000000000000000000000..448c86f7fa7c71e6248d4dd4a1be9930dd1e250b Binary files /dev/null and b/docs/en/docs/desktop/figures/Cinnamon-31.png differ diff --git a/docs/en/docs/desktop/figures/Cinnamon-32.png b/docs/en/docs/desktop/figures/Cinnamon-32.png new file mode 100644 index 0000000000000000000000000000000000000000..8339778befa1a56738520c4b2af3210c1a5919fd Binary files /dev/null and b/docs/en/docs/desktop/figures/Cinnamon-32.png differ diff --git a/docs/en/docs/desktop/figures/Cinnamon-33.png b/docs/en/docs/desktop/figures/Cinnamon-33.png new file mode 100644 index 0000000000000000000000000000000000000000..bfea68e17fae43eee5cbdd0ffe2fd27203d1e6c0 Binary files /dev/null and b/docs/en/docs/desktop/figures/Cinnamon-33.png differ diff --git a/docs/en/docs/desktop/figures/Cinnamon-34.png b/docs/en/docs/desktop/figures/Cinnamon-34.png new file mode 100644 index 0000000000000000000000000000000000000000..02a60e270c1e6c6c0274c1694ac537bd1b3e9747 Binary files /dev/null and b/docs/en/docs/desktop/figures/Cinnamon-34.png differ diff --git a/docs/en/docs/desktop/figures/Cinnamon-35-0.png b/docs/en/docs/desktop/figures/Cinnamon-35-0.png new file mode 100644 index 0000000000000000000000000000000000000000..25e609e15f52c12e278120c75bf35fbb8bc1ec51 Binary files /dev/null and b/docs/en/docs/desktop/figures/Cinnamon-35-0.png differ diff --git a/docs/en/docs/desktop/figures/Cinnamon-35-1.png b/docs/en/docs/desktop/figures/Cinnamon-35-1.png new file mode 100644 index 0000000000000000000000000000000000000000..40b206b854ed641c731a7dc592394a8caee82b98 Binary files /dev/null and b/docs/en/docs/desktop/figures/Cinnamon-35-1.png differ diff --git a/docs/en/docs/desktop/figures/Cinnamon-36.png b/docs/en/docs/desktop/figures/Cinnamon-36.png new file mode 100644 index 0000000000000000000000000000000000000000..62df4366d53f1d4a660200729c4bdbb87d6eb512 Binary files /dev/null and b/docs/en/docs/desktop/figures/Cinnamon-36.png differ diff --git a/docs/en/docs/desktop/figures/Cinnamon-37.png b/docs/en/docs/desktop/figures/Cinnamon-37.png new file mode 100644 index 0000000000000000000000000000000000000000..c2c81d26d7dd32d032001f0d4471ff8e031dd4e5 Binary files /dev/null and b/docs/en/docs/desktop/figures/Cinnamon-37.png differ diff --git a/docs/en/docs/desktop/figures/Cinnamon-38.png b/docs/en/docs/desktop/figures/Cinnamon-38.png new file mode 100644 index 0000000000000000000000000000000000000000..59a886be863bc6dc903d0e53e8e8c29a87e98da4 Binary files /dev/null and b/docs/en/docs/desktop/figures/Cinnamon-38.png differ diff --git a/docs/en/docs/desktop/figures/Cinnamon-39.png b/docs/en/docs/desktop/figures/Cinnamon-39.png new file mode 100644 index 0000000000000000000000000000000000000000..01dff5dd4243eb676b091eeba0fb2b395443ea68 Binary files /dev/null and b/docs/en/docs/desktop/figures/Cinnamon-39.png differ diff --git a/docs/en/docs/desktop/figures/Cinnamon-40.png b/docs/en/docs/desktop/figures/Cinnamon-40.png new file mode 100644 index 0000000000000000000000000000000000000000..0e7dd84857faf8c14505109c825a89a684acf65d Binary files /dev/null and b/docs/en/docs/desktop/figures/Cinnamon-40.png differ diff --git a/docs/en/docs/desktop/figures/Cinnamon-41-0.png b/docs/en/docs/desktop/figures/Cinnamon-41-0.png new file mode 100644 index 0000000000000000000000000000000000000000..1b1d6c45c270e28e039fe644fb5ce3e62f206e46 Binary files /dev/null and b/docs/en/docs/desktop/figures/Cinnamon-41-0.png differ diff --git a/docs/en/docs/desktop/figures/Cinnamon-41-1.png b/docs/en/docs/desktop/figures/Cinnamon-41-1.png new file mode 100644 index 0000000000000000000000000000000000000000..e55c802668da92e068cf05401254389ebd94deee Binary files /dev/null and b/docs/en/docs/desktop/figures/Cinnamon-41-1.png differ diff --git a/docs/en/docs/desktop/figures/Cinnamon-42.png b/docs/en/docs/desktop/figures/Cinnamon-42.png new file mode 100644 index 0000000000000000000000000000000000000000..52b2c1842d16ff356113d2c2870766a7343366c7 Binary files /dev/null and b/docs/en/docs/desktop/figures/Cinnamon-42.png differ diff --git a/docs/en/docs/desktop/figures/Cinnamon-43.png b/docs/en/docs/desktop/figures/Cinnamon-43.png new file mode 100644 index 0000000000000000000000000000000000000000..244678f92c7bc1656f15d51c4ae55176ec4efe20 Binary files /dev/null and b/docs/en/docs/desktop/figures/Cinnamon-43.png differ diff --git a/docs/en/docs/desktop/figures/Cinnamon-44.png b/docs/en/docs/desktop/figures/Cinnamon-44.png new file mode 100644 index 0000000000000000000000000000000000000000..7f3aede19de472562486c8660b194c044e034131 Binary files /dev/null and b/docs/en/docs/desktop/figures/Cinnamon-44.png differ diff --git a/docs/en/docs/desktop/figures/Cinnamon-45.png b/docs/en/docs/desktop/figures/Cinnamon-45.png new file mode 100644 index 0000000000000000000000000000000000000000..18096cf5c16ab1e74f4c4c6f39f27717f807fcab Binary files /dev/null and b/docs/en/docs/desktop/figures/Cinnamon-45.png differ diff --git a/docs/en/docs/desktop/figures/Cinnamon-46.png b/docs/en/docs/desktop/figures/Cinnamon-46.png new file mode 100644 index 0000000000000000000000000000000000000000..7f77937fab733bda0b3a4cb3667b318e50bd53c4 Binary files /dev/null and b/docs/en/docs/desktop/figures/Cinnamon-46.png differ diff --git a/docs/en/docs/desktop/figures/Cinnamon-47.png b/docs/en/docs/desktop/figures/Cinnamon-47.png new file mode 100644 index 0000000000000000000000000000000000000000..09999c9562fda0498366a8cecd84f55b846f9928 Binary files /dev/null and b/docs/en/docs/desktop/figures/Cinnamon-47.png differ diff --git a/docs/en/docs/desktop/figures/Cinnamon-48.png b/docs/en/docs/desktop/figures/Cinnamon-48.png new file mode 100644 index 0000000000000000000000000000000000000000..35c56940e1bea933331fc2d1f3c27d1686193753 Binary files /dev/null and b/docs/en/docs/desktop/figures/Cinnamon-48.png differ diff --git a/docs/en/docs/desktop/figures/Cinnamon-49.png b/docs/en/docs/desktop/figures/Cinnamon-49.png new file mode 100644 index 0000000000000000000000000000000000000000..68ecda0b9cd69a23868177898d6e843d7b2575a0 Binary files /dev/null and b/docs/en/docs/desktop/figures/Cinnamon-49.png differ diff --git a/docs/en/docs/desktop/figures/Cinnamon-50.png b/docs/en/docs/desktop/figures/Cinnamon-50.png new file mode 100644 index 0000000000000000000000000000000000000000..758ed6664e78928bd0a81ade29fb5aa132412901 Binary files /dev/null and b/docs/en/docs/desktop/figures/Cinnamon-50.png differ diff --git a/docs/en/docs/desktop/figures/Cinnamon-51.png b/docs/en/docs/desktop/figures/Cinnamon-51.png new file mode 100644 index 0000000000000000000000000000000000000000..7f79428bd391f4efd578053da81bbbe25d30a9d2 Binary files /dev/null and b/docs/en/docs/desktop/figures/Cinnamon-51.png differ diff --git a/docs/en/docs/desktop/figures/Cinnamon-52.png b/docs/en/docs/desktop/figures/Cinnamon-52.png new file mode 100644 index 0000000000000000000000000000000000000000..27dd6632ee00eba7926259786d2a8ee2ce4376ba Binary files /dev/null and b/docs/en/docs/desktop/figures/Cinnamon-52.png differ diff --git a/docs/en/docs/desktop/figures/Cinnamon-53.png b/docs/en/docs/desktop/figures/Cinnamon-53.png new file mode 100644 index 0000000000000000000000000000000000000000..cb6bf8ca0f4c276d40fb5c1d86cb949b40fdfbd0 Binary files /dev/null and b/docs/en/docs/desktop/figures/Cinnamon-53.png differ diff --git a/docs/en/docs/desktop/figures/Cinnamon-54.png b/docs/en/docs/desktop/figures/Cinnamon-54.png new file mode 100644 index 0000000000000000000000000000000000000000..5ed38e73d67998436be559b295dcaa0303983cf9 Binary files /dev/null and b/docs/en/docs/desktop/figures/Cinnamon-54.png differ diff --git "a/docs/zh/docs/Administration/\346\237\245\347\234\213\347\263\273\347\273\237\344\277\241\346\201\257.md" "b/docs/zh/docs/Administration/\346\237\245\347\234\213\347\263\273\347\273\237\344\277\241\346\201\257.md" index be88212480663b19f6093883b1bf2af63391b6cc..b2a8384cb371c517b43ebd746ac61492457b72a8 100644 --- "a/docs/zh/docs/Administration/\346\237\245\347\234\213\347\263\273\347\273\237\344\277\241\346\201\257.md" +++ "b/docs/zh/docs/Administration/\346\237\245\347\234\213\347\263\273\347\273\237\344\277\241\346\201\257.md" @@ -24,7 +24,7 @@ 查看CPU信息,命令如下: ``` - $ lscpu + # lscpu ``` 查看内存信息,命令如下: diff --git "a/docs/zh/docs/ApplicationDev/\344\275\277\347\224\250GCC\347\274\226\350\257\221.md" "b/docs/zh/docs/ApplicationDev/\344\275\277\347\224\250GCC\347\274\226\350\257\221.md" index 21f9fb2507ca95ae3adc1f9c133748c7f8661afd..699b9d5b9507045fc934ccd52bdd96593f480cf3 100644 --- "a/docs/zh/docs/ApplicationDev/\344\275\277\347\224\250GCC\347\274\226\350\257\221.md" +++ "b/docs/zh/docs/ApplicationDev/\344\275\277\347\224\250GCC\347\274\226\350\257\221.md" @@ -126,7 +126,7 @@ _options_ :编译选项。 _filenames_ :文件名称。 -GCC是一个功能强大的编译器,其 _options_ 参数取值很多,但有些大部分并不常用,常用的 _options_ 取值如[表2](#table1342946175212)所示。 +GCC是一个功能强大的编译器,其 _options_ 参数取值很多,但大部分并不常用,常用的 _options_ 取值如[表2](#table1342946175212)所示。 **表 2** GCC常用的编译选项 @@ -262,7 +262,7 @@ GCC是一个功能强大的编译器,其 _options_ 参数取值很多,但有 - 资源利用不一样 - 静态库为生成的可执行文件的一部分,而动态库为单独的文件。所以使用静态库和和动态库的可执行文件大小和占用的磁盘空间大小不一样,导致资源利用不一样。 + 静态库为生成的可执行文件的一部分,而动态库为单独的文件。所以使用静态库和动态库的可执行文件大小和占用的磁盘空间大小不一样,导致资源利用不一样。 - 扩展性与兼容性不一样 diff --git "a/docs/zh/docs/ApplicationDev/\346\236\204\345\273\272RPM\345\214\205.md" "b/docs/zh/docs/ApplicationDev/\346\236\204\345\273\272RPM\345\214\205.md" index ae65cdd1c2c30b8eb4a196ccb94b1d31802f6085..e27b26af3b83185caa848ff664e2c8ba6e60eee6 100644 --- "a/docs/zh/docs/ApplicationDev/\346\236\204\345\273\272RPM\345\214\205.md" +++ "b/docs/zh/docs/ApplicationDev/\346\236\204\345\273\272RPM\345\214\205.md" @@ -22,64 +22,14 @@ rpmbuild 内容相关的说明如下: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

目录

-

宏代码

-

名称

-

功能

-

~/rpmbuild/BUILD

-

%_builddir

-

构建目录

-

源码包被解压至此,并在该目录的子目录完成编译

-

~/rpmbuild/RPMS

-

%_rpmdir

-

标准 RPM 包目录

-

生成/保存二进制 RPM 包

-

~/rpmbuild/SOURCES

-

%_sourcedir

-

源代码目录

-

保存源码包(如 .tar 包)和所有 patch 补丁

-

~/rpmbuild/SPECS

-

%_specdir

-

Spec 文件目录

-

保存 RPM 包配置(.spec)文件

-

~/rpmbuild/SRPMS

-

%_srcrpmdir

-

源代码 RPM 包目录

-

生成/保存源码 RPM 包(SRPM)

-
+| 目录 | 宏代码 | 名称 | 功能 | +|--------------------|--------------|-----------------|-------------------------------------------| +|~/rpmbuild/BUILD |%_builddir |构建目录 |源码包被解压至此,并在该目录的子目录完成编译 | +|~/rpmbuild/RPMS |%_rpmdir |标准 RPM 包目录 |生成/保存二进制 RPM 包 | +|~/rpmbuild/SOURCES |%_sourcedir |源代码目录 |保存源码包(如 .tar 包)和所有 patch 补丁 | +|~/rpmbuild/SPECS |%_specdir |Spec 文件目录 |保存 RPM 包配置(.spec)文件 | +|~/rpmbuild/SPECS |%_srcrpmdir |源代码 RPM 包目录 |生成/保存源码 RPM 包(SRPM) | +|~/rpmbuild/BUILDROOT|%_buildrootdir|最终安装目录 |保存%install阶段安装的文件 | SPECS 下是RPM包的配置文件,是RPM打包的“图纸”,这个文件会告诉rpmbuild命令如何去打包。“宏代码”这一列就可以在SPEC文件中用来代指所对应的目录,类似于编程语言中的宏或全局变量。 diff --git "a/docs/zh/docs/ClusterDeployment/K8s+iSulad\347\216\257\345\242\203\351\203\250\347\275\262.md" "b/docs/zh/docs/ClusterDeployment/K8s+iSulad\347\216\257\345\242\203\351\203\250\347\275\262.md" index 1526f1ebbdf8c201db196eceadcb7c32def05483..7f172e1cc734acbbc05ee836655cf2d2068a422c 100644 --- "a/docs/zh/docs/ClusterDeployment/K8s+iSulad\347\216\257\345\242\203\351\203\250\347\275\262.md" +++ "b/docs/zh/docs/ClusterDeployment/K8s+iSulad\347\216\257\345\242\203\351\203\250\347\275\262.md" @@ -126,7 +126,8 @@ 7. 添加配置文件。 - 配置文件br_netfilte.service应该放在systemd的service目录,一般在/usr/lib/systemd/system。 + 配置文件br_netfilter.service应该放在systemd的service目录,一般在/usr/lib/systemd/system。 + ```shell # vim br_netfilte.service @@ -158,84 +159,85 @@ 1. 使用yum install安装软件包。 kubernetes相关的组件在EPOL中,使用yum安装前需要在yum源中配置EPOL源。 - ```shell - # yum install -y kubernetes-kubeadm - # yum install -y kubernetes-client - # yum install -y kubernetes-kubelet - # yum install -y iSulad + + ```shell + # yum install -y kubernetes-kubeadm + # yum install -y kubernetes-client + # yum install -y kubernetes-kubelet + # yum install -y iSulad ``` 2. 设置kubelet开机启动。 - ```shell - # systemctl enable kubelet - ``` + ```shell + # systemctl enable kubelet + ``` ## 修改isulad配置 1. 进入/etc/isulad,修改daemon.json文件。 - ```shell - # vi /etc/isulad/daemon.json - ``` + ```shell + # vi /etc/isulad/daemon.json + ``` 2. 修改并添加配置文件中的内容。 - ```json -{ - "group": "isula", - "default-runtime": "runc", - "graph": "/var/lib/isulad", - "state": "/var/run/isulad", - "engine": "lcr", - "log-level": "ERROR", - "pidfile": "/var/run/isulad.pid", - "log-opts": { - "log-file-mode": "0600", - "log-path": "/var/lib/isulad", - "max-file": "1", - "max-size": "30KB" - }, - "log-driver": "stdout", - "container-log": { - "driver": "json-file" - }, - "hook-spec": "/etc/default/isulad/hooks/default.json", - "start-timeout": "2m", - "storage-driver": "overlay2", - "storage-opts": [ - "overlay2.override_kernel_check=true" - ], - "registry-mirrors": [ - "docker.io" - ], - "insecure-registries": [ - "k8s.gcr.io", - "quay.io", - "oci.inhuawei.com", - "rnd-dockerhub.huawei.com", - "registry.aliyuncs.com", - "【本地私有镜像仓IP】" - ], - "pod-sandbox-image": "k8s.gcr.io/pause:3.2", - "native.umask": "normal", - "network-plugin": "cni", - "cni-bin-dir": "/opt/cni/bin", - "cni-conf-dir": "/etc/cni/net.d", - "image-layer-check": false, - "use-decrypted-key": true, - "insecure-skip-verify-enforce": false, - "cri-runtimes": { - "kata": "io.containerd.kata.v2" - } -} - ``` + ```json + { + "group": "isula", + "default-runtime": "runc", + "graph": "/var/lib/isulad", + "state": "/var/run/isulad", + "engine": "lcr", + "log-level": "ERROR", + "pidfile": "/var/run/isulad.pid", + "log-opts": { + "log-file-mode": "0600", + "log-path": "/var/lib/isulad", + "max-file": "1", + "max-size": "30KB" + }, + "log-driver": "stdout", + "container-log": { + "driver": "json-file" + }, + "hook-spec": "/etc/default/isulad/hooks/default.json", + "start-timeout": "2m", + "storage-driver": "overlay2", + "storage-opts": [ + "overlay2.override_kernel_check=true" + ], + "registry-mirrors": [ + "docker.io" + ], + "insecure-registries": [ + "k8s.gcr.io", + "quay.io", + "oci.inhuawei.com", + "rnd-dockerhub.huawei.com", + "registry.aliyuncs.com", + "【本地私有镜像仓IP】" + ], + "pod-sandbox-image": "k8s.gcr.io/pause:3.2", + "native.umask": "normal", + "network-plugin": "cni", + "cni-bin-dir": "/opt/cni/bin", + "cni-conf-dir": "/etc/cni/net.d", + "image-layer-check": false, + "use-decrypted-key": true, + "insecure-skip-verify-enforce": false, + "cri-runtimes": { + "kata": "io.containerd.kata.v2" + } + } + ``` 3. 重启isulad服务。 - ```shell - # systemctl restart isulad - ``` + ```shell + # systemctl restart isulad + ``` ## 加载isulad镜像 @@ -245,8 +247,8 @@ # kubeadm config images list ``` - 注意对应的版本号,输出结果如图所示。 -![](figures/1.%E6%9F%A5%E7%9C%8B%E9%9C%80%E8%A6%81%E9%95%9C%E5%83%8F.png) + 注意对应的版本号,输出结果如图所示。 + ![](figures/1.%E6%9F%A5%E7%9C%8B%E9%9C%80%E8%A6%81%E9%95%9C%E5%83%8F.png) 2. 使用isula拉取所需镜像。 @@ -382,4 +384,4 @@ pod-network-cidr 指定pod分配的ip段 ```shell # kubeadm reset -``` \ No newline at end of file +``` diff --git "a/docs/zh/docs/ClusterDeployment/\346\224\257\346\214\201\345\216\237\347\224\237\345\274\200\345\217\221\347\216\257\345\242\203\346\211\247\350\241\214\346\234\272\351\233\206\347\276\244\351\203\250\347\275\262\346\214\207\345\257\274.md" "b/docs/zh/docs/ClusterDeployment/\346\224\257\346\214\201\345\216\237\347\224\237\345\274\200\345\217\221\347\216\257\345\242\203\346\211\247\350\241\214\346\234\272\351\233\206\347\276\244\351\203\250\347\275\262\346\214\207\345\257\274.md" index 7f0acb33d3f754b6aed57a584a20aa6193f2bf14..cf2ad1d6c11054567fcf73ffa6f38883555c678d 100644 --- "a/docs/zh/docs/ClusterDeployment/\346\224\257\346\214\201\345\216\237\347\224\237\345\274\200\345\217\221\347\216\257\345\242\203\346\211\247\350\241\214\346\234\272\351\233\206\347\276\244\351\203\250\347\275\262\346\214\207\345\257\274.md" +++ "b/docs/zh/docs/ClusterDeployment/\346\224\257\346\214\201\345\216\237\347\224\237\345\274\200\345\217\221\347\216\257\345\242\203\346\211\247\350\241\214\346\234\272\351\233\206\347\276\244\351\203\250\347\275\262\346\214\207\345\257\274.md" @@ -52,20 +52,20 @@ 1. 修改主机名,以其中一台机器为例。 - ``` + ```shell # hostnamectl set-hostname lab1 # sudo -i ``` 2. 配置主机名解析,编辑三台服务器的/etc/hosts文件。 - ``` + ````shell # vim /etc/hosts ``` 3. 在hosts文件中添加以下内容(IP+主机名) - ``` + ````shell 197.xxx.xxx.xxx lab1 197.xxx.xxx.xxx lab2 197.xxx.xxx.xxx lab3 @@ -75,27 +75,27 @@ 1. 关闭防火墙。 - ``` + ````shell # systemctl stop firewalld # systemctl disable firewalld ``` 2. 禁用selinux。 - ``` + ````shell # setenforce 0 ``` 3. 关闭系统swap。 - ``` + ````shell # swapoff -a # sed -ri 's/.*swap.*/#&/' /etc/fstab ``` 4. 网络配置,开启相应的转发机制。 - ``` + ````shell # cat > /etc/sysctl.d/kubernetes.conf < - 如果当前使用物理光盘安装操作系统,且在重启过程中安装光盘没有自动弹出,请手动取出光盘,则可以直接进入openEuler命令行登录界面。 > - 如果当前使用虚拟光驱安装操作系统,则需要修改服务器的启动项为“硬盘”,然后重启服务器,则可以直接进入openEuler命令行登录界面。 -### 文本模式安装 +## 文本模式安装 + +>![](./public_sys-resources/icon-note.gif) **说明:** +> +>- UEFI启动模式下,选择安装模式,按“e”进入参数编辑界面,在linux启动参数行末尾添加inst.text,按“ctrl+x”,进入文本安装。 +>- Legacy启动模式下,选择安装模式,按“Tab”进入参数编辑界面,添加启动参数inst.text,按回车键,进入文本安装。 可以通过界面提示操作键盘进行文本程序安装。如【图1】所示。 diff --git "a/docs/zh/docs/Kubernetes/\345\207\206\345\244\207\350\257\201\344\271\246.md" "b/docs/zh/docs/Kubernetes/\345\207\206\345\244\207\350\257\201\344\271\246.md" index 35b9bbba66c05fd4ef5bcfcbd1f4cc3b9dcb85d0..f43ee703cc46d0b26e27b17cf8dc313e0e9a20e1 100644 --- "a/docs/zh/docs/Kubernetes/\345\207\206\345\244\207\350\257\201\344\271\246.md" +++ "b/docs/zh/docs/Kubernetes/\345\207\206\345\244\207\350\257\201\344\271\246.md" @@ -6,7 +6,7 @@ ## 编译安装 CFSSL -编译安装 CFSSL 的参考命令如下(需要互联网下载权限,需要配置代理的请先完成配置): +编译安装 CFSSL 的参考命令如下(需要互联网下载权限,需要配置代理的请先完成配置,需要配置 go语言环境) ```bash wget --no-check-certificate https://github.com/cloudflare/cfssl/archive/v1.5.0.tar.gz diff --git "a/docs/zh/docs/Memory-fabric/Memory Fabric\347\224\250\346\210\267\346\214\207\345\215\227.md" "b/docs/zh/docs/Memory-fabric/Memory Fabric\347\224\250\346\210\267\346\214\207\345\215\227.md" new file mode 100644 index 0000000000000000000000000000000000000000..ee8d1428d7de59b77fc7b21b0cc64ba1571f540b --- /dev/null +++ "b/docs/zh/docs/Memory-fabric/Memory Fabric\347\224\250\346\210\267\346\214\207\345\215\227.md" @@ -0,0 +1,97 @@ +# Memory Fabric用户文档 + +- [简介](简介.md) +- [部署](部署.md) +- [启动](启动.md) +- [接口](接口.md) + +# 简介 + +内存池套件是基于内存型介质和新型网络技术,构建高性能的分布式内存资源池,并通过BigMemory、MemPlog、MemKV等语义对应用提供服务。 + +内存池套件使用和管理的资源来自计算节点或者单独资源节点提供的可共享的DRAM/Persistent Memory/内存盘等(不支持普通disk直接互联池化),结合新型互联协议(RDMA,CXL,UBUS)us级传输时延,期望内存池套件通过极低的软件时延和节点CPU开销带来整体性能提升。 + +# 部署 + +Memory Fabric需要根据节点类型、资源分布情况和应用需求做到多场景应用集成部署,具体描述如下: + +- 计算和MF资源共节点时支持client和server同节点部署,如[图1](#fig17349154610267)node1、node2所示。 +- 资源独立提供时也支持client、server分离节点部署,如[图1](#fig17349154610267)node3、node4所示。 +- 支持同节点部署和分离节点部署两种场景混合部署。 +- 节点内支持多client,也支持多server模式部署,如[图1](#fig17349154610267)node2所示。 +- client与同节点的server通信使用IPC,配置支持连接远端server时使用RPC通信。 +- server端接入集群管理服务中,用于统一的节点编号和资源信息广播。 + +**图 1** 集成部署 +![](images/IntegratedDeployment.png) + +# 启动 + +Memory Fabric启动分为server和client两个部分。在节点上优先启动server端,完成集群注册、监控流程,然后启动本地资源注册\(总容量通过配置文件获取\)和通信建链流程,初始化完成后支持本地多client与server建立连接,可对外启动业务服务。 + +# 接口 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

接口

+

说明

+

int BM_Init(char *ockPath, int flags);

+

int BM_InitWithExtAttr(char *ockPath, int flags, void *attr); int BM_Exit(void);

+

初始化

+

带属性的初始化

+

退出

+

int BM_CreateNSSec(const char *poolName, const char *ns, int attribute, const char *secId);

+

int BM_DestroyNSSec(const char *poolName, const char *ns, const char *secId);

+

int BM_QueryNSCache(QueryNsCache *buff, size_t buffLen);

+

Namespace创建和销毁、查询

+

int BM_AllocSec(BmInfo *bminfo, size_t size, int flags, BmAffinity* affinity);

+

int BM_FreeSec(BmInfo *bminfo, int flags);

+

int BM_BatchFreeSec(char *bmIdArray[], int num, int flags, const char *ns, const char *secId);

+

Bigmemory对象申请和释放

+

int BM_ExpandSec(BmInfo *bminfo, size_t size, int flags);

+

bigMemory扩容

+

int BM_MapSec(BmInfo *bminfo, int prot, int flags, void **ptr);

+

int BM_Unmap(char *bmId, void *ptr);

+

bigMemory到连续虚拟空间map和unmap

+

int BM_CopySec(BmInfo *srcBM, size_t srcOffset, BmInfo *dstBM, size_t dstOffset, size_t length, int flags);

+

bigMemory对象间拷贝

+

int BM_SpecificObjSwapInSec(DiskFileDesc *file, BmInfo *bminfo, int flags, size_t offset, size_t length);

+

文件内容换入bigmemory对象

+

int BM_ReadSec(BmInfo *bminfo, size_t offset, size_t length, void *buffer, int flags);

+

int BM_WriteSec(BmInfo *bminfo, size_t offset, size_t length, const void *buffer, int flags);

+

Bigmemory读写

+

int BM_GatherSec(intptr_t *inputInfo, BmOperatorCode operatorCode, int flags, BmInfo *bminfo, size_t *bmLen);

+

聚合操作接口

+
+ diff --git a/docs/zh/docs/Memory-fabric/images/.keep b/docs/zh/docs/Memory-fabric/images/.keep new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/docs/zh/docs/Memory-fabric/images/IntegratedDeployment.png b/docs/zh/docs/Memory-fabric/images/IntegratedDeployment.png new file mode 100644 index 0000000000000000000000000000000000000000..0fc7d1b0a3d3cf31a2da0bff64bf03f576234771 Binary files /dev/null and b/docs/zh/docs/Memory-fabric/images/IntegratedDeployment.png differ diff --git "a/docs/zh/docs/Releasenotes/\345\217\202\344\270\216\350\264\241\347\214\256.md" "b/docs/zh/docs/Releasenotes/\345\217\202\344\270\216\350\264\241\347\214\256.md" index 91db4d6470c6db9db268c361ffc239daa6066d62..c195e0007ca6e506166a9f46703349303c62fede 100644 --- "a/docs/zh/docs/Releasenotes/\345\217\202\344\270\216\350\264\241\347\214\256.md" +++ "b/docs/zh/docs/Releasenotes/\345\217\202\344\270\216\350\264\241\347\214\256.md" @@ -14,7 +14,7 @@ openEuler将拥有共同兴趣的人们聚在一起,组成了不同的特别 ## 文档 -你不仅可以通过提交代码参与社区贡献,我们也欢迎你反馈遇到的问题、困难,或者对文档易用性、完整性的改进建议等。例如获取软件或文档过程中的问题,使用系统过程中的难点。欢迎关注并改进[openEuler社区](https://openeuler.org/zh/)的文档模块。 +你不仅可以通过提交代码参与社区贡献,我们也欢迎你反馈遇到的问题、困难,或者对文档易用性、完整性的改进建议等。例如获取软件或文档过程中的问题,使用系统过程中的难点。欢迎关注并改进[openEuler社区](https://www.openeuler.org/zh/)的文档模块。 ## IRC diff --git "a/docs/zh/docs/SecHarden/SELinux\351\205\215\347\275\256.md" "b/docs/zh/docs/SecHarden/SELinux\351\205\215\347\275\256.md" index c817f132fa32f46ec2f5357c557e8c916b7feed8..fae4026bd0b79e258ed33799c30e9092f59f6433 100644 --- "a/docs/zh/docs/SecHarden/SELinux\351\205\215\347\275\256.md" +++ "b/docs/zh/docs/SecHarden/SELinux\351\205\215\347\275\256.md" @@ -103,6 +103,115 @@ openEuler默认使用SELinux提升系统安全性。SELinux分为三种模式: Max kernel policy version: 33 ``` +## 策略添加 +- 从audit日志中获取并添加缺失策略(需要audit服务开启且audit日志中已经存在SELinux访问拒绝日志)。 + 1. 查询audit日志中是否有SELinux访问拒绝日志,其中audit日志的路径视具体情况决定。 + ``` + # grep avc /var/log/audit/audit.log* + ``` + 2. 查询缺失规则。 + ``` + # audit2allow -a /var/log/audit/audit.log* + ``` + 3. 根据缺失规则生成一个策略模块,命名为demo。 + ``` + # audit2allow -a /var/log/audit/audit.log* -M demo + ******************** IMPORTANT *********************** + To make this policy package active, execute: + semodule -i demo.pp + ``` + 4. 加载demo策略模块。 + ``` + # semodule -i demo.pp + ``` + +- 编写并添加SELinux策略模块。 + 1. 编写FC文件(涉及新增文件安全上下文需要编写)。 + ``` + # cat demo.fc + /usr/bin/example -- system_u:object_r:example_exec_t:s0 + /resource -- system_u:object_r:resource_file_t:s0 + ``` + 2. 编写TE文件(仅供参考)。 + ``` + # cat demo.te + module demo 1.0; + require + { + role unconfined_r; + role system_r; + type user_devpts_t; + type root_t; + attribute file_type; + attribute domain; + class dir { getattr search add_name create open remove_name rmdir setattr write }; + class file { entrypoint execute getattr open read map setattr write create }; + class process { sigchld rlimitinh siginh transition setcap getcap }; + class unix_stream_socket { accept bind connect listen recvfrom sendto listen create lock read write getattr setattr getopt setopt append shutdown ioctl connectto }; + class capability { chown dac_override dac_read_search }; + class chr_file { append getattr ioctl read write }; + }; + role unconfined_r types example_t; + role system_r types example_t; + type example_exec_t, file_type; + type resource_file_t, file_type; + type example_t, domain; + allow example_t user_devpts_t : chr_file { append getattr ioctl read write }; + allow example_t file_type : dir { getattr search }; + allow example_t example_exec_t : file { entrypoint execute getattr map open read }; + allow domain example_exec_t : file { execute getattr map open read }; + allow example_t example_exec_t : process { sigchld }; + allow domain example_t : process { rlimitinh siginh transition }; + allow example_t resource_file_t : file { create getattr open read setattr write }; + allow example_t root_t : dir { add_name create getattr open remove_name rmdir search setattr write }; + allow example_t example_t : unix_stream_socket { accept append bind connect create getattr getopt ioctl listen listen lock read recvfrom sendto setattr setopt shutdown write }; + allow example_t domain : unix_stream_socket { connectto }; + allow example_t example_t : capability { chown dac_override dac_read_search }; + allow example_t example_t : process { getcap setcap }; + type_transition domain example_exec_t : process example_t; + type_transition example_t root_t : file resource_file_t "resource"; + ``` + 3. 编译demo.te为demo.mod。 + ``` + # checkmodule -Mmo demo.mod demo.te + ``` + 4. 打包demo.mod和demo.fc为策略模块文件。 + ``` + semodule_package -m demo.mod -f demo.fc -o demo.pp + ``` + 5. 加载策略模块。 + ``` + # semodule -i demo.pp + ``` + 6. 删除加载的策略模块。 + ``` + # semodule -r demo + libsemanage.semanage_direct_remove_key: Removing last demo module (no other demo module exists at another priority). + ``` + +## 功能验证 +- SELinux为白名单机制,未配置合理策略的模块可能会由于缺少权限无法正常运行。固对模块进行功能验证并适配合理的规则是很有必要的。 + 1. 查看audit服务是否开启。 + ``` + # systemctl status auditd + ``` + 2. 设置SELinux模式为permissive(仅打印告警而不强制执行,参考 配置说明 )。 + ``` + # getenforce + Permissive + ``` + 3. 全量跑测试模块的功能用例,查看audit日志中SELinux访问拒绝日志。 + ``` + # grep avc /var/log/audit/audit.log* + ``` + 4. 分析访问拒绝日志,并过滤出缺失的合理规则。 + ``` + type=AVC msg=audit(1596161643.271:1304): avc: denied { read } for pid=1782603 comm="smbd" name=".viminfo" dev="dm-0" ino=2488208 scontext=system_u:system_r:smbd_t:s0 tcontext=staff_u:object_r:user_home_t:s0 tclass=file permissive=1 + 表示进程smbd(安全上下文为system_u:system_r:smbd_t:s0)对文件.viminfo(安全上下文为staff_u:object_r:user_home_t:s0)执行文件读操作被权限拒绝。 + permissive=1表示当前运行的是permissive模式,该日志只记录未执行禁止。 + ``` + 4. 参考 策略添加,将缺少的合理规则补全。 + ## 注意事项 - 如用户需要使用SELinux功能,建议通过dnf升级方式将selinux-policy更新为最新版本,否则应用程序有可能无法正常运行。升级命令示例: @@ -110,5 +219,7 @@ openEuler默认使用SELinux提升系统安全性。SELinux分为三种模式: ``` dnf update selinux-policy -y ``` - + - 如果用户由于SELinux配置不当(如误删策略或未配置合理的规则或安全上下文)导致系统无法启动,可以在启动参数中添加selinux=0,关闭SELinux功能,系统即可正常启动。 + +- 开启SELinux后,会对访问行为进行权限检查,对操作系统性能会有一定程度(与运行环境访问操作频率相关)的影响。 \ No newline at end of file diff --git "a/docs/zh/docs/ShangMiFeature/\345\225\206\345\257\206\345\272\224\347\224\250\351\205\215\347\275\256.md" "b/docs/zh/docs/ShangMiFeature/\345\225\206\345\257\206\345\272\224\347\224\250\351\205\215\347\275\256.md" new file mode 100644 index 0000000000000000000000000000000000000000..1333ed77b7e1ed056329cae96075dc558158ee69 --- /dev/null +++ "b/docs/zh/docs/ShangMiFeature/\345\225\206\345\257\206\345\272\224\347\224\250\351\205\215\347\275\256.md" @@ -0,0 +1 @@ +TODO diff --git "a/docs/zh/docs/StratoVirt/\350\231\232\346\213\237\346\234\272\347\256\241\347\220\206.md" "b/docs/zh/docs/StratoVirt/\350\231\232\346\213\237\346\234\272\347\256\241\347\220\206.md" index 7ee1c61f00ab555999ee15d455cfb628feeef433..5263f27b7be67f77f0304f20e6087776b44be3d2 100644 --- "a/docs/zh/docs/StratoVirt/\350\231\232\346\213\237\346\234\272\347\256\241\347\220\206.md" +++ "b/docs/zh/docs/StratoVirt/\350\231\232\346\213\237\346\234\272\347\256\241\347\220\206.md" @@ -536,7 +536,7 @@ StratoVirt 支持对处于暂停状态(suspend)的虚拟机制作快照, <- {"execute":"stop"} -> {"event":"STOP","data":{},"timestamp":{"seconds":1583908726,"microseconds":162739}} -> {"return":{}} - + ``` 3. 确认虚拟机处于暂停状态: @@ -544,7 +544,7 @@ StratoVirt 支持对处于暂停状态(suspend)的虚拟机制作快照, ```shell <- {"execute":"query-status"} -> {"return":{"running":true,"singlestep":false,"status":"paused"}} - + ``` 4. 执行如下 QMP 命令,在任一指定的绝对路径下创建虚拟机快照,例如 /path/to/template 路径,参考命令如下: @@ -552,14 +552,14 @@ StratoVirt 支持对处于暂停状态(suspend)的虚拟机制作快照, ```shell <- {"execute":"migrate", "arguments":{"uri":"file:/path/to/template"}} -> {"return":{}} - + ``` 5. 确认快照是否创建成功。 ```shell <- {"execute":"query-migrate"} - + ``` 如果回显 {"return":{"status":"completed"}} ,说明快照创建成功。 @@ -641,3 +641,126 @@ $ stratovirt \ ``` +## 虚拟机热迁移 + +### 简介 + +StratoVirt 提供了虚拟机热迁移能力,也就是在虚机业务不中断的情况下,将虚拟机从一台服务器迁移到另一台服务器。 + +下列情形,可以使用虚拟机热迁移: +- 当服务器负载过重时,可以使用虚拟机热迁移技术,将虚拟机迁移到另一台物理服务器上,达到负载均衡的目的。 +- 如果需要维护服务器,该服务器上的虚拟机可以在不中断业务的情形下,迁移到另一台物理服务器上。 +- 服务器出现故障,需要更换硬件或者调整组网时,为了避免虚拟机业务中断,可以将运行的虚拟机迁移到另一台物理机上。 + + +### 热迁移操作 + +此处介绍热迁移虚拟机的操作方法,供用户参考。 + +**准备热迁移** + +1.使用 `root` 账号,登录源端虚拟机所在的主机,执行如下命令(命令行参数,请根据实际情况修改),启动源端虚拟机。 + +```shell +./stratovirt \ + -machine q35 \ + -kernel ./vmlinux.bin \ + -append "console=ttyS0 pci=off reboot=k quiet panic=1 root=/dev/vda" \ + -drive file=path/to/rootfs,id=rootfs,readonly=off,direct=off \ + -device virtio-blk-pci,drive=rootfs,id=rootfs,bus=pcie.0,addr=0 \ + -qmp unix:path/to/socket1,server,nowait \ + -serial stdio \ +``` + +2.使用 `root` 账号,登录目的端虚拟机所在的主机,执行如下命令(命令行参数需要和启动源端虚拟机保持一致),启动目的端虚拟机。 + +```shell +./stratovirt \ + -machine q35 \ + -kernel ./vmlinux.bin \ + -append "console=ttyS0 pci=off reboot=k quiet panic=1 root=/dev/vda" \ + -drive file=path/to/rootfs,id=rootfs,readonly=off,direct=off \ + -device virtio-blk-pci,drive=rootfs,id=rootfs,bus=pcie.0,addr=0 \ + -qmp unix:path/to/socket2,server,nowait \ + -serial stdio \ + -incoming tcp:192.168.0.1:4446 \ +``` + +> ![](./public_sys-resources/icon-note.gif)**说明** +> +> - 目的端虚拟机的启动命令行参数需要与源端虚拟机命令行保持一致。 +> - 如果需要将热迁移数据传输模式从 `TCP` 网络协议改为 `UNIX socket` 通信协议, + 只需要将目的端虚拟机的命令行 `-incoming tcp:192.168.0.1:4446`,改为 `-incoming unix:/tmp/stratovirt-migrate.socket`。但 `UNIX socket` 协议只支持单物理主机的不同虚拟机之间热迁移。 + +**开始热迁移** + +在源端虚拟机所在的主机,执行如下命令,启动虚拟机热迁移任务。 + +```shell +$ ncat -U path/to/socket1 +-> {"QMP":{"version":{"StratoVirt":{"micro":1,"minor":0,"major":0},"package":""},"capabilities":[]}} +<- {"execute":"migrate", "arguments":{"uri":"tcp:192.168.0.1:4446"}} +-> {"return":{}} +``` +> ![](./public_sys-resources/icon-note.gif)**说明** +> +> 如果热迁移传输协议为 `UNIX socket` 通信协议,只需要将 QMP 命令中的 `"uri":"tcp:192.168.0.1:4446"`,改为 `"uri":"unix:/tmp/stratovirt-migrate.socket"`。 + +**结束热迁移** + +当执行上述迁移 `QMP` 命令后,虚拟机热迁移任务就开始执行。如果没有热迁移错误日志,则源端的虚拟机就迁移到了目的端,源端虚拟机会自动销毁。 + +### 取消热迁移 + +在热迁移过程中,可能出现迁移时间较长,或目的端虚拟机所在的主机负载发生变化,需要调整迁移策略。StratoVirt 提供了取消热迁移操作的特性。 + +取消热迁移的操作如下: +登录源端虚拟机所在的主机,执行如下 `QMP` 命令: + +```shell +$ ncat -U path/to/socket1 +-> {"QMP":{"version":{"StratoVirt":{"micro":1,"minor":0,"major":0},"package":""},"capabilities":[]}} +<- {"execute":"migrate_cancel"} +-> {"return":{}} +``` + +如果目的端虚拟机退出热迁移任务,并在日志提示取消热迁移,表示热迁移任务取消成功。 + +### 查询热迁移状态 + +热迁移存在如下几种状态: + +- `None`: 热迁移 vCPU,内存,设备等资源没有准备完成 +- `Setup`: 热迁移资源准备完成,可以进行热迁移 +- `Active`: 处于制作热迁移过程中 +- `Completed`: 热迁移完成 +- `Failed`: 热迁移失败 + +以下 `QMP` 命令表示查询当前热迁移处于完成状态: + +```shell +$ ncat -U path/to/socket +-> {"QMP":{"version":{"StratoVirt":{"micro":1,"minor":0,"major":0},"package":""},"capabilities":[]}} +<- {"execute":"query-migrate"} +-> {"return":{"status":"completed"}} +``` + +### 约束与限制 + +StratoVirt 只支持标准虚机主板热迁移: +- q35 (x86_64平台) +- virt (aarch64平台) + +以下设备和特性不支持热迁移: +- vhost-net 设备 +- vhost-user-net 设备 +- virtio balloon 设备 +- vfio 设备 +- 共享后端存储 +- 共享内存,后端内存特性 + +以下启动源端和目的端虚拟机命令行参数必须保持一致: +- virtio-net: MAC 地址 +- device: BDF 号 +- smp +- m \ No newline at end of file diff --git "a/docs/zh/docs/StratoVirt/\350\231\232\346\213\237\346\234\272\351\205\215\347\275\256.md" "b/docs/zh/docs/StratoVirt/\350\231\232\346\213\237\346\234\272\351\205\215\347\275\256.md" index fba83df5f95da1a91af2081baccd367e80f98988..26fca69d97eff153b891358e61d31b55e3af58a4 100644 --- "a/docs/zh/docs/StratoVirt/\350\231\232\346\213\237\346\234\272\351\205\215\347\275\256.md" +++ "b/docs/zh/docs/StratoVirt/\350\231\232\346\213\237\346\234\272\351\205\215\347\275\256.md" @@ -455,6 +455,7 @@ mount -t hugetlbfs hugetlbfs /path/to/hugepages - 每个VM只能配置1个balloon设备。 + #### 配置方式 轻量级虚拟机: @@ -515,6 +516,42 @@ Virtio RNG配置为Virtio PCI设备时,命令行参数如下: - guest如需使用Virtio RNG设备,guest内核需要使能配置:CONFIG_HW_RANDOM=y,CONFIG_HW_RANDOM_VIA=y,CONFIG_HW_RANDOM_VIRTIO=y; - 用户在配置Virtio RNG设备时,请检查熵池是否足够,以免引起虚拟机卡顿问题,例如配置字符设备路径为/dev/random,当前熵池大小可通过/proc/sys/kernel/random/entropy_avail查看,熵池满时的大小为4096,通常应该大于1000。 +### 配置virtio-gpu设备 + +#### 简介 + +标准虚拟机可支持配置virtio-gpu显卡用于显示。 + +#### 注意事项 + +- 目前仅支持2D。 +- max_hostmem(即在host侧可占用内存)建议不小于256MiB,否则影响分辨率配置。 +- max_outputs(即支持的屏幕数量)配置不可大于16。 +- 不支持热迁移。 +- 目前仅支持在ARM环境上使用。 + +#### 规格 + +- 每个VM只能配置1个virtio-gpu设备。 + +#### 配置方式 + +标准虚拟机: + +``` +-device virtio-gpu-pci,id=XX,bus=pcie.0,addr=0x2.0x0[,max_outputs=XX][,edid=true|false][,xres=XX][,yres=XX][,max_hostmem=XX] +``` + +``` +参数: +``` + +1. max_outputs:当前显卡需要支持的屏幕数量,建议配置为1。 +2. edid:当前显卡是否支持edid,建议配置为true,虚拟机内核会检查显卡是否支持edid。 +3. xres:横向屏幕大小。 +4. yres: 纵向屏幕大小,与xres组成屏幕分辨率,建议设置为1024*768。 +5. max_hostmem: 显卡最大可占用host侧内存, 以Byte为单位。 + ## 配置示例 ### 轻量级虚拟机 diff --git a/docs/zh/docs/Virtualization/figures/status-transition-diagram.png b/docs/zh/docs/Virtualization/figures/status-transition-diagram.png index e29d998e78064672bfc3641c26c0eb086d585000..9135ef9ecb11e1bf6a8fe3aacbded418fe809bda 100644 Binary files a/docs/zh/docs/Virtualization/figures/status-transition-diagram.png and b/docs/zh/docs/Virtualization/figures/status-transition-diagram.png differ diff --git "a/docs/zh/docs/Virtualization/\345\207\206\345\244\207\344\275\277\347\224\250\347\216\257\345\242\203.md" "b/docs/zh/docs/Virtualization/\345\207\206\345\244\207\344\275\277\347\224\250\347\216\257\345\242\203.md" index d6cc54156c46e42e86922d7e35b8e22d49b0bb92..13a64fa430239bc607a7b26491223ec99752eb0b 100644 --- "a/docs/zh/docs/Virtualization/\345\207\206\345\244\207\344\275\277\347\224\250\347\216\257\345\242\203.md" +++ "b/docs/zh/docs/Virtualization/\345\207\206\345\244\207\344\275\277\347\224\250\347\216\257\345\242\203.md" @@ -12,7 +12,7 @@ ### 概述 -虚拟机镜像是一个文件,包含了已经完成安装并且可启动操作系统的虚拟磁盘。虚拟机镜像具有不同格式,常见的有raw格式和qcow2格式。qcow2格式镜像相比raw格式,具有占用更小的空间,支持快照、Copy-On-Write、AES加密、zlib压缩等特性,但性能略逊于raw格式镜像。镜像文件的制作借助于qemu-img工具,本节以qcow2格式镜像文件为例,介绍虚拟机镜像制作过程。 +虚拟机镜像是一个文件,包含了已经完成安装并且可启动操作系统的虚拟磁盘。虚拟机镜像具有不同格式,常见的有raw格式和qcow2格式。与raw格式镜像相比,qcow2格式镜像占用更小的空间,支持快照、Copy-On-Write、AES加密、zlib压缩等特性,但性能略逊于raw格式镜像。镜像文件的制作借助于qemu-img工具,本节以qcow2格式镜像文件为例,介绍虚拟机镜像制作过程。 ### 制作镜像 diff --git "a/docs/zh/docs/Virtualization/\347\256\241\347\220\206\350\231\232\346\213\237\346\234\272.md" "b/docs/zh/docs/Virtualization/\347\256\241\347\220\206\350\231\232\346\213\237\346\234\272.md" index 563e8e4f591e29ca550081c5ba2ede1cb9116736..cbdea7434d99cc5511835c332a86d1ee19833bd2 100644 --- "a/docs/zh/docs/Virtualization/\347\256\241\347\220\206\350\231\232\346\213\237\346\234\272.md" +++ "b/docs/zh/docs/Virtualization/\347\256\241\347\220\206\350\231\232\346\213\237\346\234\272.md" @@ -29,7 +29,7 @@ - 未定义(undefined):虚拟机未定义或未创建,即libvirt认为该虚拟机不存在。 - 关闭状态(shut off):虚拟机已经被定义但未运行,或者虚拟机被终止。 -- 运行中(running):虚拟机处于运行状态。 +- 运行(running):虚拟机处于运行状态。 - 暂停(paused):虚拟机运行被挂起,其运行状态被临时保存在内存中,可以恢复到运行状态。 - 保存(saved):与暂停(paused)状态类似,其运行状态被保存在持久性存储介质中,可以恢复到运行状态。 - 崩溃(crashed):通常是由于内部错误导致虚拟机崩溃,不可恢复到运行状态。 diff --git "a/docs/zh/docs/Virtualization/\350\256\244\350\257\206\350\231\232\346\213\237\345\214\226.md" "b/docs/zh/docs/Virtualization/\350\256\244\350\257\206\350\231\232\346\213\237\345\214\226.md" index b34ee24d976ffd7616d4dc9d541ef5f5a5ee3905..6784d730ca7fa60316a70040d22c19b94bf5f1b7 100644 --- "a/docs/zh/docs/Virtualization/\350\256\244\350\257\206\350\231\232\346\213\237\345\214\226.md" +++ "b/docs/zh/docs/Virtualization/\350\256\244\350\257\206\350\231\232\346\213\237\345\214\226.md" @@ -4,7 +4,7 @@ 在计算机技术中,虚拟化是一种资源管理技术,它将计算机的各种实体资源(处理器、内存、磁盘、网络适配器等)予以抽象、转换后呈现,并可分割、组合为一个或多个计算机配置环境。这种资源管理技术打破了实体结构不可分割的障碍,使这些资源在虚拟化后不受现有资源的架设方式、地域或物理配置限制,从而让用户可以更好地应用计算机硬件资源,提高资源利用率。 -虚拟化使得一台物理服务器上可以运行多台虚拟机,虚拟机共享物理机的处理器、内存、I/O资源等,但逻辑上虚拟机之间是互相隔离的。在虚拟化技术中,通常将这个物理服务器称为宿主机,宿主机上运行的虚拟机也叫客户机,虚拟机内部运行的操作系统称为客户机操作系统。在宿主机和虚拟机之间存在一层叫虚拟化层的软件,用于实现虚拟硬件的模拟,通常这个虚拟化层被称为虚拟机监视器,如下图所示: +虚拟化使得一台物理服务器上可以运行多台虚拟机,虚拟机共享物理机的处理器、内存、I/O设备等资源,但逻辑上虚拟机之间是互相隔离的。在虚拟化技术中,通常将这个物理服务器称为宿主机,宿主机上运行的虚拟机也叫客户机,虚拟机内部运行的操作系统称为客户机操作系统。在宿主机和虚拟机之间存在一层叫虚拟化层的软件,用于实现虚拟硬件的模拟,通常这个虚拟化层被称为虚拟机监视器,如下图所示: **图 1** 虚拟化架构 ![](./figures/virtualized-architecture.png) @@ -22,7 +22,7 @@ 这种模型中,物理资源是由宿主机操作系统管理。宿主机操作系统是传统的操作系统,如Linux,Windows等,宿主机操作系统不提供虚拟化能力,提供虚拟化能力的VMM作为系统的一个驱动或者软件运行在宿主操作系统上,VMM通过调用host OS的服务获得资源,实现处理器,内存和I/O设备的模拟,这种模型的虚拟化实现有KVM、Virtual Box等。 -KVM(Kernel-based Virtual Machine)即基于内核的虚拟机,是Linux的一个内核模块,该内核模块使Linux成为一个hypervisor。KVM架构如[图2](#fig310953013541)所示。KVM本身未模拟任何硬件设备,它用于使能硬件提供的虚拟化能力,比如Intel VT-x, AMD-V, ARM virtualization extensions等。主板、内存及I/O等设备的模拟由用户态的QEMU完成。用户态QEMU配合内核KVM模块共同完成虚拟机的硬件模拟,客户操作系统运行在QEMU和KVM模拟的硬件上。 +KVM(Kernel-based Virtual Machine)即基于内核的虚拟机,是Linux的一个内核模块,该内核模块使Linux成为一个hypervisor。KVM架构如[图2](#fig310953013541)所示。KVM本身未模拟任何硬件设备,它用于使能硬件提供的虚拟化能力,比如Intel VT-x, AMD-V, ARM virtualization extensions等。主板、内存及I/O等设备的模拟由用户态的QEMU完成。用户态QEMU配合内核KVM模块共同完成虚拟机的硬件模拟,客户机操作系统运行在QEMU和KVM模拟的硬件上。 **图 2** KVM架构图 ![](./figures/kvm-architecture.png) diff --git a/docs/zh/docs/desktop/Cinnamon_UserGuide.md b/docs/zh/docs/desktop/Cinnamon_UserGuide.md new file mode 100644 index 0000000000000000000000000000000000000000..7ecd62c7ad290128c39c0454132d668554d0ebe5 --- /dev/null +++ b/docs/zh/docs/desktop/Cinnamon_UserGuide.md @@ -0,0 +1,501 @@ +# Cinnamon 用户指南 + +## 一、概述 + +Cinnamon是运行在类Unix操作系统中最常用桌面环境。其目标是基于自由软件,为Unix或者类Unix操作系统构造一个功能完善、操作简单以及界面友好的桌面环境,是GNU计划的正式桌面。 + +从用户的角度看,Cinnamon是一个集成桌面环境和应用程序的套件。从开发者的角度看,Cinnamon是一个应用程序开发框架(由数目众多的实用函数库组成)。即使用户不运行Cinnamon桌面环境,用Cinnamon编写的应用程序也可以正常运行。 + +Cinnamon既包含文件管理器,应用商店,文本编辑器等基础软件,也包含系统采样分析,系统日志,软件工程IDE,web浏览器,简洁虚拟机监视器,开发者文档浏览器等高级应用和工具。 + +Cinnamon提供了多个功能部件: + +- cinnamon:Cinnamon桌面环境 +- cinnamon-control-center :Cinnamon控制中心 +- cinnamon-desktop:Cinnamon桌面库 +- cinnamon-menus:符合freedesktop保准的菜单布局库 +- cinnamon-screensaver:Cinnamon锁屏及屏保工具 +- cinnamon-session:Cinnamon Session +- cinnamon-settings-daemon:Cinnamon桌面全局配置管理 +- cinnamon-translations:Cinnamon翻译集 +- mint-themes:Cinnamon主题集合 +- mintlocale:Cinnamon语言选择工具 + + +本文主要描述Cinnamon的使用。 + +界面如下图所示。 + +![图 01 桌面主界面](./figures/Cinnamon-01.png) + +
+ +## 二 、桌面 + +### 2.1 桌面 + +Cinnamon桌面比较简洁,默认只放了计算机、主目录、回收站三个目录链接。左下角为系统菜单,右下角为时间显示、消息通知等应用图标,下方中间为应用快速启动图标及打开的窗口列表。 + +![图 02 桌面低部显示区](./figures/Cinnamon-02.png) + +### 2.2 右键菜单 + +在桌面空白处单击鼠标右键,出现的菜单如下图所示,为用户提供了一些快捷功能。 + +![图 03 右键菜单](./figures/Cinnamon-03.png) + +选项说明如表。 + +| 选项 | 说明| +| :------------ | :------------ | +| 创建文件夹 | 在桌面创建文件夹 | +| 创建新文档 | 在桌面创建子菜单中支持的空模板文件| +| 添加桌面小工具 | 在桌面添加小工具 | +| 更改桌面背景 | 修改桌面 壁纸 | +| 在此新建启动器 | 在桌面创建应用快速启动图标 | +| 在终端中打开 | 在桌面位置打开终端 | +| 以Root身份打开 | 在桌面位置以Root身份打开终端 | +| 自定义 | 自定义桌面显示,如图标密集度,尺寸,排列顺序,方向等 | +| 粘贴 | 在桌面上粘贴复制的内容 | + +
+ +## 三、底部显示区 + +### 3.1 左下角菜单 + +菜单位于左下角,是Cinnamon桌面应用程序打开的重要途径。 + +![图 04 菜单](./figures/Cinnamon-04.png) + +#### 3.1.1 收藏夹和会话按钮 + +菜单左侧竖排为收藏夹和会话按钮。 + +![图 05 收藏夹和会话按钮](./figures/Cinnamon-05.png) + +上面三个为默认的收藏夹,分别是系统设置、终端及文件。 + +下面三个为默认的会话按钮,分别为锁定屏幕、注销及退出。 + +#### 3.1.2 搜索功能 + +菜单最上侧的输入框为搜索输入框,在此输入关键字,下方显示关键字在菜单中的搜索结果。 + +![图 06 搜索结果](./figures/Cinnamon-06.png) + +#### 3.1.3 应用分类显示 + +菜单中会显示系统中默认安装的所有具有桌面图标的应用,根据应用图标中的分类,在菜单中在不同的分类中显示。 + +![图 07 菜单分类显示](./figures/Cinnamon-07.png) + +其中左侧列显示的是系统中所有应用的分类,右侧显示该分类中的应用。 + +#### 3.1.4 菜单设置 + +在菜单上点击邮件,选择弹出菜单中的“配置...”选项 + +![图 08 菜单配置](./figures/Cinnamon-08.png) + +将会显示菜单的配置项,这里两个标签,分别对应设置菜单在面板上的显示,以及菜单中的设置。 + +![图 09 菜单面板配置](./figures/Cinnamon-09.png) + +![图 10 菜单面板配置](./figures/Cinnamon-10.png) + +### 3.2 右下角状态指示区域 + +显示当前系统状态指示,默认会显示打印机设置、挂载、网络、时间等,左键可以查看详情 + +![图 11 右下角左键](./figures/Cinnamon-11.png) + +右键配置相关组件 + +![图 12 右下角右键](./figures/Cinnamon-12.png) + +### 3.3 快速启动栏及窗口切换列表 +快速启动按钮默认只有显示桌面、终端、文件三个按钮,本身具有窗口列表的功能,当打开其他应用的时候会自动在该列表中显示窗口列表。 + +![图 13 窗口列表](./figures/Cinnamon-13.png) + +## 四、系统设置 + +Cinnamon的所有设置都可以在“系统设置”中完成。可以通过“菜单”->“系统设置”打开。 + +![图 14 系统设置](./figures/Cinnamon-14.png) + +依照Cinnamon安装手册安装桌面后,“系统设置”中所有设置一共分为四类: + + - 外观 + - 首选项 + - 硬件 + - 系统管理 + +### 4.1 外观 + +外观设置主要用来对Cinnamon桌面的视觉感官做设置,主要包括以下对桌面感官的设置: + + - 背景 + - 特效 + - 字体 + - 主题 + +![图 15 外观设置](./figures/Cinnamon-15.png) + +#### 4.1.1 背景 + +在“外观”分类中点击“背景”,显示背景设置窗口 + +![图 16 背景](./figures/Cinnamon-16.png) + +可以在左侧默认目录中选择不同的图片,也可以通过“+”添加其他的背景图所在目录。 +在“设置”标签中设置图片的显示方式等。 + +#### 4.1.2 特效 + +在“外观”分类中点击“特效”,显示特效设置窗口 + +![图 17 特效](./figures/Cinnamon-17.png) + +在这里可以设置桌面特效以及窗口特效。 + +#### 4.1.3 字体 + +在“外观”分类中点击“字体”,显示字体设置窗口 + +![图 18 字体](./figures/Cinnamon-18.png) + +为Cinnamon桌面及带有GUI的程序设置字体的显示。 + +#### 4.1.4 主题 + +在“外观”分类中点击“主题”,显示主题设置窗口 + +![图 19 主题](./figures/Cinnamon-19.png) + +主题设置窗口可以选择设置Cinnamon桌面环境中窗口、图标、控件、鼠标、桌面的显示主题。 + +![图 20主题在线](./figures/Cinnamon-20.png) + +在“添加/删除”标签页中可以从Cinnamon官网选择自己喜欢的的主题并下载到本地。 + +在“设置”标签页里设置微调主题。 + +### 4.2 首选项 + +首选项设置主要用来对Cinnamon桌面的功能做设置,用户可根据自己的喜好配置桌面环境,主要包括以下的功能设置: + + - 常规 + - 窗口 + - 窗口平铺 + - 辅助功能 + - 工作区 + - 开机自启动程序 + - 扩展 + - 面板 + - 屏幕保护程序 + - 热区 + - 日期和时间 + - 首选应用程序 + - 通知 + - 小程序 + - 隐私 + - 语言 + - 在线账户 + - 账户详情 + - 桌面 + - 桌面小工具 + +![图 21 首选项设置](./figures/Cinnamon-21.png) + +#### 4.2.1 常规 + +在“首选项”分类中点击“常规”,显示常规设置窗口 + +![图 22 首选项常规](./figures/Cinnamon-22.png) + +Cinnamon桌面常规设置,包括合成器选项、内存使用、检查刷新间隔等设置。 + +#### 4.2.2 窗口 + +在“首选项”分类中点击“窗口”,显示窗口设置界面 + +![图 23 首选项窗口](./figures/Cinnamon-23.png) + +设置窗口布局、操作等行为设置。 + +#### 4.2.3 窗口平铺 + +在“首选项”分类中点击“窗口平铺”,显示窗口平铺设置窗口 + +![图 24 首选项窗口平铺](./figures/Cinnamon-24.png) + +设置平铺窗口设置选项。 + +#### 4.2.4 辅助功能 + +在“首选项”分类中点击“辅助功能”,显示辅助功能设置窗口 + +![图 25 首选项辅助功能](./figures/Cinnamon-25.png) + +桌面环境中辅助功能设置,包括视觉、键盘、辅助输入、鼠标等辅助功能的设置。 + +#### 4.2.5 工作区 + +在“首选项”分类中点击“工作区”,显示工作区设置窗口 + +![图 26 首选项工作区](./figures/Cinnamon-26.png) + +Cinnamon桌面工作区之间的显示、轮换的设置。 + +#### 4.2.6 开机自启动程序 + +在“首选项”分类中点击“开机自启动程序”,显示开机自启动程序设置窗口 + +![图 27 首选项开机自启动程序](./figures/Cinnamon-27.png) + +设置登录Cinnamon桌面后要自动启动的程序。 + +最下按钮为“添加”、“编辑”、“删除”、“运行”。 + +#### 4.2.7 扩展 + +在“首选项”分类中点击“扩展”,显示扩展设置窗口 + +![图 28 首选项扩展](./figures/Cinnamon-28.png) + +Cinnamon桌面扩展功能设置,可以通过“下载”页面从Cinnamon官方下载扩展功能。 + +#### 4.2.8 面板 + +在“首选项”分类中点击“面板”,显示面板设置窗口 + +![图 29 首选项面板](./figures/Cinnamon-29.png) + +设置Cinnamon桌面最下边的面板,打开设置窗口后,下方面板显示为高亮。可以设置下方面板的属性。 + +#### 4.2.9 屏幕保护程序 + +在“首选项”分类中点击“屏幕保护程序”,显示屏幕包换程序设置窗口 + +![图 30 首选项屏保-0](./figures/Cinnamon-30-0.png) + +在“设置”标签页中设置屏保的触发时间。 + +![图 30 首选项屏保-1](./figures/Cinnamon-30-1.png) + +在“自定义”标签页中设置屏保界面的显示设置。 + +#### 4.2.10 热区 + +在“首选项”分类中点击“热区”,显示热区设置窗口 + +![图 31 首选项热区](./figures/Cinnamon-31.png) + +设置桌面四个角鼠标移动过去的时候触发的操作。 + +#### 4.2.11 日期和时间 + +在“首选项”分类中点击“日期和时间”,显示日期和时间设置窗口 + +![图 32 首选项日期和时间](./figures/Cinnamon-32.png) + +设置计算机的时区以及时间显示格式。 + +#### 4.2.12 首选应用程序 + +在“首选项”分类中点击“首选应用程序”,显示首选应用程序设置窗口 + +![图 33 首选项首选应用程序](./figures/Cinnamon-33.png) + +设置系统中文件默认打开使用的程序。 + +#### 4.2.13 通知 + +在“首选项”分类中点击“通知”,显示通知设置窗口 + +![图 34 首选项通知](./figures/Cinnamon-34.png) + +设置桌面消息通知的显示情况。 + +#### 4.2.14 小程序 + +在“首选项”分类中点击“小程序”,显示小程序设置窗口 + +![图 35 首选项小程序-0](./figures/Cinnamon-35-0.png) + +系统默认自带的能添加到面板上的小程序。 + +![图 35 首选项小程序-1](./figures/Cinnamon-35-1.png) + +可以通过“下载”页面从Cinnamon官方下载能添加到面板上的小程序。 + +#### 4.2.15 隐私 + +在“首选项”分类中点击“隐私”,显示隐私设置窗口 + +![图 36 首选项隐私](./figures/Cinnamon-36.png) + +设置是否记录最近访问的文件。 + +#### 4.2.16 语言 + +在“首选项”分类中点击“语言”,显示语言设置窗口 + +![图 37 首选项语言](./figures/Cinnamon-37.png) + +设置Cinnamon桌面的显示语言及区域设置。 + +#### 4.2.17 在线账户 + +在“首选项”分类中点击“在线账户”,显示在线账户设置窗口 + +![图 38 首选项在线账户](./figures/Cinnamon-38.png) + +在系统中设置常见的网络账号。 + +#### 4.2.18 账户详情 + +在“首选项”分类中点击“账户详情”,显示账户详情设置窗口 + +![图 39 首选项账户详情](./figures/Cinnamon-39.png) + +显示当前用户的信息及密码设置。 + +#### 4.2.19 桌面 + +在“首选项”分类中点击“桌面”,显示桌面设置窗口 + +![图 40 首选项桌面](./figures/Cinnamon-40.png) + +设置桌面的默认显示。 + +#### 4.2.20 桌面小工具 + +在“首选项”分类中点击“桌面小工具”,显示桌面小工具设置窗口 + +![图 41 首选项桌面小工具-0](./figures/Cinnamon-41-0.png) + +Cinnamon桌面默认自带能放在桌面的小工具。 + +![图 41 首选项桌面小工具-1](./figures/Cinnamon-41-1.png) + +可以在“下载”标签页中从Cinnamon官方下载能放在桌面的小工具。 + +可以在“一般设置”标签页中设置放在桌面的小工具的属性。 + +### 4.3 硬件 + +硬件设置主要用来对Cinnamon桌面外接的硬件做设置,用户可根据自己的喜好配硬件在Cinnamon置桌面中的属性,主要包括以下方面的设置: + + - 电源管理 + - 绘图板 + - 键盘 + - 色彩 + - 声音 + - 鼠标和触摸板 + - 网络 + - 系统信息 + - 显示 + +![图 42 硬件设置](./figures/Cinnamon-42.png) + +#### 4.3.1 电源管理 + +在“硬件”分类中点击“电源管理”,显示电源管理设置窗口 + +![图 43 硬件电源管理](./figures/Cinnamon-43.png) + +对屏幕显示及电源键做设置。 + +#### 4.3.2 绘图板 + +在“硬件”分类中点击“绘图板”,显示绘图板设置窗口 + +![图 44 硬件绘图板](./figures/Cinnamon-44.png) + +绘图板设置(暂时没有外设,无法展现)。 + +#### 4.3.3 键盘 + +在“硬件”分类中点击“键盘”,显示键盘设置窗口 + +![图 45 硬件键盘](./figures/Cinnamon-45.png) + +可以在此设置键盘打字速度,键盘快捷键以及键盘布局。 + +#### 4.3.4 色彩 + +在“硬件”分类中点击“色彩”,显示色彩设置窗口 + +![图 46 硬件色彩](./figures/Cinnamon-46.png) + +对不同的设备做颜色校准设置。 + +#### 4.3.5 声音 + +在“硬件”分类中点击“声音”,显示声音设置窗口 + +![图 47 硬件声音](./figures/Cinnamon-47.png) + +Cinnamon桌面声音设置,包括声音大小声音设备,以及正在使用声音设备的控制等设置。 + +#### 4.3.6 鼠标和触摸板 + +在“硬件”分类中点击“鼠标和触摸板”,显示鼠标和触摸板设置窗口 + +![图 48 硬件电源管理](./figures/Cinnamon-48.png) + +Cinnamon桌面中鼠标和触摸板的设置。 + +#### 4.3.7 网络 + +在“硬件”分类中点击“网络”,显示网络设置窗口 + +![图 49 硬件网络](./figures/Cinnamon-49.png) + +Cinnamon桌面中设置网络地址,以及系统中的代理的设置等。 + +#### 4.3.8 系统信息 + +在“硬件”分类中点击“系统信息”,显示系统信息设置窗口 + +![图 50 硬件电源管理](./figures/Cinnamon-50.png) + +显示当前系统的概要信息。 + +#### 4.3.9 显示 + +在“硬件”分类中点击“显示”,显示显示设置窗口 + +![图 51 硬件显示](./figures/Cinnamon-51.png) + +Cinnamon桌面分辨率设置。 + +### 4.4 系统管理 + +系统管理设置主要用来对Cinnamon桌面安全及用户做设置,主要包括以下方面的设置: + + - 防火墙 + - 用户和用户组 + +![图 52 系统管理](./figures/Cinnamon-52.png) + +#### 4.4.1 防火墙 + +Cinnamon桌面中安全相关设置,包括服务的网络访问情况的设置等。 + +![图 53 系统管理防火墙](./figures/Cinnamon-53.png) + +需要root权限用户才能做防火墙方面的设置。 + +#### 4.4.2 用户和用户组 + +在Cinnamon桌面中中创建、修改、删除系统中的用户和用户组。 + +![图 54 系统管理用户和用户组](./figures/Cinnamon-54.png) + +需要root权限用户才能对系统中的用户和用户组做创建、修改、删除等操作。 + +
diff --git "a/docs/zh/docs/desktop/HA\347\232\204\344\275\277\347\224\250\345\256\236\344\276\213.md" "b/docs/zh/docs/desktop/HA\347\232\204\344\275\277\347\224\250\345\256\236\344\276\213.md" index 4cca7b2fdbde127e25d0f2414ec5ae45f4470dd7..4122e34e46aa4caaabee4f93f89e6b0c7b8efa8a 100644 --- "a/docs/zh/docs/desktop/HA\347\232\204\344\275\277\347\224\250\345\256\236\344\276\213.md" +++ "b/docs/zh/docs/desktop/HA\347\232\204\344\275\277\347\224\250\345\256\236\344\276\213.md" @@ -23,6 +23,21 @@ - [配置NFS存储](#配置nfs存储) - [配置mysql](#配置mysql) - [添加上述资源为组资源](#添加上述资源为组资源) + - [仲裁设备配置](#仲裁设备配置) + - [安装仲裁所需软件包](#安装仲裁所需软件包) + - [修改主机名称及/etc/hosts文件](#修改主机名称及/etc/hosts文件) + - [配置仲裁设备并添加到集群](#配置仲裁设备并添加到集群) + - [配置仲裁设备](#配置仲裁设备) + - [关闭防火墙](#关闭防火墙) + - [进行身份认证](#进行身份认证) + - [将仲裁设备添加到集群](#将仲裁设备添加到集群) + - [检查仲裁设备的配置状态](#检查仲裁设备的配置状态) + - [管理仲裁设备服务](#管理仲裁设备服务) + - [管理集群中的仲裁设备](#管理集群中的仲裁设备) + - [更改仲裁设备设置](#更改仲裁设备设置) + - [删除仲裁设备](#删除仲裁设备) + - [销毁仲裁设备](#销毁仲裁设备) + ## 快速使用指南 @@ -211,4 +226,290 @@ - 将ha1节点备用,成功迁移到ha2节点,运行正常 -![](./figures/HA-group-new-suc2.png) \ No newline at end of file +![](./figures/HA-group-new-suc2.png) + +## 仲裁设备配置 +选择一台新的机器,作为仲裁设备。当前软件包不支持使用systemct进行服务测试,启停服务使用pcs操作,以下附上详细操作步骤。 + +### 安装仲裁所需软件包 +- 安装corosync-qdevice在现有集群的节点上 +``` +[root@node1:~]# yum install corosync-qdevice +[root@node2:~]# yum install corosync-qdevice +``` +- 安装pcs和corosync-qnetd在仲裁设备主机上 +``` +[root@qdevice:~]# yum install pcs corosync-qnetd +``` +- 在仲裁设备主机上启动pcsd服务并在系统启动时启用pcsd +``` +[root@qdevice:~]# systemctl start pcsd.service +[root@qdevice:~]# systemctl enable pcsd.service +``` + +### 修改主机名称及/etc/hosts文件 +**注:三台主机均需要进行以下操作,现以其中一台为例。** + +在仲裁功能使用前,需要确认修改主机名并将所有主机名写入/etc/hosts文件中,设置hacluster用户密码。 +- 修改主机名 +``` +hostnamectl set-hostname node1 +``` +- 编辑/etc/hosts文件并写入IP,主机名字段 +``` +10.1.167.105 ha1 +10.1.167.105 ha2 +10.1.167.106 qdevice +``` +- 设置hacluster用户密码 +``` +passwd hacluster +``` + +### 配置仲裁设备并添加到集群 +以下过程为配置仲裁设备并将该仲裁设备添加到集群中。 +- 用于仲裁设备的节点是qdevice +- 仲裁设备的model为net +- 集群节点是node1和node2 + +#### 配置仲裁设备 +在将用于托管仲裁设备的节点上,使用以下命令配置仲裁设备。此命令配置和启动的仲裁设备model为net,并将设备配置为在引导时启动。 +``` +[root@qdevice:~]# pcs qdevice setup model net --enable --start +Quorum device 'net' initialized +quorum device enabled +Starting quorum device... +quorum device started +``` +配置仲裁设备后,可以查看其状态。当前状态表明corosync-qnetd守护程序正在运行,此时没有客户端连接到它。使用--full命令可以展示详细的输出内容。 +``` +[root@qdevice:~]# pcs qdevice status net --full +QNetd address: *:5403 +TLS: Supported (client certificate required) +Connected clients: 0 +Connected clusters: 0 +Maximum send/receive size: 32768/32768 bytes +``` + +#### 关闭防火墙 +``` +systemctl stop firewalld && systemctl disable firewalld +``` +- 修改 /etc/selinux/config 文件中SELINUX状态为disabled +``` +SELINUX=disabled +``` + +#### 进行身份认证 +从现有集群中的一个hacluster节点,对托管仲裁设备的节点上的用户进行身份验证。这允许pcs集群上连接到pcs主机上qdevice,但不允许主机pcs上qdevice连接到pcs集群上。 +``` +[root@node1:~] # pcs host auth qdevice +Username: hacluster +Password: +qdevice: Authorized +``` + +#### 将仲裁设备添加到集群 +在添加仲裁设备之前,可以通过 pcs quorum config 命令查看仲裁设备的当前配置,以便之后进行比较。 +``` +[root@node1:~]# pcs quorum config +Options: +``` +通过 pcs quorum status 命令查看仲裁设备的当前状态,输出结果表明集群尚未使用仲裁设备,并且Qdevice每个节点的成员身份状态为NR(未注册)。 +``` +[root@node1:~]# pcs quorum status +Quorum information +------------------ +Date: Wed Jun 29 13:15:36 2016 +Quorum provider: corosync_votequorum +Nodes: 2 +Node ID: 1 +Ring ID: 1/8272 +Quorate: Yes + +Votequorum information +---------------------- +Expected votes: 2 +Highest expected: 2 +Total votes: 2 +Quorum: 1 +Flags: 2Node Quorate + +Membership information +---------------------- + Nodeid Votes Qdevice Name + 1 1 NR node1 (local) + 2 1 NR node2 +``` +以下命令将之前创建的仲裁设备添加到集群中。注意不能在一个集群中同时使用多个仲裁设备。但是,一个仲裁设备可以同时被多个集群使用。此示例将仲裁设备配置为ffsplit算法。 +``` +[root@node1:~]# pcs quorum device add model net host=qdevice algorithm=ffsplit +Setting up qdevice certificates on nodes... +node2: Succeeded +node1: Succeeded +Enabling corosync-qdevice... +node1: corosync-qdevice enabled +node2: corosync-qdevice enabled +Sending updated corosync.conf to nodes... +node1: Succeeded +node2: Succeeded +Corosync configuration reloaded +Starting corosync-qdevice... +node1: corosync-qdevice started +node2: corosync-qdevice started +``` + +#### 检查仲裁设备的配置状态 +在集群端,执行以下命令来查看配置的变化情况。通过 pcs quorum config 命令显示已配置的仲裁设备信息。 +``` +[root@node1:~]# pcs quorum config +Options: +Device: + Model: net + algorithm: ffsplit + host: qdevice +``` +pcs quorum status命令显示仲裁运行时状态,表明仲裁设备正在使用中。每个集群节点的成员信息状态值的含义Qdevice如下: +- A/NA— quorum device 是否存活,表示qdevice和之间是否有心跳corosync。这应始终表明仲裁设备处于活动状态。 +- V/NV—V当仲裁设备给一个节点投票时设置。在此示例中,两个节点都设置为,V因为它们可以相互通信。如果将集群拆分为两个单节点集群,则其中一个节点将设置为V,另一个节点将设置为NV。 +- MW/NMW— 内部仲裁设备标志已设置 ( MW) 或未设置 ( NMW)。默认情况下,未设置标志,值为NMW。 +``` +[root@node1:~]# pcs quorum status +Quorum information +------------------ +Date: Wed Jun 29 13:17:02 2016 +Quorum provider: corosync_votequorum +Nodes: 2 +Node ID: 1 +Ring ID: 1/8272 +Quorate: Yes + +Votequorum information +---------------------- +Expected votes: 3 +Highest expected: 3 +Total votes: 3 +Quorum: 2 +Flags: Quorate Qdevice + +Membership information +---------------------- + Nodeid Votes Qdevice Name + 1 1 A,V,NMW node1 (local) + 2 1 A,V,NMW node2 + 0 1 Qdevice +``` +通过pcs quorum device status命令显示仲裁设备运行时状态。 +``` +[root@node1:~]# pcs quorum device status +Qdevice information +------------------- +Model: Net +Node ID: 1 +Configured node list: + 0 Node ID = 1 + 1 Node ID = 2 +Membership node list: 1, 2 + +Qdevice-net information +---------------------- +Cluster name: mycluster +QNetd host: qdevice:5403 +Algorithm: ffsplit +Tie-breaker: Node with lowest node ID +State: Connected +``` +在仲裁设备端,执行以下命令,显示corosync-qnetd守护程序的状态。 +``` +[root@qdevice:~]# pcs qdevice status net --full +QNetd address: *:5403 +TLS: Supported (client certificate required) +Connected clients: 2 +Connected clusters: 1 +Maximum send/receive size: 32768/32768 bytes +Cluster "mycluster": + Algorithm: ffsplit + Tie-breaker: Node with lowest node ID + Node ID 2: + Client address: ::ffff:192.168.122.122:50028 + HB interval: 8000ms + Configured node list: 1, 2 + Ring ID: 1.2050 + Membership node list: 1, 2 + TLS active: Yes (client certificate verified) + Vote: ACK (ACK) + Node ID 1: + Client address: ::ffff:192.168.122.121:48786 + HB interval: 8000ms + Configured node list: 1, 2 + Ring ID: 1.2050 + Membership node list: 1, 2 + TLS active: Yes (client certificate verified) + Vote: ACK (ACK) +``` + +### 管理仲裁设备服务 +PCS 提供了在本地主机 (corosync-qnetd)上管理仲裁设备服务的能力,如以下示例命令所示。请注意,这些命令仅影corosync-qnetd服务。 +``` +[root@qdevice:~]# pcs qdevice start net +[root@qdevice:~]# pcs qdevice stop net +[root@qdevice:~]# pcs qdevice enable net +[root@qdevice:~]# pcs qdevice disable net +[root@qdevice:~]# pcs qdevice kill net +``` +当执行 pcs qdevice stop net 命令时可以看到 state 从成功变为失败,再次执行pcs qdevice start net 时,状态变为成功。 +![](./figures/HA-qdevice.png) + +### 管理集群中的仲裁设备 +可以使用多种pcs命令来更改集群中的仲裁设备设置、禁用仲裁设备和删除仲裁设备。 + +#### 更改仲裁设备设置 +**注意:要更改host中 quorum device model 的选项net,请使用 pcs quorum device remove 和 pcs quorum device add 命令正确设置配置,除非旧主机和新主机是同一台机器。** + +- 以下命令将仲裁设备算法更改为lms +``` +[root@node1:~]# pcs quorum device update model algorithm=lms +Sending updated corosync.conf to nodes... +node1: Succeeded +node2: Succeeded +Corosync configuration reloaded +Reloading qdevice configuration on nodes... +node1: corosync-qdevice stopped +node2: corosync-qdevice stopped +node1: corosync-qdevice started +node2: corosync-qdevice started +``` + +#### 删除仲裁设备 +- 以下命令删除集群节点上配置的仲裁设备 +``` +[root@node1:~]# pcs quorum device remove +Sending updated corosync.conf to nodes... +node1: Succeeded +node2: Succeeded +Corosync configuration reloaded +Disabling corosync-qdevice... +node1: corosync-qdevice disabled +node2: corosync-qdevice disabled +Stopping corosync-qdevice... +node1: corosync-qdevice stopped +node2: corosync-qdevice stopped +Removing qdevice certificates from nodes... +node1: Succeeded +node2: Succeeded +``` +删除仲裁设备后,在显示仲裁设备状态时应该会看到以下错误消息。 +``` +[root@node1:~]# pcs quorum device status +Error: Unable to get quorum status: corosync-qdevice-tool: Can't connect to QDevice socket (is QDevice running?): No such file or directory +``` + +#### 销毁仲裁设备 +- 以下命令禁用和停止仲裁设备主机上的仲裁设备并删除其所有配置文件 +``` +[root@qdevice:~]# pcs qdevice destroy net +Stopping quorum device... +quorum device stopped +quorum device disabled +Quorum device 'net' configuration files removed +``` \ No newline at end of file diff --git a/docs/zh/docs/desktop/Install_Cinnamon.md b/docs/zh/docs/desktop/Install_Cinnamon.md new file mode 100644 index 0000000000000000000000000000000000000000..b660e61e2d2e126bce77d813b9f9506269e316db --- /dev/null +++ b/docs/zh/docs/desktop/Install_Cinnamon.md @@ -0,0 +1,71 @@ +# 在 openEuler 上安装 Cinnamon + +Cinnamon是运行在类Unix操作系统中最常用的桌面环境,也是一个功能完善、操作简单、界面友好、集使用和开发为一身的桌面环境,还是GNU计划的正式桌面。 + +从用户的角度看,Cinnamon是一个集成桌面环境和应用程序的套件。从开发者的角度看,Cinnamon是一个应用程序开发框架(由数目众多的实用函数库组成)。即使用户不运行Cinnamon桌面环境,用Cinnamon编写的应用程序也可以正常运行。 + +Cinnamon既包含文件管理器,应用商店,文本编辑器等基础软件,也包含系统采样分析,系统日志,软件工程IDE,web浏览器,简洁虚拟机监视器,开发者文档浏览器等高级应用和工具。 + +安装时,建议新建一个管理员用户。 + +##1. 配置源并更新系统 +[下载](https://openeuler.org/zh/download/) openEuler ISO镜像并安装系统,更新软件源(需要配置Everything源,以及EPOL源,如下命令是在最小化安装系统的情况下安装Cinnamon) + +``` +sudo dnf update +``` + +##2. 安装字库 + +``` +sudo dnf install dejavu-fonts liberation-fonts gnu-*-fonts google-*-fonts +``` + +##3. 安装Xorg + +``` +sudo dnf install xorg-* +``` +安装时,可能会安装无用的包,可使用如下命令安装必要的xorg相关包。 + +``` +sudo dnf install xorg-x11-apps xorg-x11-drivers xorg-x11-drv-ati \ + xorg-x11-drv-dummy xorg-x11-drv-evdev xorg-x11-drv-fbdev xorg-x11-drv-intel \ + xorg-x11-drv-libinput xorg-x11-drv-nouveau xorg-x11-drv-qxl \ + xorg-x11-drv-synaptics-legacy xorg-x11-drv-v4l xorg-x11-drv-vesa \ + xorg-x11-drv-vmware xorg-x11-drv-wacom xorg-x11-fonts xorg-x11-fonts-others \ + xorg-x11-font-utils xorg-x11-server xorg-x11-server-utils xorg-x11-server-Xephyr \ + xorg-x11-server-Xspice xorg-x11-util-macros xorg-x11-utils xorg-x11-xauth \ + xorg-x11-xbitmaps xorg-x11-xinit xorg-x11-xkb-utils +``` + +##4. 安装Cinnamon及组件 + +``` +sudo dnf install cinnamon cinnamon-control-center cinnamon-desktop \ + cinnamon-menus cinnamon-screensaver cinnamon-session \ + cinnamon-settings-daemon cinnamon-themes cjs \ + nemo nemo-extensions muffin cinnamon-translations inxi \ + perl-XML-Dumper xapps mint-x-icons mint-y-icons mintlocale \ + python3-plum-py caribou mozjs78 python3-pam \ + python3-tinycss2 python3-xapp tint2 gnome-terminal \ + lightdm lightdm-gtk +``` + +##5. 开机自动启动登录管理器 + +``` +sudo systemctl enable lightdm +``` + +##6. 设置系统默认以图形界面登录 + +``` +sudo systemctl set-default graphical.target +``` +重启验证 + +``` +sudo reboot +``` + diff --git a/docs/zh/docs/desktop/figures/Cinnamon-01.png b/docs/zh/docs/desktop/figures/Cinnamon-01.png new file mode 100644 index 0000000000000000000000000000000000000000..b4a43e7fa938b2ece73ad749e2b513daa976e7c9 Binary files /dev/null and b/docs/zh/docs/desktop/figures/Cinnamon-01.png differ diff --git a/docs/zh/docs/desktop/figures/Cinnamon-02.png b/docs/zh/docs/desktop/figures/Cinnamon-02.png new file mode 100644 index 0000000000000000000000000000000000000000..22413a83d51cb9ee177c0d39147da857868f0aec Binary files /dev/null and b/docs/zh/docs/desktop/figures/Cinnamon-02.png differ diff --git a/docs/zh/docs/desktop/figures/Cinnamon-03.png b/docs/zh/docs/desktop/figures/Cinnamon-03.png new file mode 100644 index 0000000000000000000000000000000000000000..5ccc6d4eef17f2d39841046dcf32b9c00652d1a9 Binary files /dev/null and b/docs/zh/docs/desktop/figures/Cinnamon-03.png differ diff --git a/docs/zh/docs/desktop/figures/Cinnamon-04.png b/docs/zh/docs/desktop/figures/Cinnamon-04.png new file mode 100644 index 0000000000000000000000000000000000000000..c5d7073a3d2a37727b83a6e43a684747175efa9d Binary files /dev/null and b/docs/zh/docs/desktop/figures/Cinnamon-04.png differ diff --git a/docs/zh/docs/desktop/figures/Cinnamon-05.png b/docs/zh/docs/desktop/figures/Cinnamon-05.png new file mode 100644 index 0000000000000000000000000000000000000000..e2d0a0a523f10d6bce9f51c5d05f019c595e2625 Binary files /dev/null and b/docs/zh/docs/desktop/figures/Cinnamon-05.png differ diff --git a/docs/zh/docs/desktop/figures/Cinnamon-06.png b/docs/zh/docs/desktop/figures/Cinnamon-06.png new file mode 100644 index 0000000000000000000000000000000000000000..61bb128fc2c8902edbfd1d76b28f963817753e32 Binary files /dev/null and b/docs/zh/docs/desktop/figures/Cinnamon-06.png differ diff --git a/docs/zh/docs/desktop/figures/Cinnamon-07.png b/docs/zh/docs/desktop/figures/Cinnamon-07.png new file mode 100644 index 0000000000000000000000000000000000000000..ef01eb0001c6db0e3d1c024e51b0594372b9348c Binary files /dev/null and b/docs/zh/docs/desktop/figures/Cinnamon-07.png differ diff --git a/docs/zh/docs/desktop/figures/Cinnamon-08.png b/docs/zh/docs/desktop/figures/Cinnamon-08.png new file mode 100644 index 0000000000000000000000000000000000000000..1049f355939b0121c123adc462dcb6d736e48760 Binary files /dev/null and b/docs/zh/docs/desktop/figures/Cinnamon-08.png differ diff --git a/docs/zh/docs/desktop/figures/Cinnamon-09.png b/docs/zh/docs/desktop/figures/Cinnamon-09.png new file mode 100644 index 0000000000000000000000000000000000000000..6dc110900f5375ed9ede276f59ea89ba29e5e737 Binary files /dev/null and b/docs/zh/docs/desktop/figures/Cinnamon-09.png differ diff --git a/docs/zh/docs/desktop/figures/Cinnamon-10.png b/docs/zh/docs/desktop/figures/Cinnamon-10.png new file mode 100644 index 0000000000000000000000000000000000000000..33dda6e0d0497c1589743c19a8d041a775b7bb7f Binary files /dev/null and b/docs/zh/docs/desktop/figures/Cinnamon-10.png differ diff --git a/docs/zh/docs/desktop/figures/Cinnamon-11.png b/docs/zh/docs/desktop/figures/Cinnamon-11.png new file mode 100644 index 0000000000000000000000000000000000000000..98570f04a066d550b5971afc94ee1c63d24f6275 Binary files /dev/null and b/docs/zh/docs/desktop/figures/Cinnamon-11.png differ diff --git a/docs/zh/docs/desktop/figures/Cinnamon-12.png b/docs/zh/docs/desktop/figures/Cinnamon-12.png new file mode 100644 index 0000000000000000000000000000000000000000..56cc0446efd9d72d97905296fd6f19e9e2ac4047 Binary files /dev/null and b/docs/zh/docs/desktop/figures/Cinnamon-12.png differ diff --git a/docs/zh/docs/desktop/figures/Cinnamon-13.png b/docs/zh/docs/desktop/figures/Cinnamon-13.png new file mode 100644 index 0000000000000000000000000000000000000000..a3191cc6b2bb2e418353b76bcf645be954655a20 Binary files /dev/null and b/docs/zh/docs/desktop/figures/Cinnamon-13.png differ diff --git a/docs/zh/docs/desktop/figures/Cinnamon-14.png b/docs/zh/docs/desktop/figures/Cinnamon-14.png new file mode 100644 index 0000000000000000000000000000000000000000..d673b9d12c8fb5ccaa0b0f3a35b85f939f1040c8 Binary files /dev/null and b/docs/zh/docs/desktop/figures/Cinnamon-14.png differ diff --git a/docs/zh/docs/desktop/figures/Cinnamon-15.png b/docs/zh/docs/desktop/figures/Cinnamon-15.png new file mode 100644 index 0000000000000000000000000000000000000000..518c3dca4b9b58f45f7aee5ef974c3dd41804e1d Binary files /dev/null and b/docs/zh/docs/desktop/figures/Cinnamon-15.png differ diff --git a/docs/zh/docs/desktop/figures/Cinnamon-16.png b/docs/zh/docs/desktop/figures/Cinnamon-16.png new file mode 100644 index 0000000000000000000000000000000000000000..17ac8544dab141ddc8d7d98f1712757efedb5531 Binary files /dev/null and b/docs/zh/docs/desktop/figures/Cinnamon-16.png differ diff --git a/docs/zh/docs/desktop/figures/Cinnamon-17.png b/docs/zh/docs/desktop/figures/Cinnamon-17.png new file mode 100644 index 0000000000000000000000000000000000000000..07a62594a1acadceeeaabe0e7cbe63c192f0ab37 Binary files /dev/null and b/docs/zh/docs/desktop/figures/Cinnamon-17.png differ diff --git a/docs/zh/docs/desktop/figures/Cinnamon-18.png b/docs/zh/docs/desktop/figures/Cinnamon-18.png new file mode 100644 index 0000000000000000000000000000000000000000..d088bb1075ebd2c76304c5bd400a3892d401dfa0 Binary files /dev/null and b/docs/zh/docs/desktop/figures/Cinnamon-18.png differ diff --git a/docs/zh/docs/desktop/figures/Cinnamon-19.png b/docs/zh/docs/desktop/figures/Cinnamon-19.png new file mode 100644 index 0000000000000000000000000000000000000000..65198c16e3bdf0b948ba8da1d05943ea87065dfc Binary files /dev/null and b/docs/zh/docs/desktop/figures/Cinnamon-19.png differ diff --git a/docs/zh/docs/desktop/figures/Cinnamon-20.png b/docs/zh/docs/desktop/figures/Cinnamon-20.png new file mode 100644 index 0000000000000000000000000000000000000000..ac4c66887846509474cd57740079d396f5ffee64 Binary files /dev/null and b/docs/zh/docs/desktop/figures/Cinnamon-20.png differ diff --git a/docs/zh/docs/desktop/figures/Cinnamon-21.png b/docs/zh/docs/desktop/figures/Cinnamon-21.png new file mode 100644 index 0000000000000000000000000000000000000000..ecc80c0ee42385907cea276726c891aab06f5ea2 Binary files /dev/null and b/docs/zh/docs/desktop/figures/Cinnamon-21.png differ diff --git a/docs/zh/docs/desktop/figures/Cinnamon-22.png b/docs/zh/docs/desktop/figures/Cinnamon-22.png new file mode 100644 index 0000000000000000000000000000000000000000..453a1b96f69ca37cf648e1bfd8a247cbd63f7f1f Binary files /dev/null and b/docs/zh/docs/desktop/figures/Cinnamon-22.png differ diff --git a/docs/zh/docs/desktop/figures/Cinnamon-23.png b/docs/zh/docs/desktop/figures/Cinnamon-23.png new file mode 100644 index 0000000000000000000000000000000000000000..3290e73af52f1e88a435e925d6a17d21e78e287c Binary files /dev/null and b/docs/zh/docs/desktop/figures/Cinnamon-23.png differ diff --git a/docs/zh/docs/desktop/figures/Cinnamon-24.png b/docs/zh/docs/desktop/figures/Cinnamon-24.png new file mode 100644 index 0000000000000000000000000000000000000000..825e58ddc9ec0027f0ff94b1d327eaff3a145357 Binary files /dev/null and b/docs/zh/docs/desktop/figures/Cinnamon-24.png differ diff --git a/docs/zh/docs/desktop/figures/Cinnamon-25.png b/docs/zh/docs/desktop/figures/Cinnamon-25.png new file mode 100644 index 0000000000000000000000000000000000000000..7b3cdbe8e85b55dc9ee92569f6d668c9defc76eb Binary files /dev/null and b/docs/zh/docs/desktop/figures/Cinnamon-25.png differ diff --git a/docs/zh/docs/desktop/figures/Cinnamon-26.png b/docs/zh/docs/desktop/figures/Cinnamon-26.png new file mode 100644 index 0000000000000000000000000000000000000000..0d696fa8cbd18910bb16ca2c14996fefb5f0cb79 Binary files /dev/null and b/docs/zh/docs/desktop/figures/Cinnamon-26.png differ diff --git a/docs/zh/docs/desktop/figures/Cinnamon-27.png b/docs/zh/docs/desktop/figures/Cinnamon-27.png new file mode 100644 index 0000000000000000000000000000000000000000..7312579e88c211b656a1b6e339373abfca7c8984 Binary files /dev/null and b/docs/zh/docs/desktop/figures/Cinnamon-27.png differ diff --git a/docs/zh/docs/desktop/figures/Cinnamon-28.png b/docs/zh/docs/desktop/figures/Cinnamon-28.png new file mode 100644 index 0000000000000000000000000000000000000000..e5cf7e56e5663768e4f2698c77aeaa69c899b291 Binary files /dev/null and b/docs/zh/docs/desktop/figures/Cinnamon-28.png differ diff --git a/docs/zh/docs/desktop/figures/Cinnamon-29.png b/docs/zh/docs/desktop/figures/Cinnamon-29.png new file mode 100644 index 0000000000000000000000000000000000000000..d796cb8d80a60281a7f67ec494c76ad14d06ac1b Binary files /dev/null and b/docs/zh/docs/desktop/figures/Cinnamon-29.png differ diff --git a/docs/zh/docs/desktop/figures/Cinnamon-30-0.png b/docs/zh/docs/desktop/figures/Cinnamon-30-0.png new file mode 100644 index 0000000000000000000000000000000000000000..8ea95ca410376dbc26729d0dec8bfc171911e960 Binary files /dev/null and b/docs/zh/docs/desktop/figures/Cinnamon-30-0.png differ diff --git a/docs/zh/docs/desktop/figures/Cinnamon-30-1.png b/docs/zh/docs/desktop/figures/Cinnamon-30-1.png new file mode 100644 index 0000000000000000000000000000000000000000..730e9bdba19949c6e118c237af302b492f3d41b8 Binary files /dev/null and b/docs/zh/docs/desktop/figures/Cinnamon-30-1.png differ diff --git a/docs/zh/docs/desktop/figures/Cinnamon-31.png b/docs/zh/docs/desktop/figures/Cinnamon-31.png new file mode 100644 index 0000000000000000000000000000000000000000..f80f3c86b92e6e00bf76c0101ce52af503d9b05c Binary files /dev/null and b/docs/zh/docs/desktop/figures/Cinnamon-31.png differ diff --git a/docs/zh/docs/desktop/figures/Cinnamon-32.png b/docs/zh/docs/desktop/figures/Cinnamon-32.png new file mode 100644 index 0000000000000000000000000000000000000000..ed8f74fc04472e45ae6c76a7c2507da5dec28263 Binary files /dev/null and b/docs/zh/docs/desktop/figures/Cinnamon-32.png differ diff --git a/docs/zh/docs/desktop/figures/Cinnamon-33.png b/docs/zh/docs/desktop/figures/Cinnamon-33.png new file mode 100644 index 0000000000000000000000000000000000000000..a90dda9e151f9ca48ff6c296ff62676b22a191ae Binary files /dev/null and b/docs/zh/docs/desktop/figures/Cinnamon-33.png differ diff --git a/docs/zh/docs/desktop/figures/Cinnamon-34.png b/docs/zh/docs/desktop/figures/Cinnamon-34.png new file mode 100644 index 0000000000000000000000000000000000000000..77c74765bb7116bf8a95b0164cb1de2d9032e56e Binary files /dev/null and b/docs/zh/docs/desktop/figures/Cinnamon-34.png differ diff --git a/docs/zh/docs/desktop/figures/Cinnamon-35-0.png b/docs/zh/docs/desktop/figures/Cinnamon-35-0.png new file mode 100644 index 0000000000000000000000000000000000000000..4321c9e9a52bcf99bde6d72fae68647ab13510b0 Binary files /dev/null and b/docs/zh/docs/desktop/figures/Cinnamon-35-0.png differ diff --git a/docs/zh/docs/desktop/figures/Cinnamon-35-1.png b/docs/zh/docs/desktop/figures/Cinnamon-35-1.png new file mode 100644 index 0000000000000000000000000000000000000000..e6f75a945fc73d5478c6515498c7a6a4781ca04f Binary files /dev/null and b/docs/zh/docs/desktop/figures/Cinnamon-35-1.png differ diff --git a/docs/zh/docs/desktop/figures/Cinnamon-36.png b/docs/zh/docs/desktop/figures/Cinnamon-36.png new file mode 100644 index 0000000000000000000000000000000000000000..a832fe2b440079f53775a2ba8c3115f57a89ab2c Binary files /dev/null and b/docs/zh/docs/desktop/figures/Cinnamon-36.png differ diff --git a/docs/zh/docs/desktop/figures/Cinnamon-37.png b/docs/zh/docs/desktop/figures/Cinnamon-37.png new file mode 100644 index 0000000000000000000000000000000000000000..f091a5e910e7cb16dadd311de1100f8830a0eaf7 Binary files /dev/null and b/docs/zh/docs/desktop/figures/Cinnamon-37.png differ diff --git a/docs/zh/docs/desktop/figures/Cinnamon-38.png b/docs/zh/docs/desktop/figures/Cinnamon-38.png new file mode 100644 index 0000000000000000000000000000000000000000..7703dc11f1be241d9fe7e30452e7431c925833d3 Binary files /dev/null and b/docs/zh/docs/desktop/figures/Cinnamon-38.png differ diff --git a/docs/zh/docs/desktop/figures/Cinnamon-39.png b/docs/zh/docs/desktop/figures/Cinnamon-39.png new file mode 100644 index 0000000000000000000000000000000000000000..abf29f6ee9aaf13ab1f668a787d459a5ab0cb20c Binary files /dev/null and b/docs/zh/docs/desktop/figures/Cinnamon-39.png differ diff --git a/docs/zh/docs/desktop/figures/Cinnamon-40.png b/docs/zh/docs/desktop/figures/Cinnamon-40.png new file mode 100644 index 0000000000000000000000000000000000000000..7c8ee5f4e78b46a0d762be06f96725ecef5d09b2 Binary files /dev/null and b/docs/zh/docs/desktop/figures/Cinnamon-40.png differ diff --git a/docs/zh/docs/desktop/figures/Cinnamon-41-0.png b/docs/zh/docs/desktop/figures/Cinnamon-41-0.png new file mode 100644 index 0000000000000000000000000000000000000000..56ea86556624602f4496b4079335245ac8c875a3 Binary files /dev/null and b/docs/zh/docs/desktop/figures/Cinnamon-41-0.png differ diff --git a/docs/zh/docs/desktop/figures/Cinnamon-41-1.png b/docs/zh/docs/desktop/figures/Cinnamon-41-1.png new file mode 100644 index 0000000000000000000000000000000000000000..44afad705b026dd69a9d2d7bf2ef35610720b85d Binary files /dev/null and b/docs/zh/docs/desktop/figures/Cinnamon-41-1.png differ diff --git a/docs/zh/docs/desktop/figures/Cinnamon-42.png b/docs/zh/docs/desktop/figures/Cinnamon-42.png new file mode 100644 index 0000000000000000000000000000000000000000..8270b69ca590c1831fbe54e2d08ced55bccef89d Binary files /dev/null and b/docs/zh/docs/desktop/figures/Cinnamon-42.png differ diff --git a/docs/zh/docs/desktop/figures/Cinnamon-43.png b/docs/zh/docs/desktop/figures/Cinnamon-43.png new file mode 100644 index 0000000000000000000000000000000000000000..48259addbdb8cf18303d2afbcd6cbad77deaf141 Binary files /dev/null and b/docs/zh/docs/desktop/figures/Cinnamon-43.png differ diff --git a/docs/zh/docs/desktop/figures/Cinnamon-44.png b/docs/zh/docs/desktop/figures/Cinnamon-44.png new file mode 100644 index 0000000000000000000000000000000000000000..e35a4acce457834d4d8608ee7fba783d596548e2 Binary files /dev/null and b/docs/zh/docs/desktop/figures/Cinnamon-44.png differ diff --git a/docs/zh/docs/desktop/figures/Cinnamon-45.png b/docs/zh/docs/desktop/figures/Cinnamon-45.png new file mode 100644 index 0000000000000000000000000000000000000000..d6d5e88587e26552ab4ab4d323eea0ae5ce721d2 Binary files /dev/null and b/docs/zh/docs/desktop/figures/Cinnamon-45.png differ diff --git a/docs/zh/docs/desktop/figures/Cinnamon-46.png b/docs/zh/docs/desktop/figures/Cinnamon-46.png new file mode 100644 index 0000000000000000000000000000000000000000..8e41651298319f1b72c3dce5b09cb1323c9a15a7 Binary files /dev/null and b/docs/zh/docs/desktop/figures/Cinnamon-46.png differ diff --git a/docs/zh/docs/desktop/figures/Cinnamon-47.png b/docs/zh/docs/desktop/figures/Cinnamon-47.png new file mode 100644 index 0000000000000000000000000000000000000000..eaa54608d956576555603d64ba72e374f147a315 Binary files /dev/null and b/docs/zh/docs/desktop/figures/Cinnamon-47.png differ diff --git a/docs/zh/docs/desktop/figures/Cinnamon-48.png b/docs/zh/docs/desktop/figures/Cinnamon-48.png new file mode 100644 index 0000000000000000000000000000000000000000..1ca6cb7b39ab375a69b95a7dfa02fa3acd8bb299 Binary files /dev/null and b/docs/zh/docs/desktop/figures/Cinnamon-48.png differ diff --git a/docs/zh/docs/desktop/figures/Cinnamon-49.png b/docs/zh/docs/desktop/figures/Cinnamon-49.png new file mode 100644 index 0000000000000000000000000000000000000000..07fe6abf2ca2d7e8dd5184c760f416d094c4629d Binary files /dev/null and b/docs/zh/docs/desktop/figures/Cinnamon-49.png differ diff --git a/docs/zh/docs/desktop/figures/Cinnamon-50.png b/docs/zh/docs/desktop/figures/Cinnamon-50.png new file mode 100644 index 0000000000000000000000000000000000000000..c5452b655b9100c7d144d9d6e923f29664998ca0 Binary files /dev/null and b/docs/zh/docs/desktop/figures/Cinnamon-50.png differ diff --git a/docs/zh/docs/desktop/figures/Cinnamon-51.png b/docs/zh/docs/desktop/figures/Cinnamon-51.png new file mode 100644 index 0000000000000000000000000000000000000000..72644867adbb64db4503ff5345425a32bf1cae6d Binary files /dev/null and b/docs/zh/docs/desktop/figures/Cinnamon-51.png differ diff --git a/docs/zh/docs/desktop/figures/Cinnamon-52.png b/docs/zh/docs/desktop/figures/Cinnamon-52.png new file mode 100644 index 0000000000000000000000000000000000000000..571f6ac34edf149cc1e5bd30a875e4148dd4fdd3 Binary files /dev/null and b/docs/zh/docs/desktop/figures/Cinnamon-52.png differ diff --git a/docs/zh/docs/desktop/figures/Cinnamon-53.png b/docs/zh/docs/desktop/figures/Cinnamon-53.png new file mode 100644 index 0000000000000000000000000000000000000000..1c7e9051ca448b017e13c6cbe6be66d2f83475c5 Binary files /dev/null and b/docs/zh/docs/desktop/figures/Cinnamon-53.png differ diff --git a/docs/zh/docs/desktop/figures/Cinnamon-54.png b/docs/zh/docs/desktop/figures/Cinnamon-54.png new file mode 100644 index 0000000000000000000000000000000000000000..1b61db111ebdcb9bde1bff1cc08a2daed79a9f19 Binary files /dev/null and b/docs/zh/docs/desktop/figures/Cinnamon-54.png differ diff --git a/docs/zh/docs/desktop/figures/HA-qdevice.png b/docs/zh/docs/desktop/figures/HA-qdevice.png new file mode 100644 index 0000000000000000000000000000000000000000..2964f36c952fc7e62fb7b041fcf6d2de8ead712c Binary files /dev/null and b/docs/zh/docs/desktop/figures/HA-qdevice.png differ diff --git a/score_admins.yaml b/score_admins.yaml new file mode 100644 index 0000000000000000000000000000000000000000..b1a8b426ac1e462edcfe0acb3e6018967839f66d --- /dev/null +++ b/score_admins.yaml @@ -0,0 +1,6 @@ +score_admins: + amy_mayun + zhangcuihong + lanlanbenming + rachel_123456 + hebin03 \ No newline at end of file