G
N
I
D
A
O
L

华为OpenEuler安装配置


华为OpenEuler安装配置

虚拟机

环境介绍

新建虚拟机

  1. 打开Hyper-V管理器,ALT+A+Q进行快速创建虚拟机 ,如图.

    依次操作:本地安装源 » 更改安装源 » 在弹出目录下选中下载的镜像文件 » 打开 » 更多选项 » 修改名称 » 创建虚拟机

    创建虚拟机

    创建成功后,在管理器中出现如图所示虚拟机

    虚拟机列表

  2. 修改虚拟机配置
    依次操作:右击新建的虚拟机 » 设置 » 安全选项 » 如图取消所有选项[^此项必须关闭,否则不能正常启动] » 保存

    虚拟机配置

安装系统(安全完成后iso文件不可删除,建议事先放在一个合适的位置[^所有目录建议英文,以防意外])

  1. 打开虚拟机
    依次操作:双击虚拟机 » 在弹出的界面点击启动

    打开虚拟机

  2. 进入系统引导界面,选择Install openEuler 20.03-LTS-SP1直接安装,点击Enter确认 (剩下两项用于检测故障,一般不需要)

  3. 等待进入安装设置界面,完成用户设置(过程略),开始安装,等待。

    • 用户设置,务必记住密码 (虚拟机打开可能未开启NUM小键盘

    • 请注意输入根用户的用户名为root)

    • 请注意用户区分大小写

    • 在软件选择中,根据需要选择勾选功能(在不确定的情况下可以全勾上)

  4. 安装成功重启系统。设置检查点,如图所示,用于操作错误时进行还原

创建还原点

​ 创建成功后在Hyper-V管理器的检查点中,选择检查点右击应用进行还原

  1. 登陆界面如图所示

    登陆

    登入成功如图所示

登陆成功

设置本地源(非everything可跳过)[^SP1版本已默认配置好官方网络源]

以下操作均使用root权限操作演示,普通用户请使用sudo+指令进行操作。

  1. 挂载本地源镜像

    1. 新建一个文件夹用于存放镜像mkdir /mnt/local
    2. 挂载镜像mount /dev/sr0 /mnt/local[^local为自定义存放位置]
    3. 查看挂载信息df -h。可以看到挂载成功
  2. 进入源目录:cd /etc/yum.repos.d/

  3. 查看你的源文件名字ls。显示openEuler.repo即为我的源文件,若不存在可自行创建此文件。

  4. 打开源文件进行修改vi openEuler.repo

    • makdir + 目录 为创建文件夹指令
    • mnt文件为默认挂载外部文件的文件夹
    • mount + 目录1 + 目录2 目录1为镜像地址,目录2为挂载到的位置
    • umount + 目录2 可卸载目录
    • cd + 空格 + 目录 为切换目录的指令
    • 使用tab键可以自动补全指令
    • ls意为显示目录下的所有文件
    • 系统没有vim,请使用vi进行编辑

    添加如下信息:(原有的信息可以留着,或者在每行开头加#注释掉)

    [Local]
    name=Local
    baseurl=file:///mnt/local/
    enabled=1
    gpgcheck=1
    gpgkey=file:/// mnt/local/RPM-GPG-KEY-openEuler
    

    gpgcheck可设置为1或0,1表示进行gpg(GNU Private Guard)校验,0表示不进行gpg校验,gpgcheck可以确定rpm包的来源是有效和安全的。
    gpgkey为签名公钥的存放路径。

    vi编辑器的简单使用方法(详尽方法请自行百度)

    使用上下左右键移动光标

    按下i键,切换为插入模式 (可在此模式下编辑)

    按下ESC退出插入模式 – INSERT –

    输入:q退出编辑器,且不保存内容

    输入:wq退出编辑器,且保存内容

  5. 测试更新源yum makecache

    若出现Couldn’t read a file…问题可能是源中的目录配置错误,或没有正确挂载镜像(每一次重启虚拟机都需要重新挂载一次镜像,即输入mount /dev/sr0 /mnt/local

安装图形界面(可以选择GNOME、DDE或UKUI等等,这里用DDE)

官方图形界面指南Desktop | openEuler documentation

  1. 安装DDEdnf install dde -y

    使用dnf或者yum + install + 软件名进行下载安装(若是本地源则省去了大量下载时间)

  2. 测试图形界面startx,提示错误[^startx为打开图形界面的指令]

    参考运行startx报错的解决_xilin6664的博客-CSDN博客

    dnf groupinstall "X Window System"

  3. 再测试startx,不报错并闪退。输入init 5切换至图形界面,成功。

  4. 图形界面登陆,显示框框乱码,点下面那个(上面是特效模式、下面是简洁模式)

    安装中文字体,参考Linux CentOS 7 安装字体库 & 中文字体 - 林台山人 - 博客园 (cnblogs.com)

  5. 设置图形界面启动systemctl set-default graphical.target使得开机就切换为图形界面

  6. 删除图形界面自带的openeuler用户,在图形界面中操作如图 [^可选]

用户设置

  1. 再次换yum源(有图形界面后自动挂载,不需要每次开机挂载了)

    ///mnt/local/改为///run/media/你的用户名/openEuler-20.03-LTS-SP1-x86_64/

开发境配置

官方应用开发指南 Application Development | openEuler documentation

C++语言配置

  1. 安装dnf install gcc,默认安装版本为7.3.0

  2. 升级至8.2.0[^自选]

  3. 新建一个文件夹用于存放软件mkdir /home/softFile,进入文件夹cd /home/softFile

  4. 下载安装包wget http://ftp.gnu.org/gnu/gcc/gcc-8.2.0/gcc-8.2.0.tar.gz

    Index of /gnu/gcc/gcc-8.2.0/ (ustc.edu.cn)速度快的镜像

  5. 解压tar -C /home/softFile -xzf gcc-8.2.0.tar.gz

  6. 进入目录cd /home/softFile/gcc-8.2.0

  7. 下载依GCC赖包gmp、mpfr、mpc等./contrib/download_prerequisites

    Linux升级gcc到最新版本–gcc-9.2.0 - 垃圾里的战斗机 - 博客园 (cnblogs.com)

    centos7升级gcc_Asimov__的博客-CSDN博客

    问题参考。速度慢需要换镜像

  8. 创建编译目录mkdir build,进入目录cd build

  9. 生成Makefile文件.../configure -enable-checking=release -enable-languages=c,c++ -disable-multilib

  10. 安装一次性开发工具yum groupinstall “Development Tools”

  11. 编译make & make install,❗注意这步时间约2小时

  12. 重启reboot,校验版本gcc -v

Java语言配置

  1. 查询可安装的JDK软件包dnf search jdk | grep jdk

    查看命令打印信息,选择安装java-x.x.x-openjdk-devel.aarch64软件包。其中x.x.x为版本号,同时支持openjdk 1.8、openjdk 11和 openjdk latest 版本

  2. 安装JDK软件包,以安装java-1.8.0-openjdk-devel软件包为例。

    dnf install java-1.8.0-openjdk-devel

  3. 查询JDK软件版本 java -version javac -version

软件安装配置

火狐浏览器dnf install firefox

输入法fcitx

Ibus输入法的DDE桌面环境配置不会弄,遂使用fcitx

安装参考:[21.03 安装DDE及中文输入法0329.md · wzq-hwx/raspberry-test - Gitee.com](https://gitee.com/wzqhwx/raspberry-test/blob/master/21.03 安装DDE及中文输入法0329.md)

  1. 添加源[^20.03LTS的输入法只有ibus,安装fcitx需要21.03的源]
[OS]
name=OS
baseurl=http://119.3.219.20:82/openEuler:/21.03/standard_$basearch/
enabled=1
gpgcheck=0
[fcitx]
name=fcitx
baseurl=http://121.36.3.168:82/home:/weidong:/branches:/openEuler:/21.03:/Epol/standard_$basearch/
enabled=1
gpgcheck=0
[epol]
name=epol
baseurl=http://119.3.219.20:82/openEuler:/21.03:/Epol/standard_$basearch/
enabled=1
gpgcheck=0
  1. 安装fcitxdnf install fcitx fcitx-qt5 fcitx-cloudpinyin fcitx-sunpinyin fcitx-configtool

  2. imsettiings-switch fcitx systemctl restart lightdm

    参考How to Compile xRDP+X11RDP on Ubuntu_★断崖头☆绝尘寺★-CSDN博客

远程登陆x11vnc和xrdp[^需要新版本的源]

  1. X11vnc安装dnf install x11vnc

  2. 设置vnc密码x11vnc -storepasswd

  3. 开机自启systemctl enable x11vnc.service

  4. 开启服务systemctl start x11vnc.service

  5. Xrdp前置编译库文件下载

    dnf install openssl-devel pam-devel libX11-devel libXfixes-devel libXrandr-devel libjpeg-devel nasm

  6. 下载源码git clone git://github.com/FreeRDP/xrdp.git,进入目录cd xrdp

  7. 生成makefile ./bootstrap ./configure --enable-jpeg --enable-simplesound

  8. 编译make & make install

  9. 启动服务、开放端口过程略

Visual Studio Code

参考openeuler安装VScode_OS与驱动_鲲鹏论坛_华为云论坛 (huaweicloud.com)

  1. 安装密钥和仓库
    rpm --import https://packages.microsoft.com/keys/microsoft.asc sh -c 'echo -e "[code]\nname=Visual Studio Code\nbaseurl=https://packages.microsoft.com/yumrepos/vscode\nenabled=1\ngpgcheck=1\ngpgkey=https://packages.microsoft.com/keys/microsoft.asc" > /etc/yum.repos.d/vscode.repo'

  2. 用dnf或者yum安装,安装的是最新的稳定版
    dnf check-update(yum check-update)
    dnf install code(yum install code)

  3. C++配置

    参考 linux下VscodeC++环境配置 - 乌鸦爱说话 - 博客园 (cnblogs.com)

    • launch.json配置参考

      {
          // 使用 IntelliSense 了解相关属性。
          // 悬停以查看现有属性的描述。
          // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
          "version": "0.2.0",
          "configurations": [
              {
                  "name": "g++ - 生成和调试活动文件",
                  "type": "cppdbg",
                  "request": "launch",
                  "program": "${fileDirname}/Run/${fileBasenameNoExtension}",
                  "args": [],
                  "stopAtEntry": false,
                  "cwd": "${workspaceFolder}/Run",
                  "environment": [],
                  "externalConsole": false,
                  "MIMode": "gdb",
                  "setupCommands": [
                      {
                          "description": "为 gdb 启用整齐打印",
                          "text": "-enable-pretty-printing",
                          "ignoreFailures": true
                      }
                  ],
                  "preLaunchTask": "C/C++: g++ 生成活动文件",
                  "miDebuggerPath": "/bin/gdb"
              }
          ]
      }
      
    • tasks.json配置参考

      {
              "version": "2.0.0",
              "tasks": [
                      {
                              "type": "cppbuild",
                              "label": "C/C++: g++ 生成活动文件",
                              "command": "/bin/g++",
                              "args": [
                                      "-g",
                                      "-std=c++17",
                                      "${file}",
                                      "-o",
                                      "${fileDirname}/Run/${fileBasenameNoExtension}"
                              ],
                              "options": {
                                      "cwd": "${workspaceFolder}/Run"
                              },
                              "problemMatcher": [
                                      "$gcc"
                              ],
                              "group": {
                                      "kind": "build",
                                      "isDefault": true
                              },
                              "detail": "编译器: /bin/g++"
                      }
              ]
      }
      

Qt Creator

参考openeuler 安装qt-creator_鲲鹏论坛_华为云论坛 (huaweicloud.com)

  1. 安装xcb库dnf install libxcb libxcb-devel

    官网下载在线安装包Download Qt: Get Qt Online Installer

  2. 非root权限打开安装包,进行安装

  3. 安装提示Not enough disk space to store temporary files,意为tmp空间不足。

    重新挂载tmpumount -l /tmp

  4. 安装完成,测试demo,提示cannot find -IGL

    参考运行Qt Creator出现cannot find -lGL的问题多种解决_wangshaobovip的博客-CSDN博客

    安装dnf install mesa-libEGL-devel

Apache

  1. 安装dnf install httpd

  2. 启动服务systemctl start httpd,开机自启systemctl enable httpd

  3. 开放端口firewall-cmd --permanent --add-service=http

  4. 重启防火墙firewall-cmd --reload

MariaDB

mariadb与mysql都属于同一类数据库管理系统。但是mariadb与mysql在使用范围和使用目的上都有所不同,两者的主要功能都是为了通过开源社区在维护中,从而获得GPL授权许可。从关系上来看,mariadb是属于数据库管理系统的开发和升级版本,它仅仅代表MySQL的一个分支。

Mariadb可以使用mysql的语句

  1. 安装dnf install mariadb mariadb-server

  2. 启动服务systemctl start mariadb,开机自启systemctl enable mariadb

  3. 预配置mysql_secure_installation

    • mysql_secure_installation #直接执行初始化命令,会弹出交互配置信息Enter current
    • password for root (enter for none):#初次进入密码为空,直接回车
    • New password: #输入要为root用户设置的数据库密码。
    • Re-enter new password: #重复再输入一次密码。
    • Remove anonymous users? [Y/n] y #删除匿名帐号
    • Disallow root login remotely? [Y/n] n #是否禁止root用户从远程登录,安全起见应禁止,这里为做实验方便这里不禁止。
    • Remove test database and access to it? [Y/n] y #是否删除test数据库,想留着也随意
    • Reload privilege tables now? [Y/n] y #刷新授权表,让初始化后的设定立即生效
  4. 登陆mysql -uroot

  5. 添加远程账号CREATE USER '新建账号名'@'%' IDENTIFIED BY '新密码';

  6. 添加权限grant 权限 on 数据库.数据表 to '用户' @ '主机名';

  7. 查看端口show global variables like 'port';

  8. 退出客户端exit

  9. 开放端口firewall-cmd --zone=public --add-port=3306/tcp --permanent

    命令含义:

    • –zone #作用域
    • –add-port=1935/tcp #添加端口,格式为:端口/通讯协议
    • –permanent #永久生效,没有此参数重启后失效
  10. 重启防火墙firewall-cmd --reload

PHP

  1. 安装dnf install php php-mysqlnd php-fpm

  2. 启动php-fpm service php-fpm restart

  3. 重启Apache systemctl restart httpd

  4. 新建一个php文件vi /var/www/html/info.php

    <?php phpinfo();?>
    
  5. 修改php.ini,设置short_open_tag = On

  6. 测试网页http://127.0.0.1/info.php

openGauss(单节点)

参考官网教程企业版安装 | openGauss

  1. 安装依赖文件dnf install libaio-devel flex bison ncurses-devel glibc-devel patch openeuler-lsb libnsl

    • redhat-lsb-core代替为openeuler-lsblibnsl安装可能出现“(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”
    • 请使用21.03的源进行安装
  2. 创建存放GaussDB的文件夹mkdir -p /opt/software/openGausschmod 755 -R /opt/software

  3. 进入文件夹cd /opt/software/openGauss

  4. 下载安装包wget https://opengauss.obs.cn-south-1.myhuaweicloud.com/2.0.0/x86_openEuler/openGauss-2.0.0-openEuler-64bit-all.tar.gz

  5. 解压安装包

    tar -zxvf openGauss-x.x.x-openEuler-64bit-all.tar.gz

    tar -zxvf openGauss-x.x.x-openEuler-64bit-om.tar.gz

  6. 创建XML配置文件vi cluster_config.xml,以单节点为例,修改中文部分

    其他配置请看官方文档创建 X M L配置文件 | openGauss

    <?xml version="1.0" encoding="UTF-8"?>
    <ROOT>
        <CLUSTER>
            <PARAM name="clusterName" value="数据库名称" />
            <PARAM name="nodeNames" value="主机名" />
            <PARAM name="gaussdbAppPath" value="/opt/huawei/install/app" />
            <PARAM name="gaussdbLogPath" value="/var/log/omm" />
            <PARAM name="tmpMppdbPath" value="/opt/huawei/tmp" />
            <PARAM name="gaussdbToolPath" value="/opt/huawei/install/om" />
            <PARAM name="corePath" value="/opt/huawei/corefile" />
            <PARAM name="backIp1s" value="主机ip地址"/> 
        </CLUSTER>
        <DEVICELIST>
            <DEVICE sn="主机名">
                <PARAM name="name" value="主机名"/>
                <PARAM name="azName" value="AZ1"/>
                <PARAM name="azPriority" value="1"/>
                <PARAM name="backIp1" value="主机ip地址"/>
                <PARAM name="sshIp1" value="主机ip地址"/>
            <PARAM name="dataNum" value="1"/>
            <PARAM name="dataPortBase" value="访问端口"/>
            <PARAM name="dataNode1" value="/opt/huawei/install/data/dn"/>
                <PARAM name="dataNode1_syncNum" value="0"/>
            </DEVICE>
        </DEVICELIST>
    </ROOT>
    
  7. 进入工具脚本目录cd /opt/software/openGauss/script

  8. 交互式创建omm用户和root互信

    ./gs_preinstall -U omm -G dbgrp -X /opt/software/openGauss/cluster_config.xml

  9. 登陆omm用户su - omm

  10. 安装GaussDBgs_install -X /opt/software/openGauss/cluster_config.xml

  11. 查看数据库状态gs_om -t statuscluster_state 显示Normal表示数据库可正常使用。

  12. 数据库安装完成后,默认生成名称为postgres的数据库,尝试连接gsql -d postgres -p 你的端口

  13. 创建客户端用户CREATE USER 用户名 PASSWORD '密码';,退出数据库\q

  14. 配置远程访问白名单gs_guc set -N all -I all -h "host 数据库名 用户名 ip地址/32 sha256"

    • -N all表示openGauss的所有主机。
    • -I all表示主机的所有实例。
    • -h表示指定需要在“pg_hba.conf”增加的语句。
    • all表示允许客户端连接到任意的数据库。
    • jack表示连接数据库的用户。
    • 10.10.0.30/32表示只允许IP地址为10.10.0.30的主机连接。此处的IP地址不能为openGauss内的IP,在使用过程中,请根据用户的网络进行配置修改。
    • 32表示子网掩码为1的位数,即255.255.255.255。
    • sha256表示连接时jack用户的密码使用sha256算法加密。
  15. 修改监听地址(使得可以远程访问)

    opengauss重新配置ip地址_11biscuits的博客-CSDN博客

    1. 关闭数据库gs_om -t stop

    2. 进入配置目录cd /opt/huawei/install/data/dbn,目录可能略有不同

    3. 打开配置文件vi postgresql.conf

    4. 修改其中几项

      listen_addresses = ‘新监听地址’ [^监听地址改为*则是全开放]

      local_bind_address = ‘新监听地址’ port = 新端口

      启动数据库gs_om -t start [^暂时不知道如何自启动]


文章作者: AnglesD
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 AnglesD !
评论
  目录