diff --git "a/content/zh/docs/Administration/Apache\346\234\215\345\212\241\345\231\250.md" "b/content/zh/docs/Administration/Apache\346\234\215\345\212\241\345\231\250.md" new file mode 100644 index 0000000000000000000000000000000000000000..ebb411f4bcc7107d9172bc9634253ed3e5a17bd3 --- /dev/null +++ "b/content/zh/docs/Administration/Apache\346\234\215\345\212\241\345\231\250.md" @@ -0,0 +1 @@ +# Apache服务器 diff --git a/content/zh/docs/Administration/FAQ-4.md b/content/zh/docs/Administration/FAQ-4.md deleted file mode 100644 index 3d9e512f98e6ff858c61df22692a990aa77fb3bc..0000000000000000000000000000000000000000 --- a/content/zh/docs/Administration/FAQ-4.md +++ /dev/null @@ -1 +0,0 @@ -# FAQ diff --git a/content/zh/docs/Administration/FAQ-54.md b/content/zh/docs/Administration/FAQ-54.md new file mode 100644 index 0000000000000000000000000000000000000000..216f10c24f5fe401b9ab5e2285c9003d093966fb --- /dev/null +++ b/content/zh/docs/Administration/FAQ-54.md @@ -0,0 +1 @@ +# FAQ diff --git a/content/zh/docs/Administration/FAQ.md b/content/zh/docs/Administration/FAQ.md index 7ae384fc87ab704f27ff55521d351b4df994ffd3..c5c81f798cf7ca3dbf5e378db7bad6e1af169367 100644 --- a/content/zh/docs/Administration/FAQ.md +++ b/content/zh/docs/Administration/FAQ.md @@ -1 +1 @@ -# FAQ +# FAQ diff --git "a/content/zh/docs/Administration/IPv4\347\232\204dhclient\345\256\210\346\212\244\350\277\233\347\250\213\346\214\201\344\271\205\345\214\226\351\205\215\347\275\256.md" "b/content/zh/docs/Administration/IPv4\347\232\204dhclient\345\256\210\346\212\244\350\277\233\347\250\213\346\214\201\344\271\205\345\214\226\351\205\215\347\275\256.md" index 4c59d3d6512af4090cd7ff3224bde9864f842354..313aff5aa6beb63e885b3663f3b08571b1fdf7a9 100644 --- "a/content/zh/docs/Administration/IPv4\347\232\204dhclient\345\256\210\346\212\244\350\277\233\347\250\213\346\214\201\344\271\205\345\214\226\351\205\215\347\275\256.md" +++ "b/content/zh/docs/Administration/IPv4\347\232\204dhclient\345\256\210\346\212\244\350\277\233\347\250\213\346\214\201\344\271\205\345\214\226\351\205\215\347\275\256.md" @@ -1,4 +1,4 @@ -# IPv4的dhclient守护进程持久化配置 +# IPv4的dhclient守护进程持久化配置 ## 概述 diff --git "a/content/zh/docs/Administration/IPv6\344\275\277\347\224\250\345\267\256\345\274\202\350\257\264\346\230\216\357\274\210vs-IPv4\357\274\211.md" "b/content/zh/docs/Administration/IPv6\344\275\277\347\224\250\345\267\256\345\274\202\350\257\264\346\230\216\357\274\210vs-IPv4\357\274\211.md" index f1219662bf04282ee19df10abb655c10dcd7f618..3267da1f3b312a97efe42ee0232b219f0189dbe8 100644 --- "a/content/zh/docs/Administration/IPv6\344\275\277\347\224\250\345\267\256\345\274\202\350\257\264\346\230\216\357\274\210vs-IPv4\357\274\211.md" +++ "b/content/zh/docs/Administration/IPv6\344\275\277\347\224\250\345\267\256\345\274\202\350\257\264\346\230\216\357\274\210vs-IPv4\357\274\211.md" @@ -1 +1,4 @@ -# IPv6使用差异说明(vs IPv4) +# IPv6使用差异说明(vs IPv4) + + + diff --git "a/content/zh/docs/Administration/KAE\345\274\225\346\223\216\344\275\277\347\224\250\347\244\272\344\276\213\344\273\243\347\240\201.md" "b/content/zh/docs/Administration/KAE\345\274\225\346\223\216\344\275\277\347\224\250\347\244\272\344\276\213\344\273\243\347\240\201.md" new file mode 100644 index 0000000000000000000000000000000000000000..0b74c382851ca6ee0cb4b0ac3247d8aa1030192e --- /dev/null +++ "b/content/zh/docs/Administration/KAE\345\274\225\346\223\216\344\275\277\347\224\250\347\244\272\344\276\213\344\273\243\347\240\201.md" @@ -0,0 +1,122 @@ +# KAE引擎使用示例代码 + +``` +#include +``` + +``` +#include +``` + +``` + +``` + +``` +/* OpenSSL headers */ +``` + +``` +#include +``` + +``` +#include +``` + +``` +#include +``` + +``` +#include +``` + +``` + +``` + +``` +int main(int argc, char **argv) +``` + +``` +{ +``` + +``` + /* Initializing OpenSSL */ +``` + +``` + SSL_load_error_strings(); +``` + +``` + ERR_load_BIO_strings(); +``` + +``` + OpenSSL_add_all_algorithms(); +``` + +``` + +``` + +``` + /*You can use ENGINE_by_id Function to get the handle of the Huawei Accelerator Engine*/ +``` + +``` + ENGINE *e = ENGINE_by_id("kae"); +``` + +``` + /*使能加速器异步功能,可选配置,设置为“0”表示不使能,设置为“1”表示使能,默认使能异步功能*/ +``` + +``` + ENGINE_ctrl_cmd_string(e, "KAE_CMD_ENABLE_ASYNC", "1", 0) +``` + +``` + ENGINE_init(e); +``` + +``` + +``` + +``` + RSA *rsa = RSA_new_method(e);#指定引擎用于RSA加解密 +``` + +``` + /*The user code*/ +``` + +``` + …… +``` + +``` + +``` + +``` +; +``` + +``` + ENGINE_free(e); +``` + +``` +; +``` + +``` +} +``` + diff --git "a/content/zh/docs/Administration/LVM\347\256\200\344\273\213.md" "b/content/zh/docs/Administration/LVM\347\256\200\344\273\213.md" new file mode 100644 index 0000000000000000000000000000000000000000..f6b75331f2bd146c8eab9cbd878b6166a0eb7352 --- /dev/null +++ "b/content/zh/docs/Administration/LVM\347\256\200\344\273\213.md" @@ -0,0 +1,27 @@ +# LVM简介 + +LVM是逻辑卷管理(Logical Volume Manager)的简称,它是Linux环境下对磁盘分区进行管理的一种机制。LVM通过在硬盘和文件系统之间添加一个逻辑层,来为文件系统屏蔽下层硬盘分区布局,提高硬盘分区管理的灵活性, + +使用LVM管理硬盘的基本过程如下: + +1. 将硬盘创建为物理卷 +2. 将多个物理卷组合成卷组 +3. 在卷组中创建逻辑卷 +4. 在逻辑卷之上创建文件系统 + +通过LVM管理硬盘之后,文件系统不再受限于硬盘的大小,可以分布在多个硬盘上,也可以动态扩容。 + +## 基本概念 + +- 物理存储介质(The physical media):指系统的物理存储设备,如硬盘,系统中为/dev/hda、/dev/sda等等,是存储系统最低层的存储单元。 + +- 物理卷(Physical Volume,PV):指硬盘分区或从逻辑上与磁盘分区具有同样功能的设备\(如RAID\),是LVM的基本存储逻辑块。物理卷包括一个特殊的标签,该标签默认存放在第二个 512 字节扇区,但也可以将标签放在最开始的四个扇区之一。该标签包含物理卷的随机唯一识别符(UUID),记录块设备的大小和LVM元数据在设备中的存储位置。 + +- 卷组(Volume Group,VG):由物理卷组成,屏蔽了底层物理卷细节。可在卷组上创建一个或多个逻辑卷且不用考虑具体的物理卷信息。 + +- 逻辑卷(Logical Volume,LV):卷组不能直接用,需要划分成逻辑卷才能使用。逻辑卷可以格式化成不同的文件系统,挂载后直接使用。 + +- 物理块(Physical Extent,PE):物理卷以大小相等的“块”为单位存储,块的大小与卷组中逻辑卷块的大小相同。 + +- 逻辑块(Logical Extent,LE):逻辑卷以“块”为单位存储,在一卷组中的所有逻辑卷的块大小是相同的。 + diff --git "a/content/zh/docs/Administration/Mariadb\346\234\215\345\212\241\345\231\250.md" "b/content/zh/docs/Administration/Mariadb\346\234\215\345\212\241\345\231\250.md" new file mode 100644 index 0000000000000000000000000000000000000000..de5761d8762a1d58b9321fa1a0f1e88184af20e5 --- /dev/null +++ "b/content/zh/docs/Administration/Mariadb\346\234\215\345\212\241\345\231\250.md" @@ -0,0 +1 @@ +# Mariadb服务器 diff --git "a/content/zh/docs/Administration/MySQL\346\234\215\345\212\241\345\231\250.md" "b/content/zh/docs/Administration/MySQL\346\234\215\345\212\241\345\231\250.md" new file mode 100644 index 0000000000000000000000000000000000000000..db54d0f8885418fb15e35bf6cb36831c8e51cb2b --- /dev/null +++ "b/content/zh/docs/Administration/MySQL\346\234\215\345\212\241\345\231\250.md" @@ -0,0 +1 @@ +# MySQL服务器 diff --git "a/content/zh/docs/Administration/NetworkManager\346\234\215\345\212\241\351\205\215\347\275\256\345\267\256\345\274\202\350\257\264\346\230\216.md" "b/content/zh/docs/Administration/NetworkManager\346\234\215\345\212\241\351\205\215\347\275\256\345\267\256\345\274\202\350\257\264\346\230\216.md" index a7ac33d57641550b9013167c70be946abbfcd5a4..1631ea71edf25d44104a77a13433bd7812b62a66 100644 --- "a/content/zh/docs/Administration/NetworkManager\346\234\215\345\212\241\351\205\215\347\275\256\345\267\256\345\274\202\350\257\264\346\230\216.md" +++ "b/content/zh/docs/Administration/NetworkManager\346\234\215\345\212\241\351\205\215\347\275\256\345\267\256\345\274\202\350\257\264\346\230\216.md" @@ -1,4 +1,4 @@ -# NetworkManager服务配置差异说明 +# NetworkManager服务配置差异说明 ## 概述 diff --git "a/content/zh/docs/Administration/Nginx\346\234\215\345\212\241\345\231\250.md" "b/content/zh/docs/Administration/Nginx\346\234\215\345\212\241\345\231\250.md" new file mode 100644 index 0000000000000000000000000000000000000000..bd0ca9bd9523c0b2741a2551884b85e307fd7a5a --- /dev/null +++ "b/content/zh/docs/Administration/Nginx\346\234\215\345\212\241\345\231\250.md" @@ -0,0 +1 @@ +# Nginx服务器 diff --git "a/content/zh/docs/Administration/OpenSSL\345\212\240\351\200\237\345\231\250\345\274\225\346\223\216\346\265\213\350\257\225.md" "b/content/zh/docs/Administration/OpenSSL\345\212\240\351\200\237\345\231\250\345\274\225\346\223\216\346\265\213\350\257\225.md" new file mode 100644 index 0000000000000000000000000000000000000000..4152dda09bf37279f61642178ea0e1e47abf7525 --- /dev/null +++ "b/content/zh/docs/Administration/OpenSSL\345\212\240\351\200\237\345\231\250\345\274\225\346\223\216\346\265\213\350\257\225.md" @@ -0,0 +1,133 @@ +# OpenSSL加速器引擎测试 + +用户可以通过以下命令测试部分加速器功能。 + +- 使用OpenSSL的软件算法测试RSA性能。 + + ``` + linux-rmw4:/usr/local/bin # ./openssl speed -elapsed rsa2048 + ... + sign verify sign/s verify/s + rsa 2048 bits 0.001384s 0.000035s 724.1 28365.8. + ``` + +- 使用KAE引擎的测试RSA性能。 + + ``` + linux-rmw4:/usr/local/bin # ./openssl speed -elapsed -engine kae rsa2048 + .... + sign verify sign/s verify/s + rsa 2048 bits 0.000355s 0.000022s 2819.0 45478.4 + ``` + + +>![](public_sys-resources/icon-note.gif) **说明:** +>使用KAE引擎加速后签名性能从724.1 sign/s提升到2819sign/s。 + +- 使用OpenSSL的软件算法测试异步RSA性能。 + + ``` + linux-rmw4:/usr/local/bin # ./openssl speed -elapsed -async_jobs 36 rsa2048 + .... + sign verify sign/s verify/s + rsa 2048 bits 0.001318s 0.000032s 735.7 28555 + ``` + +- 使用KAE引擎的测试异步RSA性能。 + + ``` + linux-rmw4:/usr/local/bin # ./openssl speed -engine kae -elapsed -async_jobs 36 rsa2048 + .... + sign verify sign/s verify/s + rsa 2048 bits 0.000018s 0.000009s 54384.1 105317.0 + ``` + + +>![](public_sys-resources/icon-note.gif) **说明:** +>使用KAE引擎加速后异步RSA签名性能从735.7 sign/s提升到 54384.1sign/s。 + +- 使用OpenSSL的软件算法测试SM4 CBC模式性能。 + + ``` + linux-rmw4:/usr/local/bin # ./openssl speed -elapsed -evp sm4-cbc + You have chosen to measure elapsed time instead of user CPU time. + .... + Doing sm4-cbc for 3s on 10240 size blocks: 2196 sm4-cbc's in 3.00s .... + type 51200 bytes 102400 bytes1048576 bytes2097152 bytes4194304 bytes8388608 bytes + sm4-cbc 82312.53k 85196.80k 85284.18k 85000.85k 85284.18k 85261.26k + ``` + +- 使用KAE引擎的测试SM4 CBC模式性能。 + + ``` + linux-rmw4:/usr/local/bin # ./openssl speed -elapsed -engine kae -evp sm4-cbc + engine "kae" set. + You have chosen to measure elapsed time instead of user CPU time. + ... + Doing sm4-cbc for 3s on 1048576 size blocks: 11409 sm4-cbc's in 3.00s + ... + type 51200 bytes 102400 bytes1048576 bytes2097152 bytes4194304 bytes8388608 bytes + sm4-cbc 383317.33k 389427.20k 395313.15k 392954.73k 394264.58k 394264.58k + ``` + + +>![](public_sys-resources/icon-note.gif) **说明:** +>使用KAE加速后SM4 CBC模式在输入数据块大小为8M时,从82312.53k/s提升到383317.33k/s。 + +- 使用OpenSSL的软件算法测试SM3模式性能。 + + ``` + linux-rmw4:/usr/local/bin # ./openssl speed -elapsed -evp sm3 + You have chosen to measure elapsed time instead of user CPU time. + Doing sm3 for 3s on 102400 size blocks: 1536 sm3's in 3.00s + .... + type 51200 bytes 102400 bytes1048576 bytes2097152 bytes4194304 bytes8388608 bytes + sm3 50568.53k 52428.80k 52428.80k 52428.80k 52428.80k 52428.80k + ``` + +- 使用KAE引擎测试SM3模式性能。 + + ``` + linux-rmw4:/usr/local/bin # ./openssl speed -elapsed -engine kae -evp sm3 + engine "kae" set. + You have chosen to measure elapsed time instead of user CPU time. + Doing sm3 for 3s on 102400 size blocks: 19540 sm3's in 3.00s + .... + type 51200 bytes 102400 bytes 1048576 bytes 2097152 bytes 4194304 bytes 8388608 bytes + sm3 648243.20k 666965.33k 677030.57k 678778.20k 676681.05k 668292.44k + ``` + + +>![](public_sys-resources/icon-note.gif) **说明:** +>使用KAE加速后SM3算法在输入数据块大小为8M时,从52428.80 k/s提升到668292.44k/s。 + +- 使用OpenSSL软件算法测试AES算法CBC模式异步性能。 + + ``` + linux-rmw4:/usr/local/bin # ./openssl speed -elapsed -evp aes-128-cbc -async_jobs 4 + You have chosen to measure elapsed time instead of user CPU time. + Doing aes-128-cbc for 3s on 51200 size blocks: 65773 aes-128-cbc's in 3.00s + Doing aes-128-cbc for 3s on 102400 size blocks: 32910 aes-128-cbc's in 3.00s + .... + type 51200 bytes 102400 bytes1048576 bytes2097152 bytes4194304 bytes8388608 bytes + aes-128-cbc 1122525.87k 1123328.00k 1120578.22k 1121277.27k 1119879.17k 1115684.86k + ``` + +- 使用的KEA引擎测试AES算法CBC模式异步性能。 + + ``` + linux-rmw4:/usr/local/bin # ./openssl speed -elapsed -evp aes-128-cbc -async_jobs 4 -engine kae + engine "kae" set. + You have chosen to measure elapsed time instead of user CPU time. + Doing aes-128-cbc for 3s on 51200 size blocks: 219553 aes-128-cbc's in 3.00s + Doing aes-128-cbc for 3s on 102400 size blocks: 117093 aes-128-cbc's in 3.00s + .... + type 51200 bytes 102400 bytes1048576 bytes2097152 bytes4194304 bytes8388608 bytes + aes-128-cbc 3747037.87k 3996774.40k 1189085.18k 1196774.74k 1196979.11k 1199570.94k + ``` + + +>![](public_sys-resources/icon-note.gif) **说明:** +>- AES仅支持数据长度为256KB及以下场景的异步使用。 +>- 使用KAE加速后AES算法在输入数据块为100K大小时,从1123328.00k/s提升到3996774.40 k/s 。 + diff --git "a/content/zh/docs/Administration/PostgreSql\346\234\215\345\212\241\345\231\250.md" "b/content/zh/docs/Administration/PostgreSql\346\234\215\345\212\241\345\231\250.md" new file mode 100644 index 0000000000000000000000000000000000000000..94401fa0033c861ba7a93fe928bda092b0c256a1 --- /dev/null +++ "b/content/zh/docs/Administration/PostgreSql\346\234\215\345\212\241\345\231\250.md" @@ -0,0 +1 @@ +# PostgreSql服务器 diff --git "a/content/zh/docs/Administration/Rsyslog\345\234\250IPv4\345\222\214IPv6\346\267\267\345\220\210\344\275\277\347\224\250\345\234\272\346\231\257\344\270\255\346\227\245\345\277\227\344\274\240\350\276\223\345\273\266\350\277\237.md" "b/content/zh/docs/Administration/Rsyslog\345\234\250IPv4\345\222\214IPv6\346\267\267\345\220\210\344\275\277\347\224\250\345\234\272\346\231\257\344\270\255\346\227\245\345\277\227\344\274\240\350\276\223\345\273\266\350\277\237.md" index 90d0342ce01b7ad122a0837050885aade78a7051..40394520afb8e07615c39767333f6d4745842077 100644 --- "a/content/zh/docs/Administration/Rsyslog\345\234\250IPv4\345\222\214IPv6\346\267\267\345\220\210\344\275\277\347\224\250\345\234\272\346\231\257\344\270\255\346\227\245\345\277\227\344\274\240\350\276\223\345\273\266\350\277\237.md" +++ "b/content/zh/docs/Administration/Rsyslog\345\234\250IPv4\345\222\214IPv6\346\267\267\345\220\210\344\275\277\347\224\250\345\234\272\346\231\257\344\270\255\346\227\245\345\277\227\344\274\240\350\276\223\345\273\266\350\277\237.md" @@ -1,4 +1,4 @@ -# Rsyslog在IPv4和IPv6混合使用场景中日志传输延迟 +# Rsyslog在IPv4和IPv6混合使用场景中日志传输延迟 ## 问题现象 diff --git "a/content/zh/docs/Administration/bond\345\217\243\345\267\262\345\205\267\346\234\211\345\244\232\344\270\252IPv6\345\234\260\345\235\200\346\227\266-\346\267\273\345\212\240\346\210\226\345\210\240\351\231\244IPv6\345\234\260\345\235\200\350\200\227\346\227\266\350\277\207\344\271\205.md" "b/content/zh/docs/Administration/bond\345\217\243\345\267\262\345\205\267\346\234\211\345\244\232\344\270\252IPv6\345\234\260\345\235\200\346\227\266-\346\267\273\345\212\240\346\210\226\345\210\240\351\231\244IPv6\345\234\260\345\235\200\350\200\227\346\227\266\350\277\207\344\271\205.md" index 7464e543310d0f2c3f4e38eda5bb70fbe63f5ad0..7dd1b89bdb20294ad6f9e97d5547009ef2efd4ec 100644 --- "a/content/zh/docs/Administration/bond\345\217\243\345\267\262\345\205\267\346\234\211\345\244\232\344\270\252IPv6\345\234\260\345\235\200\346\227\266-\346\267\273\345\212\240\346\210\226\345\210\240\351\231\244IPv6\345\234\260\345\235\200\350\200\227\346\227\266\350\277\207\344\271\205.md" +++ "b/content/zh/docs/Administration/bond\345\217\243\345\267\262\345\205\267\346\234\211\345\244\232\344\270\252IPv6\345\234\260\345\235\200\346\227\266-\346\267\273\345\212\240\346\210\226\345\210\240\351\231\244IPv6\345\234\260\345\235\200\350\200\227\346\227\266\350\277\207\344\271\205.md" @@ -1,4 +1,4 @@ -# bond口已具有多个IPv6地址时,添加或删除IPv6地址耗时过久 +# bond口已具有多个IPv6地址时,添加或删除IPv6地址耗时过久 ## 问题现象 diff --git "a/content/zh/docs/Administration/dnf\347\233\270\345\205\263\345\221\275\344\273\244.md" "b/content/zh/docs/Administration/dnf\347\233\270\345\205\263\345\221\275\344\273\244.md" index 2b36e7c059d12d900b96294e772f9df3b96f2d5c..efc79e2798e0a80aa7e4bc43b95503c78f4f0a70 100644 --- "a/content/zh/docs/Administration/dnf\347\233\270\345\205\263\345\221\275\344\273\244.md" +++ "b/content/zh/docs/Administration/dnf\347\233\270\345\205\263\345\221\275\344\273\244.md" @@ -1,4 +1,4 @@ -# dnf相关命令 +# dnf相关命令 dnf命令在安装升级时能够自动解析包的依赖关系,一般的使用方式如下: diff --git a/content/zh/docs/Administration/figures/D1376B2A-D036-41C4-B852-E8368F363B5E-1.png b/content/zh/docs/Administration/figures/D1376B2A-D036-41C4-B852-E8368F363B5E-1.png new file mode 100644 index 0000000000000000000000000000000000000000..900cdc07c1f0e844bc48fe2342e83c91a23c24ec Binary files /dev/null and b/content/zh/docs/Administration/figures/D1376B2A-D036-41C4-B852-E8368F363B5E-1.png differ diff --git a/content/zh/docs/Administration/figures/D1376B2A-D036-41C4-B852-E8368F363B5E.png b/content/zh/docs/Administration/figures/D1376B2A-D036-41C4-B852-E8368F363B5E.png new file mode 100644 index 0000000000000000000000000000000000000000..900cdc07c1f0e844bc48fe2342e83c91a23c24ec Binary files /dev/null and b/content/zh/docs/Administration/figures/D1376B2A-D036-41C4-B852-E8368F363B5E.png differ diff --git "a/content/zh/docs/Administration/figures/MariaDB\351\200\273\350\276\221\346\236\266\346\236\204.png" "b/content/zh/docs/Administration/figures/MariaDB\351\200\273\350\276\221\346\236\266\346\236\204.png" new file mode 100644 index 0000000000000000000000000000000000000000..2833363e931e18dbb1bc1589e134fd848ff14190 Binary files /dev/null and "b/content/zh/docs/Administration/figures/MariaDB\351\200\273\350\276\221\346\236\266\346\236\204.png" differ diff --git "a/content/zh/docs/Administration/figures/PostgreSql\346\236\266\346\236\204.png" "b/content/zh/docs/Administration/figures/PostgreSql\346\236\266\346\236\204.png" new file mode 100644 index 0000000000000000000000000000000000000000..8c6fa571c0734951d9e54d6bdf7a52a54fbca32f Binary files /dev/null and "b/content/zh/docs/Administration/figures/PostgreSql\346\236\266\346\236\204.png" differ diff --git a/content/zh/docs/Administration/figures/postgres.png b/content/zh/docs/Administration/figures/postgres.png new file mode 100644 index 0000000000000000000000000000000000000000..e7fc36882718587ec949133fe9892185cb4c2158 Binary files /dev/null and b/content/zh/docs/Administration/figures/postgres.png differ diff --git a/content/zh/docs/Administration/figures/zh-cn_image_0218587972.png b/content/zh/docs/Administration/figures/zh-cn_image_0229622729.png similarity index 100% rename from content/zh/docs/Administration/figures/zh-cn_image_0218587972.png rename to content/zh/docs/Administration/figures/zh-cn_image_0229622729.png diff --git a/content/zh/docs/Administration/figures/zh-cn_image_0218587971.png b/content/zh/docs/Administration/figures/zh-cn_image_0229622789.png similarity index 100% rename from content/zh/docs/Administration/figures/zh-cn_image_0218587971.png rename to content/zh/docs/Administration/figures/zh-cn_image_0229622789.png diff --git a/content/zh/docs/Administration/figures/zh-cn_image_0230050789.png b/content/zh/docs/Administration/figures/zh-cn_image_0230050789.png new file mode 100644 index 0000000000000000000000000000000000000000..0b785be2a026fe059c6ee41700a971a11cfff7ae Binary files /dev/null and b/content/zh/docs/Administration/figures/zh-cn_image_0230050789.png differ diff --git a/content/zh/docs/Administration/figures/zh-cn_image_0231143176.png b/content/zh/docs/Administration/figures/zh-cn_image_0231143176.png new file mode 100644 index 0000000000000000000000000000000000000000..300165189e6d3e8fa356f3d463cfc627c2ece0e2 Binary files /dev/null and b/content/zh/docs/Administration/figures/zh-cn_image_0231143176.png differ diff --git a/content/zh/docs/Administration/figures/zh-cn_image_0231143177.png b/content/zh/docs/Administration/figures/zh-cn_image_0231143177.png new file mode 100644 index 0000000000000000000000000000000000000000..ccafce4b0c58a4da0a9f7aece335ede24e5030c0 Binary files /dev/null and b/content/zh/docs/Administration/figures/zh-cn_image_0231143177.png differ diff --git a/content/zh/docs/Administration/figures/zh-cn_image_0231143178.png b/content/zh/docs/Administration/figures/zh-cn_image_0231143178.png new file mode 100644 index 0000000000000000000000000000000000000000..bff125f096215e91b28ee6deacde6d886e5b21eb Binary files /dev/null and b/content/zh/docs/Administration/figures/zh-cn_image_0231143178.png differ diff --git a/content/zh/docs/Administration/figures/zh-cn_image_0231143180.png b/content/zh/docs/Administration/figures/zh-cn_image_0231143180.png new file mode 100644 index 0000000000000000000000000000000000000000..52f5644f9c985bcc39c0d146006dd9136140bc01 Binary files /dev/null and b/content/zh/docs/Administration/figures/zh-cn_image_0231143180.png differ diff --git a/content/zh/docs/Administration/figures/zh-cn_image_0231143181.png b/content/zh/docs/Administration/figures/zh-cn_image_0231143181.png new file mode 100644 index 0000000000000000000000000000000000000000..d3698e6c0e021a56be46b9f4944c858a425eb66c Binary files /dev/null and b/content/zh/docs/Administration/figures/zh-cn_image_0231143181.png differ diff --git a/content/zh/docs/Administration/figures/zh-cn_image_0231143183.png b/content/zh/docs/Administration/figures/zh-cn_image_0231143183.png new file mode 100644 index 0000000000000000000000000000000000000000..55ffdfa2616ee259543c1539e46c3e05f9335354 Binary files /dev/null and b/content/zh/docs/Administration/figures/zh-cn_image_0231143183.png differ diff --git a/content/zh/docs/Administration/figures/zh-cn_image_0231143185.png b/content/zh/docs/Administration/figures/zh-cn_image_0231143185.png new file mode 100644 index 0000000000000000000000000000000000000000..bff125f096215e91b28ee6deacde6d886e5b21eb Binary files /dev/null and b/content/zh/docs/Administration/figures/zh-cn_image_0231143185.png differ diff --git a/content/zh/docs/Administration/figures/zh-cn_image_0231143187.png b/content/zh/docs/Administration/figures/zh-cn_image_0231143187.png new file mode 100644 index 0000000000000000000000000000000000000000..52f5644f9c985bcc39c0d146006dd9136140bc01 Binary files /dev/null and b/content/zh/docs/Administration/figures/zh-cn_image_0231143187.png differ diff --git a/content/zh/docs/Administration/figures/zh-cn_image_0231143189.png b/content/zh/docs/Administration/figures/zh-cn_image_0231143189.png new file mode 100644 index 0000000000000000000000000000000000000000..7656f3aa5f5907f1e9f981c0cb5d44d4fcb84ef3 Binary files /dev/null and b/content/zh/docs/Administration/figures/zh-cn_image_0231143189.png differ diff --git a/content/zh/docs/Administration/figures/zh-cn_image_0231143191.png b/content/zh/docs/Administration/figures/zh-cn_image_0231143191.png new file mode 100644 index 0000000000000000000000000000000000000000..a82d1bcb2b719e3a372f63ae099cb5d52a93b536 Binary files /dev/null and b/content/zh/docs/Administration/figures/zh-cn_image_0231143191.png differ diff --git a/content/zh/docs/Administration/figures/zh-cn_image_0231143193.png b/content/zh/docs/Administration/figures/zh-cn_image_0231143193.png new file mode 100644 index 0000000000000000000000000000000000000000..94614045bddb0871b44d2f6603402f914871ad61 Binary files /dev/null and b/content/zh/docs/Administration/figures/zh-cn_image_0231143193.png differ diff --git a/content/zh/docs/Administration/figures/zh-cn_image_0231143195.png b/content/zh/docs/Administration/figures/zh-cn_image_0231143195.png new file mode 100644 index 0000000000000000000000000000000000000000..05011dbabe2d245c37ec68de646851bf955a2361 Binary files /dev/null and b/content/zh/docs/Administration/figures/zh-cn_image_0231143195.png differ diff --git a/content/zh/docs/Administration/figures/zh-cn_image_0231143196.png b/content/zh/docs/Administration/figures/zh-cn_image_0231143196.png new file mode 100644 index 0000000000000000000000000000000000000000..9bdbac969920af77721980804bd1c5433bea5bc9 Binary files /dev/null and b/content/zh/docs/Administration/figures/zh-cn_image_0231143196.png differ diff --git a/content/zh/docs/Administration/figures/zh-cn_image_0231143197.png b/content/zh/docs/Administration/figures/zh-cn_image_0231143197.png new file mode 100644 index 0000000000000000000000000000000000000000..5ea4eec4002374096d8ac18eb973ed3bf874b632 Binary files /dev/null and b/content/zh/docs/Administration/figures/zh-cn_image_0231143197.png differ diff --git a/content/zh/docs/Administration/figures/zh-cn_image_0231143198.png b/content/zh/docs/Administration/figures/zh-cn_image_0231143198.png new file mode 100644 index 0000000000000000000000000000000000000000..7d6360c150495d204da4b069e6dc62677580888f Binary files /dev/null and b/content/zh/docs/Administration/figures/zh-cn_image_0231143198.png differ diff --git a/content/zh/docs/Administration/figures/zh-cn_image_0231563132.png b/content/zh/docs/Administration/figures/zh-cn_image_0231563132.png new file mode 100644 index 0000000000000000000000000000000000000000..bb801a9471f3f3541ba96491654f25e2df9ce8bf Binary files /dev/null and b/content/zh/docs/Administration/figures/zh-cn_image_0231563132.png differ diff --git a/content/zh/docs/Administration/figures/zh-cn_image_0231563134.png b/content/zh/docs/Administration/figures/zh-cn_image_0231563134.png new file mode 100644 index 0000000000000000000000000000000000000000..398d15376d29d3aa406abb2e7e065d4625428c4d Binary files /dev/null and b/content/zh/docs/Administration/figures/zh-cn_image_0231563134.png differ diff --git a/content/zh/docs/Administration/figures/zh-cn_image_0231563135.png b/content/zh/docs/Administration/figures/zh-cn_image_0231563135.png new file mode 100644 index 0000000000000000000000000000000000000000..785977142a6bf0e1c1815b82dea73d75fa206a75 Binary files /dev/null and b/content/zh/docs/Administration/figures/zh-cn_image_0231563135.png differ diff --git a/content/zh/docs/Administration/figures/zh-cn_image_0231563136.png b/content/zh/docs/Administration/figures/zh-cn_image_0231563136.png new file mode 100644 index 0000000000000000000000000000000000000000..c274db4d0ca9d8758267a916e19fdef4aa22d0ba Binary files /dev/null and b/content/zh/docs/Administration/figures/zh-cn_image_0231563136.png differ diff --git "a/content/zh/docs/Administration/figures/\346\220\255\345\273\272\346\225\260\346\215\256\347\233\230-0.png" "b/content/zh/docs/Administration/figures/\346\220\255\345\273\272\346\225\260\346\215\256\347\233\230-0.png" new file mode 100644 index 0000000000000000000000000000000000000000..0dfd6a2802184af6d809c485191ea52452cf28d5 Binary files /dev/null and "b/content/zh/docs/Administration/figures/\346\220\255\345\273\272\346\225\260\346\215\256\347\233\230-0.png" differ diff --git "a/content/zh/docs/Administration/figures/\346\220\255\345\273\272\346\225\260\346\215\256\347\233\230.png" "b/content/zh/docs/Administration/figures/\346\220\255\345\273\272\346\225\260\346\215\256\347\233\230.png" new file mode 100644 index 0000000000000000000000000000000000000000..0dfd6a2802184af6d809c485191ea52452cf28d5 Binary files /dev/null and "b/content/zh/docs/Administration/figures/\346\220\255\345\273\272\346\225\260\346\215\256\347\233\230.png" differ diff --git "a/content/zh/docs/Administration/figures/\347\231\273\345\275\225.png" "b/content/zh/docs/Administration/figures/\347\231\273\345\275\225.png" new file mode 100644 index 0000000000000000000000000000000000000000..d15c2cad98fba16320d587f3c7b0c80f435c5d3a Binary files /dev/null and "b/content/zh/docs/Administration/figures/\347\231\273\345\275\225.png" differ diff --git "a/content/zh/docs/Administration/iproute\347\233\270\345\205\263\345\221\275\344\273\244\351\205\215\347\275\256IPv4\344\270\216IPv6\346\227\266\347\232\204\345\267\256\345\274\202\350\257\264\346\230\216.md" "b/content/zh/docs/Administration/iproute\347\233\270\345\205\263\345\221\275\344\273\244\351\205\215\347\275\256IPv4\344\270\216IPv6\346\227\266\347\232\204\345\267\256\345\274\202\350\257\264\346\230\216.md" index c71ebdfea0ed198f1dd58ace680006f33758c9a0..6a81503a28477565f8fd05cb2cc4e34d16a3ef15 100644 --- "a/content/zh/docs/Administration/iproute\347\233\270\345\205\263\345\221\275\344\273\244\351\205\215\347\275\256IPv4\344\270\216IPv6\346\227\266\347\232\204\345\267\256\345\274\202\350\257\264\346\230\216.md" +++ "b/content/zh/docs/Administration/iproute\347\233\270\345\205\263\345\221\275\344\273\244\351\205\215\347\275\256IPv4\344\270\216IPv6\346\227\266\347\232\204\345\267\256\345\274\202\350\257\264\346\230\216.md" @@ -1,4 +1,4 @@ -# iproute相关命令配置IPv4与IPv6时的差异说明 +# iproute相关命令配置IPv4与IPv6时的差异说明 ## 概述 diff --git "a/content/zh/docs/Administration/iscsi-initiator-utils\344\270\215\346\224\257\346\214\201\347\231\273\345\275\225fe80-IPv6\345\234\260\345\235\200.md" "b/content/zh/docs/Administration/iscsi-initiator-utils\344\270\215\346\224\257\346\214\201\347\231\273\345\275\225fe80-IPv6\345\234\260\345\235\200.md" index 1ac3e73b84ac3353ce0f808f4a024a8a4579e908..9d137327f94f27a0e9ad09d054830451e52be926 100644 --- "a/content/zh/docs/Administration/iscsi-initiator-utils\344\270\215\346\224\257\346\214\201\347\231\273\345\275\225fe80-IPv6\345\234\260\345\235\200.md" +++ "b/content/zh/docs/Administration/iscsi-initiator-utils\344\270\215\346\224\257\346\214\201\347\231\273\345\275\225fe80-IPv6\345\234\260\345\235\200.md" @@ -1,4 +1,4 @@ -# iscsi-initiator-utils不支持登录fe80 IPv6地址 +# iscsi-initiator-utils不支持登录fe80 IPv6地址 ## 问题现象 diff --git "a/content/zh/docs/Administration/nginx\345\256\211\350\243\205\344\270\216\351\205\215\347\275\256.md" "b/content/zh/docs/Administration/nginx\345\256\211\350\243\205\344\270\216\351\205\215\347\275\256.md" index 6517c2039275ecdf1da8487a57286c775eae93f3..8a46944106cff5b14dd8c27587db8573b7bc18aa 100644 --- "a/content/zh/docs/Administration/nginx\345\256\211\350\243\205\344\270\216\351\205\215\347\275\256.md" +++ "b/content/zh/docs/Administration/nginx\345\256\211\350\243\205\344\270\216\351\205\215\347\275\256.md" @@ -1,4 +1,4 @@ -# nginx安装与配置 +# nginx安装与配置 1. 请自行下载nginx工具并安装nginx。 2. 安装nginx之后,配置/etc/nginx/nginx.conf。 diff --git "a/content/zh/docs/Administration/nmcli\344\273\213\347\273\215.md" "b/content/zh/docs/Administration/nmcli\344\273\213\347\273\215.md" index 56a574f9bf2d38bcd01687a536145d86455a0344..f922d577104a24ac09f8e66c257922b773e82e03 100644 --- "a/content/zh/docs/Administration/nmcli\344\273\213\347\273\215.md" +++ "b/content/zh/docs/Administration/nmcli\344\273\213\347\273\215.md" @@ -1,4 +1,4 @@ -# nmcli介绍 +# nmcli介绍 nmcli是NetworkManager的一个命令行工具,它提供了使用命令行配置由NetworkManager管理网络连接的方法。nmcli命令的基本格式为: @@ -6,7 +6,7 @@ nmcli是NetworkManager的一个命令行工具,它提供了使用命令行配 nmcli [OPTIONS] OBJECT { COMMAND | help } ``` -其中,OBJECT选项可以是general、networking、radio、connection或device等。在日常使用中,最常使用的是-t, \--terse(用于脚本)、-p, \--pretty选项(用于用户)及-h, \--help选项,用户可以使用“ nmcli help”获取更多参数及使用信息。 +其中,OBJECT选项可以是general、networking、radio、connection或device等。在日常使用中,最常使用的是-t, --terse(用于脚本)、-p, --pretty选项(用于用户)及-h, --help选项,用户可以使用“ nmcli help”获取更多参数及使用信息。 ``` # nmcli help @@ -26,7 +26,7 @@ nmcli是NetworkManager的一个命令行工具,它提供了使用命令行配 nmcli connection show ``` -- 只显示当前活动连接,如下所示添加 -a, \--active: +- 只显示当前活动连接,如下所示添加 -a, --active: ``` nmcli connection show --active diff --git "a/content/zh/docs/Administration/repo\344\274\230\345\205\210\347\272\247.md" "b/content/zh/docs/Administration/repo\344\274\230\345\205\210\347\272\247.md" index 9cd190b2ea104d233e5f92c56a8a1f98a49c8152..c99f74d51ebd1369ff85a5c971b27f8858abb594 100644 --- "a/content/zh/docs/Administration/repo\344\274\230\345\205\210\347\272\247.md" +++ "b/content/zh/docs/Administration/repo\344\274\230\345\205\210\347\272\247.md" @@ -1,6 +1,6 @@ -# repo优先级 +# repo优先级 -当有多个repo源时,可通过在.repo文件的priority参数设置repo的优先级(如果不设置,默认优先级是99,当相同优先级的源中存在相同rpm包时,会安装最新的版本)。其中,1为最高优先级,99为最低优先级,如给openEuler-1.0-Base.repo配置优先级为2: +当有多个repo源时,可通过在.repo文件的priority参数设置repo的优先级(如果不设置,默认优先级是99,当相同优先级的源中存在相同rpm包时,会安装最新的版本)。其中,1为最高优先级,99为最低优先级,如给openEuler.repo配置优先级为2: ``` [base] diff --git "a/content/zh/docs/Administration/repo\346\272\220\351\203\250\347\275\262.md" "b/content/zh/docs/Administration/repo\346\272\220\351\203\250\347\275\262.md" index 8d31edada3ff04b7e7df3dbfdc3274da79e06d55..bcbc3aa6df4135fcc41c592396220d75e802e3e8 100644 --- "a/content/zh/docs/Administration/repo\346\272\220\351\203\250\347\275\262.md" +++ "b/content/zh/docs/Administration/repo\346\272\220\351\203\250\347\275\262.md" @@ -1,4 +1,4 @@ -# repo源部署 +# repo源部署 1. 创建nginx配置文件/etc/nginx/nginx.conf中指定的目录/srv/repo: @@ -43,13 +43,13 @@ - 拷贝镜像中相关文件至在/srv/repo下 ``` - mount /home/openEuler/openEuler-1.0-base-aarch64-dvd.iso /mnt/ + mount /home/openEuler/openEuler-20.03-LTS-aarch64-dvd.iso /mnt/ cp -r /mnt/Packages /srv/repo/ cp -r /mnt/repodata /srv/repo/ cp -r /mnt/RPM-GPG-KEY-openEuler /srv/repo/ ``` - openEuler-1.0-base-aarch64-dvd.iso存放在/home/openEuler目录下。 + openEuler-20.03-LTS-aarch64-dvd.iso存放在/home/openEuler目录下。 - 在/srv/repo下创建repo源的软链接 diff --git "a/content/zh/docs/Administration/repo\351\205\215\347\275\256\344\270\272yum\346\272\220.md" "b/content/zh/docs/Administration/repo\351\205\215\347\275\256\344\270\272yum\346\272\220.md" index 7ca39daa180ab7e6d37505e574454bf469c4561b..c5152e0d0fc1872d65c682145b7ec62be11162e4 100644 --- "a/content/zh/docs/Administration/repo\351\205\215\347\275\256\344\270\272yum\346\272\220.md" +++ "b/content/zh/docs/Administration/repo\351\205\215\347\275\256\344\270\272yum\346\272\220.md" @@ -1,10 +1,10 @@ -# repo配置为yum源 +# repo配置为yum源 构建好的repo可以配置为yum源使用,在/etc/yum.repos.d/目录下创建\*\*\*.repo的配置文件(必须以.repo为扩展名),分为本地和http服务器配置yum源两种方式: - 配置本地yum源 - 在/etc/yum.repos.d目录下创建openEuler-1.0-Base.repo文件,使用构建的本地repo作为yum源,openEuler-1.0-Base.repo的内容如下: + 在/etc/yum.repos.d目录下创建openEuler.repo文件,使用构建的本地repo作为yum源,openEuler.repo的内容如下: ``` [base] @@ -21,7 +21,7 @@ - 配置http服务器yum源 - 在/etc/yum.repos.d目录下创建openEuler-1.0-Base.repo文件,使用http服务端的repo作为yum源,openEuler-1.0-Base.repo的内容如下: + 在/etc/yum.repos.d目录下创建openEuler.repo文件,使用http服务端的repo作为yum源,openEuler.repo的内容如下: ``` [base] diff --git "a/content/zh/docs/Administration/vsftpd\351\205\215\347\275\256\346\226\207\344\273\266\344\273\213\347\273\215.md" "b/content/zh/docs/Administration/vsftpd\351\205\215\347\275\256\346\226\207\344\273\266\344\273\213\347\273\215.md" index 8afae45e4dd9490d3dc2310e03250f15b86b1ff7..23bbd4920518fce666a225d8885c92cd4d1332e5 100644 --- "a/content/zh/docs/Administration/vsftpd\351\205\215\347\275\256\346\226\207\344\273\266\344\273\213\347\273\215.md" +++ "b/content/zh/docs/Administration/vsftpd\351\205\215\347\275\256\346\226\207\344\273\266\344\273\213\347\273\215.md" @@ -1,4 +1,4 @@ -# vsftpd配置文件介绍 +# vsftpd配置文件介绍 用户可以通过修改vsftpd的配置文件,控制用户权限等。vsftpd的主要配置文件和含义如[表1](#table1541615718372)所示,用户可以根据需求修改配置文件的内容。更多的配置参数含义可以通过man查看。 diff --git a/content/zh/docs/Administration/zh-cn_bookmap_0229622607.md b/content/zh/docs/Administration/zh-cn_bookmap_0229622607.md new file mode 100644 index 0000000000000000000000000000000000000000..2ba5df0b21dee091007f1bd7b66f0c544a2dcaf0 --- /dev/null +++ b/content/zh/docs/Administration/zh-cn_bookmap_0229622607.md @@ -0,0 +1,299 @@ +# 管理员指南 + +- [法律声明](法律声明.md) +- [前言](前言.md) +- [基础配置](基础配置.md) + - [通过命令设置](通过命令设置.md) + - [设置语言环境](设置语言环境.md) + - [设置键盘](设置键盘.md) + - [设置日期和时间](设置日期和时间.md) + - [使用timedatectl命令设置](使用timedatectl命令设置.md) + - [使用date命令设置](使用date命令设置.md) + - [使用hwclock命令设置](使用hwclock命令设置.md) + + + +- [查看系统信息](查看系统信息.md) +- [管理用户](管理用户.md) + - [增加用户](增加用户.md) + - [修改用户账号](修改用户账号.md) + - [删除用户](删除用户.md) + - [管理员账户授权](管理员账户授权.md) + - [为普通用户分配特权](为普通用户分配特权.md) + + +- [使用DNF管理软件包](使用DNF管理软件包.md) + - [配置DNF](配置DNF.md) + - [修改配置文件](修改配置文件.md) + - [创建本地软件源仓库](创建本地软件源仓库.md) + - [添加、启用和禁用软件源](添加-启用和禁用软件源.md) + + - [管理软件包](管理软件包.md) + - [管理软件包组](管理软件包组.md) + - [检查并更新](检查并更新.md) + +- [管理服务](管理服务.md) + - [简介](简介.md) + - [特性说明](特性说明.md) + - [管理系统服务](管理系统服务.md) + - [改变运行级别](改变运行级别.md) + - [关闭、暂停和休眠系统](关闭-暂停和休眠系统.md) + +- [管理进程](管理进程.md) + - [管理系统进程](管理系统进程.md) + - [调度启动进程](调度启动进程.md) + - [定时运行一批程序(at)](定时运行一批程序(at).md) + - [周期性运行一批程序(cron)](周期性运行一批程序(cron).md) + + - [挂起/恢复进程](挂起-恢复进程.md) + + - [查看进程](查看进程.md) + +- [配置网络](配置网络.md) + - [配置 IP](配置-IP.md) + - [使用nmcli命令](使用nmcli命令.md) + - [nmcli介绍](nmcli介绍.md) + - [设置网络连接](设置网络连接.md) + - [配置动态IP连接](配置动态IP连接.md) + - [配置静态IP连接](配置静态IP连接.md) + - [添加 Wi-Fi 连接](添加-Wi-Fi-连接.md) + - [更改属性](更改属性.md) + + - [配置静态路由](配置静态路由.md) + + - [使用ip命令](使用ip命令.md) + - [配置IP地址](配置IP地址.md) + - [配置静态路由](配置静态路由-0.md) + + - [通过ifcfg文件配置网络](通过ifcfg文件配置网络.md) + + - [配置主机名](配置主机名.md) + - [简介](简介-1.md) + - [使用hostnamectl配置主机名](使用hostnamectl配置主机名.md) + - [使用nmcli配置主机名](使用nmcli配置主机名.md) + + - [配置网络绑定](配置网络绑定.md) + - [使用nmcli](使用nmcli.md) + - [使用命令行](使用命令行.md) + - [检查是否已安装Bonding内核模块](检查是否已安装Bonding内核模块.md) + - [创建频道绑定接口](创建频道绑定接口.md) + - [创建从属接口](创建从属接口.md) + - [激活频道绑定](激活频道绑定.md) + - [创建多个绑定](创建多个绑定.md) + + + - [IPv6使用差异说明(vs IPv4)](IPv6使用差异说明(vs-IPv4).md) + - [约束限制](约束限制.md) + - [配置说明](配置说明.md) + - [设置接口设备MTU值](设置接口设备MTU值.md) + - [有状态自动配置IPv6地址](有状态自动配置IPv6地址.md) + - [内核支持socket相关系统调用](内核支持socket相关系统调用.md) + - [IPv4的dhclient守护进程持久化配置](IPv4的dhclient守护进程持久化配置.md) + - [iproute相关命令配置IPv4与IPv6时的差异说明](iproute相关命令配置IPv4与IPv6时的差异说明.md) + - [NetworkManager服务配置差异说明](NetworkManager服务配置差异说明.md) + + - [FAQ](FAQ.md) + - [iscsi-initiator-utils不支持登录fe80 IPv6地址](iscsi-initiator-utils不支持登录fe80-IPv6地址.md) + - [网卡down掉之后,IPv6地址丢失](网卡down掉之后-IPv6地址丢失.md) + - [bond口已具有多个IPv6地址时,添加或删除IPv6地址耗时过久](bond口已具有多个IPv6地址时-添加或删除IPv6地址耗时过久.md) + - [Rsyslog在IPv4和IPv6混合使用场景中日志传输延迟](Rsyslog在IPv4和IPv6混合使用场景中日志传输延迟.md) + + + +- [使用LVM管理硬盘](使用LVM管理硬盘.md) + - [LVM简介](LVM简介.md) + - [安装](安装.md) + - [管理物理卷](管理物理卷.md) + - [管理卷组](管理卷组.md) + - [管理逻辑卷](管理逻辑卷.md) + - [创建并挂载文件系统](创建并挂载文件系统.md) + +- [使用KAE加速引擎](使用KAE加速引擎.md) + - [简介](简介-2.md) + - [应用场景](应用场景.md) + - [安装、升级和卸载](安装-升级和卸载.md) + - [安装加速器软件包](安装加速器软件包.md) + - [安装前准备](安装前准备.md) + - [安装加速器软件包](安装加速器软件包-3.md) + - [安装后操作](安装后操作.md) + - [OpenSSL加速器引擎测试](OpenSSL加速器引擎测试.md) + + + - [升级加速器软件包](升级加速器软件包.md) + - [卸载加速器软件包](卸载加速器软件包.md) + + - [日志查询](日志查询.md) + - [使用案例](使用案例.md) + - [加速引擎的应用](加速引擎的应用.md) + - [KAE引擎使用示例代码](KAE引擎使用示例代码.md) + - [通过OpenSSL配置文件openssl.cnf使用KAE引擎](通过OpenSSL配置文件openssl-cnf使用KAE引擎.md) + + + - [故障处理](故障处理.md) + - [初始化失败](初始化失败.md) + - [安装完加速器引擎之后,查找不到加速器设备](安装完加速器引擎之后-查找不到加速器设备.md) + - [升级加速器驱动失败](升级加速器驱动失败.md) + + +- [搭建服务](搭建服务.md) + - [搭建repo服务器](搭建repo服务器.md) + - [概述](概述.md) + - [创建/更新本地repo源](创建-更新本地repo源.md) + - [获取ISO镜像](获取ISO镜像.md) + - [挂载ISO创建repo源](挂载ISO创建repo源.md) + - [创建本地repo源](创建本地repo源.md) + - [更新repo源](更新repo源.md) + + - [部署远端repo源](部署远端repo源.md) + - [nginx安装与配置](nginx安装与配置.md) + - [启动nginx服务](启动nginx服务.md) + - [repo源部署](repo源部署.md) + + - [使用repo源](使用repo源.md) + - [repo配置为yum源](repo配置为yum源.md) + - [repo优先级](repo优先级.md) + - [dnf相关命令](dnf相关命令.md) + + + - [搭建FTP服务器](搭建FTP服务器.md) + - [总体介绍](总体介绍.md) + - [使用vsftpd](使用vsftpd.md) + - [配置vsftpd](配置vsftpd.md) + - [vsftpd配置文件介绍](vsftpd配置文件介绍.md) + - [默认配置说明](默认配置说明.md) + - [配置本地时间](配置本地时间.md) + - [配置欢迎信息](配置欢迎信息.md) + - [配置系统帐号登录权限](配置系统帐号登录权限.md) + + - [验证FTP服务是否搭建成功](验证FTP服务是否搭建成功.md) + - [配置防火墙](配置防火墙.md) + - [传输文件](传输文件.md) + + - [搭建web服务器](搭建web服务器.md) + - [Apache服务器](Apache服务器.md) + - [概述](概述-4.md) + - [管理httpd](管理httpd.md) + - [配置文件说明](配置文件说明.md) + - [管理模块和SSL](管理模块和SSL.md) + - [验证web服务是否搭建成功](验证web服务是否搭建成功.md) + + - [Nginx服务器](Nginx服务器.md) + - [概述](概述-5.md) + - [安装](安装-6.md) + - [管理nginx](管理nginx.md) + - [配置文件说明](配置文件说明-7.md) + - [管理模块](管理模块.md) + - [验证web服务是否搭建成功](验证web服务是否搭建成功-8.md) + + + - [搭建数据库服务器](搭建数据库服务器.md) + - [PostgreSql服务器](PostgreSql服务器.md) + - [软件介绍](软件介绍.md) + - [配置环境](配置环境.md) + - [关闭防火墙并取消开机自启动](关闭防火墙并取消开机自启动.md) + - [修改SELINUX为disabled](修改SELINUX为disabled.md) + - [创建组和用户](创建组和用户.md) + - [搭建数据盘](搭建数据盘.md) + - [数据目录授权](数据目录授权.md) + + - [安装、运行和卸载](安装-运行和卸载.md) + - [安装](安装-9.md) + - [运行](运行.md) + - [初始化数据库](初始化数据库.md) + - [启动数据库](启动数据库.md) + - [登录数据库](登录数据库.md) + - [配置数据库账号密码](配置数据库账号密码.md) + - [退出数据库](退出数据库.md) + - [停止数据库](停止数据库.md) + + - [卸载](卸载.md) + + - [管理数据库角色](管理数据库角色.md) + - [创建角色](创建角色.md) + - [查看角色](查看角色.md) + - [修改角色](修改角色.md) + - [删除角色](删除角色.md) + - [角色授权](角色授权.md) + - [删除用户权限](删除用户权限.md) + + - [管理数据库](管理数据库.md) + - [创建数据库](创建数据库.md) + - [选择数据库](选择数据库.md) + - [查看数据库](查看数据库.md) + - [删除数据库](删除数据库.md) + - [备份数据库](备份数据库.md) + - [恢复数据库](恢复数据库.md) + + + - [Mariadb服务器](Mariadb服务器.md) + - [软件介绍](软件介绍-10.md) + - [配置环境](配置环境-11.md) + - [关闭防火墙并取消开机自启动](关闭防火墙并取消开机自启动-12.md) + - [修改SELINUX为disabled](修改SELINUX为disabled-13.md) + - [创建组和用户](创建组和用户-14.md) + - [搭建数据盘](搭建数据盘-15.md) + - [创建数据库目录并且授权](创建数据库目录并且授权.md) + + - [安装、运行和卸载](安装-运行和卸载-16.md) + - [安装](安装-17.md) + - [运行](运行-18.md) + - [卸载](卸载-19.md) + + - [管理数据库用户](管理数据库用户.md) + - [创建用户](创建用户.md) + - [查看用户](查看用户.md) + - [修改用户](修改用户.md) + - [删除用户](删除用户-20.md) + - [用户授权](用户授权.md) + - [删除用户权限](删除用户权限-21.md) + + - [管理数据库](管理数据库-22.md) + - [创建数据库](创建数据库-23.md) + - [查看数据库](查看数据库-24.md) + - [选择数据库](选择数据库-25.md) + - [删除数据库](删除数据库-26.md) + - [备份数据库](备份数据库-27.md) + - [恢复数据库](恢复数据库-28.md) + + + - [MySQL服务器](MySQL服务器.md) + - [软件介绍](软件介绍-29.md) + - [配置环境](配置环境-30.md) + - [关闭防火墙并取消开机自启动](关闭防火墙并取消开机自启动-31.md) + - [修改SELINUX为disabled](修改SELINUX为disabled-32.md) + - [创建组和用户](创建组和用户-33.md) + - [搭建数据盘](搭建数据盘-34.md) + - [创建数据库目录并且授权](创建数据库目录并且授权-35.md) + + - [安装、运行和卸载](安装-运行和卸载-36.md) + - [安装](安装-37.md) + - [运行](运行-38.md) + - [卸载](卸载-39.md) + + - [管理数据库用户](管理数据库用户-40.md) + - [创建用户](创建用户-41.md) + - [查看用户](查看用户-42.md) + - [修改用户](修改用户-43.md) + - [删除用户](删除用户-44.md) + - [用户授权](用户授权-45.md) + - [删除用户权限](删除用户权限-46.md) + + - [管理数据库](管理数据库-47.md) + - [创建数据库](创建数据库-48.md) + - [查看数据库](查看数据库-49.md) + - [选择数据库](选择数据库-50.md) + - [删除数据库](删除数据库-51.md) + - [备份数据库](备份数据库-52.md) + - [恢复数据库](恢复数据库-53.md) + + + + +- [FAQ](FAQ-54.md) + - [使用systemctl和top命令查询libvirtd服务占用内存不同](使用systemctl和top命令查询libvirtd服务占用内存不同.md) + - [设置RAID0卷,参数stripsize设置为4时出错](设置RAID0卷-参数stripsize设置为4时出错.md) + - [使用rpmbuild编译mariadb失败](使用rpmbuild编译mariadb失败.md) + - [使用默认配置启动SNTP服务失败](使用默认配置启动SNTP服务失败.md) + - [安装时出现软件包冲突、文件冲突或缺少软件包导致安装失败](安装时出现软件包冲突-文件冲突或缺少软件包导致安装失败.md) + + diff --git "a/content/zh/docs/Administration/\344\270\272\346\231\256\351\200\232\347\224\250\346\210\267\345\210\206\351\205\215\347\211\271\346\235\203.md" "b/content/zh/docs/Administration/\344\270\272\346\231\256\351\200\232\347\224\250\346\210\267\345\210\206\351\205\215\347\211\271\346\235\203.md" index 03cadf0a806d63a03cbec991a55b1172b51248a0..a0e6bacdae95465ab480e1029ee648470cf53367 100644 --- "a/content/zh/docs/Administration/\344\270\272\346\231\256\351\200\232\347\224\250\346\210\267\345\210\206\351\205\215\347\211\271\346\235\203.md" +++ "b/content/zh/docs/Administration/\344\270\272\346\231\256\351\200\232\347\224\250\346\210\267\345\210\206\351\205\215\347\211\271\346\235\203.md" @@ -1,4 +1,4 @@ -# 为普通用户分配特权 +# 为普通用户分配特权 使用sudo命令可以允许普通用户执行管理员账户才能执行的命令。 diff --git "a/content/zh/docs/Administration/\344\274\240\350\276\223\346\226\207\344\273\266.md" "b/content/zh/docs/Administration/\344\274\240\350\276\223\346\226\207\344\273\266.md" index 5127b089352b93a348ac58a5ca99adf244caa4d4..b0c3e75cfd336b2212ec397954cb442b26658a23 100644 --- "a/content/zh/docs/Administration/\344\274\240\350\276\223\346\226\207\344\273\266.md" +++ "b/content/zh/docs/Administration/\344\274\240\350\276\223\346\226\207\344\273\266.md" @@ -1,4 +1,4 @@ -# 传输文件 +# 传输文件 ## 概述 @@ -23,7 +23,7 @@ ftp ip-address 根据提示输入用户名和密码,认证通过后显示如下,说明ftp连接成功,此时进入了连接到的服务器目录。 ``` -ftp> +ftp> ``` 在该提示符下,可以输入不同的命令进行相关操作: @@ -56,31 +56,31 @@ ftp> - 功能说明:将文件从远端主机中传送至本地主机中 - 命令格式:**get** \[_remote-file_\] \[_local-file_\] - 其中 _remote-file_ 为远程文件,_local-file_ 为本地文件 + 其中 _remote-file_ 为远程文件,_local-file_ 为本地文件 - 示例:获取远程服务器上的/usr/your/openEuler.htm文件,命令如下: ``` - ftp> get /usr/your/openEuler.htm + ftp> get /usr/your/openEuler.htm ``` **mget使用方法** - 功能说明:从远端主机接收一批文件至本地文件 -- 命令格式:**mget** \[_remote-files_\] +- 命令格式:**mget** \[_remote-file_\] - 其中 _remote-file_ 为远程文件 + 其中 _remote-file_ 为远程文件 - 示例:获取服务器上/usr/your/目录下的所有文件,命令如下: ``` - ftp> cd /usr/your/ - ftp> mget *.* + ftp> cd /usr/your/ + ftp> mget *.* ``` >![](public_sys-resources/icon-note.gif) **说明:** - >- 此时每下载一个文件,都会有提示信息。如果要屏蔽提示信息,则在**mget \*.\* **命令前先执行**prompt off** + >- 此时每下载一个文件,都会有提示信息。如果要屏蔽提示信息,则在**mget \*.\***命令前先执行**prompt off** >- 文件都被下载到Linux主机的当前目录下。比如,在/usr/my/下运行的ftp命令,则文件都下载到/usr/my/下。 @@ -93,7 +93,7 @@ ftp> - 功能说明:将本地的一个文件传送到远端主机中 - 命令格式:**put** \[_local-file_\] \[_remote-file_\] - 其中 _remote-file_ 为远程文件,_local-file_ 为本地文件 + 其中 _remote-file_ 为远程文件,_local-file_ 为本地文件 - 示例:将本地的Euler.htm传送到远端主机/usr/your/,并改名为openEuler.htm,命令如下: @@ -107,13 +107,13 @@ ftp> - 功能说明:将本地主机中一批文件传送至远端主机 - 命令格式:**mput** \[_local-file_\] - 其中 _local-file_ 为本地文件 + 其中 _local-file_ 为本地文件 - 示例:将本地当前目录下所有htm文件上传到服务器/usr/your/下,命令如下: ``` - ftp> cd /usr/your - ftp> mput *.htm + ftp> cd /usr/your + ftp> mput *.htm ``` @@ -126,12 +126,12 @@ ftp> - 功能说明:删除远程服务器上的一个或多个文件 - 命令格式:**delete** \[_remote-file_\] - 其中 _remote-file_ 为远程文件 + 其中 _remote-file_ 为远程文件 - 示例:删除远程服务器上的openFile文件,命令如下: ``` - ftp> delete openFile + ftp> delete openFile ``` @@ -140,12 +140,12 @@ ftp> - 功能说明:删除远程服务器上的文件,常用于批量删除 - 命令格式:**mdelete** \[_remote-file_\] - 其中 _remote-file_ 为远程文件 + 其中 _remote-file_ 为远程文件 - 示例:删除所有a开头的文件,命令如下: ``` - ftp> mdelete a* + ftp> mdelete a* ``` diff --git "a/content/zh/docs/Administration/\344\275\277\347\224\250DNF\347\256\241\347\220\206\350\275\257\344\273\266\345\214\205.md" "b/content/zh/docs/Administration/\344\275\277\347\224\250DNF\347\256\241\347\220\206\350\275\257\344\273\266\345\214\205.md" index 7834db12a8e0667a227cabe37aaa6ad65da324e0..51fa41538c5fc0da7f62e50c27f61a6d26ea0ca3 100644 --- "a/content/zh/docs/Administration/\344\275\277\347\224\250DNF\347\256\241\347\220\206\350\275\257\344\273\266\345\214\205.md" +++ "b/content/zh/docs/Administration/\344\275\277\347\224\250DNF\347\256\241\347\220\206\350\275\257\344\273\266\345\214\205.md" @@ -1,7 +1,9 @@ -# 使用DNF管理软件包 +# 使用DNF管理软件包 DNF是一款Linux软件包管理工具,用于管理RPM软件包。DNF可以查询软件包信息,从指定软件库获取软件包,自动处理依赖关系以安装或卸载软件包,以及更新系统到最新可用版本。 >![](public_sys-resources/icon-note.gif) **说明:** >- DNF与YUM完全兼容,提供了YUM兼容的命令行以及为扩展和插件提供的API。 >- 使用DNF需要管理员权限,本章所有命令需要在管理员权限下执行。 + + diff --git "a/content/zh/docs/Administration/\344\275\277\347\224\250KAE\345\212\240\351\200\237\345\274\225\346\223\216.md" "b/content/zh/docs/Administration/\344\275\277\347\224\250KAE\345\212\240\351\200\237\345\274\225\346\223\216.md" new file mode 100644 index 0000000000000000000000000000000000000000..2b04620fee7cfdb6b5ae2f9ca7a1e621d70ac373 --- /dev/null +++ "b/content/zh/docs/Administration/\344\275\277\347\224\250KAE\345\212\240\351\200\237\345\274\225\346\223\216.md" @@ -0,0 +1,2 @@ +# 使用KAE加速引擎 + diff --git "a/content/zh/docs/Administration/\344\275\277\347\224\250LVM\347\256\241\347\220\206\347\241\254\347\233\230.md" "b/content/zh/docs/Administration/\344\275\277\347\224\250LVM\347\256\241\347\220\206\347\241\254\347\233\230.md" new file mode 100644 index 0000000000000000000000000000000000000000..2be96bb6740d8c8afc082efaeb68e347dc19b273 --- /dev/null +++ "b/content/zh/docs/Administration/\344\275\277\347\224\250LVM\347\256\241\347\220\206\347\241\254\347\233\230.md" @@ -0,0 +1,4 @@ +# 使用LVM管理硬盘 + + + diff --git "a/content/zh/docs/Administration/\344\275\277\347\224\250date\345\221\275\344\273\244\350\256\276\347\275\256.md" "b/content/zh/docs/Administration/\344\275\277\347\224\250date\345\221\275\344\273\244\350\256\276\347\275\256.md" index 72f0178ee5a56efa8421db0d94471e81d33713b9..5b3acc08f7f77b02e0fd00f70855b71a3e50efef 100644 --- "a/content/zh/docs/Administration/\344\275\277\347\224\250date\345\221\275\344\273\244\350\256\276\347\275\256.md" +++ "b/content/zh/docs/Administration/\344\275\277\347\224\250date\345\221\275\344\273\244\350\256\276\347\275\256.md" @@ -1,4 +1,4 @@ -# 使用date命令设置 +# 使用date命令设置 ## 显示当前的日期和时间 @@ -8,7 +8,7 @@ date ``` -默认情况下,date命令显示本地时间。要显示UTC时间,添加\--utc或-u参数: +默认情况下,date命令显示本地时间。要显示UTC时间,添加--utc或-u参数: ``` date --utc @@ -103,13 +103,13 @@ date +"format" ## 修改时间 -要修改当前的时间,添加\--set或者-s参数。在root权限下执行如下命令,其中 _HH_ 代表小时,_MM_ 代表分钟,_SS_ 代表秒,请根据实际情况修改: +要修改当前的时间,添加--set或者-s参数。在root权限下执行如下命令,其中 _HH_ 代表小时,_MM_ 代表分钟,_SS_ 代表秒,请根据实际情况修改: ``` date --set HH:MM:SS ``` -默认情况下, date命令设置本地时间。要设置UTC时间,添加\--utc或-u参数: +默认情况下, date命令设置本地时间。要设置UTC时间,添加--utc或-u参数: ``` date --set HH:MM:SS --utc @@ -123,7 +123,7 @@ date --set HH:MM:SS --utc ## 修改日期 -修改当前的日期,添加\--set或者-s参数。在root权限下执行如下命令,其中 _YYYY_ 代表年份,_MM_ 代表月份,_DD_ 代表某天,请根据实际情况修改: +修改当前的日期,添加--set或者-s参数。在root权限下执行如下命令,其中 _YYYY_ 代表年份,_MM_ 代表月份,_DD_ 代表某天,请根据实际情况修改: ``` date --set YYYY-MM-DD diff --git "a/content/zh/docs/Administration/\344\275\277\347\224\250hostnamectl\351\205\215\347\275\256\344\270\273\346\234\272\345\220\215.md" "b/content/zh/docs/Administration/\344\275\277\347\224\250hostnamectl\351\205\215\347\275\256\344\270\273\346\234\272\345\220\215.md" index fdfa6d8578c58bce9f5d6af8fc490f382b4a3f92..0b433e4836004a1431f21bee1e440729c1e359cb 100644 --- "a/content/zh/docs/Administration/\344\275\277\347\224\250hostnamectl\351\205\215\347\275\256\344\270\273\346\234\272\345\220\215.md" +++ "b/content/zh/docs/Administration/\344\275\277\347\224\250hostnamectl\351\205\215\347\275\256\344\270\273\346\234\272\345\220\215.md" @@ -1,4 +1,4 @@ -# 使用hostnamectl配置主机名 +# 使用hostnamectl配置主机名 ## 查看所有主机名 @@ -27,9 +27,9 @@ # hostnamectl set-hostname name [option...] ``` -其中option可以是\--pretty、\--static、\--transient中的一个或多个选项。 +其中option可以是--pretty、--static、--transient中的一个或多个选项。 -如果\--static或\--transient与\--pretty选项一同使用时,则会将static和transient主机名简化为pretty主机名格式,使用“-”替换空格,并删除特殊字符。 +如果--static或--transient与--pretty选项一同使用时,则会将static和transient主机名简化为pretty主机名格式,使用“-”替换空格,并删除特殊字符。 当设定pretty主机名时,如果主机名中包含空格或单引号,需要使用引号。命令示例如下: @@ -45,11 +45,11 @@ # hostnamectl set-hostname "" [option...] ``` -其中 "" 是空白字符串,option是\--pretty、\--static和\--transient中的一个或多个选项。 +其中 "" 是空白字符串,option是--pretty、--static和--transient中的一个或多个选项。 ## 远程更改主机名 -在远程系统中运行hostnamectl命令时,要使用-H,\--host 选项,使用如下命令: +在远程系统中运行hostnamectl命令时,要使用-H,--host 选项,使用如下命令: ``` # hostnamectl set-hostname -H [username]@hostname new_hostname diff --git "a/content/zh/docs/Administration/\344\275\277\347\224\250hwclock\345\221\275\344\273\244\350\256\276\347\275\256.md" "b/content/zh/docs/Administration/\344\275\277\347\224\250hwclock\345\221\275\344\273\244\350\256\276\347\275\256.md" index cba6bd927f34754b7283f4133ba994564e3f117d..c40f753f780d301e27e71c1c211c0e6b5f0d6459 100644 --- "a/content/zh/docs/Administration/\344\275\277\347\224\250hwclock\345\221\275\344\273\244\350\256\276\347\275\256.md" +++ "b/content/zh/docs/Administration/\344\275\277\347\224\250hwclock\345\221\275\344\273\244\350\256\276\347\275\256.md" @@ -1,4 +1,4 @@ -# 使用hwclock命令设置 +# 使用hwclock命令设置 可以使用 hwclock 命令设置硬件时钟RTC \(Real Time Clock\) 。 @@ -28,7 +28,7 @@ hwclock ## 设置日期和时间 -修改当前硬件的日期和时间,在root权限下执行如下命令,其中 _dd_ 表示日,_mm_ 表示月份,_yyyy_ 表示年份,_HH_ 表示小时,_MM_ 表示分钟,请根据实际情况修改: +修改当前硬件的日期和时间,在root权限下执行如下命令,其中 _dd_ 表示日,_mm_ 表示月份,_yyyy_ 表示年份,_HH_ 表示小时,_MM_ 表示分钟,请根据实际情况修改: ``` hwclock --set --date "dd mm yyyy HH:MM" diff --git "a/content/zh/docs/Administration/\344\275\277\347\224\250ip\345\221\275\344\273\244.md" "b/content/zh/docs/Administration/\344\275\277\347\224\250ip\345\221\275\344\273\244.md" new file mode 100644 index 0000000000000000000000000000000000000000..39df97e6616f1d069eb95b27b6b9ddd3ddcb901c --- /dev/null +++ "b/content/zh/docs/Administration/\344\275\277\347\224\250ip\345\221\275\344\273\244.md" @@ -0,0 +1,7 @@ +# 使用ip命令 + +>![](public_sys-resources/icon-note.gif) **说明:** +>使用ip命令配置的网络配置可以立即生效但系统重启后配置会丢失。 + + + diff --git "a/content/zh/docs/Administration/\344\275\277\347\224\250nmcli-1.md" "b/content/zh/docs/Administration/\344\275\277\347\224\250nmcli-1.md" deleted file mode 100644 index 1a033cccf2775ae4d7260f010b7d1dc4e0bd2ed0..0000000000000000000000000000000000000000 --- "a/content/zh/docs/Administration/\344\275\277\347\224\250nmcli-1.md" +++ /dev/null @@ -1,41 +0,0 @@ -# 使用nmcli - -- 创建名为mybond0的绑定,使用示例如下: - - ``` - # nmcli con add type bond con-name mybond0 ifname mybond0 mode active-backup - ``` - -- 添加从属接口,使用示例如下: - - ``` - # nmcli con add type bond-slave ifname enp3s0 master mybond0 - ``` - - 要添加其他从属接口,重复上一个命令,并在命令中使用新的接口,使用示例如下: - - ``` - # nmcli con add type bond-slave ifname enp4s0 master mybond0 - Connection 'bond-slave-enp4s0' (05e56afc-b953-41a9-b3f9-0791eb49f7d3) successfully added. - ``` - -- 要启动绑定,则必须首先启动从属接口,使用示例如下: - - ``` - # nmcli con up bond-slave-enp3s0 - Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/14) - ``` - - ``` - # nmcli con up bond-slave-enp4s0 - Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/15) - ``` - - 现在可以启动绑定,使用示例如下: - - ``` - # nmcli con up bond-mybond0 - Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/16) - ``` - - diff --git "a/content/zh/docs/Administration/\344\275\277\347\224\250nmcli.md" "b/content/zh/docs/Administration/\344\275\277\347\224\250nmcli.md" index cf924ca07f3af2ff19f93f0859f20db1bb88d1db..ef7797c9f448183c3b03a9f3b418c5b37b19ef72 100644 --- "a/content/zh/docs/Administration/\344\275\277\347\224\250nmcli.md" +++ "b/content/zh/docs/Administration/\344\275\277\347\224\250nmcli.md" @@ -1 +1,41 @@ -# 使用nmcli +# 使用nmcli + +- 创建名为mybond0的绑定,使用示例如下: + + ``` + # nmcli con add type bond con-name mybond0 ifname mybond0 mode active-backup + ``` + +- 添加从属接口,使用示例如下: + + ``` + # nmcli con add type bond-slave ifname enp3s0 master mybond0 + ``` + + 要添加其他从属接口,重复上一个命令,并在命令中使用新的接口,使用示例如下: + + ``` + # nmcli con add type bond-slave ifname enp4s0 master mybond0 + Connection 'bond-slave-enp4s0' (05e56afc-b953-41a9-b3f9-0791eb49f7d3) successfully added. + ``` + +- 要启动绑定,则必须首先启动从属接口,使用示例如下: + + ``` + # nmcli con up bond-slave-enp3s0 + Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/14) + ``` + + ``` + # nmcli con up bond-slave-enp4s0 + Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/15) + ``` + + 现在可以启动绑定,使用示例如下: + + ``` + # nmcli con up bond-mybond0 + Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/16) + ``` + + diff --git "a/content/zh/docs/Administration/\344\275\277\347\224\250nmcli\345\221\275\344\273\244.md" "b/content/zh/docs/Administration/\344\275\277\347\224\250nmcli\345\221\275\344\273\244.md" new file mode 100644 index 0000000000000000000000000000000000000000..3e61c11373f80b1fe88d728775ba7a10f7f92c63 --- /dev/null +++ "b/content/zh/docs/Administration/\344\275\277\347\224\250nmcli\345\221\275\344\273\244.md" @@ -0,0 +1,7 @@ +# 使用nmcli命令 + +>![](public_sys-resources/icon-note.gif) **说明:** +>使用nmcli命令配置的网络配置可以立即生效且系统重启后配置也不会丢失。 + + + diff --git "a/content/zh/docs/Administration/\344\275\277\347\224\250nmcli\351\205\215\347\275\256\344\270\273\346\234\272\345\220\215.md" "b/content/zh/docs/Administration/\344\275\277\347\224\250nmcli\351\205\215\347\275\256\344\270\273\346\234\272\345\220\215.md" index b8cc591e97ea3797616c8be7ccfd689d4f233611..200bbc4c63418b98521e766958ae6039ec896efa 100644 --- "a/content/zh/docs/Administration/\344\275\277\347\224\250nmcli\351\205\215\347\275\256\344\270\273\346\234\272\345\220\215.md" +++ "b/content/zh/docs/Administration/\344\275\277\347\224\250nmcli\351\205\215\347\275\256\344\270\273\346\234\272\345\220\215.md" @@ -1,4 +1,4 @@ -# 使用nmcli配置主机名 +# 使用nmcli配置主机名 查询static主机名,使用如下命令: diff --git "a/content/zh/docs/Administration/\344\275\277\347\224\250repo\346\272\220.md" "b/content/zh/docs/Administration/\344\275\277\347\224\250repo\346\272\220.md" index af0b256e45150b08603d5f3efd1db38a7a318b47..ebbed748b7f57b85dd6cc0470368d6543842a631 100644 --- "a/content/zh/docs/Administration/\344\275\277\347\224\250repo\346\272\220.md" +++ "b/content/zh/docs/Administration/\344\275\277\347\224\250repo\346\272\220.md" @@ -1,4 +1,3 @@ -# 使用repo源 +# 使用repo源 repo可配置为yum源,yum(全称为 Yellow dog Updater, Modified)是一个Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包,无须繁琐地一次次下载和安装。 - diff --git "a/content/zh/docs/Administration/\344\275\277\347\224\250rpmbuild\347\274\226\350\257\221mariadb\345\244\261\350\264\245.md" "b/content/zh/docs/Administration/\344\275\277\347\224\250rpmbuild\347\274\226\350\257\221mariadb\345\244\261\350\264\245.md" index 47dbf75f37fdfebb8cefac0372a8af28aa183132..6b072a6bc866aeff9babcc357ed4cdb9e6899eab 100644 --- "a/content/zh/docs/Administration/\344\275\277\347\224\250rpmbuild\347\274\226\350\257\221mariadb\345\244\261\350\264\245.md" +++ "b/content/zh/docs/Administration/\344\275\277\347\224\250rpmbuild\347\274\226\350\257\221mariadb\345\244\261\350\264\245.md" @@ -1,4 +1,4 @@ -# 使用rpmbuild编译mariadb失败 +# 使用rpmbuild编译mariadb失败 ## 问题描述 diff --git "a/content/zh/docs/Administration/\344\275\277\347\224\250systemctl\345\222\214top\345\221\275\344\273\244\346\237\245\350\257\242libvirtd\346\234\215\345\212\241\345\215\240\347\224\250\345\206\205\345\255\230\344\270\215\345\220\214.md" "b/content/zh/docs/Administration/\344\275\277\347\224\250systemctl\345\222\214top\345\221\275\344\273\244\346\237\245\350\257\242libvirtd\346\234\215\345\212\241\345\215\240\347\224\250\345\206\205\345\255\230\344\270\215\345\220\214.md" index 85177b0bc490008e081dec3d0d86109a7b787f57..5f96b40680bf86856833cbaf18c70c4bef54eacb 100644 --- "a/content/zh/docs/Administration/\344\275\277\347\224\250systemctl\345\222\214top\345\221\275\344\273\244\346\237\245\350\257\242libvirtd\346\234\215\345\212\241\345\215\240\347\224\250\345\206\205\345\255\230\344\270\215\345\220\214.md" +++ "b/content/zh/docs/Administration/\344\275\277\347\224\250systemctl\345\222\214top\345\221\275\344\273\244\346\237\245\350\257\242libvirtd\346\234\215\345\212\241\345\215\240\347\224\250\345\206\205\345\255\230\344\270\215\345\220\214.md" @@ -1,4 +1,4 @@ -# 使用systemctl和top命令查询libvirtd服务占用内存不同 +# 使用systemctl和top命令查询libvirtd服务占用内存不同 ## 问题描述 diff --git "a/content/zh/docs/Administration/\344\275\277\347\224\250timedatectl\345\221\275\344\273\244\350\256\276\347\275\256.md" "b/content/zh/docs/Administration/\344\275\277\347\224\250timedatectl\345\221\275\344\273\244\350\256\276\347\275\256.md" index 7e6e807128a797f6d1de099034610967b26b3550..3489f600cfdd36461a224fb50fd1ed64da3871ad 100644 --- "a/content/zh/docs/Administration/\344\275\277\347\224\250timedatectl\345\221\275\344\273\244\350\256\276\347\275\256.md" +++ "b/content/zh/docs/Administration/\344\275\277\347\224\250timedatectl\345\221\275\344\273\244\350\256\276\347\275\256.md" @@ -1,4 +1,4 @@ -# 使用timedatectl命令设置 +# 使用timedatectl命令设置 ## 显示日期和时间 @@ -60,7 +60,7 @@ timedatectl set-time YYYY-MM-DD >![](public_sys-resources/icon-note.gif) **说明:** >修改时间前,请确保已经关闭NTP系统时钟自动同步。 -修改当前的时间,在root权限下执行如下命令,其中 _HH_ 代表小时,_MM_ 代表分钟,_SS_ 代表秒,请根据实际情况修改: +修改当前的时间,在root权限下执行如下命令,其中_HH_ 代表小时,_MM_ 代表分钟,_SS_ 代表秒,请根据实际情况修改: ``` timedatectl set-time HH:MM:SS @@ -80,7 +80,7 @@ timedatectl set-time HH:MM:SS timedatectl list-timezones ``` -要修改当前的时区,在root权限下执行如下命令,其中 _time\_zone_ 是您想要设置的时区,请根据实际情况修改: +要修改当前的时区,在root权限下执行如下命令,其中 _time\_zone_ 是您想要设置的时区,请根据实际情况修改: ``` timedatectl set-timezone time_zone @@ -117,4 +117,5 @@ Asia/Tokyo ``` # timedatectl set-timezone Asia/Shanghai -``` \ No newline at end of file +``` + diff --git "a/content/zh/docs/Administration/\344\275\277\347\224\250vsftpd.md" "b/content/zh/docs/Administration/\344\275\277\347\224\250vsftpd.md" index 3d2658e213d28edc89e89f177004f4290077ee78..92df2156670c75ff6acff6c1d5d012421b4626e0 100644 --- "a/content/zh/docs/Administration/\344\275\277\347\224\250vsftpd.md" +++ "b/content/zh/docs/Administration/\344\275\277\347\224\250vsftpd.md" @@ -1,4 +1,4 @@ -# 使用vsftpd +# 使用vsftpd ## 安装vsftpd diff --git "a/content/zh/docs/Administration/\344\275\277\347\224\250\345\221\275\344\273\244\350\241\214-2.md" "b/content/zh/docs/Administration/\344\275\277\347\224\250\345\221\275\344\273\244\350\241\214-2.md" deleted file mode 100644 index 7a3c59ab6604b73cb93e1194d1e8ea07e28d4438..0000000000000000000000000000000000000000 --- "a/content/zh/docs/Administration/\344\275\277\347\224\250\345\221\275\344\273\244\350\241\214-2.md" +++ /dev/null @@ -1 +0,0 @@ -# 使用命令行 diff --git "a/content/zh/docs/Administration/\344\275\277\347\224\250\345\221\275\344\273\244\350\241\214.md" "b/content/zh/docs/Administration/\344\275\277\347\224\250\345\221\275\344\273\244\350\241\214.md" index 0463cf7b66abd1cb99768585cbf3f0e6a3760e95..9e6ecc64aee97e893e7091939f589c4818dfc93e 100644 --- "a/content/zh/docs/Administration/\344\275\277\347\224\250\345\221\275\344\273\244\350\241\214.md" +++ "b/content/zh/docs/Administration/\344\275\277\347\224\250\345\221\275\344\273\244\350\241\214.md" @@ -1 +1,4 @@ -# 使用命令行 +# 使用命令行 + + + diff --git "a/content/zh/docs/Administration/\344\275\277\347\224\250\346\241\210\344\276\213.md" "b/content/zh/docs/Administration/\344\275\277\347\224\250\346\241\210\344\276\213.md" new file mode 100644 index 0000000000000000000000000000000000000000..bfff405846eb28f484147785931f8256f90a3e67 --- /dev/null +++ "b/content/zh/docs/Administration/\344\275\277\347\224\250\346\241\210\344\276\213.md" @@ -0,0 +1,3 @@ +# 使用案例 + + diff --git "a/content/zh/docs/Administration/\344\275\277\347\224\250\351\273\230\350\256\244\351\205\215\347\275\256\345\220\257\345\212\250SNTP\346\234\215\345\212\241\345\244\261\350\264\245.md" "b/content/zh/docs/Administration/\344\275\277\347\224\250\351\273\230\350\256\244\351\205\215\347\275\256\345\220\257\345\212\250SNTP\346\234\215\345\212\241\345\244\261\350\264\245.md" new file mode 100644 index 0000000000000000000000000000000000000000..76a42a3bbfc38d8ab06782ec31d641496c805faf --- /dev/null +++ "b/content/zh/docs/Administration/\344\275\277\347\224\250\351\273\230\350\256\244\351\205\215\347\275\256\345\220\257\345\212\250SNTP\346\234\215\345\212\241\345\244\261\350\264\245.md" @@ -0,0 +1,14 @@ +# 使用默认配置启动SNTP服务失败 + +## 问题现象 + +默认配置情况下SNTP服务启动失败。 + +## 原因分析 + +默认配置中未添加授时服务器域名。 + +## 解决方案 + +修改/etc/sysconfig/sntp文件 ,在文件中添加中国NTP快速授时服务器域名:0.generic.pool.ntp.org。 + diff --git "a/content/zh/docs/Administration/\344\277\256\346\224\271SELINUX\344\270\272disabled-13.md" "b/content/zh/docs/Administration/\344\277\256\346\224\271SELINUX\344\270\272disabled-13.md" new file mode 100644 index 0000000000000000000000000000000000000000..f68d9c8b1058c66910f0addd2b95992c9e1a9451 --- /dev/null +++ "b/content/zh/docs/Administration/\344\277\256\346\224\271SELINUX\344\270\272disabled-13.md" @@ -0,0 +1,9 @@ +# 修改SELINUX为disabled + +1. 修改配置文件。 + + ``` + #sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/sysconfig/selinux + ``` + + diff --git "a/content/zh/docs/Administration/\344\277\256\346\224\271SELINUX\344\270\272disabled-32.md" "b/content/zh/docs/Administration/\344\277\256\346\224\271SELINUX\344\270\272disabled-32.md" new file mode 100644 index 0000000000000000000000000000000000000000..d54e704a71bbb0bd547260d2522ec3eccdd10e1d --- /dev/null +++ "b/content/zh/docs/Administration/\344\277\256\346\224\271SELINUX\344\270\272disabled-32.md" @@ -0,0 +1,9 @@ +# 修改SELINUX为disabled + +1. 修改配置文件。 + + ``` + #sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/sysconfig/selinux + ``` + + diff --git "a/content/zh/docs/Administration/\344\277\256\346\224\271SELINUX\344\270\272disabled.md" "b/content/zh/docs/Administration/\344\277\256\346\224\271SELINUX\344\270\272disabled.md" new file mode 100644 index 0000000000000000000000000000000000000000..855b3e2071cef59b2aca72491f3b1b0bef92b239 --- /dev/null +++ "b/content/zh/docs/Administration/\344\277\256\346\224\271SELINUX\344\270\272disabled.md" @@ -0,0 +1,9 @@ +# 修改SELINUX为disabled + +1. 修改配置文件。 + + ``` + #sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/sysconfig/selinux + ``` + + diff --git "a/content/zh/docs/Administration/\344\277\256\346\224\271\347\224\250\346\210\267-43.md" "b/content/zh/docs/Administration/\344\277\256\346\224\271\347\224\250\346\210\267-43.md" new file mode 100644 index 0000000000000000000000000000000000000000..d0a172238c331d90db941dfb68ba89aa0121aafa --- /dev/null +++ "b/content/zh/docs/Administration/\344\277\256\346\224\271\347\224\250\346\210\267-43.md" @@ -0,0 +1,55 @@ +# 修改用户 + +## 修改用户名 + +可以使用RENAME USER语句修改一个或多个已经存在的用户名。 + +``` +RENAME USER 'oldusername'@'hostname' TO 'newusername'@'hostname'; +``` + +其中: + +- oldusername:旧的用户名。 +- newusername:新的用户名。 +- hostname:主机名。 + +RENAME USER语句用于对原有的账号进行重命名。若系统中旧账号不存在或者新账号已存在,则该语句执行时会出现错误。 + +使用RENAME USER语句,必须拥有数据库的UPDATE权限或全局CREATE USER权限。 + +## 修改用户示例 + +\#将用户名userexample1修改为userexapme2,主机名为locahost。 + +``` +> RENAME USER 'userexample1'@'localhost' TO 'userexample2'@'localhost'; +``` + +## 修改用户密码 + +可以使用SET PASSWORD语句修改一个用户的登录密码。 + +``` +SET PASSWORD FOR 'username'@'hostname' = 'newpassword'; +``` + +其中: + +- FOR 'username'@'hostname':FOR字句,可选项,指定欲修改密码的用户名及主机名。 +- 'newpassword':新密码。 + +在SET PASSWORD语句中,若不加上FOR子句,表示修改当前用户的密码。 + +FOR字句中必须以'username'@'hostname'的格式给定,username为账户的用户名,hostname为账户的主机名。 + +欲修改密码的账号必须在系统中存在,否则语句执行时会出现错误。 + +## 修改用户密码示例 + +\#将用户名为userexample的密码修改为0123456,主机名为locahost。 + +``` +> SET PASSWORD FOR 'userexample'@'localhost' = '0123456'; +``` + diff --git "a/content/zh/docs/Administration/\344\277\256\346\224\271\347\224\250\346\210\267.md" "b/content/zh/docs/Administration/\344\277\256\346\224\271\347\224\250\346\210\267.md" new file mode 100644 index 0000000000000000000000000000000000000000..e77e5bc2177732301d8b229908ba8623434d9d50 --- /dev/null +++ "b/content/zh/docs/Administration/\344\277\256\346\224\271\347\224\250\346\210\267.md" @@ -0,0 +1,58 @@ +# 修改用户 + +## 修改用户名 + +可以使用RENAME USER语句修改一个或多个已经存在的用户名。 + +``` +RENAME USER 'oldusername'@'hostname' TO 'newusername'@'hostname'; +``` + +其中: + +- oldusername:旧的用户名。 +- newusername:新的用户名。 +- hostname:主机名。 + +RENAME USER语句用于对原有的账号进行重命名。若系统中旧账号不存在或者新账号已存在,则该语句执行时会出现错误。 + +使用RENAME USER语句,必须拥有数据库的UPDATE权限或全局CREATE USER权限。 + +## 修改用户示例 + +\#将用户名userexample1修改为userexapme2,主机名为locahost。 + +``` +> RENAME USER 'userexample1'@'localhost' TO 'userexample2'@'localhost'; +``` + +## 修改用户密码 + +可以使用SET PASSWORD语句修改一个用户的登录密码。 + +``` +SET PASSWORD FOR 'username'@'hostname' = PASSWORD('newpassword'); +``` + +其中: + +- FOR 'username'@'hostname':FOR字句,可选项,指定欲修改密码的用户名及主机名。 +- PASSWORD\('newpassword'\):表示使用函数PASSWORD\(\)设置新口令,即新口令必须传递到函数PASSWORD\(\)中进行加密。 + +>![](public_sys-resources/icon-caution.gif) **注意:** +>PASSWORD\(\)函数为单向加密函数,一旦加密后不能解密出原明文。 + +在SET PASSWORD语句中,若不加上FOR子句,表示修改当前用户的密码。 + +FOR字句中必须以'username'@'hostname'的格式给定,username为账户的用户名,hostname为账户的主机名。 + +欲修改密码的账号必须在系统中存在,否则语句执行时会出现错误。 + +## 修改用户密码示例 + +\#将用户名为userexample的密码修改为0123456,主机名为locahost。 + +``` +> SET PASSWORD FOR 'userexample'@'localhost' = PASSWORD('0123456') ; +``` + diff --git "a/content/zh/docs/Administration/\344\277\256\346\224\271\347\224\250\346\210\267\350\264\246\345\217\267.md" "b/content/zh/docs/Administration/\344\277\256\346\224\271\347\224\250\346\210\267\350\264\246\345\217\267.md" index edac5d13cf0c73caf4f62bbb2041f9adc44f41c4..1b9df60603b995867279759ad2d469c695b97719 100644 --- "a/content/zh/docs/Administration/\344\277\256\346\224\271\347\224\250\346\210\267\350\264\246\345\217\267.md" +++ "b/content/zh/docs/Administration/\344\277\256\346\224\271\347\224\250\346\210\267\350\264\246\345\217\267.md" @@ -1,4 +1,4 @@ -# 修改用户账号 +# 修改用户账号 ## 修改密码 @@ -8,13 +8,13 @@ 使用chsh命令可以修改自己的shell,只有管理员才能用chsh username为其他用户修改shell设置。 -用户也可以使用usermod命令修改shell信息,在root权限下执行如下命令,其中 _new\_shell\_path_ 为目标shell路径,_username_ 为要修改用户的用户名,请根据实际情况修改: +用户也可以使用usermod命令修改shell信息,在root权限下执行如下命令,其中 _new\_shell\_path_ 为目标shell路径,_username_ 为要修改用户的用户名,请根据实际情况修改: ``` usermod -s new_shell_path username ``` -例如,将用户 _user\_example_ 的shell改为csh,命令如下: +例如,将用户user\_example的shell改为csh,命令如下: ``` # usermod -s /bin/csh user_example @@ -22,7 +22,7 @@ usermod -s new_shell_path username ## 修改主目录 -- 修改主目录,可以在root权限下执行如下命令,其中 _new\_home\_directory_ 为已创建的目标主目录的路径,_username_ 为要修改用户的用户名,请根据实际情况修改: +- 修改主目录,可以在root权限下执行如下命令,其中 _new\_home\_directory_ 为已创建的目标主目录的路径,_username_ 为要修改用户的用户名,请根据实际情况修改: ``` usermod -d new_home_directory username @@ -37,7 +37,7 @@ usermod -s new_shell_path username ## 修改UID -修改用户ID,在root权限下执行如下命令,其中 _UID_ 代表目标用户ID,_username_ 代表用户名,请根据实际情况修改: +修改用户ID,在root权限下执行如下命令,其中 _UID_ 代表目标用户ID,_username_ 代表用户名,请根据实际情况修改: ``` usermod -u UID username @@ -47,7 +47,7 @@ usermod -u UID username ## 修改账号的有效期 -如果使用了影子口令,则可以在root权限下,执行如下命令来修改一个账号的有效期,其中 _MM_ 、_DD_ 、_YY_ 分别代表月份、天和年份,_username_ 代表用户名,请根据实际情况修改: +如果使用了影子口令,则可以在root权限下,执行如下命令来修改一个账号的有效期,其中 _MM_ 代表月份,_DD_ 代表某天,_YY_ 代表年份,_username_ 代表用户名,请根据实际情况修改: ``` usermod -e MM/DD/YY username diff --git "a/content/zh/docs/Administration/\344\277\256\346\224\271\350\247\222\350\211\262.md" "b/content/zh/docs/Administration/\344\277\256\346\224\271\350\247\222\350\211\262.md" new file mode 100644 index 0000000000000000000000000000000000000000..adb4d5192589f32773082ddf9e4abc259d4916b5 --- /dev/null +++ "b/content/zh/docs/Administration/\344\277\256\346\224\271\350\247\222\350\211\262.md" @@ -0,0 +1,44 @@ +# 修改角色 + +## 修改用户名 + +可以使用ALTER ROLE语句修改一个已经存在的角色名。 + +``` +ALTER ROLE oldrolername RENAME TO newrolename; +``` + +其中: + +- oldrolername:旧的角色名。 +- newrolename:新的角色名。 + +## 修改用户示例 + +\#将角色名roleexample1修改为roleexapme2。 + +``` +# ALTER ROLE roleexample1 RENAME TO roleexample2; +``` + +## 修改用户密码 + +可以使用ALTER ROLE语句修改一个角色的登录密码。 + +``` +ALTER ROLE rolename PASSWORD 'password' +``` + +其中: + +- rolename:角色名。 +- password:密码。 + +## 修改角色密码示例 + +\#将roleexample1的密码修改为456789。 + +``` +# ALTER ROLE roleexample1 WITH PASSWORD '456789'; +``` + diff --git "a/content/zh/docs/Administration/\344\277\256\346\224\271\351\205\215\347\275\256\346\226\207\344\273\266.md" "b/content/zh/docs/Administration/\344\277\256\346\224\271\351\205\215\347\275\256\346\226\207\344\273\266.md" index 1a6e440946ca6f5857d6b72bf7b77c96318d3779..09914dea7148bcdd805b9f7d260b8ef01e0cffd6 100644 --- "a/content/zh/docs/Administration/\344\277\256\346\224\271\351\205\215\347\275\256\346\226\207\344\273\266.md" +++ "b/content/zh/docs/Administration/\344\277\256\346\224\271\351\205\215\347\275\256\346\226\207\344\273\266.md" @@ -1,4 +1,4 @@ -# 修改配置文件 +# 修改配置文件 DNF 的主要配置文件是 /etc/dnf/dnf.conf,该文件中“main”部分保存着 DNF 的全局设置;用户可以在该文件中通过添加一个或者多个“repository”部分的方式来设置需要安装的软件源位置。 @@ -126,7 +126,7 @@ baseurl=repository_url dnf repolist ``` - 然后执行如下命令,显示对应id的软件源配置,其中 _repository_ 为查询得到的repo id: + 然后执行如下命令,显示对应id的软件源配置,其中 _repository_ 为查询得到的repo id: ``` dnf config-manager --dump repository diff --git "a/content/zh/docs/Administration/\345\201\234\346\255\242\346\225\260\346\215\256\345\272\223.md" "b/content/zh/docs/Administration/\345\201\234\346\255\242\346\225\260\346\215\256\345\272\223.md" new file mode 100644 index 0000000000000000000000000000000000000000..8b9607e04fcb9dd821c89775b3a0c3b1a896eb10 --- /dev/null +++ "b/content/zh/docs/Administration/\345\201\234\346\255\242\346\225\260\346\215\256\345\272\223.md" @@ -0,0 +1,9 @@ +# 停止数据库 + +1. 停止PostgreSQL数据库。 + + ``` + $/usr/bin/pg_ctl -D /data/ -l /data/logfile stop + ``` + + diff --git "a/content/zh/docs/Administration/\345\205\263\351\227\255-\346\232\202\345\201\234\345\222\214\344\274\221\347\234\240\347\263\273\347\273\237.md" "b/content/zh/docs/Administration/\345\205\263\351\227\255-\346\232\202\345\201\234\345\222\214\344\274\221\347\234\240\347\263\273\347\273\237.md" index 753375321e6ec5e1883d26cbabf8dbd2929cd2fe..a46ab3a6e40ac67ccde66c40c514d50b3b723c83 100644 --- "a/content/zh/docs/Administration/\345\205\263\351\227\255-\346\232\202\345\201\234\345\222\214\344\274\221\347\234\240\347\263\273\347\273\237.md" +++ "b/content/zh/docs/Administration/\345\205\263\351\227\255-\346\232\202\345\201\234\345\222\214\344\274\221\347\234\240\347\263\273\347\273\237.md" @@ -1,4 +1,4 @@ -# 关闭、暂停和休眠系统 +# 关闭、暂停和休眠系统 ## systemctl命令 @@ -53,7 +53,7 @@ systemctl poweroff systemctl halt ``` -执行上述命令会给当前所有的登录用户发送一条提示消息。如果不想让systemd发送该消息,您可以添加“\--no-wall”参数。具体命令如下: +执行上述命令会给当前所有的登录用户发送一条提示消息。如果不想让systemd发送该消息,您可以添加“--no-wall”参数。具体命令如下: ``` systemctl --no-wall poweroff @@ -67,7 +67,7 @@ systemctl --no-wall poweroff systemctl reboot ``` -执行上述命令会给当前所有的登录用户发送一条提示消息。如果不想让systemd发送该消息,您可以添加“\--no-wall”参数。具体命令如下: +执行上述命令会给当前所有的登录用户发送一条提示消息。如果不想让systemd发送该消息,您可以添加“--no-wall”参数。具体命令如下: ``` systemctl --no-wall reboot diff --git "a/content/zh/docs/Administration/\345\205\263\351\227\255\351\230\262\347\201\253\345\242\231\345\271\266\345\217\226\346\266\210\345\274\200\346\234\272\350\207\252\345\220\257\345\212\250-12.md" "b/content/zh/docs/Administration/\345\205\263\351\227\255\351\230\262\347\201\253\345\242\231\345\271\266\345\217\226\346\266\210\345\274\200\346\234\272\350\207\252\345\220\257\345\212\250-12.md" new file mode 100644 index 0000000000000000000000000000000000000000..a4a4e87706dec0e324c92ae0900fad1bc21c5e34 --- /dev/null +++ "b/content/zh/docs/Administration/\345\205\263\351\227\255\351\230\262\347\201\253\345\242\231\345\271\266\345\217\226\346\266\210\345\274\200\346\234\272\350\207\252\345\220\257\345\212\250-12.md" @@ -0,0 +1,21 @@ +# 关闭防火墙并取消开机自启动 + +>![](public_sys-resources/icon-note.gif) **说明:** +>测试环境下通常会关闭防火墙以避免部分网络因素影响,视实际需求做配置。 + +1. 停止防火墙。 + + ``` + #systemctl stop firewalld + ``` + +2. 关闭防火墙。 + + ``` + #systemctl disable firewalld + ``` + + >![](public_sys-resources/icon-note.gif) **说明:** + >执行disable命令关闭防火墙的同时,也取消了开机自启动。 + + diff --git "a/content/zh/docs/Administration/\345\205\263\351\227\255\351\230\262\347\201\253\345\242\231\345\271\266\345\217\226\346\266\210\345\274\200\346\234\272\350\207\252\345\220\257\345\212\250-31.md" "b/content/zh/docs/Administration/\345\205\263\351\227\255\351\230\262\347\201\253\345\242\231\345\271\266\345\217\226\346\266\210\345\274\200\346\234\272\350\207\252\345\220\257\345\212\250-31.md" new file mode 100644 index 0000000000000000000000000000000000000000..cb8c5bc0d2a9fb5c036266d5cf6050df68b21c4e --- /dev/null +++ "b/content/zh/docs/Administration/\345\205\263\351\227\255\351\230\262\347\201\253\345\242\231\345\271\266\345\217\226\346\266\210\345\274\200\346\234\272\350\207\252\345\220\257\345\212\250-31.md" @@ -0,0 +1,21 @@ +# 关闭防火墙并取消开机自启动 + +>![](public_sys-resources/icon-note.gif) **说明:** +>测试环境下通常会关闭防火墙以避免部分网络因素影响,视实际需求做配置。 + +1. 停止防火墙。 + + ``` + #systemctl stop firewalld + ``` + +2. 关闭防火墙。 + + ``` + #systemctl disable firewalld + ``` + + >![](public_sys-resources/icon-note.gif) **说明:** + >执行disable命令关闭防火墙的同时,也取消了开机自启动。 + + diff --git "a/content/zh/docs/Administration/\345\205\263\351\227\255\351\230\262\347\201\253\345\242\231\345\271\266\345\217\226\346\266\210\345\274\200\346\234\272\350\207\252\345\220\257\345\212\250.md" "b/content/zh/docs/Administration/\345\205\263\351\227\255\351\230\262\347\201\253\345\242\231\345\271\266\345\217\226\346\266\210\345\274\200\346\234\272\350\207\252\345\220\257\345\212\250.md" new file mode 100644 index 0000000000000000000000000000000000000000..a304e1350ec18cc128660ba79ccb55cd720699b0 --- /dev/null +++ "b/content/zh/docs/Administration/\345\205\263\351\227\255\351\230\262\347\201\253\345\242\231\345\271\266\345\217\226\346\266\210\345\274\200\346\234\272\350\207\252\345\220\257\345\212\250.md" @@ -0,0 +1,21 @@ +# 关闭防火墙并取消开机自启动 + +>![](public_sys-resources/icon-note.gif) **说明:** +>测试环境下通常会关闭防火墙以避免部分网络因素影响,视实际需求做配置。 + +1. 停止防火墙。 + + ``` + #systemctl stop firewalld + ``` + +2. 关闭防火墙。 + + ``` + #systemctl disable firewalld + ``` + + >![](public_sys-resources/icon-note.gif) **说明:** + >执行disable命令关闭防火墙的同时,也取消了开机自启动。 + + diff --git "a/content/zh/docs/Administration/\345\206\205\346\240\270\346\224\257\346\214\201socket\347\233\270\345\205\263\347\263\273\347\273\237\350\260\203\347\224\250.md" "b/content/zh/docs/Administration/\345\206\205\346\240\270\346\224\257\346\214\201socket\347\233\270\345\205\263\347\263\273\347\273\237\350\260\203\347\224\250.md" index 20f6124582adf591aa96b0a12e06104b3bcb2eb8..a3b91715d7d2c725338f0767cb45cf06946af63c 100644 --- "a/content/zh/docs/Administration/\345\206\205\346\240\270\346\224\257\346\214\201socket\347\233\270\345\205\263\347\263\273\347\273\237\350\260\203\347\224\250.md" +++ "b/content/zh/docs/Administration/\345\206\205\346\240\270\346\224\257\346\214\201socket\347\233\270\345\205\263\347\263\273\347\273\237\350\260\203\347\224\250.md" @@ -1,4 +1,4 @@ -# 内核支持socket相关系统调用 +# 内核支持socket相关系统调用 ## 概述 diff --git "a/content/zh/docs/Administration/\345\210\233\345\273\272-\346\233\264\346\226\260\346\234\254\345\234\260repo\346\272\220.md" "b/content/zh/docs/Administration/\345\210\233\345\273\272-\346\233\264\346\226\260\346\234\254\345\234\260repo\346\272\220.md" index 5efa04a8f0a3d478f3fa206298850365f59d8a66..209c17e7e13119b9c34da33a19b02aabedc85a68 100644 --- "a/content/zh/docs/Administration/\345\210\233\345\273\272-\346\233\264\346\226\260\346\234\254\345\234\260repo\346\272\220.md" +++ "b/content/zh/docs/Administration/\345\210\233\345\273\272-\346\233\264\346\226\260\346\234\254\345\234\260repo\346\272\220.md" @@ -1,6 +1,3 @@ -# 创建/更新本地repo源 - -使用mount挂载,将openEuler的镜像openEuler-1.0-base-aarch64-dvd.iso创建为repo源,并能够对repo源进行更新。 - - +# 创建/更新本地repo源 +使用mount挂载,将openEuler的镜像openEuler-20.03-LTS-aarch64-dvd.iso创建为repo源,并能够对repo源进行更新。 diff --git "a/content/zh/docs/Administration/\345\210\233\345\273\272\344\273\216\345\261\236\346\216\245\345\217\243.md" "b/content/zh/docs/Administration/\345\210\233\345\273\272\344\273\216\345\261\236\346\216\245\345\217\243.md" index 2d0f8e2d8bf9afd1944b1806f628f25d81950134..e24129f03a5c9eb62ce0a29de0d3845a0ab14688 100644 --- "a/content/zh/docs/Administration/\345\210\233\345\273\272\344\273\216\345\261\236\346\216\245\345\217\243.md" +++ "b/content/zh/docs/Administration/\345\210\233\345\273\272\344\273\216\345\261\236\346\216\245\345\217\243.md" @@ -1,4 +1,4 @@ -# 创建从属接口 +# 创建从属接口 创建频道绑定接口后,必须在从属接口的配置文件中添加 MASTER 和 SLAVE 指令。 diff --git "a/content/zh/docs/Administration/\345\210\233\345\273\272\345\244\232\344\270\252\347\273\221\345\256\232.md" "b/content/zh/docs/Administration/\345\210\233\345\273\272\345\244\232\344\270\252\347\273\221\345\256\232.md" index 0c77d7734c2d8ad7bb459a929cb15779518b5ecb..ac3838752a4705487785674f445ca0773931bac4 100644 --- "a/content/zh/docs/Administration/\345\210\233\345\273\272\345\244\232\344\270\252\347\273\221\345\256\232.md" +++ "b/content/zh/docs/Administration/\345\210\233\345\273\272\345\244\232\344\270\252\347\273\221\345\256\232.md" @@ -1,4 +1,4 @@ -# 创建多个绑定 +# 创建多个绑定 系统会为每个绑定创建一个频道绑定接口,包括 BONDING\_OPTS 指令。使用这个配置方法可让多个绑定设备使用不同的配置。请按照以下操作创建多个频道绑定接口: diff --git "a/content/zh/docs/Administration/\345\210\233\345\273\272\345\271\266\346\214\202\350\275\275\346\226\207\344\273\266\347\263\273\347\273\237.md" "b/content/zh/docs/Administration/\345\210\233\345\273\272\345\271\266\346\214\202\350\275\275\346\226\207\344\273\266\347\263\273\347\273\237.md" new file mode 100644 index 0000000000000000000000000000000000000000..b062fbe5af35134e6e4e0ade9d30dd21cb0af8b2 --- /dev/null +++ "b/content/zh/docs/Administration/\345\210\233\345\273\272\345\271\266\346\214\202\350\275\275\346\226\207\344\273\266\347\263\273\347\273\237.md" @@ -0,0 +1,100 @@ +# 创建并挂载文件系统 + +在创建完逻辑卷之后,需要在逻辑卷之上创建文件系统并挂载文件系统到相应目录下。 + +## 创建文件系统 + +可通过mkfs命令创建文件系统。 + +``` +mkfs [option] lvname +``` + +其中: + +- option:命令参数选项。常用的参数选项有: + - -t:指定创建的linux系统类型,如ext2,ext3,ext4等等,默认类型为ext2。 + +- lvname:指定要创建的文件系统对应的逻辑卷设备文件名。 + +示例:在逻辑卷/dev/vg1/lv1上创建ext4文件系统。 + +``` +mkfs -t ext4 /dev/vg1/lv1 +``` + +## 手动挂载文件系统 + +手动挂载的文件系统仅在当时有效,一旦操作系统重启则会不存在。 + +可通过mount命令挂载文件系统。 + +``` +mount lvname mntpath +``` + +其中: + +- lvname:指定要挂载文件系统的逻辑卷设备文件名。 +- mntpath:挂载路径。 + +示例:将逻辑卷/dev/vg1/lv1挂载到/mnt/data目录。 + +``` +mount /dev/vg1/lv1 /mnt/data +``` + +## 自动挂载文件系统 + +手动挂载的文件系统在操作系统重启之后会不存在,需要重新手动挂载文件系统。但若在手动挂载文件系统后进行如下设置,可以实现操作系统重启后文件系统自动挂载文件系统。 + +1. 执行blkid命令查询逻辑卷的UUID,逻辑卷以/dev/vg1/lv1为例。 + + ``` + blkid /dev/vg1/lv1 + ``` + + 查看打印信息,打印信息中包含如下内容,其中 _uuidnumber_ 是一串数字,为UUID, _fstype_ 为文件系统。 + + /dev/vg1/lv1: UUID=" _uuidnumber_ " TYPE=" _fstype_ " + +2. 执行**vi /etc/fstab**命令编辑fstab文件,并在最后加上如下内容。 + + ``` + UUID=uuidnumber mntpath fstype defaults 0 0 + ``` + + 内容说明如下: + + - 第一列:UUID,此处填写[1](#li65701520154311)查询的 _uuidnumber_ 。 + - 第二列:文件系统的挂载目录 _mntpath_ 。 + - 第三列:文件系统的文件格式_,_此处填写[1](#li65701520154311)查询的 _fstype_ 。 + - 第四列:挂载选项,此处以“defaults”为例; + - 第五列:备份选项,设置为“1”时,系统自动对该文件系统进行备份;设置为“0”时,不进行备份。此处以“0”为例; + - 第六列:扫描选项,设置为“1”时,系统在启动时自动对该文件系统进行扫描;设置为“0”时,不进行扫描。此处以“0”为例。 + +3. 验证自动挂载功能。 + 1. 执行umount命令卸载文件系统,逻辑卷以/dev/vg1/lv1为例。 + + ``` + umount /dev/vg1/lv1 + ``` + + 2. 执行如下命令,将/etc/fstab文件所有内容重新加载。 + + ``` + mount -a + ``` + + 3. 执行如下命令,查询文件系统挂载信息,挂载目录以/mnt/data为例。 + + ``` + mount | grep /mnt/data + ``` + + 查看打印信息,若信息中包含如下信息表示自动挂载功能生效。 + + /dev/vg1/lv1 on /mnt/data + + + diff --git "a/content/zh/docs/Administration/\345\210\233\345\273\272\346\225\260\346\215\256\345\272\223-23.md" "b/content/zh/docs/Administration/\345\210\233\345\273\272\346\225\260\346\215\256\345\272\223-23.md" new file mode 100644 index 0000000000000000000000000000000000000000..8a144bdb6dddb79aca994ba71201b3d045d3d85d --- /dev/null +++ "b/content/zh/docs/Administration/\345\210\233\345\273\272\346\225\260\346\215\256\345\272\223-23.md" @@ -0,0 +1,18 @@ +# 创建数据库 + +可以使用CREATE DATABASE语句来创建数据库。 + +``` +CREATE DATABASE databasename; +``` + +其中:databasename为数据库名称,且数据库名称不区分大小写。 + +## 示例 + +\#创建数据库名为databaseexample的数据库。 + +``` +> CREATE DATABASE databaseexample; +``` + diff --git "a/content/zh/docs/Administration/\345\210\233\345\273\272\346\225\260\346\215\256\345\272\223-48.md" "b/content/zh/docs/Administration/\345\210\233\345\273\272\346\225\260\346\215\256\345\272\223-48.md" new file mode 100644 index 0000000000000000000000000000000000000000..66be3d72619f3afcdbe9f90bce74a7a4157bfd1d --- /dev/null +++ "b/content/zh/docs/Administration/\345\210\233\345\273\272\346\225\260\346\215\256\345\272\223-48.md" @@ -0,0 +1,18 @@ +# 创建数据库 + +可以使用CREATE DATABASE语句来创建数据库。 + +``` +CREATE DATABASE databasename; +``` + +其中:databasename为数据库名称,且数据库名称不区分大小写。 + +## 示例 + +\#创建数据库名为databaseexample的数据库。 + +``` +> CREATE DATABASE databaseexample; +``` + diff --git "a/content/zh/docs/Administration/\345\210\233\345\273\272\346\225\260\346\215\256\345\272\223.md" "b/content/zh/docs/Administration/\345\210\233\345\273\272\346\225\260\346\215\256\345\272\223.md" new file mode 100644 index 0000000000000000000000000000000000000000..072689aa641ce938523e44615dfede6ac3a22a18 --- /dev/null +++ "b/content/zh/docs/Administration/\345\210\233\345\273\272\346\225\260\346\215\256\345\272\223.md" @@ -0,0 +1,24 @@ +# 创建数据库 + +可以使用CREATE DATABASE语句或createdb来创建角色。createrdb是对CREATE DATABASE命令的封装,需要在shell界面执行,而不是在数据库界面。 + +``` +CREATE DATABASE databasename; +``` + +``` +createdb databasename +``` + +其中:databasename为数据库名。 + +要使用这条命令,必须拥有CREATEDB权限。 + +## 示例 + +\#创建一个数据库database1。 + +``` +postgres=# CREATE DATABASE database1; +``` + diff --git "a/content/zh/docs/Administration/\345\210\233\345\273\272\346\225\260\346\215\256\345\272\223\347\233\256\345\275\225\345\271\266\344\270\224\346\216\210\346\235\203-35.md" "b/content/zh/docs/Administration/\345\210\233\345\273\272\346\225\260\346\215\256\345\272\223\347\233\256\345\275\225\345\271\266\344\270\224\346\216\210\346\235\203-35.md" new file mode 100644 index 0000000000000000000000000000000000000000..d2d87ffb43fcbb44f750460e387918f2726fa4a9 --- /dev/null +++ "b/content/zh/docs/Administration/\345\210\233\345\273\272\346\225\260\346\215\256\345\272\223\347\233\256\345\275\225\345\271\266\344\270\224\346\216\210\346\235\203-35.md" @@ -0,0 +1,12 @@ +# 创建数据库目录并且授权 + +1. 在[搭建数据盘](搭建数据盘-15.md)已创建的数据目录**/data**基础上,继续创建进程所需的相关目录并授权MySQL用户(组)。 + + ``` + #mkdir -p /data/mysql + #cd /data/mysql + #mkdir data tmp run log + #chown -R mysql:mysql /data + ``` + + diff --git "a/content/zh/docs/Administration/\345\210\233\345\273\272\346\225\260\346\215\256\345\272\223\347\233\256\345\275\225\345\271\266\344\270\224\346\216\210\346\235\203.md" "b/content/zh/docs/Administration/\345\210\233\345\273\272\346\225\260\346\215\256\345\272\223\347\233\256\345\275\225\345\271\266\344\270\224\346\216\210\346\235\203.md" new file mode 100644 index 0000000000000000000000000000000000000000..b2813f0d8f8305dab2009c5b329d8634028215cf --- /dev/null +++ "b/content/zh/docs/Administration/\345\210\233\345\273\272\346\225\260\346\215\256\345\272\223\347\233\256\345\275\225\345\271\266\344\270\224\346\216\210\346\235\203.md" @@ -0,0 +1,12 @@ +# 创建数据库目录并且授权 + +1. 在[搭建数据盘](搭建数据盘-15.md)已创建的数据目录**/data**基础上,继续创建进程所需的相关目录并授权MySQL用户(组)。 + + ``` + #mkdir -p /data/mariadb + #cd /data/mariadb + #mkdir data tmp run log + #chown -R mysql:mysql /data + ``` + + diff --git "a/content/zh/docs/Administration/\345\210\233\345\273\272\346\234\254\345\234\260repo\346\272\220.md" "b/content/zh/docs/Administration/\345\210\233\345\273\272\346\234\254\345\234\260repo\346\272\220.md" index 6d701bed8a4ea81acb3e66fd2a9c28c254a8a9bd..ca43e968be175230aa696857c389b39d38a2ad03 100644 --- "a/content/zh/docs/Administration/\345\210\233\345\273\272\346\234\254\345\234\260repo\346\272\220.md" +++ "b/content/zh/docs/Administration/\345\210\233\345\273\272\346\234\254\345\234\260repo\346\272\220.md" @@ -1,9 +1,9 @@ -# 创建本地repo源 +# 创建本地repo源 可以拷贝镜像中相关文件至本地目录以创建本地repo源,示例如下: ``` -mount /home/openEuler/openEuler-1.0-base-aarch64-dvd.iso /mnt/ +mount /home/openEuler/openEuler-20.03-LTS-aarch64-dvd.iso /mnt/ mkdir -p /srv/repo/ cp -r /mnt/Packages /srv/repo/ cp -r /mnt/repodata /srv/repo/ diff --git "a/content/zh/docs/Administration/\345\210\233\345\273\272\346\234\254\345\234\260\350\275\257\344\273\266\346\272\220\344\273\223\345\272\223.md" "b/content/zh/docs/Administration/\345\210\233\345\273\272\346\234\254\345\234\260\350\275\257\344\273\266\346\272\220\344\273\223\345\272\223.md" index d090e9b864881ff373cfce304931da2e06066459..2dcf694410af07b08b6f8c29aa1cba4314516ad6 100644 --- "a/content/zh/docs/Administration/\345\210\233\345\273\272\346\234\254\345\234\260\350\275\257\344\273\266\346\272\220\344\273\223\345\272\223.md" +++ "b/content/zh/docs/Administration/\345\210\233\345\273\272\346\234\254\345\234\260\350\275\257\344\273\266\346\272\220\344\273\223\345\272\223.md" @@ -1,4 +1,4 @@ -# 创建本地软件源仓库 +# 创建本地软件源仓库 要建立一个本地软件源仓库,请按照下列步骤操作。 diff --git "a/content/zh/docs/Administration/\345\210\233\345\273\272\347\224\250\346\210\267-41.md" "b/content/zh/docs/Administration/\345\210\233\345\273\272\347\224\250\346\210\267-41.md" new file mode 100644 index 0000000000000000000000000000000000000000..57395c06349bda0f84d859666fcefdf592f7776f --- /dev/null +++ "b/content/zh/docs/Administration/\345\210\233\345\273\272\347\224\250\346\210\267-41.md" @@ -0,0 +1,34 @@ +# 创建用户 + +可以使用CREATE USER语句来创建一个或多个用户,并设置相应的口令。 + +``` +CREATE USER 'username'@'hostname' IDENTIFIED BY 'password'; +``` + +其中: + +- username:用户名。 +- host:主机名,即用户连接数据库时所在的主机的名字。若是本地用户可用localhost,若在创建的过程中,未指定主机名,则主机名默认为“%”,表示一组主机。 +- password:用户的登陆密码,密码可以为空,如果为空则该用户可以不需要密码登陆服务器,但从安全的角度而言,不推荐这种做法。 + +使用CREATE USER语句必须拥有数据库的INSERT权限或全局CREATE USER权限。 + +使用CREATE USER语句创建一个用户账号后,会在系统自身的数据库的user表中添加一条新记录。若创建的账户已经存在,则语句执行时会出现错误。 + +新创建的用户拥有的权限很少,只允许进行不需要权限的操作,如使用SHOW语句查询所有存储引擎和字符集的列表等。 + +## 示例 + +\#创建密码为123456,用户名为userexample1的本地用户。 + +``` +> CREATE USER 'userexample1'@'localhost' IDENTIFIED BY '123456'; +``` + +\#创建密码为123456,用户名为userexample2,主机名为192.168.1.100的用户。 + +``` +> CREATE USER 'userexample2'@'192.168.1.100' IDENDIFIED BY '123456'; +``` + diff --git "a/content/zh/docs/Administration/\345\210\233\345\273\272\347\224\250\346\210\267.md" "b/content/zh/docs/Administration/\345\210\233\345\273\272\347\224\250\346\210\267.md" new file mode 100644 index 0000000000000000000000000000000000000000..932a58b6ff4082132f7cc28b146996dc80177537 --- /dev/null +++ "b/content/zh/docs/Administration/\345\210\233\345\273\272\347\224\250\346\210\267.md" @@ -0,0 +1,34 @@ +# 创建用户 + +可以使用CREATE USER语句来创建一个或多个用户,并设置相应的口令。 + +``` +CREATE USER 'username'@'hostname' IDENTIFIED BY 'password'; +``` + +其中: + +- username:用户名。 +- host:主机名,即用户连接数据库时所在的主机的名字。若是本地用户可用localhost,若在创建的过程中,未指定主机名,则主机名默认为“%”,表示一组主机。 +- password:用户的登陆密码,密码可以为空,如果为空则该用户可以不需要密码登陆服务器,但从安全的角度而言,不推荐这种做法。 + +使用CREATE USER语句必须拥有数据库的INSERT权限或全局CREATE USER权限。 + +使用CREATE USER语句创建一个用户账号后,会在系统自身的数据库的user表中添加一条新记录。若创建的账户已经存在,则语句执行时会出现错误。 + +新创建的用户拥有的权限很少,只允许进行不需要权限的操作,如使用SHOW语句查询所有存储引擎和字符集的列表等。 + +## 示例 + +\#创建密码为123456,用户名为userexample1的本地用户。 + +``` +> CREATE USER 'userexample1'@'localhost' IDENTIFIED BY '123456'; +``` + +\#创建密码为123456,用户名为userexample2,主机名为192.168.1.100的用户。 + +``` +> CREATE USER 'userexample2'@'192.168.1.100' IDENDIFIED BY '123456'; +``` + diff --git "a/content/zh/docs/Administration/\345\210\233\345\273\272\347\273\204\345\222\214\347\224\250\346\210\267-14.md" "b/content/zh/docs/Administration/\345\210\233\345\273\272\347\273\204\345\222\214\347\224\250\346\210\267-14.md" new file mode 100644 index 0000000000000000000000000000000000000000..fa3eb640e39805abab57ce76bd9a36eb526a9a5a --- /dev/null +++ "b/content/zh/docs/Administration/\345\210\233\345\273\272\347\273\204\345\222\214\347\224\250\346\210\267-14.md" @@ -0,0 +1,24 @@ +# 创建组和用户 + +>![](public_sys-resources/icon-note.gif) **说明:** +>服务器环境下,为了系统安全,通常会为进程分配单独的用户,以实现权限隔离。本章节创建的组和用户都是操作系统层面的,不是数据库层面的。 + +1. 创建MySQL用户(组)。 + + ``` + #groupadd mysql + ``` + + ``` + #useradd -g mysql mysql + ``` + +2. 设置MySQL用户密码。 + + ``` + #passwd mysql + ``` + + 重复输入密码(根据实际需求设置密码)。 + + diff --git "a/content/zh/docs/Administration/\345\210\233\345\273\272\347\273\204\345\222\214\347\224\250\346\210\267-33.md" "b/content/zh/docs/Administration/\345\210\233\345\273\272\347\273\204\345\222\214\347\224\250\346\210\267-33.md" new file mode 100644 index 0000000000000000000000000000000000000000..9c50ab28bbec5bf6393874fa74c12a181669b20c --- /dev/null +++ "b/content/zh/docs/Administration/\345\210\233\345\273\272\347\273\204\345\222\214\347\224\250\346\210\267-33.md" @@ -0,0 +1,24 @@ +# 创建组和用户 + +>![](public_sys-resources/icon-note.gif) **说明:** +>服务器环境下,为了系统安全,通常会为进程分配单独的用户,以实现权限隔离。本章节创建的组和用户都是操作系统层面的,不是数据库层面的。 + +1. 创建MySQL用户(组)。 + + ``` + #groupadd mysql + ``` + + ``` + #useradd -g mysql mysql + ``` + +2. 设置MySQL用户密码。 + + ``` + #passwd mysql + ``` + + 重复输入密码(根据实际需求设置密码)。 + + diff --git "a/content/zh/docs/Administration/\345\210\233\345\273\272\347\273\204\345\222\214\347\224\250\346\210\267.md" "b/content/zh/docs/Administration/\345\210\233\345\273\272\347\273\204\345\222\214\347\224\250\346\210\267.md" new file mode 100644 index 0000000000000000000000000000000000000000..798e561e558404bf26fa340f1e43ed602b89daeb --- /dev/null +++ "b/content/zh/docs/Administration/\345\210\233\345\273\272\347\273\204\345\222\214\347\224\250\346\210\267.md" @@ -0,0 +1,22 @@ +# 创建组和用户 + +>![](public_sys-resources/icon-note.gif) **说明:** +>服务器环境下,为了系统安全,通常会为进程分配单独的用户,以实现权限隔离。本章节创建的组和用户都是操作系统层面的,不是数据库层面的。 + +1. 创建PostgreSQL用户(组)。 + + ``` + #groupadd postgres + ``` + + ``` + #useradd -g postgres postgres + ``` + +2. 设置postgres用户密码(重复输入密码)。 + + ``` + #passwd postgres + ``` + + diff --git "a/content/zh/docs/Administration/\345\210\233\345\273\272\350\247\222\350\211\262.md" "b/content/zh/docs/Administration/\345\210\233\345\273\272\350\247\222\350\211\262.md" new file mode 100644 index 0000000000000000000000000000000000000000..7d5a17a97b984c2f8173e036fc4163636f0ce2a0 --- /dev/null +++ "b/content/zh/docs/Administration/\345\210\233\345\273\272\350\247\222\350\211\262.md" @@ -0,0 +1,49 @@ +# 创建角色 + +可以使用CREATE ROLE语句或createuser来创建角色。createuser是对CREATE ROLE命令的封装,需要在shell界面执行,而不是在数据库界面。 + +``` +CREATE ROLE rolename [ [ WITH ] option [ ... ] ]; +``` + +``` +createuser rolename +``` + +其中: + +- rolename:角色名。 +- option为参数选项,常用的有: + - SUPERUSER | NOSUPERUSER:决定一个新角色是否为"超级用户",若未指定,则默认为NOSUPERUSER,即不是超级用户。 + - CREATEDB | NOCREATEDB:定义一个角色是否能创建数据库,若未指定,则默认为NOCREATEDB,即不能创建数据库。 + - CREATEROLE | NOCREATEROLE:决定一个角色是否可以创建新角色,若未指定,则默认为NOCREATEROLE,即不能创建新角色。 + - INHERIT | NOINHERIT:决定一个角色是否"继承"它所在组的角色的权限。一个带有 INHERIT 属性的角色可以自动使用已经赋与它直接或间接所在组的任何权限。若未指定,则默认为INHERIT。 + - LOGIN | NOLOGIN:决定一个角色是否可以登录,一个拥有LOGIN属性的角色可以认为是一个用户,若无此属性的角色可以用于管理数据库权限,但是并不是用户,若未指定,则默认为NOLOGIN。但若创建角色是使用的是CREATE USER而不是CREATE ROLE,则默认是LOGIN属性。 + - \[ ENCRYPTED | UNENCRYPTED \] PASSWORD 'password':设置角色的密码,密码只对那些拥有 LOGIN 属性的角色有意义。ENCRYPTED | UNENCRYPTED表示是否对密码进行加密,若未指定,则默认为ENCRYPTED,即加密。 + - VALID UNTIL 'timestamp':角色的密码失效的时间戳,若为指定,则表示密码永久有效。 + - IN ROLE rolename1:列出一个或多个现有的角色,新角色rolename将立即加入这些角色,成为rolename1的成员。 + - ROLE rolename2_:_列出一个或多个现有的角色,它们将自动添加为新角色rolename的成员,即新角色为"组"。 + + +要使用这条命令,必须拥有 CREATEROLE 权限或者是数据库超级用户。 + +## 示例 + +\#创建一个可以登录的角色roleexample1。 + +``` +postgres=# CREATE ROLE roleexample1 LOGIN; +``` + +\#创建一个密码为123456的角色roleexample2。 + +``` +postgres=# CREATE ROLE roleexample2 WITH LOGIN PASSWORD '123456'; +``` + +\#创建角色名为roleexample3的角色。。 + +``` +[postgres@localhost ~]$ createuser roleexample3 +``` + diff --git "a/content/zh/docs/Administration/\345\210\233\345\273\272\351\242\221\351\201\223\347\273\221\345\256\232\346\216\245\345\217\243.md" "b/content/zh/docs/Administration/\345\210\233\345\273\272\351\242\221\351\201\223\347\273\221\345\256\232\346\216\245\345\217\243.md" index e8d9151c88b04b7f6ad0cd827b772cd379032e94..cae6cd5fd21f8acf1a0d550047dcc30757a69c54 100644 --- "a/content/zh/docs/Administration/\345\210\233\345\273\272\351\242\221\351\201\223\347\273\221\345\256\232\346\216\245\345\217\243.md" +++ "b/content/zh/docs/Administration/\345\210\233\345\273\272\351\242\221\351\201\223\347\273\221\345\256\232\346\216\245\345\217\243.md" @@ -1,4 +1,4 @@ -# 创建频道绑定接口 +# 创建频道绑定接口 要创建绑定接口,可通过在 /etc/sysconfig/network-scripts/ 目录中创建名为 ifcfg-bondN 的文件(使用接口号码替换 N,比如 0)。 diff --git "a/content/zh/docs/Administration/\345\210\235\345\247\213\345\214\226\345\244\261\350\264\245.md" "b/content/zh/docs/Administration/\345\210\235\345\247\213\345\214\226\345\244\261\350\264\245.md" new file mode 100644 index 0000000000000000000000000000000000000000..e8d0362bfa5825f80c439a83a7064f75d83db9fc --- /dev/null +++ "b/content/zh/docs/Administration/\345\210\235\345\247\213\345\214\226\345\244\261\350\264\245.md" @@ -0,0 +1,43 @@ +# 初始化失败 + +## 故障现象 + +加速器引擎没有完全加载成功。 + +## 处理步骤 + +1. 检查加速器驱动是否加载成功,运行lsmod 命令查看uacce.ko、qm.ko 、sgl.ko 、hisi\_sec2.ko 、hisi\_hpre.ko 、hisi\_zip.ko、 hisi\_rde.ko是否在位。 + + ``` + # lsmod | grep uacce + uacce 262144 2 hisi_hpre,hisi_qm,hisi_sec2,hisi_zip,hisi_rde + ``` + +2. 检查/usr/lib64(RPM方式安装时目录)或者/usr/local/lib(源码方式安装时目录)和OpenSSL安装目录是否有加速器引擎库,且建立正确的软连接。 + + ``` + [root@localhost home]# ll /usr/local/lib/engines-1.1/ |grep kae + #查询kae是否正确安装并建立软连接,如果有正确安装显示如下内容 + # ll /usr/local/lib/engines-1.1/ |grep kae + lrwxrwxrwx. 1 root root 22 Nov 12 02:33 kae.so -> kae.so.1.0.1 + lrwxrwxrwx. 1 root root 22 Nov 12 02:33 kae.so.0 -> kae.so.1.0.1 + -rwxr-xr-x. 1 root root 112632 May 25 2019 kae.so.1.0.1 + [[root@localhost home]# + [root@localhost home]# ll /usr/lib64/ | grep libwd + #查询wd是否正确安装并建立软连接,如果有正确安装显示如下内容 + lrwxrwxrwx. 1 root root 14 Nov 12 02:33 libwd.so -> libwd.so.1.0.1 + lrwxrwxrwx. 1 root root 14 Nov 12 02:33 libwd.so.0 -> libwd.so.1.0.1 + -rwxr-xr-x. 1 root root 137120 May 25 2019 libwd.so.1.0.1 + [root@localhost home]# + ``` + +3. 检查OpenSSL引擎库的路径是否能通过export命令进行导出。 + + ``` + # echo $OPENSSL_ENGINES + # export OPENSSL_ENGINES=/usr/local/lib/engines-1.1 + # echo $OPENSSL_ENGINES + /usr/local/lib/engines-1.1 + ``` + + diff --git "a/content/zh/docs/Administration/\345\210\235\345\247\213\345\214\226\346\225\260\346\215\256\345\272\223.md" "b/content/zh/docs/Administration/\345\210\235\345\247\213\345\214\226\346\225\260\346\215\256\345\272\223.md" new file mode 100644 index 0000000000000000000000000000000000000000..3bc15e95ad93eb51e9057f8937272dd6b02148d3 --- /dev/null +++ "b/content/zh/docs/Administration/\345\210\235\345\247\213\345\214\226\346\225\260\346\215\256\345\272\223.md" @@ -0,0 +1,18 @@ +# 初始化数据库 + +>![](public_sys-resources/icon-notice.gif) **须知:** +>此步骤在postgres用户下操作。 + +1. 切换到[创建组和用户](创建组和用户.md)和用户中创建的PostgreSQL用户。 + + ``` + #su - postgres + ``` + +2. 初始化数据库,其中命令中的/usr/bin是命令initdb所在的目录。 + + ``` + $/usr/bin/initdb -D /data/ + ``` + + diff --git "a/content/zh/docs/Administration/\345\210\240\351\231\244\346\225\260\346\215\256\345\272\223-26.md" "b/content/zh/docs/Administration/\345\210\240\351\231\244\346\225\260\346\215\256\345\272\223-26.md" new file mode 100644 index 0000000000000000000000000000000000000000..edc7952e5ffa2b570cdc6fa8bc341e98521d070e --- /dev/null +++ "b/content/zh/docs/Administration/\345\210\240\351\231\244\346\225\260\346\215\256\345\272\223-26.md" @@ -0,0 +1,27 @@ +# 删除数据库 + +可以使用DROP DATABASE语句来删除数据库。 + +>![](public_sys-resources/icon-caution.gif) **注意:** +>删除数据库要谨慎操作,一旦删除,数据库中的所有表和数据都会删除。 + +``` +DROP DATABASE databasename; +``` + +其中:databasename为数据库名称。 + +DROP DATABASE命令用于删除创建过\(已存在\)的数据库,且会删除数据库中的所有表,但数据库的用户权限不会自动删除。 + +要使用DROP DATABASE,您需要数据库的DROP权限。 + +DROP SCHEMA是DROP DATABASE的同义词。 + +## 示例 + +\#删除databaseexample数据库。 + +``` +> DROP DATABASE databaseexample; +``` + diff --git "a/content/zh/docs/Administration/\345\210\240\351\231\244\346\225\260\346\215\256\345\272\223-51.md" "b/content/zh/docs/Administration/\345\210\240\351\231\244\346\225\260\346\215\256\345\272\223-51.md" new file mode 100644 index 0000000000000000000000000000000000000000..463f55a0f4425a1de188276bab88c84209bf50f4 --- /dev/null +++ "b/content/zh/docs/Administration/\345\210\240\351\231\244\346\225\260\346\215\256\345\272\223-51.md" @@ -0,0 +1,27 @@ +# 删除数据库 + +可以使用DROP DATABASE语句来删除数据库。 + +>![](public_sys-resources/icon-caution.gif) **注意:** +>删除数据库要谨慎操作,一旦删除,数据库中的所有表和数据都会删除。 + +``` +DROP DATABASE databasename; +``` + +其中:databasename为数据库名称。 + +DROP DATABASE命令用于删除创建过\(已存在\)的数据库,且会删除数据库中的所有表,但数据库的用户权限不会自动删除。 + +要使用DROP DATABASE,您需要数据库的DROP权限。 + +DROP SCHEMA是DROP DATABASE的同义词。 + +## 示例 + +\#删除databaseexample数据库。 + +``` +> DROP DATABASE databaseexample; +``` + diff --git "a/content/zh/docs/Administration/\345\210\240\351\231\244\346\225\260\346\215\256\345\272\223.md" "b/content/zh/docs/Administration/\345\210\240\351\231\244\346\225\260\346\215\256\345\272\223.md" new file mode 100644 index 0000000000000000000000000000000000000000..085277a36b1dc35bfd49cbc625a737afd8b60d86 --- /dev/null +++ "b/content/zh/docs/Administration/\345\210\240\351\231\244\346\225\260\346\215\256\345\272\223.md" @@ -0,0 +1,29 @@ +# 删除数据库 + +可以使用DROP DATABASE语句或dropdb来删除数据库。dropdb是对DROP DATABASE命令的封装,需要在shell界面执行,而不是在数据库界面。 + +>![](public_sys-resources/icon-caution.gif) **注意:** +>删除数据库要谨慎操作,一旦删除,数据库中的所有表和数据都会删除。 + +``` +DROP DATABASE databasename; +``` + +``` +dropdb databasename +``` + +其中:databasename为数据库名称。 + +DROP DATABASE会删除数据库的系统目录项并且删除包含数据的文件目录。 + +DROP DATABASE只能由超级管理员或数据库拥有者执行。 + +## 示例 + +\#删除databaseexample数据库。 + +``` +# DROP DATABASE databaseexample; +``` + diff --git "a/content/zh/docs/Administration/\345\210\240\351\231\244\347\224\250\346\210\267-20.md" "b/content/zh/docs/Administration/\345\210\240\351\231\244\347\224\250\346\210\267-20.md" new file mode 100644 index 0000000000000000000000000000000000000000..b05e9c9777653db316cc1652e4ba408852929bc2 --- /dev/null +++ "b/content/zh/docs/Administration/\345\210\240\351\231\244\347\224\250\346\210\267-20.md" @@ -0,0 +1,25 @@ +# 删除用户 + +可以使用DROP USER语句来删除一个或多个用户账号以及相关的权限。 + +``` +DROP USER 'username1'@'hostname1' [,'username2'@'hostname2']…; +``` + +>![](public_sys-resources/icon-caution.gif) **注意:** +>用户的删除不会影响他们之前所创建的表、索引或其他数据库对象,因为数据库并不会记录创建了这些对象的账号。 + +DROP USER语句可用于删除一个或多个数据库账号,并删除其原有权限。 + +使用DROP USER语句必须拥有数据库的DELETE权限或全局CREATE USER权限。 + +在DROP USER语句的使用中,若没有明确地给出账号的主机名,则该主机名默认为“%”。 + +## 示例 + +\#删除用户名为userexample的本地用户。 + +``` +> DROP USER 'userexample'@'localhost'; +``` + diff --git "a/content/zh/docs/Administration/\345\210\240\351\231\244\347\224\250\346\210\267-44.md" "b/content/zh/docs/Administration/\345\210\240\351\231\244\347\224\250\346\210\267-44.md" new file mode 100644 index 0000000000000000000000000000000000000000..35618e58f5ef408b101ecabd4dfea67ea5d19f55 --- /dev/null +++ "b/content/zh/docs/Administration/\345\210\240\351\231\244\347\224\250\346\210\267-44.md" @@ -0,0 +1,25 @@ +# 删除用户 + +可以使用DROP USER语句来删除一个或多个用户账号以及相关的权限。 + +``` +DROP USER 'username1'@'hostname1' [,'username2'@'hostname2']…; +``` + +>![](public_sys-resources/icon-caution.gif) **注意:** +>用户的删除不会影响他们之前所创建的表、索引或其他数据库对象,因为数据库并不会记录创建了这些对象的账号。 + +DROP USER语句可用于删除一个或多个数据库账号,并删除其原有权限。 + +使用DROP USER语句必须拥有数据库的DELETE权限或全局CREATE USER权限。 + +在DROP USER语句的使用中,若没有明确地给出账号的主机名,则该主机名默认为“%”。 + +## 示例 + +\#删除用户名为userexample的本地用户。 + +``` +> DROP USER 'userexample'@'localhost'; +``` + diff --git "a/content/zh/docs/Administration/\345\210\240\351\231\244\347\224\250\346\210\267.md" "b/content/zh/docs/Administration/\345\210\240\351\231\244\347\224\250\346\210\267.md" index 48e49f5469f3219c096547f92d39b4d75bd70ee1..22d507d90cb6561aacb6b7760a64e1cf036fab76 100644 --- "a/content/zh/docs/Administration/\345\210\240\351\231\244\347\224\250\346\210\267.md" +++ "b/content/zh/docs/Administration/\345\210\240\351\231\244\347\224\250\346\210\267.md" @@ -1,4 +1,4 @@ -# 删除用户 +# 删除用户 在root权限下,使用userdel命令可删除现有用户。 @@ -11,5 +11,5 @@ 如果想同时删除该用户的主目录以及其中所有内容,要使用-r参数递归删除。 >![](public_sys-resources/icon-note.gif) **说明:** ->不建议直接删除已经进入系统的用户,如果需要强制删除,请使用 userdel -f _Test_ 命令。 +>不建议直接删除已经进入系统的用户,如果需要强制删除,请使用 userdel -f _Test_ 命令。 diff --git "a/content/zh/docs/Administration/\345\210\240\351\231\244\347\224\250\346\210\267\346\235\203\351\231\220-21.md" "b/content/zh/docs/Administration/\345\210\240\351\231\244\347\224\250\346\210\267\346\235\203\351\231\220-21.md" new file mode 100644 index 0000000000000000000000000000000000000000..23d81e2723081f4f59e31ca5621ebea57345834c --- /dev/null +++ "b/content/zh/docs/Administration/\345\210\240\351\231\244\347\224\250\346\210\267\346\235\203\351\231\220-21.md" @@ -0,0 +1,20 @@ +# 删除用户权限 + +可以使用REVOKE语句来删除一个用户的权限,但此用户不会被删除。 + +``` +REVOKE privilege ON databasename.tablename FROM 'username'@'hostname'; +``` + +其中REVOKE语句的参数与GRANT语句的参数含义相同。 + +要使用 REVOKE 语句,必须拥有数据库的全局CREATE USER权限或UPDATE权限。 + +## 示例 + +\#删除本地用户userexample的INSERT权限。 + +``` +> REVOKE INSERT ON *.* FROM 'userexample'@'localhost'; +``` + diff --git "a/content/zh/docs/Administration/\345\210\240\351\231\244\347\224\250\346\210\267\346\235\203\351\231\220-46.md" "b/content/zh/docs/Administration/\345\210\240\351\231\244\347\224\250\346\210\267\346\235\203\351\231\220-46.md" new file mode 100644 index 0000000000000000000000000000000000000000..8785364f4d5b1bbbf62f5d6ad334c75e1a5ef95d --- /dev/null +++ "b/content/zh/docs/Administration/\345\210\240\351\231\244\347\224\250\346\210\267\346\235\203\351\231\220-46.md" @@ -0,0 +1,20 @@ +# 删除用户权限 + +可以使用REVOKE语句来删除一个用户的权限,但此用户不会被删除。 + +``` +REVOKE privilege ON databasename.tablename FROM 'username'@'hostname'; +``` + +其中REVOKE语句的参数与GRANT语句的参数含义相同。 + +要使用 REVOKE 语句,必须拥有数据库的全局CREATE USER权限或UPDATE权限。 + +## 示例 + +\#删除本地用户userexample的INSERT权限。 + +``` +> REVOKE INSERT ON *.* FROM 'userexample'@'localhost'; +``` + diff --git "a/content/zh/docs/Administration/\345\210\240\351\231\244\347\224\250\346\210\267\346\235\203\351\231\220.md" "b/content/zh/docs/Administration/\345\210\240\351\231\244\347\224\250\346\210\267\346\235\203\351\231\220.md" new file mode 100644 index 0000000000000000000000000000000000000000..11a7abdb27573393125415bebdab7d5d24e87b72 --- /dev/null +++ "b/content/zh/docs/Administration/\345\210\240\351\231\244\347\224\250\346\210\267\346\235\203\351\231\220.md" @@ -0,0 +1,86 @@ +# 删除用户权限 + +可以使用REVOKE语句来撤销以前赋予一个或多个角色的权限。 + +撤销角色对表的操作权限: + +``` +REVOKE [ GRANT OPTION FOR ] { { SELECT | INSERT | UPDATE | DELETE | REFERENCES | TRIGGER } [,...] | ALL [ PRIVILEGES ] } ON [ TABLE ] tablename [, ...] FROM { rolename | GROUP groupname | PUBLIC } [, ...] +``` + +撤销角色对序列的操作权限: + +``` +REVOKE [ GRANT OPTION FOR ] { { USAGE | SELECT | UPDATE } [,...] | ALL [ PRIVILEGES ] } ON SEQUENCE sequencename [, ...] FROM { rolename | GROUP groupname | PUBLIC } [, ...] [ CASCADE | RESTRICT ] +``` + +撤销角色对数据库的操作权限: + +``` +REVOKE [ GRANT OPTION FOR ] { { CREATE | CONNECT | TEMPORARY | TEMP } [,...] | ALL [ PRIVILEGES ] } ON DATABASE databasename [, ...] FROM { rolename | GROUP groupname | PUBLIC } [, ...] [ CASCADE | RESTRICT ] +``` + +撤销角色对函数的操作权限: + +``` +REVOKE [ GRANT OPTION FOR ] { EXECUTE | ALL [ PRIVILEGES ] } ON FUNCTION funcname ( [ [ argmode ] [ argname ] argtype [, ...] ] ) [, ...] FROM { rolename | GROUP groupname | PUBLIC } [, ...] [ CASCADE | RESTRICT ] +``` + +撤销角色对过程语言的操作权限: + +``` +REVOKE [ GRANT OPTION FOR ] { USAGE | ALL [ PRIVILEGES ] } ON LANGUAGE langname [, ...] FROM { rolename | GROUP groupname | PUBLIC } [, ...] [ CASCADE | RESTRICT ] +``` + +撤销角色对模式的操作权限: + +``` +REVOKE [ GRANT OPTION FOR ] { { CREATE | USAGE } [,...] | ALL [ PRIVILEGES ] } ON SCHEMA schemaname [, ...] FROM { rolename | GROUP groupname | PUBLIC } [, ...] [ CASCADE | RESTRICT ] +``` + +撤销角色对表空间的操作权限: + +``` +REVOKE [ GRANT OPTION FOR ] { CREATE | ALL [ PRIVILEGES ] } ON TABLESPACE tablespacename [, ...] FROM { rolename | GROUP groupname | PUBLIC } [, ...] [ CASCADE | RESTRICT ] +``` + +删除rolename2的rolename1的成员关系: + +``` +REVOKE [ ADMIN OPTION FOR ] rolename1 [, ...] FROM rolename2 [, ...] [ CASCADE | RESTRICT ] +``` + +其中: + +- GRANT OPTION FOR:表示只是撤销对该权限的授权的权力,而不是撤销该权限本身。 +- SELECT、INSERT、UPDATE、DELETE、REFERENCES、TRIGGER、USAGE、CREATE、CONNECT、TEMPORARY、TEMP、EXECUTE、ALL \[ PRIVILEGES \]:用户的操作权限,ALL \[ PRIVILEGES \]表示所有的权限,PRIVILEGES关键字在 PostgreSQL里是可选的,但是严格的SQL 要求有这个关键字。 +- ON字句:用于指定撤销权限的对象。 +- tablename:表名。 +- FROM字句:用来指定被撤销权限的角色。 +- rolename、rolename1、rolename2:角色名。 +- groupname:角色组名。 +- PUBLIC:表示撤销隐含定义的、拥有所有角色的组,但并不意味着所有角色都失去了权限,那些直接得到的权限以及通过一个组得到的权限仍然有效。 +- sequencename:序列名。 +- CASCADE:撤销所有依赖性权限。 +- RESTRICT:不撤销所有依赖性权限。 +- databasename:数据库名。 +- funcname \( \[ \[ argmode \] \[ argname \] argtype \[, ...\] \] \):函数名及其参数。 +- langname:过程语言名。 +- schemaname:模式名。 +- tablespacename:表空间名。 +- ADMIN OPTION FOR:表示传递的授权不会自动收回。 + +## 示例 + +\#对userexample授予数据库database1的CREATE权限。 + +``` +# GRANT CREATE ON DATABASE database1 TO userexample; +``` + +\#对所有用户授予表table1的所有权限。 + +``` +# GRANT ALL PRIVILEGES ON TABLE table1 TO PUBLIC; +``` + diff --git "a/content/zh/docs/Administration/\345\210\240\351\231\244\350\247\222\350\211\262.md" "b/content/zh/docs/Administration/\345\210\240\351\231\244\350\247\222\350\211\262.md" new file mode 100644 index 0000000000000000000000000000000000000000..a56d1e67c175addd71d0d25a8e18ece1a769ad6f --- /dev/null +++ "b/content/zh/docs/Administration/\345\210\240\351\231\244\350\247\222\350\211\262.md" @@ -0,0 +1,28 @@ +# 删除角色 + +可以使用DROP ROLE语句或dropuser来创建角色。dropuser是对DROP ROLE命令的封装,需要在shell界面执行,而不是在数据库界面。 + +``` +DROP ROLE rolename; +``` + +``` +dropuser rolename +``` + +其中:rolename:角色名。 + +## 示例 + +\#删除userexample1角色。 + +``` +postgres=# DROP ROLE userexample1; +``` + +\#删除userexample2角色。。 + +``` +[postgres@localhost ~]$ dropuser userexample2 +``` + diff --git "a/content/zh/docs/Administration/\345\211\215\350\250\200.md" "b/content/zh/docs/Administration/\345\211\215\350\250\200.md" index 6db5dc144218e59b468614bbd572a2d3926dccd6..5a5ee7fe93b4d9a1f80253664a178671ed38de9e 100644 --- "a/content/zh/docs/Administration/\345\211\215\350\250\200.md" +++ "b/content/zh/docs/Administration/\345\211\215\350\250\200.md" @@ -1,4 +1,4 @@ -# 前言 +# 前言 ## 概述 @@ -19,13 +19,13 @@ -

+

用于传递设备或环境安全警示信息。如不避免则可能会导致设备损坏、数据丢失、设备性能降低或其它不可预知的结果。

“须知”不涉及人身伤害。

-

+

对正文中重点信息的补充说明。

“说明”不是安全警示信息,不涉及人身、设备及环境伤害信息。

diff --git "a/content/zh/docs/Administration/\345\212\240\351\200\237\345\274\225\346\223\216\347\232\204\345\272\224\347\224\250.md" "b/content/zh/docs/Administration/\345\212\240\351\200\237\345\274\225\346\223\216\347\232\204\345\272\224\347\224\250.md" new file mode 100644 index 0000000000000000000000000000000000000000..eeca2a15d70240c8c5113d4ac49cc2d8e45c719f --- /dev/null +++ "b/content/zh/docs/Administration/\345\212\240\351\200\237\345\274\225\346\223\216\347\232\204\345\272\224\347\224\250.md" @@ -0,0 +1,4 @@ +# 加速引擎的应用 + +>![](public_sys-resources/icon-note.gif) **说明:** +>如果用户未购买引擎许可证,建议用户不要通过kae引擎调用相应算法,否则可能会影响openssl加密算法的性能。 diff --git "a/content/zh/docs/Administration/\345\215\207\347\272\247\345\212\240\351\200\237\345\231\250\350\275\257\344\273\266\345\214\205.md" "b/content/zh/docs/Administration/\345\215\207\347\272\247\345\212\240\351\200\237\345\231\250\350\275\257\344\273\266\345\214\205.md" new file mode 100644 index 0000000000000000000000000000000000000000..5479f3085bb902a697891820e9d9c3bea1908ed1 --- /dev/null +++ "b/content/zh/docs/Administration/\345\215\207\347\272\247\345\212\240\351\200\237\345\231\250\350\275\257\344\273\266\345\214\205.md" @@ -0,0 +1,46 @@ +# 升级加速器软件包 + +## 使用场景 + +当需要更新加速器软件版本时可以使用rpm -Uvh方式进行升级。 + +## 操作步骤 + +1. 从openEuler社区下载最新版本的加速引擎软件包。 +2. 使用SSH远程登录工具,以root帐号进入Linux操作系统命令行界面。 +3. 将下载下来的最新版本的软件包都放在某个路径下。 +4. 在存放软件包的路径下使用rpm -Uvh 命令升级加速器驱动包及引擎库包。示例如下。 + + 命令和信息回显如下所示。 + + ![](figures/zh-cn_image_0231143189.png) + + ![](figures/zh-cn_image_0231143191.png) + +5. 使用rpm -qa 命令查询是否升级成功。确认查询到的版本是最新的升级后版本。 + + ![](figures/zh-cn_image_0231143193.png) + + ![](figures/zh-cn_image_0231143195.png) + +6. 重启系统或通过命令行手动卸载旧版本驱动,然后加载新版本驱动,并查看是否加载成功 + + ``` + 卸载旧驱动 + # lsmod | grep uacce + uacce 262144 3 hisi_hpre,hisi_sec2,hisi_qm + # + # rmmod hisi_hpre + # rmmod hisi_sec2 + # rmmod hisi_qm + # rmmod uacce + # lsmod | grep uacce + # + 加载新驱动# modprobe uacce + # modprobe hisi_qm# modprobe hisi_sec2 #加载hisi_sec2驱动时将根据/etc/modprobe.d/hisi_sec2.conf 下的配置文件加载到内核 + # modprobe hisi_hpre #加载hisi_hpre驱动时将根据/etc/modprobe.d/hisi_hpre.conf 下的配置文件加载到内核 + # lsmod | grep uacce + uacce 36864 3 hisi_sec2,hisi_qm,hisi_hpre + ``` + + diff --git "a/content/zh/docs/Administration/\345\215\207\347\272\247\345\212\240\351\200\237\345\231\250\351\251\261\345\212\250\345\244\261\350\264\245.md" "b/content/zh/docs/Administration/\345\215\207\347\272\247\345\212\240\351\200\237\345\231\250\351\251\261\345\212\250\345\244\261\350\264\245.md" new file mode 100644 index 0000000000000000000000000000000000000000..c4638a84c86f8403ec8cad75e1a3d09b9a4a9f76 --- /dev/null +++ "b/content/zh/docs/Administration/\345\215\207\347\272\247\345\212\240\351\200\237\345\231\250\351\251\261\345\212\250\345\244\261\350\264\245.md" @@ -0,0 +1,14 @@ +# 升级加速器驱动失败 + +## 故障现象 + +升级加速器驱动后,重启系统驱动版本仍为旧版本。 + +## 可能原因 + +在升级加速器驱动前,系统更新了其他驱动包,这些驱动包可能重新更新了引导文件系统initramfs,将未升级前的加速器驱动一起更新到了initramfs文件系统中。例如系统更新了网卡驱动,或者人为更新了initramfs文件系统,导致系统重启时优先从initramfs文件系统中加载加速器驱动。 + +## 处理步骤 + +升级加速器驱动版本后,通过执行dracut --force命令重新更新initramfs文件系统。 + diff --git "a/content/zh/docs/Administration/\345\215\270\350\275\275-19.md" "b/content/zh/docs/Administration/\345\215\270\350\275\275-19.md" new file mode 100644 index 0000000000000000000000000000000000000000..d7af72964761a0e46cbfd16411f59b340b460ded --- /dev/null +++ "b/content/zh/docs/Administration/\345\215\270\350\275\275-19.md" @@ -0,0 +1,16 @@ +# 卸载 + +1. 关闭数据库进程。 + + ``` + #ps -ef | grep mysql + #kill -9 进程ID + ``` + +2. 执行**dnf remove mariadb-server**命令卸载mariadb。 + + ``` + #dnf remove mariadb-server + ``` + + diff --git "a/content/zh/docs/Administration/\345\215\270\350\275\275-39.md" "b/content/zh/docs/Administration/\345\215\270\350\275\275-39.md" new file mode 100644 index 0000000000000000000000000000000000000000..7c1ddf8ab059edc23eaa85f346985ef5cb7c98ef --- /dev/null +++ "b/content/zh/docs/Administration/\345\215\270\350\275\275-39.md" @@ -0,0 +1,16 @@ +# 卸载 + +1. 关闭数据库进程。 + + ``` + #ps -ef | grep mysql + #kill -9 进程ID + ``` + +2. 执行**dnf remove mysql**命令卸载MySQL。 + + ``` + #dnf remove mysql + ``` + + diff --git "a/content/zh/docs/Administration/\345\215\270\350\275\275.md" "b/content/zh/docs/Administration/\345\215\270\350\275\275.md" new file mode 100644 index 0000000000000000000000000000000000000000..2a0e39397dd67dbec64e53cd6db6dd2f54b6468c --- /dev/null +++ "b/content/zh/docs/Administration/\345\215\270\350\275\275.md" @@ -0,0 +1,15 @@ +# 卸载 + +1. 在postgres用户下停止数据库。 + + ``` + $/usr/bin/pg_ctl -D /data/ -l /data/logfile stop + ``` + +2. 在root用户下执行**dnf remove postgresql-server**卸载PostgreSQL数据库。 + + ``` + #dnf remove postgresql-server + ``` + + diff --git "a/content/zh/docs/Administration/\345\215\270\350\275\275\345\212\240\351\200\237\345\231\250\350\275\257\344\273\266\345\214\205.md" "b/content/zh/docs/Administration/\345\215\270\350\275\275\345\212\240\351\200\237\345\231\250\350\275\257\344\273\266\345\214\205.md" new file mode 100644 index 0000000000000000000000000000000000000000..62093e5ae4443b624dd0069eddce9b6d26b8477c --- /dev/null +++ "b/content/zh/docs/Administration/\345\215\270\350\275\275\345\212\240\351\200\237\345\231\250\350\275\257\344\273\266\345\214\205.md" @@ -0,0 +1,36 @@ +# 卸载加速器软件包 + +## 使用场景 + +用户不再使用加速引擎软件,或进行新版本加速引擎软件的安装。 + +## 操作步骤 + +1. 使用SSH远程登录工具,以root帐号进入Linux操作系统命令行界面。 +2. 重启系统或通过命令行手动将已加载到内核的驱动卸载掉,并查看是否卸载成功。 + + ``` + # lsmod | grep uacce + uacce 36864 3 hisi_sec2,hisi_qm,hisi_hpre + # rmmod hisi_hpre + # rmmod hisi_sec2 + # rmmod hisi_qm + # rmmod uacce + # lsmod | grep uacce + # + ``` + +3. 通过rpm -e 命令卸载加速引擎软件包。示例如下。 + + >![](public_sys-resources/icon-note.gif) **说明:** + >由于存在依赖关系,卸载libwd前须先卸载libkae引擎软件包。 + + ![](figures/zh-cn_image_0231143196.png) + + ![](figures/zh-cn_image_0231143197.png) + +4. 使用rpm -qa |grep 软件包名命令查询是否卸载成功。 + + ![](figures/zh-cn_image_0231143198.png) + + diff --git "a/content/zh/docs/Administration/\345\220\257\345\212\250nginx\346\234\215\345\212\241.md" "b/content/zh/docs/Administration/\345\220\257\345\212\250nginx\346\234\215\345\212\241.md" index 48f12a7b1d07c7b451665cc64b5b5a33e0772389..32227c4c284401f34d1b0edf5dece13b1d021ddc 100644 --- "a/content/zh/docs/Administration/\345\220\257\345\212\250nginx\346\234\215\345\212\241.md" +++ "b/content/zh/docs/Administration/\345\220\257\345\212\250nginx\346\234\215\345\212\241.md" @@ -1,4 +1,4 @@ -# 启动nginx服务 +# 启动nginx服务 1. 通过systemd启动nginx服务: diff --git "a/content/zh/docs/Administration/\345\220\257\345\212\250\346\225\260\346\215\256\345\272\223.md" "b/content/zh/docs/Administration/\345\220\257\345\212\250\346\225\260\346\215\256\345\272\223.md" new file mode 100644 index 0000000000000000000000000000000000000000..c286b42fe669506c99cef2c1e2d1e200fb7b3524 --- /dev/null +++ "b/content/zh/docs/Administration/\345\220\257\345\212\250\346\225\260\346\215\256\345\272\223.md" @@ -0,0 +1,19 @@ +# 启动数据库 + +1. 启动PostgreSQL数据库。 + + ``` + $/usr/bin/pg_ctl -D /data/ -l /data/logfile start + ``` + +2. 确认PostgreSQL数据库进程是否正常启动。 + + ``` + $ps -ef | grep postgres + ``` + + 命令执行后,打印信息如下图所示,PostgreSQL相关进程已经正常启动了。 + + ![](figures/postgres.png) + + diff --git "a/content/zh/docs/Administration/\345\221\250\346\234\237\346\200\247\350\277\220\350\241\214\344\270\200\346\211\271\347\250\213\345\272\217\357\274\210cron\357\274\211.md" "b/content/zh/docs/Administration/\345\221\250\346\234\237\346\200\247\350\277\220\350\241\214\344\270\200\346\211\271\347\250\213\345\272\217\357\274\210cron\357\274\211.md" index 6d7dca25318c1b1fb468bbefb6d40f9076046c6f..f3c530f3e766eefd84a473c4bca2029cd00ed8ac 100644 --- "a/content/zh/docs/Administration/\345\221\250\346\234\237\346\200\247\350\277\220\350\241\214\344\270\200\346\211\271\347\250\213\345\272\217\357\274\210cron\357\274\211.md" +++ "b/content/zh/docs/Administration/\345\221\250\346\234\237\346\200\247\350\277\220\350\241\214\344\270\200\346\211\271\347\250\213\345\272\217\357\274\210cron\357\274\211.md" @@ -1,4 +1,4 @@ -# 周期性运行一批程序(cron) +# 周期性运行一批程序(cron) 前面介绍at命令都会在一定时间内完成一定任务,但是它只能执行一次。也就是说,当指定了运行命令后,系统在指定时间完成任务,以后就不再执行了。但是在很多情况下需要周期性重复执行一些命令,这时候就需要使用cron命令来完成任务。 diff --git "a/content/zh/docs/Administration/\345\237\272\347\241\200\351\205\215\347\275\256.md" "b/content/zh/docs/Administration/\345\237\272\347\241\200\351\205\215\347\275\256.md" index ab8b3340e97b7a996f3b3f48fbc6eaa5b6d1686d..79535631c62037640e2fe6a28bf00f94c3a1664f 100644 --- "a/content/zh/docs/Administration/\345\237\272\347\241\200\351\205\215\347\275\256.md" +++ "b/content/zh/docs/Administration/\345\237\272\347\241\200\351\205\215\347\275\256.md" @@ -1 +1,4 @@ -# 基础配置 +# 基础配置 + + + diff --git "a/content/zh/docs/Administration/\345\242\236\345\212\240\347\224\250\346\210\267.md" "b/content/zh/docs/Administration/\345\242\236\345\212\240\347\224\250\346\210\267.md" index c039c20aababf68f9563ad73e365abce74107c7b..439739c485a86f82c536e963b686087927dd99e3 100644 --- "a/content/zh/docs/Administration/\345\242\236\345\212\240\347\224\250\346\210\267.md" +++ "b/content/zh/docs/Administration/\345\242\236\345\212\240\347\224\250\346\210\267.md" @@ -1,8 +1,8 @@ -# 增加用户 +# 增加用户 ## useradd命令 -在root权限下,通过useradd命令可以为系统添加新用户信息,其中 _options_ 为相关参数,_user\_name_ 为用户名称。 +在root权限下,通过useradd命令可以为系统添加新用户信息,其中 _options_ 为相关参数,_user\_name_ 为用户名称。 ``` useradd [options] user_name @@ -15,7 +15,7 @@ useradd [options] user_name - /etc/passwd:用户账号信息文件。 - /etc/shadow:用户账号信息加密文件。 - /etc/group:组信息文件。 -- /etc/defaut/useradd:定义默认设置文件。 +- /etc/default/useradd:定义默认设置文件。 - /etc/login.defs:系统广义设置文件。 - /etc/skel:默认的初始配置文件目录。 diff --git "a/content/zh/docs/Administration/\345\244\207\344\273\275\346\225\260\346\215\256\345\272\223-27.md" "b/content/zh/docs/Administration/\345\244\207\344\273\275\346\225\260\346\215\256\345\272\223-27.md" new file mode 100644 index 0000000000000000000000000000000000000000..e68e64e2a59e520e807ef64d6d2a9a3760d39cc7 --- /dev/null +++ "b/content/zh/docs/Administration/\345\244\207\344\273\275\346\225\260\346\215\256\345\272\223-27.md" @@ -0,0 +1,69 @@ +# 备份数据库 + +可以使用mysqldump命令备份数据库。 + +备份一个或多个表: + +``` +mysqldump [options] databasename [tablename ...] > outfile +``` + +备份一个或多个库: + +``` +mysqldump [options] -databases databasename ... > outfile +``` + +备份所有库: + +``` +mysqldump [options] -all-databases > outputfile +``` + +其中: + +- databasename:数据库名称。 +- tablename:数据表名称。 +- outfile:数据库备份的文件。 +- options:mysqldump命令参数选项,多个参数之间可以使用空格分隔。常用的mysqldump命令参数选项如下: + - -u, --user=username:指定用户名。 + - -p, --password\[=password\]:指定密码。 + - -P, --port=portnumber:指定端口。 + - -h, --host=hostname:指定主机名。 + - -r, --result-file=filename:将导出结果保存到指定的文件中,等同于“\>”。 + - -t:只备份数据。 + - -d:只备份表结构。 + + +## 示例 + +\#备份主机为192.168.202.144,端口为3306,root用户下的所有数据库到alldb.sql中。 + +``` +# mysqldump -h 192.168.202.144 -P 3306 -uroot -p123456 --all-databases > alldb.sql +``` + +\#备份主机为192.168.202.144,端口为3306,root用户下的db1数据库到db1.sql中。 + +``` +# mysqldump -h 192.168.202.144 -P 3306 -uroot -p123456 --databases db1 > db1.sql +``` + +\#备份主机为192.168.202.144,端口为3306,root用户下的db1数据库的tb1表到db1tb1.sql中。 + +``` +# mysqldump -h 192.168.202.144 -P 3306 -uroot -p123456 db1 tb1 > db1tb1.sql +``` + +\#只备份主机为192.168.202.144,端口为3306,root用户下的db1数据库的表结构到db1.sql中。 + +``` +# mysqldump -h 192.168.202.144 -P 3306 -uroot -p123456 -d db1 > db1.sql +``` + +\#只备份主机为192.168.202.144,端口为3306,root用户下的db1数据库的数据到db1.sql中。 + +``` +# mysqldump -h 192.168.202.144 -P 3306 -uroot -p123456 -t db1 > db1.sq +``` + diff --git "a/content/zh/docs/Administration/\345\244\207\344\273\275\346\225\260\346\215\256\345\272\223-52.md" "b/content/zh/docs/Administration/\345\244\207\344\273\275\346\225\260\346\215\256\345\272\223-52.md" new file mode 100644 index 0000000000000000000000000000000000000000..f72cfdce4aa6d794de728be55fcadb5467c49ae7 --- /dev/null +++ "b/content/zh/docs/Administration/\345\244\207\344\273\275\346\225\260\346\215\256\345\272\223-52.md" @@ -0,0 +1,69 @@ +# 备份数据库 + +可以使用mysqldump命令备份数据库。 + +备份一个或多个表: + +``` +mysqldump [options] databasename [tablename ...] > outfile +``` + +备份一个或多个库: + +``` +mysqldump [options] -databases databasename ... > outfile +``` + +备份所有库: + +``` +mysqldump [options] -all-databases > outputfile +``` + +其中: + +- databasename:数据库名称。 +- tablename:数据表名称。 +- outfile:数据库备份的文件。 +- options:mysqldump命令参数选项,多个参数之间可以使用空格分隔。常用的mysqldump命令参数选项如下: + - -u, --user=username:指定用户名。 + - -p, --password\[=password\]:指定密码。 + - -P, --port=portnumber:指定端口。 + - -h, --host=hostname:指定主机名。 + - -r, --result-file=filename:将导出结果保存到指定的文件中,等同于“\>”。 + - -t:只备份数据。 + - -d:只备份表结构。 + + +## 示例 + +\#备份主机为192.168.202.144,端口为3306,root用户下的所有数据库到alldb.sql中。 + +``` +# mysqldump -h 192.168.202.144 -P 3306 -uroot -p123456 --all-databases > alldb.sql +``` + +\#备份主机为192.168.202.144,端口为3306,root用户下的db1数据库到db1.sql中。 + +``` +# mysqldump -h 192.168.202.144 -P 3306 -uroot -p123456 --databases db1 > db1.sql +``` + +\#备份主机为192.168.202.144,端口为3306,root用户下的db1数据库的tb1表到db1tb1.sql中。 + +``` +# mysqldump -h 192.168.202.144 -P 3306 -uroot -p123456 db1 tb1 > db1tb1.sql +``` + +\#只备份主机为192.168.202.144,端口为3306,root用户下的db1数据库的表结构到db1.sql中。 + +``` +# mysqldump -h 192.168.202.144 -P 3306 -uroot -p123456 -d db1 > db1.sql +``` + +\#只备份主机为192.168.202.144,端口为3306,root用户下的db1数据库的数据到db1.sql中。 + +``` +# mysqldump -h 192.168.202.144 -P 3306 -uroot -p123456 -t db1 > db1.sq +``` + diff --git "a/content/zh/docs/Administration/\345\244\207\344\273\275\346\225\260\346\215\256\345\272\223.md" "b/content/zh/docs/Administration/\345\244\207\344\273\275\346\225\260\346\215\256\345\272\223.md" new file mode 100644 index 0000000000000000000000000000000000000000..580183a6d5f45cb948aeef81731d90f2db8de0be --- /dev/null +++ "b/content/zh/docs/Administration/\345\244\207\344\273\275\346\225\260\346\215\256\345\272\223.md" @@ -0,0 +1,29 @@ +# 备份数据库 + +可以使用pg\_dump命令备份数据库,将数据库转储到一个脚本文件或其他归档文件中。 + +``` +pg_dump [option]... [databasename] > outfile +``` + +其中: + +- databasename:数据库名称。如果没有声明这个参数,那么使用环境变量 PGDATABASE 。如果那个环境变量也没声明,那么使用发起连接的用户名。 +- outfile:数据库备份的文件。 +- option:pg\_dump命令参数选项,多个参数之间可以使用空格分隔。常用的pg\_dump命令参数选项如下: + - -f filename,--file=filename:指输出到指定的文件。如果忽略,则使用标准输出。 + - -d,--dbname=databsetaname:指定转储的数据库。 + - -h,--host=hostname:指定主机名。 + - -p,--port=portnumber:指定端口。 + - -U,--username=username:指定连接的用户名。 + - -W,--password:强制口令提示(自动)。 + + +## 示例 + +\#备份主机为192.168.202.144,端口为3306,postgres用户下的database1数据库到db1.sql中。 + +``` +$ pg_dump -h 192.168.202.144 -p 3306 -U postgres -W database1 > db1.sql +``` + diff --git "a/content/zh/docs/Administration/\345\256\211\350\243\205-17.md" "b/content/zh/docs/Administration/\345\256\211\350\243\205-17.md" new file mode 100644 index 0000000000000000000000000000000000000000..fa2cfb04509667ae2746da4fdde06ded9972fb05 --- /dev/null +++ "b/content/zh/docs/Administration/\345\256\211\350\243\205-17.md" @@ -0,0 +1,28 @@ +# 安装 + +1. 配置本地yum源,详细信息请参考[搭建repo服务器](搭建repo服务器.md)。 +2. 清除缓存。 + + ``` + #dnf clean all + ``` + +3. 创建缓存。 + + ``` + #dnf makecache + ``` + +4. 安装mariadb服务器。 + + ``` + #dnf install mariadb-server + ``` + +5. 查看安装后的rpm包。 + + ``` + #rpm -qa | grep mariadb + ``` + + diff --git "a/content/zh/docs/Administration/\345\256\211\350\243\205-37.md" "b/content/zh/docs/Administration/\345\256\211\350\243\205-37.md" new file mode 100644 index 0000000000000000000000000000000000000000..f02c771d6ab5d61dd92a5ab808765ad71d2e53dd --- /dev/null +++ "b/content/zh/docs/Administration/\345\256\211\350\243\205-37.md" @@ -0,0 +1,28 @@ +# 安装 + +1. 配置本地yum源,详细信息请参考[搭建repo服务器](搭建repo服务器.md)。 +2. 清除缓存。 + + ``` + #dnf clean all + ``` + +3. 创建缓存。 + + ``` + #dnf makecache + ``` + +4. 安装MySQL服务器。 + + ``` + #dnf install mysql + ``` + +5. 查看安装后的rpm包。 + + ``` + #rpm -qa | grep mysql + ``` + + diff --git "a/content/zh/docs/Administration/\345\256\211\350\243\205-6.md" "b/content/zh/docs/Administration/\345\256\211\350\243\205-6.md" new file mode 100644 index 0000000000000000000000000000000000000000..716d4b9adb9b026689e644a174af66362daaa8ba --- /dev/null +++ "b/content/zh/docs/Administration/\345\256\211\350\243\205-6.md" @@ -0,0 +1,28 @@ +# 安装 + +1. 配置本地yum源,详细信息请参考[搭建repo服务器](搭建repo服务器.md)。 +2. 清除缓存。 + + ``` + #dnf clean all + ``` + +3. 创建缓存。 + + ``` + #dnf makecache + ``` + +4. 安装mariadb服务器。 + + ``` + #dnf install nginx + ``` + +5. 查看安装后的rpm包。 + + ``` + dnf list all | grep nginx + ``` + + diff --git "a/content/zh/docs/Administration/\345\256\211\350\243\205-9.md" "b/content/zh/docs/Administration/\345\256\211\350\243\205-9.md" new file mode 100644 index 0000000000000000000000000000000000000000..8ecaa8c67ca05ceaac883dbf3e82de7e5ff7ceaf --- /dev/null +++ "b/content/zh/docs/Administration/\345\256\211\350\243\205-9.md" @@ -0,0 +1,28 @@ +# 安装 + +1. 配置本地yum源,详细信息请参考[搭建repo服务器](搭建repo服务器.md)。 +2. 清除缓存。 + + ``` + #dnf clean all + ``` + +3. 创建缓存。 + + ``` + #dnf makecache + ``` + +4. 安装PostgreSQL服务器。 + + ``` + #dnf install postgresql-server + ``` + +5. 查看安装后的rpm包。 + + ``` + #rpm -qa | grep postgresql + ``` + + diff --git "a/content/zh/docs/Administration/\345\256\211\350\243\205-\345\215\207\347\272\247\345\222\214\345\215\270\350\275\275.md" "b/content/zh/docs/Administration/\345\256\211\350\243\205-\345\215\207\347\272\247\345\222\214\345\215\270\350\275\275.md" new file mode 100644 index 0000000000000000000000000000000000000000..e3890d30a923bd23ec0470421edca5e0a5c75656 --- /dev/null +++ "b/content/zh/docs/Administration/\345\256\211\350\243\205-\345\215\207\347\272\247\345\222\214\345\215\270\350\275\275.md" @@ -0,0 +1,4 @@ +# 安装、升级和卸载 + + + diff --git "a/content/zh/docs/Administration/\345\256\211\350\243\205-\350\277\220\350\241\214\345\222\214\345\215\270\350\275\275-16.md" "b/content/zh/docs/Administration/\345\256\211\350\243\205-\350\277\220\350\241\214\345\222\214\345\215\270\350\275\275-16.md" new file mode 100644 index 0000000000000000000000000000000000000000..bb0de0531fa86627e7666e722a24d1c12634f551 --- /dev/null +++ "b/content/zh/docs/Administration/\345\256\211\350\243\205-\350\277\220\350\241\214\345\222\214\345\215\270\350\275\275-16.md" @@ -0,0 +1 @@ +# 安装、运行和卸载 diff --git "a/content/zh/docs/Administration/\345\256\211\350\243\205-\350\277\220\350\241\214\345\222\214\345\215\270\350\275\275-36.md" "b/content/zh/docs/Administration/\345\256\211\350\243\205-\350\277\220\350\241\214\345\222\214\345\215\270\350\275\275-36.md" new file mode 100644 index 0000000000000000000000000000000000000000..6d1065e89e8e200b87721f926f5f7c2ab7b4b954 --- /dev/null +++ "b/content/zh/docs/Administration/\345\256\211\350\243\205-\350\277\220\350\241\214\345\222\214\345\215\270\350\275\275-36.md" @@ -0,0 +1 @@ +# 安装、运行和卸载 diff --git "a/content/zh/docs/Administration/\345\256\211\350\243\205-\350\277\220\350\241\214\345\222\214\345\215\270\350\275\275.md" "b/content/zh/docs/Administration/\345\256\211\350\243\205-\350\277\220\350\241\214\345\222\214\345\215\270\350\275\275.md" new file mode 100644 index 0000000000000000000000000000000000000000..8149c9474459b4167ba4fdc4fd8ddac7b5f4f043 --- /dev/null +++ "b/content/zh/docs/Administration/\345\256\211\350\243\205-\350\277\220\350\241\214\345\222\214\345\215\270\350\275\275.md" @@ -0,0 +1 @@ +# 安装、运行和卸载 diff --git "a/content/zh/docs/Administration/\345\256\211\350\243\205.md" "b/content/zh/docs/Administration/\345\256\211\350\243\205.md" new file mode 100644 index 0000000000000000000000000000000000000000..e553dd01ac2ea9d3c9294470118515c3dcba126e --- /dev/null +++ "b/content/zh/docs/Administration/\345\256\211\350\243\205.md" @@ -0,0 +1,31 @@ +# 安装 + +>![](public_sys-resources/icon-note.gif) **说明:** +>openEuler操作系统默认已安装LVM。可通过**rpm -qa | grep lvm2**命令查询,若打印信息中包含“lvm2”信息,则表示已安装LVM,可跳过本章节内;若无任何打印信息,则表示未安装,可参考本章节内容进行安装。 + +1. 配置本地yum源,详细信息请参考[搭建repo服务器](搭建repo服务器.md)。 +2. 清除缓存。 + + ``` + #dnf clean all + ``` + +3. 创建缓存。 + + ``` + #dnf makecache + ``` + +4. 安装LVM。 + + ``` + #dnf install lvm2 + ``` + +5. 查看安装后的rpm包。 + + ``` + #rpm -qa | grep lvm2 + ``` + + diff --git "a/content/zh/docs/Administration/\345\256\211\350\243\205\345\211\215\345\207\206\345\244\207.md" "b/content/zh/docs/Administration/\345\256\211\350\243\205\345\211\215\345\207\206\345\244\207.md" new file mode 100644 index 0000000000000000000000000000000000000000..bec43b7b5d4ff79df1b888990f36bc70c0c5f588 --- /dev/null +++ "b/content/zh/docs/Administration/\345\256\211\350\243\205\345\211\215\345\207\206\345\244\207.md" @@ -0,0 +1,46 @@ +# 安装前准备 + +## 环境要求 + +- TaiShan 200服务器,开启加速引擎功能 + +>![](public_sys-resources/icon-note.gif) **说明:** +>- 需要导入加速器许可证,具体操作请参考《[TaiShan 机架服务器 iBMC \(V300及以上\) 用户指南](https://support.huawei.com/enterprise/zh/doc/EDOC1100048792?idPath=7919749%7C9856522%7C9856629%7C23201901)》中“许可证管理”章节。 +>- 物理机场景使用加速器需要关闭SMMU,具体操作请参考《[TaiShan 200服务器BIOS参数参考](https://support.huawei.com/enterprise/zh/doc/EDOC1100088653?idPath=7919749%7C9856522%7C9856629%7C23201901)》。 + +- CPU:Kunpeng 920 +- 操作系统:openEuler-20.03-LTS-aarch64-dvd.iso + +## KAE加速引擎软件说明 + +**表 1** 加速引擎的rpm软件包 + + + + + + + + + + + + + + + + +

软件包名称

+

软件包说明

+

kae_driver-版本号-1.OS类型.aarch64.rpm

+

加速器驱动,包含内容:uacce.ko、hisi_qm.ko、hisi_sec2.ko、hisi_hpre.ko内核模块

+

支持:SM3/SM4/AES/RSA/DH算法

+

libwd-版本号-1.OS类型.aarch64.rpm

+

包含内容:libwd.so动态链接库

+

提供接口给KAE引擎

+

libkae-版本号-1.OS类型.aarch64.rpm

+

依赖:libwd rpm包

+

包含内容:libkae.so动态库

+

支持:SM3/SM4/AES/RSA/DH等算法

+
+ diff --git "a/content/zh/docs/Administration/\345\256\211\350\243\205\345\212\240\351\200\237\345\231\250\350\275\257\344\273\266\345\214\205-3.md" "b/content/zh/docs/Administration/\345\256\211\350\243\205\345\212\240\351\200\237\345\231\250\350\275\257\344\273\266\345\214\205-3.md" new file mode 100644 index 0000000000000000000000000000000000000000..55e6344d2b0ece1601947f57055417f61c93c67c --- /dev/null +++ "b/content/zh/docs/Administration/\345\256\211\350\243\205\345\212\240\351\200\237\345\231\250\350\275\257\344\273\266\345\214\205-3.md" @@ -0,0 +1,69 @@ +# 安装加速器软件包 + +## 前提条件 + +- 已在本地安装远程SSH登录工具 +- 已安装openEuler操作系统 +- RPM工具能正常使用。 +- 已安装OpenSSL 1.1.1a或以上版本。 + + 使用如下命令查询OpenSSL的版本号 + + - openssl version + + +## 安装步骤 + +1. 以root帐号登录openEuler OS命令行界面。 +2. 新建目录用于存放加速器引擎软件包。 +3. 使用SSH远程登录工具,将所有加速引擎软件包拷贝到已建好的目录下。 +4. 在存放加速引擎软件包目录下,使用rpm -ivh命令安装加速器引擎软件包。 + + >![](public_sys-resources/icon-note.gif) **说明:** + >由于libkae包的安装依赖libwd包,所以libwd的安装必须先于libkae。 + + ![](figures/zh-cn_image_0231143176.png) + + ![](figures/zh-cn_image_0231143177.png) + +5. 使用rpm -qa命令,查看加速器软件包是否已正常安装到系统内。使用rpm -ql命令 ,查看软件包的文件是否正确。示例如下。 + + ![](figures/zh-cn_image_0231143178.png) + + ![](figures/zh-cn_image_0231143180.png) + + ![](figures/zh-cn_image_0231143181.png) + + ![](figures/zh-cn_image_0231143183.png) + +6. 重启系统或通过命令行手动依次加载加速器引擎驱动到内核,并查看是否加载成功。 + + ``` + # modprobe uacce + # lsmod | grep uacce + # modprobe hisi_qm + # lsmod | grep hisi_qm + # modprobe hisi_qm + # modprobe hisi_sec2 #加载hisi_sec2驱动时将根据/etc/modprobe.d/hisi_sec2.conf 下的配置文件加载到内核 + # modprobe hisi_hpre #加载hisi_hpre驱动时将根据/etc/modprobe.d/hisi_hpre.conf 下的配置文件加载到内核 + ``` + + +## 设置环境变量 + +通过以下命令导出环境变量:如果用户指定安装路径,则下面/usr/local应根据实际安装路径进行修改。 + +``` +export OPENSSL_ENGINES=/usr/local/lib/engines-1.1 +``` + +## 安装后检查 + +执行**rpm -qa**命令查看加速器引擎软件包是否安装成功。 + +打印信息中包含“_软件包名_-_版本号-_”表示该软件包安装成功。示例如下。 + +![](figures/zh-cn_image_0231143185.png) + +![](figures/zh-cn_image_0231143187.png) + diff --git "a/content/zh/docs/Administration/\345\256\211\350\243\205\345\212\240\351\200\237\345\231\250\350\275\257\344\273\266\345\214\205.md" "b/content/zh/docs/Administration/\345\256\211\350\243\205\345\212\240\351\200\237\345\231\250\350\275\257\344\273\266\345\214\205.md" new file mode 100644 index 0000000000000000000000000000000000000000..3a53a971992ec13e4f7216f30810eb5990c4e57a --- /dev/null +++ "b/content/zh/docs/Administration/\345\256\211\350\243\205\345\212\240\351\200\237\345\231\250\350\275\257\344\273\266\345\214\205.md" @@ -0,0 +1,3 @@ +# 安装加速器软件包 + + diff --git "a/content/zh/docs/Administration/\345\256\211\350\243\205\345\220\216\346\223\215\344\275\234.md" "b/content/zh/docs/Administration/\345\256\211\350\243\205\345\220\216\346\223\215\344\275\234.md" new file mode 100644 index 0000000000000000000000000000000000000000..a3179ae68d18c3f2722ae1ce2dbccd30958d73d9 --- /dev/null +++ "b/content/zh/docs/Administration/\345\256\211\350\243\205\345\220\216\346\223\215\344\275\234.md" @@ -0,0 +1,4 @@ +# 安装后操作 + + + diff --git "a/content/zh/docs/Administration/\345\256\211\350\243\205\345\256\214\345\212\240\351\200\237\345\231\250\345\274\225\346\223\216\344\271\213\345\220\216-\346\237\245\346\211\276\344\270\215\345\210\260\345\212\240\351\200\237\345\231\250\350\256\276\345\244\207.md" "b/content/zh/docs/Administration/\345\256\211\350\243\205\345\256\214\345\212\240\351\200\237\345\231\250\345\274\225\346\223\216\344\271\213\345\220\216-\346\237\245\346\211\276\344\270\215\345\210\260\345\212\240\351\200\237\345\231\250\350\256\276\345\244\207.md" new file mode 100644 index 0000000000000000000000000000000000000000..e460127327df8122fdcaae0ce0ac994b94106608 --- /dev/null +++ "b/content/zh/docs/Administration/\345\256\211\350\243\205\345\256\214\345\212\240\351\200\237\345\231\250\345\274\225\346\223\216\344\271\213\345\220\216-\346\237\245\346\211\276\344\270\215\345\210\260\345\212\240\351\200\237\345\231\250\350\256\276\345\244\207.md" @@ -0,0 +1,47 @@ +# 安装完加速器引擎之后,查找不到加速器设备 + +## 故障现象 + +安装完加速器引擎之后,查找不到加速器设备。 + +## 解决方法 + +1. 检查虚拟文件系统下是否有相应设备。正常情况下有如下相应的加速器设备。 + + ``` + # ls -al /sys/class/uacce/ + total 0 + lrwxrwxrwx. 1 root root 0 Nov 14 03:45 hisi_hpre-2 -> ../../devices/pci0000:78/0000:78:00.0/0000:79:00.0/uacce/hisi_hpre-2 + lrwxrwxrwx. 1 root root 0 Nov 14 03:45 hisi_hpre-3 -> ../../devices/pci0000:b8/0000:b8:00.0/0000:b9:00.0/uacce/hisi_hpre-3 + lrwxrwxrwx. 1 root root 0 Nov 17 22:09 hisi_rde-4 -> ../../devices/pci0000:78/0000:78:01.0/uacce/hisi_rde-4 + lrwxrwxrwx. 1 root root 0 Nov 17 22:09 hisi_rde-5 -> ../../devices/pci0000:b8/0000:b8:01.0/uacce/hisi_rde-5 + lrwxrwxrwx. 1 root root 0 Nov 14 08:39 hisi_sec-0 -> ../../devices/pci0000:74/0000:74:01.0/0000:76:00.0/uacce/hisi_sec-0 + lrwxrwxrwx. 1 root root 0 Nov 14 08:39 hisi_sec-1 -> ../../devices/pci0000:b4/0000:b4:01.0/0000:b6:00.0/uacce/hisi_sec-1 + lrwxrwxrwx. 1 root root 0 Nov 17 22:09 hisi_zip-6 -> ../../devices/pci0000:74/0000:74:00.0/0000:75:00.0/uacce/hisi_zip-6 + lrwxrwxrwx. 1 root root 0 Nov 17 22:09 hisi_zip-7 -> ../../devices/pci0000:b4/0000:b4:00.0/0000:b5:00.0/uacce/hisi_zip-7 + ``` + +2. 若要使用hpre设备但是在[1](#li1760055514614)中未查询到,请按[初始化失败](初始化失败.md)排查加速器软件是否已正确安装。 +3. 若[2](#li1600175515610)已确认加速器软件正确安装,请排查通过lspci命令查看物理设备是否存在。 + + ``` + # lspci | grep HPRE + 79:00.0 Network and computing encryption device: Huawei Technologies Co., Ltd. HiSilicon HPRE Engine (rev 21) + b9:00.0 Network and computing encryption device: Huawei Technologies Co., Ltd. HiSilicon HPRE Engine (rev 21) + ## lspci | grep SEC + 76:00.0 Network and computing encryption device: Huawei Technologies Co., Ltd. HiSilicon SEC Engine (rev 21) + b6:00.0 Network and computing encryption device: Huawei Technologies Co., Ltd. HiSilicon SEC Engine (rev 21) + ## lspci | grep RDE + 78:01.0 RAID bus controller: Huawei Technologies Co., Ltd. HiSilicon RDE Engine (rev 21) + b8:01.0 RAID bus controller: Huawei Technologies Co., Ltd. HiSilicon RDE Engine (rev 21) + ## lspci | grep ZIP + 75:00.0 Processing accelerators: Huawei Technologies Co., Ltd. HiSilicon ZIP Engine (rev 21) + b5:00.0 Processing accelerators: Huawei Technologies Co., Ltd. HiSilicon ZIP Engine (rev 21) + # + ``` + +4. 若[3](#li1560012551369)未查询到相应的物理设备,请确认以下,不分先后: + - 确认是否已导入加速器许可证,若未导入,请请参考《[TaiShan 机架服务器 iBMC \(V300及以上\) 用户指南](https://support.huawei.com/enterprise/zh/doc/EDOC1100048792?idPath=7919749%7C9856522%7C9856629%7C23201901)》中“许可证管理”章节,导入加速器许可证。导入加速器许可证之后,需要掉电重启BMC,使能License。 + - 确认BMC和BIOS版本是否支持加速器特性。 + + diff --git "a/content/zh/docs/Administration/\345\256\211\350\243\205\346\227\266\345\207\272\347\216\260\350\275\257\344\273\266\345\214\205\345\206\262\347\252\201-\346\226\207\344\273\266\345\206\262\347\252\201\346\210\226\347\274\272\345\260\221\350\275\257\344\273\266\345\214\205\345\257\274\350\207\264\345\256\211\350\243\205\345\244\261\350\264\245.md" "b/content/zh/docs/Administration/\345\256\211\350\243\205\346\227\266\345\207\272\347\216\260\350\275\257\344\273\266\345\214\205\345\206\262\347\252\201-\346\226\207\344\273\266\345\206\262\347\252\201\346\210\226\347\274\272\345\260\221\350\275\257\344\273\266\345\214\205\345\257\274\350\207\264\345\256\211\350\243\205\345\244\261\350\264\245.md" new file mode 100644 index 0000000000000000000000000000000000000000..1ab2984fd8bf30a9f5c07af2b052f9364c4769cb --- /dev/null +++ "b/content/zh/docs/Administration/\345\256\211\350\243\205\346\227\266\345\207\272\347\216\260\350\275\257\344\273\266\345\214\205\345\206\262\347\252\201-\346\226\207\344\273\266\345\206\262\347\252\201\346\210\226\347\274\272\345\260\221\350\275\257\344\273\266\345\214\205\345\257\274\350\207\264\345\256\211\350\243\205\345\244\261\350\264\245.md" @@ -0,0 +1,81 @@ +# 安装时出现软件包冲突、文件冲突或缺少软件包导致安装失败 + +## 问题现象 + +安装软件包过程中,可能出现软件包冲突、文件冲突或缺少软件包,从而导致升安装被中断,最终安装失败。软件包冲突、文件冲突和缺少软件包的报错信息分别如下所示。 + +软件包冲突报错信息示例(以 libev-libevent-devel-4.24-11.oe1.aarch64与libevent-devel-2.1.11-2.oe1.aarch64冲突为例): + +``` +package libev-libevent-devel-4.24-11.oe1.aarch64 conflicts with libevent-devel provided by libevent-devel-2.1.11-2.oe1.aarch64 + - cannot install the best candidate for the job + - conflicting requests +``` + +文件冲突报错信息示例(以/usr/bin/containerd文件冲突为例): + +``` +Error: Transaction test error: + file /usr/bin/containerd from install of containerd-1.2.0-101.oe1.aarch64 conflicts with file from package docker-engine-18.09.0-100.aarch64 + file /usr/bin/containerd-shim from install of containerd-1.2.0-101.oe1.aarch64 conflicts with file from package docker-engine-18.09.0-100.aarch64 +``` + +缺少软件包的报错信息示例(以缺失blivet-data软件包为例): + +``` +Error: + Problem: cannot install both blivet-data-1:3.1.1-6.oe1.noarch and blivet-data-1:3.1.1-5.noarch + - package python2-blivet-1:3.1.1-5.noarch requires blivet-data = 1:3.1.1-5, but none of the providers can be installed + - cannot install the best update candidate for package blivet-data-1:3.1.1-5.noarch + - problem with installed package python2-blivet-1:3.1.1-5.noarch(try to add '--allowerasing' to command line to replace conflicting packages or '--skip-broken' to skip uninstallable packages or '--nobest' to use not only best candidate packages) +``` + +## 问题原因 + +- openEuler提供的软件包中,有些软件包虽然名称不同,但功能相同,导致两个软件包无法同时安装。 +- openEuler提供的软件包中,有些软件包虽然名称不同,但功能相同,导致安装时安装后的文件相同,从而产生了文件冲突。 +- 有些软件包,因在升级安装前被其他软件包所依赖,一旦该软件包升级后,可能导致依赖它的软件包因缺少软件包而不能安装。 + +## 解决方案 + +若为软件包冲突,则按如下步骤进行处理(以问题现象中示例的软件包冲突为例): + +1. 根据安装过程中的软件包冲突报错信息,确定与待安装的 libev-libevent-devel-4.24-11.oe1.aarch64软件包冲突的软件包为libevent-devel-2.1.11-2.oe1.aarch64。 +2. 执行**dnf remove**命令将与待安装软件包冲突的软件包单独卸载。 + + ``` + # dnf remove libevent-devel-2.1.11-2.oe1.aarch64 + ``` + +3. 重新进行安装操作。 + +若为文件冲突,则按如下步骤进行处理(以问题现象中示例的文件冲突为例): + +1. 根据安装过程中的文件冲突报错信息,确定导致文件冲突的软件包名称为containerd-1.2.0-101.oe1.aarch64和docker-engine-18.09.0-100.aarch64。 +2. 将不需要安装的软件包名称记录下来,以不需要安装docker-engine-18.09.0-100.aarch64为例。 +3. 执行**dnf remove**命令将不需要安装的软件包单独卸载。 + + ``` + # dnf remove docker-engine-18.09.0-100.aarch64 + ``` + +4. 重新进行安装操作。 + +若为缺少软件包,则按如下步骤进行处理(以问题现象中示例的缺少软件包为例): + +1. 根据升级安装过程中的缺少软件包报错信息,确定待升级的软件包名称blivet-data-1:3.1.1-5.noarch及依赖它的软件包名称python2-blivet-1:3.1.1-5.noarch。 +2. 执行dnf remove命令将依赖待升级包才能安装的软件包单独卸载或在升级软件包时加上--allowerasing参数。 + - 执行**dnf remove**命令将依赖blivet-data-1:3.1.1-5.noarch软件包才能安装的软件包单独卸载。 + + ``` + # dnf remove python2-blivet-1:3.1.1-5.noarch + ``` + + - 升级软件包时加上--allowerasing参数。 + + ``` + # yum update blivet-data-1:3.1.1-5.noarch -y --allowerasing + ``` + +3. 重新进行升级操作。 + diff --git "a/content/zh/docs/Administration/\345\256\232\346\227\266\350\277\220\350\241\214\344\270\200\346\211\271\347\250\213\345\272\217\357\274\210at\357\274\211.md" "b/content/zh/docs/Administration/\345\256\232\346\227\266\350\277\220\350\241\214\344\270\200\346\211\271\347\250\213\345\272\217\357\274\210at\357\274\211.md" index d8d59c8373229156e39f487f3b437ad6eed164fb..bb0bc9d25d25c44ea0fc4066b35a7ae21898ac78 100644 --- "a/content/zh/docs/Administration/\345\256\232\346\227\266\350\277\220\350\241\214\344\270\200\346\211\271\347\250\213\345\272\217\357\274\210at\357\274\211.md" +++ "b/content/zh/docs/Administration/\345\256\232\346\227\266\350\277\220\350\241\214\344\270\200\346\211\271\347\250\213\345\272\217\357\274\210at\357\274\211.md" @@ -1,4 +1,4 @@ -# 定时运行一批程序(at) +# 定时运行一批程序(at) ## at命令 diff --git "a/content/zh/docs/Administration/\345\272\224\347\224\250\345\234\272\346\231\257.md" "b/content/zh/docs/Administration/\345\272\224\347\224\250\345\234\272\346\231\257.md" new file mode 100644 index 0000000000000000000000000000000000000000..85a1870c091f80c5922e14b866ab1d46946c812b --- /dev/null +++ "b/content/zh/docs/Administration/\345\272\224\347\224\250\345\234\272\346\231\257.md" @@ -0,0 +1,36 @@ +# 应用场景 + +KAE加速引擎主要有以下应用场景,如[表1](#table11915824163418)所示。 + +**表 1** 应用场景 + + + + + + + + + + + + + + + + + + + +

场景

+

数据

+

大数据

+

流数据

+

数据加密

+

块数据

+

智能安防

+

视频流数据

+

Web服务

+

握手连接

+
+ diff --git "a/content/zh/docs/Administration/\346\200\273\344\275\223\344\273\213\347\273\215.md" "b/content/zh/docs/Administration/\346\200\273\344\275\223\344\273\213\347\273\215.md" index 2c166d5eea6ae2b737fb9e96b175188aadcd8a58..2dcff0edee2035e1d12d5279fff79373823f4035 100644 --- "a/content/zh/docs/Administration/\346\200\273\344\275\223\344\273\213\347\273\215.md" +++ "b/content/zh/docs/Administration/\346\200\273\344\275\223\344\273\213\347\273\215.md" @@ -1,4 +1,4 @@ -# 总体介绍 +# 总体介绍 ## FTP简介 diff --git "a/content/zh/docs/Administration/\346\201\242\345\244\215\346\225\260\346\215\256\345\272\223-28.md" "b/content/zh/docs/Administration/\346\201\242\345\244\215\346\225\260\346\215\256\345\272\223-28.md" new file mode 100644 index 0000000000000000000000000000000000000000..dfbc1f66daba84bccbf5e41527b447961d89a373 --- /dev/null +++ "b/content/zh/docs/Administration/\346\201\242\345\244\215\346\225\260\346\215\256\345\272\223-28.md" @@ -0,0 +1,27 @@ +# 恢复数据库 + +可以使用mysqldump命令恢复数据库。 + +备份一个或多个表: + +``` +mysql -h hostname -P portnumber -u username -ppassword databasename < infile +``` + +其中: + +- hostname:主机名。 +- portnumber:端口号。 +- username:用户名。 +- password:密码。 +- databasename:数据库名。 +- infile:mysqldump命令中的outfile参数。 + +## 示例 + +\#恢复数据库。 + +``` +# mysql -h 192.168.202.144 -P 3306 -uroot -p123456 -t db1 > db1.sql +``` + diff --git "a/content/zh/docs/Administration/\346\201\242\345\244\215\346\225\260\346\215\256\345\272\223-53.md" "b/content/zh/docs/Administration/\346\201\242\345\244\215\346\225\260\346\215\256\345\272\223-53.md" new file mode 100644 index 0000000000000000000000000000000000000000..81631d3c6c37763a9b05cfb36ce24ade9d4d7d15 --- /dev/null +++ "b/content/zh/docs/Administration/\346\201\242\345\244\215\346\225\260\346\215\256\345\272\223-53.md" @@ -0,0 +1,27 @@ +# 恢复数据库 + +可以使用mysqldump命令恢复数据库。 + +备份一个或多个表: + +``` +mysql -h hostname -P portnumber -u username -ppassword databasename < infile +``` + +其中: + +- hostname:主机名。 +- portnumber:端口号。 +- username:用户名。 +- password:密码。 +- databasename:数据库名。 +- infile:mysqldump命令中的outfile参数。 + +## 示例 + +\#恢复数据库。 + +``` +# mysql -h 192.168.202.144 -P 3306 -uroot -p123456 -t db1 > db1.sql +``` + diff --git "a/content/zh/docs/Administration/\346\201\242\345\244\215\346\225\260\346\215\256\345\272\223.md" "b/content/zh/docs/Administration/\346\201\242\345\244\215\346\225\260\346\215\256\345\272\223.md" new file mode 100644 index 0000000000000000000000000000000000000000..3704279d5f08ad5bed59cab936671e603125fe28 --- /dev/null +++ "b/content/zh/docs/Administration/\346\201\242\345\244\215\346\225\260\346\215\256\345\272\223.md" @@ -0,0 +1,33 @@ +# 恢复数据库 + +可以使用psql命令恢复数据库。 + +``` +psql [option]... [databasename [username]] < infile +``` + +其中: + +- databasename:数据库名称。如果没有声明这个参数,那么使用环境变量 PGDATABASE 。如果那个环境变量也没声明,那么使用发起连接的用户名。 +- username:用户名。 +- infile:pg\_dump命令中的outfile参数。 +- option:psql命令参数选项,多个参数之间可以使用空格分隔。常用的psql命令参数选项如下: + - -f filename,--file=filename:指输出到指定的文件。如果忽略,则使用标准输出。 + - -d,--dbname=databsetaname:指定转储的数据库。 + - -h,--host=hostname:指定主机名。 + - -p,--port=portnumber:指定端口。 + - -U,--username=username:指定连接的用户名。 + - -W,--password:强制口令提示(自动)。 + + +psql命令不会自动创建databasename数据库,所以在执行psql恢复数据库之前需要先创建databasename数据库。 + +## 示例 + +\#将db1.sql脚本文件导入到主机为192.168.202.144,端口为3306,postgres用户下newdb数据库中。 + +``` +$ createdb newdb +$ psql -h 192.168.202.144 -p 3306 -U postgres -W -d newdb < db1.sql +``` + diff --git "a/content/zh/docs/Administration/\346\214\202\350\265\267-\346\201\242\345\244\215\350\277\233\347\250\213.md" "b/content/zh/docs/Administration/\346\214\202\350\265\267-\346\201\242\345\244\215\350\277\233\347\250\213.md" index 281af60c0c60374c323804680d67feda53b9b77f..1616e35389d5ebb6328ca727b672fa66bbf9463f 100644 --- "a/content/zh/docs/Administration/\346\214\202\350\265\267-\346\201\242\345\244\215\350\277\233\347\250\213.md" +++ "b/content/zh/docs/Administration/\346\214\202\350\265\267-\346\201\242\345\244\215\350\277\233\347\250\213.md" @@ -1,4 +1,4 @@ -# 挂起/恢复进程 +# 挂起/恢复进程 作业控制允许进程挂起并可以在需要时恢复进程的运行,被挂起的作业恢复后将从中止处开始继续运行。只要在键盘上按Ctrl+Z键,即可挂起当前的前台作业。在键盘上按Ctrl+Z键后,将挂起当前执行的命令cat。使用jobs命令可以显示shell的作业清单,包括具体的作业、作业号以及作业当前所处的状态。 diff --git "a/content/zh/docs/Administration/\346\214\202\350\275\275ISO\345\210\233\345\273\272repo\346\272\220.md" "b/content/zh/docs/Administration/\346\214\202\350\275\275ISO\345\210\233\345\273\272repo\346\272\220.md" index 9ba06bba64eea477c51614b760a8ca199d262a8e..88c91300c125386c84ee6c82e5d72d2c2fcd9c89 100644 --- "a/content/zh/docs/Administration/\346\214\202\350\275\275ISO\345\210\233\345\273\272repo\346\272\220.md" +++ "b/content/zh/docs/Administration/\346\214\202\350\275\275ISO\345\210\233\345\273\272repo\346\272\220.md" @@ -1,11 +1,11 @@ -# 挂载ISO创建repo源 +# 挂载ISO创建repo源 使用mount命令挂载镜像文件。 示例如下: ``` -mount /home/openEuler/openEuler-1.0-base-aarch64-dvd.iso /mnt/ +mount /home/openEuler/openEuler-20.03-LTS-aarch64-dvd.iso /mnt/ ``` 挂载好的mnt目录如下: @@ -13,6 +13,7 @@ mount /home/openEuler/openEuler-1.0-base-aarch64-dvd.iso /mnt/ ``` . │── boot.catalog +│── docs │── EFI │── images │── Packages diff --git "a/content/zh/docs/Administration/\346\220\255\345\273\272FTP\346\234\215\345\212\241\345\231\250.md" "b/content/zh/docs/Administration/\346\220\255\345\273\272FTP\346\234\215\345\212\241\345\231\250.md" index c485da78963f9a71c5ac8929095c308956156fdf..ed393b0ebb8fd93b8f8804404f99501d5fa7b33f 100644 --- "a/content/zh/docs/Administration/\346\220\255\345\273\272FTP\346\234\215\345\212\241\345\231\250.md" +++ "b/content/zh/docs/Administration/\346\220\255\345\273\272FTP\346\234\215\345\212\241\345\231\250.md" @@ -1 +1 @@ -# 搭建FTP服务器 +# 搭建FTP服务器 diff --git "a/content/zh/docs/Administration/\346\220\255\345\273\272repo\346\234\215\345\212\241\345\231\250.md" "b/content/zh/docs/Administration/\346\220\255\345\273\272repo\346\234\215\345\212\241\345\231\250.md" index 836f2a8abb965334dd74bfb4f3b58a9cf67448c1..fca5a4c2151ea8a37fa80e5ce1858be2e4d030b8 100644 --- "a/content/zh/docs/Administration/\346\220\255\345\273\272repo\346\234\215\345\212\241\345\231\250.md" +++ "b/content/zh/docs/Administration/\346\220\255\345\273\272repo\346\234\215\345\212\241\345\231\250.md" @@ -1 +1,4 @@ -# 搭建repo服务器 +# 搭建repo服务器 + +>![](public_sys-resources/icon-note.gif) **说明:** +>本章节中以openEuler-20.03-LTS-aarch64-dvd.iso镜像文件为例,请根据实际需要的镜像文件进行修改。 diff --git "a/content/zh/docs/Administration/\346\220\255\345\273\272web\346\234\215\345\212\241\345\231\250.md" "b/content/zh/docs/Administration/\346\220\255\345\273\272web\346\234\215\345\212\241\345\231\250.md" index 7478f21a428d1918bc7566ea877a5266aaa7fbe3..ce1e6d3a9c4121740233de2231a2fb5541b5b057 100644 --- "a/content/zh/docs/Administration/\346\220\255\345\273\272web\346\234\215\345\212\241\345\231\250.md" +++ "b/content/zh/docs/Administration/\346\220\255\345\273\272web\346\234\215\345\212\241\345\231\250.md" @@ -1 +1,2 @@ -# 搭建web服务器 +# 搭建web服务器 + diff --git "a/content/zh/docs/Administration/\346\220\255\345\273\272\346\225\260\346\215\256\345\272\223\346\234\215\345\212\241\345\231\250.md" "b/content/zh/docs/Administration/\346\220\255\345\273\272\346\225\260\346\215\256\345\272\223\346\234\215\345\212\241\345\231\250.md" new file mode 100644 index 0000000000000000000000000000000000000000..daf20d2cfafd8b14c8c888482f220486beeab296 --- /dev/null +++ "b/content/zh/docs/Administration/\346\220\255\345\273\272\346\225\260\346\215\256\345\272\223\346\234\215\345\212\241\345\231\250.md" @@ -0,0 +1 @@ +# 搭建数据库服务器 diff --git "a/content/zh/docs/Administration/\346\220\255\345\273\272\346\225\260\346\215\256\347\233\230-15.md" "b/content/zh/docs/Administration/\346\220\255\345\273\272\346\225\260\346\215\256\347\233\230-15.md" new file mode 100644 index 0000000000000000000000000000000000000000..94b70f8bb383e59f6a8b3eaf95d91919b7fc3aa1 --- /dev/null +++ "b/content/zh/docs/Administration/\346\220\255\345\273\272\346\225\260\346\215\256\347\233\230-15.md" @@ -0,0 +1,93 @@ +# 搭建数据盘 + +>![](public_sys-resources/icon-note.gif) **说明:** +>- 进行性能测试时,数据目录使用单独硬盘,需要对硬盘进行格式化并挂载,参考方法一或者方法二 +>- 非性能测试时,执行以下命令,创建数据目录即可。然后跳过本小节: +> \#mkdir /data + +## 方法一:使用fdisk进行磁盘管理 + +1. 创建分区(以/dev/sdb为例,根据实际情况创建) + + ``` + #fdisk /dev/sdb + ``` + +2. 输入n,按回车确认。 +3. 输入p,按回车确认。 +4. 输入1,按回车确认。 +5. 采用默认配置,按回车确认。 +6. 采用默认配置,按回车确认。 +7. 输入w,按回车保存。 +8. 创建文件系统(以xfs为例,根据实际需求创建文件系统) + + ``` + #mkfs.xfs /dev/sdb1 + ``` + +9. 挂载分区到“/data”以供操作系统使用。 + + ``` + #mkdir /data + ``` + + ``` + #mount /dev/sdb1 /data + ``` + +10. 执行命令“vi /etc/fstab", 编辑“/etc/fstab”使重启后自动挂载数据盘。如下图中,添加最后一行内容。 + + 其中,/dev/nvme0n1p1为示例,具体名称以实际情况为准。 + + ![](figures/搭建数据盘.png) + + +## 方法二:使用LVM进行磁盘管理 + +>![](public_sys-resources/icon-note.gif) **说明:** +>此步骤需要安装镜像中的lvm2相关包,步骤如下: +>1. 配置本地yum源,详细信息请参考[搭建repo服务器](搭建repo服务器.md)。如果已经执行,则可跳过此步。 +>2. 执行命令安装lvm2。 +> **\#yum install lvm2** + +1. 创建物理卷(sdb为硬盘名称,具体名字以实际为准)。 + + ``` + #pvcreate /dev/sdb + ``` + +2. 创建物理卷组(其中datavg为创建的卷组名称,具体名字以实际规划为准)。 + + ``` + #vgcreate datavg /dev/sdb + ``` + +3. 创建逻辑卷(其中600G为规划的逻辑卷大小,具体大小以实际情况为准;datalv为创建的逻辑卷的名字,具体名称以实际规划为准。\)。 + + ``` + #lvcreate -L 600G -n datalv datavg + ``` + +4. 创建文件系统。 + + ``` + #mkfs.xfs /dev/datavg/datalv + ``` + +5. 创建数据目录并挂载。 + + ``` + #mkdir /data + ``` + + ``` + #mount /dev/datavg/datalv /data + ``` + +6. 执行命令**vi /etc/fstab**,编辑“/etc/fstab”使重启后自动挂载数据盘。如下图中,添加最后一行内容。 + + 其中,/dev/datavg/datalv为示例,具体名称以实际情况为准。 + + ![](figures/D1376B2A-D036-41C4-B852-E8368F363B5E.png) + + diff --git "a/content/zh/docs/Administration/\346\220\255\345\273\272\346\225\260\346\215\256\347\233\230-34.md" "b/content/zh/docs/Administration/\346\220\255\345\273\272\346\225\260\346\215\256\347\233\230-34.md" new file mode 100644 index 0000000000000000000000000000000000000000..e5b9743404bac9182581b00ed6065889dc424196 --- /dev/null +++ "b/content/zh/docs/Administration/\346\220\255\345\273\272\346\225\260\346\215\256\347\233\230-34.md" @@ -0,0 +1,93 @@ +# 搭建数据盘 + +>![](public_sys-resources/icon-note.gif) **说明:** +>- 进行性能测试时,数据目录使用单独硬盘,需要对硬盘进行格式化并挂载,参考方法一或者方法二 +>- 非性能测试时,执行以下命令,创建数据目录即可。然后跳过本小节: +> \#mkdir /data + +## 方法一:使用fdisk进行磁盘管理 + +1. 创建分区(以/dev/sdb为例,根据实际情况创建) + + ``` + #fdisk /dev/sdb + ``` + +2. 输入n,按回车确认。 +3. 输入p,按回车确认。 +4. 输入1,按回车确认。 +5. 采用默认配置,按回车确认。 +6. 采用默认配置,按回车确认。 +7. 输入w,按回车保存。 +8. 创建文件系统(以xfs为例,根据实际需求创建文件系统) + + ``` + #mkfs.xfs /dev/sdb1 + ``` + +9. 挂载分区到“/data”以供操作系统使用。 + + ``` + #mkdir /data + ``` + + ``` + #mount /dev/sdb1 /data + ``` + +10. 执行命令“vi /etc/fstab", 编辑“/etc/fstab”使重启后自动挂载数据盘。如下图中,添加最后一行内容。 + + 其中,/dev/nvme0n1p1为示例,具体名称以实际情况为准。 + + ![](figures/搭建数据盘-0.png) + + +## 方法二:使用LVM进行磁盘管理 + +>![](public_sys-resources/icon-note.gif) **说明:** +>此步骤需要安装镜像中的lvm2相关包,步骤如下: +>1. 配置本地yum源,详细信息请参考[搭建repo服务器](搭建repo服务器.md)。如果已经执行,则可跳过此步。 +>2. 执行命令安装lvm2。 +> **\#yum install lvm2** + +1. 创建物理卷(sdb为硬盘名称,具体名字以实际为准)。 + + ``` + #pvcreate /dev/sdb + ``` + +2. 创建物理卷组(其中datavg为创建的卷组名称,具体名字以实际规划为准)。 + + ``` + #vgcreate datavg /dev/sdb + ``` + +3. 创建逻辑卷(其中600G为规划的逻辑卷大小,具体大小以实际情况为准;datalv为创建的逻辑卷的名字,具体名称以实际规划为准。\)。 + + ``` + #lvcreate -L 600G -n datalv datavg + ``` + +4. 创建文件系统。 + + ``` + #mkfs.xfs /dev/datavg/datalv + ``` + +5. 创建数据目录并挂载。 + + ``` + #mkdir /data + ``` + + ``` + #mount /dev/datavg/datalv /data + ``` + +6. 执行命令**vi /etc/fstab**,编辑“/etc/fstab”使重启后自动挂载数据盘。如下图中,添加最后一行内容。 + + 其中,/dev/datavg/datalv为示例,具体名称以实际情况为准。 + + ![](figures/D1376B2A-D036-41C4-B852-E8368F363B5E-1.png) + + diff --git "a/content/zh/docs/Administration/\346\220\255\345\273\272\346\225\260\346\215\256\347\233\230.md" "b/content/zh/docs/Administration/\346\220\255\345\273\272\346\225\260\346\215\256\347\233\230.md" new file mode 100644 index 0000000000000000000000000000000000000000..e17444f2ee7e40c5c56b826dbc41df14a4d01f1d --- /dev/null +++ "b/content/zh/docs/Administration/\346\220\255\345\273\272\346\225\260\346\215\256\347\233\230.md" @@ -0,0 +1,26 @@ +# 搭建数据盘 + +>![](public_sys-resources/icon-note.gif) **说明:** +>- 测试极限性能时,建议单独挂载IO性能更优的NVME SSD存储介质创建PostgreSQL测试实例,避免磁盘IO对性能测试结果的影响,本文以单独挂载NVME SSD为例,参考步骤1\~步骤4。 +>- 非性能测试时,执行以下命令,创建数据目录即可。然后跳过本小节: +> \#mkdir /data + +1. 创建文件系统(以xfs为例,根据实际需求创建文件系统),若磁盘之前已做过文件系统,执行此命令会出现报错,可使用-f参数强制创建文件系统。 + + ``` + #mkfs.xfs /dev/nvme0n1 + ``` + +2. 创建数据目录。 + + ``` + #mkdir /data + ``` + +3. 挂载磁盘。 + + ``` + #mount -o noatime,nobarrier /dev/nvme0n1 /data + ``` + + diff --git "a/content/zh/docs/Administration/\346\220\255\345\273\272\346\234\215\345\212\241.md" "b/content/zh/docs/Administration/\346\220\255\345\273\272\346\234\215\345\212\241.md" index 872b8200af2c0973d7b803acfc06a8140e56b741..be84d9c65c8d11558244c06ea6bc959868d0ee9b 100644 --- "a/content/zh/docs/Administration/\346\220\255\345\273\272\346\234\215\345\212\241.md" +++ "b/content/zh/docs/Administration/\346\220\255\345\273\272\346\234\215\345\212\241.md" @@ -1 +1 @@ -# 搭建服务 +# 搭建服务 diff --git "a/content/zh/docs/Administration/\346\224\271\345\217\230\350\277\220\350\241\214\347\272\247\345\210\253.md" "b/content/zh/docs/Administration/\346\224\271\345\217\230\350\277\220\350\241\214\347\272\247\345\210\253.md" index 3de3a053c9df8f40347a6f6db12780192cfc08c4..1bfe49a35cfa3124d91ac30ab7dd2c856cb26922 100644 --- "a/content/zh/docs/Administration/\346\224\271\345\217\230\350\277\220\350\241\214\347\272\247\345\210\253.md" +++ "b/content/zh/docs/Administration/\346\224\271\345\217\230\350\277\220\350\241\214\347\272\247\345\210\253.md" @@ -1,4 +1,4 @@ -# 改变运行级别 +# 改变运行级别 ## Target和运行级别 @@ -22,7 +22,7 @@ systemd用目标(target)替代了运行级别的概念,提供了更大的

关闭系统。

-

1, s, single

+

1, s, single

runlevel1.target,rescue.target

@@ -112,7 +112,7 @@ systemctl rescue ``` You are in rescue mode. After logging in, type "journalctl -xb" to viewsystem logs, "systemctl reboot" to reboot, "systemctl default" or "exit"to boot into default mode. Give root password for maintenance -(or press Control-D to continue): +(or press Control-D to continue): ``` >![](public_sys-resources/icon-note.gif) **说明:** diff --git "a/content/zh/docs/Administration/\346\225\205\351\232\234\345\244\204\347\220\206.md" "b/content/zh/docs/Administration/\346\225\205\351\232\234\345\244\204\347\220\206.md" new file mode 100644 index 0000000000000000000000000000000000000000..1ad96dcbba033fe62d231f75baec6eaa97f126b1 --- /dev/null +++ "b/content/zh/docs/Administration/\346\225\205\351\232\234\345\244\204\347\220\206.md" @@ -0,0 +1 @@ +# 故障处理 diff --git "a/content/zh/docs/Administration/\346\225\260\346\215\256\347\233\256\345\275\225\346\216\210\346\235\203.md" "b/content/zh/docs/Administration/\346\225\260\346\215\256\347\233\256\345\275\225\346\216\210\346\235\203.md" new file mode 100644 index 0000000000000000000000000000000000000000..cd3a5083281f95103c9a4d62423ed4c691ef9015 --- /dev/null +++ "b/content/zh/docs/Administration/\346\225\260\346\215\256\347\233\256\345\275\225\346\216\210\346\235\203.md" @@ -0,0 +1,9 @@ +# 数据目录授权 + +1. 修改目录权限。 + + ``` + #chown -R postgres:postgres /data/ + ``` + + diff --git "a/content/zh/docs/Administration/\346\227\245\345\277\227\346\237\245\350\257\242.md" "b/content/zh/docs/Administration/\346\227\245\345\277\227\346\237\245\350\257\242.md" new file mode 100644 index 0000000000000000000000000000000000000000..12b1e7715aa989673a053006001fa603a4402363 --- /dev/null +++ "b/content/zh/docs/Administration/\346\227\245\345\277\227\346\237\245\350\257\242.md" @@ -0,0 +1,39 @@ +# 日志查询 + +加速器引擎涉及日志信息如[表1](#table52821836)所示。 + +**表 1** 日志信息 + + + + + + + + + + + + + + + + +

目录

+

文件名

+

文件内容说明

+

/var/log/

+

kae.log

+

OpenSSL引擎日志默认打印等级为error级别,如需要设置日志级别按照如下操作:

+
  1. export KAE_CONF_ENV=/var/log/
  2. 在/var/log/下创建文件kae.cnf
  3. 在kae.cnf 文件中设置如下:

    [LogSection]

    +

    debug_level=error #取值内容none/error/info/warning/debug

    +
+
说明:

正常情况下不建议开启info或debug级别日志,否则会导致加速器性能的下降。

+
+

/var/log/

+

message/syslog

+
  • 内核日志路径为/var/log/message。
+
说明:

或通过dmesg > /var/log/dmesg.log日志收集内核相关日志,包含驱动及内核态日志。

+
+
+ diff --git "a/content/zh/docs/Administration/\346\233\264\346\224\271\345\261\236\346\200\247.md" "b/content/zh/docs/Administration/\346\233\264\346\224\271\345\261\236\346\200\247.md" index 160c2592e900aa75b431246305ebdcd72009dfac..dd04b293358092e65e1a9e88df642b1bf88f421b 100644 --- "a/content/zh/docs/Administration/\346\233\264\346\224\271\345\261\236\346\200\247.md" +++ "b/content/zh/docs/Administration/\346\233\264\346\224\271\345\261\236\346\200\247.md" @@ -1,4 +1,4 @@ -# 更改属性 +# 更改属性 请使用以下命令检查具体属性,比如 mtu: diff --git "a/content/zh/docs/Administration/\346\233\264\346\226\260repo\346\272\220.md" "b/content/zh/docs/Administration/\346\233\264\346\226\260repo\346\272\220.md" index 1f73ca39166796c8d719c6cbc38cc6114b118409..ca4a8061ca4760b76dc38290d68a353f8ea9848b 100644 --- "a/content/zh/docs/Administration/\346\233\264\346\226\260repo\346\272\220.md" +++ "b/content/zh/docs/Administration/\346\233\264\346\226\260repo\346\272\220.md" @@ -1,4 +1,4 @@ -# 更新repo源 +# 更新repo源 更新repo源有两种方式: @@ -10,6 +10,6 @@ createrepo --update --workers=10 /srv/repo ``` - 其中,\--update表示更新,\--workers表示线程数,可自定义。 + 其中,--update表示更新,--workers表示线程数,可自定义。 diff --git "a/content/zh/docs/Administration/\346\234\211\347\212\266\346\200\201\350\207\252\345\212\250\351\205\215\347\275\256IPv6\345\234\260\345\235\200.md" "b/content/zh/docs/Administration/\346\234\211\347\212\266\346\200\201\350\207\252\345\212\250\351\205\215\347\275\256IPv6\345\234\260\345\235\200.md" index 4c88c5dc3dc7a54490659a29ae5e06cf87e55d69..768f071e998b8ea49165ecfa3190c59e5a384a93 100644 --- "a/content/zh/docs/Administration/\346\234\211\347\212\266\346\200\201\350\207\252\345\212\250\351\205\215\347\275\256IPv6\345\234\260\345\235\200.md" +++ "b/content/zh/docs/Administration/\346\234\211\347\212\266\346\200\201\350\207\252\345\212\250\351\205\215\347\275\256IPv6\345\234\260\345\235\200.md" @@ -1,4 +1,4 @@ -# 有状态自动配置IPv6地址 +# 有状态自动配置IPv6地址 ## 概述 diff --git "a/content/zh/docs/Administration/\346\237\245\347\234\213\346\225\260\346\215\256\345\272\223-24.md" "b/content/zh/docs/Administration/\346\237\245\347\234\213\346\225\260\346\215\256\345\272\223-24.md" new file mode 100644 index 0000000000000000000000000000000000000000..3797db1d1c1dad76b2a1e63824009caf5d3f3656 --- /dev/null +++ "b/content/zh/docs/Administration/\346\237\245\347\234\213\346\225\260\346\215\256\345\272\223-24.md" @@ -0,0 +1,16 @@ +# 查看数据库 + +可以使用SHOW DATABASES语句来查看数据库。 + +``` +SHOW DATABASES; +``` + +## 示例 + +\#查看所有数据库。 + +``` +> SHOW DATABASES; +``` + diff --git "a/content/zh/docs/Administration/\346\237\245\347\234\213\346\225\260\346\215\256\345\272\223-49.md" "b/content/zh/docs/Administration/\346\237\245\347\234\213\346\225\260\346\215\256\345\272\223-49.md" new file mode 100644 index 0000000000000000000000000000000000000000..15a78e68101b5657c135cc68726e268b7e691ac8 --- /dev/null +++ "b/content/zh/docs/Administration/\346\237\245\347\234\213\346\225\260\346\215\256\345\272\223-49.md" @@ -0,0 +1,16 @@ +# 查看数据库 + +可以使用SHOW DATABASES语句来查看数据库。 + +``` +SHOW DATABASES; +``` + +## 示例 + +\#查看所有数据库。 + +``` +> SHOW DATABASES; +``` + diff --git "a/content/zh/docs/Administration/\346\237\245\347\234\213\346\225\260\346\215\256\345\272\223.md" "b/content/zh/docs/Administration/\346\237\245\347\234\213\346\225\260\346\215\256\345\272\223.md" new file mode 100644 index 0000000000000000000000000000000000000000..e4b20b93ad2f11f97672fb5735b9bb972b04ab06 --- /dev/null +++ "b/content/zh/docs/Administration/\346\237\245\347\234\213\346\225\260\346\215\256\345\272\223.md" @@ -0,0 +1,16 @@ +# 查看数据库 + +可以使用\\l语句来查看数据库。 + +``` +\l; +``` + +## 示例 + +\#查看所有数据库。 + +``` +# \l; +``` + diff --git "a/content/zh/docs/Administration/\346\237\245\347\234\213\347\224\250\346\210\267-42.md" "b/content/zh/docs/Administration/\346\237\245\347\234\213\347\224\250\346\210\267-42.md" new file mode 100644 index 0000000000000000000000000000000000000000..4e043f586fd82b77d4d83ea22f69ba2ee0c874f4 --- /dev/null +++ "b/content/zh/docs/Administration/\346\237\245\347\234\213\347\224\250\346\210\267-42.md" @@ -0,0 +1,39 @@ +# 查看用户 + +可以使用SHOW GRANTS语句或SELECT语句查看一个或多个用户。 + +查看特定用户: + +``` +SHOW GRANTS [FOR 'username'@'hostname']; +``` + +``` +SELECT USER,HOST,PASSWORD FROM mysql.user WHERE USER='username'; +``` + +查看所有用户: + +``` +SELECT USER,HOST FROM mysql.user; +``` + +其中: + +- username:用户名。 +- hostname:主机名。 + +## 示例 + +\#查看userexample1用户。 + +``` +> SHOW GRANTS FOR 'userexample1'@'localhost'; +``` + +\#查看mysql数据库中所有用户。 + +``` +> SELECT USER,HOST FROM mysql.user; +``` + diff --git "a/content/zh/docs/Administration/\346\237\245\347\234\213\347\224\250\346\210\267.md" "b/content/zh/docs/Administration/\346\237\245\347\234\213\347\224\250\346\210\267.md" new file mode 100644 index 0000000000000000000000000000000000000000..5ba16a443079fe2f21520b05795cc7ce44cb8a47 --- /dev/null +++ "b/content/zh/docs/Administration/\346\237\245\347\234\213\347\224\250\346\210\267.md" @@ -0,0 +1,39 @@ +# 查看用户 + +可以使用SHOW GRANTS语句或SELECT语句查看一个或多个用户。 + +查看特定用户: + +``` +SHOW GRANTS [FOR 'username'@'hostname']; +``` + +``` +SELECT USER,HOST,PASSWORD FROM mysql.user WHERE USER='username'; +``` + +查看所有用户: + +``` +SELECT USER,HOST,PASSWORD FROM mysql.user; +``` + +其中: + +- username:用户名。 +- hostname:主机名。 + +## 示例 + +\#查看userexample1用户。 + +``` +> SHOW GRANTS FOR 'userexample1'@'localhost'; +``` + +\#查看mysql数据库中所有用户。 + +``` +> SELECT USER,HOST,PASSWORD FROM mysql.user; +``` + diff --git "a/content/zh/docs/Administration/\346\237\245\347\234\213\347\263\273\347\273\237\344\277\241\346\201\257.md" "b/content/zh/docs/Administration/\346\237\245\347\234\213\347\263\273\347\273\237\344\277\241\346\201\257.md" index fbdbbc06252b3d6abaa7e6bd24be7b71238920e9..3749111bf1859ee0c1615f33c6a85ce57b7a1744 100644 --- "a/content/zh/docs/Administration/\346\237\245\347\234\213\347\263\273\347\273\237\344\277\241\346\201\257.md" +++ "b/content/zh/docs/Administration/\346\237\245\347\234\213\347\263\273\347\273\237\344\277\241\346\201\257.md" @@ -1,4 +1,4 @@ -# 查看系统信息 +# 查看系统信息 - 查看系统信息,命令如下: diff --git "a/content/zh/docs/Administration/\346\237\245\347\234\213\350\247\222\350\211\262.md" "b/content/zh/docs/Administration/\346\237\245\347\234\213\350\247\222\350\211\262.md" new file mode 100644 index 0000000000000000000000000000000000000000..23edb3e1b4b5dca6d75af28eda4f543f1353072f --- /dev/null +++ "b/content/zh/docs/Administration/\346\237\245\347\234\213\350\247\222\350\211\262.md" @@ -0,0 +1,28 @@ +# 查看角色 + +可以使用SELEC语句或psql的元命令\\du查看角色。 + +``` +SELECT rolename FROM pg_roles; +``` + +``` +\du +``` + +其中:rolename:角色名。 + +## 示例 + +\#查看roleexample1角色。 + +``` +postgres=# SELECT roleexample1 from pg_roles; +``` + +\#查看现有角色。 + +``` +postgres=# \du +``` + diff --git "a/content/zh/docs/Administration/\346\237\245\347\234\213\350\277\233\347\250\213.md" "b/content/zh/docs/Administration/\346\237\245\347\234\213\350\277\233\347\250\213.md" index 222cc2947842671eab699b2c2b7fe89ee6326049..55c923aa1f6ffe8e6050160a9b59d255d9146d4e 100644 --- "a/content/zh/docs/Administration/\346\237\245\347\234\213\350\277\233\347\250\213.md" +++ "b/content/zh/docs/Administration/\346\237\245\347\234\213\350\277\233\347\250\213.md" @@ -1,4 +1,4 @@ -# 查看进程 +# 查看进程 Linux是一个多任务系统,经常需要对这些进程进行一些调配和管理。要进行管理,首先就要知道现在的进程情况:有哪些进程、进程的状态如何等。Linux提供了多种命令来了解进程的状况。 diff --git "a/content/zh/docs/Administration/\346\243\200\346\237\245\345\271\266\346\233\264\346\226\260.md" "b/content/zh/docs/Administration/\346\243\200\346\237\245\345\271\266\346\233\264\346\226\260.md" index 366c5594cf0da36b5ff17c38b6699990a3a919a8..770441d01c66097b0d907b69b9068571996bc449 100644 --- "a/content/zh/docs/Administration/\346\243\200\346\237\245\345\271\266\346\233\264\346\226\260.md" +++ "b/content/zh/docs/Administration/\346\243\200\346\237\245\345\271\266\346\233\264\346\226\260.md" @@ -1,4 +1,4 @@ -# 检查并更新 +# 检查并更新 dnf可以检查您的系统中是否有软件包需要更新。您可以通过dnf列出需要更新的软件包,并可以选择一次性全部更新或者只对指定包进行更新。 diff --git "a/content/zh/docs/Administration/\346\243\200\346\237\245\346\230\257\345\220\246\345\267\262\345\256\211\350\243\205Bonding\345\206\205\346\240\270\346\250\241\345\235\227.md" "b/content/zh/docs/Administration/\346\243\200\346\237\245\346\230\257\345\220\246\345\267\262\345\256\211\350\243\205Bonding\345\206\205\346\240\270\346\250\241\345\235\227.md" index 150fda25f622a8b931a669c4338f73303ab7ba2a..2d55b9dc07af51806bbe4d6bfdf8c63c6378f177 100644 --- "a/content/zh/docs/Administration/\346\243\200\346\237\245\346\230\257\345\220\246\345\267\262\345\256\211\350\243\205Bonding\345\206\205\346\240\270\346\250\241\345\235\227.md" +++ "b/content/zh/docs/Administration/\346\243\200\346\237\245\346\230\257\345\220\246\345\267\262\345\256\211\350\243\205Bonding\345\206\205\346\240\270\346\250\241\345\235\227.md" @@ -1,4 +1,4 @@ -# 检查是否已安装Bonding内核模块 +# 检查是否已安装Bonding内核模块 在系统中默认已加载相应模块。在root权限下,要载入绑定模块,可使用如下命令: @@ -12,5 +12,5 @@ # modinfo bonding ``` -更多命令请使用modprobe \--help查看。 +更多命令请使用modprobe --help查看。 diff --git "a/content/zh/docs/Administration/\346\246\202\350\277\260-3.md" "b/content/zh/docs/Administration/\346\246\202\350\277\260-4.md" similarity index 90% rename from "content/zh/docs/Administration/\346\246\202\350\277\260-3.md" rename to "content/zh/docs/Administration/\346\246\202\350\277\260-4.md" index 6531f79330edc0c56105c6558975fd85717b1651..2f36254d15c9953dfb2c5105db31e7fcc79b00d0 100644 --- "a/content/zh/docs/Administration/\346\246\202\350\277\260-3.md" +++ "b/content/zh/docs/Administration/\346\246\202\350\277\260-4.md" @@ -1,6 +1,6 @@ -# 概述 - -Web(World Wide Web)是目前最常用的Internet协议之一。目前在Unix-Like系统中的web服务器主要通过Apache服务器软件实现。为了实现运营动态网站,产生了LAMP(Linux + Apache +MySQL + PHP)。web服务可以结合文字、图形、影像以及声音等多媒体,并支持超链接(Hyperlink)的方式传输信息。 - -openEuler系统中的web服务器版本是Apache HTTP服务器2.4版本,即httpd,一个由Apache软件基金会发展而来的开源web服务器。 - +# 概述 + +Web(World Wide Web)是目前最常用的Internet协议之一。目前在Unix-Like系统中的web服务器主要通过Apache服务器软件实现。为了实现运营动态网站,产生了LAMP(Linux + Apache +MySQL + PHP)。web服务可以结合文字、图形、影像以及声音等多媒体,并支持超链接(Hyperlink)的方式传输信息。 + +openEuler系统中的web服务器版本是Apache HTTP服务器2.4版本,即httpd,一个由Apache软件基金会发展而来的开源web服务器。 + diff --git "a/content/zh/docs/Administration/\346\246\202\350\277\260-5.md" "b/content/zh/docs/Administration/\346\246\202\350\277\260-5.md" new file mode 100644 index 0000000000000000000000000000000000000000..18c4d1c4954a47f96aa8e9c53bd6c15364a9814b --- /dev/null +++ "b/content/zh/docs/Administration/\346\246\202\350\277\260-5.md" @@ -0,0 +1,4 @@ +# 概述 + +Nginx 是一款轻量级的 Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,其特点是占有内存少,并发能力强,支持FastCGI、SSL、Virtual Host、URL Rewrite、Gzip等功能,并且支持很多第三方的模块扩展。 + diff --git "a/content/zh/docs/Administration/\346\246\202\350\277\260.md" "b/content/zh/docs/Administration/\346\246\202\350\277\260.md" index 0cee2175c18608cb2b83edd529bd0fa066c523a5..dc05da181de8115fcbde4a44ad2843b6ad46c2c9 100644 --- "a/content/zh/docs/Administration/\346\246\202\350\277\260.md" +++ "b/content/zh/docs/Administration/\346\246\202\350\277\260.md" @@ -1,4 +1,4 @@ -# 概述 +# 概述 -将openEuler提供的镜像openEuler-1.0-base-aarch64-dvd.iso创建为repo源,如下以使用nginx进行repo源部署,提供http服务为例进行说明。 +将openEuler提供的镜像openEuler-20.03-LTS-aarch64-dvd.iso创建为repo源,如下以使用nginx进行repo源部署,提供http服务为例进行说明。 diff --git "a/content/zh/docs/Administration/\346\263\225\345\276\213\345\243\260\346\230\216.md" "b/content/zh/docs/Administration/\346\263\225\345\276\213\345\243\260\346\230\216.md" index 4198a9e7c2dbb202fa24c542bee877ea33be08d3..404c601d6fc52a35c718206fedfcc48319f35c7d 100644 --- "a/content/zh/docs/Administration/\346\263\225\345\276\213\345\243\260\346\230\216.md" +++ "b/content/zh/docs/Administration/\346\263\225\345\276\213\345\243\260\346\230\216.md" @@ -1,4 +1,4 @@ -# 法律声明 +# 法律声明 **版权所有 © 2020 华为技术有限公司。** diff --git "a/content/zh/docs/Administration/\346\267\273\345\212\240-Wi-Fi-\350\277\236\346\216\245.md" "b/content/zh/docs/Administration/\346\267\273\345\212\240-Wi-Fi-\350\277\236\346\216\245.md" index cf0a972bab47cee3b810f3f30736e2391ed708dc..6857aea2c4f4d28a72142d3a2dabef7d0d6bce24 100644 --- "a/content/zh/docs/Administration/\346\267\273\345\212\240-Wi-Fi-\350\277\236\346\216\245.md" +++ "b/content/zh/docs/Administration/\346\267\273\345\212\240-Wi-Fi-\350\277\236\346\216\245.md" @@ -1,4 +1,4 @@ -# 添加 Wi-Fi 连接 +# 添加 Wi-Fi 连接 使用以下命令查看可用 Wi-Fi 访问点: diff --git "a/content/zh/docs/Administration/\346\267\273\345\212\240-\345\220\257\347\224\250\345\222\214\347\246\201\347\224\250\350\275\257\344\273\266\346\272\220.md" "b/content/zh/docs/Administration/\346\267\273\345\212\240-\345\220\257\347\224\250\345\222\214\347\246\201\347\224\250\350\275\257\344\273\266\346\272\220.md" index c6d179e9d6455efb9281241814519fe28348fc81..4ee0a2d71afed53075c854206dd8444677845c44 100644 --- "a/content/zh/docs/Administration/\346\267\273\345\212\240-\345\220\257\347\224\250\345\222\214\347\246\201\347\224\250\350\275\257\344\273\266\346\272\220.md" +++ "b/content/zh/docs/Administration/\346\267\273\345\212\240-\345\220\257\347\224\250\345\222\214\347\246\201\347\224\250\350\275\257\344\273\266\346\272\220.md" @@ -1,4 +1,4 @@ -# 添加、启用和禁用软件源 +# 添加、启用和禁用软件源 本节将介绍如何通过“dnf config-manager”命令添加、启用和禁用软件源仓库。 @@ -6,7 +6,7 @@ 要定义一个新的软件源仓库,您可以在 /etc/dnf/dnf.conf 文件中添加“repository”部分,或者在/etc/yum.repos.d/目录下添加“.repo”文件进行说明。建议您通过添加“.repo”的方式,每个软件源都有自己对应的“.repo”文件,以下介绍该方式的操作方法。 -要在您的系统中添加一个这样的源,请在root权限下执行如下命令,执行完成之后会在/etc/yum.repos.d/目录下生成对应的repo文件。其中 _repository\_url_ 为repo源地址,详情请参见“使用DNF管理软件包 \> 配置DNF \> 修改配置文件”章节中的“repository参数说明”。 +要在您的系统中添加一个这样的源,请在root权限下执行如下命令,执行完成之后会在/etc/yum.repos.d/目录下生成对应的repo文件。其中 _repository\_url_ 为repo源地址,详情请参见“使用DNF管理软件包 \> 配置DNF \> 修改配置文件”章节中的“repository参数说明”。 ``` dnf config-manager --add-repo repository_url @@ -14,13 +14,13 @@ dnf config-manager --add-repo repository_url ## 启用软件源 -要启用软件源,请在root权限下执行如下命令,其中 _repository_ 为新增.repo文件中的repo id(可通过dnf repolist查询): +要启用软件源,请在root权限下执行如下命令,其中 _repository_ 为新增.repo文件中的repo id(可通过dnf repolist查询): ``` dnf config-manager --set-enable repository ``` -您也可以使用一个全局正则表达式,来启用所有匹配的软件源。其中 _glob\_expression_ 为对应的正则表达式,用于同时匹配多个repo id: +您也可以使用一个全局正则表达式,来启用所有匹配的软件源。其中 _glob\_expression_ 为对应的正则表达式,用于同时匹配多个repo id: ``` dnf config-manager --set-enable glob_expression diff --git "a/content/zh/docs/Administration/\346\277\200\346\264\273\351\242\221\351\201\223\347\273\221\345\256\232.md" "b/content/zh/docs/Administration/\346\277\200\346\264\273\351\242\221\351\201\223\347\273\221\345\256\232.md" index f7f5daccf0eb61b32f4a3bbe8e7ff6679ae2ef8a..9d609e43b842e2873df1df3b051a6f8e7575723d 100644 --- "a/content/zh/docs/Administration/\346\277\200\346\264\273\351\242\221\351\201\223\347\273\221\345\256\232.md" +++ "b/content/zh/docs/Administration/\346\277\200\346\264\273\351\242\221\351\201\223\347\273\221\345\256\232.md" @@ -1,4 +1,4 @@ -# 激活频道绑定 +# 激活频道绑定 要激活绑定,则需要启动所有从属接口。请在root权限下,运行以下命令: @@ -13,7 +13,7 @@ Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkMa ``` >![](public_sys-resources/icon-note.gif) **说明:** ->对于已经处于“up”状态的接口,请首先使用“ifdown _enp3s0_ ”命令修改状态为down,其中 _enp3s0_ 为实际网卡名称。 +>对于已经处于“up”状态的接口,请首先使用“ifdown _enp3s0_ ”命令修改状态为down,其中 _enp3s0_ 为实际网卡名称。 完成后,启动所有从属接口以便启动绑定(不将其设定为 “down”)。 diff --git "a/content/zh/docs/Administration/\347\211\271\346\200\247\350\257\264\346\230\216.md" "b/content/zh/docs/Administration/\347\211\271\346\200\247\350\257\264\346\230\216.md" index 133420b3594586a619d6c98112fb53e9a7fa8844..728a5e658ffa045de1da5fd4d66654d4062e3925 100644 --- "a/content/zh/docs/Administration/\347\211\271\346\200\247\350\257\264\346\230\216.md" +++ "b/content/zh/docs/Administration/\347\211\271\346\200\247\350\257\264\346\230\216.md" @@ -1,4 +1,4 @@ -# 特性说明 +# 特性说明 ## 更快的启动速度 diff --git "a/content/zh/docs/Administration/\347\224\250\346\210\267\346\216\210\346\235\203-45.md" "b/content/zh/docs/Administration/\347\224\250\346\210\267\346\216\210\346\235\203-45.md" new file mode 100644 index 0000000000000000000000000000000000000000..c066fcb74857bd3bd1ba323f987f970e6dd3cc26 --- /dev/null +++ "b/content/zh/docs/Administration/\347\224\250\346\210\267\346\216\210\346\235\203-45.md" @@ -0,0 +1,32 @@ +# 用户授权 + +可以使用GRANT语句来对新建用户的授权。 + +``` +GRANT privileges ON databasename.tablename TO 'username'@'hostname'; +``` + +其中: + +- ON字句:用于指定权限授予的对象和级别。 +- privileges:用户的操作权限,如SELECT,INSERT,UPDATE等,如果要授予所有的权限则使用ALL。 +- databasename:数据库名。 +- tablename:表名。 +- TO字句:用来设定用户密码,以及指定被赋予权限的用户。 +- username:用户名。 +- hostname:主机名。 + +如果要授予该用户对所有数据库和表的相应操作权限则可用\*表示,如\*.\*。 + +如果在TO子句中给系统中存在的用户指定密码,则新密码会将原密码覆盖。 + +如果权限被授予给一个不存在的用户,则会自动执行一条CREATE USER语句来创建这个用户,但同时必须为该用户指定密码。 + +## 示例 + +\#对本地用户userexample授予SELECT和INSERT权限。 + +``` +> GRANT SELECT,INSERT ON *.* TO 'userexample'@'localhost'; +``` + diff --git "a/content/zh/docs/Administration/\347\224\250\346\210\267\346\216\210\346\235\203.md" "b/content/zh/docs/Administration/\347\224\250\346\210\267\346\216\210\346\235\203.md" new file mode 100644 index 0000000000000000000000000000000000000000..72931a26d6b8088c8f75fd1156df8bbb0373ba63 --- /dev/null +++ "b/content/zh/docs/Administration/\347\224\250\346\210\267\346\216\210\346\235\203.md" @@ -0,0 +1,32 @@ +# 用户授权 + +可以使用GRANT语句来对新建用户的授权。 + +``` +GRANT privileges ON databasename.tablename TO 'username'@'hostname'; +``` + +其中: + +- ON字句:用于指定权限授予的对象和级别。 +- privileges:用户的操作权限,如SELECT,INSERT,UPDATE等,如果要授予所有的权限则使用ALL。 +- databasename:数据库名。 +- tablename:表名。 +- TO字句:用来设定用户密码,以及指定被赋予权限的用户。 +- username:用户名。 +- hostname:主机名。 + +如果要授予该用户对所有数据库和表的相应操作权限则可用\*表示,如\*.\*。 + +如果在TO子句中给系统中存在的用户指定密码,则新密码会将原密码覆盖。 + +如果权限被授予给一个不存在的用户,则会自动执行一条CREATE USER语句来创建这个用户,但同时必须为该用户指定密码。 + +## 示例 + +\#对本地用户userexample授予SELECT和INSERT权限。 + +``` +> GRANT SELECT,INSERT ON *.* TO 'userexample'@'localhost'; +``` + diff --git "a/content/zh/docs/Administration/\347\231\273\345\275\225\346\225\260\346\215\256\345\272\223.md" "b/content/zh/docs/Administration/\347\231\273\345\275\225\346\225\260\346\215\256\345\272\223.md" new file mode 100644 index 0000000000000000000000000000000000000000..2b4f0729e615d3fbb739b3c5fc09c83741c40b85 --- /dev/null +++ "b/content/zh/docs/Administration/\347\231\273\345\275\225\346\225\260\346\215\256\345\272\223.md" @@ -0,0 +1,14 @@ +# 登录数据库 + +1. 登录数据库。 + + ``` + $/usr/bin/psql -U postgres + ``` + + ![](figures/登录.png) + + >![](public_sys-resources/icon-note.gif) **说明:** + >初次登录数据库,无需密码。 + + diff --git "a/content/zh/docs/Administration/\347\256\200\344\273\213-0.md" "b/content/zh/docs/Administration/\347\256\200\344\273\213-1.md" similarity index 92% rename from "content/zh/docs/Administration/\347\256\200\344\273\213-0.md" rename to "content/zh/docs/Administration/\347\256\200\344\273\213-1.md" index e7ed1993769e09106dd88592581f7e46fba91be5..46999d14f4c4e373d337c463dfd0447ac1e56ea3 100644 --- "a/content/zh/docs/Administration/\347\256\200\344\273\213-0.md" +++ "b/content/zh/docs/Administration/\347\256\200\344\273\213-1.md" @@ -1,11 +1,11 @@ -# 简介 - -hostname有三种类型:static、transient和pretty。 - -- static:静态主机名,可由用户自行设置,并保存在/etc/hostname 文件中。 -- transient:动态主机名,由内核维护,初始是 static 主机名,默认值为“localhost”。可由DHCP或mDNS在运行时更改。 -- pretty:灵活主机名,允许使用自由形式(包括特殊/空白字符)进行设置。静态/动态主机名遵从域名的通用限制。 - ->![](public_sys-resources/icon-note.gif) **说明:** ->static和transient主机名只能包含a-z、A-Z、0-9、“-”、“\_”和“.”,不能在开头或结尾处使用句点,不允许使用两个相连的句点,大小限制为 64 个字符。 - +# 简介 + +hostname有三种类型:static、transient和pretty。 + +- static:静态主机名,可由用户自行设置,并保存在/etc/hostname 文件中。 +- transient:动态主机名,由内核维护,初始是 static 主机名,默认值为“localhost”。可由DHCP或mDNS在运行时更改。 +- pretty:灵活主机名,允许使用自由形式(包括特殊/空白字符)进行设置。静态/动态主机名遵从域名的通用限制。 + +>![](public_sys-resources/icon-note.gif) **说明:** +>static和transient主机名只能包含a-z、A-Z、0-9、“-”、“\_”和“.”,不能在开头或结尾处使用句点,不允许使用两个相连的句点,大小限制为 64 个字符。 + diff --git "a/content/zh/docs/Administration/\347\256\200\344\273\213-2.md" "b/content/zh/docs/Administration/\347\256\200\344\273\213-2.md" new file mode 100644 index 0000000000000000000000000000000000000000..616f1dd8bf074a852ca1f21f9d2fd385fbc54d15 --- /dev/null +++ "b/content/zh/docs/Administration/\347\256\200\344\273\213-2.md" @@ -0,0 +1,13 @@ +# 简介 + +KAE加速引擎为openEuler的一个软件加速库,搭载在Kunpeng 920处理器上联合提供硬件加速引擎功能,包含了对称加密、非对称加密和数字签名,用于加速SSL/TLS应用,可以显著降低处理器消耗,提高处理器效率。此外,用户通过OpenSSL标准接口可实现业务快速迁移。 + +KAE加速引擎支持以下算法: + +- 摘要算法SM3, 支持异步模式。 +- 对称加密算法SM4,支持异步模式,支持CTR/XTS/CBC模式。 + +- 对称加密算法AES, 支持异步模式,支持ECB/CTR/XTS/CBC模式。 +- 非对称算法RSA,支持异步模式,支持 Key Sizes 1024/2048/3072/4096。 +- 密钥协商算法DH, 支持异步模式,支持 Key Sizes 768/1024/1536/2048/3072/4096。 + diff --git "a/content/zh/docs/Administration/\347\256\200\344\273\213.md" "b/content/zh/docs/Administration/\347\256\200\344\273\213.md" index 3f9ec27baa16745dedd1445be48a26e9200c0e23..6b5aa2962db17ba4e5184f37a455afde1128f128 100644 --- "a/content/zh/docs/Administration/\347\256\200\344\273\213.md" +++ "b/content/zh/docs/Administration/\347\256\200\344\273\213.md" @@ -1,4 +1,4 @@ -# 简介 +# 简介 systemd是在Linux下,与SysV和LSB初始化脚本兼容的系统和服务管理器。systemd使用socket和D-Bus来开启服务,提供基于守护进程的按需启动策略,支持快照和系统状态恢复,维护挂载和自挂载点,实现了各服务间基于从属关系的一个更为精细的逻辑控制,拥有更高的并行性能。 diff --git "a/content/zh/docs/Administration/\347\256\241\347\220\206httpd.md" "b/content/zh/docs/Administration/\347\256\241\347\220\206httpd.md" index 7220bcc5c27e575204f58e531879ed00cfd2e3f3..f656a0a54a54e52944fea0e04f0e26d9cc0e7931 100644 --- "a/content/zh/docs/Administration/\347\256\241\347\220\206httpd.md" +++ "b/content/zh/docs/Administration/\347\256\241\347\220\206httpd.md" @@ -1,4 +1,4 @@ -# 管理httpd +# 管理httpd ## 概述 diff --git "a/content/zh/docs/Administration/\347\256\241\347\220\206nginx.md" "b/content/zh/docs/Administration/\347\256\241\347\220\206nginx.md" new file mode 100644 index 0000000000000000000000000000000000000000..8a32e501dbdff3294ae2e65df5dd2e8a199db366 --- /dev/null +++ "b/content/zh/docs/Administration/\347\256\241\347\220\206nginx.md" @@ -0,0 +1,89 @@ +# 管理nginx + +## 概述 + +通过systemctl工具,可以对nginx服务进行管理,包括启动、停止、重启服务,以及查看服务状态等。本章介绍nginx服务的管理操作,以指导用户使用。 + +## 前提条件 + +- 为了能够使用nginx服务,请确保您的系统中已经安装nginx服务。若未安装,可参考[安装](安装-6.md)进行安装。 + + 更多关于管理服务的内容,请参见[管理服务](管理服务.md)。 + +- 启动、停止和重启httpd服务,需要使用root权限。 + +## 启动服务 + +- 启动并运行nginx服务,命令如下: + + ``` + # systemctl start nginx + ``` + + +- 假如希望在系统启动时,nginx服务自动启动,则命令和回显如下: + + ``` + # systemctl enable nginx + Created symlink /etc/systemd/system/multi-user.target.wants/nginx.service → /usr/lib/systemd/system/nginx.service. + ``` + + +>![](public_sys-resources/icon-note.gif) **说明:** +>假如正在运行的nginx服务器作为一个安全服务器,系统开机启动后需要密码,这个密码使用的是加密的私有SSL密钥。 + +## 停止服务 + +- 停止运行的httpd服务,命令如下: + + ``` + # systemctl stop nginx + ``` + +- 如果希望防止服务在系统开机阶段自动开启,命令和回显如下: + + ``` + # systemctl disable nginx + Removed /etc/systemd/system/multi-user.target.wants/nginx.service. + ``` + + +## 重启服务 + +重启服务有三种方式: + +- 完全重启服务 + + ``` + # systemctl restart nginx + ``` + + 该命令会停止运行的nginx服务并且立即重新启动它。一般在服务安装以后或者去除一个动态加载的模块(例如PHP)时使用这个命令。 + +- 重新加载配置 + + ``` + # systemctl reload httpd + ``` + + 该命令会使运行的nginx服务重新加载它的配置文件。任何当前正在处理的请求将会被中断,从而造成客户端浏览器显示一个错误消息或者重新渲染部分页面。 + +- 平滑重启nginx + + ``` + # kill -HUP 主进程ID + ``` + + 该命令会使运行的nginx服务重新加载它的配置文件。任何当前正在处理的请求将会继续使用旧的配置文件。 + + +## 验证服务状态 + +验证httpd服务是否正在运行 + +``` +# systemctl is-active nginx +``` + +回显为“active”说明服务处于运行状态。 + diff --git "a/content/zh/docs/Administration/\347\256\241\347\220\206\345\215\267\347\273\204.md" "b/content/zh/docs/Administration/\347\256\241\347\220\206\345\215\267\347\273\204.md" new file mode 100644 index 0000000000000000000000000000000000000000..a17d46f3338ca3869102419e503e444e2be4cef2 --- /dev/null +++ "b/content/zh/docs/Administration/\347\256\241\347\220\206\345\215\267\347\273\204.md" @@ -0,0 +1,136 @@ +# 管理卷组 + +## 创建卷组 + +可通过vgcreate命令创建物理卷。 + +``` +vgcreate [option] vgname pvname ... +``` + +其中: + +- option:命令参数选项。常用的参数选项有: + - -l:卷组上允许创建的最大逻辑卷数。 + - -p:卷组中允许添加的最大物理卷数。 + - -s:卷组上的物理卷的PE大小。 + +- vgname:要创建的卷组名称。 +- pvname:要加入到卷组中的物理卷名称。 + +示例:创建卷组 vg1,并且将物理卷/dev/sdb和/dev/sdc添加到卷组中。 + +``` +vgcreate vg1 /dev/sdb /dev/sdc +``` + +## 查看卷组 + +可通过vgdisplay命令查看卷组的信息。 + +``` +vgdisplay [option] [vgname] +``` + +其中: + +- option:命令参数选项。常用的参数选项有: + - -s:以短格式输出。 + - -A:仅显示活动卷组的属性。 + +- vgname:指定要查看的卷组名称。如果不指定卷组名称,则显示所有卷组的信息。 + +示例:显示卷组vg1的基本信息。 + +``` +vgdisplay vg1 +``` + +## 修改卷组属性 + +可通过vgchange命令修改卷组的属性。 + +``` +vgchange [option] vgname +``` + +其中: + +- option:命令参数选项。常用的参数选项有: + - -a:设置卷组的活动状态。 + +- vgname:指定要修改属性的卷组名称。 + +示例:将卷组vg1状态修改为活动。 + +``` +vgchange -ay vg1 +``` + +## 扩展卷组 + +可通过vgextend命令动态扩展卷组。它通过向卷组中添加物理卷来增加卷组的容量。 + +``` +vgextend [option] vgname pvname ... +``` + +其中: + +- option:命令参数选项。常用的参数选项有: + - -d:调试模式。 + - -t:仅测试。 + +- vgname:要扩展容量的卷组名称。 +- pvname:要加入到卷组中的物理卷名称。 + +示例:将卷组vg1中添加物理卷/dev/sdb。 + +``` +vgextend vg1 /dev/sdb +``` + +## 收缩卷组 + +可通过vgreduce命令删除卷组中的物理卷来减少卷组容量。不能删除卷组中剩余的最后一个物理卷。 + +``` +vgreduce [option] vgname pvname ... +``` + +其中: + +- option:命令参数选项。常用的参数选项有: + - -a:如果命令行中没有指定要删除的物理卷,则删除所有的空物理卷。 + - --removemissing:删除卷组中丢失的物理卷,使卷组恢复正常状态。 + +- vgname:要收缩容量的卷组名称。 +- pvname:要从卷组中删除的物理卷名称。 + +示例:从卷组vg1中移除物理卷/dev/sdb2。 + +``` +vgreduce vg1 /dev/sdb2 +``` + +## 删除卷组 + +可通过vgremove命令删除卷组。 + +``` +vgremove [option] vgname +``` + +其中: + +- option:命令参数选项。常用的参数选项有: + - -f:强制删除卷组,不需要用户确认。 + +- vgname:指定要删除的卷组名称。 + +示例:删除卷组vg1。 + +``` +vgremove vg1 +``` + diff --git "a/content/zh/docs/Administration/\347\256\241\347\220\206\345\221\230\350\264\246\346\210\267\346\216\210\346\235\203.md" "b/content/zh/docs/Administration/\347\256\241\347\220\206\345\221\230\350\264\246\346\210\267\346\216\210\346\235\203.md" index 7eaeddc46ca91ed8d2c70cc46fb317c02d1645e2..dab477c9606c51945beaf7b86f071e3fa31027db 100644 --- "a/content/zh/docs/Administration/\347\256\241\347\220\206\345\221\230\350\264\246\346\210\267\346\216\210\346\235\203.md" +++ "b/content/zh/docs/Administration/\347\256\241\347\220\206\345\221\230\350\264\246\346\210\267\346\216\210\346\235\203.md" @@ -1 +1,4 @@ -# 管理员账户授权 +# 管理员账户授权 + + + diff --git "a/content/zh/docs/Administration/\347\256\241\347\220\206\346\225\260\346\215\256\345\272\223-22.md" "b/content/zh/docs/Administration/\347\256\241\347\220\206\346\225\260\346\215\256\345\272\223-22.md" new file mode 100644 index 0000000000000000000000000000000000000000..0f437152266e0ff96ba2da2058db3d232c857c71 --- /dev/null +++ "b/content/zh/docs/Administration/\347\256\241\347\220\206\346\225\260\346\215\256\345\272\223-22.md" @@ -0,0 +1 @@ +# 管理数据库 diff --git "a/content/zh/docs/Administration/\347\256\241\347\220\206\346\225\260\346\215\256\345\272\223-47.md" "b/content/zh/docs/Administration/\347\256\241\347\220\206\346\225\260\346\215\256\345\272\223-47.md" new file mode 100644 index 0000000000000000000000000000000000000000..2535cfa3ee36ef4f9a378fa777e164d0f526b43d --- /dev/null +++ "b/content/zh/docs/Administration/\347\256\241\347\220\206\346\225\260\346\215\256\345\272\223-47.md" @@ -0,0 +1 @@ +# 管理数据库 diff --git "a/content/zh/docs/Administration/\347\256\241\347\220\206\346\225\260\346\215\256\345\272\223.md" "b/content/zh/docs/Administration/\347\256\241\347\220\206\346\225\260\346\215\256\345\272\223.md" new file mode 100644 index 0000000000000000000000000000000000000000..66553a5d516b146dfdaefc63249a6a8eabfdb561 --- /dev/null +++ "b/content/zh/docs/Administration/\347\256\241\347\220\206\346\225\260\346\215\256\345\272\223.md" @@ -0,0 +1 @@ +# 管理数据库 diff --git "a/content/zh/docs/Administration/\347\256\241\347\220\206\346\225\260\346\215\256\345\272\223\347\224\250\346\210\267-40.md" "b/content/zh/docs/Administration/\347\256\241\347\220\206\346\225\260\346\215\256\345\272\223\347\224\250\346\210\267-40.md" new file mode 100644 index 0000000000000000000000000000000000000000..de5cd7901c8a64e87b6bb138498f490b833ef816 --- /dev/null +++ "b/content/zh/docs/Administration/\347\256\241\347\220\206\346\225\260\346\215\256\345\272\223\347\224\250\346\210\267-40.md" @@ -0,0 +1 @@ +# 管理数据库用户 diff --git "a/content/zh/docs/Administration/\347\256\241\347\220\206\346\225\260\346\215\256\345\272\223\347\224\250\346\210\267.md" "b/content/zh/docs/Administration/\347\256\241\347\220\206\346\225\260\346\215\256\345\272\223\347\224\250\346\210\267.md" new file mode 100644 index 0000000000000000000000000000000000000000..eec70fdbd7df1d5a3995f7e9fcdf7bed8e2f1c52 --- /dev/null +++ "b/content/zh/docs/Administration/\347\256\241\347\220\206\346\225\260\346\215\256\345\272\223\347\224\250\346\210\267.md" @@ -0,0 +1 @@ +# 管理数据库用户 diff --git "a/content/zh/docs/Administration/\347\256\241\347\220\206\346\225\260\346\215\256\345\272\223\350\247\222\350\211\262.md" "b/content/zh/docs/Administration/\347\256\241\347\220\206\346\225\260\346\215\256\345\272\223\350\247\222\350\211\262.md" new file mode 100644 index 0000000000000000000000000000000000000000..892e60ac9ac2ec7a200d8cf051f2c1a546bfa44e --- /dev/null +++ "b/content/zh/docs/Administration/\347\256\241\347\220\206\346\225\260\346\215\256\345\272\223\350\247\222\350\211\262.md" @@ -0,0 +1 @@ +# 管理数据库角色 diff --git "a/content/zh/docs/Administration/\347\256\241\347\220\206\346\234\215\345\212\241.md" "b/content/zh/docs/Administration/\347\256\241\347\220\206\346\234\215\345\212\241.md" index 5f9b9d6d2d86c408d506aab4b78fd6e4dffa7a74..496c2192c40a90f4c230848b28b10c0db78b6b6a 100644 --- "a/content/zh/docs/Administration/\347\256\241\347\220\206\346\234\215\345\212\241.md" +++ "b/content/zh/docs/Administration/\347\256\241\347\220\206\346\234\215\345\212\241.md" @@ -1,3 +1,6 @@ -# 管理服务 +# 管理服务 本章介绍如何使用systemd进行系统和服务管理。 + + + diff --git "a/content/zh/docs/Administration/\347\256\241\347\220\206\346\250\241\345\235\227.md" "b/content/zh/docs/Administration/\347\256\241\347\220\206\346\250\241\345\235\227.md" new file mode 100644 index 0000000000000000000000000000000000000000..8c0a09bc7baa1722fa424b6b8e8a6b7e8a5b5350 --- /dev/null +++ "b/content/zh/docs/Administration/\347\256\241\347\220\206\346\250\241\345\235\227.md" @@ -0,0 +1,12 @@ +# 管理模块 + +## 概述 + +nginx服务是一个模块化的应用,它和许多动态共享对象DSO(Dynamic Shared Objects)一起分发。动态共享对象DSO,在必要情况下,可以在运行时被动态加载或卸载。服务器操作系统中这些模块位于/usr/lib64/nginx/modules/目录下。本节介绍如何加载和写入模块。 + +## 加载模块 + +为了加载一个特殊的DSO模块,在配置文件中使用加载模块指示。独立软件包提供的模块一般在/usr/share/nginx/modules目录下有他们自己的配置文件。 + +因openEuler操作系统中使用dnf install nginx安装nginx是会自动加载DSO。 + diff --git "a/content/zh/docs/Administration/\347\256\241\347\220\206\346\250\241\345\235\227\345\222\214SSL.md" "b/content/zh/docs/Administration/\347\256\241\347\220\206\346\250\241\345\235\227\345\222\214SSL.md" index 2821a2d57ea9ec262cfea2abbbb344d351fa7e56..f46d744e6a20740789e3cc59cda76c225edc5571 100644 --- "a/content/zh/docs/Administration/\347\256\241\347\220\206\346\250\241\345\235\227\345\222\214SSL.md" +++ "b/content/zh/docs/Administration/\347\256\241\347\220\206\346\250\241\345\235\227\345\222\214SSL.md" @@ -1,4 +1,4 @@ -# 管理模块和SSL +# 管理模块和SSL ## 概述 diff --git "a/content/zh/docs/Administration/\347\256\241\347\220\206\347\211\251\347\220\206\345\215\267.md" "b/content/zh/docs/Administration/\347\256\241\347\220\206\347\211\251\347\220\206\345\215\267.md" new file mode 100644 index 0000000000000000000000000000000000000000..d02743bcd9e037800a3858635bfc44e6530e9149 --- /dev/null +++ "b/content/zh/docs/Administration/\347\256\241\347\220\206\347\211\251\347\220\206\345\215\267.md" @@ -0,0 +1,98 @@ +# 管理物理卷 + +## 创建物理卷 + +可通过pvcreate命令创建物理卷。 + +``` +pvcreate [option] devname ... +``` + +其中: + +- option:命令参数选项。常用的参数选项有: + - -f:强制创建物理卷,不需要用户确认。 + + - -u:指定设备的UUID。 + - -y:所有的问题都回答“yes”。 + +- devname:指定要创建的物理卷对应的设备名称,如果需要批量创建,可以填写多个设备名称,中间以空格间隔。 + +示例1:将/dev/sdb、/dev/sdc创建为物理卷。 + +``` +pvcreate /dev/sdb /dev/sdc +``` + +示例2:将/dev/sdb1、/dev/sdb2创建为物理卷。 + +``` +pvcreate /dev/sdb1 /dev/sdb2 +``` + +## 查看物理卷 + +可通过pvdisplay命令查看物理卷的信息,包括:物理卷名称、所属的卷组、物理卷大小、PE大小、总PE数、可用PE数、已分配的PE数和UUID。 + +``` +pvdisplay [option] devname +``` + +其中: + +- option:命令参数选项。常用的参数选项有: + - -s:以短格式输出。 + - -m:显示PE到LE的映射。 + +- devname:指定要查看的物理卷对应的设备名称。如果不指定物理卷名称,则显示所有物理卷的信息。 + +示例:显示物理卷/dev/sdb的基本信息。 + +``` +pvdisplay /dev/sdb +``` + +## 修改物理卷属性 + +可通过pvchange命令修改物理卷的属性。 + +``` +pvchange [option] pvname ... +``` + +其中: + +- option:命令参数选项。常用的参数选项有: + - -u:生成新的UUID。 + - -x:是否允许分配PE”。 + +- pvname:指定要要修改属性的物理卷对应的设备名称,如果需要批量删除,可以填写多个设备名称,中间以空格间隔。 + +示例:禁止分配/dev/sdb物理卷上的PE。 + +``` +pvchange -x n /dev/sdb +``` + +## 删除物理卷 + +可通过pvremove命令删除物理卷。 + +``` +pvremove [option] pvname ... +``` + +其中: + +- option:命令参数选项。常用的参数选项有: + - -f:强制删除物理卷,不需要用户确认。 + - -y:所有的问题都回答“yes”。 + +- pvname:指定要删除的物理卷对应的设备名称,如果需要批量删除,可以填写多个设备名称,中间以空格间隔。 + +示例:删除物理卷/dev/sdb。 + +``` +pvremove /dev/sdb +``` + diff --git "a/content/zh/docs/Administration/\347\256\241\347\220\206\347\224\250\346\210\267.md" "b/content/zh/docs/Administration/\347\256\241\347\220\206\347\224\250\346\210\267.md" index a53f1a09efc7c90c69fbe4578237e95731bfa2dc..379107abd17d28b6704474a135aecb0f4ba30b86 100644 --- "a/content/zh/docs/Administration/\347\256\241\347\220\206\347\224\250\346\210\267.md" +++ "b/content/zh/docs/Administration/\347\256\241\347\220\206\347\224\250\346\210\267.md" @@ -1,5 +1,8 @@ -# 管理用户 +# 管理用户 在Linux中,每个普通用户都有一个账户,包括用户名、密码和主目录等信息。除此之外,还有一些系统本身创建的特殊用户,它们具有特殊的意义,其中最重要的是管理员账户,默认用户名是root。同时Linux也提供了用户组,使每一个用户至少属于一个组,从而便于权限管理。 用户和用户组管理是系统安全管理的重要组成部分,本章主要介绍openEuler提供的用户管理和组管理命令,以及为普通用户分配特权的方法。 + + + diff --git "a/content/zh/docs/Administration/\347\256\241\347\220\206\347\263\273\347\273\237\346\234\215\345\212\241.md" "b/content/zh/docs/Administration/\347\256\241\347\220\206\347\263\273\347\273\237\346\234\215\345\212\241.md" index 234489ae34510d17535389b756cfd89c176d35e8..08c489a90470a66005c31a9db749852922335b49 100644 --- "a/content/zh/docs/Administration/\347\256\241\347\220\206\347\263\273\347\273\237\346\234\215\345\212\241.md" +++ "b/content/zh/docs/Administration/\347\256\241\347\220\206\347\263\273\347\273\237\346\234\215\345\212\241.md" @@ -1,4 +1,4 @@ -# 管理系统服务 +# 管理系统服务 systemd提供systemctl命令来运行、关闭、重启、显示、启用/禁用系统服务。 @@ -80,21 +80,21 @@ systemd提供systemctl命令与sysvinit命令的功能类似。当前版本中

用来检查一个服务在当前环境下被配置为启用还是禁用。

-

chkconfig \--list

+

chkconfig --list

-

systemctl list-unit-files \--type=service

+

systemctl list-unit-files --type=service

输出在各个运行级别下服务的启用和禁用情况。

-

chkconfig network \--list

+

chkconfig network --list

ls /etc/systemd/system/*.wants/network.service

用来列出该服务在哪些运行级别下启用和禁用。

-

chkconfig network \--add

+

chkconfig network --add

systemctl daemon-reload

diff --git "a/content/zh/docs/Administration/\347\256\241\347\220\206\347\263\273\347\273\237\350\277\233\347\250\213.md" "b/content/zh/docs/Administration/\347\256\241\347\220\206\347\263\273\347\273\237\350\277\233\347\250\213.md" index dd866e3d76a3ab1d011703508a216bbdb36bc362..f61bba526bc200a33eb1e22c29f6dcfbc2050028 100644 --- "a/content/zh/docs/Administration/\347\256\241\347\220\206\347\263\273\347\273\237\350\277\233\347\250\213.md" +++ "b/content/zh/docs/Administration/\347\256\241\347\220\206\347\263\273\347\273\237\350\277\233\347\250\213.md" @@ -1,3 +1,6 @@ -# 管理系统进程 +# 管理系统进程 操作系统管理多个用户的请求和多个任务。大多数系统都只有一个CPU和一个主要存储,但一个系统可能有多个二级存储磁盘和多个输入/输出设备。操作系统管理这些资源并在多个用户间共享资源,当用户提出一个请求时,造成好像系统被用户独占的假象。实际上操作系统监控着一个等待执行的任务队列,这些任务包括用户任务、操作系统任务、邮件和打印任务等。本节将从用户的角度讲述如何控制进程。 + + + diff --git "a/content/zh/docs/Administration/\347\256\241\347\220\206\350\275\257\344\273\266\345\214\205.md" "b/content/zh/docs/Administration/\347\256\241\347\220\206\350\275\257\344\273\266\345\214\205.md" index 0740a4de8679fd2f6a130b241bd08401b5e30d76..5244cb6be63eb643586973ea35713f724af16df3 100644 --- "a/content/zh/docs/Administration/\347\256\241\347\220\206\350\275\257\344\273\266\345\214\205.md" +++ "b/content/zh/docs/Administration/\347\256\241\347\220\206\350\275\257\344\273\266\345\214\205.md" @@ -1,4 +1,4 @@ -# 管理软件包 +# 管理软件包 使用dnf能够让您方便的进行查询、安装、删除软件包等操作。 @@ -80,7 +80,7 @@ Description : The Apache HTTP Server is a powerful, efficient, and extensible dnf install package_name ``` -您也可以通过添加软件包名字同时安装多个软件包。配置文件/etc/dnf/dnf.conf添加参数strict=False,运行dnf命令参数添加\--setopt=strict=0。请在root权限下执行如下命令: +您也可以通过添加软件包名字同时安装多个软件包。配置文件/etc/dnf/dnf.conf添加参数strict=False,运行dnf命令参数添加--setopt=strict=0。请在root权限下执行如下命令: ``` dnf install package_name package_name… --setopt=strict=0 @@ -92,6 +92,9 @@ dnf install package_name package_name… --setopt=strict=0 # dnf install httpd ``` +>![](public_sys-resources/icon-note.gif) **说明:** +>安装RPM包过程中,若出现安装失败,可参考“FAQ \> 安装时出现软件包冲突、文件冲突或缺少软件包导致安装失败”。 + ## 下载软件包 使用dnf下载软件包,请在root权限下输入如下命令: @@ -100,7 +103,7 @@ dnf install package_name package_name… --setopt=strict=0 dnf download package_name ``` -如果需要同时下载未安装的依赖,则加上\--resolve,使用命令如下: +如果需要同时下载未安装的依赖,则加上--resolve,使用命令如下: ``` dnf download --resolve package_name diff --git "a/content/zh/docs/Administration/\347\256\241\347\220\206\350\275\257\344\273\266\345\214\205\347\273\204.md" "b/content/zh/docs/Administration/\347\256\241\347\220\206\350\275\257\344\273\266\345\214\205\347\273\204.md" index 8199c11ce49b68c32faa067471bebd6bf896569e..1ef8acfebab3f1d477d60f53792e1b70ec5a963f 100644 --- "a/content/zh/docs/Administration/\347\256\241\347\220\206\350\275\257\344\273\266\345\214\205\347\273\204.md" +++ "b/content/zh/docs/Administration/\347\256\241\347\220\206\350\275\257\344\273\266\345\214\205\347\273\204.md" @@ -1,4 +1,4 @@ -# 管理软件包组 +# 管理软件包组 软件包集合是服务于一个共同的目的一组软件包,例如系统工具集等。使用dnf可以对软件包组进行安装/删除等操作,使相关操作更高效。 @@ -80,7 +80,7 @@ Group: Development Tools 要安装一个软件包组,请在root权限下执行如下命令: ``` -dnf group install group_name +dnf group install group_name ``` ``` diff --git "a/content/zh/docs/Administration/\347\256\241\347\220\206\350\277\233\347\250\213.md" "b/content/zh/docs/Administration/\347\256\241\347\220\206\350\277\233\347\250\213.md" index b65bbd64224c437c522dad01793470f20ef1219c..753244fec73fc6bf79e094ab8a4f41238372b565 100644 --- "a/content/zh/docs/Administration/\347\256\241\347\220\206\350\277\233\347\250\213.md" +++ "b/content/zh/docs/Administration/\347\256\241\347\220\206\350\277\233\347\250\213.md" @@ -1,3 +1,5 @@ -# 管理进程 +# 管理进程 本章介绍了Linux内核的进程管理方式,然后以实例的方式讲解了Linux提供的常用的进程控制命令、at和cron服务,以及进程查看命令。 + + diff --git "a/content/zh/docs/Administration/\347\256\241\347\220\206\351\200\273\350\276\221\345\215\267.md" "b/content/zh/docs/Administration/\347\256\241\347\220\206\351\200\273\350\276\221\345\215\267.md" new file mode 100644 index 0000000000000000000000000000000000000000..c2d6c96166eae767412bd22fd745293a4c87e0a8 --- /dev/null +++ "b/content/zh/docs/Administration/\347\256\241\347\220\206\351\200\273\350\276\221\345\215\267.md" @@ -0,0 +1,153 @@ +# 管理逻辑卷 + +## 创建逻辑卷 + +可通过lvcreate命令创建逻辑卷。 + +``` +lvcreate [option] vgname +``` + +其中: + +- option:命令参数选项。常用的参数选项有: + - -L:指定逻辑卷的大小,单位为“kKmMgGtT”字节。 + - -l:指定逻辑卷的大小(LE数)。 + - -n:指定要创建的逻辑卷名称。 + - -s:创建快照。 + +- vgname:要创建逻辑卷的卷组名称。 + +示例1:在卷组vg1中创建10G大小的逻辑卷。 + +``` +lvcreate -L 10G vg1 +``` + +示例1:在卷组vg1中创建200M的逻辑卷,并命名为lv1。 + +``` +lvcreate -L 200M -n lv1 vg1 +``` + +## 查看逻辑卷 + +可通过lvdisplay命令查看逻辑卷的信息,包括逻辑卷空间大小、读写状态和快照信息等属性。 + +``` +lvdisplay [option] [lvname] +``` + +其中: + +- option:命令参数选项。常用的参数选项有: + - -v:显示LE到PE的映射 + +- lvname:指定要显示属性的逻辑卷对应的设备文件。如果省略,则显示所有的逻辑卷属性。 + + >![](public_sys-resources/icon-note.gif) **说明:** + >逻辑卷对应的设备文件保存在卷组目录下,例如:在卷组vg1上创建一个逻辑卷lv1,则此逻辑卷对应的设备文件为/dev/vg1/lv1。 + + +示例:显示逻辑卷vg1的基本信息。 + +``` +lvdisplay /dev/vg1/lv1 +``` + +## 调整逻辑卷大小 + +可通过lvresize命令调整LVM逻辑卷的空间大小,可以增大空间和缩小空间。使用lvresize命令调整逻辑卷空间大小和缩小空间时需要谨慎,因为有可能导致数据丢失。 + +``` +lvresize [option] vgname +``` + +其中: + +- option:命令参数选项。常用的参数选项有: + - -L:指定逻辑卷的大小,单位为“kKmMgGtT”字节。 + - -l:指定逻辑卷的大小(LE数)。 + - -f:强制调整逻辑卷大小,不需要用户确认。 + +- lvname:指定要调整的逻辑卷名称。 + +示例1:为逻辑卷/dev/vg1/lv1增加200M空间。 + +``` +lvresize -L +200 /dev/vg1/lv1 +``` + +示例2:为逻辑卷/dev/vg1/lv1减少200M空间。 + +``` +lvresize -L -200 /dev/vg1/lv1 +``` + +## 扩展逻辑卷 + +可通过lvextend命令动态在线扩展逻辑卷的空间大小,而不中断应用程序对逻辑卷的访问。 + +``` +lvextend [option] lvname +``` + +其中: + +- option:命令参数选项。常用的参数选项有: + - -L:指定逻辑卷的大小,单位为“kKmMgGtT”字节。 + - -l:指定逻辑卷的大小(LE数)。 + - -f:强制调整逻辑卷大小,不需要用户确认。 + +- lvname:指定要扩展空间的逻辑卷的设备文件。 + +示例:为逻辑卷/dev/vg1/lv1增加100M空间。 + +``` +lvextend -L +100M /dev/vg1/lv1 +``` + +## 收缩逻辑卷 + +可通过vgreduce命令减少逻辑卷占用的空间大小。使用lvreduce命令收缩逻辑卷的空间大小有可能会删除逻辑卷上已有的数据,所以在操作前必须进行确认。 + +``` +lvreduce [option] lvname +``` + +其中: + +- option:命令参数选项。常用的参数选项有: + - -L:指定逻辑卷的大小,单位为“kKmMgGtT”字节。 + - -l:指定逻辑卷的大小(LE数)。 + - -f:强制调整逻辑卷大小,不需要用户确认。 + +- lvname:指定要扩展空间的逻辑卷的设备文件。 + +示例:将逻辑卷/dev/vg1/lv1的空间减少100M。 + +``` +lvreduce -L -100M /dev/vg1/lv1 +``` + +## 删除逻辑卷 + +可通过lvremove命令删除逻辑卷。如果逻辑卷已经使用mount命令加载,则不能使用lvremove命令删除。必须使用umount命令卸载后,逻辑卷方可被删除。 + +``` +lvremove [option] vgname +``` + +其中: + +- option:命令参数选项。常用的参数选项有: + - -f:强制删除逻辑卷,不需要用户确认。 + +- vgname:指定要删除的逻辑卷。 + +示例:删除逻辑卷/dev/vg1/lv1。 + +``` +lvremove /dev/vg1/lv1 +``` + diff --git "a/content/zh/docs/Administration/\347\272\246\346\235\237\351\231\220\345\210\266.md" "b/content/zh/docs/Administration/\347\272\246\346\235\237\351\231\220\345\210\266.md" index 489d3622d2fd0090fa288d1506c157b10b52d82d..dd685dd1425598888f20f3bbf06b4b2509d249a5 100644 --- "a/content/zh/docs/Administration/\347\272\246\346\235\237\351\231\220\345\210\266.md" +++ "b/content/zh/docs/Administration/\347\272\246\346\235\237\351\231\220\345\210\266.md" @@ -1,4 +1,4 @@ -# 约束限制 +# 约束限制 - chrony支持全局地址(global address),不支持链路本地地址(link-local address)。 - Firefox支持通过http/https协议访问全局地址(global address),不支持链路本地地址(link-local address)。 diff --git "a/content/zh/docs/Administration/\347\275\221\345\215\241down\346\216\211\344\271\213\345\220\216-IPv6\345\234\260\345\235\200\344\270\242\345\244\261.md" "b/content/zh/docs/Administration/\347\275\221\345\215\241down\346\216\211\344\271\213\345\220\216-IPv6\345\234\260\345\235\200\344\270\242\345\244\261.md" index cb5f33a9fd89fd4814000b4ca81f49a6e013f3aa..79435617290687cee8bf80e2fd1b666a2b9c9c68 100644 --- "a/content/zh/docs/Administration/\347\275\221\345\215\241down\346\216\211\344\271\213\345\220\216-IPv6\345\234\260\345\235\200\344\270\242\345\244\261.md" +++ "b/content/zh/docs/Administration/\347\275\221\345\215\241down\346\216\211\344\271\213\345\220\216-IPv6\345\234\260\345\235\200\344\270\242\345\244\261.md" @@ -1,4 +1,4 @@ -# 网卡down掉之后,IPv6地址丢失 +# 网卡down掉之后,IPv6地址丢失 ## 问题现象 diff --git "a/content/zh/docs/Administration/\350\216\267\345\217\226ISO\351\225\234\345\203\217.md" "b/content/zh/docs/Administration/\350\216\267\345\217\226ISO\351\225\234\345\203\217.md" index 7529f5d053f39c6ce52c2c01098bf6b811b15cfc..f5a58f87c35afbc54e703561af7cda715e73be4d 100644 --- "a/content/zh/docs/Administration/\350\216\267\345\217\226ISO\351\225\234\345\203\217.md" +++ "b/content/zh/docs/Administration/\350\216\267\345\217\226ISO\351\225\234\345\203\217.md" @@ -1,4 +1,4 @@ -# 获取ISO镜像 +# 获取ISO镜像 ## 获取包路径 diff --git "a/content/zh/docs/Administration/\350\247\222\350\211\262\346\216\210\346\235\203.md" "b/content/zh/docs/Administration/\350\247\222\350\211\262\346\216\210\346\235\203.md" new file mode 100644 index 0000000000000000000000000000000000000000..956baff7d3fb08fc8a71113195cfdc9a9c4fd173 --- /dev/null +++ "b/content/zh/docs/Administration/\350\247\222\350\211\262\346\216\210\346\235\203.md" @@ -0,0 +1,84 @@ +# 角色授权 + +可以使用GRANT语句来对角色授权。 + +对角色授予表的操作权限: + +``` +GRANT { { SELECT | INSERT | UPDATE | DELETE | REFERENCES | TRIGGER } [,...] | ALL [ PRIVILEGES ] } ON [ TABLE ] tablename [, ...] TO { rolename | GROUP groupname | PUBLIC } [, ...] [ WITH GRANT OPTION ] +``` + +对角色授予序列的操作权限: + +``` +GRANT { { USAGE | SELECT | UPDATE } [,...] | ALL [ PRIVILEGES ] } ON SEQUENCE sequencename [, ...] TO { rolename | GROUP groupname | PUBLIC } [, ...] [ WITH GRANT OPTION ] +``` + +对角色授予数据库的操作权限: + +``` +GRANT { { CREATE | CONNECT | TEMPORARY | TEMP } [,...] | ALL [ PRIVILEGES ] } ON DATABASE databasename [, ...] TO { rolename | GROUP groupname | PUBLIC } [, ...] [ WITH GRANT OPTION ] +``` + +对角色授予函数的操作权限: + +``` +GRANT { EXECUTE | ALL [ PRIVILEGES ] } ON FUNCTION funcname ( [ [ argmode ] [ argname ] argtype [, ...] ] ) [, ...] TO { rolename | GROUP groupname | PUBLIC } [, ...] [ WITH GRANT OPTION ] +``` + +对角色授予过程语言的操作权限: + +``` +GRANT { USAGE | ALL [ PRIVILEGES ] } ON LANGUAGE langname [, ...] TO { rolename | GROUP groupname | PUBLIC } [, ...] [ WITH GRANT OPTION ] +``` + +对角色授予模式的操作权限: + +``` +GRANT { { CREATE | USAGE } [,...] | ALL [ PRIVILEGES ] } ON SCHEMA schemaname [, ...] TO { rolename | GROUP groupname | PUBLIC } [, ...] [ WITH GRANT OPTION ] +``` + +对角色授予表空间的操作权限: + +``` +GRANT { CREATE | ALL [ PRIVILEGES ] } ON TABLESPACE tablespacename [, ...] TO { rolename | GROUP groupname | PUBLIC } [, ...] [ WITH GRANT OPTION ] +``` + +将角色rolename1的成员关系赋予角色rolename2: + +``` +GRANT rolename1 [, ...] TO rolename2 [, ...] [ WITH ADMIN OPTION ] +``` + +其中: + +- SELECT、INSERT、UPDATE、DELETE、REFERENCES、TRIGGER、USAGE、CREATE、CONNECT、TEMPORARY、TEMP、EXECUTE、ALL \[ PRIVILEGES \]:用户的操作权限,ALL \[ PRIVILEGES \]表示所有的权限,PRIVILEGES关键字在 PostgreSQL里是可选的,但是严格的SQL 要求有这个关键字。 +- ON字句:用于指定权限授予的对象。 +- tablename:表名。 +- TO字句:用来指定被赋予权限的角色。 +- rolename、rolename1、rolename2:角色名。 +- groupname:角色组名。 +- PUBLIC:表示该权限要赋予所有角色,包括那些以后可能创建的用户。 +- WITH GRANT OPTION:表示权限的接收者也可以将此权限赋予他人,否则就不能授权他人。该选项不能赋予给PUBLIC。 +- sequencename:序列名。 +- databasename:数据库名。 +- funcname \( \[ \[ argmode \] \[ argname \] argtype \[, ...\] \] \):函数名及其参数。 +- langname:过程语言名。 +- schemaname:模式名。 +- tablespacename:表空间名。 +- WITH ADMIN OPTION:表示成员随后就可以将角色的成员关系赋予其它角色,以及撤销其它角色的成员关系。 + +## 示例 + +\#对userexample授予数据库database1的CREATE权限。 + +``` +# GRANT CREATE ON DATABASE database1 TO userexample; +``` + +\#对所有用户授予表table1的所有权限。 + +``` +# GRANT ALL PRIVILEGES ON TABLE table1 TO PUBLIC; +``` + diff --git "a/content/zh/docs/Administration/\350\256\276\347\275\256RAID0\345\215\267-\345\217\202\346\225\260stripsize\350\256\276\347\275\256\344\270\2724\346\227\266\345\207\272\351\224\231.md" "b/content/zh/docs/Administration/\350\256\276\347\275\256RAID0\345\215\267-\345\217\202\346\225\260stripsize\350\256\276\347\275\256\344\270\2724\346\227\266\345\207\272\351\224\231.md" index a2926dfaa3e10a7b32a2554f275c95584bef9206..e716e6121d4421f1ce1910d39cf117e867d214a5 100644 --- "a/content/zh/docs/Administration/\350\256\276\347\275\256RAID0\345\215\267-\345\217\202\346\225\260stripsize\350\256\276\347\275\256\344\270\2724\346\227\266\345\207\272\351\224\231.md" +++ "b/content/zh/docs/Administration/\350\256\276\347\275\256RAID0\345\215\267-\345\217\202\346\225\260stripsize\350\256\276\347\275\256\344\270\2724\346\227\266\345\207\272\351\224\231.md" @@ -1,4 +1,4 @@ -# 设置RAID0卷,参数stripsize设置为4时出错 +# 设置RAID0卷,参数stripsize设置为4时出错 ## 问题现象 diff --git "a/content/zh/docs/Administration/\350\256\276\347\275\256\346\216\245\345\217\243\350\256\276\345\244\207MTU\345\200\274.md" "b/content/zh/docs/Administration/\350\256\276\347\275\256\346\216\245\345\217\243\350\256\276\345\244\207MTU\345\200\274.md" index 195ebf5e6dacb153e906a12f02458ae5a65545db..e69b61fbfb356e7e573be71cdf333aa19a38a0dc 100644 --- "a/content/zh/docs/Administration/\350\256\276\347\275\256\346\216\245\345\217\243\350\256\276\345\244\207MTU\345\200\274.md" +++ "b/content/zh/docs/Administration/\350\256\276\347\275\256\346\216\245\345\217\243\350\256\276\345\244\207MTU\345\200\274.md" @@ -1,4 +1,4 @@ -# 设置接口设备MTU值 +# 设置接口设备MTU值 ## 概述 diff --git "a/content/zh/docs/Administration/\350\256\276\347\275\256\346\227\245\346\234\237\345\222\214\346\227\266\351\227\264.md" "b/content/zh/docs/Administration/\350\256\276\347\275\256\346\227\245\346\234\237\345\222\214\346\227\266\351\227\264.md" index fb7f43e2af97e19e61931c44ac3917022bcebb3a..edb6e1ac7d2a3eae8c8c52a6398e466744a7df35 100644 --- "a/content/zh/docs/Administration/\350\256\276\347\275\256\346\227\245\346\234\237\345\222\214\346\227\266\351\227\264.md" +++ "b/content/zh/docs/Administration/\350\256\276\347\275\256\346\227\245\346\234\237\345\222\214\346\227\266\351\227\264.md" @@ -1,3 +1,6 @@ -# 设置日期和时间 +# 设置日期和时间 本节介绍如何通过timedatectl、date、hwclock命令来设置系统的日期、时间和时区等。 + + + diff --git "a/content/zh/docs/Administration/\350\256\276\347\275\256\347\275\221\347\273\234\350\277\236\346\216\245.md" "b/content/zh/docs/Administration/\350\256\276\347\275\256\347\275\221\347\273\234\350\277\236\346\216\245.md" index f426a20cc7f4a6dbaddccd09d5a4b57f83b89938..665e14c75594b41813294644b44f3cc79fe09186 100644 --- "a/content/zh/docs/Administration/\350\256\276\347\275\256\347\275\221\347\273\234\350\277\236\346\216\245.md" +++ "b/content/zh/docs/Administration/\350\256\276\347\275\256\347\275\221\347\273\234\350\277\236\346\216\245.md" @@ -1,4 +1,4 @@ -# 设置网络连接 +# 设置网络连接 列出目前可用的网络连接: @@ -27,3 +27,5 @@ virbr0 bridge connected virbr0 lo loopback unmanaged -- virbr0-nic tun unmanaged -- ``` + + diff --git "a/content/zh/docs/Administration/\350\256\276\347\275\256\350\257\255\350\250\200\347\216\257\345\242\203.md" "b/content/zh/docs/Administration/\350\256\276\347\275\256\350\257\255\350\250\200\347\216\257\345\242\203.md" index 81df8885516ae7b485b12a21b0a939a9c06f71e1..4d4adf727a27fd1f65f2c1fa5fc728ee7a2c073d 100644 --- "a/content/zh/docs/Administration/\350\256\276\347\275\256\350\257\255\350\250\200\347\216\257\345\242\203.md" +++ "b/content/zh/docs/Administration/\350\256\276\347\275\256\350\257\255\350\250\200\347\216\257\345\242\203.md" @@ -1,4 +1,4 @@ -# 设置语言环境 +# 设置语言环境 您可以通过localectl修改系统的语言环境,对应的参数设置保存在/etc/locale.conf文件中。这些参数会在系统启动过程中被systemd的守护进程读取。 @@ -36,7 +36,7 @@ zh_CN.UTF-8 ## 设置语言环境 -要设置语言环境,在root权限下执行如下命令,其中 _locale_ 是您要设置的语言类型,请根据实际情况修改。 +要设置语言环境,在root权限下执行如下命令,其中 _locale_ 是您要设置的语言类型,取值范围可通过**localectl list-locales**获取,请根据实际情况修改。 ``` localectl set-locale LANG=locale diff --git "a/content/zh/docs/Administration/\350\256\276\347\275\256\351\224\256\347\233\230.md" "b/content/zh/docs/Administration/\350\256\276\347\275\256\351\224\256\347\233\230.md" index 123d0cf6537b939bb53488570c8fd2a2d2121acd..b8d603a54b110e1d7ea3d4bf1c0f61e14a64f938 100644 --- "a/content/zh/docs/Administration/\350\256\276\347\275\256\351\224\256\347\233\230.md" +++ "b/content/zh/docs/Administration/\350\256\276\347\275\256\351\224\256\347\233\230.md" @@ -1,4 +1,4 @@ -# 设置键盘 +# 设置键盘 您可以通过localectl修改系统的键盘设置,对应的参数设置保存在/etc/locale.conf文件中。这些参数,会在系统启动的早期被systemd的守护进程读取。 @@ -36,7 +36,7 @@ cn ## 设置键盘布局 -设置键盘布局,在root权限下执行如下命令,其中 _map_ 是您想要设置的键盘类型,请根据实际情况修改: +设置键盘布局,在root权限下执行如下命令,其中 _map_ 是您想要设置的键盘类型,取值范围可通过**localectl list-keymaps**获取,请根据实际情况修改: ``` localectl set-keymap map diff --git "a/content/zh/docs/Administration/\350\260\203\345\272\246\345\220\257\345\212\250\350\277\233\347\250\213.md" "b/content/zh/docs/Administration/\350\260\203\345\272\246\345\220\257\345\212\250\350\277\233\347\250\213.md" index 57991508459f1f54d20241c2ed2cf31e15a188c7..00efacc04f2a94de18df57277340c9ef2af0fcde 100644 --- "a/content/zh/docs/Administration/\350\260\203\345\272\246\345\220\257\345\212\250\350\277\233\347\250\213.md" +++ "b/content/zh/docs/Administration/\350\260\203\345\272\246\345\220\257\345\212\250\350\277\233\347\250\213.md" @@ -1,3 +1,6 @@ -# 调度启动进程 +# 调度启动进程 有时候需要对系统进行一些比较费时而且占用资源的维护工作,这些工作适合在深夜进行,这时候用户就可以事先进行调度安排,指定任务运行的时间或者场合,到时候系统会自动完成这些任务。要使用自动启动进程的功能,就需要掌握以下几个启动命令。 + + + diff --git "a/content/zh/docs/Administration/\350\275\257\344\273\266\344\273\213\347\273\215-10.md" "b/content/zh/docs/Administration/\350\275\257\344\273\266\344\273\213\347\273\215-10.md" new file mode 100644 index 0000000000000000000000000000000000000000..5ce6c07ffba6439350bba641dfd9990c120ec2bd --- /dev/null +++ "b/content/zh/docs/Administration/\350\275\257\344\273\266\344\273\213\347\273\215-10.md" @@ -0,0 +1,27 @@ +# 软件介绍 + +MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可。MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品,MariaDB还提供了许多更好的新特性。 + +MariaDB的架构如[图1](#fig13492418164520)所示。 + +**图 1** MariaDB逻辑架构 +![](figures/MariaDB逻辑架构.png "MariaDB逻辑架构") + +当Mariadb接受到Sql语句时,其详细的执行过程如下: + +1. 当客户端连接到mariadb的时候,会认证客户端的主机名、用户、密码,认证功能可以做成插件。 +2. 如果登录成功,客户端发送sql命令到服务端。由解析器解析sql语句。 +3. 服务端检查客户端是否有权限去获取它想要的资源。 +4. 如果查询已经存储在query cache当中,那么结果立即返回。 +5. 优化器将会找出最快的执行策略,或者是执行计划,也就是说优化器可以决定什么表将会被读,以及哪些索引会被访问,哪些临时表会被使用,一个好的策略能够减少大量的磁盘访问和排序操作等。 +6. 存储引擎读写数据和索引文件,cache用来加速这些操作,其他的诸如事物和外键特性,都是在存储引擎层处理的。 + +存储引擎在物理层管控数据,它负责数据文件、数据、索引、cache等的管理,这使得管理和读取数据变得更高效,每一张表,都有一个.frm文件,这些文件包含着表的定义。 + +每一个存储引擎管理、存储数据的方式都是不同的,所支持的特性和性能也不尽相同。例如: + +- MyISAM,适合读多写少的环境,且不支持事务,支持全文索引等。 +- noDB,支持事务,支持行锁和外键等。 +- MEMORY,将数据存储在内存当中。 +- CSV,将数据存储为CSV格式。 + diff --git "a/content/zh/docs/Administration/\350\275\257\344\273\266\344\273\213\347\273\215-29.md" "b/content/zh/docs/Administration/\350\275\257\344\273\266\344\273\213\347\273\215-29.md" new file mode 100644 index 0000000000000000000000000000000000000000..dbde0de5507dae32ff46c97fa01bba3b2f845f0e --- /dev/null +++ "b/content/zh/docs/Administration/\350\275\257\344\273\266\344\273\213\347\273\215-29.md" @@ -0,0 +1,8 @@ +# 软件介绍 + +MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle旗下产品。MySQL是业界最流行的RDBMS \(Relational Database Management System,关系数据库管理系统\)之一,尤其在WEB应用方面。 + +关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就加快了速度并提高了灵活性。 + +MySQL所使用的SQL语言是用于访问数据库的最常用标准化语言。MySQL软件采用了双授权模式,分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择MySQL作为网站数据库。 + diff --git "a/content/zh/docs/Administration/\350\275\257\344\273\266\344\273\213\347\273\215.md" "b/content/zh/docs/Administration/\350\275\257\344\273\266\344\273\213\347\273\215.md" new file mode 100644 index 0000000000000000000000000000000000000000..52dda625956a1a429889fa9adfff9f4f542f89d5 --- /dev/null +++ "b/content/zh/docs/Administration/\350\275\257\344\273\266\344\273\213\347\273\215.md" @@ -0,0 +1,82 @@ +# 软件介绍 + +## 简要介绍 + +PostgreSQL的架构如[图1](#fig26022387391)所示,主要进程说明如[表1](#table62020913417)所示。 + +**图 1** PostgreSql架构 +![](figures/PostgreSql架构.png "PostgreSql架构") + +**表 1** PostgreSql中的主要进程说明 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

进程类别

+

进程名称

+

说明

+

主进程

+

Postmaster

+

Postmaster是整个数据库实例的总控进程,负责启动和关闭该数据库实例。

+

常驻进程

+

Potgres(常驻进程)

+

管理后端的常驻进程,也称为“postmaster”。其默认监听UNIXDomain Socket和TCP/IP(Windows等,一部分的平台只监听TCP/IP)的5432端口,等待来自前端的的连接处理。监听的端口号可以在PostgreSql的设置文件postgresql.conf中修改。

+

子进程

+

Postgres(子进程)

+

子进程根据pg_hba.conf定义的安全策略来判断是否允许进行连接,根据策略,会拒绝某些特定的IP及网络,或者也可以只允许某些特定的用户或者对某些数据库进行连接。

+

Postgres会接受前端过来的查询,然后对数据库进行检索,最后把结果返回,有时也会对数据库进行更新。更新的数据同时还会记录在事务日志里面(PostgreSQL称为WAL日志)。这个主要是当停电、服务器宕机、重新启动的时候进行恢复处理的时候使用。另外,把日志归档保存起来,可在需要进行恢复的时候使用。在PostgreSQL 9.0以后,通过把WAL日志传送其他的postgreSQL,可以实时的进行数据库复制,这就是所谓的“数据库复制”功能。

+

辅助进程

+

SysLogger(系统日志)

+

需要在Postgres.conf中logging_collection设置为on,此时主进程才会启动Syslogger辅助进程。

+

BgWriter(后台写)

+

把共享内存中的脏页写到磁盘上的进程。主要是为了提高插入、更新和删除数据的性能。

+

WALWrite(预写式日志)

+

在修改数据之前把修改操作记录到磁盘中,以便后面更新实时数据时就不需要数据持久化到文件中。

+

PgArch(归档)

+

WAL日志会被循环使用,PgArch在归档前会把WAL日志备份出来。通过PITY(Point in Time Recovery)技术,可以对数据库进行一次全量备份后,该技术将备份时间点之后的WAL日志通过归档进行备份,使用数据库的全量备份再加上后面产生的WAL日志,即可把数据库向前推到全量备份后的任意一个时间点。

+

AutoVacuum(系统自动清理)

+

在PostgreSQL数据库中,对表进行DELETE操作后,旧的数据并不会立即被删除,并且,在更新数据时,也并不会在旧的数据上做更新,而是新生成一行数据。旧的数据只是被标识为删除状态,只有在没有并发的其他事务读到这些就数据时,它们才会被清除。这个清除工作就由AutoVacuum进程完成。

+

PgStat(统计收集)

+

做数据的统计收集工作。主要用于查询优化时的代价估算,包括一个表和索引进行了多少次的插入、更新、删除操作,磁盘块读写的次数、行的读次数。pg_statistic中存储了PgStat收集的各类信息。

+

CheckPoint(检查点)

+

检查点是系统设置的事务序列点,设置检查点保证检查点前的日志信息刷到磁盘中。

+
+ diff --git "a/content/zh/docs/Administration/\350\277\220\350\241\214-18.md" "b/content/zh/docs/Administration/\350\277\220\350\241\214-18.md" new file mode 100644 index 0000000000000000000000000000000000000000..eb20d3c44b8609559a4fb6b43808312c66102534 --- /dev/null +++ "b/content/zh/docs/Administration/\350\277\220\350\241\214-18.md" @@ -0,0 +1,28 @@ +# 运行 + +1. 开启mariadb服务器。 + + ``` + #systemctl start mariadb + ``` + +2. 初始化数据库。 + + ``` + #/usr/bin/mysql_secure_installation + ``` + + 命令执行过程中需要输入数据库的root设置的密码,若没有密码则直接按“Enter”。然后根据提示及实际情况进行设置。 + +3. 登录数据库。 + + ``` + # mysql -u root -p + ``` + + 命令执行后提示输入密码。密码为[2](#li197143190587)中设置的密码。 + + >![](public_sys-resources/icon-note.gif) **说明:** + >执行**\\q**或者**exit**可退出数据库。 + + diff --git "a/content/zh/docs/Administration/\350\277\220\350\241\214-38.md" "b/content/zh/docs/Administration/\350\277\220\350\241\214-38.md" new file mode 100644 index 0000000000000000000000000000000000000000..17d542797e2c9cf3254eae8dd30a4fd197119d93 --- /dev/null +++ "b/content/zh/docs/Administration/\350\277\220\350\241\214-38.md" @@ -0,0 +1,148 @@ +# 运行 + +1. 修改配置文件。 + 1. 创建my.cnf文件,其中文件路径(包括软件安装路径basedir、数据路径datadir等)根据实际情况修改。 + + ``` + #vi /etc/my.cnf + ``` + + 编辑my.cnf内容如下: + + ``` + [mysqld_safe] + log-error=/data/mysql/log/mysql.log + pid-file=/data/mysql/run/mysqld.pid + [mysqldump] + quick + [mysql] + no-auto-rehash + [client] + default-character-set=utf8 + [mysqld] + basedir=/usr/local/mysql + socket=/data/mysql/run/mysql.sock + tmpdir=/data/mysql/tmp + datadir=/data/mysql/data + default_authentication_plugin=mysql_native_password + port=3306 + user=mysql + ``` + + 2. 确保my.cnf配置文件修改正确。 + + ``` + #cat /etc/my.cnf + ``` + + ![](figures/zh-cn_image_0231563132.png) + + >![](public_sys-resources/icon-caution.gif) **注意:** + >其中basedir为软件安装路径,请根据实际情况修改。 + + 3. 修改/etc/my.cnf文件的组和用户为mysql:mysql + + ``` + #chown mysql:mysql /etc/my.cnf + ``` + +2. 配置环境变量。 + 1. 安装完成后,将MySQL二进制文件路径到PATH。 + + ``` + #echo export PATH=$PATH:/usr/local/mysql/bin >> /etc/profile + ``` + + >![](public_sys-resources/icon-caution.gif) **注意:** + >其中PATH中的“/usr/local/mysql/bin“路径,为MySQL软件安装目录下的bin文件的绝对路径。请根据实际情况修改。 + + 2. 使环境变量配置生效。 + + ``` + #source /etc/profile + ``` + +3. 初始化数据库。 + + >![](public_sys-resources/icon-note.gif) **说明:** + >本步骤倒数第2行中有初始密码,请注意保存,登录数据库时需要使用。 + + ``` + #mysqld --defaults-file=/etc/my.cnf --initialize + 2020-03-18T03:27:13.702385Z 0 [System] [MY-013169] [Server] /usr/local/mysql/bin/mysqld (mysqld 8.0.17) initializing of server in progress as process 34014 + 2020-03-18T03:27:24.112453Z 5 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: iNat=)#V2tZu + 2020-03-18T03:27:28.576003Z 0 [System] [MY-013170] [Server] /usr/local/mysql/bin/mysqld (mysqld 8.0.17) initializing of server has completed + ``` + + 查看打印信息,打印信息中包括“initializing of server has completed”表示初始化数据库完成,且打印信息中“A temporary password is generated for root@localhost: iNat=\)\#V2tZu”的“iNat=\)\#V2tZu”为初始密码。 + +4. 启动数据库。 + + >![](public_sys-resources/icon-caution.gif) **注意:** + >如果第一次启动数据库服务,以root用户启动数据库,则启动时会提示缺少mysql.log文件而导致失败。使用mysql用户启动之后,会在/data/mysql/log目录下生成mysql.log文件,再次使用root用户启动则不会报错。 + + 1. 修改文件权限。 + + ``` + #chmod 777 /usr/local/mysql/support-files/mysql.server + ``` + + 2. 启动MySQL。 + + ``` + #cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql + #chkconfig mysql on + ``` + + 以mysql用户启动数据库。 + + ``` + #su - mysql + $service mysql start + ``` + +5. 登录数据库。 + + >![](public_sys-resources/icon-note.gif) **说明:** + >- 提示输入密码时,请输入[3](#li15634560582)产生的初始密码。 + >- 如果采用官网RPM安装方式,则mysql文件在/usr/bin目录下。登录数据库的命令根据实际情况修改。 + + ``` + $/usr/local/mysql/bin/mysql -uroot -p -S /data/mysql/run/mysql.sock + ``` + + ![](figures/zh-cn_image_0231563134.png) + +6. 配置数据库帐号密码。 + 1. 登录数据库以后,修改通过root用户登录数据库的密码。 + + ``` + mysql>alter user 'root'@'localhost' identified by "123456"; + ``` + + 2. 创建全域root用户(允许root从其他服务器访问)。 + + ``` + mysql>create user 'root'@'%' identified by '123456'; + ``` + + 3. 进行授权。 + + ``` + mysql>grant all privileges on *.* to 'root'@'%'; + mysql>flush privileges; + ``` + + ![](figures/zh-cn_image_0231563135.png) + +7. 退出数据库。 + + 执行**\\q**或者**exit**退出数据库。 + + ``` + mysql>exit + ``` + + ![](figures/zh-cn_image_0231563136.png) + + diff --git "a/content/zh/docs/Administration/\350\277\220\350\241\214.md" "b/content/zh/docs/Administration/\350\277\220\350\241\214.md" new file mode 100644 index 0000000000000000000000000000000000000000..e97076f7c0644b8238d1bb5673fe3585a6c68829 --- /dev/null +++ "b/content/zh/docs/Administration/\350\277\220\350\241\214.md" @@ -0,0 +1 @@ +# 运行 diff --git "a/content/zh/docs/Administration/\351\200\200\345\207\272\346\225\260\346\215\256\345\272\223.md" "b/content/zh/docs/Administration/\351\200\200\345\207\272\346\225\260\346\215\256\345\272\223.md" new file mode 100644 index 0000000000000000000000000000000000000000..5db8572cbbadfd1cd9a5f9dad3a68542756d2749 --- /dev/null +++ "b/content/zh/docs/Administration/\351\200\200\345\207\272\346\225\260\346\215\256\345\272\223.md" @@ -0,0 +1,9 @@ +# 退出数据库 + +1. 执行\\q退出数据库。 + + ``` + postgres=#\q + ``` + + diff --git "a/content/zh/docs/Administration/\351\200\211\346\213\251\346\225\260\346\215\256\345\272\223-25.md" "b/content/zh/docs/Administration/\351\200\211\346\213\251\346\225\260\346\215\256\345\272\223-25.md" new file mode 100644 index 0000000000000000000000000000000000000000..a9bf54982ca07c0fdf86789ed03946d08563dbde --- /dev/null +++ "b/content/zh/docs/Administration/\351\200\211\346\213\251\346\225\260\346\215\256\345\272\223-25.md" @@ -0,0 +1,18 @@ +# 选择数据库 + +一般创建表,查询表等操作首先需要选择一个目标数据库。可以使用USE语句来选择数据库。 + +``` +USE databasename; +``` + +其中:databasename为数据库名称。 + +## 示例 + +\#选择databaseexample数据库。 + +``` +> USE databaseexample; +``` + diff --git "a/content/zh/docs/Administration/\351\200\211\346\213\251\346\225\260\346\215\256\345\272\223-50.md" "b/content/zh/docs/Administration/\351\200\211\346\213\251\346\225\260\346\215\256\345\272\223-50.md" new file mode 100644 index 0000000000000000000000000000000000000000..6f69df0ca2a6a7206ff090d80e78f3b0f940783a --- /dev/null +++ "b/content/zh/docs/Administration/\351\200\211\346\213\251\346\225\260\346\215\256\345\272\223-50.md" @@ -0,0 +1,18 @@ +# 选择数据库 + +一般创建表,查询表等操作首先需要选择一个目标数据库。可以使用USE语句来选择数据库。 + +``` +USE databasename; +``` + +其中:databasename为数据库名称。 + +## 示例 + +\#选择databaseexample数据库。 + +``` +> USE databaseexample; +``` + diff --git "a/content/zh/docs/Administration/\351\200\211\346\213\251\346\225\260\346\215\256\345\272\223.md" "b/content/zh/docs/Administration/\351\200\211\346\213\251\346\225\260\346\215\256\345\272\223.md" new file mode 100644 index 0000000000000000000000000000000000000000..097dac54758492946b00d2f5bbde36f29b60072f --- /dev/null +++ "b/content/zh/docs/Administration/\351\200\211\346\213\251\346\225\260\346\215\256\345\272\223.md" @@ -0,0 +1,18 @@ +# 选择数据库 + +可以使用\\c语句来选择数据库。 + +``` +\c databasename; +``` + +其中:databasename为数据库名称。 + +## 示例 + +\#选择databaseexample数据库。 + +``` +# \c databaseexample; +``` + diff --git "a/content/zh/docs/Administration/\351\200\232\350\277\207OpenSSL\351\205\215\347\275\256\346\226\207\344\273\266openssl-cnf\344\275\277\347\224\250KAE\345\274\225\346\223\216.md" "b/content/zh/docs/Administration/\351\200\232\350\277\207OpenSSL\351\205\215\347\275\256\346\226\207\344\273\266openssl-cnf\344\275\277\347\224\250KAE\345\274\225\346\223\216.md" new file mode 100644 index 0000000000000000000000000000000000000000..149538f2379d1b8422c3e2260a41f71b73b8ac10 --- /dev/null +++ "b/content/zh/docs/Administration/\351\200\232\350\277\207OpenSSL\351\205\215\347\275\256\346\226\207\344\273\266openssl-cnf\344\275\277\347\224\250KAE\345\274\225\346\223\216.md" @@ -0,0 +1,126 @@ +# 通过OpenSSL配置文件openssl.cnf使用KAE引擎 + +新建openssl.cnf 需要添加如下配置信息 + +``` +openssl_conf=openssl_def +[openssl_def] +engines=engine_section +[engine_section] +kae=kae_section +[kae_section] +engine_id=kae +dynamic_path=/usr/local/lib/engines-1.1/kae.so +KAE_CMD_ENABLE_ASYNC=1 # 0,表示不使能异步功能,1表示使能异步功能,默认使能 +default_algorithms=ALL +init=1 +``` + +导出OPENSSL\_CONF环境变量: + +``` +export OPENSSL_CONF=/home/app/openssl.cnf #该路径为openssl.cnf存放路径 +``` + +使用OpenSSL配置文件示例如下: + +``` +#include +``` + +``` +#include +``` + +``` + +``` + +``` +/* OpenSSL headers */ +``` + +``` +#include +``` + +``` +#include +``` + +``` +#include +``` + +``` +#include +``` + +``` + +``` + +``` +int main(int argc, char **argv) +``` + +``` +{ +``` + +``` + /* Initializing OpenSSL */ +``` + +``` + SSL_load_error_strings(); +``` + +``` + ERR_load_BIO_strings(); +``` + +``` +#Load openssl configure +``` + +``` +OPENSSL_init_crypto(OPENSSL_INIT_LOAD_CONFIG, NULL); OpenSSL_add_all_algorithms(); +``` + +``` + +``` + +``` + /*You can use ENGINE_by_id Function to get the handle of the Huawei Accelerator Engine*/ +``` + +``` + ENGINE *e = ENGINE_by_id("kae"); +``` + +``` + /*The user code*/ +``` + +``` + …… +``` + +``` + +``` + +``` +; +``` + +``` + ENGINE_free(e); +``` + +``` +; +``` + diff --git "a/content/zh/docs/Administration/\351\200\232\350\277\207ifcfg\346\226\207\344\273\266\351\205\215\347\275\256\347\275\221\347\273\234.md" "b/content/zh/docs/Administration/\351\200\232\350\277\207ifcfg\346\226\207\344\273\266\351\205\215\347\275\256\347\275\221\347\273\234.md" index 7f09c068a94346ab4e4b799f805582e64a863f3d..8c6181c33922326c43cfdc92e76dcb7c8333e4a3 100644 --- "a/content/zh/docs/Administration/\351\200\232\350\277\207ifcfg\346\226\207\344\273\266\351\205\215\347\275\256\347\275\221\347\273\234.md" +++ "b/content/zh/docs/Administration/\351\200\232\350\277\207ifcfg\346\226\207\344\273\266\351\205\215\347\275\256\347\275\221\347\273\234.md" @@ -1,11 +1,13 @@ -# 通过ifcfg文件配置网络 +# 通过ifcfg文件配置网络 + +>![](public_sys-resources/icon-note.gif) **说明:** +>通过ifcfg文件配置的网络配置不会立即生效,需要执行**systemctl reload NetworkManager**命令以重启网络服务后才生效。 ## 配置静态网络 以enp4s0网络接口进行静态网络设置为例,通过修改ifcfg文件实现,在/etc/sysconfig/network-scripts/目录中生成名为ifcfg-enp4s0的文件中,修改参数配置,示例如下: ``` - TYPE=Ethernet PROXY_METHOD=none BROWSER_ONLY=no @@ -56,3 +58,9 @@ DNS2=ip-address 其中ip-address是DNS服务器的地址。这样就会让网络服务使用指定的DNS服务器更新/etc/resolv.conf。 +## 配置默认网关 + +在确定默认网关时,首先解析 /etc/sysconfig/network 文件,然后解析 ifcfg 文件 ,将最后读取的 GATEWAY 的取值作为路由表中的默认路由。 + +在动态网络环境中,使用 NetworkManager 管理主机时,建议设置为由 DHCP 来分配。 + diff --git "a/content/zh/docs/Administration/\351\200\232\350\277\207\345\221\275\344\273\244\350\256\276\347\275\256.md" "b/content/zh/docs/Administration/\351\200\232\350\277\207\345\221\275\344\273\244\350\256\276\347\275\256.md" index 20e118c887382d3f08f2f691b2e9410811ab1001..1a3117099da3b481db33f0534b733a586e5c72c7 100644 --- "a/content/zh/docs/Administration/\351\200\232\350\277\207\345\221\275\344\273\244\350\256\276\347\275\256.md" +++ "b/content/zh/docs/Administration/\351\200\232\350\277\207\345\221\275\344\273\244\350\256\276\347\275\256.md" @@ -1 +1,4 @@ -# 通过命令设置 +# 通过命令设置 + + + diff --git "a/content/zh/docs/Administration/\351\203\250\347\275\262\350\277\234\347\253\257repo\346\272\220.md" "b/content/zh/docs/Administration/\351\203\250\347\275\262\350\277\234\347\253\257repo\346\272\220.md" index e208426c67a8a764ecd8bd946c48d9c61d57b8e3..b8873ca28a4c21fdf6ad5ee30aa95d569f0c4272 100644 --- "a/content/zh/docs/Administration/\351\203\250\347\275\262\350\277\234\347\253\257repo\346\272\220.md" +++ "b/content/zh/docs/Administration/\351\203\250\347\275\262\350\277\234\347\253\257repo\346\272\220.md" @@ -1,6 +1,3 @@ -# 部署远端repo源 - -安装操作系统openEuler1.0(openEuler-1.0-base-aarch64-dvd.iso),在openEuler1.0上通过nginx部署repo源。 - - +# 部署远端repo源 +安装openEuler操作系统,在openEuler上通过nginx部署repo源。 diff --git "a/content/zh/docs/Administration/\351\205\215\347\275\256-IP.md" "b/content/zh/docs/Administration/\351\205\215\347\275\256-IP.md" index f37dd74a1dd4eb485c3c49bc3922ffb2147b35ab..5796bf5e0aeb1c708e589c32b57c5e41128b6aae 100644 --- "a/content/zh/docs/Administration/\351\205\215\347\275\256-IP.md" +++ "b/content/zh/docs/Administration/\351\205\215\347\275\256-IP.md" @@ -1,2 +1,3 @@ -# 配置 IP +# 配置 IP + diff --git "a/content/zh/docs/Administration/\351\205\215\347\275\256DNF.md" "b/content/zh/docs/Administration/\351\205\215\347\275\256DNF.md" index 59171e5a90fd9498c45e9309947a09539759a6a7..e7830da5d32b8c0d542f130567c84d00e6f058b5 100644 --- "a/content/zh/docs/Administration/\351\205\215\347\275\256DNF.md" +++ "b/content/zh/docs/Administration/\351\205\215\347\275\256DNF.md" @@ -1 +1,4 @@ -# 配置DNF +# 配置DNF + + + diff --git "a/content/zh/docs/Administration/\344\275\277\347\224\250-ip-\345\221\275\344\273\244\351\205\215\347\275\256\347\275\221\347\273\234.md" "b/content/zh/docs/Administration/\351\205\215\347\275\256IP\345\234\260\345\235\200.md" similarity index 86% rename from "content/zh/docs/Administration/\344\275\277\347\224\250-ip-\345\221\275\344\273\244\351\205\215\347\275\256\347\275\221\347\273\234.md" rename to "content/zh/docs/Administration/\351\205\215\347\275\256IP\345\234\260\345\235\200.md" index 38549c79f2e1b175014872933cb9ce9e7f724dd6..9bb440646104060ff6be53192f505c01b5e12f0a 100644 --- "a/content/zh/docs/Administration/\344\275\277\347\224\250-ip-\345\221\275\344\273\244\351\205\215\347\275\256\347\275\221\347\273\234.md" +++ "b/content/zh/docs/Administration/\351\205\215\347\275\256IP\345\234\260\345\235\200.md" @@ -1,54 +1,51 @@ -# 使用 ip 命令配置网络 - -使用ip命令为接口配置地址,命令格式如下,其中 _interface-name_ 为网卡名称。 - -``` -ip addr [ add | del ] address dev interface-name -``` - -## 配置静态地址 - -在root权限下,配置设置IP地址,使用示例如下: - -``` -# ip address add 192.168.0.10/24 dev enp3s0 -``` - -查看配置结果,使用如下命令: - -``` -# ip addr show dev enp3s0 -2: enp3s0: mtu 1500 qdisc fq_codel state UP group default qlen 1000 - link/ether 52:54:00:aa:ad:4a brd ff:ff:ff:ff:ff:ff - inet 192.168.202.248/16 brd 192.168.255.255 scope global dynamic noprefixroute enp3s0 - valid_lft 9547sec preferred_lft 9547sec - inet 192.168.0.10/24 scope global enp3s0 - valid_lft forever preferred_lft forever - inet6 fe80::32e8:cc22:9db2:f4d4/64 scope link noprefixroute - valid_lft forever preferred_lft forever -``` - -## 配置多个地址 - -ip 命令支持为同一接口分配多个地址,可重复多次使用 ip 命令实现分配多个地址。使用示例如下: - -``` -# ip address add 192.168.2.223/24 dev enp4s0 -# ip address add 192.168.4.223/24 dev enp4s0 -# ip addr - -3: enp4s0: mtu 1500 qdisc fq_codel state UP group default qlen 1000 - link/ether 52:54:00:aa:da:e2 brd ff:ff:ff:ff:ff:ff - inet 192.168.203.12/16 brd 192.168.255.255 scope global dynamic noprefixroute enp4s0 - valid_lft 8389sec preferred_lft 8389sec - inet 192.168.2.223/24 scope global enp4s0 - valid_lft forever preferred_lft forever - inet 192.168.4.223/24 scope global enp4s0 - valid_lft forever preferred_lft forever - inet6 fe80::1eef:5e24:4b67:f07f/64 scope link noprefixroute - valid_lft forever preferred_lft forever -``` - ->![](public_sys-resources/icon-note.gif) **说明:** ->在系统重启后,通过 ip 命令进行的配置会丢失。 - +# 配置IP地址 + +使用ip命令为接口配置地址,命令格式如下,其中 _interface-name_ 为网卡名称。 + +``` +ip addr [ add | del ] address dev interface-name +``` + +## 配置静态地址 + +在root权限下,配置设置IP地址,使用示例如下: + +``` +# ip address add 192.168.0.10/24 dev enp3s0 +``` + +查看配置结果,使用如下命令: + +``` +# ip addr show dev enp3s0 +2: enp3s0: mtu 1500 qdisc fq_codel state UP group default qlen 1000 + link/ether 52:54:00:aa:ad:4a brd ff:ff:ff:ff:ff:ff + inet 192.168.202.248/16 brd 192.168.255.255 scope global dynamic noprefixroute enp3s0 + valid_lft 9547sec preferred_lft 9547sec + inet 192.168.0.10/24 scope global enp3s0 + valid_lft forever preferred_lft forever + inet6 fe80::32e8:cc22:9db2:f4d4/64 scope link noprefixroute + valid_lft forever preferred_lft forever +``` + +## 配置多个地址 + +ip 命令支持为同一接口分配多个地址,可重复多次使用 ip 命令实现分配多个地址。使用示例如下: + +``` +# ip address add 192.168.2.223/24 dev enp4s0 +# ip address add 192.168.4.223/24 dev enp4s0 +# ip addr + +3: enp4s0: mtu 1500 qdisc fq_codel state UP group default qlen 1000 + link/ether 52:54:00:aa:da:e2 brd ff:ff:ff:ff:ff:ff + inet 192.168.203.12/16 brd 192.168.255.255 scope global dynamic noprefixroute enp4s0 + valid_lft 8389sec preferred_lft 8389sec + inet 192.168.2.223/24 scope global enp4s0 + valid_lft forever preferred_lft forever + inet 192.168.4.223/24 scope global enp4s0 + valid_lft forever preferred_lft forever + inet6 fe80::1eef:5e24:4b67:f07f/64 scope link noprefixroute + valid_lft forever preferred_lft forever +``` + diff --git "a/content/zh/docs/Administration/\351\205\215\347\275\256vsftpd.md" "b/content/zh/docs/Administration/\351\205\215\347\275\256vsftpd.md" index 2c1ed7410fb3ea815c4692ca7e2d7de86bcbaee3..b17cba8f8d71cf6e2f3acd621d85b3a0464f5202 100644 --- "a/content/zh/docs/Administration/\351\205\215\347\275\256vsftpd.md" +++ "b/content/zh/docs/Administration/\351\205\215\347\275\256vsftpd.md" @@ -1 +1 @@ -# 配置vsftpd +# 配置vsftpd diff --git "a/content/zh/docs/Administration/\351\205\215\347\275\256\344\270\273\346\234\272\345\220\215.md" "b/content/zh/docs/Administration/\351\205\215\347\275\256\344\270\273\346\234\272\345\220\215.md" index 2a2efb265822a4288985ee3de40b6a1cd21cb1ca..a781d6046f314d61341472822739d7be0fea2c3f 100644 --- "a/content/zh/docs/Administration/\351\205\215\347\275\256\344\270\273\346\234\272\345\220\215.md" +++ "b/content/zh/docs/Administration/\351\205\215\347\275\256\344\270\273\346\234\272\345\220\215.md" @@ -1 +1,3 @@ -# 配置主机名 +# 配置主机名 + + diff --git "a/content/zh/docs/Administration/\351\205\215\347\275\256\345\212\250\346\200\201IP\350\277\236\346\216\245.md" "b/content/zh/docs/Administration/\351\205\215\347\275\256\345\212\250\346\200\201IP\350\277\236\346\216\245.md" index 5033497a2e24ffd1f1faa7a5775ebe72b8edbd8b..5784fa880aafc9a6f5c521438d9247a01db97269 100644 --- "a/content/zh/docs/Administration/\351\205\215\347\275\256\345\212\250\346\200\201IP\350\277\236\346\216\245.md" +++ "b/content/zh/docs/Administration/\351\205\215\347\275\256\345\212\250\346\200\201IP\350\277\236\346\216\245.md" @@ -1,4 +1,4 @@ -# 配置动态IP连接 +# 配置动态IP连接 ## 配置IP diff --git "a/content/zh/docs/Administration/\351\205\215\347\275\256\346\225\260\346\215\256\345\272\223\350\264\246\345\217\267\345\257\206\347\240\201.md" "b/content/zh/docs/Administration/\351\205\215\347\275\256\346\225\260\346\215\256\345\272\223\350\264\246\345\217\267\345\257\206\347\240\201.md" new file mode 100644 index 0000000000000000000000000000000000000000..ef25c40c771fa8eb6879f9c35bcd4a6972d10968 --- /dev/null +++ "b/content/zh/docs/Administration/\351\205\215\347\275\256\346\225\260\346\215\256\345\272\223\350\264\246\345\217\267\345\257\206\347\240\201.md" @@ -0,0 +1,11 @@ +# 配置数据库账号密码 + +1. 登录后,设置postgres密码。 + + ``` + postgres=#alter user postgres with password '123456'; + ``` + + ![](figures/zh-cn_image_0230050789.png) + + diff --git "a/content/zh/docs/Administration/\351\205\215\347\275\256\346\226\207\344\273\266\350\257\264\346\230\216-7.md" "b/content/zh/docs/Administration/\351\205\215\347\275\256\346\226\207\344\273\266\350\257\264\346\230\216-7.md" new file mode 100644 index 0000000000000000000000000000000000000000..cab7525db19fa18e382370cd460fdaef25891fbc --- /dev/null +++ "b/content/zh/docs/Administration/\351\205\215\347\275\256\346\226\207\344\273\266\350\257\264\346\230\216-7.md" @@ -0,0 +1,39 @@ +# 配置文件说明 + +当nginx服启动后,默认情况下它会读取如[表1](#table24341012096)所示的配置文件。 + +**表 1** 配置文件说明 + + + + + + + + + + + + + +

文件

+

说明

+

/etc/nginx/nginx.conf

+

主要的配置文件

+

/etc/nginx/conf.d

+

配置文件的辅助目录,这些配置文件也被包含在主配置文件当中

+

一个配置文件的辅助目录被包含在主要的配置文件中

+
+ +虽然默认配置可以适用于多数情况,但是用户至少需要熟悉里面的一些重要配置项。配置文件修改完成后,可以使用如下命令检查配置文件可能出现的语法错误。 + +``` +# /usr/sbin/nginx -t +``` + +如果回显信息中有“syntax is ok”,说明配置文件语法正确。 + +>![](public_sys-resources/icon-note.gif) **说明:** +>- 在修改配置文件之前,请先备份原始文件,以便出现问题时能够快速恢复配置文件。 +>- 需要重启web服务,才能使修改后的配置文件生效。 + diff --git "a/content/zh/docs/Administration/\351\205\215\347\275\256\346\226\207\344\273\266\350\257\264\346\230\216.md" "b/content/zh/docs/Administration/\351\205\215\347\275\256\346\226\207\344\273\266\350\257\264\346\230\216.md" index 71e8ab075b66055b6f9f5aabf33aa40f4c222f48..01f178482b6475779ea440855251e2f26c3e11bc 100644 --- "a/content/zh/docs/Administration/\351\205\215\347\275\256\346\226\207\344\273\266\350\257\264\346\230\216.md" +++ "b/content/zh/docs/Administration/\351\205\215\347\275\256\346\226\207\344\273\266\350\257\264\346\230\216.md" @@ -1,4 +1,4 @@ -# 配置文件说明 +# 配置文件说明 当httpd服启动后,默认情况下它会读取如[表1](#table24341012096)所示的配置文件。 diff --git "a/content/zh/docs/Administration/\351\205\215\347\275\256\346\234\254\345\234\260\346\227\266\351\227\264.md" "b/content/zh/docs/Administration/\351\205\215\347\275\256\346\234\254\345\234\260\346\227\266\351\227\264.md" index b245bfaf1630b0e1debbb4cf1c37ab0f67dff9ca..cae66bda0a70c07ba4a0358bde010b581d4121df 100644 --- "a/content/zh/docs/Administration/\351\205\215\347\275\256\346\234\254\345\234\260\346\227\266\351\227\264.md" +++ "b/content/zh/docs/Administration/\351\205\215\347\275\256\346\234\254\345\234\260\346\227\266\351\227\264.md" @@ -1,4 +1,4 @@ -# 配置本地时间 +# 配置本地时间 ## 概述 diff --git "a/content/zh/docs/Administration/\351\205\215\347\275\256\346\254\242\350\277\216\344\277\241\346\201\257.md" "b/content/zh/docs/Administration/\351\205\215\347\275\256\346\254\242\350\277\216\344\277\241\346\201\257.md" index 8c64b378466f5ea4eca0d823b4fc5be3ce8ebb1d..bc1219c8e7f96dd442e66a319ddfbbb452568207 100644 --- "a/content/zh/docs/Administration/\351\205\215\347\275\256\346\254\242\350\277\216\344\277\241\346\201\257.md" +++ "b/content/zh/docs/Administration/\351\205\215\347\275\256\346\254\242\350\277\216\344\277\241\346\201\257.md" @@ -1,4 +1,4 @@ -# 配置欢迎信息 +# 配置欢迎信息 正常使用vsftpd服务,需要存在欢迎信息文件。设置vsftp的欢迎信息welcome.txt文件的操作步骤如下: diff --git "a/content/zh/docs/Administration/\351\205\215\347\275\256\347\216\257\345\242\203-11.md" "b/content/zh/docs/Administration/\351\205\215\347\275\256\347\216\257\345\242\203-11.md" new file mode 100644 index 0000000000000000000000000000000000000000..f128cf25ea9b32336e7e01c1cf9ec111bd1a6d8b --- /dev/null +++ "b/content/zh/docs/Administration/\351\205\215\347\275\256\347\216\257\345\242\203-11.md" @@ -0,0 +1,4 @@ +# 配置环境 + +>![](public_sys-resources/icon-note.gif) **说明:** +>以下环境配置仅为参考示例,具体配置视实际需求做配置 diff --git "a/content/zh/docs/Administration/\351\205\215\347\275\256\347\216\257\345\242\203-30.md" "b/content/zh/docs/Administration/\351\205\215\347\275\256\347\216\257\345\242\203-30.md" new file mode 100644 index 0000000000000000000000000000000000000000..64aefc2e35cf227bb441ea5a833321c2c2512442 --- /dev/null +++ "b/content/zh/docs/Administration/\351\205\215\347\275\256\347\216\257\345\242\203-30.md" @@ -0,0 +1,4 @@ +# 配置环境 + +>![](public_sys-resources/icon-note.gif) **说明:** +>以下环境配置仅为参考示例,具体配置视实际需求做配置 diff --git "a/content/zh/docs/Administration/\351\205\215\347\275\256\347\216\257\345\242\203.md" "b/content/zh/docs/Administration/\351\205\215\347\275\256\347\216\257\345\242\203.md" new file mode 100644 index 0000000000000000000000000000000000000000..6fd4fbdfe59694da3b3f7d6b6b28e745b188cae2 --- /dev/null +++ "b/content/zh/docs/Administration/\351\205\215\347\275\256\347\216\257\345\242\203.md" @@ -0,0 +1,4 @@ +# 配置环境 + +>![](public_sys-resources/icon-note.gif) **说明:** +>以下环境配置仅为参考示例,具体配置视实际需求做配置 diff --git "a/content/zh/docs/Administration/\351\205\215\347\275\256\347\263\273\347\273\237\345\270\220\345\217\267\347\231\273\345\275\225\346\235\203\351\231\220.md" "b/content/zh/docs/Administration/\351\205\215\347\275\256\347\263\273\347\273\237\345\270\220\345\217\267\347\231\273\345\275\225\346\235\203\351\231\220.md" index 98b0f0f6c4bfe1752de52d26dac14bb2a04d8c87..71d0b8fe7b65a5a9d496013930f6471e2361039f 100644 --- "a/content/zh/docs/Administration/\351\205\215\347\275\256\347\263\273\347\273\237\345\270\220\345\217\267\347\231\273\345\275\225\346\235\203\351\231\220.md" +++ "b/content/zh/docs/Administration/\351\205\215\347\275\256\347\263\273\347\273\237\345\270\220\345\217\267\347\231\273\345\275\225\346\235\203\351\231\220.md" @@ -1,4 +1,4 @@ -# 配置系统帐号登录权限 +# 配置系统帐号登录权限 一般情况下,用户需要限制部分帐号的登录权限。用户可根据需要进行配置。 diff --git "a/content/zh/docs/Administration/\351\205\215\347\275\256\347\275\221\347\273\234.md" "b/content/zh/docs/Administration/\351\205\215\347\275\256\347\275\221\347\273\234.md" index af0e1f894454bab26dd090599440a29c16d513b6..3991e923bf8972269ded675bc8a8c57482e5b476 100644 --- "a/content/zh/docs/Administration/\351\205\215\347\275\256\347\275\221\347\273\234.md" +++ "b/content/zh/docs/Administration/\351\205\215\347\275\256\347\275\221\347\273\234.md" @@ -1 +1,4 @@ -# 配置网络 +# 配置网络 + + + diff --git "a/content/zh/docs/Administration/\351\205\215\347\275\256\347\275\221\347\273\234\347\273\221\345\256\232.md" "b/content/zh/docs/Administration/\351\205\215\347\275\256\347\275\221\347\273\234\347\273\221\345\256\232.md" index 7a6708b07429d944761bca06b13606d2327c1c72..101007629116000db2210a727ac10da55a1e2468 100644 --- "a/content/zh/docs/Administration/\351\205\215\347\275\256\347\275\221\347\273\234\347\273\221\345\256\232.md" +++ "b/content/zh/docs/Administration/\351\205\215\347\275\256\347\275\221\347\273\234\347\273\221\345\256\232.md" @@ -1 +1,3 @@ -# 配置网络绑定 +# 配置网络绑定 + + diff --git "a/content/zh/docs/Administration/\351\205\215\347\275\256\350\257\264\346\230\216.md" "b/content/zh/docs/Administration/\351\205\215\347\275\256\350\257\264\346\230\216.md" index a63de195ef5eaf518be4eb29358466cd0b0d743f..1a03b5ab09ca6fa09f70c4f7d9bbd586cbde50ed 100644 --- "a/content/zh/docs/Administration/\351\205\215\347\275\256\350\257\264\346\230\216.md" +++ "b/content/zh/docs/Administration/\351\205\215\347\275\256\350\257\264\346\230\216.md" @@ -1 +1 @@ -# 配置说明 +# 配置说明 diff --git "a/content/zh/docs/Administration/\351\205\215\347\275\256\351\230\262\347\201\253\345\242\231.md" "b/content/zh/docs/Administration/\351\205\215\347\275\256\351\230\262\347\201\253\345\242\231.md" index d428f7c44eac9778eea33844ed1f3beef61c6cea..a47c5f84a37991ba75ac5546a9257c7f9b518a29 100644 --- "a/content/zh/docs/Administration/\351\205\215\347\275\256\351\230\262\347\201\253\345\242\231.md" +++ "b/content/zh/docs/Administration/\351\205\215\347\275\256\351\230\262\347\201\253\345\242\231.md" @@ -1,4 +1,4 @@ -# 配置防火墙 +# 配置防火墙 如果要将FTP开放给Internet使用,需要对防火墙和SElinux进行设置。 diff --git "a/content/zh/docs/Administration/\351\205\215\347\275\256\351\235\231\346\200\201IP\350\277\236\346\216\245.md" "b/content/zh/docs/Administration/\351\205\215\347\275\256\351\235\231\346\200\201IP\350\277\236\346\216\245.md" index c1c91688ff73567a155c700d5aef692cbfec413f..8619de8a1ccc3e9a0e5b7b82f8e344079bef3d4a 100644 --- "a/content/zh/docs/Administration/\351\205\215\347\275\256\351\235\231\346\200\201IP\350\277\236\346\216\245.md" +++ "b/content/zh/docs/Administration/\351\205\215\347\275\256\351\235\231\346\200\201IP\350\277\236\346\216\245.md" @@ -1,4 +1,4 @@ -# 配置静态IP连接 +# 配置静态IP连接 ## 配置IP @@ -60,7 +60,7 @@ lo loopback unmanaged -- virbr0-nic tun unmanaged -- ``` -查看配置的连接详情,使用以下命令(使用 -p, \--pretty 选项在输出结果中添加标题和分段): +查看配置的连接详情,使用以下命令(使用 -p, --pretty 选项在输出结果中添加标题和分段): ``` # nmcli -p con show net-static diff --git "a/content/zh/docs/Administration/\351\235\231\346\200\201\350\267\257\347\224\261\345\217\212\351\273\230\350\256\244\347\275\221\345\205\263.md" "b/content/zh/docs/Administration/\351\205\215\347\275\256\351\235\231\346\200\201\350\267\257\347\224\261-0.md" similarity index 67% rename from "content/zh/docs/Administration/\351\235\231\346\200\201\350\267\257\347\224\261\345\217\212\351\273\230\350\256\244\347\275\221\345\205\263.md" rename to "content/zh/docs/Administration/\351\205\215\347\275\256\351\235\231\346\200\201\350\267\257\347\224\261-0.md" index 1003137452d9dcd4bc89aa486d086b2a5a2d0526..6fb4a113c64a1389765436a2ab0c2c595c1d2eb3 100644 --- "a/content/zh/docs/Administration/\351\235\231\346\200\201\350\267\257\347\224\261\345\217\212\351\273\230\350\256\244\347\275\221\345\205\263.md" +++ "b/content/zh/docs/Administration/\351\205\215\347\275\256\351\235\231\346\200\201\350\267\257\347\224\261-0.md" @@ -1,44 +1,38 @@ -# 静态路由及默认网关 - -## 配置静态路由 - -如果需要静态路由,可使用 ip route add 命令在路由表中添加,使用 ip route del 命令删除。最常使用的 ip route 命令格式如下: - -``` -ip route [ add | del | change | append | replace ] destination-address -``` - -使用 ip route 命令显示当前的 IP 路由表。示例如下: - -``` -# ip route - -default via 192.168.0.1 dev enp3s0 proto dhcp metric 100 -default via 192.168.0.1 dev enp4s0 proto dhcp metric 101 -192.168.0.0/16 dev enp3s0 proto kernel scope link src 192.168.202.248 metric 100 -192.168.0.0/16 dev enp4s0 proto kernel scope link src 192.168.203.12 metric 101 -192.168.122.0/24 dev virbr0 proto kernel scope link src 192.168.122.1 linkdown -``` - -在主机地址中添加一个静态路由,在 root 权限下,使用以下命令格式: - -``` -ip route add 192.168.2.1 via 10.0.0.1 [dev interface-name] -``` - -其中 192.168.2.1 是用点分隔的十进制符号中的 IP 地址,10.0.0.1 是下一个跃点,_interface-name_ 是进入下一个跃点的退出接口。 - -要在网络中添加一个静态路由,即代表 IP 地址范围的 IP 地址,请作为 root 运行以下命令格式: - -``` -ip route add 192.168.2.0/24 via 10.0.0.1 [dev interface-name] -``` - -其中 192.168.2.1 是目标网络的 IP 地址,10.0.0.1 是网络前缀,_interface-name_ 为网卡名称。 - -## 配置默认网关 - -在确定默认网关时,首先解析 /etc/sysconfig/network 文件,然后解析 ifcfg 文件 ,将最后读取的 GATEWAY 的取值作为路由表中的默认路由。 - -在动态网络环境中,使用 NetworkManager 管理主机时,建议设置为由 DHCP 来分配。 - +# 配置静态路由 + +## 配置静态路由 + +如果需要静态路由,可使用 ip route add 命令在路由表中添加,使用 ip route del 命令删除。最常使用的 ip route 命令格式如下: + +``` +ip route [ add | del | change | append | replace ] destination-address +``` + +使用 ip route 命令显示当前的 IP 路由表。示例如下: + +``` +# ip route + +default via 192.168.0.1 dev enp3s0 proto dhcp metric 100 +default via 192.168.0.1 dev enp4s0 proto dhcp metric 101 +192.168.0.0/16 dev enp3s0 proto kernel scope link src 192.168.202.248 metric 100 +192.168.0.0/16 dev enp4s0 proto kernel scope link src 192.168.203.12 metric 101 +192.168.122.0/24 dev virbr0 proto kernel scope link src 192.168.122.1 linkdown +``` + +在主机地址中添加一个静态路由,在 root 权限下,使用以下命令格式: + +``` +ip route add 192.168.2.1 via 10.0.0.1 [dev interface-name] +``` + +其中 192.168.2.1 是用点分隔的十进制符号中的 IP 地址,10.0.0.1 是下一个跃点,_interface-name_ 是进入下一个跃点的退出接口。 + +要在网络中添加一个静态路由,即代表 IP 地址范围的 IP 地址,请作为 root 运行以下命令格式: + +``` +ip route add 192.168.2.0/24 via 10.0.0.1 [dev interface-name] +``` + +其中 192.168.2.1 是目标网络的 IP 地址,10.0.0.1 是网络前缀,_interface-name_ 为网卡名称。 + diff --git "a/content/zh/docs/Administration/\351\205\215\347\275\256\351\235\231\346\200\201\350\267\257\347\224\261.md" "b/content/zh/docs/Administration/\351\205\215\347\275\256\351\235\231\346\200\201\350\267\257\347\224\261.md" index e85199eb9c98244aa4a5f87796f704105df63365..053d1aef5c14645030cfcfe7de41f108fbe65910 100644 --- "a/content/zh/docs/Administration/\351\205\215\347\275\256\351\235\231\346\200\201\350\267\257\347\224\261.md" +++ "b/content/zh/docs/Administration/\351\205\215\347\275\256\351\235\231\346\200\201\350\267\257\347\224\261.md" @@ -1,4 +1,4 @@ -# 配置静态路由 +# 配置静态路由 - 使用nmcli命令为网络连接配置静态路由,使用命令如下: diff --git "a/content/zh/docs/Administration/\351\252\214\350\257\201FTP\346\234\215\345\212\241\346\230\257\345\220\246\346\220\255\345\273\272\346\210\220\345\212\237.md" "b/content/zh/docs/Administration/\351\252\214\350\257\201FTP\346\234\215\345\212\241\346\230\257\345\220\246\346\220\255\345\273\272\346\210\220\345\212\237.md" index 44e03f6145179e5b01804fe0f04aca9e048dc56e..e22a89b8915cfbf455e9292e81cbb7a2fdaee554 100644 --- "a/content/zh/docs/Administration/\351\252\214\350\257\201FTP\346\234\215\345\212\241\346\230\257\345\220\246\346\220\255\345\273\272\346\210\220\345\212\237.md" +++ "b/content/zh/docs/Administration/\351\252\214\350\257\201FTP\346\234\215\345\212\241\346\230\257\345\220\246\346\220\255\345\273\272\346\210\220\345\212\237.md" @@ -1,4 +1,4 @@ -# 验证FTP服务是否搭建成功 +# 验证FTP服务是否搭建成功 可以使用openEuler提供的FTP客户端进行验证。命令和回显如下,根据提示输入用户名(用户为系统中存在的用户)和密码。如果显示Login successful,即说明FTP服务器搭建成功。 diff --git "a/content/zh/docs/Administration/\351\252\214\350\257\201web\346\234\215\345\212\241\346\230\257\345\220\246\346\220\255\345\273\272\346\210\220\345\212\237-8.md" "b/content/zh/docs/Administration/\351\252\214\350\257\201web\346\234\215\345\212\241\346\230\257\345\220\246\346\220\255\345\273\272\346\210\220\345\212\237-8.md" new file mode 100644 index 0000000000000000000000000000000000000000..21cb03e0ce48835b9f8056a552aaeb87fc455d3a --- /dev/null +++ "b/content/zh/docs/Administration/\351\252\214\350\257\201web\346\234\215\345\212\241\346\230\257\345\220\246\346\220\255\345\273\272\346\210\220\345\212\237-8.md" @@ -0,0 +1,75 @@ +# 验证web服务是否搭建成功 + +Web服务器搭建完成后,可以通过如下方式验证是否搭建成功。 + +1. 查看服务器的IP地址,命令如下: + + ``` + # ifconfig + ``` + + 回显信息如下,说明服务器IP为 192.168.1.60。 + + ``` + enp3s0: flags=4163 mtu 1500 + inet 192.168.1.60 netmask 255.255.255.0 broadcast 192.168.1.255 + inet6 fe80::5054:ff:fe95:499f prefixlen 64 scopeid 0x20 + ether 52:54:00:95:49:9f txqueuelen 1000 (Ethernet) + RX packets 150713207 bytes 49333673733 (45.9 GiB) + RX errors 0 dropped 43 overruns 0 frame 0 + TX packets 2246438 bytes 203186675 (193.7 MiB) + TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 + + enp4s0: flags=4163 mtu 1500 + ether 52:54:00:7d:80:9e txqueuelen 1000 (Ethernet) + RX packets 149937274 bytes 44652889185 (41.5 GiB) + RX errors 0 dropped 1102561 overruns 0 frame 0 + TX packets 0 bytes 0 (0.0 B) + TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 + + lo: flags=73 mtu 65536 + inet 127.0.0.1 netmask 255.0.0.0 + inet6 ::1 prefixlen 128 scopeid 0x10 + loop txqueuelen 1000 (Local Loopback) + RX packets 37096 bytes 3447369 (3.2 MiB) + RX errors 0 dropped 0 overruns 0 frame 0 + TX packets 37096 bytes 3447369 (3.2 MiB) + TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 + ``` + +2. 配置防火墙: + + ``` + # firewall-cmd --add-service=http --permanent + success + # firewall-cmd --reload + success + ``` + +3. 验证web服务器是否搭建成功,用户可选择Linux或Windows系统进行验证。 + - 使用Linux系统验证 + + 执行如下命令,查看是否可以访问网页信息,服务搭建成功时,该网页可以正常访问。 + + ``` + curl http://192.168.1.60 + ``` + + 执行如下命令,查看命令返回值是否为0,返回值为0,说明nginx服务器搭建成功。 + + ``` + echo $? + ``` + + - 使用Windows系统验证 + + 打开浏览器,在地址栏输入如下地址,如果能正常访问网页,说明nginx服务器搭建成功。 + + http://_192.168.1.60_ + + 如果修改了端口号,输入地址格式如下: + + http://_192.168.1.60:端口号_ + + + diff --git "a/content/zh/docs/Administration/\351\252\214\350\257\201web\346\234\215\345\212\241\346\230\257\345\220\246\346\220\255\345\273\272\346\210\220\345\212\237.md" "b/content/zh/docs/Administration/\351\252\214\350\257\201web\346\234\215\345\212\241\346\230\257\345\220\246\346\220\255\345\273\272\346\210\220\345\212\237.md" index efd5813573bfb7641cc8723697716f9551e36d0d..40f570294ff95c1f2eaaec9f294fdc6637a1eb88 100644 --- "a/content/zh/docs/Administration/\351\252\214\350\257\201web\346\234\215\345\212\241\346\230\257\345\220\246\346\220\255\345\273\272\346\210\220\345\212\237.md" +++ "b/content/zh/docs/Administration/\351\252\214\350\257\201web\346\234\215\345\212\241\346\230\257\345\220\246\346\220\255\345\273\272\346\210\220\345\212\237.md" @@ -1,4 +1,4 @@ -# 验证web服务是否搭建成功 +# 验证web服务是否搭建成功 Web服务器搭建完成后,可以通过如下方式验证是否搭建成功。 diff --git "a/content/zh/docs/Administration/\351\273\230\350\256\244\351\205\215\347\275\256\350\257\264\346\230\216.md" "b/content/zh/docs/Administration/\351\273\230\350\256\244\351\205\215\347\275\256\350\257\264\346\230\216.md" index c9febf8580f100c54b4a9b76ee39f61938c47eed..d32afce9039602175007248837f5c54e92833c91 100644 --- "a/content/zh/docs/Administration/\351\273\230\350\256\244\351\205\215\347\275\256\350\257\264\346\230\216.md" +++ "b/content/zh/docs/Administration/\351\273\230\350\256\244\351\205\215\347\275\256\350\257\264\346\230\216.md" @@ -1,4 +1,4 @@ -# 默认配置说明 +# 默认配置说明 >![](public_sys-resources/icon-note.gif) **说明:** >文档中的配置内容仅供参考,请用户根据实际情况(例如安全加固需要)进行修改。 diff --git "a/content/zh/docs/ApplicationDev/JDK\345\270\270\347\224\250\345\267\245\345\205\267\351\200\211\351\241\271.md" "b/content/zh/docs/ApplicationDev/JDK\345\270\270\347\224\250\345\267\245\345\205\267\351\200\211\351\241\271.md" new file mode 100644 index 0000000000000000000000000000000000000000..1007bfd1cfcec4bf48e8db2d556962fca5b259d8 --- /dev/null +++ "b/content/zh/docs/ApplicationDev/JDK\345\270\270\347\224\250\345\267\245\345\205\267\351\200\211\351\241\271.md" @@ -0,0 +1,253 @@ +# JDK常用工具选项 + +## javac编译选项 + +javac编译的命令格式为:**javac** \[_options_\] \[_sourcefiles_\] \[_classes_\] \[@_argfiles_\] + +其中: + +_options_:命令选项。 + +_sourcefiles_:一个或多个需要编译的源文件。 + +_classes_:一个或多个要为注释处理的类。 + +@_argfiles_:一个或多个列出选项和源文件的文件。这些文件中不允许有-J选项。 + +javac是java编译器,其_options_参数取值很多,但有些大部分并不常用,常用的_options_取值如[表1](#table1342946175212)所示。 + +**表 1** javac常用的编译选项 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

options取值

+

说明

+

示例

+

-d path

+

指定存放生成的类文件的路径

+

默认情况下,编译生成的类文件与源文件在同一路径下。使用-d选项可以将类文件输出到指定路径。

+

#使用-d选项将所有类文件输出到bin路径下

+

javac /src/*.java -d /bin

+

-s path

+

指定存放生成的源文件的路径

+

-

+

-cp path或-classpath path

+

搜索编译所需的class文件,指出编译所用到的class文件的位置。

+

#在Demo中要调用GetStringDemo类中的getLine()方法,而GetStringDemo类编译后的文件,即.class文件在bin目录下。

+

javac -cp bin Demo.java -d bin

+

-verbose

+

输出关于编译器正在执行的操作的消息,如加载的类信息和编译的源文件信息。

+

#输出关于编译器正在执行的操作的消息。

+

javac -verbose -cp bin Demo.java

+

-source sourceversion

+

指定查找输入源文件的位置。

+

-

+

-sourcepath path

+

用于搜索编译所需的源文件(即java文件),指定要搜索的源文件的位置,如jar、zip或其他包含java文件的目录。

+

-

+

-target targetversion

+

生成特定JVM版本的类文件。取值为1.1,1.2,1.3,1.4,1.5(或5),1.6(或6),1.7(或7),1.8(或8)。targetversion的默认取值与-source选项的sourceversion有关。sourceversion取值:

+
  • 1.2,targetversion为1.4;
  • 1.3,targetversion为1.4;
  • 1.5、1.6、1.7、未指定,targetversion为1.8。
  • 其他值,targetversionsourceversion取值相同。
+

-

+
+ +## java运行选项 + +java运行的格式为: + +运行类文件:**java** \[_options_\] _classesname_ \[args\] + +运行jar文件:**java** \[_options_\] -jar _filename_ \[args\] + +其中: + +_options_:命令选项,选项之间用空格分隔。 + +_classname_:运行的.class文件名。 + +_filename_:运行的.jar文件名。 + +args:传递给main\(\)函数的参数,参数之间用空格分隔。 + +java是运行java应用程序的工具,其_options_参数取值很多,但有些大部分并不常用,常用的_options_取值如[表2](#table371918587238)所示。 + +**表 2** java常用的运行选项 + + + + + + + + + + + + + + + + +

options取值

+

说明

+

示例

+

-cp path或-classpath path

+

指定要运行的文件所在的位置以及需要用到的类路径,包括jar、zip和class文件目录。

+

当路径有多个是,使用“:”分隔。

+

-

+

-verbose

+

输出关于编译器正在执行的操作的消息,如加载的类信息和编译的源文件信息。

+

#输出关于编译器正在执行的操作的消息。

+

java -verbose -cp bin Demo.java

+
+ +## jar打包选项 + +jar的命令格式为:**jar** \{c | t | x | u\}\[vfm0M\] \[_jarfile_\] \[_manifest_\] \[-C _dir_\] _file_... + +jar命令参数说明如[表3](#table3691718114817)所示。 + +**表 3** jar命令参数说明 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

参数

+

说明

+

示例

+

c

+

创建jar文件包。

+

#把当前目录的hello.class文件打包到Hello.jar,且不显示打包的过程。如果Hello.jar文件还不存在,就创建它,否则首先清空它。

+

jar cf Hello.jar hello.class

+

t

+

列出jar文件包的内容列表。

+

#列出Hello.jar包含的文件清单。

+

jar tf Hello.jar

+

x

+

展开jar文件包的指定文件或者所有文件。

+

#解压Hello.jar 到当前目录,不显示任何信息。

+

jar xf Hello.jar

+

u

+

更新已存在的jar文件包,如添加文件到jar文件包中。

+

-

+

v

+

生成详细报告并打印到标准输出。

+

#把当前目录的hello.class文件打包到Hello.jar,并显示打包的过程。如果Hello.jar文件还不存在,就创建它,否则首先清空它。

+

jar cvf Hello.jar hello.class

+

f

+

指定jar文件名,通常这个参数是必须的。

+

-

+

m

+

指定需要包含的manifest清单文件。

+

-

+

0

+

只存储,不压缩,这样产生的jar文件包会比不用该参数产生的体积大,但速度更快。

+

-

+

M

+

不产生所有项的manifest清单文件,此参数会忽略m参数

+

#把当前目录的hello.class文件打包到Hello.jar,并显示打包的过程。如果Hello.jar文件还不存在,就创建它,否则首先清空它。但在创建Hello.jar时不产生manifest 文件。

+

jar cvfM Hello.jar hello.class

+

jarfile

+

.jar文件包,它是f参数的附属参数。

+

-

+

manifest

+

.mf的manifest清单文件,它是m参数的附属参数

+

-

+

-C dir

+

转到指定dir下执行jar命令,只能配合参数c、t使用。

+

-

+

file

+

指定文件/路径列表,文件或路径下的所有文件(包括递归路径下的)都会被打入jar文件包中,或解压jar文件到路径下。

+

#把当前目录的所有class文件打包到Hello.jar,并显示打包的过程。如果Hello.jar文件还不存在,就创建它,否则首先清空它。

+

jar cvf Hello.jar *.class

+
+ diff --git a/content/zh/docs/ApplicationDev/Makefile.md b/content/zh/docs/ApplicationDev/Makefile.md new file mode 100644 index 0000000000000000000000000000000000000000..0c25b5ea7125411a00980214ecd6de6780cadd8b --- /dev/null +++ b/content/zh/docs/ApplicationDev/Makefile.md @@ -0,0 +1,55 @@ +# Makefile + +make是通过Makefile文件获取如何编译、链接和安装、清理的方法,从而实现将源代码文件生成可执行文件和其他相关文件的工具。因此,Makefile中描述了整个工程的编译和链接等规则,其中包含了哪些文件需要编译,哪些文件不需要编译,哪些文件需要先编译,哪些文件需要后编译,哪些文件需要重建等等。Makefile文件让工程编译实现了自动化,不需要每次都手动输入一堆源文件和参数。 + +本章简单介绍Makefile文件的结构和主要内容,更多Makefile的内容请通过**info make**命令查询 + +## Makefile结构 + +Makefile文件结构如下所示: + +_targets_:_prereguisites_ + +_command_ + +或者是: + +_targets_:_prerequisites_;_command_ + +_command_ + +其中: + +- _targets_:目标,可以是目标文件、可执行文件或标签。 +- _prerequisites_:依赖文件,生成targets需要的文件或者是目标。可以是多个,也可以是没有。 +- _command_:make需要执行的命令(任意的 shell 命令)。可以有多条命令,每一条命令占一行。 +- 目标和依赖文件之间要使用“:”分隔,命令的开始一定要按“Tab”。 + +Makefile文件结构表明了输出的目标,输出目标的依赖对象和生成目标需要执行的命令。 + +## Makefile主要内容 + +一个Makefile文件主要由以下内容组成。 + +- 显式规则 + + 明确写出来的依赖关系,如要生成的文件,文件的依赖文件,生成的命令。 + +- 隐含规则 + + 由make自动推导的规则,make命令支持自动推导功能。 + +- 变量的定义 +- 文件指示 + + 文件指示包括三部分: + + - include 其他 Makefile,如include xx.md。 + - 选择执行,如\#ifdef。 + - 定义多行命令,如define...endef。\(define ... endef\) + +- 注释 + + 以 “\#” 开头。 + + diff --git "a/content/zh/docs/ApplicationDev/OBS\347\256\200\344\273\213.md" "b/content/zh/docs/ApplicationDev/OBS\347\256\200\344\273\213.md" new file mode 100644 index 0000000000000000000000000000000000000000..d65bcf7435a8e5301f0be91e8c3a96dac10679d4 --- /dev/null +++ "b/content/zh/docs/ApplicationDev/OBS\347\256\200\344\273\213.md" @@ -0,0 +1,8 @@ +# OBS简介 + +OBS是基于openSUSE发行版的通用编译框架,用于将源码包构建为RPM软件包或Linux镜像。OBS采用自动化的分布式编译方式,支持多种Linux操作系统发行版(openEuler、SUSE、Debian等)镜像和安装包的编译,且支持在多种架构平台(x86、ARM64等)上编译。 + +OBS由后端和前端组成,后端实现所有核心功能,前端提供了网页应用和API,用于与后端进行交互。此外,OBS还有一个API命令行客户端osc,osc是在一个单独的存储库中开发的。 + +OBS使用工程组织软件包。基础的权限控制、相关的存仓库和构建目标(操作系统和架构)都可以在工程中定义。一个工程可以包含多个子工程,各个子工程可以独立配置,共同完成任务。 + diff --git a/content/zh/docs/ApplicationDev/application-development.md b/content/zh/docs/ApplicationDev/application-development.md new file mode 100644 index 0000000000000000000000000000000000000000..e78ebd9ca5de174c59a93c932a6d217d3d434a91 --- /dev/null +++ b/content/zh/docs/ApplicationDev/application-development.md @@ -0,0 +1 @@ +本文档简要介绍应用程序开发需要的常用工具,以指导用户使用openEuler并基于openEuler进行应用程序开发。 \ No newline at end of file diff --git "a/content/zh/docs/ApplicationDev/figures/Add-file\351\241\265\351\235\242.png" "b/content/zh/docs/ApplicationDev/figures/Add-file\351\241\265\351\235\242.png" new file mode 100644 index 0000000000000000000000000000000000000000..83f0bfaeeb9227bcbb863a93ab8d3535e2b2bc1d Binary files /dev/null and "b/content/zh/docs/ApplicationDev/figures/Add-file\351\241\265\351\235\242.png" differ diff --git "a/content/zh/docs/ApplicationDev/figures/Branch-Confirmation\351\241\265\351\235\242.png" "b/content/zh/docs/ApplicationDev/figures/Branch-Confirmation\351\241\265\351\235\242.png" new file mode 100644 index 0000000000000000000000000000000000000000..e66cbcd22217b74785381b85128ea61895194882 Binary files /dev/null and "b/content/zh/docs/ApplicationDev/figures/Branch-Confirmation\351\241\265\351\235\242.png" differ diff --git "a/content/zh/docs/ApplicationDev/figures/Create-Package\351\241\265\351\235\242.png" "b/content/zh/docs/ApplicationDev/figures/Create-Package\351\241\265\351\235\242.png" new file mode 100644 index 0000000000000000000000000000000000000000..36ea525856d428b6f88a338202e7cb59b2204fc0 Binary files /dev/null and "b/content/zh/docs/ApplicationDev/figures/Create-Package\351\241\265\351\235\242.png" differ diff --git "a/content/zh/docs/ApplicationDev/figures/RPM\350\275\257\344\273\266\345\214\205\344\270\213\350\275\275\351\241\265\351\235\242.png" "b/content/zh/docs/ApplicationDev/figures/RPM\350\275\257\344\273\266\345\214\205\344\270\213\350\275\275\351\241\265\351\235\242.png" new file mode 100644 index 0000000000000000000000000000000000000000..e5663b6259982541ae9350701326665f3dee43f6 Binary files /dev/null and "b/content/zh/docs/ApplicationDev/figures/RPM\350\275\257\344\273\266\345\214\205\344\270\213\350\275\275\351\241\265\351\235\242.png" differ diff --git "a/content/zh/docs/ApplicationDev/figures/Repositories\351\241\265\351\235\242.png" "b/content/zh/docs/ApplicationDev/figures/Repositories\351\241\265\351\235\242.png" new file mode 100644 index 0000000000000000000000000000000000000000..c64bfdd1bca838c5b72fa7bb7d73b525e8be79f6 Binary files /dev/null and "b/content/zh/docs/ApplicationDev/figures/Repositories\351\241\265\351\235\242.png" differ diff --git "a/content/zh/docs/ApplicationDev/figures/succeeded\347\232\204\351\241\265\351\235\242.png" "b/content/zh/docs/ApplicationDev/figures/succeeded\347\232\204\351\241\265\351\235\242.png" new file mode 100644 index 0000000000000000000000000000000000000000..3f10cd1db8bdc9be1ab8b660ef93e8a481c2d6b8 Binary files /dev/null and "b/content/zh/docs/ApplicationDev/figures/succeeded\347\232\204\351\241\265\351\235\242.png" differ diff --git a/content/zh/docs/Installation/figures/zh-cn_image_0220373221.png b/content/zh/docs/ApplicationDev/figures/zh-cn_image_0229243671.png similarity index 100% rename from content/zh/docs/Installation/figures/zh-cn_image_0220373221.png rename to content/zh/docs/ApplicationDev/figures/zh-cn_image_0229243671.png diff --git a/content/zh/docs/ApplicationDev/figures/zh-cn_image_0229243702.png b/content/zh/docs/ApplicationDev/figures/zh-cn_image_0229243702.png new file mode 100644 index 0000000000000000000000000000000000000000..96096879d161f04750a332e5c749a834c49d3173 Binary files /dev/null and b/content/zh/docs/ApplicationDev/figures/zh-cn_image_0229243702.png differ diff --git a/content/zh/docs/ApplicationDev/figures/zh-cn_image_0229243704.png b/content/zh/docs/ApplicationDev/figures/zh-cn_image_0229243704.png new file mode 100644 index 0000000000000000000000000000000000000000..267bc9508f3a065b5b40c367e745f0d8c3ddb5fa Binary files /dev/null and b/content/zh/docs/ApplicationDev/figures/zh-cn_image_0229243704.png differ diff --git a/content/zh/docs/ApplicationDev/figures/zh-cn_image_0229243712.png b/content/zh/docs/ApplicationDev/figures/zh-cn_image_0229243712.png new file mode 100644 index 0000000000000000000000000000000000000000..8d5a343524e14d11a3e2a94be4066fbb2d20599e Binary files /dev/null and b/content/zh/docs/ApplicationDev/figures/zh-cn_image_0229243712.png differ diff --git "a/content/zh/docs/ApplicationDev/figures/\345\210\233\345\273\272\350\275\257\344\273\266\345\214\205\344\277\241\346\201\257\345\241\253\345\206\231\351\241\265\351\235\242.png" "b/content/zh/docs/ApplicationDev/figures/\345\210\233\345\273\272\350\275\257\344\273\266\345\214\205\344\277\241\346\201\257\345\241\253\345\206\231\351\241\265\351\235\242.png" new file mode 100644 index 0000000000000000000000000000000000000000..0144be1f86e2a1d977881355022f7b5a5940cacb Binary files /dev/null and "b/content/zh/docs/ApplicationDev/figures/\345\210\233\345\273\272\350\275\257\344\273\266\345\214\205\344\277\241\346\201\257\345\241\253\345\206\231\351\241\265\351\235\242.png" differ diff --git "a/content/zh/docs/ApplicationDev/figures/\345\210\240\351\231\244\345\255\220\345\267\245\347\250\213\344\270\255\350\275\257\344\273\266\345\214\205.png" "b/content/zh/docs/ApplicationDev/figures/\345\210\240\351\231\244\345\255\220\345\267\245\347\250\213\344\270\255\350\275\257\344\273\266\345\214\205.png" new file mode 100644 index 0000000000000000000000000000000000000000..a365cd1f46bfb8bec094b79477c0168861a5193b Binary files /dev/null and "b/content/zh/docs/ApplicationDev/figures/\345\210\240\351\231\244\345\255\220\345\267\245\347\250\213\344\270\255\350\275\257\344\273\266\345\214\205.png" differ diff --git "a/content/zh/docs/ApplicationDev/java\347\250\213\345\272\217\347\224\237\346\210\220\346\265\201\347\250\213.md" "b/content/zh/docs/ApplicationDev/java\347\250\213\345\272\217\347\224\237\346\210\220\346\265\201\347\250\213.md" new file mode 100644 index 0000000000000000000000000000000000000000..c45e06f4f3e0f2c3a6a1ecf97221cdf5b01c39c2 --- /dev/null +++ "b/content/zh/docs/ApplicationDev/java\347\250\213\345\272\217\347\224\237\346\210\220\346\265\201\347\250\213.md" @@ -0,0 +1,7 @@ +# java程序生成流程 + +通过JDK将java源代码文件生成并运行Java程序,需要经过编译和运行。 + +1. 编译:是指使用Java编译器(javac)将java源代码文件(.java文件)编译为.class的字节码文件。 +2. 运行:是指在Java虚拟机上执行字节码文件。 + diff --git "a/content/zh/docs/ApplicationDev/make\345\267\245\344\275\234\346\265\201\347\250\213.md" "b/content/zh/docs/ApplicationDev/make\345\267\245\344\275\234\346\265\201\347\250\213.md" new file mode 100644 index 0000000000000000000000000000000000000000..82ea835a8054b142ac536367c50477462bc89746 --- /dev/null +++ "b/content/zh/docs/ApplicationDev/make\345\267\245\344\275\234\346\265\201\347\250\213.md" @@ -0,0 +1,10 @@ +# make工作流程 + +使用make由源代码文件生成可执行文件,需要经过如下步骤。 + +1. make命令会读入Makefile文件,包括当前目录下命名为"GNUmakefile" 、"makefile" 、"Makefile"的文件、被include的makefile文件、参数-f、--file、--makefile指定的规则文件。 +2. 初始化变量。 +3. 推导隐含规则,分析依赖关系,并创建依赖关系链。 +4. 根据依赖关系链,决定哪些目标需要重新生成。 +5. 执行生成命令,最终输出终极文件。 + diff --git "a/content/zh/docs/ApplicationDev/make\351\200\211\351\241\271.md" "b/content/zh/docs/ApplicationDev/make\351\200\211\351\241\271.md" new file mode 100644 index 0000000000000000000000000000000000000000..68082b99c330efb637fad39ebc4addb671f6ab9c --- /dev/null +++ "b/content/zh/docs/ApplicationDev/make\351\200\211\351\241\271.md" @@ -0,0 +1,106 @@ +# make选项 + +make命令格式为:**make** \[_option_\]... \[_targe_t\]... + +其中: + +_option_:参数选项。 + +_ftarget_:Makefile中指定的目标。 + +常用make的_option_取值如[表1](#table261872312343)所示。 + +**表 1** 常用的make选项 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

options取值

+

说明

+

-C dir,--directory=dir

+

指定make在开始运行后的工作目录为dir

+

当存在多个 -C 选项的时候,make 的最终工作目录是第一个目录的相对路径。

+

-d

+

make在执行的过程中打印出所有的调试信息。使用-d选项可以显示make构造依赖关系链、重建目标过程中的所有信息。

+

-e,--enveronment-overrides

+

使用环境变量定义覆盖Makefile中的同名变量定义。

+

-f file,--file=file

+

--makefile=file

+

指定file文件为make 执行的Makefile文件。

+

-p,--help

+

打印帮助信息。

+

-i,--ignore-errors

+

执行过程中忽略规则命令执行的错误。

+

-k,--keep-going

+

执行命令错误时不终止make的执行,make 尽最大可能执行所有的命令,直至出现知名的错误才终止。

+

-n,--just-print,--dry-run

+

按实际运行时的执行顺序模拟执行命令(包括用@开头的命令),没有实际执行效果,仅仅用于显示执行过程。

+

-o file,--old-file=file,--assume-old=file

+

指定file文件不需要重建,即使它的依赖已经过期,同时不重建此依赖文件的任何目标。

+

-p,--print-date-base

+

命令执行之前,打印出make读取的Makefile的所有数据,同时打印出 make的版本信息。如果只需要打印这些数据信息,可以使用 “make -qp”命令,查看 make 执行之前预设的规则和变量,可使用命令“make -p -f /dev/null”。

+

-r,--no-builtin-rules

+

忽略内嵌的隐含规则的使用,同时忽略所有后缀规则的隐含后缀列表。

+

-R,--no-builtin-variabes

+

忽略内嵌的隐含变量。

+

-s,--silent,--quiet

+

取消命令执行过程中的打印。

+

-S,--no-keep-going,--stop

+

取消 "-k" 的选项在递归的 make 过程中子 make 通过 "MAKEFLAGS" 变量继承了上层的命令行选项那个。我们可以在子 make 中使用“-S”选项取消上层传递的 "-k" 选项,或者取消系统环境变量 "MAKEFLAGS" 中 "-k"选项。

+

-t,--touch

+

更新所有的目标文件的时间戳到当前系统时间。防止 make 对所有过时目标文件的重建。

+

-v,version

+

查看make的版本信息。

+
+ diff --git a/content/zh/docs/ApplicationDev/public_sys-resources/icon-caution.gif b/content/zh/docs/ApplicationDev/public_sys-resources/icon-caution.gif new file mode 100644 index 0000000000000000000000000000000000000000..6e90d7cfc2193e39e10bb58c38d01a23f045d571 Binary files /dev/null and b/content/zh/docs/ApplicationDev/public_sys-resources/icon-caution.gif differ diff --git a/content/zh/docs/ApplicationDev/public_sys-resources/icon-danger.gif b/content/zh/docs/ApplicationDev/public_sys-resources/icon-danger.gif new file mode 100644 index 0000000000000000000000000000000000000000..6e90d7cfc2193e39e10bb58c38d01a23f045d571 Binary files /dev/null and b/content/zh/docs/ApplicationDev/public_sys-resources/icon-danger.gif differ diff --git a/content/zh/docs/ApplicationDev/public_sys-resources/icon-note.gif b/content/zh/docs/ApplicationDev/public_sys-resources/icon-note.gif new file mode 100644 index 0000000000000000000000000000000000000000..6314297e45c1de184204098efd4814d6dc8b1cda Binary files /dev/null and b/content/zh/docs/ApplicationDev/public_sys-resources/icon-note.gif differ diff --git a/content/zh/docs/ApplicationDev/public_sys-resources/icon-notice.gif b/content/zh/docs/ApplicationDev/public_sys-resources/icon-notice.gif new file mode 100644 index 0000000000000000000000000000000000000000..86024f61b691400bea99e5b1f506d9d9aef36e27 Binary files /dev/null and b/content/zh/docs/ApplicationDev/public_sys-resources/icon-notice.gif differ diff --git a/content/zh/docs/ApplicationDev/public_sys-resources/icon-tip.gif b/content/zh/docs/ApplicationDev/public_sys-resources/icon-tip.gif new file mode 100644 index 0000000000000000000000000000000000000000..93aa72053b510e456b149f36a0972703ea9999b7 Binary files /dev/null and b/content/zh/docs/ApplicationDev/public_sys-resources/icon-tip.gif differ diff --git a/content/zh/docs/ApplicationDev/public_sys-resources/icon-warning.gif b/content/zh/docs/ApplicationDev/public_sys-resources/icon-warning.gif new file mode 100644 index 0000000000000000000000000000000000000000..6e90d7cfc2193e39e10bb58c38d01a23f045d571 Binary files /dev/null and b/content/zh/docs/ApplicationDev/public_sys-resources/icon-warning.gif differ diff --git a/content/zh/docs/ApplicationDev/zh-cn_bookmap_0229243731.md b/content/zh/docs/ApplicationDev/zh-cn_bookmap_0229243731.md new file mode 100644 index 0000000000000000000000000000000000000000..c67d8a69ff4efa30b1daef6af6e2dd692e7a672c --- /dev/null +++ b/content/zh/docs/ApplicationDev/zh-cn_bookmap_0229243731.md @@ -0,0 +1,89 @@ +# 应用开发指南 + +- [法律声明](法律声明.md) +- [前言](前言.md) +- [开发环境准备](开发环境准备.md) + - [环境要求](环境要求.md) + - [配置repo源](配置repo源.md) + - [安装软件包](安装软件包.md) + - [安装JDK软件包](安装JDK软件包.md) + - [安装rpm-build软件包](安装rpm-build软件包.md) + + - [使用IDE进行Java开发](使用IDE进行Java开发.md) + - [简介](简介.md) + - [使用MobaXterm登录服务器](使用MobaXterm登录服务器.md) + - [设置JDK环境](设置JDK环境.md) + - [下载安装GTK库](下载安装GTK库.md) + - [设置X11 Forwarding](设置X11-Forwarding.md) + - [下载并运行IntelliJ IDEA](下载并运行IntelliJ-IDEA.md) + + +- [使用GCC编译](使用GCC编译.md) + - [简介](简介-0.md) + - [基本规则](基本规则.md) + - [文件类型](文件类型.md) + - [编译流程](编译流程.md) + - [编译选项](编译选项.md) + - [多源文件编译](多源文件编译.md) + + - [库](库.md) + - [动态链接库](动态链接库.md) + - [静态链接库](静态链接库.md) + + - [示例](示例.md) + - [使用GCC编译C程序示例](使用GCC编译C程序示例.md) + - [使用GCC创建和使用动态链接库示例](使用GCC创建和使用动态链接库示例.md) + - [使用GCC创建和使用静态链接库示例](使用GCC创建和使用静态链接库示例.md) + + +- [使用make编译](使用make编译.md) + - [简介](简介-1.md) + - [基本规则](基本规则-2.md) + - [文件类型](文件类型-3.md) + - [make工作流程](make工作流程.md) + - [make选项](make选项.md) + + - [Makefile](Makefile.md) + - [示例](示例-4.md) + - [使用Makefile实现编译的示例](使用Makefile实现编译的示例.md) + + +- [使用JDK编译](使用JDK编译.md) + - [简介](简介-5.md) + - [基本规则](基本规则-6.md) + - [文件类型及工具](文件类型及工具.md) + - [java程序生成流程](java程序生成流程.md) + - [JDK常用工具选项](JDK常用工具选项.md) + + - [类库](类库.md) + - [示例](示例-7.md) + - [编译不带包的java程序示例](编译不带包的java程序示例.md) + - [编译带包的java程序示例](编译带包的java程序示例.md) + + +- [构建RPM包](构建RPM包.md) + - [打包说明](打包说明.md) + - [本地构建](本地构建.md) + - [搭建开发环境](搭建开发环境.md) + - [创建Hello World RPM包](创建Hello-World-RPM包.md) + - [下载源码](下载源码.md) + - [编辑SPEC文件](编辑SPEC文件.md) + - [构建RPM包](构建RPM包-8.md) + + + - [使用OBS构建](使用OBS构建.md) + - [OBS简介](OBS简介.md) + - [在线构建软件包](在线构建软件包.md) + - [构建已有软件包](构建已有软件包.md) + - [新增软件包](新增软件包.md) + - [获取软件包](获取软件包.md) + + - [使用osc构建软件包](使用osc构建软件包.md) + - [安装并配置osc](安装并配置osc.md) + - [构建已有软件包](构建已有软件包-9.md) + - [新增软件包](新增软件包-10.md) + - [获取软件包](获取软件包-11.md) + + + + diff --git "a/content/zh/docs/ApplicationDev/\344\270\213\350\275\275\345\256\211\350\243\205GTK\345\272\223.md" "b/content/zh/docs/ApplicationDev/\344\270\213\350\275\275\345\256\211\350\243\205GTK\345\272\223.md" new file mode 100644 index 0000000000000000000000000000000000000000..001126943ef990ce1a9c291ec7d3f4b2019d6bc2 --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\344\270\213\350\275\275\345\256\211\350\243\205GTK\345\272\223.md" @@ -0,0 +1,14 @@ +# 下载安装GTK库 + +请确认您具有root权限后,运行如下命令: + +``` +# dnf list installed | grep gtk +``` + +如果显示gtk2或者gtk3,则表示您已安装该库,可以直接跳过进入下一步,否则运行如下命令自动下载安装gtk库。 + +``` +# dnf -y install gtk2 libXtst libXrender xauth +``` + diff --git "a/content/zh/docs/ApplicationDev/\344\270\213\350\275\275\345\271\266\350\277\220\350\241\214IntelliJ-IDEA.md" "b/content/zh/docs/ApplicationDev/\344\270\213\350\275\275\345\271\266\350\277\220\350\241\214IntelliJ-IDEA.md" new file mode 100644 index 0000000000000000000000000000000000000000..b12a9dda7f91cd1605254bbe37685ce4263cc907 --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\344\270\213\350\275\275\345\271\266\350\277\220\350\241\214IntelliJ-IDEA.md" @@ -0,0 +1,15 @@ +# 下载并运行IntelliJ IDEA + +在执行如上环境配置后,您就可以下载使用IntelliJ IDEA了。鉴于最新版的IntelliJ IDEA和openEuler系统在部分功能上有兼容性问题,建议您从此[链接](https://www.jetbrains.com/idea/download/other.html)下载2018版本linux压缩包。下载好后把压缩包移到您想要安装该软件的目录,对压缩包进行解压: + +``` +# tar xf ideaIC-2018.3.tar.gz +``` + +解压后切换到IntelliJ IDEA的目录下并运行。 + +``` +# cd ./idea-IC-183.4284.148 +# bin/idea.sh & +``` + diff --git "a/content/zh/docs/ApplicationDev/\344\270\213\350\275\275\346\272\220\347\240\201.md" "b/content/zh/docs/ApplicationDev/\344\270\213\350\275\275\346\272\220\347\240\201.md" new file mode 100644 index 0000000000000000000000000000000000000000..796df60dceb38fa5ef026283beb685c664957eec --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\344\270\213\350\275\275\346\272\220\347\240\201.md" @@ -0,0 +1,9 @@ +# 下载源码 + +我们直接下载官方例子的源码,使用如下命令: + +``` +# cd ~/rpmbuild/SOURCES +# wget http://ftp.gnu.org/gnu/hello/hello-2.10.tar.gz +``` + diff --git "a/content/zh/docs/ApplicationDev/\344\275\277\347\224\250GCC\345\210\233\345\273\272\345\222\214\344\275\277\347\224\250\345\212\250\346\200\201\351\223\276\346\216\245\345\272\223\347\244\272\344\276\213.md" "b/content/zh/docs/ApplicationDev/\344\275\277\347\224\250GCC\345\210\233\345\273\272\345\222\214\344\275\277\347\224\250\345\212\250\346\200\201\351\223\276\346\216\245\345\272\223\347\244\272\344\276\213.md" new file mode 100644 index 0000000000000000000000000000000000000000..f0c1bae17c5b92a3c3303474907f5dd0a591d20a --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\344\275\277\347\224\250GCC\345\210\233\345\273\272\345\222\214\344\275\277\347\224\250\345\212\250\346\200\201\351\223\276\346\216\245\345\272\223\347\244\272\344\276\213.md" @@ -0,0 +1,113 @@ +# 使用GCC创建和使用动态链接库示例 + +1. cd到代码目录,此处以用户“/home/code”进行举例。并在该目录下创建src,lib,include子目录,分别用于存放源文件,动态库文件和头文件。 + + ``` + cd /home/code + mkdir src + mkdir lib + mkdir include + ``` + +2. cd到/home/code/src目录,创建2个函数add.c、sub.c,分别实现加、减。 + + ``` + cd /home/code/src + vi add.c + vi sub.c + ``` + + add.c代码内容示例: + + ``` + #include "math.h" + int add(int a, int b) + { + return a+b; + } + ``` + + sub.c代码内容示例: + + ``` + #include "math.h" + int sub(int a, int b) + { + return a-b; + } + ``` + +3. 将add.c、sub.c源文件创建为动态库libmath.so,并将该动态库存放在/home/code/lib目录。 + + ``` + gcc -fPIC -shared add.c sub.c -o /home/code/lib/libmath.so + ``` + +4. cd到/home/code/include目录,创建1个头文件math.h,声明函数的头文件。 + + ``` + cd /home/code/include + vi math.h + ``` + + math.h代码内容示例: + + ``` + #ifndef __MATH_H_ + #define __MATH_H_ + int add(int a, int b); + int sub(int a, int b); + #endif + ``` + +5. cd到/home/code/src目录,创建一个调用add\(\)和sub\(\)的main.c函数。 + + ``` + cd /home/code/src + vi main.c + ``` + + math.c代码内容示例: + + ``` + #include + #include "math.h" + int main() + { + int a, b; + printf("Please input a and b:\n"); + scanf("%d %d", &a, &b); + printf("The add: %d\n", add(a,b)); + printf("The sub: %d\n", sub(a,b)); + return 0; + } + ``` + +6. 将main.c和libmath.so一起编译成math.out。 + + ``` + gcc main.c -I /home/code/include -L /home/code/lib -lmath -o math.out + ``` + +7. 将动态链接库所在的路径加入到环境变量中。 + + ``` + export LD_LIBRARY_PATH=/home/code/lib:$LD_LIBRARY_PATH + ``` + +8. 执行math.out。 + + ``` + ./math.out + ``` + + 执行结果如下所示: + + ``` + Please input a and b: + 9 2 + The add: 11 + The sub: 7 + ``` + + diff --git "a/content/zh/docs/ApplicationDev/\344\275\277\347\224\250GCC\345\210\233\345\273\272\345\222\214\344\275\277\347\224\250\351\235\231\346\200\201\351\223\276\346\216\245\345\272\223\347\244\272\344\276\213.md" "b/content/zh/docs/ApplicationDev/\344\275\277\347\224\250GCC\345\210\233\345\273\272\345\222\214\344\275\277\347\224\250\351\235\231\346\200\201\351\223\276\346\216\245\345\272\223\347\244\272\344\276\213.md" new file mode 100644 index 0000000000000000000000000000000000000000..6522bef08735cd7db413af1216618f328e739445 --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\344\275\277\347\224\250GCC\345\210\233\345\273\272\345\222\214\344\275\277\347\224\250\351\235\231\346\200\201\351\223\276\346\216\245\345\272\223\347\244\272\344\276\213.md" @@ -0,0 +1,113 @@ +# 使用GCC创建和使用静态链接库示例 + +1. cd到代码目录,此处以用户“/home/code”进行举例。并在该目录下创建src,lib,include子目录,分别用于存放源文件,动态库文件和头文件。 + + ``` + cd /home/code + mkdir src + mkdir lib + mkdir include + ``` + +2. cd到/home/code/src目录,创建2个函数add.c、sub.c,分别实现加、减。 + + ``` + cd /home/code/src + vi add.c + vi sub.c + ``` + + add.c代码内容示例: + + ``` + #include "math.h" + int add(int a, int b) + { + return a+b; + } + ``` + + sub.c代码内容示例: + + ``` + #include "math.h" + int sub(int a, int b) + { + return a-b; + } + ``` + +3. 将add.c、sub.c源文件编译为目标文件add.o、sub.o。 + + ``` + gcc -c add.c sub.c + ``` + +4. 将add.o、sub.o目标文件通过ar命令打包成静态库libmath.a,并将该动态库存放在/home/code/lib目录。 + + ``` + ar rcs /home/code/lib/libmath.a add.o sub.o + ``` + +5. cd到/home/code/include目录,创建1个头文件math.h,声明函数的头文件。 + + ``` + cd /home/code/include + vi math.h + ``` + + math.h代码内容示例: + + ``` + #ifndef __MATH_H_ + #define __MATH_H_ + int add(int a, int b); + int sub(int a, int b); + #endif + ``` + +6. cd到/home/code/src目录,创建一个调用add\(\)和sub\(\)的main.c函数。 + + ``` + cd /home/code/src + vi main.c + ``` + + math.c代码内容示例: + + ``` + #include + #include "math.h" + int main() + { + int a, b; + printf("Please input a and b:\n"); + scanf("%d %d", &a, &b); + printf("The add: %d\n", add(a,b)); + printf("The sub: %d\n", sub(a,b)); + return 0; + } + ``` + +7. 将main.c和libmath.a一起编译成math.out。 + + ``` + gcc main.c -I /home/code/include -L /home/code/lib -lmath -o math.out + ``` + +8. 执行math.out。 + + ``` + ./math.out + ``` + + 执行结果如下所示: + + ``` + Please input a and b: + 9 2 + The add: 11 + The sub: 7 + ``` + + diff --git "a/content/zh/docs/ApplicationDev/\344\275\277\347\224\250GCC\347\274\226\350\257\221.md" "b/content/zh/docs/ApplicationDev/\344\275\277\347\224\250GCC\347\274\226\350\257\221.md" new file mode 100644 index 0000000000000000000000000000000000000000..43f30110435a919c6123ecfdd8b069e616dc327f --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\344\275\277\347\224\250GCC\347\274\226\350\257\221.md" @@ -0,0 +1,6 @@ +# 使用GCC编译 + +本章介绍GCC编译的一些基本知识,并通过示例进行实际演示。更多的GCC知识请通过**man gcc**命令查询。 + + + diff --git "a/content/zh/docs/ApplicationDev/\344\275\277\347\224\250GCC\347\274\226\350\257\221C\347\250\213\345\272\217\347\244\272\344\276\213.md" "b/content/zh/docs/ApplicationDev/\344\275\277\347\224\250GCC\347\274\226\350\257\221C\347\250\213\345\272\217\347\244\272\344\276\213.md" new file mode 100644 index 0000000000000000000000000000000000000000..256dd38a3178d54f5938204d728f942748a71059 --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\344\275\277\347\224\250GCC\347\274\226\350\257\221C\347\250\213\345\272\217\347\244\272\344\276\213.md" @@ -0,0 +1,41 @@ +# 使用GCC编译C程序示例 + +1. cd到代码目录,此处以用户“/home/code”进行举例。如下所示: + + ``` + cd /home/code + ``` + +2. 编写Hello World程序,保存为helloworld.c,此处以编译Hello World程序进行举例说明。示例如下: + + ``` + vi helloworld.c + ``` + + 代码内容示例: + + ``` + #include + int main() + { + printf("Hello World!\n"); + return 0; + } + ``` + +3. 在代码目录,执行编译,使用命令: + + ``` + gcc helloworld.c -o helloworld + ``` + + 编译执行未报错,表明执行通过。 + +4. 编译完成后,会生成helloworld文件,查看编译结果,示例如下: + + ``` + # ./helloworld + Hello World! + ``` + + diff --git "a/content/zh/docs/ApplicationDev/\344\275\277\347\224\250IDE\350\277\233\350\241\214Java\345\274\200\345\217\221.md" "b/content/zh/docs/ApplicationDev/\344\275\277\347\224\250IDE\350\277\233\350\241\214Java\345\274\200\345\217\221.md" new file mode 100644 index 0000000000000000000000000000000000000000..971c2ddb724c77da98f9210b5fd64afb3dcc8faa --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\344\275\277\347\224\250IDE\350\277\233\350\241\214Java\345\274\200\345\217\221.md" @@ -0,0 +1,6 @@ +# 使用IDE进行Java开发 + +对于小型的Java程序,可以直接[使用JDK编译](使用JDK编译.md)得到可运行Java应用。但是对于大中型Java应用,这种方式已经无法满足开发者的需求。因此您可以参考如下步骤安装IDE并进行使用,以方便您在openEuler系统上的Java开发工作。 + + + diff --git "a/content/zh/docs/ApplicationDev/\344\275\277\347\224\250JDK\347\274\226\350\257\221.md" "b/content/zh/docs/ApplicationDev/\344\275\277\347\224\250JDK\347\274\226\350\257\221.md" new file mode 100644 index 0000000000000000000000000000000000000000..0129cde9ad178c7eb674a8d9f204812ac922f4fa --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\344\275\277\347\224\250JDK\347\274\226\350\257\221.md" @@ -0,0 +1,3 @@ +# 使用JDK编译 + + diff --git "a/content/zh/docs/ApplicationDev/\344\275\277\347\224\250Makefile\345\256\236\347\216\260\347\274\226\350\257\221\347\232\204\347\244\272\344\276\213.md" "b/content/zh/docs/ApplicationDev/\344\275\277\347\224\250Makefile\345\256\236\347\216\260\347\274\226\350\257\221\347\232\204\347\244\272\344\276\213.md" new file mode 100644 index 0000000000000000000000000000000000000000..4cb7935d168bfa4387396d54a8f5d861d1813e72 --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\344\275\277\347\224\250Makefile\345\256\236\347\216\260\347\274\226\350\257\221\347\232\204\347\244\272\344\276\213.md" @@ -0,0 +1,100 @@ +# 使用Makefile实现编译的示例 + +1. cd到代码目录,此处以用户“/home/code”进行举例。 + + ``` + cd /home/code + ``` + +2. 创建1个头文件hello.h和2个函数hello.c、main.c。 + + ``` + cd /home/code/ + ``` + + hello.h代码内容示例: + + ``` + #pragma once + #include + void hello(); + ``` + + hello.c代码内容示例: + + ``` + #include "hello.h" + void hello() + { + int i=1; + while(i<5) + { + printf("The %dth say hello.\n", i); + i++; + } + } + + ``` + + main.c代码内容示例: + + ``` + #include "hello.h" + #include + int main() + { + hello(); + return 0; + } + ``` + +3. 创建Makefile文件。 + + ``` + vi Makefile + ``` + + Makefile文件内容示例: + + ``` + main:main.o hello.o + gcc -o main main.o hello.o + main.o:main.c + gcc -c main.c + hello.o:hello.c + gcc -c hello.c + clean: + rm -f hello.o main.o main + ``` + +4. 执行make命令。 + + ``` + make + ``` + + 命令执行后,会打印Makefile中执行的命令。如果不需要打印该信息,可以在执行make命令是加上参数-s。 + + gcc -c main.c + + gcc -c hello.c + + gcc -o main main.o hello.o + +5. 执行./main目标。 + + ``` + ./main + ``` + + 命令执行后,打印如下信息: + + The 1th say hello. + + The 2th say hello. + + The 3th say hello. + + The 4th say hello. + + diff --git "a/content/zh/docs/ApplicationDev/\344\275\277\347\224\250MobaXterm\347\231\273\345\275\225\346\234\215\345\212\241\345\231\250.md" "b/content/zh/docs/ApplicationDev/\344\275\277\347\224\250MobaXterm\347\231\273\345\275\225\346\234\215\345\212\241\345\231\250.md" new file mode 100644 index 0000000000000000000000000000000000000000..a9bf8c15e50be87d870a56b51523f1dba3d4333e --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\344\275\277\347\224\250MobaXterm\347\231\273\345\275\225\346\234\215\345\212\241\345\231\250.md" @@ -0,0 +1,6 @@ +# 使用MobaXterm登录服务器 + +MobaXterm是一款非常优秀的SSH客户端,其自带X Server,可以轻松解决远程GUI显示问题。 + +您需要提前下载安装好MobaXterm并打开,然后SSH登录您的服务器并进行以下操作。 + diff --git "a/content/zh/docs/ApplicationDev/\344\275\277\347\224\250OBS\346\236\204\345\273\272.md" "b/content/zh/docs/ApplicationDev/\344\275\277\347\224\250OBS\346\236\204\345\273\272.md" new file mode 100644 index 0000000000000000000000000000000000000000..3102d90d2e4b888751293ebe9a10e9ddc1fb1159 --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\344\275\277\347\224\250OBS\346\236\204\345\273\272.md" @@ -0,0 +1,8 @@ +# 使用OBS构建 + +本章介绍通过网页和osc构建RPM软件包的方法。主要包括如下两类: + +- 修改已有软件包:修改已有软件包源代码,然后将修改后的源代码构建成一个RPM软件包。 +- 新增软件包:从无到有全新开发一个新的软件源文件,并将新开发的源文件构建成一个RPM软件包。 + + diff --git "a/content/zh/docs/ApplicationDev/\344\275\277\347\224\250make\347\274\226\350\257\221.md" "b/content/zh/docs/ApplicationDev/\344\275\277\347\224\250make\347\274\226\350\257\221.md" new file mode 100644 index 0000000000000000000000000000000000000000..3b8e675bdf62d277d093954358a403e55761944d --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\344\275\277\347\224\250make\347\274\226\350\257\221.md" @@ -0,0 +1,5 @@ +# 使用make编译 + +本章介绍make编译的一些基本知识,并通过示例进行实际演示。更多的make知识请通过**man make**命令查询。 + + diff --git "a/content/zh/docs/ApplicationDev/\344\275\277\347\224\250osc\346\236\204\345\273\272\350\275\257\344\273\266\345\214\205.md" "b/content/zh/docs/ApplicationDev/\344\275\277\347\224\250osc\346\236\204\345\273\272\350\275\257\344\273\266\345\214\205.md" new file mode 100644 index 0000000000000000000000000000000000000000..8e6e6d17e4c62d2866fd4224bd9459097dc3b076 --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\344\275\277\347\224\250osc\346\236\204\345\273\272\350\275\257\344\273\266\345\214\205.md" @@ -0,0 +1,6 @@ +# 使用osc构建软件包 + +本章介绍使用OBS的命令行工具osc创建工程并构建RPM软件包的方法。 + + + diff --git "a/content/zh/docs/ApplicationDev/\345\210\233\345\273\272Hello-World-RPM\345\214\205.md" "b/content/zh/docs/ApplicationDev/\345\210\233\345\273\272Hello-World-RPM\345\214\205.md" new file mode 100644 index 0000000000000000000000000000000000000000..1d24bf0f48c69be21fbc1e6b6e24e09eb9220421 --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\345\210\233\345\273\272Hello-World-RPM\345\214\205.md" @@ -0,0 +1,5 @@ +# 创建Hello World RPM包 + +这里以GNU“Hello World” 项目的打包过程作为示例,包含了典型的FOSS(Free and Open Source Software) 软件项目相关的最常用的外围组件,其中包括配置/编译/安装环境、文档、国际化等等。 + + diff --git "a/content/zh/docs/ApplicationDev/\345\211\215\350\250\200.md" "b/content/zh/docs/ApplicationDev/\345\211\215\350\250\200.md" new file mode 100644 index 0000000000000000000000000000000000000000..325fc6cf0d8e81b9cf8b08623bec159cdfa9146c --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\345\211\215\350\250\200.md" @@ -0,0 +1,93 @@ +# 前言 + +## 概述 + +本文档主要介绍如下四部分内容,以指导用户使用openEuler并基于openEuler进行代码开发。 + +- 在openEuler系统中安装和使用GCC编译器,并完成一个简单代码的开发、编译和执行。 +- 在openEuler系统中使用JDK自带工具完成代码的编译和执行。 +- 在openEuler系统中安装IntelliJ IDEA进行Java开发。 +- 在本地或使用OBS(Open Build Service)创建RPM(The RPM Package Manager)软件包的方法。 + +## 读者对象 + +本文档适用于所有使用openEuler操作系统进行代码开发的用户。用户需要具备如下经验或能力: + +- 具备Linux操作系统基础知识 +- 了解Linux命令行的基本使用方法 + +## 符号约定 + +在本文中可能出现下列标志,它们所代表的含义如下。 + + + + + + + + + + + + + +

符号

+

说明

+

+

用于传递设备或环境安全警示信息,若不避免,可能会导致设备损坏、数据丢失、设备性能降低或其它不可预知的结果。

+

“注意”不涉及人身伤害。

+

+

用于突出重要/关键信息、最佳实践和小窍门等。

+

“说明”不是安全警示信息,不涉及人身、设备及环境伤害。

+
+ +## 命令行格式约定 + +**表 1** 命令行格式的约定 + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

格式

+

含义

+

粗体

+

命令行关键字,即命令中保持不变、必须照输的部分,采用加粗字体表示。

+

斜体

+

命令行参数,即命令中必须由实际值进行替代的部分,采用斜体表示。

+

[ ]

+

用“[ ]”括起来的部分表示在命令配置时是可选的。

+

{ x | y | ... }

+

表示从两个或多个选项中选取一个。

+

[ x | y | ... ]

+

表示从两个或多个选项中选取一个或者不选。

+

{ x | y | ... }*

+

表示从两个或多个选项中选取多个,最少选取一个,最多选取所有选项。

+

[ x | y | ... ]*

+

表示从两个或多个选项中选取一个、多个或者不选。

+
+ diff --git "a/content/zh/docs/ApplicationDev/\345\212\250\346\200\201\351\223\276\346\216\245\345\272\223.md" "b/content/zh/docs/ApplicationDev/\345\212\250\346\200\201\351\223\276\346\216\245\345\272\223.md" new file mode 100644 index 0000000000000000000000000000000000000000..6425a076e89b9490921693bb8512db5d6ed21a12 --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\345\212\250\346\200\201\351\223\276\346\216\245\345\272\223.md" @@ -0,0 +1,44 @@ +# 动态链接库 + +使用-shared选项 和-fPIC选项,可直接使用源文件、汇编文件或者目标文件创建一个动态库。其中-fPIC 选项作用于编译阶段,在生成目标文件时就需要使用该选项,以生成位置无关的代码。 + +示例1:从源文件生成动态链接库。 + +``` +gcc -fPIC -shared test.c -o libtest.so +``` + +示例2:从目标文件生成动态链接库。 + +``` +gcc -fPIC -c test.c -o test.o +gcc -shared test.o -o libtest.so +``` + +将一个动态库链接到可执行文件,需要在命令行中列出动态库的名称。 + +示例:将main.c和libtest.so一起编译成 app.out,当 app.out 运行时,会动态地加载链接库 libtest.so。 + +``` +gcc main.c libtest.so -o app.out +``` + +这种方式是直接指定使用当前目录下的libtest.so文件。 + +若使用下面搜索动态库的方式,则为了确保程序在运行时能够链接到动态库,需要通过如下三种方法中的任一种实现。 + +- 将动态库保存在标准目录下,例如 /usr/lib。 +- 把动态库所在路径libaryDIR增加到环境变量LD\_LIBRARY\_PATH中 + + export LD\_LIBRARY\_PATH=libraryDIR:$LD\_LIBRARY\_PATH + + >![](public_sys-resources/icon-note.gif) **说明:** + >LD\_LIBRARY\_PATH为动态库的环境变量。当运行动态库时,若动态库不在缺省文件夹(/lib 和/usr/lib)下,则需要指定环境变量LD\_LIBRARY\_PATH。 + +- 把动态库所在路径libaryDIR增加 /etc/ld.so.conf中然后执行ldconfig或者以动态库所在路径libaryDIR为参数执行ldconfig。 + +``` +gcc main.c -L libraryDIR -ltest -o app.out +export LD_LIBRARY_PATH=libraryDIR:$LD_LIBRARY_PATH +``` + diff --git "a/content/zh/docs/ApplicationDev/\345\234\250\347\272\277\346\236\204\345\273\272\350\275\257\344\273\266\345\214\205.md" "b/content/zh/docs/ApplicationDev/\345\234\250\347\272\277\346\236\204\345\273\272\350\275\257\344\273\266\345\214\205.md" new file mode 100644 index 0000000000000000000000000000000000000000..9c365822cfc242fb7a2ea622d6e9db77e3d2bc37 --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\345\234\250\347\272\277\346\236\204\345\273\272\350\275\257\344\273\266\345\214\205.md" @@ -0,0 +1,6 @@ +# 在线构建软件包 + +本章介绍通过OBS网页端在线构建RPM软件包的方法。 + + + diff --git "a/content/zh/docs/ApplicationDev/\345\237\272\346\234\254\350\247\204\345\210\231-2.md" "b/content/zh/docs/ApplicationDev/\345\237\272\346\234\254\350\247\204\345\210\231-2.md" new file mode 100644 index 0000000000000000000000000000000000000000..1bcb9e55df3c4033066e79ce25736467b291e00d --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\345\237\272\346\234\254\350\247\204\345\210\231-2.md" @@ -0,0 +1,3 @@ +# 基本规则 + + diff --git "a/content/zh/docs/ApplicationDev/\345\237\272\346\234\254\350\247\204\345\210\231-6.md" "b/content/zh/docs/ApplicationDev/\345\237\272\346\234\254\350\247\204\345\210\231-6.md" new file mode 100644 index 0000000000000000000000000000000000000000..db565f03c04145966dce5fa16a8a5b7d37fe12cf --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\345\237\272\346\234\254\350\247\204\345\210\231-6.md" @@ -0,0 +1,3 @@ +# 基本规则 + + diff --git "a/content/zh/docs/ApplicationDev/\345\237\272\346\234\254\350\247\204\345\210\231.md" "b/content/zh/docs/ApplicationDev/\345\237\272\346\234\254\350\247\204\345\210\231.md" new file mode 100644 index 0000000000000000000000000000000000000000..a16de89db8e2865fe3b7a4af243a4d9505631b1a --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\345\237\272\346\234\254\350\247\204\345\210\231.md" @@ -0,0 +1,4 @@ +# 基本规则 + + + diff --git "a/content/zh/docs/ApplicationDev/\345\244\232\346\272\220\346\226\207\344\273\266\347\274\226\350\257\221.md" "b/content/zh/docs/ApplicationDev/\345\244\232\346\272\220\346\226\207\344\273\266\347\274\226\350\257\221.md" new file mode 100644 index 0000000000000000000000000000000000000000..da41ebf82480a31f7abe966515504624687d191e --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\345\244\232\346\272\220\346\226\207\344\273\266\347\274\226\350\257\221.md" @@ -0,0 +1,23 @@ +# 多源文件编译 + +多个源文件的编译方法有2种。 + +- 多个源文件一起编译。编译时需要所有文件重新编译。 + + 示例:将test1.c和tes2.c分别编译后链接成test可执行文件。 + + ``` + gcc test1.c test2.c -o test + ``` + +- 分别编译各个源文件,之后对编译后输出的目标文件链接。编译时只重新编译修改的文件,未修改的文件不用重新编译。 + + 示例:分别编译test1.c,test2.c,在将二者的目标文件test1.o,test2.o链接成test可执行文件。 + + ``` + gcc -c test1.c + gcc -c test2.c + gcc -o test1.o test2.o -o test + ``` + + diff --git "a/content/zh/docs/ApplicationDev/\345\256\211\350\243\205JDK\350\275\257\344\273\266\345\214\205.md" "b/content/zh/docs/ApplicationDev/\345\256\211\350\243\205JDK\350\275\257\344\273\266\345\214\205.md" new file mode 100644 index 0000000000000000000000000000000000000000..83415410fa8a0d3e3962434ced4baf575891124a --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\345\256\211\350\243\205JDK\350\275\257\344\273\266\345\214\205.md" @@ -0,0 +1,45 @@ +# 安装JDK软件包 + +1. 执行**dnf list installed | grep jdk** 查询JDK软件是否已安装。 + + ``` + dnf list installed | grep jdk + ``` + + 查看命令打印信息,若打印信息中包含“jdk”,表示该软件已经安装了,则不需要再安装。若无任何打印信息,则表示该软件未安装。 + +2. 清除缓存。 + + ``` + dnf clean all + ``` + +3. 创建缓存。 + + ``` + dnf makecache + ``` + +4. 查询可安装的JDK软件包。 + + ``` + dnf search jdk | grep jdk + ``` + + 查看命令打印信息,选择安装java-x.x.x-openjdk-devel.aarch64软件包。其中x.x.x为版本号。 + +5. 安装JDK软件包,以安装java-1.8.0-openjdk-devel软件包为例。 + + ``` + dnf install java-1.8.0-openjdk-devel.aarch64 + ``` + +6. 查询JDK软件版本。 + + ``` + java -version + ``` + + 查看打印信息,若打印信息中包括“openjdk version "1.8.0\_232"”信息,表示已正确安装,其中1.8.0\_232为版本号。 + + diff --git "a/content/zh/docs/ApplicationDev/\345\256\211\350\243\205rpm-build\350\275\257\344\273\266\345\214\205.md" "b/content/zh/docs/ApplicationDev/\345\256\211\350\243\205rpm-build\350\275\257\344\273\266\345\214\205.md" new file mode 100644 index 0000000000000000000000000000000000000000..02d607d904ff8883f16349911dbe79f7af3ca967 --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\345\256\211\350\243\205rpm-build\350\275\257\344\273\266\345\214\205.md" @@ -0,0 +1,35 @@ +# 安装rpm-build软件包 + +1. 执行**dnf list installed | grep rpm-build** 查询rpm-build软件是否已安装。 + + ``` + dnf list installed | grep rpm-build + ``` + + 查看命令打印信息,若打印信息中包含“rpm-build”,表示该软件已经安装了,则不需要再安装。若无任何打印信息,则表示该软件未安装。 + +2. 清除缓存。 + + ``` + dnf clean all + ``` + +3. 创建缓存。 + + ``` + dnf makecache + ``` + +4. 安装rpm-build软件包。 + + ``` + dnf install rpm-build + ``` + +5. 查询rpm-build软件版本。 + + ``` + rpmbuild --version + ``` + + diff --git "a/content/zh/docs/ApplicationDev/\345\256\211\350\243\205\345\271\266\351\205\215\347\275\256osc.md" "b/content/zh/docs/ApplicationDev/\345\256\211\350\243\205\345\271\266\351\205\215\347\275\256osc.md" new file mode 100644 index 0000000000000000000000000000000000000000..0051ea8bebe62be3ac0d1c7bb5a3fdbdb60435b2 --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\345\256\211\350\243\205\345\271\266\351\205\215\347\275\256osc.md" @@ -0,0 +1,43 @@ +# 安装并配置osc + +## 前提条件 + +需要root权限,已设置openEuler的repo软件源。 + +## 操作步骤 + +1. 使用root用户安装osc命令行工具及依赖。 + + ``` + # dnf install osc build + ``` + + >![](public_sys-resources/icon-note.gif) **说明:** + >编译RPM软件包的过程中会依赖build。 + +2. 配置osc。 + 1. 打开\~/.oscrc,命令如下: + + ``` + # vi ~/.oscrc + ``` + + 2. 在\~/.oscrc中添加user和pass字段,如下所示,它们的取值 _userName_ _和_ _passWord_ 分别是用户在OBS网页([https://build.openeuler.org/](https://build.openeuler.org/))上已经注册的账号和密码。 + + ``` + [general] + apiurl = https://build.openeuler.org + no_verify = 1 + [https://build.openeuler.org] + user=userName + pass=passWord + ``` + + 3. 如果域名build.openeuler.org无法解析,则可以在/etc/hosts文件中手动添加如下一行。其中, _ip-address_ 是obs的ip地址,为http://117.78.1.88/。 + + ``` + ip-address build.openeuler.org + ``` + + + diff --git "a/content/zh/docs/ApplicationDev/\345\256\211\350\243\205\350\275\257\344\273\266\345\214\205.md" "b/content/zh/docs/ApplicationDev/\345\256\211\350\243\205\350\275\257\344\273\266\345\214\205.md" new file mode 100644 index 0000000000000000000000000000000000000000..7bff722b1e381afeef4a28ecd5968edaf0aa1bd1 --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\345\256\211\350\243\205\350\275\257\344\273\266\345\214\205.md" @@ -0,0 +1,5 @@ +# 安装软件包 + +安装开发过程中需要用到的软件。不同的开发需要的软件不一样,但安装方法相同,本章以安装常用的几个软件包(JDK,rpm-build)为例。有些开发软件openEuler操作系统已默认自带,如GCC、GNU make。 + + diff --git "a/content/zh/docs/ApplicationDev/\345\272\223.md" "b/content/zh/docs/ApplicationDev/\345\272\223.md" new file mode 100644 index 0000000000000000000000000000000000000000..e1f1a9a4e33a2287bfc378e22c850c2dc7bf9441 --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\345\272\223.md" @@ -0,0 +1,25 @@ +# 库 + +库是写好的、现有的、成熟的、可以复用的代码。每个程序都要依赖很多基础的底层库。 + +库文件在命名时约定,以lib为前缀,以.so(动态库)或.a(静态库)为后缀,中间为库文件名。如libfoo.so或libfoo.a。由于所有的库文件都遵循了同样的规范,因此当在链接库时,-l 选项指定链接的库文件名时可以省去lib前缀,即GCC 在对-lfoo 进行处理时,会自动去链接名为libfoo.so 或libfoo.a的库文件。而当在创建库时,必须指定完整文件名libfoo.so或libfoo.a。 + +根据链接时期的不同,库分为静态库和动态库。静态库是在链接阶段,将汇编生成的目标文件.o与引用到的库一起链接打包到可执行文件中;而动态库是在程序编译时并不会被链接到目标代码中,而是在程序运行时才被载入。二者有如下差异。 + +- 资源利用不一样。 + + 静态库为生成的可执行文件的一部分,而动态库为单独的文件。所以使用静态库和和动态库的可执行文件大小和占用的磁盘空间大小不一样,导致资源利用不一样。 + +- 扩展性与兼容性不一样 + + 静态库中某个函数的实现变了,那么可执行文件必须重新编译,而对于动态链接生成的可执行文件,只需要更新动态库本身即可,不需要重新编译可执行文件。 + +- 依赖不一样 + + 静态库的可执行文件不需要依赖其他的内容即可运行,而动态库的可执行文件必须依赖动态库的存在。所以静态库更方便移植。 + +- 加载速度不一样 + + 静态库在链接时就和可执行文件在一块了,而动态库在加载或者运行时才链接,因此,对于同样的程序,静态链接的要比动态链接加载更快。 + + diff --git "a/content/zh/docs/ApplicationDev/\345\274\200\345\217\221\347\216\257\345\242\203\345\207\206\345\244\207.md" "b/content/zh/docs/ApplicationDev/\345\274\200\345\217\221\347\216\257\345\242\203\345\207\206\345\244\207.md" new file mode 100644 index 0000000000000000000000000000000000000000..17d7e9f0d6f846961bf1feda22c0874200be9574 --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\345\274\200\345\217\221\347\216\257\345\242\203\345\207\206\345\244\207.md" @@ -0,0 +1,3 @@ +# 开发环境准备 + + diff --git "a/content/zh/docs/ApplicationDev/\346\211\223\345\214\205\350\257\264\346\230\216.md" "b/content/zh/docs/ApplicationDev/\346\211\223\345\214\205\350\257\264\346\230\216.md" new file mode 100644 index 0000000000000000000000000000000000000000..f7184bbbf2a04c615f14e6bc0af191f7bbdd4512 --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\346\211\223\345\214\205\350\257\264\346\230\216.md" @@ -0,0 +1,342 @@ +# 打包说明 + +## 原理介绍 + +RPM打包的时候需要编译源码,需要把编译好的配置文件、二进制命令文件等放到合适的位置,还要根据需要对RPM的包进行测试,这些都需要先有一个“工作空间”。rpmbuild命令使用一套标准化的“工作空间”: + +``` +# rpmdev-setuptree +``` + +rpmdev-setuptree这个命令就是安装 rpmdevtools 带来的。可以看到运行了这个命令之后,在“/root“目录(非root用户为“/home/用户名“目录)下多了一个 rpmbuild 的文件夹,目录结构如下: + +``` +# tree rpmbuild +rpmbuild +├── BUILD +├── RPMS +├── SOURCES +├── SPECS +└── SRPMS +``` + +内容相关的说明如下: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

目录

+

宏代码

+

名称

+

功能

+

~/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)

+
+ +SPECS 下是RPM包的配置文件,是RPM打包的“图纸”,这个文件会告诉rpmbuild命令如何去打包。“宏代码”这一列就可以在SPEC文件中用来代指所对应的目录,类似于编程语言中的宏或全局变量。 + +## 打包流程 + +打包的过程主要分为如下步骤: + +1. 把源代码放到%\_sourcedir中。 +2. 进行编译,编译的过程是在%\_builddir中完成的,一般情况下,源代码是压缩包格式,需要先进行解压。 +3. 进行“安装”,类似于预先组装软件包,把软件包应该包含的内容(比如二进制文件、配置文件、man文档等)复制到%\_buildrootdir中,并按照实际安装后的目录结构组装,比如二进制命令可能会放在/usr/bin下,那么就在%\_buildrootdir下也按照同样的目录结构放置。 +4. 做一些必要的配置,比如在实际安装前的准备,安装后的清理等等。这些都是通过配置在SPEC文件中来告诉rpmbuild命令。 +5. 检查软件是否正常运行。 +6. 生成的RPM包放置到%\_rpmdir,源码包放置到%\_srpmdir下。 + +在SPEC文件中的,各个阶段说明如下: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

阶段

+

读取的目录

+

写入的目录

+

具体动作

+

%prep

+

%_sourcedir

+

%_builddir

+

读取位于 %_sourcedir 目录的源代码和 patch 。之后,解压源代码至 %_builddir 的子目录并应用所有 patch

+

%build

+

%_builddir

+

%_builddir

+

编译位于 %_builddir 构建目录下的文件。通过执行类似 ./configure && make 的命令实现。

+

%install

+

%_builddir

+

%_buildrootdir

+

读取位于 %_builddir 构建目录下的文件并将其安装至 %_buildrootdir 目录。这些文件就是用户安装 RPM 后,最终得到的文件。

+

%check

+

%_builddir

+

%_builddir

+

检查软件是否正常运行。通过执行类似 make test 的命令实现。

+

bin

+

%_buildrootdir

+

%_rpmdir

+

读取位于 %_buildrootdir 最终安装目录下的文件,以便最终在 %_rpmdir 目录下创建 RPM 包。在该目录下,不同架构的 RPM 包会分别保存至不同子目录, noarch 目录保存适用于所有架构的 RPM 包。这些 RPM 文件就是用户最终安装的 RPM 包。

+

src

+

%_sourcedir

+

%_srcrpmdir

+

创建源码 RPM 包(简称 SRPM,以.src.rpm 作为后缀名),并保存至 %_srcrpmdir 目录。SRPM 包通常用于审核和升级软件包。

+
+ +## 打包选项 + +通过rpmbuild命令构建软件包。rpmbuild构建软件包一般可以通过构建SPEC文件、tar文件、source文件实现。 + +rpmbuild命令格式为:rpmbuild \[_option_...\] + +常用的rpmbuild打包选项如[表1](#table1342946175212)所示。 + +**表 1** rpmbuild打包选项 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

option取值

+

说明

+

-bp specfile

+

specfile文件的%prep段开始构建(解开源码包并打补丁)。

+

-bc specfile

+

specfile文件的%build段开始构建。

+

-bi specfile

+

specfile文件的%install段开始构建。

+

-bl specfile

+

specfile文件的%file段开始检查。

+

-ba specfile

+

通过specfile文件构建源码包和二进制包。

+

-bb specfile

+

通过specfile文件构建二进制包

+

-bs specfile

+

通过specfile文件构建源码包。

+

-rp sourcefile

+

sourcefile文件的%prep段开始构建(解开源码包并打补丁)。

+

-rc sourcefile

+

sourcefile文件的%build段开始构建。

+

-ri sourcefile

+

sourcefile文件的%install段开始构建。

+

-rl sourcefile

+

sourcefile文件的%file段开始检查。

+

-ra sourcefile

+

通过sourcefile文件构建源码包和二进制包。

+

-rb sourcefile

+

通过sourcefile文件构建二进制包

+

-rs sourcefile

+

通过sourcefile文件构建源码包。

+

-tp tarfile

+

tarfile文件的%prep段开始构建(解开源码包并打补丁)。

+

-tc tarfile

+

tarfile文件的%build段开始构建。

+

-ti tarfile

+

tarfile文件的%install段开始构建。

+

-ta tarfile

+

通过tarfile文件构建源码包和二进制包。

+

-tb tarfile

+

通过tarfile文件构建二进制包

+

-ts tarfile

+

通过tarfile文件构建源码包。

+

--buildroot=DIRECTORY

+

在构建时,使用DIRECTORY目录覆盖默认的/root目录。

+

--clean

+

完成打包后清除BUILD目录下的文件。

+

--nobuild

+

不执行任何实际的构建步骤。可用于测试spec文件。

+

--noclean

+

不执行spec文件的"%clean"阶段(即使它确实存在)。

+

--nocheck

+

不执行spec文件的"%check"阶段(即使它确实存在)。

+

--dbpath DIRECTORY

+

使用DIRECTORY中的数据库,而不是默认的 /var/lib/rpm。

+

--root DIRECTORY

+

使DIRECTORY为最高级别的路径,默认为“/”为最高路径。

+

--rebuild sourcefile

+

将安装指定的源代码包sourcefile,然后进行准备、编译、安装。

+

--recompile sourcefile

+

在 --recompile 的基础上额外构建一个新的二进制包。在构建结束时,构建目录、源代码和 spec 文件都将被删除。

+

将被删除(就好像用了 --clean),

+

-?,--help

+

打印详细的帮助信息。

+

--version

+

打印详细的版本信息。

+
+ diff --git "a/content/zh/docs/ApplicationDev/\346\220\255\345\273\272\345\274\200\345\217\221\347\216\257\345\242\203.md" "b/content/zh/docs/ApplicationDev/\346\220\255\345\273\272\345\274\200\345\217\221\347\216\257\345\242\203.md" new file mode 100644 index 0000000000000000000000000000000000000000..80130d91a95c22c5e8c976f813e6b237dfe80058 --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\346\220\255\345\273\272\345\274\200\345\217\221\347\216\257\345\242\203.md" @@ -0,0 +1,14 @@ +# 搭建开发环境 + +## 前提条件 + +需要root权限,已设置openEuler的repo软件源。 + +## 操作步骤 + +用户可以直接使用DNF工具安装 rpmdevtools,其中包含 rpm-build 等命令以及相关依赖(例如make、gdb)。使用如下命令: + +``` +# dnf install rpmdevtools* +``` + diff --git "a/content/zh/docs/ApplicationDev/\346\226\207\344\273\266\347\261\273\345\236\213-3.md" "b/content/zh/docs/ApplicationDev/\346\226\207\344\273\266\347\261\273\345\236\213-3.md" new file mode 100644 index 0000000000000000000000000000000000000000..d45ea44f949805852d16b73095aa41cf9b9b3d97 --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\346\226\207\344\273\266\347\261\273\345\236\213-3.md" @@ -0,0 +1,76 @@ +# 文件类型 + +makefile文件中可能用到的文件类型如[表1](#table634145764320)所示。 + +**表 1** GCC常用的文件类型 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

扩展名(后缀)

+

说明

+

.c

+

C语言源代码文件。

+

.C,.cc或.cxx

+

C++源代码文件。

+

.m

+

Objective-C源代码文件。

+

.s

+

汇编语言源代码文件。

+

.i

+

已经预处理的C源代码文件。

+

.ii

+

已经预处理的C++源代码文件。

+

.S

+

已经预处理的汇编语言源代码文件。

+

.h

+

程序所包含的头文件。

+

.o

+

编译后的目标文件。

+

.so

+

动态链接库,它是一种特殊的目标文件。

+

.a

+

静态链接库。

+

.out

+

可执行文件,但可执行文件没有统一的后缀,系统从文件的属性来区分可执行文件和不可执行文件。如果没有给出可执行文件的名字,GCC将生成一个名为a.out的文件。

+
+ diff --git "a/content/zh/docs/ApplicationDev/\346\226\207\344\273\266\347\261\273\345\236\213.md" "b/content/zh/docs/ApplicationDev/\346\226\207\344\273\266\347\261\273\345\236\213.md" new file mode 100644 index 0000000000000000000000000000000000000000..dbd2c3205121459189e0470bc94a85f1acf847c3 --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\346\226\207\344\273\266\347\261\273\345\236\213.md" @@ -0,0 +1,76 @@ +# 文件类型 + +对于任何给定的输入文件,文件类型决定进行何种编译。GCC常用的文件类型如[表1](#table634145764320)所示。 + +**表 1** GCC常用的文件类型 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

扩展名(后缀)

+

说明

+

.c

+

C语言源代码文件。

+

.C,.cc或.cxx

+

C++源代码文件。

+

.m

+

Objective-C源代码文件。

+

.s

+

汇编语言源代码文件。

+

.i

+

已经预处理的C源代码文件。

+

.ii

+

已经预处理的C++源代码文件。

+

.S

+

已经预处理的汇编语言源代码文件。

+

.h

+

程序所包含的头文件。

+

.o

+

编译后的目标文件。

+

.so

+

动态链接库,它是一种特殊的目标文件。

+

.a

+

静态链接库。

+

.out

+

可执行文件,但可执行文件没有统一的后缀,系统从文件的属性来区分可执行文件和不可执行文件。如果没有给出可执行文件的名字,GCC将生成一个名为a.out的文件。

+
+ diff --git "a/content/zh/docs/ApplicationDev/\346\226\207\344\273\266\347\261\273\345\236\213\345\217\212\345\267\245\345\205\267.md" "b/content/zh/docs/ApplicationDev/\346\226\207\344\273\266\347\261\273\345\236\213\345\217\212\345\267\245\345\205\267.md" new file mode 100644 index 0000000000000000000000000000000000000000..b4b2ae5e2c24abae948182f7d389253089a46f6c --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\346\226\207\344\273\266\347\261\273\345\236\213\345\217\212\345\267\245\345\205\267.md" @@ -0,0 +1,58 @@ +# 文件类型及工具 + +对于任何给定的输入文件,文件类型决定采用何种工具进行处理。JDK常用的文件类型如[表1](#table634145764320)所示,JDK常用的工具如[表2](#table103504146433)所示。 + +**表 1** JDK常用的文件类型 + + + + + + + + + + + + + + + + +

扩展名(后缀)

+

说明

+

.java

+

java语言源代码文件。

+

.class

+

java的字节码文件,是一种和任何具体机器环境及操作系统环境无关的中间代码。它是一种二进制文件,是Java 源文件由 Java 编译器编译后生成的目标代码文件。

+

.jar

+

java的jar压缩文件。

+
+ +**表 2** JDK常用的工具 + + + + + + + + + + + + + + + + +

工具名称

+

说明

+

java

+

Java运行工具,用于运行.class字节码文件或.jar文件。

+

javac

+

Java编程语言的编译器,将.java的源代码文件编译成.class的字节码文件。

+

jar

+

创建和管理Jar文件

+
+ diff --git "a/content/zh/docs/ApplicationDev/\346\226\260\345\242\236\350\275\257\344\273\266\345\214\205-10.md" "b/content/zh/docs/ApplicationDev/\346\226\260\345\242\236\350\275\257\344\273\266\345\214\205-10.md" new file mode 100644 index 0000000000000000000000000000000000000000..315b482f185817918c532ef1462c8591366c7556 --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\346\226\260\345\242\236\350\275\257\344\273\266\345\214\205-10.md" @@ -0,0 +1,56 @@ +# 新增软件包 + +使用OBS的osc工具新增一个全新软件包的操作方法如下: + +**创建工程** + +1. 根据新增软件包的依赖情况,基于合适的工程,创建属于用户自己的个人工程。例如基于 _openEuler:Mainline_ 工程的 zlib 创建工程的参考命令如下,zlib 为工程下的任一软件包。 + + ``` + # osc branch openEuler:Mainline zlib + ``` + +2. 删除创建工程时新增的无用软件包。例如删除zlib软件包的参考命令如下: + + ``` + # cd home:testUser:branches:openEuler:Mainline + # osc rm zlib + # osc commit -m "commit log" + ``` + +3. 在个人工程下创建新增的软件包。例如新增软件包 my-first-obs-package命令如下: + + ``` + # mkdir my-first-obs-package + # cd my-first-obs-package + ``` + + +**构建RPM包** + +1. 添加准备的源文件和spec文件到软件包目录。 +2. 修改源代码和spec文件,并将对应软件包的所有文件上传到OBS服务器。参考命令如下,-m 参数后的信息为提交记录。 + + ``` + # cd home:testUser:branches:openEuler:Mainline + # osc add my-first-obs-package + # osc ci -m "commit log" + ``` + +3. 获取当前工程的仓库名称和架构,参考命令如下: + + ``` + # osc repos home:testUser:branches:openEuler:Mainline + ``` + +4. 修改提交成功后,OBS会自动开始编译软件包。可以通过如下命令,查看对应仓库的编译日志,其中_standard\_aarch64 、aarch64_分别为查询所得仓库名称和架构。 + + ``` + # cd home:testUser:branches:openEuler:Mainline/my-first-obs-package + # osc buildlog standard_aarch64 aarch64 + ``` + + >![](public_sys-resources/icon-note.gif) **说明:** + >用户也可以通过网页端打开自己创建的对应工程,查看构建日志。 + + diff --git "a/content/zh/docs/ApplicationDev/\346\226\260\345\242\236\350\275\257\344\273\266\345\214\205.md" "b/content/zh/docs/ApplicationDev/\346\226\260\345\242\236\350\275\257\344\273\266\345\214\205.md" new file mode 100644 index 0000000000000000000000000000000000000000..0d5d0a53497c2e2a2538b51e165a106397699e76 --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\346\226\260\345\242\236\350\275\257\344\273\266\345\214\205.md" @@ -0,0 +1,37 @@ +# 新增软件包 + +使用OBS网页端,新增一个全新软件包的操作方法如下: + +1. 登录OBS界面。 +2. 根据新增软件包的依赖情况,选择合适的工程,即单击“All Projects”选择对应工程,例如“openEuler:Mainline”。 +3. 单击工程下任一软件包,进入该软件包的详情页面。 +4. 单击“Branch package”,在弹出的确认页面单击“Accept”确认创建子工程。 +5. 单击“Delete package”,删除新创建子工程中的软件包,如[图1](#fig18306181103615)所示。 + + **图 1** 删除子工程中软件包 + ![](figures/删除子工程中软件包.png "删除子工程中软件包") + + >![](public_sys-resources/icon-note.gif) **说明:** + >通过已有软件创建新工程是为了继承环境等依赖,而不需要实际的文件,所以这里需要把这些文件删除。 + +6. 单击“Create Package”,在弹出的页面输入软件包名称、标题和软件包描述,然后单击“Create”创建软件包,分别如[图2](#fig6762111693811)、[图3](#fig18351153518389)所示。 + + **图 2** Create Package页面 + ![](figures/Create-Package页面.png "Create-Package页面") + + **图 3** 创建软件包信息填写页面 + ![](figures/创建软件包信息填写页面.png "创建软件包信息填写页面") + +7. 在页面中单击“Add file”上传spec文件和需要编译的文件(在spec文件中指定),如[图4](#fig1475845284011)所示。 + + **图 4** Add file页面 + ![](figures/Add-file页面.png "Add-file页面") + +8. 文件上传成功后,OBS会自动开始构建RPM软件包。等待构建完成,并查看右侧状态栏的构建状态。 + - succeed:构建成功。用户可以单击“succeeded”查看构建日志。 + - failed:构建失败。请单击“failed”查看错误日志进行问题定位后重新构建。 + - unresolvable:未进行构建,可能由于缺失依赖。 + - disabled:构建被手动关闭或正在排队构建。 + - excluded:构建被禁止,可能由于缺少spec文件或者spec文件中禁止了目标架构的编译。 + + diff --git "a/content/zh/docs/ApplicationDev/\346\234\254\345\234\260\346\236\204\345\273\272.md" "b/content/zh/docs/ApplicationDev/\346\234\254\345\234\260\346\236\204\345\273\272.md" new file mode 100644 index 0000000000000000000000000000000000000000..76cdda73e5a3194914bebb45c18432e4ec39f6c4 --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\346\234\254\345\234\260\346\236\204\345\273\272.md" @@ -0,0 +1,6 @@ +# 本地构建 + +本章通过一个简单的示例介绍如何在本地构建RPM软件包的方法。 + + + diff --git "a/content/zh/docs/ApplicationDev/\346\236\204\345\273\272RPM\345\214\205-8.md" "b/content/zh/docs/ApplicationDev/\346\236\204\345\273\272RPM\345\214\205-8.md" new file mode 100644 index 0000000000000000000000000000000000000000..62da72928ba3839e6bf1e6b5dcb92c2ca54b2398 --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\346\236\204\345\273\272RPM\345\214\205-8.md" @@ -0,0 +1,22 @@ +# 构建RPM包 + +构建源码、二进制和包含调试信息的软件包,在spec文件所在目录执行如下命令: + +``` +# rpmbuild -ba hello.spec +``` + +执行成功后,查看结果,使用如下命令: + +``` +# tree ~/rpmbuild/*RPMS + +/home/testUser/rpmbuild/RPMS +└── aarch64 + ├── hello-2.10-1.aarch64.rpm + ├── hello-debuginfo-2.10-1.aarch64.rpm + └── hello-debugsource-2.10-1.aarch64.rpm +/home/testUser/rpmbuild/SRPMS +└── hello-2.10-1.src.rpm +``` + diff --git "a/content/zh/docs/ApplicationDev/\346\236\204\345\273\272RPM\345\214\205.md" "b/content/zh/docs/ApplicationDev/\346\236\204\345\273\272RPM\345\214\205.md" new file mode 100644 index 0000000000000000000000000000000000000000..b3c9bbf709d6770969262f46918d90666fe1d8be --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\346\236\204\345\273\272RPM\345\214\205.md" @@ -0,0 +1,5 @@ +# 构建RPM包 + +本章介绍通过本地或OBS构建RPM软件包的方法。详细的打包规则请参见《openEuler 1.0 打包规则》。 + + diff --git "a/content/zh/docs/ApplicationDev/\346\236\204\345\273\272\345\267\262\346\234\211\350\275\257\344\273\266\345\214\205-9.md" "b/content/zh/docs/ApplicationDev/\346\236\204\345\273\272\345\267\262\346\234\211\350\275\257\344\273\266\345\214\205-9.md" new file mode 100644 index 0000000000000000000000000000000000000000..da9b69e477b5132b14c142c4f957bc40e0aa2a75 --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\346\236\204\345\273\272\345\267\262\346\234\211\350\275\257\344\273\266\345\214\205-9.md" @@ -0,0 +1,82 @@ +# 构建已有软件包 + +**创建工程** + +1. 通过拷贝已有工程,创建属于用户自己的子工程。例如将openEuler:Mainline工程下的zlib软件包到新分支,参考命令如下: + + ``` + # osc branch openEuler:Mainline zlib + ``` + + 回显如下所示,说明在用户testUser下创建了新的分支工程home:testUser:branches:openEuler:Mainline。 + + ``` + A working copy of the branched package can be checked out with: + osc co home:testUser:branches:openEuler:Mainline/zlib + ``` + +2. 将需要修改软件包的相关配置文件(例如\_service)下载到本地当前路径。其中 _testUser_ 为\~/.oscrc配置文件中配置的账户名称,请根据实际情况修改。 + + ``` + # osc co home:testUser:branches:openEuler:Mainline/zlib + ``` + + 回显如下所示: + + ``` + A home:testUser:branches:openEuler:Mainline + A home:testUser:branches:openEuler:Mainline/zlib + A home:testUser:branches:openEuler:Mainline/zlib/_service + ``` + +3. 进入本地子工程目录,并将软件包远程代码同步到本地。 + + ``` + # cd home:testUser:branches:openEuler:Mainline/zlib + # osc up -S + ``` + + 回显如下所示: + + ``` + A _service:tar_scm_kernel_repo:0001-Neon-Optimized-hash-chain-rebase.patch + A _service:tar_scm_kernel_repo:0002-Porting-optimized-longest_match.patch + A _service:tar_scm_kernel_repo:0003-arm64-specific-build-patch.patch + A _service:tar_scm_kernel_repo:zlib-1.2.11-optimized-s390.patch + A _service:tar_scm_kernel_repo:zlib-1.2.11.tar.xz + A _service:tar_scm_kernel_repo:zlib-1.2.5-minizip-fixuncrypt.patch + A _service:tar_scm_kernel_repo:zlib.spec + ``` + + +**构建RPM包** + +1. 重命名源文件,然后将重命名后的源文件添加到OBS暂存中。 + + ``` + # rm -f _service;for file in `ls | grep -v .osc`;do new_file=${file##*:};mv $file $new_file;done + # osc addremove * + ``` + +2. 修改源代码和spec文件,并将对应软件包的所有修改同步到OBS服务器。参考命令如下,-m参数后的信息为提交记录。 + + ``` + # osc ci -m "commit log" + ``` + +3. 获取当前工程的仓库名称和架构,参考命令如下: + + ``` + # osc repos home:testUser:branches:openEuler:Mainline + ``` + +4. 修改提交成功后,OBS会自动开始编译软件包。可以通过如下命令,查看对应仓库的编译日志,其中 _standard\_aarch64_ _、_ _aarch64_ 分别为查询所得仓库名称和架构。 + + ``` + # osc buildlog standard_aarch64 aarch64 + ``` + + >![](public_sys-resources/icon-note.gif) **说明:** + >用户也可以通过网页端打开自己创建的对应工程,查看构建日志。 + + diff --git "a/content/zh/docs/ApplicationDev/\346\236\204\345\273\272\345\267\262\346\234\211\350\275\257\344\273\266\345\214\205.md" "b/content/zh/docs/ApplicationDev/\346\236\204\345\273\272\345\267\262\346\234\211\350\275\257\344\273\266\345\214\205.md" new file mode 100644 index 0000000000000000000000000000000000000000..e3ed6210b8b83312e30de9e8963b6a594e8dc277 --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\346\236\204\345\273\272\345\267\262\346\234\211\350\275\257\344\273\266\345\214\205.md" @@ -0,0 +1,48 @@ +# 构建已有软件包 + +>![](public_sys-resources/icon-note.gif) **说明:** +>- 若为首次使用,请首先在OBS网页注册个人账号。 +>- 该方法需要拷贝修改后的代码,因此,请在执行下述操作前完成代码修改并提交到正确的代码路径。代码路径会在\_service文件中指定。 + +使用OBS网页端,修改已有软件的源代码,并将修改后的源文件构建为RPM软件包的操作方法如下: + +1. 登录OBS界面,地址为:[http://117.78.1.88/](http://117.78.1.88/)。 +2. 单击“All Projects”进入所有工程页面。 +3. 单击需要修改的对应工程,进入该工程的详情页面,例如单击“openEuler:Mainline”。 +4. 在工程详情页面的搜索框查找需要修改的软件包,然后单击该软件包包名,进入该软件包详请页面。 +5. 单击“Branch package”,在弹出的确认页面单击“Accept”确认创建子工程,如[图1](#fig77646143214)所示。 + + **图 1** Branch Confirmation页面 + ![](figures/Branch-Confirmation页面.png "Branch-Confirmation页面") + +6. 单击“\_service”文件进入编辑页面,修改\_service内容后点击“Save”保存该文件。\_service内容示例如下,其中_userCodeURL、__userCommitID_分别为用户代码托管路径、用户代码提交版本号或分支。 + + ``` + + + git + userCodeURL + userCommitID + + + bz2 + *.tar + + + ``` + + >![](public_sys-resources/icon-note.gif) **说明:** + >单击“Save”保存\_service文件后,OBS服务会根据\_service文件描述,从指定的url下载源码到OBS对应工程的软件目录下并替换原有文件,例如上述例子中 “openEuler:Mainline”工程的kernel目录。 + +7. 文件拷贝并替换完成后,OBS会自动开始构建RPM软件包。等待构建完成,并查看右侧状态栏的构建状态。 + - succeeded:构建成功。用户可以单击“succeeded”查看构建日志,如[图2](#fig10319114217337)所示。 + + **图 2** succeeded的页面 + ![](figures/succeeded的页面.png "succeeded的页面") + + - failed:构建失败。请单击“failed”查看错误日志进行问题定位后重新构建。 + - unresolvable:未进行构建,可能由于缺失依赖。 + - disabled:构建被手动关闭或正在排队构建。 + - excluded:构建被禁止,可能由于缺少spec文件或者spec文件中禁止了目标架构的编译。 + + diff --git "a/content/zh/docs/ApplicationDev/\346\263\225\345\276\213\345\243\260\346\230\216.md" "b/content/zh/docs/ApplicationDev/\346\263\225\345\276\213\345\243\260\346\230\216.md" new file mode 100644 index 0000000000000000000000000000000000000000..15f9150943ce7084308f8faa7e8b0bcd47aea22a --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\346\263\225\345\276\213\345\243\260\346\230\216.md" @@ -0,0 +1,14 @@ +# 法律声明 + +**版权所有 © 2020 华为技术有限公司。** + +您对“本文档”的复制、使用、修改及分发受知识共享\(Creative Commons\)署名—相同方式共享4.0国际公共许可协议\(以下简称“CC BY-SA 4.0”\)的约束。为了方便用户理解,您可以通过访问[https://creativecommons.org/licenses/by-sa/4.0/](https://creativecommons.org/licenses/by-sa/4.0/) 了解CC BY-SA 4.0的概要 \(但不是替代\)。CC BY-SA 4.0的完整协议内容您可以访问如下网址获取:[https://creativecommons.org/licenses/by-sa/4.0/legalcode](https://creativecommons.org/licenses/by-sa/4.0/legalcode)。 + +**商标声明** + +openEuler为华为技术有限公司的商标。本文档提及的其他所有商标或注册商标,由各自的所有人拥有。 + +**免责声明** + +本文档仅作为使用指导,除非适用法强制规定或者双方有明确书面约定, 华为技术有限公司对本文档中的所有陈述、信息和建议不做任何明示或默示的声明或保证,包括但不限于不侵权,时效性或满足特定目的的担保。 + diff --git "a/content/zh/docs/ApplicationDev/\347\216\257\345\242\203\350\246\201\346\261\202.md" "b/content/zh/docs/ApplicationDev/\347\216\257\345\242\203\350\246\201\346\261\202.md" new file mode 100644 index 0000000000000000000000000000000000000000..314a989a32d342a22aec32b9d01db24ff120af6e --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\347\216\257\345\242\203\350\246\201\346\261\202.md" @@ -0,0 +1,97 @@ +# 环境要求 + +- 若使用的是物理机,则开发环境所需的最小硬件要求如[表1](#table154419352610)所示。 + + **表 1** 最小硬件要求 + + + + + + + + + + + + + + + + + + + + + + + + +

部件名称

+

最小硬件要求

+

说明

+

架构

+
  • AArch64
  • x86
+
  • 支持Arm的64位架构。
  • 支持Intel的x86 64位架构。
+

CPU

+
  • 华为鲲鹏920系列CPU
  • Intel® Xeon®处理器
+

-

+

内存

+

不小于4GB(为了获得更好的应用体验,建议不小于8GB)

+

-

+

硬盘

+

为了获得更好的应用体验,建议不小于120GB)

+

支持IDE、SATA、SAS等接口的硬盘。

+
+ +- 若使用的是虚拟机,则开发环境所需的小虚拟化空间要求如[表2](#table780410493819)所示。 + + **表 2** 最小虚拟化空间要求 + + + + + + + + + + + + + + + + + + + + + + + + +

部件名称

+

最小虚拟化空间要求

+

说明

+

架构

+
  • AArch64
  • x86
+

-

+

CPU

+

2个CPU

+

-

+

内存

+

不小于4GB(为了获得更好的应用体验,建议不小于8GB)

+

-

+

硬盘

+

不小于1032GB(为了获得更好的应用体验,建议不小于120GB)

+

-

+
+ + +## 操作系统要求 + +操作系统要求为openEuler操作系统。 + +openEuler操作系统具体安装方法请参考《openEuler 1.0 安装指南》,其中“软件选择”页面的“已选环境的附加选项”中将“开发工具”勾选。 + diff --git "a/content/zh/docs/ApplicationDev/\347\244\272\344\276\213-4.md" "b/content/zh/docs/ApplicationDev/\347\244\272\344\276\213-4.md" new file mode 100644 index 0000000000000000000000000000000000000000..83b089738afc330d92a8091f245a78b4c96614c2 --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\347\244\272\344\276\213-4.md" @@ -0,0 +1,4 @@ +# 示例 + + + diff --git "a/content/zh/docs/ApplicationDev/\347\244\272\344\276\213-7.md" "b/content/zh/docs/ApplicationDev/\347\244\272\344\276\213-7.md" new file mode 100644 index 0000000000000000000000000000000000000000..50e65de6397fcf4cc262ce66b0747fca0e13e233 --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\347\244\272\344\276\213-7.md" @@ -0,0 +1,3 @@ +# 示例 + + diff --git "a/content/zh/docs/ApplicationDev/\347\244\272\344\276\213.md" "b/content/zh/docs/ApplicationDev/\347\244\272\344\276\213.md" new file mode 100644 index 0000000000000000000000000000000000000000..24b7a54a9569a95558552ff2073031803c8740da --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\347\244\272\344\276\213.md" @@ -0,0 +1,3 @@ +# 示例 + + diff --git "a/content/zh/docs/ApplicationDev/\347\256\200\344\273\213-0.md" "b/content/zh/docs/ApplicationDev/\347\256\200\344\273\213-0.md" new file mode 100644 index 0000000000000000000000000000000000000000..3d8d87d367eb010ac70c56d5f1f1a73619cb71f0 --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\347\256\200\344\273\213-0.md" @@ -0,0 +1,4 @@ +# 简介 + +GCC(GNU Compiler Collection)是GNU推出的功能强大、性能优越的多平台编译器。GCC编译器能将C、C++语言源程序、汇编程序和目标程序编译、连接成可执行文件。openEuler操作系统中已默认安装了GCC软件包。 + diff --git "a/content/zh/docs/ApplicationDev/\347\256\200\344\273\213-1.md" "b/content/zh/docs/ApplicationDev/\347\256\200\344\273\213-1.md" new file mode 100644 index 0000000000000000000000000000000000000000..60e689ae82ee615601bfbe9a8ee2ec18ec3b82c1 --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\347\256\200\344\273\213-1.md" @@ -0,0 +1,4 @@ +# 简介 + +GNU make实用程序(通常缩写为make)是一种用于控制从源文件生成可执行文件的工具。 make会自动确定复杂程序的哪些部分已更改并需要重新编译。 make使用称为Makefiles的配置文件来控制程序的构建方式。 + diff --git "a/content/zh/docs/ApplicationDev/\347\256\200\344\273\213-5.md" "b/content/zh/docs/ApplicationDev/\347\256\200\344\273\213-5.md" new file mode 100644 index 0000000000000000000000000000000000000000..7f65d9edc31b51cf74495dcfcd16618f21b142b2 --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\347\256\200\344\273\213-5.md" @@ -0,0 +1,4 @@ +# 简介 + +JDK(Java Development Kit)是 Java 开发者进行 Java 开发所必须的软件包,包含 JRE(Java Runtime Environment)和编译、调测工具。openEuler在OpenJDK 的基础上进行了 GC 优化、并发稳定性增强、安全性增强等修改,提高了 Java 应用程序在 ARM 上的性能和稳定性。 + diff --git "a/content/zh/docs/ApplicationDev/\347\256\200\344\273\213.md" "b/content/zh/docs/ApplicationDev/\347\256\200\344\273\213.md" new file mode 100644 index 0000000000000000000000000000000000000000..78f5ea6d7d772f67b77c76b726aa4a6e22aef4f4 --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\347\256\200\344\273\213.md" @@ -0,0 +1,4 @@ +# 简介 + +IntelliJ IDEA是一款非常流行的Java IDE,其社区版可以免费下载使用。目前openEuler支持使用IntelliJ IDEA集成开发环境(IDE)进行Java程序的开发,从而可以提升开发人员的工作效率。 + diff --git "a/content/zh/docs/ApplicationDev/\347\261\273\345\272\223.md" "b/content/zh/docs/ApplicationDev/\347\261\273\345\272\223.md" new file mode 100644 index 0000000000000000000000000000000000000000..5d21b808d04e268bee02e232288a4b6c17a41f3d --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\347\261\273\345\272\223.md" @@ -0,0 +1,51 @@ +# 类库 + +java类库是以包的形式实现的,包是类和接口的集合。java编译器为每个类生成一个字节码文件,且文件名与类名相同,因此同名的类之间就有可能发生冲突。java语言中,把一组类和接口封装在一个包内,包可以有效地管理类名空间,位于不同包中的类即使同名也不会冲突,从而解决了同名类之间可能发生的冲突问题,为管理大量的类和接口提供了方便,也有利于类和接口的安全。 + +除java提供的许多包外,开发者也可以自定义包,把自己编写的类和接口等组成程序包的形式,以便后续使用。 + +自定义包需要先声明包,然后在使用包。 + +## 包的声明 + +包的声明格式为:package pkg1\[.pkg2\[.pkg3...\]\]; + +为了声明一个包,首先必须建立一个相应的目录结构,子目录与包名一致,然后在需要放入该包的类文件开头声明包,表示该文件的全部类都属于这个包。包声明中的“.”指明了目录的层次。如果源程序文件中没有package语句,则指定为无名包。无名包没有路径,一般情况下,java仍然会把源文件中的类存储在当前工作目录(即存放java源文件的目录)下。 + +包声明语句必须被加到源程序文件的起始部分,而且前面不能有注释和空格。如果在不同源程序文件中使用相同的包声明语句,就可以将不同源程序文件中的类都包含在相同的包中。 + +## 包的引用 + +在 Java 中,为了能使用java提供的包中的公用类,或者使用自定义的包中的类,有两种方法。 + +- 在要引用的类名前带上包名。 + + 如:name.A obj=new name.A \(\); + + 其中,name为包名,A为类名,obj为对象。表示程序中用name包中的A类定义一个对象obj。 + + 示例:新建一个example包中Test类的test对象。 + + ``` + example.Test test = new example.Test(); + ``` + +- 在文件开头使用import来导入包中的类。 + + import语句的格式为:import pkg1\[.pkg2\[.pkg3...\]\].\(classname | \*\); + + 其中,pkg1\[.pkg2\[.pkg3...\]\]表明包的层次,classname为所要导入的类。如果要从一个包中导入多个类,则可以使用通配符“\*”来替代。 + + 示例:导入example包中的Test类。 + + ``` + import example.Test; + ``` + + 示例:将example 整个包导入。 + + ``` + import example.*; + ``` + + diff --git "a/content/zh/docs/ApplicationDev/\347\274\226\350\257\221\344\270\215\345\270\246\345\214\205\347\232\204java\347\250\213\345\272\217\347\244\272\344\276\213.md" "b/content/zh/docs/ApplicationDev/\347\274\226\350\257\221\344\270\215\345\270\246\345\214\205\347\232\204java\347\250\213\345\272\217\347\244\272\344\276\213.md" new file mode 100644 index 0000000000000000000000000000000000000000..90cf3ae4044919f762c525316611749e7aaf005d --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\347\274\226\350\257\221\344\270\215\345\270\246\345\214\205\347\232\204java\347\250\213\345\272\217\347\244\272\344\276\213.md" @@ -0,0 +1,40 @@ +# 编译不带包的java程序示例 + +1. cd到代码目录,此处以用户“/home/code”进行举例。如下所示: + + ``` + # cd /home/code + ``` + +2. 编写Hello World程序,保存为HelloWorld.java,此处以编译Hello World程序进行举例说明。示例如下: + + ``` + # vi HelloWorld.java + ``` + + 代码内容示例: + + ``` + public class HelloWorld { + public static void main(String[] args) { + System.out.println("Hello World"); + } + } + ``` + +3. 在代码目录,执行编译,使用命令: + + ``` + # javac HelloWorld.java + ``` + + 编译执行未报错,表明执行通过。 + +4. 编译完成后,会生成 HelloWorld.class 文件,通过java命令可执行查看结果,示例如下: + + ``` + # java HelloWorld + Hello World + ``` + + diff --git "a/content/zh/docs/ApplicationDev/\347\274\226\350\257\221\345\270\246\345\214\205\347\232\204java\347\250\213\345\272\217\347\244\272\344\276\213.md" "b/content/zh/docs/ApplicationDev/\347\274\226\350\257\221\345\270\246\345\214\205\347\232\204java\347\250\213\345\272\217\347\244\272\344\276\213.md" new file mode 100644 index 0000000000000000000000000000000000000000..581be061f9c1385e02f726273cb9a4dbae7824f0 --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\347\274\226\350\257\221\345\270\246\345\214\205\347\232\204java\347\250\213\345\272\217\347\244\272\344\276\213.md" @@ -0,0 +1,95 @@ +# 编译带包的java程序示例 + +1. cd到代码目录,此处以用户“/home/code”进行举例。并在该目录下创建“/home/code/Test/my/example”、“/home/code/Hello/world/developers”、“/home/code/Hi/openos/openeuler”子目录,分别用于存放源文件。 + + ``` + cd /home/code + + mkdir -p Test/my/example + mkdir -p Hello/world/developers + mkdir -p Hi/openos/openeuler + ``` + +2. cd到/home/code/Test/my/example目录,创建Test.java。 + + ``` + cd /home/code/Test/my/example + vi Test.java + ``` + + Test.java代码内容示例: + + ``` + package my.example; + import world.developers.Hello; + import openos.openeuler.Hi; + public class Test { + public static void main(String[] args) { + Hello me = new Hello(); + me.hello(); + Hi you = new Hi(); + you.hi(); + } + } + ``` + +3. cd到/home/code/Hello/world/developers目录,创建Hello.java。 + + ``` + cd /home/code/Hello/world/developers + vi Hello.java + ``` + + Hello.java代码内容示例: + + ``` + package world.developers; + public class Hello { + public void hello(){ + System.out.println("Hello, openEuler."); + } + } + ``` + +4. cd到/home/code/Hi/openos/openeuler目录,创建Hi.java。 + + ``` + cd /home/code/Hi/openos/openeuler + vi Hi.java + ``` + + Hi.java代码内容示例: + + ``` + package openos.openeuler; + public class Hi { + public void hi(){ + System.out.println("Hi, the global developers."); + } + } + ``` + +5. cd到/home/code,使用javac编译源文件。 + + ``` + cd /home/code + javac -classpath Hello:Hi Test/my/example/Test.java + ``` + + 执行完命令后,会在“/home/code/Test/my/example”、“/home/code/Hello/world/developers”、“/home/code/Hi/openos/openeuler”目录下分别生成Test.class、Hello.class、Hi.class文件。 + +6. cd到/home/code,使用java运行Test程序。 + + ``` + cd /home/code + java -classpath Test:Hello:Hi my/example/Test + ``` + + 执行结果如下所示: + + ``` + Hello, openEuler. + Hi, the global developers. + ``` + + diff --git "a/content/zh/docs/ApplicationDev/\347\274\226\350\257\221\346\265\201\347\250\213.md" "b/content/zh/docs/ApplicationDev/\347\274\226\350\257\221\346\265\201\347\250\213.md" new file mode 100644 index 0000000000000000000000000000000000000000..6e81ff56669e251874be13134112403d3a747b8e --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\347\274\226\350\257\221\346\265\201\347\250\213.md" @@ -0,0 +1,11 @@ +# 编译流程 + +使用GCC将源代码文件生成可执行文件,需要经过预处理、编译、汇编和链接。 + +1. 预处理:将源程序(如**.c**文件)预处理,生成**.i**文件。 +2. 编译:将预处理后的**.i**文件编译成为汇编语言,生成**.s**文件。 +3. 汇编:将汇编语言文件经过汇编,生成目标文件**.o**文件。 +4. 链接:将各个模块的**.o**文件链接起来生成一个可执行程序文件。 + +其中**.i**文件、**.s**文件、**.o**文件是中间文件或临时文件,如果使用GCC一次性完成C语言程序的编译,则这些文件会被删除。 + diff --git "a/content/zh/docs/ApplicationDev/\347\274\226\350\257\221\351\200\211\351\241\271.md" "b/content/zh/docs/ApplicationDev/\347\274\226\350\257\221\351\200\211\351\241\271.md" new file mode 100644 index 0000000000000000000000000000000000000000..1a2e36334a9eff2307774e1077c5545ca9dd19da --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\347\274\226\350\257\221\351\200\211\351\241\271.md" @@ -0,0 +1,113 @@ +# 编译选项 + +GCC编译的命令格式为:**gcc** \[_options_\] \[_filenames_\] + +其中: + +_options_:编译选项。 + +_filenames_:文件名称。 + +GCC是一个功能强大的编译器,其_options_参数取值很多,但有些大部分并不常用,常用的_options_取值如[表1](#table1342946175212)所示。 + +**表 1** GCC常用的编译选项 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

options取值

+

说明

+

示例

+

-c

+

编译、汇编指定的源文件生成目标文件,但不进行链接。通常用于编译不包含主程序的子程序文件。

+

#使用-c选项编译test1.c、test2.c源文件

+

gcc -c test1.c test2.c

+

-S

+

编译指定的源文件生成以.s作为后缀的汇编语言文件,但不进行汇编。

+

#编译器预处理 circle.c,将其翻译成汇编语言,并将结果存储在 circle.s 文件中。

+

gcc -S circle.c

+

-E

+

预处理指定的源文件,但不进行编译。

+

默认情况下,预处理器的输出会被导入到标准输出流(如显示器),可以利用-o选项把它导入到某个输出文件。

+

#预处理的结果导出到 circle.i 文件。

+

gcc -E circle.c -o circle.i

+

-o file

+

用在生成可执行文件时,生成指定的输出文件file。同时该名称不能和源文件同名。如果不给出这个选项,gcc就给出预设的可执行文件a.out。

+

#将源文件作为输入文件,将可执行文件作为输出文件,也即完整地编译整个程序。

+

gcc main.c func.c -o app.out

+

-g

+

在可执行程序中包含标准调试信息。

+

-

+

-L libary_path

+

在库文件的搜索路径列表中添加libary_path路径。

+

-

+

-Ilibrary

+

链接时搜索指定的函数库library

+

使用 GCC 编译和链接程序时,GCC 默认会链接 libc.a 或者 libc.so,但是对于其他的库(例如非标准库、第三方库等),就需要手动添加。

+

#使用-l选项,以链接数学库。

+

gcc main.c -o main.out -lm

+
说明:

数学库的文件名是 libm.a。前缀lib和后缀.a是标准的,m是基本名称,GCC 会在-l选项后紧跟着的基本名称的基础上自动添加这些前缀、后缀,本例中,基本名称为 m。

+
+

-I head_path

+

在头文件的搜索路径列表中添加head_path路径。

+

-

+

-static

+

进行静态编译,及链接静态库,禁止链接动态库。

+

-

+

-shared

+

默认选项,可省略。

+
  • 可以生成动态库文件。
  • 进行动态编译,优先链接动态库,只有没有动态库是才会链接同名的静态库。
+

-

+

-fPIC(或-fpic)

+

生成使用相对地址的位置无关的目标代码。通常使用-static选项从该PIC目标文件生成动态库文件。

+

-

+
+ diff --git "a/content/zh/docs/ApplicationDev/\347\274\226\350\276\221SPEC\346\226\207\344\273\266.md" "b/content/zh/docs/ApplicationDev/\347\274\226\350\276\221SPEC\346\226\207\344\273\266.md" new file mode 100644 index 0000000000000000000000000000000000000000..3c1413af6f50ec66f39e516b4c47f630b260751b --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\347\274\226\350\276\221SPEC\346\226\207\344\273\266.md" @@ -0,0 +1,73 @@ +# 编辑SPEC文件 + +新建spec文件,参考命令如下: + +``` +# vi hello.spec +``` + +在文件中写入对应内容后保存文件。文件内容示例如下,请根据实际情况修改相应字段。 + +``` +Name: hello +Version: 2.10 +Release: 1%{?dist} +Summary: The "Hello World" program from GNU +Summary(zh_CN): GNU "Hello World" 程序 +License: GPLv3+ +URL: http://ftp.gnu.org/gnu/hello +Source0: http://ftp.gnu.org/gnu/hello/%{name}-%{version}.tar.gz + +BuildRequires: gettext +Requires(post): info +Requires(preun): info + +%description +The "Hello World" program, done with all bells and whistles of a proper FOSS +project, including configuration, build, internationalization, help files, etc. + +%description -l zh_CN +"Hello World" 程序, 包含 FOSS 项目所需的所有部分, 包括配置, 构建, 国际化, 帮助文件等. + +%prep +%setup -q + +%build +%configure +make %{?_smp_mflags} + +%install +make install DESTDIR=%{buildroot} +%find_lang %{name} +rm -f %{buildroot}/%{_infodir}/dir + +%post +/sbin/install-info %{_infodir}/%{name}.info %{_infodir}/dir || : + +%preun +if [ $1 = 0 ] ; then +/sbin/install-info --delete %{_infodir}/%{name}.info %{_infodir}/dir || : +fi + +%files -f %{name}.lang +%doc AUTHORS ChangeLog NEWS README THANKS TODO +%license COPYING +%{_mandir}/man1/hello.1.* +%{_infodir}/hello.info.* +%{_bindir}/hello + +%changelog +* Thu Dec 26 2019 Your Name - 2.10-1 +- Update to 2.10 +* Sat Dec 3 2016 Your Name - 2.9-1 +- Update to 2.9 +``` + +- Name 标签是软件名,Version 标签是版本号,而 Release 标签是发布编号。 +- Summary 标签是简要说明,英文的话第一个字母应大写,以避免 rpmlint 工具(打包检查工具)警告。 +- License 标签说明软件包的协议版本,审查软件的 License 状态是打包者的职责,这可以通过检查源码或 LICENSE 文件,或与作者沟通来完成。 +- Group 标签过去用于按照 /usr/share/doc/rpm-/GROUPS 分类软件包。目前该标记已丢弃,vim的模板还有这一条,删掉即可,不过添加该标记也不会有任何影响。%changelog 标签应包含每个 Release 所做的更改日志,尤其应包含上游的安全/漏洞补丁的说明。%changelog 条目应包含版本字符串,以避免 rpmlint 工具警告。 +- 多行的部分,如 %changelog 或 %description 由指令下一行开始,空行结束。 +- 一些不需要的行 \(如 BuildRequires 和 Requires\) 可在行首使用 ‘\#’ 注释。 +- %prep、%build、%install、%file暂时用默认的,未做任何修改。 + diff --git "a/content/zh/docs/ApplicationDev/\350\216\267\345\217\226\350\275\257\344\273\266\345\214\205-11.md" "b/content/zh/docs/ApplicationDev/\350\216\267\345\217\226\350\275\257\344\273\266\345\214\205-11.md" new file mode 100644 index 0000000000000000000000000000000000000000..d4b533c1ac1308e905b5a39b14a2a524cb49b613 --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\350\216\267\345\217\226\350\275\257\344\273\266\345\214\205-11.md" @@ -0,0 +1,18 @@ +# 获取软件包 + +RPM软件包构建完成后,使用osc获取对应RPM软件包的命令如下: + +``` +# osc getbinaries home:testUser:branches:openEuler:Mainline my-first-obs-package standard_aarch64 aarch64 +``` + +命令中的各参数含义如下,请用户根据实际情况修改: + +- _home:testUser:branches:openEuler:Mainline_ :软件包所在工程名称 +- _my-first-obs-package_ :软件包名称 +- _standard\_aarch64_ :仓库名称 +- _aarch64_ :仓库架构名称 + +>![](public_sys-resources/icon-note.gif) **说明:** +>使用osc构建的软件包也可以在网页端获取,获取方式请参见网页端获取软件包相关内容。 + diff --git "a/content/zh/docs/ApplicationDev/\350\216\267\345\217\226\350\275\257\344\273\266\345\214\205.md" "b/content/zh/docs/ApplicationDev/\350\216\267\345\217\226\350\275\257\344\273\266\345\214\205.md" new file mode 100644 index 0000000000000000000000000000000000000000..45bb4bd2f87b7880b6c94b8a5f84619b67ad1464 --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\350\216\267\345\217\226\350\275\257\344\273\266\345\214\205.md" @@ -0,0 +1,19 @@ +# 获取软件包 + +RPM软件包构建完成后,通过网页端获取对应RPM软件包的方法如下: + +1. 登录OBS界面。 +2. 单击“All Projects”找到所需软件包的对应工程,例如“openEuler:Mainline”。 +3. 在工程下单击所需软件包的包名,进入该软件包详请页面。例如上述例子中的kernel页面。 + +1. 选择Repositories页签进入软件包的软件仓库管理页面,在Publish Flag中通过单击选择“Enable”开启(状态由![](figures/zh-cn_image_0229243704.png)变为![](figures/zh-cn_image_0229243702.png))对应的RPM软件包下载功能,如[图1](#fig17480830144217)所示。 + + **图 1** Repositories页面 + ![](figures/Repositories页面.png "Repositories页面") + +2. 单击Repository列的构建工程名称,进入RPM软件包下载页面,单击RPM软件包右侧的“Download”即可下载对应RPM软件包,如[图2](#fig12152145615438)所示。 + + **图 2** RPM软件包下载页面 + ![](figures/RPM软件包下载页面.png "RPM软件包下载页面") + + diff --git "a/content/zh/docs/ApplicationDev/\350\256\276\347\275\256JDK\347\216\257\345\242\203.md" "b/content/zh/docs/ApplicationDev/\350\256\276\347\275\256JDK\347\216\257\345\242\203.md" new file mode 100644 index 0000000000000000000000000000000000000000..8ef6cb874c9cc5d7609e91c52fb53008e160aa7f --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\350\256\276\347\275\256JDK\347\216\257\345\242\203.md" @@ -0,0 +1,27 @@ +# 设置JDK环境 + +在设置JAVA\_HOME之前您需要先找到JDK的安装路径。在[安装JDK软件包](安装JDK软件包.md)中您已经学会了如何安装JDK,如果您还没安装好JDK,请提前安好。 + +查看java路径,命令如下: + +``` +# which java +/usr/bin/java +``` + +查看软链接的实际指向目录,命令如下: + +``` +# ls -la /usr/bin/java +lrwxrwxrwx. 1 root root 22 Mar 6 20:28 /usr/bin/java -> /etc/alternatives/java +# ls -la /etc/alternatives/java +lrwxrwxrwx. 1 root root 83 Mar 6 20:28 /etc/alternatives/java -> /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.232.b09-1.h2.aarch64/jre/bin/java +``` + +发现JDK的真实路径为/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.232.b09-1.h2.aarch64,设置JAVA\_HOME和PATH,命令如下: + +``` +# export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.232.b09-1.h2.aarch64 +# export PATH=$JAVA_HOME/bin:$PATH +``` + diff --git "a/content/zh/docs/ApplicationDev/\350\256\276\347\275\256X11-Forwarding.md" "b/content/zh/docs/ApplicationDev/\350\256\276\347\275\256X11-Forwarding.md" new file mode 100644 index 0000000000000000000000000000000000000000..3dbb60c836002b9aaaf2b320fc129a295e147dfe --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\350\256\276\347\275\256X11-Forwarding.md" @@ -0,0 +1,31 @@ +# 设置X11 Forwarding + +切换到sshd配置目录 + +``` +# cd ~/.ssh +``` + +如果该目录不存在,则创建目录后再进行切换,创建目录命令如下: + +``` +# mkdir ~/.ssh +``` + +然后在.ssh目录下编辑config文件并保存: + +1. 使用vim打卡config文件 + + ``` + # vim config + ``` + +2. 将以下内容添加到文件末尾并保存: + + ``` + Host * + ForwardAgent yes + ForwardX11 yes + ``` + + diff --git "a/content/zh/docs/ApplicationDev/\351\205\215\347\275\256repo\346\272\220.md" "b/content/zh/docs/ApplicationDev/\351\205\215\347\275\256repo\346\272\220.md" new file mode 100644 index 0000000000000000000000000000000000000000..997b351831970d991b1722c4ceacaecf1326d5c2 --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\351\205\215\347\275\256repo\346\272\220.md" @@ -0,0 +1,111 @@ +# 配置repo源 + +>![](public_sys-resources/icon-note.gif) **说明:** +>本章节中以openEuler-20.03-LTS-aarch64-dvd.iso镜像文件和openEuler-20.03-LTS-aarch64-dvd.iso.sha256sum校验文件为例,请根据实际需要的镜像文件和校验文件进行修改。 + +## 下载ISO镜像 + +- 通过跨平台文件传输工具下载ISO镜像 + 1. 登录openEuler社区,网址为:[https://openeuler.org](https://openeuler.org)。 + 2. 单击“下载”,进入下载页面。 + 3. 单击“获取ISO:”后面的“Link”,显示下载列表。 + 4. 单击“openEuler-20.03-LTS-aarch64-dvd.iso”将openEuler发布包下载到本地。 + 5. 单击“openEuler-20.03-LTS-aarch64-dvd.iso.sha256sum”将openEuler校验文件下载到本地。 + 6. 登录openEuler操作系统,新建用于存放发布包和检验文件的目录,如“/home/iso”。 + + ``` + mkdir /home/iso + ``` + + 7. 使用跨平台文件传输工具(如WinSCP)将本地的openEuler发布包和校验文件上传到openEuler操作系统。 + +- 通过wget命令下载ISO镜像 + 1. 登录openEuler社区,网址为:[https://openeuler.org](https://openeuler.org)。 + 2. 单击“下载”,进入下载页面。 + 3. 单击“获取ISO:”后面的“Link”,显示下载列表。 + 4. 右键单击“openEuler-20.03-LTS-aarch64-dvd.iso”,单击“复制链接地址”,将openEuler发布包地址记录好。 + 5. 右键单击“openEuler-20.03-LTS-aarch64-dvd.iso.sha256sum”,单击“复制链接地址”,将openEuler校验文件地址记录好。 + 6. 登录openEuler操作系统,新建用于存放发布包和检验文件的目录,如“/home/iso”,并切换到该目录。 + + ``` + mkdir /home/iso + cd /home/iso + ``` + + 7. 使用**wget**命令远程下载发布包和检验文件,命令中的 _ipaddriso_ 和 _ipaddrisosum_ 分别为[4](#li12471102810496)和[5](#li1585718426494)中记录的地址。 + + ``` + wget ipaddriso + wget ipaddrisosum + ``` + + + +## 发布包完整性校验 + +1. 获取校验文件中的校验值。 + + ``` + cat openEuler-20.03-LTS-aarch64-dvd.iso.sha256sum + ``` + +2. 计算openEuler发布包的sha256校验值。 + + ``` + sha256sum openEuler-20.03-LTS-aarch64-dvd.iso + ``` + + 命令执行完成后,输出校验值。 + +3. 对比步骤1和步骤2计算的校验值是否一致。 + + 如果校验值一致说明iso文件完整性没有破坏,如果校验值不一致则可以确认文件完整性已被破坏,需要重新获取。 + + +## 挂载ISO并配置为repo源 + +使用mount命令挂载镜像文件。 + +示例如下: + +``` +# mount /home/iso/openEuler-20.03-LTS-aarch64-dvd.iso /mnt/ +``` + +挂载好的mnt目录如下: + +``` +. +│── boot.catalog +│── docs +│── EFI +│── images +│── Packages +│── repodata +│── TRANS.TBL +└── RPM-GPG-KEY-openEuler +``` + +其中,Packages为rpm包所在的目录,repodata为repo源元数据所在的目录,RPM-GPG-KEY-openEuler为openEuler的签名公钥。。 + +挂载后的目录可以配置为yum源使用,在/etc/yum.repos.d/目录下创建\*\*\*.repo的配置文件(必须以.repo为扩展名)。 + +示例如下: + +在/etc/yum.repos.d目录下创建openEuler.repo 文件,使用本地镜像挂载目录作为yum源,openEuler.repo的内容如下: + +``` +[base] +name=base +baseurl=file:///mnt +enabled=1 +gpgcheck=1 +gpgkey=file:///mnt/RPM-GPG-KEY-openEuler +``` + +**** + +>![](public_sys-resources/icon-note.gif) **说明:** +>- gpgcheck可设置为1或0,1表示进行gpg(GNU Private Guard)校验,0表示不进行gpg校验,gpgcheck可以确定rpm包的来源是有效和安全的。 +>- gpgkey为签名公钥的存放路径。 + diff --git "a/content/zh/docs/ApplicationDev/\351\235\231\346\200\201\351\223\276\346\216\245\345\272\223.md" "b/content/zh/docs/ApplicationDev/\351\235\231\346\200\201\351\223\276\346\216\245\345\272\223.md" new file mode 100644 index 0000000000000000000000000000000000000000..decb384057a35f986a3e9f2ed228916b8bffee55 --- /dev/null +++ "b/content/zh/docs/ApplicationDev/\351\235\231\346\200\201\351\223\276\346\216\245\345\272\223.md" @@ -0,0 +1,29 @@ +# 静态链接库 + +创建一个静态链接库,需要先将源文件编译为目标文件,然后在使用ar命令将目标文件打包成静态链接库。 + +示例:将源文件test1.c,test2.c,test3.c编译并打包成静态库。 + +``` +gcc -c test1.c test2.c test3.c +ar rcs libtest.a test1.o test2.o test3.o +``` + +其中ar是一个备份压缩命令,可以将多个文件打包成一个备份文件(也叫归档文件),也可以从备份文件中提取成员文件。ar最常见的用法是将目标文件打包为静态链接库。 + +ar将目标文件打包成静态链接库的命令格式为: + +ar rcs 静态库文件名 目标文件列表 + +- r: 替换库中已有的目标文件,或者加入新的目标文件。 +- c: 创建一个库,不管库否存在,都将创建。 +- s: 创建目标文件索引,在创建较大的库时能提高速度。 + +示例:创建一个main.c文件来使用静态库 + +``` +gcc main.c -L libraryDIR -ltest -o test.out +``` + +其中libraryDIR为libtest.a库的路径。 + diff --git a/content/zh/docs/Installation/FAQ.md b/content/zh/docs/Installation/FAQ.md index 17ec906c33b1c9dd166d07bd352293ea01ad39b0..3daee532659425a1438b50bd16b2cfe4c08e04ad 100644 --- a/content/zh/docs/Installation/FAQ.md +++ b/content/zh/docs/Installation/FAQ.md @@ -1,4 +1 @@ -# FAQ - - - +# FAQ diff --git a/content/zh/docs/Installation/figures/19.png b/content/zh/docs/Installation/figures/19.png deleted file mode 100644 index dca1271aebd2948c445b7cecb8374159e8ddc618..0000000000000000000000000000000000000000 Binary files a/content/zh/docs/Installation/figures/19.png and /dev/null differ diff --git a/content/zh/docs/Installation/figures/22.png b/content/zh/docs/Installation/figures/22.png deleted file mode 100644 index b207aacc01e28b1eb79b1ead009c0186176a79c5..0000000000000000000000000000000000000000 Binary files a/content/zh/docs/Installation/figures/22.png and /dev/null differ diff --git a/content/zh/docs/Installation/figures/BIOS.png b/content/zh/docs/Installation/figures/BIOS.png new file mode 100644 index 0000000000000000000000000000000000000000..d5a96738001c5a910174c030af583bb09ff29ce6 Binary files /dev/null and b/content/zh/docs/Installation/figures/BIOS.png differ diff --git "a/content/zh/docs/Installation/figures/NTP\346\234\215\345\212\241\345\231\250.png" "b/content/zh/docs/Installation/figures/NTP\346\234\215\345\212\241\345\231\250.png" deleted file mode 100644 index 90846591116efa658c485c48102ce61aeaf8e8df..0000000000000000000000000000000000000000 Binary files "a/content/zh/docs/Installation/figures/NTP\346\234\215\345\212\241\345\231\250.png" and /dev/null differ diff --git "a/content/zh/docs/Installation/figures/No-bootable-device-\346\217\220\347\244\272\347\225\214\351\235\242.png" "b/content/zh/docs/Installation/figures/No-bootable-device-\346\217\220\347\244\272\347\225\214\351\235\242.png" new file mode 100644 index 0000000000000000000000000000000000000000..177cb7db4c794b80524add99244a4cb3d28c5390 Binary files /dev/null and "b/content/zh/docs/Installation/figures/No-bootable-device-\346\217\220\347\244\272\347\225\214\351\235\242.png" differ diff --git "a/content/zh/docs/Installation/figures/root\345\257\206\347\240\201-3.png" "b/content/zh/docs/Installation/figures/root\345\257\206\347\240\201-3.png" deleted file mode 100644 index 33cf136a5eb516078ed8e6f5ad19b570bc1da1d3..0000000000000000000000000000000000000000 Binary files "a/content/zh/docs/Installation/figures/root\345\257\206\347\240\201-3.png" and /dev/null differ diff --git "a/content/zh/docs/Installation/figures/root\345\257\206\347\240\201.png" "b/content/zh/docs/Installation/figures/root\345\257\206\347\240\201.png" index c0b3f0c4137e50426e1f17460da55c4623b62e8d..e8634d22d6463dab1b3730c44023eef032cbeb60 100644 Binary files "a/content/zh/docs/Installation/figures/root\345\257\206\347\240\201.png" and "b/content/zh/docs/Installation/figures/root\345\257\206\347\240\201.png" differ diff --git a/content/zh/docs/Installation/figures/security.png b/content/zh/docs/Installation/figures/security.png new file mode 100644 index 0000000000000000000000000000000000000000..59ac7bfcef796fc32d0127a9d6095d32cb282fb2 Binary files /dev/null and b/content/zh/docs/Installation/figures/security.png differ diff --git a/content/zh/docs/Installation/figures/zh-cn_image_0187471756.png b/content/zh/docs/Installation/figures/zh-cn_image_0187471756.png deleted file mode 100644 index eb2993a905b5fe21af015074d362856b13555a8a..0000000000000000000000000000000000000000 Binary files a/content/zh/docs/Installation/figures/zh-cn_image_0187471756.png and /dev/null differ diff --git a/content/zh/docs/Installation/figures/zh-cn_image_0187510754.png b/content/zh/docs/Installation/figures/zh-cn_image_0187510754.png deleted file mode 100644 index eb2993a905b5fe21af015074d362856b13555a8a..0000000000000000000000000000000000000000 Binary files a/content/zh/docs/Installation/figures/zh-cn_image_0187510754.png and /dev/null differ diff --git a/content/zh/docs/Installation/figures/zh-cn_image_0220924538.png b/content/zh/docs/Installation/figures/zh-cn_image_0220924538.png deleted file mode 100644 index 2392c878598c9716063db62e85848a61ed4e86a8..0000000000000000000000000000000000000000 Binary files a/content/zh/docs/Installation/figures/zh-cn_image_0220924538.png and /dev/null differ diff --git a/content/zh/docs/Installation/figures/zh-cn_image_0221430309.png b/content/zh/docs/Installation/figures/zh-cn_image_0221430309.png deleted file mode 100644 index eb2993a905b5fe21af015074d362856b13555a8a..0000000000000000000000000000000000000000 Binary files a/content/zh/docs/Installation/figures/zh-cn_image_0221430309.png and /dev/null differ diff --git a/content/zh/docs/Installation/figures/zh-cn_image_0221430310.png b/content/zh/docs/Installation/figures/zh-cn_image_0221430310.png deleted file mode 100644 index 64c5a78479a5497e8d89d34da365a9b3b4ad0e63..0000000000000000000000000000000000000000 Binary files a/content/zh/docs/Installation/figures/zh-cn_image_0221430310.png and /dev/null differ diff --git a/content/zh/docs/Installation/figures/zh-cn_image_0221430311.png b/content/zh/docs/Installation/figures/zh-cn_image_0221430311.png deleted file mode 100644 index 4ffcb081e2c8f82bcc49a65a939f2cd8bd6f949b..0000000000000000000000000000000000000000 Binary files a/content/zh/docs/Installation/figures/zh-cn_image_0221430311.png and /dev/null differ diff --git a/content/zh/docs/Installation/figures/zh-cn_image_0221430312.png b/content/zh/docs/Installation/figures/zh-cn_image_0221430312.png deleted file mode 100644 index d67b599b9ab74017c0800529053befed3efab8a7..0000000000000000000000000000000000000000 Binary files a/content/zh/docs/Installation/figures/zh-cn_image_0221430312.png and /dev/null differ diff --git a/content/zh/docs/Installation/figures/zh-cn_image_0221430313.png b/content/zh/docs/Installation/figures/zh-cn_image_0221430313.png deleted file mode 100644 index eb2993a905b5fe21af015074d362856b13555a8a..0000000000000000000000000000000000000000 Binary files a/content/zh/docs/Installation/figures/zh-cn_image_0221430313.png and /dev/null differ diff --git a/content/zh/docs/Installation/figures/zh-cn_image_0220373181.png b/content/zh/docs/Installation/figures/zh-cn_image_0229291229.png similarity index 100% rename from content/zh/docs/Installation/figures/zh-cn_image_0220373181.png rename to content/zh/docs/Installation/figures/zh-cn_image_0229291229.png diff --git a/content/zh/docs/Installation/figures/zh-cn_image_0229291236.png b/content/zh/docs/Installation/figures/zh-cn_image_0229291236.png new file mode 100644 index 0000000000000000000000000000000000000000..a32856aa08e459ed0f51f8fcf4c2f51511c12095 Binary files /dev/null and b/content/zh/docs/Installation/figures/zh-cn_image_0229291236.png differ diff --git a/content/zh/docs/Installation/figures/zh-cn_image_0220373240.png b/content/zh/docs/Installation/figures/zh-cn_image_0229291243.png similarity index 100% rename from content/zh/docs/Installation/figures/zh-cn_image_0220373240.png rename to content/zh/docs/Installation/figures/zh-cn_image_0229291243.png diff --git a/content/zh/docs/Installation/figures/zh-cn_image_0187511561.png b/content/zh/docs/Installation/figures/zh-cn_image_0229291247.png similarity index 100% rename from content/zh/docs/Installation/figures/zh-cn_image_0187511561.png rename to content/zh/docs/Installation/figures/zh-cn_image_0229291247.png diff --git a/content/zh/docs/Installation/figures/zh-cn_image_0220373180.jpg b/content/zh/docs/Installation/figures/zh-cn_image_0229291264.jpg similarity index 100% rename from content/zh/docs/Installation/figures/zh-cn_image_0220373180.jpg rename to content/zh/docs/Installation/figures/zh-cn_image_0229291264.jpg diff --git a/content/zh/docs/Installation/figures/zh-cn_image_0187511784.png b/content/zh/docs/Installation/figures/zh-cn_image_0229291270.png similarity index 100% rename from content/zh/docs/Installation/figures/zh-cn_image_0187511784.png rename to content/zh/docs/Installation/figures/zh-cn_image_0229291270.png diff --git a/content/zh/docs/Installation/figures/zh-cn_image_0220373224.png b/content/zh/docs/Installation/figures/zh-cn_image_0229291272.png similarity index 100% rename from content/zh/docs/Installation/figures/zh-cn_image_0220373224.png rename to content/zh/docs/Installation/figures/zh-cn_image_0229291272.png diff --git a/content/zh/docs/Installation/figures/zh-cn_image_0220373206.png b/content/zh/docs/Installation/figures/zh-cn_image_0229291280.png similarity index 100% rename from content/zh/docs/Installation/figures/zh-cn_image_0220373206.png rename to content/zh/docs/Installation/figures/zh-cn_image_0229291280.png diff --git a/content/zh/docs/Installation/figures/zh-cn_image_0187511378.png b/content/zh/docs/Installation/figures/zh-cn_image_0229291286.png similarity index 100% rename from content/zh/docs/Installation/figures/zh-cn_image_0187511378.png rename to content/zh/docs/Installation/figures/zh-cn_image_0229291286.png diff --git a/content/zh/docs/Installation/figures/zh-cn_image_0220373199.png b/content/zh/docs/Installation/figures/zh-cn_image_0229420473.png similarity index 100% rename from content/zh/docs/Installation/figures/zh-cn_image_0220373199.png rename to content/zh/docs/Installation/figures/zh-cn_image_0229420473.png diff --git a/content/zh/docs/Installation/figures/zh-cn_image_0231657950.png b/content/zh/docs/Installation/figures/zh-cn_image_0231657950.png new file mode 100644 index 0000000000000000000000000000000000000000..bea985ef710c57aeba16600067304b1005ad92e8 Binary files /dev/null and b/content/zh/docs/Installation/figures/zh-cn_image_0231657950.png differ diff --git "a/content/zh/docs/Installation/figures/\345\210\233\345\273\272\347\224\250\346\210\267-4.png" "b/content/zh/docs/Installation/figures/\345\210\233\345\273\272\347\224\250\346\210\267-4.png" deleted file mode 100644 index a5407dd247737be8aa9727ca7e8d83ffb9e8146c..0000000000000000000000000000000000000000 Binary files "a/content/zh/docs/Installation/figures/\345\210\233\345\273\272\347\224\250\346\210\267-4.png" and /dev/null differ diff --git "a/content/zh/docs/Installation/figures/\345\210\233\345\273\272\347\224\250\346\210\267.png" "b/content/zh/docs/Installation/figures/\345\210\233\345\273\272\347\224\250\346\210\267.png" index dba7a0f0a320c6c2c4ec41940e974bd1ca22e46d..e0e16bddd0fe27384c35361b922cb901533c3403 100644 Binary files "a/content/zh/docs/Installation/figures/\345\210\233\345\273\272\347\224\250\346\210\267.png" and "b/content/zh/docs/Installation/figures/\345\210\233\345\273\272\347\224\250\346\210\267.png" differ diff --git "a/content/zh/docs/Installation/figures/\345\215\212\350\207\252\345\212\250-new.png" "b/content/zh/docs/Installation/figures/\345\215\212\350\207\252\345\212\250-new.png" new file mode 100644 index 0000000000000000000000000000000000000000..f9344b7da68e2fba527715e50fa77dae3d4a0c9e Binary files /dev/null and "b/content/zh/docs/Installation/figures/\345\215\212\350\207\252\345\212\250-new.png" differ diff --git "a/content/zh/docs/Installation/figures/\345\242\236\345\212\240inst-noverifyssl\345\217\202\346\225\260.png" "b/content/zh/docs/Installation/figures/\345\242\236\345\212\240inst-noverifyssl\345\217\202\346\225\260.png" new file mode 100644 index 0000000000000000000000000000000000000000..d55cc62d83c74696a3b6cb4f6f3ad3b705265151 Binary files /dev/null and "b/content/zh/docs/Installation/figures/\345\242\236\345\212\240inst-noverifyssl\345\217\202\346\225\260.png" differ diff --git "a/content/zh/docs/Installation/figures/\345\256\211\350\243\205\344\275\215\347\275\256.png" "b/content/zh/docs/Installation/figures/\345\256\211\350\243\205\344\275\215\347\275\256.png" deleted file mode 100644 index 7d24a51dcce067007b4f3638bf9a42634fe1b133..0000000000000000000000000000000000000000 Binary files "a/content/zh/docs/Installation/figures/\345\256\211\350\243\205\344\275\215\347\275\256.png" and /dev/null differ diff --git "a/content/zh/docs/Installation/figures/\345\256\211\350\243\205\345\256\214\346\210\2201-0.png" "b/content/zh/docs/Installation/figures/\345\256\211\350\243\205\345\256\214\346\210\2201-0.png" new file mode 100644 index 0000000000000000000000000000000000000000..f2169685ef202bae133ae74fec620ec64aea46df Binary files /dev/null and "b/content/zh/docs/Installation/figures/\345\256\211\350\243\205\345\256\214\346\210\2201-0.png" differ diff --git "a/content/zh/docs/Installation/figures/\345\256\211\350\243\205\345\256\214\346\210\2201.png" "b/content/zh/docs/Installation/figures/\345\256\211\350\243\205\345\256\214\346\210\2201.png" new file mode 100644 index 0000000000000000000000000000000000000000..f2169685ef202bae133ae74fec620ec64aea46df Binary files /dev/null and "b/content/zh/docs/Installation/figures/\345\256\211\350\243\205\345\256\214\346\210\2201.png" differ diff --git "a/content/zh/docs/Installation/figures/\345\256\211\350\243\205\345\256\214\346\210\220\345\220\216\346\214\211Enter\351\224\256\351\207\215\345\220\257.png" "b/content/zh/docs/Installation/figures/\345\256\211\350\243\205\345\256\214\346\210\220\345\220\216\346\214\211Enter\351\224\256\351\207\215\345\220\257.png" deleted file mode 100644 index e24f00d53626c1f7e56b34dbbe1d60cb9c3bcad3..0000000000000000000000000000000000000000 Binary files "a/content/zh/docs/Installation/figures/\345\256\211\350\243\205\345\256\214\346\210\220\345\220\216\346\214\211Enter\351\224\256\351\207\215\345\220\257.png" and /dev/null differ diff --git "a/content/zh/docs/Installation/figures/\345\256\211\350\243\205\345\274\225\345\257\274\347\225\214\351\235\242.png" "b/content/zh/docs/Installation/figures/\345\256\211\350\243\205\345\274\225\345\257\274\347\225\214\351\235\242.png" index a962d87397395c531092e64ffcc1b19aa80c7383..9dadf8b0a5044aa83cbe7179fce17c9807b9188c 100644 Binary files "a/content/zh/docs/Installation/figures/\345\256\211\350\243\205\345\274\225\345\257\274\347\225\214\351\235\242.png" and "b/content/zh/docs/Installation/figures/\345\256\211\350\243\205\345\274\225\345\257\274\347\225\214\351\235\242.png" differ diff --git "a/content/zh/docs/Installation/figures/\345\256\211\350\243\205\346\246\202\350\247\210-0.png" "b/content/zh/docs/Installation/figures/\345\256\211\350\243\205\346\246\202\350\247\210-0.png" deleted file mode 100644 index d7bb9ef4c4d6b906d4e87456681aaf59c2787c97..0000000000000000000000000000000000000000 Binary files "a/content/zh/docs/Installation/figures/\345\256\211\350\243\205\346\246\202\350\247\210-0.png" and /dev/null differ diff --git "a/content/zh/docs/Installation/figures/\345\256\211\350\243\205\346\246\202\350\247\210.png" "b/content/zh/docs/Installation/figures/\345\256\211\350\243\205\346\246\202\350\247\210.png" index be8ea7003d6781dd955e60463c05ba3fbb29d89c..fc8e7c689be4f53f44ecf5fab174f9fe47b1e3fb 100644 Binary files "a/content/zh/docs/Installation/figures/\345\256\211\350\243\205\346\246\202\350\247\210.png" and "b/content/zh/docs/Installation/figures/\345\256\211\350\243\205\346\246\202\350\247\210.png" differ diff --git "a/content/zh/docs/Installation/figures/\345\256\211\350\243\205\346\272\220-2.png" "b/content/zh/docs/Installation/figures/\345\256\211\350\243\205\346\272\220-2.png" deleted file mode 100644 index 16fe926ac0d1b0109c6572dcc9dd06ca2574ca79..0000000000000000000000000000000000000000 Binary files "a/content/zh/docs/Installation/figures/\345\256\211\350\243\205\346\272\220-2.png" and /dev/null differ diff --git "a/content/zh/docs/Installation/figures/\345\256\211\350\243\205\346\272\220.png" "b/content/zh/docs/Installation/figures/\345\256\211\350\243\205\346\272\220.png" index 90f3dc69a8a23a3790504ad4bb82f0cba03b37d5..c9b73cf1fd31b22c2efda3f7180441563dcf675c 100644 Binary files "a/content/zh/docs/Installation/figures/\345\256\211\350\243\205\346\272\220.png" and "b/content/zh/docs/Installation/figures/\345\256\211\350\243\205\346\272\220.png" differ diff --git "a/content/zh/docs/Installation/figures/\345\256\211\350\243\205\347\233\256\346\240\207\344\275\215\347\275\256.png" "b/content/zh/docs/Installation/figures/\345\256\211\350\243\205\347\233\256\346\240\207\344\275\215\347\275\256.png" index 5f460b4fb33a0687a5463c95aa736dc367ba1c91..b6cac11e67ade50205e6fc090a9375882138f3bd 100644 Binary files "a/content/zh/docs/Installation/figures/\345\256\211\350\243\205\347\233\256\346\240\207\344\275\215\347\275\256.png" and "b/content/zh/docs/Installation/figures/\345\256\211\350\243\205\347\233\256\346\240\207\344\275\215\347\275\256.png" differ diff --git "a/content/zh/docs/Installation/figures/\345\256\211\350\243\205\350\275\257\344\273\266.png" "b/content/zh/docs/Installation/figures/\345\256\211\350\243\205\350\275\257\344\273\266.png" deleted file mode 100644 index ae269accb94ccf02ccc65ac9098c5c486a8b02f5..0000000000000000000000000000000000000000 Binary files "a/content/zh/docs/Installation/figures/\345\256\211\350\243\205\350\275\257\344\273\266.png" and /dev/null differ diff --git "a/content/zh/docs/Installation/figures/\345\256\211\350\243\205\350\277\207\347\250\213.png" "b/content/zh/docs/Installation/figures/\345\256\211\350\243\205\350\277\207\347\250\213.png" index 2424af138e096520f7ab3f550b435b8d87662769..dc5b120b1ea8e485ae17d62ffc18492d9fbadc7d 100644 Binary files "a/content/zh/docs/Installation/figures/\345\256\211\350\243\205\350\277\207\347\250\213.png" and "b/content/zh/docs/Installation/figures/\345\256\211\350\243\205\350\277\207\347\250\213.png" differ diff --git "a/content/zh/docs/Installation/figures/\345\256\214\346\210\220\345\256\211\350\243\205.png" "b/content/zh/docs/Installation/figures/\345\256\214\346\210\220\345\256\211\350\243\205.png" index 89395a76f256a7eff1a47178ced2fba52bdffa07..242c44c7fac7d01349ca281aa63ba5158eccba1a 100644 Binary files "a/content/zh/docs/Installation/figures/\345\256\214\346\210\220\345\256\211\350\243\205.png" and "b/content/zh/docs/Installation/figures/\345\256\214\346\210\220\345\256\211\350\243\205.png" differ diff --git "a/content/zh/docs/Installation/figures/\345\274\200\345\247\213\345\256\211\350\243\205-5.png" "b/content/zh/docs/Installation/figures/\345\274\200\345\247\213\345\256\211\350\243\205-5.png" deleted file mode 100644 index 51b3f254d20fc131eb76cc3c8a41bcc33b1bf187..0000000000000000000000000000000000000000 Binary files "a/content/zh/docs/Installation/figures/\345\274\200\345\247\213\345\256\211\350\243\205-5.png" and /dev/null differ diff --git "a/content/zh/docs/Installation/figures/\345\274\200\345\247\213\345\256\211\350\243\205.png" "b/content/zh/docs/Installation/figures/\345\274\200\345\247\213\345\256\211\350\243\205.png" index b060c285dbad25e2beb2374bedeea8565f3802c6..b0c54bfea5b8cd0aa45e8959d2df4c4850a4f5d7 100644 Binary files "a/content/zh/docs/Installation/figures/\345\274\200\345\247\213\345\256\211\350\243\205.png" and "b/content/zh/docs/Installation/figures/\345\274\200\345\247\213\345\256\211\350\243\205.png" differ diff --git "a/content/zh/docs/Installation/figures/\346\211\213\345\212\250\345\210\206\345\214\272.png" "b/content/zh/docs/Installation/figures/\346\211\213\345\212\250\345\210\206\345\214\272.png" index e7c926e26f7c120170d2c923d8052d46b5d6ad82..f3bd01b3f698d73a2a558b7b9d97de45a44794e0 100644 Binary files "a/content/zh/docs/Installation/figures/\346\211\213\345\212\250\345\210\206\345\214\272.png" and "b/content/zh/docs/Installation/figures/\346\211\213\345\212\250\345\210\206\345\214\272.png" differ diff --git "a/content/zh/docs/Installation/figures/\346\227\245\346\234\237\345\222\214\346\227\266\351\227\264.png" "b/content/zh/docs/Installation/figures/\346\227\245\346\234\237\345\222\214\346\227\266\351\227\264.png" index 0c7a475d10fc6997d559c051133492e14ec37ec3..cb4219a0449d51450e5edb567cc805797c5e2af0 100644 Binary files "a/content/zh/docs/Installation/figures/\346\227\245\346\234\237\345\222\214\346\227\266\351\227\264.png" and "b/content/zh/docs/Installation/figures/\346\227\245\346\234\237\345\222\214\346\227\266\351\227\264.png" differ diff --git "a/content/zh/docs/Installation/figures/\346\227\266\345\214\272.png" "b/content/zh/docs/Installation/figures/\346\227\266\345\214\272.png" deleted file mode 100644 index 728ad91c47791e2179907fc44bf895a4bb69e935..0000000000000000000000000000000000000000 Binary files "a/content/zh/docs/Installation/figures/\346\227\266\345\214\272.png" and /dev/null differ diff --git "a/content/zh/docs/Installation/figures/\347\273\223\346\235\237\351\205\215\347\275\256-new.png" "b/content/zh/docs/Installation/figures/\347\273\223\346\235\237\351\205\215\347\275\256-new.png" new file mode 100644 index 0000000000000000000000000000000000000000..2565162ec423389fada01616a26cdf2e857d19b0 Binary files /dev/null and "b/content/zh/docs/Installation/figures/\347\273\223\346\235\237\351\205\215\347\275\256-new.png" differ diff --git "a/content/zh/docs/Installation/figures/\347\275\221\347\273\234\345\222\214\344\270\273\346\234\272\345\220\215.png" "b/content/zh/docs/Installation/figures/\347\275\221\347\273\234\345\222\214\344\270\273\346\234\272\345\220\215.png" index 13d22f1f4ebff34dac85dae48e21b1d48f049168..ecb6a7b923d7bd48f3c509349e56a106f4f84f79 100644 Binary files "a/content/zh/docs/Installation/figures/\347\275\221\347\273\234\345\222\214\344\270\273\346\234\272\345\220\215.png" and "b/content/zh/docs/Installation/figures/\347\275\221\347\273\234\345\222\214\344\270\273\346\234\272\345\220\215.png" differ diff --git "a/content/zh/docs/Installation/figures/\347\275\221\347\273\234\351\205\215\347\275\256.png" "b/content/zh/docs/Installation/figures/\347\275\221\347\273\234\351\205\215\347\275\256.png" deleted file mode 100644 index 7aae5f3c170c435cb077af26624747862bf10511..0000000000000000000000000000000000000000 Binary files "a/content/zh/docs/Installation/figures/\347\275\221\347\273\234\351\205\215\347\275\256.png" and /dev/null differ diff --git "a/content/zh/docs/Installation/figures/\350\257\255\350\250\200\346\224\257\346\214\201-1.png" "b/content/zh/docs/Installation/figures/\350\257\255\350\250\200\346\224\257\346\214\201-1.png" deleted file mode 100644 index a5ad25e16bfd5fde821820c0042c65f1e13db288..0000000000000000000000000000000000000000 Binary files "a/content/zh/docs/Installation/figures/\350\257\255\350\250\200\346\224\257\346\214\201-1.png" and /dev/null differ diff --git "a/content/zh/docs/Installation/figures/\350\257\255\350\250\200\346\224\257\346\214\201.png" "b/content/zh/docs/Installation/figures/\350\257\255\350\250\200\346\224\257\346\214\201.png" index 673519c87667d8b3040d1db05fbae129f3659520..441502ff741d16070d236be1d711ee12742e8039 100644 Binary files "a/content/zh/docs/Installation/figures/\350\257\255\350\250\200\346\224\257\346\214\201.png" and "b/content/zh/docs/Installation/figures/\350\257\255\350\250\200\346\224\257\346\214\201.png" differ diff --git "a/content/zh/docs/Installation/figures/\350\275\257\344\273\266\351\200\211\346\213\251.png" "b/content/zh/docs/Installation/figures/\350\275\257\344\273\266\351\200\211\346\213\251.png" index 7e71564ea9642c997633465a64e0061b49c692dd..7d96eefad1792fc3c630bd91255cd69e17126a5b 100644 Binary files "a/content/zh/docs/Installation/figures/\350\275\257\344\273\266\351\200\211\346\213\251.png" and "b/content/zh/docs/Installation/figures/\350\275\257\344\273\266\351\200\211\346\213\251.png" differ diff --git "a/content/zh/docs/Installation/figures/\351\200\211\346\213\251.png" "b/content/zh/docs/Installation/figures/\351\200\211\346\213\251.png" new file mode 100644 index 0000000000000000000000000000000000000000..8dc638248f8121d50adf9b81da4b3f11e7ce6317 Binary files /dev/null and "b/content/zh/docs/Installation/figures/\351\200\211\346\213\251.png" differ diff --git "a/content/zh/docs/Installation/figures/\351\200\211\346\213\251\350\257\255\350\250\200.png" "b/content/zh/docs/Installation/figures/\351\200\211\346\213\251\350\257\255\350\250\200.png" index 394a4aca72387b00e8ae9ebf6b1ce167a8488870..ea5b654d136645476de24eb9a8de3f20de1fd913 100644 Binary files "a/content/zh/docs/Installation/figures/\351\200\211\346\213\251\350\257\255\350\250\200.png" and "b/content/zh/docs/Installation/figures/\351\200\211\346\213\251\350\257\255\350\250\200.png" differ diff --git "a/content/zh/docs/Installation/figures/\351\205\215\347\275\256\351\224\231\350\257\257\346\217\220\347\244\272.png" "b/content/zh/docs/Installation/figures/\351\205\215\347\275\256\351\224\231\350\257\257\346\217\220\347\244\272.png" new file mode 100644 index 0000000000000000000000000000000000000000..6ab03376288f8ab349fa4cb177953ef841ad04b4 Binary files /dev/null and "b/content/zh/docs/Installation/figures/\351\205\215\347\275\256\351\224\231\350\257\257\346\217\220\347\244\272.png" differ diff --git "a/content/zh/docs/Installation/figures/\351\224\256\347\233\230\345\270\203\345\261\200.png" "b/content/zh/docs/Installation/figures/\351\224\256\347\233\230\345\270\203\345\261\200.png" index 7ffd881bdac154b1fdf64e2979c68a8f2cc29efa..adc8554e78c11349fe8d19164305ba5e7eae8f77 100644 Binary files "a/content/zh/docs/Installation/figures/\351\224\256\347\233\230\345\270\203\345\261\200.png" and "b/content/zh/docs/Installation/figures/\351\224\256\347\233\230\345\270\203\345\261\200.png" differ diff --git "a/content/zh/docs/Installation/openEuler\345\274\200\346\234\272\345\220\216\350\277\233\345\205\245emergency\346\250\241\345\274\217.md" "b/content/zh/docs/Installation/openEuler\345\274\200\346\234\272\345\220\216\350\277\233\345\205\245emergency\346\250\241\345\274\217.md" index e833e919f5180ac07c71c1bdbd7ef65c83ce1155..86f076d34552b4e81125722e5efec9a9d67ba31d 100644 --- "a/content/zh/docs/Installation/openEuler\345\274\200\346\234\272\345\220\216\350\277\233\345\205\245emergency\346\250\241\345\274\217.md" +++ "b/content/zh/docs/Installation/openEuler\345\274\200\346\234\272\345\220\216\350\277\233\345\205\245emergency\346\250\241\345\274\217.md" @@ -1,10 +1,10 @@ -# openEuler开机后进入emergency模式 +# openEuler开机后进入emergency模式 ## 问题现象 openEuler系统开机后进入emergency模式,如下图所示: -![](figures/zh-cn_image_0220373180.jpg) +![](figures/zh-cn_image_0229291264.jpg) ## 原因分析 diff --git "a/content/zh/docs/Installation/x86\347\211\251\347\220\206\346\234\272UEFI\346\250\241\345\274\217\347\224\261\344\272\216security-boot\345\256\211\345\205\250\351\200\211\351\241\271\351\227\256\351\242\230\346\227\240\346\263\225\345\256\211\350\243\205.md" "b/content/zh/docs/Installation/x86\347\211\251\347\220\206\346\234\272UEFI\346\250\241\345\274\217\347\224\261\344\272\216security-boot\345\256\211\345\205\250\351\200\211\351\241\271\351\227\256\351\242\230\346\227\240\346\263\225\345\256\211\350\243\205.md" new file mode 100644 index 0000000000000000000000000000000000000000..49efe241acb1b0b7ba01201e536ee7526a26090d --- /dev/null +++ "b/content/zh/docs/Installation/x86\347\211\251\347\220\206\346\234\272UEFI\346\250\241\345\274\217\347\224\261\344\272\216security-boot\345\256\211\345\205\250\351\200\211\351\241\271\351\227\256\351\242\230\346\227\240\346\263\225\345\256\211\350\243\205.md" @@ -0,0 +1,33 @@ +# x86物理机UEFI模式由于security boot安全选项问题无法安装 + +## 问题现象 + +x86物理机安装系统时,由于设置了BIOS选项security boot 为enable(默认是disable),导致系统一直停留在“No bootable device”提示界面,无法继续安装,如[图1](#fig115949762617)所示。 + +**图 1** “No bootable device”提示界面 +![](figures/No-bootable-device-提示界面.png "No-bootable-device-提示界面") + +## 原因分析 + +开启security boot后,主板会验证引导程序及操作系统 ,若没有用对应的私钥进行签名,则无法通过主板上内置公钥的认证。 + +## 解决方法 + +进入BIOS,设置security boot为disable,重新安装即可。 + +1. 系统启动时,按“F11”,输入密码“Admin@9000”进入BIOS。 + + ![](figures/BIOS.png) + +2. 选择进入Administer Secure Boot。 + + ![](figures/security.png) + +3. 设置Enforce Secure Boot为Disabled。 + + ![](figures/选择.png) + + >![](public_sys-resources/icon-note.gif) **说明:** + >设置security boot为disable之后,保存退出,重新安装即可。 + + diff --git a/content/zh/docs/Installation/zh-cn_bookmap_0220373211.md b/content/zh/docs/Installation/zh-cn_bookmap_0229291255.md similarity index 69% rename from content/zh/docs/Installation/zh-cn_bookmap_0220373211.md rename to content/zh/docs/Installation/zh-cn_bookmap_0229291255.md index bfce5ea6001c375b97dcbb0e09bb1424dce32553..9251b8bb562141bfcf6ab5578987969f2dbda8bb 100644 --- a/content/zh/docs/Installation/zh-cn_bookmap_0220373211.md +++ b/content/zh/docs/Installation/zh-cn_bookmap_0229291255.md @@ -5,17 +5,25 @@ - [安装准备](安装准备.md) - [获取安装源](获取安装源.md) - [发布包完整性校验](发布包完整性校验.md) - - [硬件兼容支持](硬件兼容支持.md) - - [最小硬件要求](最小硬件要求.md) + - [物理机的安装要求](物理机的安装要求.md) + - [硬件兼容支持](硬件兼容支持.md) + - [最小硬件要求](最小硬件要求.md) + + - [虚拟机的安装要求](虚拟机的安装要求.md) + - [虚拟化平台兼容性](虚拟化平台兼容性.md) + - [最小虚拟化空间要求](最小虚拟化空间要求.md) + - [安装方式介绍](安装方式介绍.md) - [通过光盘安装](通过光盘安装.md) - [通过USB盘安装](通过USB盘安装.md) - [使用PXE通过网络安装](使用PXE通过网络安装.md) + - [通过qcow2镜像安装](通过qcow2镜像安装.md) + - [通过私有镜像安装](通过私有镜像安装.md) - [安装指导](安装指导.md) - [启动安装](启动安装.md) - - [(推荐)通过图形化模式安装]((推荐)通过图形化模式安装.md) + - [通过图形化模式安装](通过图形化模式安装.md) - [设置安装程序语言](设置安装程序语言.md) - [进入安装界面](进入安装界面.md) - [设置安装参数](设置安装参数.md) @@ -31,20 +39,6 @@ - [安装过程配置](安装过程配置.md) - [安装完成](安装完成.md) - - [通过文本模式安装](通过文本模式安装.md) - - [进入安装界面](进入安装界面-0.md) - - [设置安装参数](设置安装参数-1.md) - - [设置系统语言](设置系统语言-2.md) - - [设置时区、NTP服务](设置时区-NTP服务.md) - - [设置安装源](设置安装源-3.md) - - [选择安装软件](选择安装软件-4.md) - - [设置安装位置](设置安装位置-5.md) - - [设置网络](设置网络.md) - - [设置root密码](设置root密码.md) - - [创建用户](创建用户.md) - - - [完成安装](完成安装.md) - - [使用kickstart自动化安装](使用kickstart自动化安装.md) - [总体介绍](总体介绍.md) @@ -58,5 +52,7 @@ - [系统中存在无法激活的逻辑卷组时,重装系统失败](系统中存在无法激活的逻辑卷组时-重装系统失败.md) - [选择安装源出现异常](选择安装源出现异常.md) - [如何手动开启kdump服务](如何手动开启kdump服务.md) + - [多块磁盘组成逻辑卷安装系统后,再次安装不能只选其中一块磁盘](多块磁盘组成逻辑卷安装系统后-再次安装不能只选其中一块磁盘.md) + - [x86物理机UEFI模式由于security boot安全选项问题无法安装](x86物理机UEFI模式由于security-boot安全选项问题无法安装.md) diff --git "a/content/zh/docs/Installation/\344\275\277\347\224\250PXE\351\200\232\350\277\207\347\275\221\347\273\234\345\256\211\350\243\205.md" "b/content/zh/docs/Installation/\344\275\277\347\224\250PXE\351\200\232\350\277\207\347\275\221\347\273\234\345\256\211\350\243\205.md" index cbf983923cef742a425bfecd8a7c548a1ed8cd38..bf2ac3d3ef4e4312f61aa1b3d8a6f345eaaf45e3 100644 --- "a/content/zh/docs/Installation/\344\275\277\347\224\250PXE\351\200\232\350\277\207\347\275\221\347\273\234\345\256\211\350\243\205.md" +++ "b/content/zh/docs/Installation/\344\275\277\347\224\250PXE\351\200\232\350\277\207\347\275\221\347\273\234\345\256\211\350\243\205.md" @@ -1,4 +1,4 @@ -# 使用PXE通过网络安装 +# 使用PXE通过网络安装 要使用 PXE 引导,您需要正确配置服务器以及您的计算机需支持 PXE 的网络接口。 diff --git "a/content/zh/docs/Installation/\344\275\277\347\224\250kickstart\350\207\252\345\212\250\345\214\226\345\256\211\350\243\205.md" "b/content/zh/docs/Installation/\344\275\277\347\224\250kickstart\350\207\252\345\212\250\345\214\226\345\256\211\350\243\205.md" index 7da7e4f77b1d88db61356383cec968da20003179..b102fac965b7d9bf11e08634b9122b19281084f5 100644 --- "a/content/zh/docs/Installation/\344\275\277\347\224\250kickstart\350\207\252\345\212\250\345\214\226\345\256\211\350\243\205.md" +++ "b/content/zh/docs/Installation/\344\275\277\347\224\250kickstart\350\207\252\345\212\250\345\214\226\345\256\211\350\243\205.md" @@ -1,4 +1,4 @@ -# 使用kickstart自动化安装 +# 使用kickstart自动化安装 diff --git "a/content/zh/docs/Installation/\345\205\250\350\207\252\345\212\250\345\214\226\345\256\211\350\243\205\346\214\207\345\257\274.md" "b/content/zh/docs/Installation/\345\205\250\350\207\252\345\212\250\345\214\226\345\256\211\350\243\205\346\214\207\345\257\274.md" index 8c556d95848b5b4045856479d624b21f264cae77..e76a5ca070e110f349868dc0b7144d4b8401182a 100644 --- "a/content/zh/docs/Installation/\345\205\250\350\207\252\345\212\250\345\214\226\345\256\211\350\243\205\346\214\207\345\257\274.md" +++ "b/content/zh/docs/Installation/\345\205\250\350\207\252\345\212\250\345\214\226\345\256\211\350\243\205\346\214\207\345\257\274.md" @@ -1,4 +1,4 @@ -# 全自动化安装指导 +# 全自动化安装指导 ## 环境要求 @@ -8,7 +8,7 @@ - httpd:存放kickstart文件。 - tftp:提供vmlinuz和initrd文件。 - dhcpd/pxe:提供DHCP服务。 -- ISO:openEuler-1.0-base-aarch64-dvd.iso。 +- ISO:openEuler-20.03-LTS-aarch64-dvd.iso。 ## 操作步骤 @@ -58,7 +58,7 @@ 3. 安装源的制作。 ``` - # mount openEuler-1.0-base-aarch64-dvd.iso /mnt + # mount openEuler-20.03-LTS-aarch64-dvd.iso /mnt # cp -r /mnt/* /var/www/html/openEuler/ ``` @@ -121,8 +121,9 @@ set timeout=60 + ### BEGIN /etc/grub.d/10_linux ### - menuentry 'Install openEuler 1.0 with text mode' --class red --class gnu-linux --class gnu --class os { + menuentry 'Install openEuler 20.03 LTS' --class red --class gnu-linux --class gnu --class os { set root=(tftp,192.168.1.1) linux /vmlinuz ro inst.text inst.geoloc=0 console=ttyAMA0 console=tty0 inst.ks=http://192.168.122.1/ks/openEuler-ks.cfg initrd /initrd.img @@ -159,15 +160,15 @@ 1. 在“Start boot option”界面按下“F2”选择从网络pxe启动,开始自动化安装。 - ![](figures/zh-cn_image_0221430310.png) + ![](figures/zh-cn_image_0229291270.png) - ![](figures/zh-cn_image_0221430311.png) + ![](figures/zh-cn_image_0229291286.png) - ![](figures/zh-cn_image_0221430312.png) + ![](figures/zh-cn_image_0229291247.png) 2. 进入系统全自动化安装界面。 3. 确认系统安装完毕。 - ![](figures/zh-cn_image_0221430313.png) + ![](figures/安装完成1-0.png) diff --git "a/content/zh/docs/Installation/\345\210\233\345\273\272\347\224\250\346\210\267.md" "b/content/zh/docs/Installation/\345\210\233\345\273\272\347\224\250\346\210\267.md" deleted file mode 100644 index b76e7036d9c1a807316bed7d1a831fecf52c4d76..0000000000000000000000000000000000000000 --- "a/content/zh/docs/Installation/\345\210\233\345\273\272\347\224\250\346\210\267.md" +++ /dev/null @@ -1,12 +0,0 @@ -# 创建用户 - -在“安装概览”页面中输入“8”,然后按“Enter”,按照界面提示,创建用户、设置用户全名/用户名、用户密码、是否管理员、属组等信息。 - ->![](public_sys-resources/icon-note.gif) **说明:** ->用户在新创建用户密码时,需要满足密码复杂度要求,否则会设置失败。建议密码的复杂度参照“安装指导 \> 通过图形化模式安装 \> 安装过程配置”章节中的“密码复杂度”。 - -**图 1** 创建用户 -![](figures/创建用户-4.png "创建用户-4") - -设置完成后,在界面输入“c”,返回“安装概览”页面。 - diff --git "a/content/zh/docs/Installation/\345\211\215\350\250\200.md" "b/content/zh/docs/Installation/\345\211\215\350\250\200.md" index 5a6810eb455f9db16e9eaf66285aba7716d3e4e3..05293ca9e640b7d981f869e6e6f043f34b304d8e 100644 --- "a/content/zh/docs/Installation/\345\211\215\350\250\200.md" +++ "b/content/zh/docs/Installation/\345\211\215\350\250\200.md" @@ -1,12 +1,12 @@ -# 前言 +# 前言 ## 概述 -本文档主要介绍openEuler 1.0的系统安装方法,包括图形化模式安装、文本模式安装,以指导用户顺利完成openEuler 1.0的系统安装。 +本文档主要介绍openEuler操作系统安装方法,包括图形化模式安装、文本模式安装,以指导用户顺利完成openEule操作系统安装。 ## 读者对象 -本文档适用于所有使用openEuler 1.0系统的用户,特别是初次使用或想了解openEuler的用户,包括系统工程师、管理员及维护人员等。使用本手册的用户需要具备基础的Linux系统管理知识。 +本文档适用于所有使用openEuler操作系统的用户,特别是初次使用或想了解openEuler的用户,包括系统工程师、管理员及维护人员等。使用本手册的用户需要具备基础的Linux系统管理知识。 ## 符号约定 @@ -19,13 +19,13 @@ -

+

用于传递设备或环境安全警示信息。如不避免则可能会导致设备损坏、数据丢失、设备性能降低或其它不可预知的结果。

“须知”不涉及人身伤害。

-

+

对正文中重点信息的补充说明。

“说明”不是安全警示信息,不涉及人身、设备及环境伤害信息。

diff --git "a/content/zh/docs/Installation/\345\215\212\350\207\252\345\212\250\345\214\226\345\256\211\350\243\205\346\214\207\345\257\274.md" "b/content/zh/docs/Installation/\345\215\212\350\207\252\345\212\250\345\214\226\345\256\211\350\243\205\346\214\207\345\257\274.md" index 5ab6ba596834be6a4ca1939975737762f307b039..95b994ebeb9797a9b0297434938db02bcf011ef9 100644 --- "a/content/zh/docs/Installation/\345\215\212\350\207\252\345\212\250\345\214\226\345\256\211\350\243\205\346\214\207\345\257\274.md" +++ "b/content/zh/docs/Installation/\345\215\212\350\207\252\345\212\250\345\214\226\345\256\211\350\243\205\346\214\207\345\257\274.md" @@ -1,4 +1,4 @@ -# 半自动化安装指导 +# 半自动化安装指导 ## 环境要求 @@ -6,7 +6,7 @@ - 物理机/虚拟机(虚拟机创建可参考对应厂商的资料)。包括使用kickstart工具进行自动化安装的计算机和被安装的计算机。 - httpd:存放kickstart文件。 -- ISO: openEuler-1.0-base-aarch64-dvd.iso +- ISO: openEuler-20.03-LTS-aarch64-dvd.iso ## 操作步骤 @@ -101,10 +101,10 @@ **安装系统** 1. 启动系统进入安装选择界面。 - 1. 在“安装指导 \> 启动安装”章节中的“安装引导界面”中选择“Install openEuler 1.0 with text mode”,并按下“e”键。 + 1. 在“安装指导 \> 启动安装”章节中的“安装引导界面”中选择“Install openEuler 20.03 LTS”,并按下“e”键。 2. 启动参数中追加“inst.ks=http://server ip/ks/openEuler-ks.cfg”。 - ![](figures/19.png) + ![](figures/半自动-new.png) 3. 按“Ctrl+x”,开始系统的自动安装。 @@ -112,6 +112,6 @@ 系统安装完毕以后会自动重启,然后再次进入到安装界面,此时关闭计算机,调整启动顺序(优先从硬盘启动)。 - ![](figures/zh-cn_image_0221430309.png) + ![](figures/安装完成1.png) diff --git "a/content/zh/docs/Installation/\345\217\221\345\270\203\345\214\205\345\256\214\346\225\264\346\200\247\346\240\241\351\252\214.md" "b/content/zh/docs/Installation/\345\217\221\345\270\203\345\214\205\345\256\214\346\225\264\346\200\247\346\240\241\351\252\214.md" index a82abf0fb9a21c54bf899a2e9dac99d8f92b7910..2b3ea8263960e3daa40020436890186a6426965f 100644 --- "a/content/zh/docs/Installation/\345\217\221\345\270\203\345\214\205\345\256\214\346\225\264\346\200\247\346\240\241\351\252\214.md" +++ "b/content/zh/docs/Installation/\345\217\221\345\270\203\345\214\205\345\256\214\346\225\264\346\200\247\346\240\241\351\252\214.md" @@ -1,4 +1,4 @@ -# 发布包完整性校验 +# 发布包完整性校验 ## 简介 @@ -10,9 +10,9 @@ 在校验发布包完整性之前,需要准备如下文件: -iso文件:openEuler-1.0-base-aarch64-dvd.iso +iso文件:openEuler-20.03-LTS-aarch64-dvd.iso -校验文件:openEuler-1.0-base-aarch64-dvd.iso.sha256sum +校验文件:openEuler-20.03-LTS-aarch64-dvd.iso.sha256sum ## 操作指导 @@ -21,13 +21,13 @@ iso文件:openEuler-1.0-base-aarch64-dvd.iso 1. 获取校验文件中的校验值。执行命令如下: ``` - #cat openEuler-1.0-base-aarch64-dvd.iso.sha256sum + #cat openEuler-20.03-LTS-aarch64-dvd.iso.sha256sum ``` 2. 计算文件的sha256校验值。执行命令如下: ``` - #sha256sum openEuler-1.0-base-aarch64-dvd.iso + #sha256sum openEuler-20.03-LTS-aarch64-dvd.iso ``` 命令执行完成后,输出校验值。 diff --git "a/content/zh/docs/Installation/\345\220\257\345\212\250\345\256\211\350\243\205.md" "b/content/zh/docs/Installation/\345\220\257\345\212\250\345\256\211\350\243\205.md" index b0b3df40014f1af004876ec0ed778d1e61ff0429..69890190a546ccea4255a7f03451af0842fa99fc 100644 --- "a/content/zh/docs/Installation/\345\220\257\345\212\250\345\256\211\350\243\205.md" +++ "b/content/zh/docs/Installation/\345\220\257\345\212\250\345\256\211\350\243\205.md" @@ -1,6 +1,8 @@ -# 启动安装 +# 启动安装 -在服务器的光驱中加载openEuler 1.0安装镜像,重启服务器,具体步骤如下。 +## 使用光盘引导安装 + +在服务器的光驱中加载openEuler安装镜像,重启服务器,具体步骤如下。 >![](public_sys-resources/icon-note.gif) **说明:** >在安装开始前,需要保证服务器启动选项为光驱优先。安装步骤以BMC挂载虚拟光驱进行光盘安装的操作举例。通过物理光驱安装的操作简单,启动安装后的流程相同,在此不再说明。 @@ -22,25 +24,28 @@ **图 3** 重启图标 ![](figures/重启图标.png "重启图标") -5. 系统使用引导介质完成引导后会显示引导菜单。该引导菜单除启动安装程序外还提供一些选项。安装系统时,默认采用“Test this media & install openEuler 1.0 with GUI mode”方式进行安装。如果要选择默认选项之外的选项,请使用键盘中的“↑”和“↓”方向键进行选择,并在选项为高亮状态时按“Enter”。 - >![](public_sys-resources/icon-note.gif) **说明:** - >- 如果60秒内未按任何键,系统将从默认选项“Test this media & install openEuler 1.0 with GUI mode”自动进入安装界面。 - >- 安装物理机时,如果使用键盘上下键无法选择启动选项,按“Enter”键无响应,可以单击BMC界面上的鼠标控制图标“![](figures/zh-cn_image_0220373199.png)”,设置“键鼠复位”。 +## 安装引导界面 + +系统使用引导介质完成引导后会显示引导菜单。该引导菜单除启动安装程序外还提供一些选项。安装系统时,默认采用“Test this media & install openEuler 20.03 LTS”方式进行安装。如果要选择默认选项之外的选项,请使用键盘中的“↑”和“↓”方向键进行选择,并在选项为高亮状态时按“Enter”。 + +>![](public_sys-resources/icon-note.gif) **说明:** +>- 如果60秒内未按任何键,系统将从默认选项“Test this media & install openEuler 20.03 LTS”自动进入安装界面。 +>- 安装物理机时,如果使用键盘上下键无法选择启动选项,按“Enter”键无响应,可以单击BMC界面上的鼠标控制图标“![](figures/zh-cn_image_0229420473.png)”,设置“键鼠复位”。 - **图 4** 安装引导界面 - ![](figures/安装引导界面.png "安装引导界面") +**图 4** 安装引导界面 +![](figures/安装引导界面.png "安装引导界面") - 安装引导选项说明如下: +安装引导选项说明如下: - - Install openEuler 1.0 with GUI mode —— 在您的服务器上使用图形用户界面模式安装。 - - Install openEuler 1.0 with text mode ——在您的服务器上使用文本模式安装。安装的过程默认在系统的串口tty0中完成。详见“安装指导 \> 通过文本模式安装”章节。 +- Install openEuler 20.03 LTS —— 在您的服务器上使用图形用户界面模式安装。 - - Test this media & install openEuler 1.0 with GUI mode —— 默认选项,在您的服务器上使用图形用户界面模式安装,但在启动安装程序前会进行安装介质的完整性检查。详见“安装指导 \> 通过图形化模式安装”章节。 +- Test this media & install openEuler 20.03 LTS —— 默认选项,在您的服务器上使用图形用户界面模式安装,但在启动安装程序前会进行安装介质的完整性检查。详见“安装指导 \> 通过图形化模式安装”章节。 - - Troubleshooting —— 问题定位模式,系统无法正常安装时使用。进入问题定位模式后,有如下两个选项。 - - Install openEuler 1.0 in basic graphics mode —— 简单图形安装模式,该模式下在系统启动并运行之前不启动视频驱动程序。 - - Rescue the openEuler system —— 救援模式,用于修复系统。该模式下输出定向到VNC或BMC(Baseboard Management Controller)端,串口不可用。 +- Troubleshooting —— 问题定位模式,系统无法正常安装时使用。进入问题定位模式后,有如下两个选项。 + - Install openEuler 20.03 LTS in basic graphics mode —— 简单图形安装模式,该模式下在系统启动并运行之前不启动视频驱动程序。 + - Rescue the openEuler system —— 救援模式,用于修复系统。该模式下输出定向到VNC或BMC(Baseboard Management Controller)端,串口不可用。 +在安装引导界面,按“e”进入已选选项的参数编辑界面,按“c”进入命令行模式。 diff --git "a/content/zh/docs/Installation/\345\244\232\345\235\227\347\243\201\347\233\230\347\273\204\346\210\220\351\200\273\350\276\221\345\215\267\345\256\211\350\243\205\347\263\273\347\273\237\345\220\216-\345\206\215\346\254\241\345\256\211\350\243\205\344\270\215\350\203\275\345\217\252\351\200\211\345\205\266\344\270\255\344\270\200\345\235\227\347\243\201\347\233\230.md" "b/content/zh/docs/Installation/\345\244\232\345\235\227\347\243\201\347\233\230\347\273\204\346\210\220\351\200\273\350\276\221\345\215\267\345\256\211\350\243\205\347\263\273\347\273\237\345\220\216-\345\206\215\346\254\241\345\256\211\350\243\205\344\270\215\350\203\275\345\217\252\351\200\211\345\205\266\344\270\255\344\270\200\345\235\227\347\243\201\347\233\230.md" new file mode 100644 index 0000000000000000000000000000000000000000..689d9c44876b318eaa9e4fdc866acf2657ee1f2d --- /dev/null +++ "b/content/zh/docs/Installation/\345\244\232\345\235\227\347\243\201\347\233\230\347\273\204\346\210\220\351\200\273\350\276\221\345\215\267\345\256\211\350\243\205\347\263\273\347\273\237\345\220\216-\345\206\215\346\254\241\345\256\211\350\243\205\344\270\215\350\203\275\345\217\252\351\200\211\345\205\266\344\270\255\344\270\200\345\235\227\347\243\201\347\233\230.md" @@ -0,0 +1,41 @@ +# 多块磁盘组成逻辑卷安装系统后,再次安装不能只选其中一块磁盘 + +## 问题现象 + +在安装系统时,如果之前的系统选择多块磁盘组成逻辑卷进行安装,再次安装时,如果只选择了其中的一块或几块磁盘,没有全部选择,在保存配置时提示配置错误,如[图1](#fig115949762617)所示。 + +**图 1** 配置错误提示 +![](figures/配置错误提示.png "配置错误提示") + +## 原因分析 + +之前的逻辑卷包含了多块磁盘,只在一块磁盘上安装会破坏逻辑卷。 + +## 解决方法 + +因为多块磁盘组成逻辑卷相当于一个整体,所以只需要删除对应的卷组即可。 + +1. 按“Ctrl+Alt+F2”可以切换到命令行,执行如下命令找到卷组。 + + ``` + vgs + ``` + + ![](figures/zh-cn_image_0231657950.png) + +2. 执行如下命令,删除卷组。 + + ``` + vgremove euleros + ``` + +3. 执行如下命令,重启安装程序即可生效。 + + ``` + systemctl restart anaconda + ``` + + >![](public_sys-resources/icon-note.gif) **说明:** + >图形模式下也可以按“Ctrl+Alt+F6”回到图形界面,点击[图1](#fig115949762617)右下角的“Refresh”刷新存储配置生效。 + + diff --git "a/content/zh/docs/Installation/\345\246\202\344\275\225\346\211\213\345\212\250\345\274\200\345\220\257kdump\346\234\215\345\212\241.md" "b/content/zh/docs/Installation/\345\246\202\344\275\225\346\211\213\345\212\250\345\274\200\345\220\257kdump\346\234\215\345\212\241.md" index 24f1e973ac6366cea3cc09922a7c0fa630d6197d..3232008c0dd65db9a5b0224a0ae56697ce25c606 100644 --- "a/content/zh/docs/Installation/\345\246\202\344\275\225\346\211\213\345\212\250\345\274\200\345\220\257kdump\346\234\215\345\212\241.md" +++ "b/content/zh/docs/Installation/\345\246\202\344\275\225\346\211\213\345\212\250\345\274\200\345\220\257kdump\346\234\215\345\212\241.md" @@ -1,10 +1,10 @@ -# 如何手动开启kdump服务 +# 如何手动开启kdump服务 ## 问题现象 执行systemctl status kdump命令,显示状态信息如下,提示无预留内存。 -![](figures/zh-cn_image_0220373206.png) +![](figures/zh-cn_image_0229291280.png) ## 原因分析 @@ -24,7 +24,7 @@ kdump服务需要系统预留一段内存用于运行kdump内核,而当前系 若回显如下,即kdump的状态为active,说明kdump已使能,操作结束。 - ![](figures/zh-cn_image_0220373224.png) + ![](figures/zh-cn_image_0229291272.png) ## 参数说明 diff --git "a/content/zh/docs/Installation/\345\256\211\350\243\205openEuler\346\227\266\351\200\211\346\213\251\347\254\254\344\272\214\347\233\230\344\275\215\344\270\272\345\256\211\350\243\205\347\233\256\346\240\207-\346\223\215\344\275\234\347\263\273\347\273\237\346\227\240\346\263\225\345\220\257\345\212\250.md" "b/content/zh/docs/Installation/\345\256\211\350\243\205openEuler\346\227\266\351\200\211\346\213\251\347\254\254\344\272\214\347\233\230\344\275\215\344\270\272\345\256\211\350\243\205\347\233\256\346\240\207-\346\223\215\344\275\234\347\263\273\347\273\237\346\227\240\346\263\225\345\220\257\345\212\250.md" index 1e8d857b2259b94f616f764c4b65d4608a21b9f0..c3807db71a5fa07b4a07c81c2e4309b5a09cd03b 100644 --- "a/content/zh/docs/Installation/\345\256\211\350\243\205openEuler\346\227\266\351\200\211\346\213\251\347\254\254\344\272\214\347\233\230\344\275\215\344\270\272\345\256\211\350\243\205\347\233\256\346\240\207-\346\223\215\344\275\234\347\263\273\347\273\237\346\227\240\346\263\225\345\220\257\345\212\250.md" +++ "b/content/zh/docs/Installation/\345\256\211\350\243\205openEuler\346\227\266\351\200\211\346\213\251\347\254\254\344\272\214\347\233\230\344\275\215\344\270\272\345\256\211\350\243\205\347\233\256\346\240\207-\346\223\215\344\275\234\347\263\273\347\273\237\346\227\240\346\263\225\345\220\257\345\212\250.md" @@ -1,4 +1,4 @@ -# 安装openEuler时选择第二盘位为安装目标,操作系统无法启动 +# 安装openEuler时选择第二盘位为安装目标,操作系统无法启动 ## 问题现象 diff --git "a/content/zh/docs/Installation/\345\256\211\350\243\205\345\207\206\345\244\207.md" "b/content/zh/docs/Installation/\345\256\211\350\243\205\345\207\206\345\244\207.md" index f575d3860165e036d839386afff2c07c7643730e..88e59f548ccfa85cda5ec677444227883cdc6e5d 100644 --- "a/content/zh/docs/Installation/\345\256\211\350\243\205\345\207\206\345\244\207.md" +++ "b/content/zh/docs/Installation/\345\256\211\350\243\205\345\207\206\345\244\207.md" @@ -1,7 +1,5 @@ -# 安装准备 +# 安装准备 介绍安装前需要考虑软硬件兼容性状况,以及相关的配置和准备工作。 - - diff --git "a/content/zh/docs/Installation/\345\256\211\350\243\205\345\256\214\346\210\220.md" "b/content/zh/docs/Installation/\345\256\211\350\243\205\345\256\214\346\210\220.md" index 8475891a071c732f0729d4d808000e2e67e8f820..fb58c8a41a42dcbae717f9bd6d0e879ce9553e4d 100644 --- "a/content/zh/docs/Installation/\345\256\211\350\243\205\345\256\214\346\210\220.md" +++ "b/content/zh/docs/Installation/\345\256\211\350\243\205\345\256\214\346\210\220.md" @@ -1,4 +1,4 @@ -# 安装完成 +# 安装完成 此刻,openEuler已完成安装,如[图1](#zh-cn_topic_0186390267_zh-cn_topic_0122145917_fig1429512116338)所示。单击“重启”后,系统将重新启动。 diff --git "a/content/zh/docs/Installation/\345\256\211\350\243\205\346\214\207\345\257\274.md" "b/content/zh/docs/Installation/\345\256\211\350\243\205\346\214\207\345\257\274.md" index 3b976719fb141fa0ab5ed6731f77682139a93119..cecc2db811bd905da4173437f37c514e1776cc31 100644 --- "a/content/zh/docs/Installation/\345\256\211\350\243\205\346\214\207\345\257\274.md" +++ "b/content/zh/docs/Installation/\345\256\211\350\243\205\346\214\207\345\257\274.md" @@ -1,5 +1,6 @@ -# 安装指导 +# 安装指导 + +本章以光盘安装为例介绍安装openEuler,其他安装方式除在启动安装时的引导方式不同外,待启动安装后则安装流程相同,在此不再说明。 -本章介绍如何通过光盘安装openEuler 1.0。 diff --git "a/content/zh/docs/Installation/\345\256\211\350\243\205\346\226\271\345\274\217\344\273\213\347\273\215.md" "b/content/zh/docs/Installation/\345\256\211\350\243\205\346\226\271\345\274\217\344\273\213\347\273\215.md" index 41e140ae4faf7d1a41e173cab44afe1060ac9b32..14911d27be7c333771252b39b3840758cef10e14 100644 --- "a/content/zh/docs/Installation/\345\256\211\350\243\205\346\226\271\345\274\217\344\273\213\347\273\215.md" +++ "b/content/zh/docs/Installation/\345\256\211\350\243\205\346\226\271\345\274\217\344\273\213\347\273\215.md" @@ -1,7 +1,8 @@ -# 安装方式介绍 +# 安装方式介绍 >![](public_sys-resources/icon-notice.gif) **须知:** ->- 硬件服务器仅支持Taishan 200服务器,具体支持的服务器型号可参考“安装准备-\>硬件兼容支持”章节;虚拟化平台仅支持openEuler自有的虚拟化组件(HostOS为openEuler,虚拟化组件为发布包中的qemu、KVM)。安装方式当前仅支持光盘、USB盘安装和网络安装。 ->- 硬件服务器在安装openEuler操作系统之前,需要先将服务器BIOS的“高级设置 \> MISC配置”中的“SM750支持GOP FB”参数值设置为“关闭”,具体设置方法请参见《[TaiShan 服务器 BIOS 参数参考](https://support.huawei.com/enterprise/zh/doc/EDOC1100088653)》。该参数设置为关闭后内核启动过程中会花屏,但不影响安装和内核启动的日志保存。 +>- 硬件服务器仅支持Taishan 200服务器,具体支持的服务器型号可参考“安装准备-\>硬件兼容支持”章节;虚拟化平台仅支持openEuler自有的虚拟化组件(HostOS为openEuler,虚拟化组件为发布包中的qemu、KVM)创建的虚拟化平台和华为公有云的x86虚拟化平台。 +>- 安装方式当前仅支持光盘、USB盘安装、网络安装、qcow2镜像安装和私有镜像安装。其中仅华为公有云的x86虚拟化平台支持私有镜像安装。 + diff --git "a/content/zh/docs/Installation/\345\256\211\350\243\205\350\277\207\347\250\213\351\205\215\347\275\256.md" "b/content/zh/docs/Installation/\345\256\211\350\243\205\350\277\207\347\250\213\351\205\215\347\275\256.md" index 01dd7592753b39fc2ea63152088407bcad7a676f..711116937ee0ec9477c5d1b707a862972491482d 100644 --- "a/content/zh/docs/Installation/\345\256\211\350\243\205\350\277\207\347\250\213\351\205\215\347\275\256.md" +++ "b/content/zh/docs/Installation/\345\256\211\350\243\205\350\277\207\347\250\213\351\205\215\347\275\256.md" @@ -1,4 +1,4 @@ -# 安装过程配置 +# 安装过程配置 开始安装后会出现进度页面,显示安装进度及所选软件包写入系统的进度。 @@ -65,5 +65,5 @@ 单击“结束配置”,完成openEuler的相关配置。 -![](figures/zh-cn_image_0220924538.png) +![](figures/结束配置-new.png) diff --git "a/content/zh/docs/Installation/\345\256\214\346\210\220\345\256\211\350\243\205.md" "b/content/zh/docs/Installation/\345\256\214\346\210\220\345\256\211\350\243\205.md" deleted file mode 100644 index 9834d9ac6277618934711fd6dc014cc42a473a9c..0000000000000000000000000000000000000000 --- "a/content/zh/docs/Installation/\345\256\214\346\210\220\345\256\211\350\243\205.md" +++ /dev/null @@ -1,17 +0,0 @@ -# 完成安装 - -在“安装概览”页面上完成所有必填选项的配置(安装位置和Root密码设置)后,界面上的警告\[!\]会消失。此时,在界面输入“b”,进行系统安装。 - -**图 1** 开始安装 -![](figures/开始安装-5.png "开始安装-5") - -**图 2** 安装完成后按Enter键重启 -![](figures/安装完成后按Enter键重启.png "安装完成后按Enter键重启") - -- 如果当前使用物理光盘安装操作系统,且在重启过程中安装光盘没有自动弹出,请手动取出光盘,则可以直接进入openEuler命令行登录界面。 -- 如果当前使用虚拟光驱安装操作系统,则需要修改服务器的启动项为“硬盘”,然后重启服务器,则可以直接进入openEuler命令行登录界面。 - ->![](public_sys-resources/icon-note.gif) **说明:** ->- 由于BIOS预留内存,系统重启前后总内存(MemTotal )不一致,会有少量差异。 ->- 系统安装后,默认不会使能kdump功能,如果需要使用kdump功能,请用户手动使能。具体操作请参见“FAQ \> 如何手动开启kdump服务”。 - diff --git "a/content/zh/docs/Installation/\345\274\200\345\247\213\345\256\211\350\243\205.md" "b/content/zh/docs/Installation/\345\274\200\345\247\213\345\256\211\350\243\205.md" index 2321d8c17283467b1640d51c2378d50445b33272..389e3e76efdcdbf1a35a5fbd099b6ff103a276e1 100644 --- "a/content/zh/docs/Installation/\345\274\200\345\247\213\345\256\211\350\243\205.md" +++ "b/content/zh/docs/Installation/\345\274\200\345\247\213\345\256\211\350\243\205.md" @@ -1,4 +1,4 @@ -# 开始安装 +# 开始安装 在安装界面上完成所有必填选项的配置后,界面上的警告会消失。此时,用户可以单击“开始安装”进行系统安装。 diff --git "a/content/zh/docs/Installation/\346\200\273\344\275\223\344\273\213\347\273\215.md" "b/content/zh/docs/Installation/\346\200\273\344\275\223\344\273\213\347\273\215.md" index 9973f8b15d4477ce9abce6fd4a5f2f672614595f..ac9b396496c32fc9137995d32248d33806896bdf 100644 --- "a/content/zh/docs/Installation/\346\200\273\344\275\223\344\273\213\347\273\215.md" +++ "b/content/zh/docs/Installation/\346\200\273\344\275\223\344\273\213\347\273\215.md" @@ -1,4 +1,4 @@ -# 总体介绍 +# 总体介绍 ## 概述 diff --git "a/content/zh/docs/Installation/\346\234\200\345\260\217\347\241\254\344\273\266\350\246\201\346\261\202.md" "b/content/zh/docs/Installation/\346\234\200\345\260\217\347\241\254\344\273\266\350\246\201\346\261\202.md" index 14a242817a04be304e49a1b28c56c338be74e941..739affdaf1064d8ae8f9ae7567f6a2857fd6a8f0 100644 --- "a/content/zh/docs/Installation/\346\234\200\345\260\217\347\241\254\344\273\266\350\246\201\346\261\202.md" +++ "b/content/zh/docs/Installation/\346\234\200\345\260\217\347\241\254\344\273\266\350\246\201\346\261\202.md" @@ -1,4 +1,4 @@ -# 最小硬件要求 +# 最小硬件要求 openEuler所需的最小硬件要求如[表1](#tff48b99c9bf24b84bb602c53229e2541)所示。 @@ -15,14 +15,14 @@ openEuler所需的最小硬件要求如[表1](#tff48b99c9bf24b84bb602c53229e2541

架构

-

AArch64

+
  • AArch64
  • x86
-

仅支持Arm的64位架构。

+
  • 支持Arm的64位架构。
  • 支持Intel的x86 64位架构。

CPU

-

华为鲲鹏920系列CPU

+
  • 华为鲲鹏920系列CPU
  • Intel® Xeon®处理器

-

@@ -36,7 +36,7 @@ openEuler所需的最小硬件要求如[表1](#tff48b99c9bf24b84bb602c53229e2541

硬盘

-

不小于10GB(为了获得更好的应用体验,建议不小于120GB)

+

为了获得更好的应用体验,建议不小于120GB)

支持IDE、SATA、SAS等接口的硬盘。

diff --git "a/content/zh/docs/Installation/\346\234\200\345\260\217\350\231\232\346\213\237\345\214\226\347\251\272\351\227\264\350\246\201\346\261\202.md" "b/content/zh/docs/Installation/\346\234\200\345\260\217\350\231\232\346\213\237\345\214\226\347\251\272\351\227\264\350\246\201\346\261\202.md" new file mode 100644 index 0000000000000000000000000000000000000000..ab522e863741f7fad5da111483546a267ea79ff1 --- /dev/null +++ "b/content/zh/docs/Installation/\346\234\200\345\260\217\350\231\232\346\213\237\345\214\226\347\251\272\351\227\264\350\246\201\346\261\202.md" @@ -0,0 +1,46 @@ +# 最小虚拟化空间要求 + +openEuler所需的最小虚拟化空间要求如[表1](#tff48b99c9bf24b84bb602c53229e2541)所示。 + +**表 1** 最小虚拟化空间要求 + + + + + + + + + + + + + + + + + + + + + + + + +

部件名称

+

最小虚拟化空间要求

+

说明

+

架构

+
  • AArch64
  • x86
+

-

+

CPU

+

2个CPU

+

-

+

内存

+

不小于4GB(为了获得更好的应用体验,建议不小于8GB)

+

-

+

硬盘

+

不小于32GB(为了获得更好的应用体验,建议不小于120GB)

+

-

+
+ diff --git "a/content/zh/docs/Installation/\346\263\225\345\276\213\345\243\260\346\230\216.md" "b/content/zh/docs/Installation/\346\263\225\345\276\213\345\243\260\346\230\216.md" index 69bf8aee0072b9d6a6bd9f4954f6066684e679fe..6d44fdb3e4c209523616e7e386a645ce3737ee11 100644 --- "a/content/zh/docs/Installation/\346\263\225\345\276\213\345\243\260\346\230\216.md" +++ "b/content/zh/docs/Installation/\346\263\225\345\276\213\345\243\260\346\230\216.md" @@ -1,4 +1,4 @@ -# 法律声明 +# 法律声明 **版权所有 © 2020 华为技术有限公司。** diff --git "a/content/zh/docs/Installation/\347\211\251\347\220\206\346\234\272\347\232\204\345\256\211\350\243\205\350\246\201\346\261\202.md" "b/content/zh/docs/Installation/\347\211\251\347\220\206\346\234\272\347\232\204\345\256\211\350\243\205\350\246\201\346\261\202.md" new file mode 100644 index 0000000000000000000000000000000000000000..0da7b728477b02cf4cd2907a14d8df6303bfef89 --- /dev/null +++ "b/content/zh/docs/Installation/\347\211\251\347\220\206\346\234\272\347\232\204\345\256\211\350\243\205\350\246\201\346\261\202.md" @@ -0,0 +1,5 @@ +# 物理机的安装要求 + +若需要在物理机环境上安装openEuler操作系统,则物理机需要满足如下的硬件兼容性和最小硬件要求。 + + diff --git "a/content/zh/docs/Installation/\347\241\254\344\273\266\345\205\274\345\256\271\346\224\257\346\214\201.md" "b/content/zh/docs/Installation/\347\241\254\344\273\266\345\205\274\345\256\271\346\224\257\346\214\201.md" index 62b70aa93a11da599c469e1bd9cad73bbee4c650..5ac0418449a4f9a3c580d6fc19492157e879a90e 100644 --- "a/content/zh/docs/Installation/\347\241\254\344\273\266\345\205\274\345\256\271\346\224\257\346\214\201.md" +++ "b/content/zh/docs/Installation/\347\241\254\344\273\266\345\205\274\345\256\271\346\224\257\346\214\201.md" @@ -1,10 +1,10 @@ -# 硬件兼容支持 +# 硬件兼容支持 openEuler安装时,应注意硬件兼容性方面的问题,当前已支持的服务器类型如[表1](#table14948632047)所示。 >![](public_sys-resources/icon-note.gif) **说明:** >- TaiShan 200服务器基于华为鲲鹏920处理器。 ->- 当前仅支持华为TaiShan服务器,后续将逐步增加对其他厂商服务器的支持。 +>- 当前仅支持华为TaiShan服务器和FusionServer Pro 机架服务器,后续将逐步增加对其他厂商服务器的支持。 **表 1** 支持的服务器类型 @@ -34,6 +34,15 @@ openEuler安装时,应注意硬件兼容性方面的问题,当前已支持

X6000高密型

+

机架服务器

+ +

FusionServer Pro 机架服务器

+ +

FusionServer Pro 2288H V5

+
说明:

服务器要求配置Avago 3508 RAID控制卡和启用LOM-X722网卡。

+
+ + diff --git "a/content/zh/docs/Installation/\347\263\273\347\273\237\344\270\255\345\255\230\345\234\250\346\227\240\346\263\225\346\277\200\346\264\273\347\232\204\351\200\273\350\276\221\345\215\267\347\273\204\346\227\266-\351\207\215\350\243\205\347\263\273\347\273\237\345\244\261\350\264\245.md" "b/content/zh/docs/Installation/\347\263\273\347\273\237\344\270\255\345\255\230\345\234\250\346\227\240\346\263\225\346\277\200\346\264\273\347\232\204\351\200\273\350\276\221\345\215\267\347\273\204\346\227\266-\351\207\215\350\243\205\347\263\273\347\273\237\345\244\261\350\264\245.md" index dcce8813a7795a472b78a89ab10be961ed6d57c4..beff5ce73cb6166c28eaa392e5dffb271ea7858a 100644 --- "a/content/zh/docs/Installation/\347\263\273\347\273\237\344\270\255\345\255\230\345\234\250\346\227\240\346\263\225\346\277\200\346\264\273\347\232\204\351\200\273\350\276\221\345\215\267\347\273\204\346\227\266-\351\207\215\350\243\205\347\263\273\347\273\237\345\244\261\350\264\245.md" +++ "b/content/zh/docs/Installation/\347\263\273\347\273\237\344\270\255\345\255\230\345\234\250\346\227\240\346\263\225\346\277\200\346\264\273\347\232\204\351\200\273\350\276\221\345\215\267\347\273\204\346\227\266-\351\207\215\350\243\205\347\263\273\347\273\237\345\244\261\350\264\245.md" @@ -1,4 +1,4 @@ -# 系统中存在无法激活的逻辑卷组时,重装系统失败 +# 系统中存在无法激活的逻辑卷组时,重装系统失败 ## 问题现象 diff --git "a/content/zh/docs/Installation/\347\275\221\347\273\234\351\205\215\347\275\256\347\272\246\346\235\237\351\231\220\345\210\266.md" "b/content/zh/docs/Installation/\347\275\221\347\273\234\351\205\215\347\275\256\347\272\246\346\235\237\351\231\220\345\210\266.md" index f1d194d8ea8ebdecdcc45d3d16294e63f6cb4ce1..a3c9cb10afb13aa655d2adfd074b47ec24ef43ed 100644 --- "a/content/zh/docs/Installation/\347\275\221\347\273\234\351\205\215\347\275\256\347\272\246\346\235\237\351\231\220\345\210\266.md" +++ "b/content/zh/docs/Installation/\347\275\221\347\273\234\351\205\215\347\275\256\347\272\246\346\235\237\351\231\220\345\210\266.md" @@ -1,4 +1,4 @@ -# 网络配置约束限制 +# 网络配置约束限制 NetworkManager、network两个服务均是网络服务管理包,两个服务之间存在部分功能重叠。 diff --git "a/content/zh/docs/Installation/\350\216\267\345\217\226\345\256\211\350\243\205\346\272\220.md" "b/content/zh/docs/Installation/\350\216\267\345\217\226\345\256\211\350\243\205\346\272\220.md" index d79108a6a9de0c7e4e28e455ce88df8869dd2f43..64cffd5ab166142cf6e7fa1c3b15e5ac5cbe500f 100644 --- "a/content/zh/docs/Installation/\350\216\267\345\217\226\345\256\211\350\243\205\346\272\220.md" +++ "b/content/zh/docs/Installation/\350\216\267\345\217\226\345\256\211\350\243\205\346\272\220.md" @@ -1,4 +1,4 @@ -# 获取安装源 +# 获取安装源 在安装开始前,您需要获取openEuler的发布包和校验文件。 @@ -7,6 +7,6 @@ 1. 登录[openEuler社区](https://openeuler.org)网站。 2. 单击“下载”。 3. 单击“获取ISO:”后面的“Link”,显示下载列表。 -4. 单击“openEuler-1.0-base-aarch64-dvd.iso”将openEuler发布包下载到本地。 -5. 单击“openEuler-1.0-base-aarch64-dvd.iso.sha256sum”将openEuler校验文件下载到本地。 +4. 单击“openEuler-20.03-LTS-aarch64-dvd.iso”将openEuler发布包下载到本地。 +5. 单击“openEuler-20.03-LTS-aarch64-dvd.iso.sha256sum”将openEuler校验文件下载到本地。 diff --git "a/content/zh/docs/Installation/\350\231\232\346\213\237\345\214\226\345\271\263\345\217\260\345\205\274\345\256\271\346\200\247.md" "b/content/zh/docs/Installation/\350\231\232\346\213\237\345\214\226\345\271\263\345\217\260\345\205\274\345\256\271\346\200\247.md" new file mode 100644 index 0000000000000000000000000000000000000000..3c02858e239423ebb8b45c28b9e37e02f672f4ce --- /dev/null +++ "b/content/zh/docs/Installation/\350\231\232\346\213\237\345\214\226\345\271\263\345\217\260\345\205\274\345\256\271\346\200\247.md" @@ -0,0 +1,7 @@ +# 虚拟化平台兼容性 + +openEuler安装时,应注意虚拟化平台兼容性的问题,当前已支持的虚拟化平台为: + +- openEuler自有的虚拟化组件(HostOS为openEuler,虚拟化组件为发布包中的qemu、KVM)创建的虚拟化平台。 +- 华为公有云的x86虚拟化平台。 + diff --git "a/content/zh/docs/Installation/\350\231\232\346\213\237\346\234\272\347\232\204\345\256\211\350\243\205\350\246\201\346\261\202.md" "b/content/zh/docs/Installation/\350\231\232\346\213\237\346\234\272\347\232\204\345\256\211\350\243\205\350\246\201\346\261\202.md" new file mode 100644 index 0000000000000000000000000000000000000000..53b32309ad3627c92ebffa74dfe01d184f8001ec --- /dev/null +++ "b/content/zh/docs/Installation/\350\231\232\346\213\237\346\234\272\347\232\204\345\256\211\350\243\205\350\246\201\346\261\202.md" @@ -0,0 +1,6 @@ +# 虚拟机的安装要求 + +若需要在虚拟机环境上安装openEuler操作系统,则虚拟机需要满足如下的虚拟化平台兼容性和最小虚拟化要求。 + + + diff --git "a/content/zh/docs/Installation/\350\256\276\347\275\256root\345\257\206\347\240\201.md" "b/content/zh/docs/Installation/\350\256\276\347\275\256root\345\257\206\347\240\201.md" deleted file mode 100644 index 180e527eb93c2eea522ebf7c2f289ae31311de44..0000000000000000000000000000000000000000 --- "a/content/zh/docs/Installation/\350\256\276\347\275\256root\345\257\206\347\240\201.md" +++ /dev/null @@ -1,14 +0,0 @@ -# 设置root密码 - -在“安装概览”页面中输入“7”,然后按“Enter”,设置root密码。 - ->![](public_sys-resources/icon-note.gif) **说明:** ->- 强制用户在安装系统时设置root密码,否则无法安装通过。 ->- root账户是用来执行关键系统管理任务,不建议您在日常工作及系统访问时使用root账户。 ->- 用户在设置root用户密码或者新创建用户密码时,强烈建议按照密码复杂度要求设置。设置弱密码(不符合下文所述复杂度要求的密码)时系统会发出告警并询问是否仍然使用,输入“yes”可以强制设置弱密码,但是弱密码存在较大安全风险,请用户根据实际情况谨慎决策。建议密码的复杂度参照“安装指导 \> 通过图形化模式安装 \> 安装过程配置”章节中的“密码复杂度”。 - -**图 1** root密码 -![](figures/root密码-3.png "root密码-3") - -设置完成后,在界面输入“c”,返回“安装概览”页面。 - diff --git "a/content/zh/docs/Installation/\350\256\276\347\275\256\345\256\211\350\243\205\344\275\215\347\275\256-5.md" "b/content/zh/docs/Installation/\350\256\276\347\275\256\345\256\211\350\243\205\344\275\215\347\275\256-5.md" deleted file mode 100644 index 072439e12677884b81c1b7b134c462b436d77629..0000000000000000000000000000000000000000 --- "a/content/zh/docs/Installation/\350\256\276\347\275\256\345\256\211\350\243\205\344\275\215\347\275\256-5.md" +++ /dev/null @@ -1,23 +0,0 @@ -# 设置安装位置 - -在“安装概览”页面中输入“5”,然后按“Enter”,设置操作系统的安装位置。安装程序会自动探测并显示可用安装位置信息,根据实际情况选择安装位置。 - -**图 1** 安装位置 -![](figures/安装位置.png "安装位置") - -输入“2”选择使用所有空间,然后输入“c”进入分区方案选择,输入“1”选择标准分区。参数说明如下: - -- **分区选项** - 1. Replace Existing Linux system(s):替换已有系统。只使用已有系统占用的空间,已有系统数据将会被覆盖掉。 - 2. Use All Space:使用所有空间。清理系统盘所有数据,安装的系统会占用所有的系统盘空间。 - 3. Use Free Space:使用剩余空间。仅在系统盘剩余空间上安装系统,不会清理已有系统的数据。 - 4. Manually assign mount points(EXPERIMENTAL):手动分配挂载点(实验)。用户可以手动分配挂载点,但是如描述所言,该功能仅在实验阶段,实际上并不能实现手动分配挂载点的功能。 - -- **分区方案** - 1. Standard Partition:标准分区。标准分区可包含文件系统或者 swap 空间,也可为软件 RAID 或者 LVM 物理卷提供容器。 - 2. LVM:逻辑卷。逻辑卷管理(LVM)显示一个基本物理存储空间(比如硬盘或者 LUN)的简单裸机视图。可将物理存储中视为物理卷的分区分组成为卷组。可将每个卷组分成多个逻辑卷,每个逻辑卷模拟一个标准磁盘分区。因此,LVM 逻辑卷可作为包含多个物理磁盘的分区使用。 - 3. LVM Thin Provisioning:逻辑卷精简配置。使用精简配置,您可以管理可用空间的存储池,也称精简池,可在程序需要时将其分配给任意数量的设备。可在需要时动态扩展精简池以便有效分配存储空间。 - - -设置完成后,在界面输入“c”,返回“安装概览”页面。 - diff --git "a/content/zh/docs/Installation/\350\256\276\347\275\256\345\256\211\350\243\205\344\275\215\347\275\256.md" "b/content/zh/docs/Installation/\350\256\276\347\275\256\345\256\211\350\243\205\344\275\215\347\275\256.md" index 3d52e9ef23b517fc1e1d5514f8284f93580ad0a0..ccfd64ae1a0f96813e2b8cf5c4ef7bc226cddcd1 100644 --- "a/content/zh/docs/Installation/\350\256\276\347\275\256\345\256\211\350\243\205\344\275\215\347\275\256.md" +++ "b/content/zh/docs/Installation/\350\256\276\347\275\256\345\256\211\350\243\205\344\275\215\347\275\256.md" @@ -1,9 +1,12 @@ -# 设置安装位置 +# 设置安装位置 在“安装概览”页面中选择“安装位置”,设置操作系统的安装磁盘及分区。 在[图1](#fig1195417125015)所示的页面中您可以看到计算机中的本地可用存储设备。您还可以通过单击“添加磁盘”,添加指定的附加设备或者网络设备。 +>![](public_sys-resources/icon-notice.gif) **须知:** +>在选择您需要安装的设备时,建议不要选择NVMe SSD存储介质作为操作系统的安装磁盘。 + **图 1** 安装目标位置 ![](figures/安装目标位置.png "安装目标位置") @@ -30,7 +33,7 @@ 在“手动分区”界面可以通过如下两种方式进行分区。 - 自动创建:在界面单击“点击这里自动创建它们”,系统会根据可用的存储空间,自动分出4个挂载点:/boot 、/、/boot/efi、swap。 -- 手动创建:单击“![](figures/zh-cn_image_0220373240.png)”添加新挂载点,建议每个挂载点的期望容量不超过可用空间。 +- 手动创建:单击“![](figures/zh-cn_image_0229291243.png)”添加新挂载点,建议每个挂载点的期望容量不超过可用空间。 >![](public_sys-resources/icon-note.gif) **说明:** >若设置的挂载点期望容量超过了可用空间,系统将剩余的可用空间全部分配给该挂载点。 diff --git "a/content/zh/docs/Installation/\350\256\276\347\275\256\345\256\211\350\243\205\345\217\202\346\225\260-1.md" "b/content/zh/docs/Installation/\350\256\276\347\275\256\345\256\211\350\243\205\345\217\202\346\225\260-1.md" deleted file mode 100644 index 4dd96e783728321ecbaa60377ff28bf5cda48740..0000000000000000000000000000000000000000 --- "a/content/zh/docs/Installation/\350\256\276\347\275\256\345\256\211\350\243\205\345\217\202\346\225\260-1.md" +++ /dev/null @@ -1,3 +0,0 @@ -# 设置安装参数 - - diff --git "a/content/zh/docs/Installation/\350\256\276\347\275\256\345\256\211\350\243\205\345\217\202\346\225\260.md" "b/content/zh/docs/Installation/\350\256\276\347\275\256\345\256\211\350\243\205\345\217\202\346\225\260.md" index 78c9d9eb630deffc74aa81966ecc399cb4b87290..ef19e17fbd4cd2ab7bdef189eb0a7088f2427354 100644 --- "a/content/zh/docs/Installation/\350\256\276\347\275\256\345\256\211\350\243\205\345\217\202\346\225\260.md" +++ "b/content/zh/docs/Installation/\350\256\276\347\275\256\345\256\211\350\243\205\345\217\202\346\225\260.md" @@ -1,4 +1,3 @@ -# 设置安装参数 - +# 设置安装参数 diff --git "a/content/zh/docs/Installation/\350\256\276\347\275\256\345\256\211\350\243\205\346\272\220-3.md" "b/content/zh/docs/Installation/\350\256\276\347\275\256\345\256\211\350\243\205\346\272\220-3.md" deleted file mode 100644 index 24f759607ee29cf22f6967019d53d528bcd2efcd..0000000000000000000000000000000000000000 --- "a/content/zh/docs/Installation/\350\256\276\347\275\256\345\256\211\350\243\205\346\272\220-3.md" +++ /dev/null @@ -1,18 +0,0 @@ -# 设置安装源 - -在“安装概览”页面中输入“3”,然后按“Enter”,指定安装源的位置。 - -您可以选择可本地访问的安装源,也可以选择网络位置,如下图所示。当前使用光盘安装,安装程序会自动探测并显示安装源信息,用户直接使用默认配置即可,不需要进行设置。 - -- CD/DVD:从挂载光驱获取安装源。 -- local ISO file:从本地磁盘中获取iso文件。 -- Network:通过http、https、ftp、nfs获取网路服务器上的的安装源。 - -**图 1** 安装源 -![](figures/安装源-2.png "安装源-2") - -设置完成后,在界面输入“c”,返回“安装概览”页面。 - ->![](public_sys-resources/icon-note.gif) **说明:** ->安装过程中,如果“设置安装源”有疑问,可参考“FAQ \> 选择安装源出现异常”。 - diff --git "a/content/zh/docs/Installation/\350\256\276\347\275\256\345\256\211\350\243\205\346\272\220.md" "b/content/zh/docs/Installation/\350\256\276\347\275\256\345\256\211\350\243\205\346\272\220.md" index 0877df8298b6aaf706165fc02ac90073a2d68a1a..3bffea23fa3bc22f194382a1ce9aee3573c80a0e 100644 --- "a/content/zh/docs/Installation/\350\256\276\347\275\256\345\256\211\350\243\205\346\272\220.md" +++ "b/content/zh/docs/Installation/\350\256\276\347\275\256\345\256\211\350\243\205\346\272\220.md" @@ -1,4 +1,4 @@ -# 设置安装源 +# 设置安装源 在“安装概览”页面中选择“安装源”,指定安装源的位置。 @@ -7,6 +7,11 @@ **图 1** 安装源 ![](figures/安装源.png "安装源") +当使用网络https源进行安装的时候,如果https服务器使用的是私有证书,则需要在安装引导界面按“e”进入已选选项的参数编辑界面,在参数中增加inst.noverifyssl参数,如[图2](#fig113517811415)所示。 + +**图 2** 增加inst.noverifyssl参数 +![](figures/增加inst-noverifyssl参数.png "增加inst-noverifyssl参数") + 设置完成后,请单击左上角“完成”返回“安装概览”页面。 >![](public_sys-resources/icon-note.gif) **说明:** diff --git "a/content/zh/docs/Installation/\350\256\276\347\275\256\345\256\211\350\243\205\347\250\213\345\272\217\350\257\255\350\250\200.md" "b/content/zh/docs/Installation/\350\256\276\347\275\256\345\256\211\350\243\205\347\250\213\345\272\217\350\257\255\350\250\200.md" index 1a08721ef7c5c4e55171235d0cdbabe0a755627e..60ce16f5eee260e3aa799825b479db49e5174033 100644 --- "a/content/zh/docs/Installation/\350\256\276\347\275\256\345\256\211\350\243\205\347\250\213\345\272\217\350\257\255\350\250\200.md" +++ "b/content/zh/docs/Installation/\350\256\276\347\275\256\345\256\211\350\243\205\347\250\213\345\272\217\350\257\255\350\250\200.md" @@ -1,4 +1,4 @@ -# 设置安装程序语言 +# 设置安装程序语言 启动安装后,在进入安装程序主界面之前,系统会提示用户设置安装过程中使用的语言。当前默认为英语,用户可根据实际情况进行调整,如[图1](#zh-cn_topic_0186390093_zh-cn_topic_0122145864_fig144630179151)所示,选择“中文”。 diff --git "a/content/zh/docs/Installation/\350\256\276\347\275\256\346\227\266\345\214\272-NTP\346\234\215\345\212\241.md" "b/content/zh/docs/Installation/\350\256\276\347\275\256\346\227\266\345\214\272-NTP\346\234\215\345\212\241.md" deleted file mode 100644 index 9fc0ca6e13397fbdd98750991322f1ebadbf462f..0000000000000000000000000000000000000000 --- "a/content/zh/docs/Installation/\350\256\276\347\275\256\346\227\266\345\214\272-NTP\346\234\215\345\212\241.md" +++ /dev/null @@ -1,26 +0,0 @@ -# 设置时区、NTP服务 - -设置系统的时区(时间/日期)、配置NTP服务。 - -## 设置时区 - -在“安装概览”页面中输入“2”并按“Enter”,进入配置时区和NTP服务界面。 - -在[图1](#zh-cn_topic_0155778951_zh-cn_topic_0151920790_fc6f125c2c19540b0828071e05fe8b8db)所示界面中输入“1”并按“Enter”,进入系统时区设置。用户可根据实际情况调整和设置系统的时区和城市。 - -**图 1** 时区 -![](figures/时区.png "时区") - -选择城市时,由于城市数量较多将会分页显示。在出现“Press ENTER to continue”提示时,可以按“Enter”键以显示全部的城市信息。 - -## 设置NTP服务 - -设置时区完成之后,回到系统安装主界面(如“安装概览”页面所示),输入“2”并按“Enter”,进入配置时区和NTP服务界面。 - -输入“2”并按“Enter”,配置NTP服务。 - -**图 2** NTP服务器 -![](figures/NTP服务器.png "NTP服务器") - -设置完成后,在界面输入“c”,返回“安装概览”页面。 - diff --git "a/content/zh/docs/Installation/\350\256\276\347\275\256\346\227\266\351\227\264\345\222\214\346\227\245\346\234\237.md" "b/content/zh/docs/Installation/\350\256\276\347\275\256\346\227\266\351\227\264\345\222\214\346\227\245\346\234\237.md" index 86f49bdf6b7da5a2df53f6ad0b178e158f5ca55f..d462cd920ada1406cfcc2ee529fd783969ee7b99 100644 --- "a/content/zh/docs/Installation/\350\256\276\347\275\256\346\227\266\351\227\264\345\222\214\346\227\245\346\234\237.md" +++ "b/content/zh/docs/Installation/\350\256\276\347\275\256\346\227\266\351\227\264\345\222\214\346\227\245\346\234\237.md" @@ -1,4 +1,4 @@ -# 设置时间和日期 +# 设置时间和日期 在“安装概览”页面中选择“时间和日期”,设置系统的时区、日期、时间等。 @@ -8,7 +8,7 @@ >![](public_sys-resources/icon-note.gif) **说明:** >- 手动设置时区时,请先关闭右上角“网络时间”同步开关。 ->- 如需使用网络时间,请保证网络能连通远程NTP服务器,设置网络具体请参见“安装指导 \> (推荐)通过图形化模式安装 \> 设置安装参数 \> 设置网络和主机名”章节。 +>- 如需使用网络时间,请保证网络能连通远程NTP服务器,设置网络具体请参见“安装指导 \> (推荐)通过图形化模式安装 \> 设置安装参数 \> 设置网络和主机名”章节。 **图 1** 日期和时间 ![](figures/日期和时间.png "日期和时间") diff --git "a/content/zh/docs/Installation/\350\256\276\347\275\256\347\263\273\347\273\237\350\257\255\350\250\200-2.md" "b/content/zh/docs/Installation/\350\256\276\347\275\256\347\263\273\347\273\237\350\257\255\350\250\200-2.md" deleted file mode 100644 index 722fab34550d74321ed584c22fcb0038c27ed5f8..0000000000000000000000000000000000000000 --- "a/content/zh/docs/Installation/\350\256\276\347\275\256\347\263\273\347\273\237\350\257\255\350\250\200-2.md" +++ /dev/null @@ -1,9 +0,0 @@ -# 设置系统语言 - -在“安装概览”页面中输入“1”,然后按“Enter”,设置系统的语言。用户可根据实际情况进行调整,如下图所示。 - -**图 1** 语言支持 -![](figures/语言支持-1.png "语言支持-1") - -设置完成后,在界面输入“c”,返回“安装概览”页面。 - diff --git "a/content/zh/docs/Installation/\350\256\276\347\275\256\347\263\273\347\273\237\350\257\255\350\250\200.md" "b/content/zh/docs/Installation/\350\256\276\347\275\256\347\263\273\347\273\237\350\257\255\350\250\200.md" index c4c3d7353ab96d5a390355178fdac20338d28613..ff7142aefbca4e371aee0456f398f156aa9eb362 100644 --- "a/content/zh/docs/Installation/\350\256\276\347\275\256\347\263\273\347\273\237\350\257\255\350\250\200.md" +++ "b/content/zh/docs/Installation/\350\256\276\347\275\256\347\263\273\347\273\237\350\257\255\350\250\200.md" @@ -1,10 +1,9 @@ -# 设置系统语言 +# 设置系统语言 在“安装概览”页面中选择“语言支持”,设置系统的语言。如[图1](#zh-cn_topic_0186390098_zh-cn_topic_0122145772_fig187301927172619)所示,用户也可根据实际情况进行调整,选择“中文”。 >![](public_sys-resources/icon-note.gif) **说明:** ->- 若选择“中文”,系统安装完成后,使用VNC登录不支持中文显示,使用串口或者SSH等方式登录支持中文显示。 ->- 若选择“English”,则无影响。 +>若选择“中文”,系统安装完成后,使用VNC登录不支持中文显示,使用串口或者SSH等方式登录支持中文显示。若选择“English”,则无影响。 **图 1** 语言支持 ![](figures/语言支持.png "语言支持") diff --git "a/content/zh/docs/Installation/\350\256\276\347\275\256\347\275\221\347\273\234.md" "b/content/zh/docs/Installation/\350\256\276\347\275\256\347\275\221\347\273\234.md" deleted file mode 100644 index e76e580998add0e53f167fa827bc8be3226ee57e..0000000000000000000000000000000000000000 --- "a/content/zh/docs/Installation/\350\256\276\347\275\256\347\275\221\347\273\234.md" +++ /dev/null @@ -1,33 +0,0 @@ -# 设置网络 - -在“安装概览”页面中输入“6”,然后按“Enter”,设置系统的网络功能。用户可以设置主机名,以及配置网络设备。安装阶段可以不用配置,系统启动之后再进行配置。 - -**图 1** 网络配置 -![](figures/网络配置.png "网络配置") - -- 设置主机名 - -选择1)Set host name,输入主机名openEuler,然后按“Enter”。 - -- 配置网卡 - -在图中选个相应的网卡配置选项进行配置,默认IPv4 address=dhcp,IPv6 address=auto。 - -![](figures/22.png) - -网卡配置说明: - -1. IPv4 address or "dhcp" for DHCP:配置IPv4的地址,默认值为dhcp,有dhcp服务器分配ip地址。 -2. IPv4 netmask:配置IPv4的掩码 -3. IPv4 gateway:配置IPv4的网关 -4. IPv6 address or "auto" for automatic, "dhcp" for DHCP, "ignore" to turn off:配置IPv6地址,默认为auto。 -5. IPv6 default gateway:配置IPv6默认网关 -6. Nameservers:DNS服务器 -7. Connect automatically after reboot:重启之后自动连接网络 -8. Apply configuration in installer:在安装程序中应用该配置 - ->![](public_sys-resources/icon-note.gif) **说明:** ->“Apply configuration in installer”仅建议安装源为网络安装时选中。若选中“Apply configuration in installer”,需要重新选择安装软件。 - -设置完成后,在界面输入“c”,返回“安装概览”页面。 - diff --git "a/content/zh/docs/Installation/\350\256\276\347\275\256\347\275\221\347\273\234\345\222\214\344\270\273\346\234\272\345\220\215.md" "b/content/zh/docs/Installation/\350\256\276\347\275\256\347\275\221\347\273\234\345\222\214\344\270\273\346\234\272\345\220\215.md" index 248fb04a4e8748891e45a0ac0b3379c38ed9feda..9eb6c39d8529c0021972ac53f01f6438ddcde67b 100644 --- "a/content/zh/docs/Installation/\350\256\276\347\275\256\347\275\221\347\273\234\345\222\214\344\270\273\346\234\272\345\220\215.md" +++ "b/content/zh/docs/Installation/\350\256\276\347\275\256\347\275\221\347\273\234\345\222\214\344\270\273\346\234\272\345\220\215.md" @@ -1,4 +1,4 @@ -# 设置网络和主机名 +# 设置网络和主机名 在“安装概览”页面中选择“网络和主机名”,设置系统的网络功能。 diff --git "a/content/zh/docs/Installation/\350\256\276\347\275\256\351\224\256\347\233\230.md" "b/content/zh/docs/Installation/\350\256\276\347\275\256\351\224\256\347\233\230.md" index 0c77c0df0ffdaa339158e787f0cf193806e1acd9..9eead8f43e116dbd8adb7f149a84339e0ae894cd 100644 --- "a/content/zh/docs/Installation/\350\256\276\347\275\256\351\224\256\347\233\230.md" +++ "b/content/zh/docs/Installation/\350\256\276\347\275\256\351\224\256\347\233\230.md" @@ -1,4 +1,4 @@ -# 设置键盘 +# 设置键盘 在“安装概览”页面中选择“键盘”,用户可以在系统中添加或者删除多个键盘布局。 diff --git "a/content/zh/docs/Installation/\350\277\233\345\205\245\345\256\211\350\243\205\347\225\214\351\235\242-0.md" "b/content/zh/docs/Installation/\350\277\233\345\205\245\345\256\211\350\243\205\347\225\214\351\235\242-0.md" deleted file mode 100644 index f98fa4cc10e821f591888da990a2b7fd19139004..0000000000000000000000000000000000000000 --- "a/content/zh/docs/Installation/\350\277\233\345\205\245\345\256\211\350\243\205\347\225\214\351\235\242-0.md" +++ /dev/null @@ -1,12 +0,0 @@ -# 进入安装界面 - -在“安装引导界面”中选择“Install openEuler 1.0 with text mode”进入文本模式安装。 - -系统安装程序正常启动后,输入“2”会进入[图1](#zh-cn_topic_0155778949_zh-cn_topic_0151920777_fcabdc4c637504f26ac19e9c99f288111)所示的安装配置主界面。用户可以进行时间、语言、安装源、网络、安装位置等相关设置。 - ->![](public_sys-resources/icon-note.gif) **说明:** ->\[x\]表示此项已配置(或者系统默认已配置),可以根据需要进行设置;\[!\]表示此项未配置,在启动安装前必须完成配置。 - -**图 1** 安装概览 -![](figures/安装概览-0.png "安装概览-0") - diff --git "a/content/zh/docs/Installation/\350\277\233\345\205\245\345\256\211\350\243\205\347\225\214\351\235\242.md" "b/content/zh/docs/Installation/\350\277\233\345\205\245\345\256\211\350\243\205\347\225\214\351\235\242.md" index 5e7c0d74a5d7ec18421871e6b4c50c2a8a3080bb..b0731b4461c067412b3e4ed4602a51c83cb3068a 100644 --- "a/content/zh/docs/Installation/\350\277\233\345\205\245\345\256\211\350\243\205\347\225\214\351\235\242.md" +++ "b/content/zh/docs/Installation/\350\277\233\345\205\245\345\256\211\350\243\205\347\225\214\351\235\242.md" @@ -1,4 +1,4 @@ -# 进入安装界面 +# 进入安装界面 系统安装程序正常启动后,会进入[图1](#zh-cn_topic_0186390094_zh-cn_topic_0122145883_fig5969171592212)所示的安装设置主界面。用户可以进行时间、语言、安装源、网络、安装位置等相关设置。 diff --git "a/content/zh/docs/Installation/\351\200\211\346\213\251\345\256\211\350\243\205\346\272\220\345\207\272\347\216\260\345\274\202\345\270\270.md" "b/content/zh/docs/Installation/\351\200\211\346\213\251\345\256\211\350\243\205\346\272\220\345\207\272\347\216\260\345\274\202\345\270\270.md" index c9894c758b9198608da50771658bd50c5067a0d5..b09cbc9dbed1ddb63200764905ad64036a36006d 100644 --- "a/content/zh/docs/Installation/\351\200\211\346\213\251\345\256\211\350\243\205\346\272\220\345\207\272\347\216\260\345\274\202\345\270\270.md" +++ "b/content/zh/docs/Installation/\351\200\211\346\213\251\345\256\211\350\243\205\346\272\220\345\207\272\347\216\260\345\274\202\345\270\270.md" @@ -1,4 +1,4 @@ -# 选择安装源出现异常 +# 选择安装源出现异常 ## 问题现象 diff --git "a/content/zh/docs/Installation/\351\200\211\346\213\251\345\256\211\350\243\205\350\275\257\344\273\266-4.md" "b/content/zh/docs/Installation/\351\200\211\346\213\251\345\256\211\350\243\205\350\275\257\344\273\266-4.md" deleted file mode 100644 index fd65f55c2f7bb83260b7e42b8d51f7100f5ae023..0000000000000000000000000000000000000000 --- "a/content/zh/docs/Installation/\351\200\211\346\213\251\345\256\211\350\243\205\350\275\257\344\273\266-4.md" +++ /dev/null @@ -1,26 +0,0 @@ -# 选择安装软件 - -在“安装概览”页面中输入“4”,然后按“Enter”,指定需要安装的软件包。 - -- Minimal Install:最小环境。提供openEuler基本功能,默认为最小环境安装。 - -在安装环境界面输入”c“后,可以通过附加选项“Add-ons”来选择需要安装的软件包,如下图所示。 - -**图 1** 安装软件 -![](figures/安装软件.png "安装软件") - -输入“1”,选择标准安装后输入”c“。 - -不同安装环境的可选附加包会有差异: - -- Standard:标准。openEuler标准安装。 -- Development Tools:开发工具。基本开发环境。 -- Headless Management:无图形终端系统管理工具。用于管理无图像终端系统的工具。 -- Legacy UNIX Compatiblity:传统UNIX兼容性。用于从继承UNIX环境中迁移或者可用于该环境的兼容程序。 -- Network Servers:网络服务器。这些软件包包括基于网络的服务器,例如DHCP、Kerberos和NIS。 -- Scientific Support:科学计数法支持。用于数学和科学计算以及平行计算的工具。 -- Security Tools:安全性工具。用于完整性和可信验证的安全性工具。 -- System Tools:系统工具。这组软件包是各类系统工具的集合,如:连接SMB共享的客户;监控网络交通的工具。 - -设置完成后,在界面输入“c”,返回“安装概览”页面。 - diff --git "a/content/zh/docs/Installation/\351\200\211\346\213\251\345\256\211\350\243\205\350\275\257\344\273\266.md" "b/content/zh/docs/Installation/\351\200\211\346\213\251\345\256\211\350\243\205\350\275\257\344\273\266.md" index 6cfa7eef6b37d41a544cb953dbf21efe291ab8de..6b804f67c4970aa3537ae8cc39f09abe650f9aea 100644 --- "a/content/zh/docs/Installation/\351\200\211\346\213\251\345\256\211\350\243\205\350\275\257\344\273\266.md" +++ "b/content/zh/docs/Installation/\351\200\211\346\213\251\345\256\211\350\243\205\350\275\257\344\273\266.md" @@ -1,4 +1,4 @@ -# 选择安装软件 +# 选择安装软件 在“安装概览”页面中选择“软件选择”,指定需要安装的软件包。 diff --git "a/content/zh/docs/Installation/\351\200\232\350\277\207USB\347\233\230\345\256\211\350\243\205.md" "b/content/zh/docs/Installation/\351\200\232\350\277\207USB\347\233\230\345\256\211\350\243\205.md" index 51cbd9534bb9c5da39d9e8740ecd8a771bfb3fe6..c19910b57d0b4eb07af5ee18b90ac2d5d84eb8d4 100644 --- "a/content/zh/docs/Installation/\351\200\232\350\277\207USB\347\233\230\345\256\211\350\243\205.md" +++ "b/content/zh/docs/Installation/\351\200\232\350\277\207USB\347\233\230\345\256\211\350\243\205.md" @@ -1,12 +1,12 @@ -# 通过USB盘安装 +# 通过USB盘安装 本节介绍如何制作USB盘安装源,并介绍基本的操作步骤,指导用户进行安装。 ## 准备安装源 -您需要注意USB盘容量的大小,它必须有足够的的空间放下整个镜像,建议USB盘空间大于4G。 +您需要注意USB盘容量的大小,它必须有足够的的空间放下整个镜像,建议USB盘空间大于16G。 -1. 将USB盘连接到该系统中,并执行 dmesg 命令查看相关的日志信息。在该日志的最后可以看到刚刚连接USB盘所生成的一组信息,应类似如下: +1. 将USB盘连接到该系统中,并执行 dmesg 命令查看相关的日志信息。在该日志的最后可以看到刚刚连接的USB盘所生成的一组信息,应类似如下: ``` [ 170.171135] sd 5:0:0:0: [sdb] Attached SCSI removable disk @@ -18,10 +18,10 @@ 2. 切换为root用户。使用su命令,需要输入相应的密码。 ``` - $ su -root + $ su - root ``` -3. 确保USB盘设备没有被挂载。使用如下命令进行查询: +3. 确保USB盘没有被挂载。使用如下命令进行查询: ``` # findmnt /dev/sdb @@ -50,10 +50,10 @@ 使用您下载的ISO镜像文件的完整路径替换 /path/to/image.iso,使用之前由 dmesg 命令给出的设备名称替换device,同时设置合理的块大小(例如:512k)替换 blocksize,这样可以加快写入进度。 - 例如:如果该ISO镜像文件位于 /home/testuser/Downloads/openEuler-1.0-base-aarch64-dvd.iso,同时探测到的设备名称为sdb,则该命令如下: + 例如:如果该ISO镜像文件位于 /home/testuser/Downloads/openEuler-20.03-LTS-aarch64-dvd.iso,同时探测到的设备名称为sdb,则该命令如下: ``` - # dd if=/home/testuser/Downloads/openEuler-1.0-base-aarch64-dvd.iso of=/dev/sdb bs=512k + # dd if=/home/testuser/Downloads/openEuler-20.03-LTS-aarch64-dvd.iso of=/dev/sdb bs=512k ``` 5. 等待镜像写入完成,拔掉USB盘。 diff --git "a/content/zh/docs/Installation/\351\200\232\350\277\207qcow2\351\225\234\345\203\217\345\256\211\350\243\205.md" "b/content/zh/docs/Installation/\351\200\232\350\277\207qcow2\351\225\234\345\203\217\345\256\211\350\243\205.md" new file mode 100644 index 0000000000000000000000000000000000000000..b8340affc38b822b7ca8dd505837e9dbeda9af67 --- /dev/null +++ "b/content/zh/docs/Installation/\351\200\232\350\277\207qcow2\351\225\234\345\203\217\345\256\211\350\243\205.md" @@ -0,0 +1,46 @@ +# 通过qcow2镜像安装 + +本节介绍如何使用或者制作qcow2镜像,并介绍相应的操作步骤,指导用户进行安装。 + +## 制作qcow2镜像 + +1. 安装qemu-img软件包。 + + ``` + # dnf install -y qemu-img + ``` + +2. 使用qemu-img工具的create命令,创建镜像文件,命令格式为: + + ``` + $ qemu-img create -f -o + ``` + + 其中,各参数含义如下: + + - _imgFormat_:镜像格式,取值为raw, qcow2等。 + - _fileOption_:文件选项,用于设置镜像文件的特性,如指定后端镜像文件,压缩,加密等特性。 + - _f__ileName_:文件名称。 + - _diskSize_:磁盘大小,用于指定块磁盘设备的大小,支持的单位有K、M、G、T,分别代表KiB、MiB、GiB、TiB。 + + 例如,创建一个磁盘设备大小为32GB、格式为qcow2的镜像文件openEuler-imge.qcow2,命令和回显如下: + + ``` + $ qemu-img create -f qcow2 openEuler-image.qcow2 32G + Formatting 'openEuler-image.qcow2', fmt=qcow2 size=34359738368 cluster_size=65536 lazy_refcounts=off refcount_bits=16 + ``` + + +## 启动安装 + +根据以下步骤启动安装程序: + +1. 准备qcow2镜像文件。 +2. 准备虚拟机网络。 +3. 准备UEFI引导工具集EDK II。 +4. 准备虚拟机XML配置文件。 +5. 创建虚拟机。 +6. 启动虚拟机。 + +各步骤详细的操作请参考《openEuler 1.0 虚拟化用户指南》。 + diff --git "a/content/zh/docs/Installation/\351\200\232\350\277\207\345\205\211\347\233\230\345\256\211\350\243\205.md" "b/content/zh/docs/Installation/\351\200\232\350\277\207\345\205\211\347\233\230\345\256\211\350\243\205.md" index 727acd632bb06f6d407133d3eee0cb4bb3380cb0..f5cdc407ef7774b439205a3f95e47bd41b79ebf8 100644 --- "a/content/zh/docs/Installation/\351\200\232\350\277\207\345\205\211\347\233\230\345\256\211\350\243\205.md" +++ "b/content/zh/docs/Installation/\351\200\232\350\277\207\345\205\211\347\233\230\345\256\211\350\243\205.md" @@ -1,4 +1,4 @@ -# 通过光盘安装 +# 通过光盘安装 本节介绍如何使用或者制作光盘安装源,并介绍相应的操作步骤,指导用户进行安装。 diff --git "a/content/zh/docs/Installation/\357\274\210\346\216\250\350\215\220\357\274\211\351\200\232\350\277\207\345\233\276\345\275\242\345\214\226\346\250\241\345\274\217\345\256\211\350\243\205.md" "b/content/zh/docs/Installation/\351\200\232\350\277\207\345\233\276\345\275\242\345\214\226\346\250\241\345\274\217\345\256\211\350\243\205.md" similarity index 80% rename from "content/zh/docs/Installation/\357\274\210\346\216\250\350\215\220\357\274\211\351\200\232\350\277\207\345\233\276\345\275\242\345\214\226\346\250\241\345\274\217\345\256\211\350\243\205.md" rename to "content/zh/docs/Installation/\351\200\232\350\277\207\345\233\276\345\275\242\345\214\226\346\250\241\345\274\217\345\256\211\350\243\205.md" index 6b500745e7dc1b75445feb294a9e798b07f56f15..316d71156c83c7923f925a7c7727210dcd088cb9 100644 --- "a/content/zh/docs/Installation/\357\274\210\346\216\250\350\215\220\357\274\211\351\200\232\350\277\207\345\233\276\345\275\242\345\214\226\346\250\241\345\274\217\345\256\211\350\243\205.md" +++ "b/content/zh/docs/Installation/\351\200\232\350\277\207\345\233\276\345\275\242\345\214\226\346\250\241\345\274\217\345\256\211\350\243\205.md" @@ -1,6 +1,6 @@ -# (推荐)通过图形化模式安装 +# 通过图形化模式安装 -在“安装引导界面”中选择“Test this media & install openEuler 1.0 with GUI mode”进入图形化模式安装。 +在“安装引导界面”中选择“Test this media & install openEuler 20.03 LTS”进入图形化模式安装。 可以通过键盘操作图形化安装程序。 @@ -10,3 +10,4 @@ - “空格”、“Enter”:选择或删除高亮显示的选项、展开或折叠下拉菜单。 - “Alt”+“快捷键”:选择快捷键所在的控件,其中快捷键可通过按住Alt高亮(加下划线)显示。 + diff --git "a/content/zh/docs/Installation/\351\200\232\350\277\207\346\226\207\346\234\254\346\250\241\345\274\217\345\256\211\350\243\205.md" "b/content/zh/docs/Installation/\351\200\232\350\277\207\346\226\207\346\234\254\346\250\241\345\274\217\345\256\211\350\243\205.md" deleted file mode 100644 index 6e0f55ac6ee6f92462dc4a01021a1f2085d5fb01..0000000000000000000000000000000000000000 --- "a/content/zh/docs/Installation/\351\200\232\350\277\207\346\226\207\346\234\254\346\250\241\345\274\217\345\256\211\350\243\205.md" +++ /dev/null @@ -1,3 +0,0 @@ -# 通过文本模式安装 - - diff --git "a/content/zh/docs/Installation/\351\200\232\350\277\207\347\247\201\346\234\211\351\225\234\345\203\217\345\256\211\350\243\205.md" "b/content/zh/docs/Installation/\351\200\232\350\277\207\347\247\201\346\234\211\351\225\234\345\203\217\345\256\211\350\243\205.md" new file mode 100644 index 0000000000000000000000000000000000000000..18a88360823065f1c058ec5dd2311d1a3095aed6 --- /dev/null +++ "b/content/zh/docs/Installation/\351\200\232\350\277\207\347\247\201\346\234\211\351\225\234\345\203\217\345\256\211\350\243\205.md" @@ -0,0 +1,12 @@ +# 通过私有镜像安装 + +本节介绍如何使用或者制作私有镜像,并介绍相应的操作步骤,指导用户进行安装。 + +## 制作私有镜像 + +制作私有镜像的方法请参见[《镜像服务用户指南》](https://support.huaweicloud.com/usermanual-ims/zh-cn_topic_0013901628.html)。 + +## 启动安装 + +华为公有云的x86虚拟化平台的启动请参见[ 弹性云服务器 ECS的用户指南](https://support.huaweicloud.com/wtsnew-ecs/index.html)。 + diff --git a/content/zh/docs/Upgrade/figures/zh-cn_image_0227389894.png b/content/zh/docs/Upgrade/figures/zh-cn_image_0227389894.png new file mode 100644 index 0000000000000000000000000000000000000000..d245d48dc07e2b01734e21ec1952e89fa9269bdb Binary files /dev/null and b/content/zh/docs/Upgrade/figures/zh-cn_image_0227389894.png differ diff --git a/content/zh/docs/Upgrade/figures/zh-cn_image_0227389901.png b/content/zh/docs/Upgrade/figures/zh-cn_image_0227389901.png new file mode 100644 index 0000000000000000000000000000000000000000..a32856aa08e459ed0f51f8fcf4c2f51511c12095 Binary files /dev/null and b/content/zh/docs/Upgrade/figures/zh-cn_image_0227389901.png differ diff --git a/content/zh/docs/Upgrade/public_sys-resources/icon-caution.gif b/content/zh/docs/Upgrade/public_sys-resources/icon-caution.gif new file mode 100644 index 0000000000000000000000000000000000000000..6e90d7cfc2193e39e10bb58c38d01a23f045d571 Binary files /dev/null and b/content/zh/docs/Upgrade/public_sys-resources/icon-caution.gif differ diff --git a/content/zh/docs/Upgrade/public_sys-resources/icon-danger.gif b/content/zh/docs/Upgrade/public_sys-resources/icon-danger.gif new file mode 100644 index 0000000000000000000000000000000000000000..6e90d7cfc2193e39e10bb58c38d01a23f045d571 Binary files /dev/null and b/content/zh/docs/Upgrade/public_sys-resources/icon-danger.gif differ diff --git a/content/zh/docs/Upgrade/public_sys-resources/icon-note.gif b/content/zh/docs/Upgrade/public_sys-resources/icon-note.gif new file mode 100644 index 0000000000000000000000000000000000000000..6314297e45c1de184204098efd4814d6dc8b1cda Binary files /dev/null and b/content/zh/docs/Upgrade/public_sys-resources/icon-note.gif differ diff --git a/content/zh/docs/Upgrade/public_sys-resources/icon-notice.gif b/content/zh/docs/Upgrade/public_sys-resources/icon-notice.gif new file mode 100644 index 0000000000000000000000000000000000000000..86024f61b691400bea99e5b1f506d9d9aef36e27 Binary files /dev/null and b/content/zh/docs/Upgrade/public_sys-resources/icon-notice.gif differ diff --git a/content/zh/docs/Upgrade/public_sys-resources/icon-tip.gif b/content/zh/docs/Upgrade/public_sys-resources/icon-tip.gif new file mode 100644 index 0000000000000000000000000000000000000000..93aa72053b510e456b149f36a0972703ea9999b7 Binary files /dev/null and b/content/zh/docs/Upgrade/public_sys-resources/icon-tip.gif differ diff --git a/content/zh/docs/Upgrade/public_sys-resources/icon-warning.gif b/content/zh/docs/Upgrade/public_sys-resources/icon-warning.gif new file mode 100644 index 0000000000000000000000000000000000000000..6e90d7cfc2193e39e10bb58c38d01a23f045d571 Binary files /dev/null and b/content/zh/docs/Upgrade/public_sys-resources/icon-warning.gif differ diff --git a/content/zh/docs/Upgrade/upgrade.md b/content/zh/docs/Upgrade/upgrade.md new file mode 100644 index 0000000000000000000000000000000000000000..c60b28a7c3c16b3bdcbadb610d80ae7d3f4a5000 --- /dev/null +++ b/content/zh/docs/Upgrade/upgrade.md @@ -0,0 +1 @@ +本文档简要描述如何升级openEuler操作系统。 \ No newline at end of file diff --git a/content/zh/docs/Upgrade/zh-cn_bookmap_0227389898.md b/content/zh/docs/Upgrade/zh-cn_bookmap_0227389898.md new file mode 100644 index 0000000000000000000000000000000000000000..9b84e04a3b099e8a9f259301770f708e057ea72c --- /dev/null +++ b/content/zh/docs/Upgrade/zh-cn_bookmap_0227389898.md @@ -0,0 +1,24 @@ +# 升级指导书 + +- [法律声明](法律声明.md) +- [前言](前言.md) +- [升级前准备](升级前准备.md) + - [升级路径](升级路径.md) + - [升级影响](升级影响.md) + - [升级注意事项](升级注意事项.md) + - [配置repo源](配置repo源.md) + - [获取ISO镜像](获取ISO镜像.md) + - [挂载ISO并配置为repo源](挂载ISO并配置为repo源.md) + + +- [升级操作](升级操作.md) + - [升级前检查](升级前检查.md) + - [升级](升级.md) + - [升级后验证](升级后验证.md) + +- [常见异常问题处理](常见异常问题处理.md) + - [如何处理系统升级中断](如何处理系统升级中断.md) + - [系统一直停留在某一软件包安装阶段](系统一直停留在某一软件包安装阶段.md) + - [升级软件包时出现冲突或缺少软件包](升级软件包时出现冲突或缺少软件包.md) + + diff --git "a/content/zh/docs/Upgrade/\345\211\215\350\250\200.md" "b/content/zh/docs/Upgrade/\345\211\215\350\250\200.md" new file mode 100644 index 0000000000000000000000000000000000000000..03f34e1f42dc207fe1e6b5151824963cf0ded85e --- /dev/null +++ "b/content/zh/docs/Upgrade/\345\211\215\350\250\200.md" @@ -0,0 +1,39 @@ +# 前言 + +## 概述 + +本文档详细地描述了openEuler操作系统的升级操作步骤,以指导用户顺利完成openEuler操作系统的升级。 + +## 读者对象 + +本文档主要适用于升级的操作人员。操作人员必须具备以下经验和技能: + +- 具备openEuler操作系统管理知识。 +- 有Linux系统的维护经验,熟悉Linux系统的操作维护方式。 + +## 符号约定 + +在本文中可能出现下列标志,它们所代表的含义如下。 + + + + + + + + + + + + + +

符号

+

说明

+

+

用于传递设备或环境安全警示信息。如不避免则可能会导致设备损坏、数据丢失、设备性能降低或其它不可预知的结果。

+

“须知”不涉及人身伤害。

+

+

对正文中重点信息的补充说明。

+

“说明”不是安全警示信息,不涉及人身、设备及环境伤害信息。

+
+ diff --git "a/content/zh/docs/Upgrade/\345\215\207\347\272\247.md" "b/content/zh/docs/Upgrade/\345\215\207\347\272\247.md" new file mode 100644 index 0000000000000000000000000000000000000000..c579fa577745ea3422d684f024eb0c3ef13fe011 --- /dev/null +++ "b/content/zh/docs/Upgrade/\345\215\207\347\272\247.md" @@ -0,0 +1,30 @@ +# 升级 + +>![](public_sys-resources/icon-note.gif) **说明:** +>版本升级后不支持回退,请谨慎操作。 + +## 前提条件 + +- 已经完成本地repo源的构建。 +- 已经完成yum配置。 + +## 操作步骤 + +1. 备份已修改的系统配置文件。 +2. 执行**yum update -y**命令升级openEuler操作系统。 + + ``` + yum update -y + ``` + + >![](public_sys-resources/icon-note.gif) **说明:** + >执行yum update后,如果是跨版本升级,可能会报有冲突,可按文档[系统一直停留在某一软件包安装阶段](系统一直停留在某一软件包安装阶段.md)章节处理。 + +3. 恢复备份的系统配置文件。 +4. 执行**reboot**命令重启系统。 + + ``` + reboot + ``` + + diff --git "a/content/zh/docs/Upgrade/\345\215\207\347\272\247\345\211\215\345\207\206\345\244\207.md" "b/content/zh/docs/Upgrade/\345\215\207\347\272\247\345\211\215\345\207\206\345\244\207.md" new file mode 100644 index 0000000000000000000000000000000000000000..914585826ba1bed4f4963a507fbb1dbb1b7bb309 --- /dev/null +++ "b/content/zh/docs/Upgrade/\345\215\207\347\272\247\345\211\215\345\207\206\345\244\207.md" @@ -0,0 +1,3 @@ +# 升级前准备 + + diff --git "a/content/zh/docs/Upgrade/\345\215\207\347\272\247\345\211\215\346\243\200\346\237\245.md" "b/content/zh/docs/Upgrade/\345\215\207\347\272\247\345\211\215\346\243\200\346\237\245.md" new file mode 100644 index 0000000000000000000000000000000000000000..8fa3f2c02d3b069dfc1b8083b8e3c952054e1ece --- /dev/null +++ "b/content/zh/docs/Upgrade/\345\215\207\347\272\247\345\211\215\346\243\200\346\237\245.md" @@ -0,0 +1,10 @@ +# 升级前检查 + +执行如下命令检查升级前的版本,确保升级前的版本为openEuler 1.0 Base。 + +``` +uname -a +``` + +查看打印信息,打印信息中包括“4.19.90-vhulk2001.1.0.0026.aarch64 \#1 SMP Fri Feb 7 04:09:58 UTC 2020”时表示为openEuler 1.0 Base版本。 + diff --git "a/content/zh/docs/Upgrade/\345\215\207\347\272\247\345\220\216\351\252\214\350\257\201.md" "b/content/zh/docs/Upgrade/\345\215\207\347\272\247\345\220\216\351\252\214\350\257\201.md" new file mode 100644 index 0000000000000000000000000000000000000000..4da4d101fc5148cf4bd42cb6c17e169cba931cca --- /dev/null +++ "b/content/zh/docs/Upgrade/\345\215\207\347\272\247\345\220\216\351\252\214\350\257\201.md" @@ -0,0 +1,10 @@ +# 升级后验证 + +升级成功系统重启后,执行以下命令,确保系统已升级为openEuler 20.03 LTS。 + +``` +cat /etc/openEuler-release +``` + +查看打印信息,打印信息中包括“openEuler release 20.03 \(LTS\)”表示已升级为openEuler 20.03 LTS。 + diff --git "a/content/zh/docs/Upgrade/\345\215\207\347\272\247\345\275\261\345\223\215.md" "b/content/zh/docs/Upgrade/\345\215\207\347\272\247\345\275\261\345\223\215.md" new file mode 100644 index 0000000000000000000000000000000000000000..dca14379eeb5d1db5ad0eaff4c05d80adc7cd6f6 --- /dev/null +++ "b/content/zh/docs/Upgrade/\345\215\207\347\272\247\345\275\261\345\223\215.md" @@ -0,0 +1,11 @@ +# 升级影响 + +如果需要从低版本升级到openEuler 20.03 LTS版本,您需要认真阅读本章,了解升级可能对现有系统造成的影响。 + +## 对业务的影响 + +- CPU占用率 + + 升级过程中,升级程序会占用一定的CPU,为了保证升级程序正常运行,请确保系统有空闲的CPU资源用于升级。 + + diff --git "a/content/zh/docs/Upgrade/\345\215\207\347\272\247\346\223\215\344\275\234.md" "b/content/zh/docs/Upgrade/\345\215\207\347\272\247\346\223\215\344\275\234.md" new file mode 100644 index 0000000000000000000000000000000000000000..2c2b931ff83f30ba6b962875f9df9cd93e293bc9 --- /dev/null +++ "b/content/zh/docs/Upgrade/\345\215\207\347\272\247\346\223\215\344\275\234.md" @@ -0,0 +1,3 @@ +# 升级操作 + + diff --git "a/content/zh/docs/Upgrade/\345\215\207\347\272\247\346\263\250\346\204\217\344\272\213\351\241\271.md" "b/content/zh/docs/Upgrade/\345\215\207\347\272\247\346\263\250\346\204\217\344\272\213\351\241\271.md" new file mode 100644 index 0000000000000000000000000000000000000000..84cb9b7111beb41455b0b0a36b3b91a9c6f584b0 --- /dev/null +++ "b/content/zh/docs/Upgrade/\345\215\207\347\272\247\346\263\250\346\204\217\344\272\213\351\241\271.md" @@ -0,0 +1,7 @@ +# 升级注意事项 + +1. 在更新中,突然掉电或更新进程被强制中止,会有系统无法重新启动的风险。 +2. 请保证根分区有足够的存储空间,一般要求大于8G,否则升级可能会失败。 +3. 升级后不支持进入原内核启动项,因为在新内核中路由信息接口有变更,涉及到monitor\_netdev模块,在原来内核启动中会出现oops。 +4. 升级成功后需要重启系统。 + diff --git "a/content/zh/docs/Upgrade/\345\215\207\347\272\247\350\267\257\345\276\204.md" "b/content/zh/docs/Upgrade/\345\215\207\347\272\247\350\267\257\345\276\204.md" new file mode 100644 index 0000000000000000000000000000000000000000..d2829d9e276eded58f946a7f02b062e6772711d8 --- /dev/null +++ "b/content/zh/docs/Upgrade/\345\215\207\347\272\247\350\267\257\345\276\204.md" @@ -0,0 +1,19 @@ +# 升级路径 + +**表 1** 升级前的版本要求 + + + + + + + + + + +

升级前的版本

+

升级后的版本

+

openEuler 1.0 Base

+

openEuler 20.03 LTS

+
+ diff --git "a/content/zh/docs/Upgrade/\345\215\207\347\272\247\350\275\257\344\273\266\345\214\205\346\227\266\345\207\272\347\216\260\345\206\262\347\252\201\346\210\226\347\274\272\345\260\221\350\275\257\344\273\266\345\214\205.md" "b/content/zh/docs/Upgrade/\345\215\207\347\272\247\350\275\257\344\273\266\345\214\205\346\227\266\345\207\272\347\216\260\345\206\262\347\252\201\346\210\226\347\274\272\345\260\221\350\275\257\344\273\266\345\214\205.md" new file mode 100644 index 0000000000000000000000000000000000000000..b9ef975f83b9d33d3de219f3017571aaf42aff92 --- /dev/null +++ "b/content/zh/docs/Upgrade/\345\215\207\347\272\247\350\275\257\344\273\266\345\214\205\346\227\266\345\207\272\347\216\260\345\206\262\347\252\201\346\210\226\347\274\272\345\260\221\350\275\257\344\273\266\345\214\205.md" @@ -0,0 +1,61 @@ +# 升级软件包时出现冲突或缺少软件包 + +## 问题现象 + +升级过程中,可能出现文件冲突或缺少软件包,从而导致升级被中断,最终升级失败。文件冲突和缺少软件包的报错信息分别如下所示。 + +文件冲突报错信息示例(以/usr/bin/containerd文件冲突为例): + +``` +Error: Transaction test error: + file /usr/bin/containerd from install of containerd-1.2.0-101.oe1.aarch64 conflicts with file from package docker-engine-18.09.0-100.aarch64 + file /usr/bin/containerd-shim from install of containerd-1.2.0-101.oe1.aarch64 conflicts with file from package docker-engine-18.09.0-100.aarch64 +``` + +缺少软件包的报错信息示例(以缺失blivet-data软件包为例): + +``` +Error: + Problem: cannot install both blivet-data-1:3.1.1-6.oe1.noarch and blivet-data-1:3.1.1-5.noarch + - package python2-blivet-1:3.1.1-5.noarch requires blivet-data = 1:3.1.1-5, but none of the providers can be installed + - cannot install the best update candidate for package blivet-data-1:3.1.1-5.noarch + - problem with installed package python2-blivet-1:3.1.1-5.noarch(try to add '--allowerasing' to command line to replace conflicting packages or '--skip-broken' to skip uninstallable packages or '--nobest' to use not only best candidate packages) +``` + +## 问题原因 + +- openEuler提供的软件包中,有些软件包虽然名称不同,但功能相同,导致安装时安装后的文件相同,从而产生了文件冲突。 +- 有些软件包,因在升级前被其他软件包所依赖,一旦该软件包升级后,可能导致依赖它的软件包因缺少软件包而不能安装。 + +## 处理步骤 + +若为文件冲突,则按如下步骤进行处理(以问题现象中的/usr/bin/containerd文件冲突为例): + +1. 根据升级过程中的文件冲突报错信息,确定导致文件冲突的软件包名称为containerd-1.2.0-101.oe1.aarch64和docker-engine-18.09.0-100.aarch64。 +2. 将不需要安装的软件包名称记录下来,以不需要安装docker-engine-18.09.0-100.aarch64为例。 +3. 执行**dnf remove**命令将不需要安装的软件包,单独卸载。 + + ``` + # dnf remove docker-engine-18.09.0-100.aarch64 + ``` + +4. 重新进行升级操作。 + +若为缺少软件包,则按如下步骤进行处理(以问题现象中的缺少blivet-data-1:3.1.1-5.noarch软件包为例): + +1. 根据升级过程中的缺少软件包报错信息,确定待升级的软件包名称blivet-data-1:3.1.1-5.noarch及依赖它的软件包名称python2-blivet-1:3.1.1-5.noarch。 +2. 执行dnf remove命令将依赖待升级包才能安装的软件包单独卸载或在升级软件包时加上--allowerasing参数。 + - 执行**dnf remove**命令将依赖blivet-data-1:3.1.1-5.noarch软件包才能安装的软件包单独卸载。 + + ``` + # dnf remove python2-blivet-1:3.1.1-5.noarch + ``` + + - 升级软件包时加上--allowerasing参数。 + + ``` + # yum update blivet-data-1:3.1.1-5.noarch -y --allowerasing + ``` + +3. 重新进行升级操作。 + diff --git "a/content/zh/docs/Upgrade/\345\246\202\344\275\225\345\244\204\347\220\206\347\263\273\347\273\237\345\215\207\347\272\247\344\270\255\346\226\255.md" "b/content/zh/docs/Upgrade/\345\246\202\344\275\225\345\244\204\347\220\206\347\263\273\347\273\237\345\215\207\347\272\247\344\270\255\346\226\255.md" new file mode 100644 index 0000000000000000000000000000000000000000..5a5b75e1142ccc05a245fa89e537917c94b77431 --- /dev/null +++ "b/content/zh/docs/Upgrade/\345\246\202\344\275\225\345\244\204\347\220\206\347\263\273\347\273\237\345\215\207\347\272\247\344\270\255\346\226\255.md" @@ -0,0 +1,45 @@ +# 如何处理系统升级中断 + +## 问题现象 + +升级过程中yum命令执行中断。 + +## 问题原因 + +用户执行CTRL+C退出执行或进程异常退出。 + +## 处理步骤 + +在系统后台执行如下命令,进行系统恢复。 + +1. 重构rpmdb,执行命令: + + ``` + rpmdb --rebuilddb + ``` + +2. 继续未完成的任务,执行命令: + + ``` + yum history redo last -y + ``` + +3. 擦除升级前的包,执行命令: + + ``` + package-cleanup --cleandupes + ``` + +4. 重新安装kernel,执行命令: + + ``` + yum reinstall kernel -y + ``` + +5. 进行系统手动重启,执行命令: + + ``` + reboot + ``` + + diff --git "a/content/zh/docs/Upgrade/\345\270\270\350\247\201\345\274\202\345\270\270\351\227\256\351\242\230\345\244\204\347\220\206.md" "b/content/zh/docs/Upgrade/\345\270\270\350\247\201\345\274\202\345\270\270\351\227\256\351\242\230\345\244\204\347\220\206.md" new file mode 100644 index 0000000000000000000000000000000000000000..cc621ff9578ed233037b2fbcae0256426308470a --- /dev/null +++ "b/content/zh/docs/Upgrade/\345\270\270\350\247\201\345\274\202\345\270\270\351\227\256\351\242\230\345\244\204\347\220\206.md" @@ -0,0 +1,3 @@ +# 常见异常问题处理 + + diff --git "a/content/zh/docs/Upgrade/\346\214\202\350\275\275ISO\345\271\266\351\205\215\347\275\256\344\270\272repo\346\272\220.md" "b/content/zh/docs/Upgrade/\346\214\202\350\275\275ISO\345\271\266\351\205\215\347\275\256\344\270\272repo\346\272\220.md" new file mode 100644 index 0000000000000000000000000000000000000000..a23abf6a9dbd0a36c09815ee0e67541ed22d663b --- /dev/null +++ "b/content/zh/docs/Upgrade/\346\214\202\350\275\275ISO\345\271\266\351\205\215\347\275\256\344\270\272repo\346\272\220.md" @@ -0,0 +1,47 @@ +# 挂载ISO并配置为repo源 + +使用mount命令挂载镜像文件。 + +示例如下: + +``` +# mount /home/iso/openEuler-20.03-LTS-everything-aarch64-dvd.iso /mnt/ +``` + +挂载好的mnt目录如下: + +``` +. +│── boot.catalog +│── docs +│── EFI +│── images +│── Packages +│── repodata +│── TRANS.TBL +└── RPM-GPG-KEY-openEuler +``` + +其中,Packages为rpm包所在的目录,repodata为repo源元数据所在的目录,RPM-GPG-KEY-openEuler为openEuler的签名公钥。。 + +挂载后的目录可以配置为yum源使用,在/etc/yum.repos.d/目录下创建\*\*\*.repo的配置文件(必须以.repo为扩展名)。 + +示例如下: + +在/etc/yum.repos.d目录下创建openEuler.repo 文件,使用本地镜像挂载目录作为yum源,openEuler.repo的内容如下: + +``` +[base] +name=base +baseurl=file:///mnt +enabled=1 +gpgcheck=1 +gpgkey=file:///mnt/RPM-GPG-KEY-openEuler +``` + +**** + +>![](public_sys-resources/icon-note.gif) **说明:** +>- gpgcheck可设置为1或0,1表示进行gpg(GNU Private Guard)校验,0表示不进行gpg校验,gpgcheck可以确定rpm包的来源是有效和安全的。 +>- gpgkey为签名公钥的存放路径。 + diff --git "a/content/zh/docs/Upgrade/\346\263\225\345\276\213\345\243\260\346\230\216.md" "b/content/zh/docs/Upgrade/\346\263\225\345\276\213\345\243\260\346\230\216.md" new file mode 100644 index 0000000000000000000000000000000000000000..198cc6ba05581495bfdaa9f1f4697cfa449ab07a --- /dev/null +++ "b/content/zh/docs/Upgrade/\346\263\225\345\276\213\345\243\260\346\230\216.md" @@ -0,0 +1,14 @@ +# 法律声明 + +**版权所有 © 2020 华为技术有限公司。** + +您对“本文档”的复制、使用、修改及分发受知识共享\(Creative Commons\)署名—相同方式共享4.0国际公共许可协议\(以下简称“CC BY-SA 4.0”\)的约束。为了方便用户理解,您可以通过访问[https://creativecommons.org/licenses/by-sa/4.0/](https://creativecommons.org/licenses/by-sa/4.0/) 了解CC BY-SA 4.0的概要 \(但不是替代\)。CC BY-SA 4.0的完整协议内容您可以访问如下网址获取:[https://creativecommons.org/licenses/by-sa/4.0/legalcode](https://creativecommons.org/licenses/by-sa/4.0/legalcode)。 + +**商标声明** + +openEuler为华为技术有限公司的商标。本文档提及的其他所有商标或注册商标,由各自的所有人拥有。 + +**免责声明** + +本文档仅作为使用指导,除非适用法强制规定或者双方有明确书面约定, 华为技术有限公司对本文档中的所有陈述、信息和建议不做任何明示或默示的声明或保证,包括但不限于不侵权,时效性或满足特定目的的担保。 + diff --git "a/content/zh/docs/Upgrade/\347\263\273\347\273\237\344\270\200\347\233\264\345\201\234\347\225\231\345\234\250\346\237\220\344\270\200\350\275\257\344\273\266\345\214\205\345\256\211\350\243\205\351\230\266\346\256\265.md" "b/content/zh/docs/Upgrade/\347\263\273\347\273\237\344\270\200\347\233\264\345\201\234\347\225\231\345\234\250\346\237\220\344\270\200\350\275\257\344\273\266\345\214\205\345\256\211\350\243\205\351\230\266\346\256\265.md" new file mode 100644 index 0000000000000000000000000000000000000000..faef11fb94222c566984871b2585500c9d4a8eb2 --- /dev/null +++ "b/content/zh/docs/Upgrade/\347\263\273\347\273\237\344\270\200\347\233\264\345\201\234\347\225\231\345\234\250\346\237\220\344\270\200\350\275\257\344\273\266\345\214\205\345\256\211\350\243\205\351\230\266\346\256\265.md" @@ -0,0 +1,36 @@ +# 系统一直停留在某一软件包安装阶段 + +## 问题现象 + +安装进程一直停留在安装某一rpm软件包阶段。 + +## 问题原因 + +安装过程中systemd会多次reload服务,可能会引起systemd关于automount的bug。 + +## 处理步骤 + +- 方法一:注销proc-sys-fs-binfmt\_misc.automount服务。 + 1. 在升级前注销服务,执行命令: + + ``` + systemctl mask proc-sys-fs-binfmt_misc.automount + ``` + + 2. 在升级后取消注销服务,执行命令: + + ``` + systemctl unmask proc-sys-fs-binfmt_misc.automount + ``` + + + +- 方法二:重启proc-sys-fs-binfmt\_misc.automount服务。 + + 切换到系统的其他终端中,执行如下命令: + + ``` + systemctl restart proc-sys-fs-binfmt_misc.automount + ``` + + diff --git "a/content/zh/docs/Upgrade/\350\216\267\345\217\226ISO\351\225\234\345\203\217.md" "b/content/zh/docs/Upgrade/\350\216\267\345\217\226ISO\351\225\234\345\203\217.md" new file mode 100644 index 0000000000000000000000000000000000000000..0f4026cc93995b6965f220a7f9862df936718642 --- /dev/null +++ "b/content/zh/docs/Upgrade/\350\216\267\345\217\226ISO\351\225\234\345\203\217.md" @@ -0,0 +1,61 @@ +# 获取ISO镜像 + +## 下载ISO镜像 + +- 通过跨平台文件传输工具下载ISO镜像 + 1. 登录openEuler社区,网址为:[https://openeuler.org](https://openeuler.org)。 + 2. 单击“下载”,进入下载页面。 + 3. 单击“获取ISO:”后面的“Link”,显示下载列表。 + 4. 单击“openEuler-20.03-LTS-everything-aarch64-dvd.iso”将openEuler发布包下载到本地。 + 5. 单击“openEuler-20.03-LTS-everything-aarch64-dvd.iso.sha256sum”将openEuler校验文件下载到本地。 + 6. 登录待升级的openEuler操作系统,新建用于存放发布包和检验文件的目录,如“/home/iso”。 + + ``` + mkdir /home/iso + ``` + + 7. 使用跨平台文件传输工具(如WinSCP)将本地的openEuler发布包和校验文件上传到待升级openEuler操作系统。 + +- 通过wget命令下载ISO镜像 + 1. 登录openEuler社区,网址为:[https://openeuler.org](https://openeuler.org)。 + 2. 单击“下载”,进入下载页面。 + 3. 单击“获取ISO:”后面的“Link”,显示下载列表。 + 4. 右键单击“openEuler-20.03-LTS-everything-aarch64-dvd.iso”,单击“复制链接地址”,将openEuler发布包地址记录好。 + 5. 右键单击“openEuler-20.03-LTS-everything-aarch64-dvd.iso.sha256sum”,单击“复制链接地址”,将openEuler校验文件地址记录好。 + 6. 登录待升级的openEuler操作系统,新建用于存放发布包和检验文件的目录,如“/home/iso”,并切换到该目录。 + + ``` + mkdir /home/iso + cd /home/iso + ``` + + 7. 使用**wget**命令远程下载发布包和检验文件,命令中的 _ipaddriso_ 和 _ipaddrisosum_ 分别为[4](#li12471102810496)和[5](#li1585718426494)中记录的地址。 + + ``` + wget ipaddriso + wget ipaddrisosum + ``` + + + +## 发布包完整性校验 + +1. 获取校验文件中的校验值。 + + ``` + cat openEuler-20.03-LTS-everything-aarch64-dvd.iso.sha256sum + ``` + +2. 计算openEuler发布包的sha256校验值。 + + ``` + sha256sum openEuler-20.03-LTS-everything-aarch64-dvd.iso + ``` + + 命令执行完成后,输出校验值。 + +3. 对比步骤1和步骤2计算的校验值是否一致。 + + 如果校验值一致说明iso文件完整性没有破坏,如果校验值不一致则可以确认文件完整性已被破坏,需要重新获取。 + + diff --git "a/content/zh/docs/Upgrade/\351\205\215\347\275\256repo\346\272\220.md" "b/content/zh/docs/Upgrade/\351\205\215\347\275\256repo\346\272\220.md" new file mode 100644 index 0000000000000000000000000000000000000000..fa87cd868058bf9bd9ba93499e0e4202b630fadb --- /dev/null +++ "b/content/zh/docs/Upgrade/\351\205\215\347\275\256repo\346\272\220.md" @@ -0,0 +1,6 @@ +# 配置repo源 + +升级openEuler前需要配置repo源。 + + + diff --git a/content/zh/menu/index.md b/content/zh/menu/index.md index f1a577127fab76e3fe466164a2121c0c4ed08f72..b0c26edc2b51e957a36ba5d5ff0df5c509315241 100644 --- a/content/zh/menu/index.md +++ b/content/zh/menu/index.md @@ -30,15 +30,21 @@ headless: true - [安装准备]({{< relref "/docs/Installation/安装准备.md" >}}) - [获取安装源]({{< relref "/docs/Installation/获取安装源.md" >}}) - [发布包完整性校验]({{< relref "/docs/Installation/发布包完整性校验.md" >}}) - - [硬件兼容支持]({{< relref "/docs/Installation/硬件兼容支持.md" >}}) - - [最小硬件要求]({{< relref "/docs/Installation/最小硬件要求.md" >}}) + - [物理机的安装要求]({{< relref "/docs/Installation/物理机的安装要求.md" >}}) + - [硬件兼容支持]({{< relref "/docs/Installation/硬件兼容支持.md" >}}) + - [最小硬件要求]({{< relref "/docs/Installation/最小硬件要求.md" >}}) + - [虚拟机的安装要求]({{< relref "/docs/Installation/虚拟机的安装要求.md" >}}) + - [虚拟化平台兼容性]({{< relref "/docs/Installation/虚拟化平台兼容性.md" >}}) + - [最小虚拟化空间要求]({{< relref "/docs/Installation/最小虚拟化空间要求.md" >}}) - [安装方式介绍]({{< relref "/docs/Installation/安装方式介绍.md" >}}) - [通过光盘安装]({{< relref "/docs/Installation/通过光盘安装.md" >}}) - [通过USB盘安装]({{< relref "/docs/Installation/通过USB盘安装.md" >}}) - [使用PXE通过网络安装]({{< relref "/docs/Installation/使用PXE通过网络安装.md" >}}) + - [通过qcow2镜像安装]({{< relref "/docs/Installation/通过qcow2镜像安装.md" >}}) + - [通过私有镜像安装]({{< relref "/docs/Installation/通过私有镜像安装.md" >}}) - [安装指导]({{< relref "/docs/Installation/安装指导.md" >}}) - [启动安装]({{< relref "/docs/Installation/启动安装.md" >}}) - - [(推荐)通过图形化模式安装]({{< relref "/docs/Installation/(推荐)通过图形化模式安装.md" >}}) + - [通过图形化模式安装]({{< relref "/docs/Installation/通过图形化模式安装.md" >}}) - [设置安装程序语言]({{< relref "/docs/Installation/设置安装程序语言.md" >}}) - [进入安装界面]({{< relref "/docs/Installation/进入安装界面.md" >}}) - [设置安装参数]({{< relref "/docs/Installation/设置安装参数.md" >}}) @@ -52,19 +58,7 @@ headless: true - [开始安装]({{< relref "/docs/Installation/开始安装.md" >}}) - [安装过程配置]({{< relref "/docs/Installation/安装过程配置.md" >}}) - [安装完成]({{< relref "/docs/Installation/安装完成.md" >}}) - - [通过文本模式安装]({{< relref "/docs/Installation/通过文本模式安装.md" >}}) - - [进入安装界面]({{< relref "/docs/Installation/进入安装界面-0.md" >}}) - - [设置安装参数]({{< relref "/docs/Installation/设置安装参数-1.md" >}}) - - [设置系统语言]({{< relref "/docs/Installation/设置系统语言-2.md" >}}) - - [设置时区、NTP服务]({{< relref "/docs/Installation/设置时区-NTP服务.md" >}}) - - [设置安装源]({{< relref "/docs/Installation/设置安装源-3.md" >}}) - - [选择安装软件]({{< relref "/docs/Installation/选择安装软件-4.md" >}}) - - [设置安装位置]({{< relref "/docs/Installation/设置安装位置-5.md" >}}) - - [设置网络]({{< relref "/docs/Installation/设置网络.md" >}}) - - [设置root密码]({{< relref "/docs/Installation/设置root密码.md" >}}) - - [创建用户]({{< relref "/docs/Installation/创建用户.md" >}}) - - [完成安装]({{< relref "/docs/Installation/完成安装.md" >}}) - + - [使用kickstart自动化安装]({{< relref "/docs/Installation/使用kickstart自动化安装.md" >}}) - [总体介绍]({{< relref "/docs/Installation/总体介绍.md" >}}) - [半自动化安装指导]({{< relref "/docs/Installation/半自动化安装指导.md" >}}) @@ -77,8 +71,10 @@ headless: true - [系统中存在无法激活的逻辑卷组时,重装系统失败]({{< relref "/docs/Installation/系统中存在无法激活的逻辑卷组时-重装系统失败.md" >}}) - [选择安装源出现异常]({{< relref "/docs/Installation/选择安装源出现异常.md" >}}) - [如何手动开启kdump服务]({{< relref "/docs/Installation/如何手动开启kdump服务.md" >}}) + - [多块磁盘组成逻辑卷安装系统后,再次安装不能只选其中一块磁盘]({{< relref "/docs/Installation/多块磁盘组成逻辑卷安装系统后-再次安装不能只选其中一块磁盘.md" >}}) + - [x86物理机UEFI模式由于security boot安全选项问题无法安装]({{< relref "/docs/Installation/x86物理机UEFI模式由于security-boot安全选项问题无法安装.md" >}}) -- [管理员指南]({{< relref "/docs/Administration/administration.md" >}}) +[管理员指南]({{< relref "/docs/Administration/administration.md" >}}) - [法律声明]({{< relref "/docs/Administration/法律声明.md" >}}) - [前言]({{< relref "/docs/Administration/前言.md" >}}) - [基础配置]({{< relref "/docs/Administration/基础配置.md" >}}) @@ -118,8 +114,8 @@ headless: true - [挂起/恢复进程]({{< relref "/docs/Administration/挂起-恢复进程.md" >}}) - [查看进程]({{< relref "/docs/Administration/查看进程.md" >}}) - [配置网络]({{< relref "/docs/Administration/配置网络.md" >}}) - - [配置IP]({{< relref "/docs/Administration/配置-IP.md" >}}) - - [使用nmcli]({{< relref "/docs/Administration/使用nmcli.md" >}}) + - [配置 IP]({{< relref "/docs/Administration/配置-IP.md" >}}) + - [使用nmcli命令]({{< relref "/docs/Administration/使用nmcli命令.md" >}}) - [nmcli介绍]({{< relref "/docs/Administration/nmcli介绍.md" >}}) - [设置网络连接]({{< relref "/docs/Administration/设置网络连接.md" >}}) - [配置动态IP连接]({{< relref "/docs/Administration/配置动态IP连接.md" >}}) @@ -127,17 +123,17 @@ headless: true - [添加 Wi-Fi 连接]({{< relref "/docs/Administration/添加-Wi-Fi-连接.md" >}}) - [更改属性]({{< relref "/docs/Administration/更改属性.md" >}}) - [配置静态路由]({{< relref "/docs/Administration/配置静态路由.md" >}}) - - [使用命令行]({{< relref "/docs/Administration/使用命令行.md" >}}) - - [通过ifcfg文件配置网络]({{< relref "/docs/Administration/通过ifcfg文件配置网络.md" >}}) - - [使用 ip 命令配置网络]({{< relref "/docs/Administration/使用-ip-命令配置网络.md" >}}) - - [静态路由及默认网关]({{< relref "/docs/Administration/静态路由及默认网关.md" >}}) + - [使用ip命令]({{< relref "/docs/Administration/使用ip命令.md" >}}) + - [配置IP地址]({{< relref "/docs/Administration/配置IP地址.md" >}}) + - [配置静态路由]({{< relref "/docs/Administration/配置静态路由-0.md" >}}) + - [通过ifcfg文件配置网络]({{< relref "/docs/Administration/通过ifcfg文件配置网络.md" >}}) - [配置主机名]({{< relref "/docs/Administration/配置主机名.md" >}}) - - [简介]({{< relref "/docs/Administration/简介-0.md" >}}) + - [简介]({{< relref "/docs/Administration/简介-1.md" >}}) - [使用hostnamectl配置主机名]({{< relref "/docs/Administration/使用hostnamectl配置主机名.md" >}}) - [使用nmcli配置主机名]({{< relref "/docs/Administration/使用nmcli配置主机名.md" >}}) - [配置网络绑定]({{< relref "/docs/Administration/配置网络绑定.md" >}}) - - [使用nmcli]({{< relref "/docs/Administration/使用nmcli-1.md" >}}) - - [使用命令行]({{< relref "/docs/Administration/使用命令行-2.md" >}}) + - [使用nmcli]({{< relref "/docs/Administration/使用nmcli.md" >}}) + - [使用命令行]({{< relref "/docs/Administration/使用命令行.md" >}}) - [检查是否已安装Bonding内核模块]({{< relref "/docs/Administration/检查是否已安装Bonding内核模块.md" >}}) - [创建频道绑定接口]({{< relref "/docs/Administration/创建频道绑定接口.md" >}}) - [创建从属接口]({{< relref "/docs/Administration/创建从属接口.md" >}}) @@ -152,11 +148,38 @@ headless: true - [IPv4的dhclient守护进程持久化配置]({{< relref "/docs/Administration/IPv4的dhclient守护进程持久化配置.md" >}}) - [iproute相关命令配置IPv4与IPv6时的差异说明]({{< relref "/docs/Administration/iproute相关命令配置IPv4与IPv6时的差异说明.md" >}}) - [NetworkManager服务配置差异说明]({{< relref "/docs/Administration/NetworkManager服务配置差异说明.md" >}}) - - [FAQ]({{< relref "/docs/Administration/FAQ.md" >}}) + - [FAQ]({{< relref "/docs/Administration/FAQ.md" >}}) - [iscsi-initiator-utils不支持登录fe80 IPv6地址]({{< relref "/docs/Administration/iscsi-initiator-utils不支持登录fe80-IPv6地址.md" >}}) - [网卡down掉之后,IPv6地址丢失]({{< relref "/docs/Administration/网卡down掉之后-IPv6地址丢失.md" >}}) - [bond口已具有多个IPv6地址时,添加或删除IPv6地址耗时过久]({{< relref "/docs/Administration/bond口已具有多个IPv6地址时-添加或删除IPv6地址耗时过久.md" >}}) - - [Rsyslog在IPv4和IPv6混合使用场景中日志传输延迟]({{< relref "/docs/Administration/Rsyslog在IPv4和IPv6混合使用场景中日志传输延迟.md" >}}) + - [Rsyslog在IPv4和IPv6混合使用场景中日志传输延迟]({{< relref "/docs/Administration/Rsyslog在IPv4和IPv6混合使用场景中日志传输延迟.md" >}}) + - [使用LVM管理硬盘]({{< relref "/docs/Administration/使用LVM管理硬盘.md" >}}) + - [LVM简介]({{< relref "/docs/Administration/LVM简介.md" >}}) + - [安装]({{< relref "/docs/Administration/安装.md" >}}) + - [管理物理卷]({{< relref "/docs/Administration/管理物理卷.md" >}}) + - [管理卷组]({{< relref "/docs/Administration/管理卷组.md" >}}) + - [管理逻辑卷]({{< relref "/docs/Administration/管理逻辑卷.md" >}}) + - [创建并挂载文件系统]({{< relref "/docs/Administration/创建并挂载文件系统.md" >}}) + - [使用KAE加速引擎]({{< relref "/docs/Administration/使用KAE加速引擎.md" >}}) + - [简介]({{< relref "/docs/Administration/简介-2.md" >}}) + - [应用场景]({{< relref "/docs/Administration/应用场景.md" >}}) + - [安装、升级和卸载]({{< relref "/docs/Administration/安装-升级和卸载.md" >}}) + - [安装加速器软件包]({{< relref "/docs/Administration/安装加速器软件包.md" >}}) + - [安装前准备]({{< relref "/docs/Administration/安装前准备.md" >}}) + - [安装加速器软件包]({{< relref "/docs/Administration/安装加速器软件包-3.md" >}}) + - [安装后操作]({{< relref "/docs/Administration/安装后操作.md" >}}) + - [OpenSSL加速器引擎测试]({{< relref "/docs/Administration/OpenSSL加速器引擎测试.md" >}}) + - [升级加速器软件包]({{< relref "/docs/Administration/升级加速器软件包.md" >}}) + - [卸载加速器软件包]({{< relref "/docs/Administration/卸载加速器软件包.md" >}}) + - [日志查询]({{< relref "/docs/Administration/日志查询.md" >}}) + - [使用案例]({{< relref "/docs/Administration/使用案例.md" >}}) + - [加速引擎的应用]({{< relref "/docs/Administration/加速引擎的应用.md" >}}) + - [KAE引擎使用示例代码]({{< relref "/docs/Administration/KAE引擎使用示例代码.md" >}}) + - [通过OpenSSL配置文件openssl.cnf使用KAE引擎]({{< relref "/docs/Administration/通过OpenSSL配置文件openssl-cnf使用KAE引擎.md" >}}) + - [故障处理]({{< relref "/docs/Administration/故障处理.md" >}}) + - [初始化失败]({{< relref "/docs/Administration/初始化失败.md" >}}) + - [安装完加速器引擎之后,查找不到加速器设备]({{< relref "/docs/Administration/安装完加速器引擎之后-查找不到加速器设备.md" >}}) + - [升级加速器驱动失败]({{< relref "/docs/Administration/升级加速器驱动失败.md" >}}) - [搭建服务]({{< relref "/docs/Administration/搭建服务.md" >}}) - [搭建repo服务器]({{< relref "/docs/Administration/搭建repo服务器.md" >}}) - [概述]({{< relref "/docs/Administration/概述.md" >}}) @@ -186,15 +209,110 @@ headless: true - [配置防火墙]({{< relref "/docs/Administration/配置防火墙.md" >}}) - [传输文件]({{< relref "/docs/Administration/传输文件.md" >}}) - [搭建web服务器]({{< relref "/docs/Administration/搭建web服务器.md" >}}) - - [概述]({{< relref "/docs/Administration/概述-3.md" >}}) - - [管理httpd]({{< relref "/docs/Administration/管理httpd.md" >}}) - - [配置文件说明]({{< relref "/docs/Administration/配置文件说明.md" >}}) - - [管理模块和SSL]({{< relref "/docs/Administration/管理模块和SSL.md" >}}) - - [验证web服务是否搭建成功]({{< relref "/docs/Administration/验证web服务是否搭建成功.md" >}}) - - [FAQ]({{< relref "/docs/Administration/FAQ-4.md" >}}) + - [Apache服务器]({{< relref "/docs/Administration/Apache服务器.md" >}}) + - [概述]({{< relref "/docs/Administration/概述-4.md" >}}) + - [管理httpd]({{< relref "/docs/Administration/管理httpd.md" >}}) + - [配置文件说明]({{< relref "/docs/Administration/配置文件说明.md" >}}) + - [管理模块和SSL]({{< relref "/docs/Administration/管理模块和SSL.md" >}}) + - [验证web服务是否搭建成功]({{< relref "/docs/Administration/验证web服务是否搭建成功.md" >}}) + - [Nginx服务器]({{< relref "/docs/Administration/Nginx服务器.md" >}}) + - [概述]({{< relref "/docs/Administration/概述-5.md" >}}) + - [安装]({{< relref "/docs/Administration/安装-6.md" >}}) + - [管理nginx]({{< relref "/docs/Administration/管理nginx.md" >}}) + - [配置文件说明]({{< relref "/docs/Administration/配置文件说明-7.md" >}}) + - [管理模块]({{< relref "/docs/Administration/管理模块.md" >}}) + - [验证web服务是否搭建成功]({{< relref "/docs/Administration/验证web服务是否搭建成功-8.md" >}}) + - [搭建数据库服务器]({{< relref "/docs/Administration/搭建数据库服务器.md" >}}) + - [PostgreSql服务器]({{< relref "/docs/Administration/PostgreSql服务器.md" >}}) + - [软件介绍]({{< relref "/docs/Administration/软件介绍.md" >}}) + - [配置环境]({{< relref "/docs/Administration/配置环境.md" >}}) + - [关闭防火墙并取消开机自启动]({{< relref "/docs/Administration/关闭防火墙并取消开机自启动.md" >}}) + - [修改SELINUX为disabled]({{< relref "/docs/Administration/修改SELINUX为disabled.md" >}}) + - [创建组和用户]({{< relref "/docs/Administration/创建组和用户.md" >}}) + - [搭建数据盘]({{< relref "/docs/Administration/搭建数据盘.md" >}}) + - [数据目录授权]({{< relref "/docs/Administration/数据目录授权.md" >}}) + - [安装、运行和卸载]({{< relref "/docs/Administration/安装-运行和卸载.md" >}}) + - [安装]({{< relref "/docs/Administration/安装-9.md" >}}) + - [运行]({{< relref "/docs/Administration/运行.md" >}}) + - [初始化数据库]({{< relref "/docs/Administration/初始化数据库.md" >}}) + - [启动数据库]({{< relref "/docs/Administration/启动数据库.md" >}}) + - [登录数据库]({{< relref "/docs/Administration/登录数据库.md" >}}) + - [配置数据库账号密码]({{< relref "/docs/Administration/配置数据库账号密码.md" >}}) + - [退出数据库]({{< relref "/docs/Administration/退出数据库.md" >}}) + - [停止数据库]({{< relref "/docs/Administration/停止数据库.md" >}}) + - [卸载]({{< relref "/docs/Administration/卸载.md" >}}) + - [管理数据库角色]({{< relref "/docs/Administration/管理数据库角色.md" >}}) + - [创建角色]({{< relref "/docs/Administration/创建角色.md" >}}) + - [查看角色]({{< relref "/docs/Administration/查看角色.md" >}}) + - [修改角色]({{< relref "/docs/Administration/修改角色.md" >}}) + - [删除角色]({{< relref "/docs/Administration/删除角色.md" >}}) + - [角色授权]({{< relref "/docs/Administration/角色授权.md" >}}) + - [删除用户权限]({{< relref "/docs/Administration/删除用户权限.md" >}}) + - [管理数据库]({{< relref "/docs/Administration/管理数据库.md" >}}) + - [创建数据库]({{< relref "/docs/Administration/创建数据库.md" >}}) + - [选择数据库]({{< relref "/docs/Administration/选择数据库.md" >}}) + - [查看数据库]({{< relref "/docs/Administration/查看数据库.md" >}}) + - [删除数据库]({{< relref "/docs/Administration/删除数据库.md" >}}) + - [备份数据库]({{< relref "/docs/Administration/备份数据库.md" >}}) + - [恢复数据库]({{< relref "/docs/Administration/恢复数据库.md" >}}) + - [Mariadb服务器]({{< relref "/docs/Administration/Mariadb服务器.md" >}}) + - [软件介绍]({{< relref "/docs/Administration/软件介绍-10.md" >}}) + - [配置环境]({{< relref "/docs/Administration/配置环境-11.md" >}}) + - [关闭防火墙并取消开机自启动]({{< relref "/docs/Administration/关闭防火墙并取消开机自启动-12.md" >}}) + - [修改SELINUX为disabled]({{< relref "/docs/Administration/修改SELINUX为disabled-13.md" >}}) + - [创建组和用户]({{< relref "/docs/Administration/创建组和用户-14.md" >}}) + - [搭建数据盘]({{< relref "/docs/Administration/搭建数据盘-15.md" >}}) + - [创建数据库目录并且授权]({{< relref "/docs/Administration/创建数据库目录并且授权.md" >}}) + - [安装、运行和卸载]({{< relref "/docs/Administration/安装-运行和卸载-16.md" >}}) + - [安装]({{< relref "/docs/Administration/安装-17.md" >}}) + - [运行]({{< relref "/docs/Administration/运行-18.md" >}}) + - [卸载]({{< relref "/docs/Administration/卸载-19.md" >}}) + - [管理数据库用户]({{< relref "/docs/Administration/管理数据库用户.md" >}}) + - [创建用户]({{< relref "/docs/Administration/创建用户.md" >}}) + - [查看用户]({{< relref "/docs/Administration/查看用户.md" >}}) + - [修改用户]({{< relref "/docs/Administration/修改用户.md" >}}) + - [删除用户]({{< relref "/docs/Administration/删除用户-20.md" >}}) + - [用户授权]({{< relref "/docs/Administration/用户授权.md" >}}) + - [删除用户权限]({{< relref "/docs/Administration/删除用户权限-21.md" >}}) + - [管理数据库]({{< relref "/docs/Administration/管理数据库-22.md" >}}) + - [创建数据库]({{< relref "/docs/Administration/创建数据库-23.md" >}}) + - [查看数据库]({{< relref "/docs/Administration/查看数据库-24.md" >}}) + - [选择数据库]({{< relref "/docs/Administration/选择数据库-25.md" >}}) + - [删除数据库]({{< relref "/docs/Administration/删除数据库-26.md" >}}) + - [备份数据库]({{< relref "/docs/Administration/备份数据库-27.md" >}}) + - [恢复数据库]({{< relref "/docs/Administration/恢复数据库-28.md" >}}) + - [MySQL服务器]({{< relref "/docs/Administration/MySQL服务器.md" >}}) + - [软件介绍]({{< relref "/docs/Administration/软件介绍-29.md" >}}) + - [配置环境]({{< relref "/docs/Administration/配置环境-30.md" >}}) + - [关闭防火墙并取消开机自启动]({{< relref "/docs/Administration/关闭防火墙并取消开机自启动-31.md" >}}) + - [修改SELINUX为disabled]({{< relref "/docs/Administration/修改SELINUX为disabled-32.md" >}}) + - [创建组和用户]({{< relref "/docs/Administration/创建组和用户-33.md" >}}) + - [搭建数据盘]({{< relref "/docs/Administration/搭建数据盘-34.md" >}}) + - [创建数据库目录并且授权]({{< relref "/docs/Administration/创建数据库目录并且授权-35.md" >}}) + - [安装、运行和卸载]({{< relref "/docs/Administration/安装-运行和卸载-36.md" >}}) + - [安装]({{< relref "/docs/Administration/安装-37.md" >}}) + - [运行]({{< relref "/docs/Administration/运行-38.md" >}}) + - [卸载]({{< relref "/docs/Administration/卸载-39.md" >}}) + - [管理数据库用户]({{< relref "/docs/Administration/管理数据库用户-40.md" >}}) + - [创建用户]({{< relref "/docs/Administration/创建用户-41.md" >}}) + - [查看用户]({{< relref "/docs/Administration/查看用户-42.md" >}}) + - [修改用户]({{< relref "/docs/Administration/修改用户-43.md" >}}) + - [删除用户]({{< relref "/docs/Administration/删除用户-44.md" >}}) + - [用户授权]({{< relref "/docs/Administration/用户授权-45.md" >}}) + - [删除用户权限]({{< relref "/docs/Administration/删除用户权限-46.md" >}}) + - [管理数据库]({{< relref "/docs/Administration/管理数据库-47.md" >}}) + - [创建数据库]({{< relref "/docs/Administration/创建数据库-48.md" >}}) + - [查看数据库]({{< relref "/docs/Administration/查看数据库-49.md" >}}) + - [选择数据库]({{< relref "/docs/Administration/选择数据库-50.md" >}}) + - [删除数据库]({{< relref "/docs/Administration/删除数据库-51.md" >}}) + - [备份数据库]({{< relref "/docs/Administration/备份数据库-52.md" >}}) + - [恢复数据库]({{< relref "/docs/Administration/恢复数据库-53.md" >}}) + - [FAQ]({{< relref "/docs/Administration/FAQ-54.md" >}}) - [使用systemctl和top命令查询libvirtd服务占用内存不同]({{< relref "/docs/Administration/使用systemctl和top命令查询libvirtd服务占用内存不同.md" >}}) - [设置RAID0卷,参数stripsize设置为4时出错]({{< relref "/docs/Administration/设置RAID0卷-参数stripsize设置为4时出错.md" >}}) - [使用rpmbuild编译mariadb失败]({{< relref "/docs/Administration/使用rpmbuild编译mariadb失败.md" >}}) + - [使用默认配置启动SNTP服务失败]({{< relref "/docs/Administration/使用默认配置启动SNTP服务失败.md" >}}) + - [安装时出现软件包冲突、文件冲突或缺少软件包导致安装失败]({{< relref "/docs/Administration/安装时出现软件包冲突-文件冲突或缺少软件包导致安装失败.md" >}}) - [安全加固指南]({{< relref "/docs/SecHarden/secHarden.md" >}}) - [法律声明]({{< relref "/docs/SecHarden/法律声明.md" >}}) @@ -709,3 +827,92 @@ headless: true - [常见问题与解决方法]({{< relref "/docs/A-Tune/常见问题与解决方法.md" >}}) - [附录]({{< relref "/docs/A-Tune/附录.md" >}}) - [术语和缩略语]({{< relref "/docs/A-Tune/术语和缩略语.md" >}}) + +- [升级指导书]({{< relref "/docs/Ugrade/upgrade.md" >}}) + - [法律声明]({{< relref "/docs/Ugrade/法律声明.md" >}}) + - [前言]({{< relref "/docs/Ugrade/前言.md" >}}) + - [升级前准备]({{< relref "/docs/Ugrade/升级前准备.md" >}}) + - [升级路径]({{< relref "/docs/Ugrade/升级路径.md" >}}) + - [升级影响]({{< relref "/docs/Ugrade/升级影响.md" >}}) + - [升级注意事项]({{< relref "/docs/Ugrade/升级注意事项.md" >}}) + - [配置repo源]({{< relref "/docs/Ugrade/配置repo源.md" >}}) + - [获取ISO镜像]({{< relref "/docs/Ugrade/获取ISO镜像.md" >}}) + - [挂载ISO并配置为repo源]({{< relref "/docs/Ugrade/挂载ISO并配置为repo源.md" >}}) + - [升级操作]({{< relref "/docs/Ugrade/升级操作.md" >}}) + - [升级前检查]({{< relref "/docs/Ugrade/升级前检查.md" >}}) + - [升级]({{< relref "/docs/Ugrade/升级.md" >}}) + - [升级后验证]({{< relref "/docs/Ugrade/升级后验证.md" >}}) + - [常见异常问题处理]({{< relref "/docs/Ugrade/常见异常问题处理.md" >}}) + - [如何处理系统升级中断]({{< relref "/docs/Ugrade/如何处理系统升级中断.md" >}}) + - [系统一直停留在某一软件包安装阶段]({{< relref "/docs/Ugrade/系统一直停留在某一软件包安装阶段.md" >}}) + - [升级软件包时出现冲突或缺少软件包]({{< relref "/docs/Ugrade/升级软件包时出现冲突或缺少软件包.md" >}}) + + +- [应用开发指南]({{< relref "/docs/ApplicationDev/application-development.md" >}}) + - [法律声明]({{< relref "/docs/ApplicationDev/法律声明.md" >}}) + - [前言]({{< relref "/docs/ApplicationDev/前言.md" >}}) + - [开发环境准备]({{< relref "/docs/ApplicationDev/开发环境准备.md" >}}) + - [环境要求]({{< relref "/docs/ApplicationDev/环境要求.md" >}}) + - [配置repo源]({{< relref "/docs/ApplicationDev/配置repo源.md" >}}) + - [安装软件包]({{< relref "/docs/ApplicationDev/安装软件包.md" >}}) + - [安装JDK软件包]({{< relref "/docs/ApplicationDev/安装JDK软件包.md" >}}) + - [安装rpm-build软件包]({{< relref "/docs/ApplicationDev/安装rpm-build软件包.md" >}}) + - [使用IDE进行Java开发]({{< relref "/docs/ApplicationDev/使用IDE进行Java开发.md" >}}) + - [简介]({{< relref "/docs/ApplicationDev/简介.md" >}}) + - [使用MobaXterm登录服务器]({{< relref "/docs/ApplicationDev/使用MobaXterm登录服务器.md" >}}) + - [设置JDK环境]({{< relref "/docs/ApplicationDev/设置JDK环境.md" >}}) + - [下载安装GTK库]({{< relref "/docs/ApplicationDev/下载安装GTK库.md" >}}) + - [设置X11 Forwarding]({{< relref "/docs/ApplicationDev/设置X11-Forwarding.md" >}}) + - [下载并运行IntelliJ IDEA]({{< relref "/docs/ApplicationDev/下载并运行IntelliJ-IDEA.md" >}}) + - [使用GCC编译]({{< relref "/docs/ApplicationDev/使用GCC编译.md" >}}) + - [简介]({{< relref "/docs/ApplicationDev/简介-0.md" >}}) + - [基本规则]({{< relref "/docs/ApplicationDev/基本规则.md" >}}) + - [文件类型]({{< relref "/docs/ApplicationDev/文件类型.md" >}}) + - [编译流程]({{< relref "/docs/ApplicationDev/编译流程.md" >}}) + - [编译选项]({{< relref "/docs/ApplicationDev/编译选项.md" >}}) + - [多源文件编译]({{< relref "/docs/ApplicationDev/多源文件编译.md" >}}) + - [库]({{< relref "/docs/ApplicationDev/库.md" >}}) + - [动态链接库]({{< relref "/docs/ApplicationDev/动态链接库.md" >}}) + - [静态链接库]({{< relref "/docs/ApplicationDev/静态链接库.md" >}}) + - [示例]({{< relref "/docs/ApplicationDev/示例.md" >}}) + - [使用GCC编译C程序示例]({{< relref "/docs/ApplicationDev/使用GCC编译C程序示例.md" >}}) + - [使用GCC创建和使用动态链接库示例]({{< relref "/docs/ApplicationDev/使用GCC创建和使用动态链接库示例.md" >}}) + - [使用GCC创建和使用静态链接库示例]({{< relref "/docs/ApplicationDev/使用GCC创建和使用静态链接库示例.md" >}}) + - [使用make编译]({{< relref "/docs/ApplicationDev/使用make编译.md" >}}) + - [简介]({{< relref "/docs/ApplicationDev/简介-1.md" >}}) + - [基本规则]({{< relref "/docs/ApplicationDev/基本规则-2.md" >}}) + - [文件类型]({{< relref "/docs/ApplicationDev/文件类型-3.md" >}}) + - [make工作流程]({{< relref "/docs/ApplicationDev/make工作流程.md" >}}) + - [make选项]({{< relref "/docs/ApplicationDev/make选项.md" >}}) + - [Makefile]({{< relref "/docs/ApplicationDev/Makefile.md" >}}) + - [示例]({{< relref "/docs/ApplicationDev/示例-4.md" >}}) + - [使用Makefile实现编译的示例]({{< relref "/docs/ApplicationDev/使用Makefile实现编译的示例.md" >}}) + - [使用JDK编译]({{< relref "/docs/ApplicationDev/使用JDK编译.md" >}}) + - [简介]({{< relref "/docs/ApplicationDev/简介-5.md" >}}) + - [基本规则]({{< relref "/docs/ApplicationDev/基本规则-6.md" >}}) + - [文件类型及工具]({{< relref "/docs/ApplicationDev/文件类型及工具.md" >}}) + - [java程序生成流程]({{< relref "/docs/ApplicationDev/java程序生成流程.md" >}}) + - [JDK常用工具选项]({{< relref "/docs/ApplicationDev/JDK常用工具选项.md" >}}) + - [类库]({{< relref "/docs/ApplicationDev/类库.md" >}}) + - [示例]({{< relref "/docs/ApplicationDev/示例-7.md" >}}) + - [编译不带包的java程序示例]({{< relref "/docs/ApplicationDev/编译不带包的java程序示例.md" >}}) + - [编译带包的java程序示例]({{< relref "/docs/ApplicationDev/编译带包的java程序示例.md" >}}) + - [构建RPM包]({{< relref "/docs/ApplicationDev/构建RPM包.md" >}}) + - [打包说明]({{< relref "/docs/ApplicationDev/打包说明.md" >}}) + - [本地构建]({{< relref "/docs/ApplicationDev/本地构建.md" >}}) + - [搭建开发环境]({{< relref "/docs/ApplicationDev/搭建开发环境.md" >}}) + - [创建Hello World RPM包]({{< relref "/docs/ApplicationDev/创建Hello-World-RPM包.md" >}}) + - [下载源码]({{< relref "/docs/ApplicationDev/下载源码.md" >}}) + - [编辑SPEC文件]({{< relref "/docs/ApplicationDev/编辑SPEC文件.md" >}}) + - [构建RPM包]({{< relref "/docs/ApplicationDev/构建RPM包-8.md" >}}) + - [使用OBS构建]({{< relref "/docs/ApplicationDev/使用OBS构建.md" >}}) + - [OBS简介]({{< relref "/docs/ApplicationDev/OBS简介.md" >}}) + - [在线构建软件包]({{< relref "/docs/ApplicationDev/在线构建软件包.md" >}}) + - [构建已有软件包]({{< relref "/docs/ApplicationDev/构建已有软件包.md" >}}) + - [新增软件包]({{< relref "/docs/ApplicationDev/新增软件包.md" >}}) + - [获取软件包]({{< relref "/docs/ApplicationDev/获取软件包.md" >}}) + - [使用osc构建软件包]({{< relref "/docs/ApplicationDev/使用osc构建软件包.md" >}}) + - [安装并配置osc]({{< relref "/docs/ApplicationDev/安装并配置osc.md" >}}) + - [构建已有软件包]({{< relref "/docs/ApplicationDev/构建已有软件包-9.md" >}}) + - [新增软件包]({{< relref "/docs/ApplicationDev/新增软件包-10.md" >}}) + - [获取软件包]({{< relref "/docs/ApplicationDev/获取软件包-11.md" >}}) \ No newline at end of file diff --git "a/rdocs/zh/openEuler 20.03 LTS_20200324/openEuler 20.03 LTS \345\215\207\347\272\247\346\214\207\345\257\274\344\271\246.pdf" "b/rdocs/zh/openEuler 20.03 LTS_20200324/openEuler 20.03 LTS \345\215\207\347\272\247\346\214\207\345\257\274\344\271\246.pdf" new file mode 100644 index 0000000000000000000000000000000000000000..04e04bb92dcdc7265fa18e147d1bd1c857bf1426 Binary files /dev/null and "b/rdocs/zh/openEuler 20.03 LTS_20200324/openEuler 20.03 LTS \345\215\207\347\272\247\346\214\207\345\257\274\344\271\246.pdf" differ diff --git "a/rdocs/zh/openEuler 20.03 LTS_20200324/openEuler 20.03 LTS \345\256\211\350\243\205\346\214\207\345\215\227.pdf" "b/rdocs/zh/openEuler 20.03 LTS_20200324/openEuler 20.03 LTS \345\256\211\350\243\205\346\214\207\345\215\227.pdf" new file mode 100644 index 0000000000000000000000000000000000000000..dd98abe26aa097f6b6ffb15858acf521a6ea8a19 Binary files /dev/null and "b/rdocs/zh/openEuler 20.03 LTS_20200324/openEuler 20.03 LTS \345\256\211\350\243\205\346\214\207\345\215\227.pdf" differ diff --git "a/rdocs/zh/openEuler 20.03 LTS_20200324/openEuler 20.03 LTS \345\272\224\347\224\250\345\274\200\345\217\221\346\214\207\345\215\227.pdf" "b/rdocs/zh/openEuler 20.03 LTS_20200324/openEuler 20.03 LTS \345\272\224\347\224\250\345\274\200\345\217\221\346\214\207\345\215\227.pdf" new file mode 100644 index 0000000000000000000000000000000000000000..ad87eda264cb189dee5c4830dadecd41faeb989c Binary files /dev/null and "b/rdocs/zh/openEuler 20.03 LTS_20200324/openEuler 20.03 LTS \345\272\224\347\224\250\345\274\200\345\217\221\346\214\207\345\215\227.pdf" differ diff --git "a/rdocs/zh/openEuler 20.03 LTS_20200324/openEuler 20.03 LTS \347\256\241\347\220\206\345\221\230\346\214\207\345\215\227.pdf" "b/rdocs/zh/openEuler 20.03 LTS_20200324/openEuler 20.03 LTS \347\256\241\347\220\206\345\221\230\346\214\207\345\215\227.pdf" new file mode 100644 index 0000000000000000000000000000000000000000..fca31bbfdc2ddd787644ad24a3972ac27964f4eb Binary files /dev/null and "b/rdocs/zh/openEuler 20.03 LTS_20200324/openEuler 20.03 LTS \347\256\241\347\220\206\345\221\230\346\214\207\345\215\227.pdf" differ