当前位置:   article > 正文

openEuler系统安装与部署NextCloud及数据迁移_openeuler部署nextcloud

openeuler部署nextcloud

一、欧拉系统安装

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

二、openEuler安装图形界面Ukui

安装界面转:https://blog.csdn.net/xcjyxy2021/article/details/123342877

在这里插入图片描述

三、yum安装的npm包进行本地保存设置(个人任务需要)

在这里插入图片描述

#主要是更改yum.conf配置文件,找找自己文件位置
[root@Ban etc]# vi /etc/yum.conf
  • 1
  • 2

在这里插入图片描述

[main]
cachedir=/var/cache/yum
keepcache=1
gpgcheck=1
logfile=/var/log/yum.log
installonly_limit=3
clean_requirements_on_remove=True
best=True
skip_if_unavailable=False             
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

注意:yum缓存的不一定全部缓存了npm包,查看安装的包都有哪些,是否缓存全部,没有缓存全部就哪个没缓存,卸载单独安装缓存该npm包

查看命令
 rpm -qa|grep php
  • 1
  • 2

在这里插入图片描述

四、部署nextCloud

4.1构建LAMP环境基础

配置环境参考https://www.php.cn/php-weizijiaocheng-407708.html

4.1.1开启httpd,防火墙端口号

firewall-cmd --list-all-zones    #查看所有的zone信息
firewall-cmd --get-default-zone     #查看默认zone是哪一个
firewall-cmd --zone=internal --change-zone=p3p1  #临时修改接口p3p1所属的zone为internal
firewall-cmd --add-service=http    #暂时开放http
firewall-cmd --permanent --add-service=http  #永久开放http
firewall-cmd --zone=public --add-port=80/tcp --permanent  #在public中永久开放80端口
firewall-cmd --permanent --zone=public --remove-service=ssh   #从public zone中移除服务
firewall-cmd --reload   #重新加载配置

原文链接:https://blog.csdn.net/cctcc/article/details/68062142
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

以下为使用到的命令:

[root@localhost yum]# systemctl start httpd.service
[root@localhost yum]# systemctl enable httpd.service
[root@localhost yum]# firewall-cmd --zone=public --add-port=80/tcp --permanent
success
[root@localhost yum]# firewall-cmd --zone=public --add-port=8080/tcp --permanent
success
[root@localhost yum]# firewall-cmd --reload
success
[root@localhost yum]# systemctl status httpd.service
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

在这里插入图片描述
在这里插入图片描述

4.1.2开启MariaDB服务

开启MariaDB服务,并设置系统启动时服务自动启动:
systemctl start mariadb.service
systemctl enable mariadb.service

设置MySQL root帐户的密码:
mysql_secure_installation
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

4.1.3安装并测试php

在这里插入图片描述

4.2下载安装nextCloud

官方下载网址:https://nextcloud.com/install/

在这里插入图片描述

4.2.1创建nextCloud数据库,存放网盘文件索引与用户信息

在这里插入图片描述

show databases;
use mysql;

MariaDB [mysql]> select user,host,plugin from mysql.user;
+-------------+-----------+-----------------------+
| User        | Host      | plugin                |
+-------------+-----------+-----------------------+
| mariadb.sys | localhost | mysql_native_password |
| root        | localhost | mysql_native_password |
| mysql       | localhost | mysql_native_password |
+-------------+-----------+-----------------------+
3 rows in set (0.002 sec)
# root  | localhost
# 说明该root用户只支持本地访问。Host字段更改为'%',允许远程访问。
MariaDB [mysql]> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;
MariaDB [mysql]> FLUSH PRIVILEGES;
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
MariaDB [mysql]> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root123' WITH GRANT OPTION;
Query OK, 0 rows affected (0.003 sec)

MariaDB [mysql]> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.002 sec)

MariaDB [mysql]> select user,host,plugin from mysql.user;
+-------------+-----------+-----------------------+
| User        | Host      | plugin                |
+-------------+-----------+-----------------------+
| mariadb.sys | localhost | mysql_native_password |
| root        | localhost | mysql_native_password |
| mysql       | localhost | mysql_native_password |
| root        | %         | mysql_native_password |
+-------------+-----------+-----------------------+
4 rows in set (0.001 sec)

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
# 创建nextcloud存储的数据库
create database nextcloud;
  • 1
  • 2

4.2.2拷贝NextCloud并创建data目录,目录赋予权限

#以下是我的步骤,html文件夹可删除,自己建,赋予权限很重要!
[root@localhost html]# cp /root/桌面/nextCloud/* /var/www/html/
[root@localhost html]# mkdir /var/www/html/data
[root@localhost nextCloud]# chown apache:apache -R /var/www/html/
[root@localhost nextCloud]# chown apache:apache -R /var/www/html/data/
#  setenforce 0很重要
# 表示 设置SELinux 成为permissive模式 临时关闭selinux防火墙
# 永久关闭:输入命令vi /etc/selinux/config,将SELINUX=enforcing改为SELINUX=disabled,然后保存退出
[root@localhost nextCloud]# setenforce 0
[root@localhost nextCloud]# systemctl start httpd.service
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

五、离线npm包方式部署NextCloud(个人需要,正常联网状态搭建LAMP环境后,拷贝NextCloud安装即可)

[root@localhost yum]# yum localinstall -y ./httpd/*    //批量安装离线npm包
  • 1

查看缓存的npm是否都在文件中,有个tree命令,更方便,需要安装tree

#安装命令
yum -y install tree
  • 1
  • 2

在这里插入图片描述

使用yum离线批量安装npm,会自动解析依赖关系,但由于服务器处于非联网状态下,这里yum安装会联网加载yum源,这里解决方式两种:。

1、设置本地yum源,加载
2、sudo rpm -ivh httpd/*  # 批量本地安装rpm包,这里解析依赖,准备好安装过程中需要的所有库文件和源文件。 
原则上,少什么联网下什么。
  • 1
  • 2
  • 3

在这里插入图片描述

# 开启Apache服务,并设置系统启动时服务自动启动:
[root@localhost yum]# systemctl start httpd.service
[root@localhost yum]# systemctl enable httpd.service
#为了能够从外部访问Web服务器,必须在防火墙中打开HTTP(80)和HTTPS(443)端口。
#CentOS上的默认防火墙是firewalld,可以使用firewalld-cmd命令进行配置。
[root@localhost yum]# firewall-cmd --zone=public --add-port=80/tcp --permanent
success
[root@localhost yum]# firewall-cmd --zone=public --add-port=8080/tcp --permanent
success
[root@localhost yum]# firewall-cmd --reload
success
[root@localhost yum]# systemctl status httpd.service

# 开启MariaDB服务,并设置系统启动时服务自动启动:
systemctl start mariadb.service
systemctl enable mariadb.service

# 设置MySQL root帐户的密码:
mysql_secure_installation

# 安装好php后,要重启Apache服务
systemctl restart httpd.service

[root@localhost html]# cp /root/桌面/nextCloud/* /var/www/html/
[root@localhost html]# mkdir /var/www/html/data
[root@localhost nextCloud]# chown apache:apache -R /var/www/html/
[root@localhost nextCloud]# chown apache:apache -R /var/www/html/data/
#  setenforce 0很重要
# 表示 设置SELinux 成为permissive模式 临时关闭selinux防火墙
# 永久关闭:
输入命令vi /etc/selinux/config,将SELINUX=enforcing改为SELINUX=disabled,然后保存退出
[root@localhost nextCloud]# setenforce 0
[root@localhost nextCloud]# systemctl start httpd.service
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33

六、nextCloud网盘数据迁移

主要思路:
1、将原迁移网盘的Mangdb数据库的数据库表导出,文件缓存的文件夹data复制保存。
2、在另一台虚拟机或者服务器上部署好nextCloud,创建一个新的管理员账户登录进入,之后可以用退出,用数据库中原先存储的账户登录方可看到原来的数据,可以再删除刚刚创建的管理员账户。
3、在另一台虚拟机上运行正常的nextCloud上导入原迁移的数据库表与合并两个data文件夹

6.1数据库表全部导出

数据库详细操作转链接:https://www.php.cn/mysql-tutorials-418491.html

在这里插入图片描述

#导出dbname数据库,导出文件为mydb.sql(注:不用登录数据库,直接命令行输入,然后输入数据库密码)
mysqldump dbname > nextcloud.sql -u root -p

#导入数据库表 (登录数据库后进行 注:没有;结尾)
source /root/桌面/mydb.sql            
  • 1
  • 2
  • 3
  • 4
  • 5

在这里插入图片描述

#最好重启下httpd
 systemctl restart httpd.service
  • 1
  • 2

6.3最终完成

在这里插入图片描述
在这里插入图片描述

七、常见问题

1、配置目录无法写入

在这里插入图片描述
在这里插入图片描述

[root@localhost nextCloud]# systemctl start httpd.service
[root@localhost nextCloud]# chown apache:apache -R /var/www/html/
[root@localhost nextCloud]# chown apache:apache -R /var/www/html/data/
[root@localhost nextCloud]# setenforce 0
  • 1
  • 2
  • 3
  • 4

在这里插入图片描述

2、未知问题

部署成功之后,过了一段时间打开变成如下:

在这里插入图片描述

[root@localhost httpd]# tail /var/log/httpd/error_log 
  • 1

在这里插入图片描述

最终解决

经过多次卸载更改httpd配置文件无效之后,最终不是通过修改httpd解决,反而是重新删除nextCloud,拷贝重新赋予权限之后解决,原因未知。

在这里插入图片描述

3、nextCloud数据迁移时问题

在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家自动化/article/detail/216406
推荐阅读
相关标签
  

闽ICP备14008679号