在Ubuntu 16.04上安装和配置ownCloud的方法
前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站。
简介
ownCloud 是一个文件共享服务器,允许您将个人内容(如文档和图片)存储在一个类似 Dropbox 的集中位置。ownCloud 的不同之处在于它是免费且开源的,这使任何人都可以使用和检查它。它还将您敏感数据的控制和安全性归还给您,从而消除了使用第三方云托管服务的需求。
在本教程中,我们将在 Ubuntu 16.04 服务器上安装和配置 ownCloud 实例。
先决条件
为了完成本指南中的步骤,您需要以下内容:
- 服务器上的 sudo 用户:您可以按照 Ubuntu 16.04 初始服务器设置指南创建一个具有 sudo 权限的用户。
- LAMP 栈:ownCloud 需要一个 Web 服务器、一个数据库和 PHP 来正常运行。设置一个 LAMP 栈(Linux、Apache、MySQL 和 PHP)服务器可以满足所有这些要求。按照本指南安装和配置这些软件。
- 为了充分利用 ownCloud 提供的所有功能,请确保安装以下 PHP 模块:
php-bz2、php-curl、php-gd、php-imagick、php-intl、php-mbstring、php-xml和php-zip。
- 为了充分利用 ownCloud 提供的所有功能,请确保安装以下 PHP 模块:
- SSL 证书:您如何设置这个取决于您是否有一个解析到您服务器的域名。
- 如果您有一个域名…… 最简单的方式是使用 Let’s Encrypt 来保护您的站点,它提供免费的受信任的证书。按照 Apache 的 Let’s Encrypt 指南来设置。
- 如果您没有一个域名…… 并且您只是用这个配置进行测试或个人使用,您可以使用自签名证书。这提供了相同类型的加密,但没有域验证。按照 Apache 的自签名 SSL 指南来设置。
步骤 1 – 安装 ownCloud
ownCloud 服务器包在 Ubuntu 的默认仓库中不存在。但是,ownCloud 维护了一个专门的仓库供该发行版使用。
首先,使用 curl 命令下载他们的发布密钥,并使用 apt-key 实用程序的 add 命令导入它:
sudo curl https://download.owncloud.org/download/repositories/stable/Ubuntu_16.04/Release.key | sudo apt-key add -
. . .% Total % Received % Xferd Average Speed Time Time Time CurrentDload Upload Total Spent Left Speed
100 1358 100 1358 0 0 2057 0 --:--:-- --:--:-- --:--:-- 2057
OK
‘Release.key’ 文件包含一个 PGP(Pretty Good Privacy)公钥,apt 将使用它来验证 ownCloud 包的真实性。
除了导入密钥,还要在 apt 的 sources.list.d 目录中创建一个名为 owncloud.list 的文件。该文件将包含指向 ownCloud 仓库的地址。
echo 'deb https://download.owncloud.org/download/repositories/stable/Ubuntu_16.04/ /' | sudo tee /etc/apt/sources.list.d/owncloud.list
deb https://download.owncloud.org/download/repositories/stable/Ubuntu_16.04/ /
添加新源后,使用 apt-get 实用程序和 update 命令使 apt 意识到更改:
sudo apt-get update
. . .
W: https://download.owncloud.org/download/repositories/stable/Ubuntu_16.04/Release.gpg: Signature by key DDA2C105C4B73A6649AD2BBD47AE7F72479BC94B uses weak digest algorithm (SHA1)
最后,使用 apt-get 实用程序和 install 命令执行 ownCloud 的安装:
sudo apt-get install owncloud
在收到 Do you want to continue? [Y/n] 消息时,按下 ENTER 键确认安装。
Setting up owncloud-deps-php7.0 (9.1.1-1.2) ...
Enabling conf owncloud.
To activate the new configuration, you need to run:service apache2 reload
apache2_invoke: Enable module rewrite
apache2_invoke owncloud: already enabled
Setting up owncloud (9.1.1-1.2) ...
Processing triggers for libc-bin (2.23-0ubuntu4) ...
Processing triggers for libapache2-mod-php7.0 (7.0.8-0ubuntu0.16.04.3) ...
从输出中可以看出,安装创建了 Apache 的新配置。使用 systemctl 实用程序和 reload 命令使 Apache 守护程序意识到更改:
sudo systemctl reload apache2
安装了 ownCloud 服务器后,我们将继续设置一个数据库供其使用。
第二步 – MySQL 数据库配置
首先,使用管理员账户登录 MySQL:
mysql -u root -p
输入你在安装数据库服务器时为 MySQL root 用户设置的密码。
ownCloud 需要一个单独的数据库来存储管理数据。虽然你可以随意命名这个数据库,但为了简化操作,我们决定将其命名为 owncloud。
CREATE DATABASE owncloud;
接下来,创建一个单独的 MySQL 用户账户,用于与新创建的数据库进行交互。从管理和安全的角度考虑,创建单一功能的数据库和账户是个不错的主意。和数据库的命名一样,选择一个你喜欢的用户名。在本指南中,我们选择使用名为 owncloud。
GRANT ALL ON owncloud.* to 'owncloud'@'localhost' IDENTIFIED BY 'set_database_password';
用户被赋予对数据库的访问权限后,执行 flush-privileges 操作以确保运行中的 MySQL 实例知道最近的权限分配情况:
FLUSH PRIVILEGES;
MySQL 配置完成,因此我们将通过输入以下命令退出会话:
exit
ownCloud 服务器已安装并且数据库已设置好,现在我们可以开始配置 ownCloud 应用程序。
第三步 – ownCloud 配置
要访问 ownCloud 网页界面,请打开浏览器并输入以下地址:
https://server_domain_or_IP/owncloud
如果使用自签名证书,可能会收到警告,因为证书未由浏览器信任的机构签名。这是预期的和正常的。我们只关心证书的加密方面,而不是主机真实性的第三方验证。点击适当的按钮或链接以继续访问 ownCloud 管理页面。
你应该会看到类似以下的界面:
!ownCloud 管理页面
通过选择用户名和密码创建一个管理员账户。出于安全考虑,不建议使用类似 “admin” 的用户名。
!ownCloud 管理账户
在点击 完成设置 按钮之前,点击 存储 & 数据库 链接:
!ownCloud 数据库配置
保持 数据文件夹 设置不变,并在 配置数据库 部分点击 MySQL/MariaDB 按钮。
!ownCloud 数据库设置
输入在上一步中配置的数据库信息。以下是一个示例,与本指南中使用的数据库凭据匹配:
!ownCloud 数据库示例
点击 完成设置 按钮以登录 ownCloud。应该会出现 A safe home for all your data 欢迎界面:
!ownCloud 欢迎界面
点击欢迎界面右上角的 x 以访问主界面:
!ownCloud 主界面
在这里,你可以创建或上传文件到你的个人云存储空间。
结论
ownCloud 可以复制流行的第三方云存储服务的功能。内容可以在用户之间共享,也可以通过公共 URL 在外部共享。ownCloud 的优势在于信息存储在你控制的安全位置。
探索界面,并通过 ownCloud 的应用商店安装插件以获得额外功能。
相关文章:
在Ubuntu 16.04上安装和配置ownCloud的方法
前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站。 简介 ownCloud 是一个文件共享服务器,允许您将个人内容(如文档和图片)存储在一个类似 Dropbox 的集…...
Java | Leetcode Java题解之第213题打家劫舍II
题目: 题解: class Solution {public int rob(int[] nums) {int length nums.length;if (length 1) {return nums[0];} else if (length 2) {return Math.max(nums[0], nums[1]);}return Math.max(robRange(nums, 0, length - 2), robRange(nums, 1,…...
使用 ESP32 接收 MAX4466 模拟麦克风模块的数据,通过 DAC 转码成 PCM 格式,并通过 MQTT 发送给另一台设备,可以通过以下步骤实现。
硬件准备 两个 ESP32 开发板MAX4466 模拟麦克风模块MQTT 服务器(例如 Mosquitto) 接线 MAX4466 模块输出(AO) -> ESP32 ADC 引脚(如 GPIO 34) 软件准备 音频采集DAC 转码MQTT 发送和接收 代码实现…...
SQL二次注入原理分析
二次注入在测试的时候比较少见,或者说很难被测出来,因为测的时候首先要去找注入的位置,其次是去判断第一次执行的SQL语句,然后还要去判断第二次进行调用的 SQL 语句。而关键问题就出在第二次的调用上面。 下面以一个常用过滤方法…...
在线签约如何选择?2024年10款顶级app大比拼
支持电子合同签约的10大app:e签宝、上上签、DocuSign、契约锁、Adobe Sign、法大大、SignNow、安心签、HelloSign、PandaDoc。 无论是企业之间的交易还是个人服务合同,线上电子合同签约提供了一种便捷、高效且安全的方式来处理法律文档。本文将介绍几款优…...
gcc: warning: -Wunused-function;加了选项,为什么就不报警告呢?
文章目录 问题clang的编译而使用gcc是就不报问题分析原因如果是非static的函数问题 下面这个代码段,其中这个函数hton_ext_2byte,在整个程序里就没有使用。 static inline uint16_t hton_ext_2byte(uint8_t **p) {uint16_t v;******return v;...
系统提示我未定义与 ‘double‘ 类型的输入参数相对应的函数 ‘finverse‘,如何解决?
🏆本文收录于「Bug调优」专栏,主要记录项目实战过程中的Bug之前因后果及提供真实有效的解决方案,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&…...
【电路笔记】-B类放大器
B类放大器 文章目录 B类放大器1、概述2、B类放大器介绍3、推挽式配置4、限制交叉失真5、B类放大器效率6、总结1、概述 我们在之前的文章中已经知道,A 类放大器的特点是导通角为 360,理论最大效率为 50%。 在本文中,我们将详细介绍另一类放大器,称为B类放大器,它是为解决A…...
Ubuntu 22.04 安装中文字体
笔者在用OpenCV4.9处理图片加水印时,中文乱码。原来是Ubuntu 22.04发行版缺少中文字体支持,因此,笔者就找资料安装了需要的中文字体,特此记录,以备后查。 1、打开终端: 2、更新软件包列表: su…...
「树莓派入门」树莓派进阶04-直流电机控制与PWM应用
直流电机控制是树莓派硬件项目中的一项重要技能。通过PWM技术,你可以实现对电机速度的精确控制。在实验过程中,请注意电机的电源匹配和GPIO引脚的保护。 一、直流电机基本原理 直流电机通过直流电源供电,其工作原理基于洛伦兹力定律,即电流通过线圈时,会在磁场中受到力的…...
利用数据集,用机器学习模型对股市预测,聊聊看!
🏆本文收录于「Bug调优」专栏,主要记录项目实战过程中的Bug之前因后果及提供真实有效的解决方案,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&…...
015-GeoGebra基础篇-定点旋转物体、动态显示数值并显示运动轨迹
这可能是我能想到的最大概率可以被你搜索到的标题了,容我先喘口气~ 目录 一、成品展示二、涉及内容三、做图步骤(1)绘制三角形t(2)建立定点D(3)制作角度滑动条(4)图形绕点…...
2024年6月份找工作和面试总结
转眼间6月份已经过完了,2024年已经过了一半,希望大家都找到了合适的工作。 本人前段时间写了5月份找工作的情况,请查看2024年5月份面试总结-CSDN博客 但是后续写的总结被和谐了,不知道这篇文章能不能发出来。 1、6月份面试机会依…...
同步时钟:北斗/GPS卫星、电信基站、NTP以太网校时方式的区别
同步时钟是保证各设备时间统一的重要装置,广泛应用于电力、通信、金融、学校、医院、地铁等多个领域。目前,常用的同步时钟方式包括:北斗/GPS卫星、电信基站、NTP以太网等。 下面跟着小编来看一下这些校时方式及他们的区别吧。 1. 北斗/GP…...
实现Java应用的快速开发与迭代
实现Java应用的快速开发与迭代 大家好,我是免费搭建查券返利机器人省钱赚佣金就用微赚淘客系统3.0的小编,也是冬天不穿秋裤,天冷也要风度的程序猿! 1. 引言 随着软件开发周期的不断缩短和市场竞争的加剧,快速开发和…...
利用redis数据库管理代理库爬取cosplay网站-cnblog
爬取cos猎人 数据库管理主要分为4个模块,代理获取模块,代理储存模块,代理测试模块,爬取模块 cos猎人已经倒闭,所以放出爬虫源码 api.py 为爬虫评分提供接口支持 import requests import concurrent.futures import …...
数据仓库建模基础理论-01-为什么需要数据建模?
一、什么是数据模型? 数据模型是数据库的基础结构,用于描述和组织数据的方式。 它不仅是数据库的底层结构,还是一个概念性工具,帮助理解数据的含义和关系。 数据模型包括数据本身、数据之间的关系、数据的语义(含义和…...
中序遍历的两种实现——二叉树专题复习
递归实现: /*** Definition for a binary tree node.* public class TreeNode {* int val;* TreeNode left;* TreeNode right;* TreeNode() {}* TreeNode(int val) { this.val val; }* TreeNode(int val, TreeNode left, TreeNode right)…...
python 基础综合应用——小开发
#python 基础综合应用——小开发 综合复习 变量- 循环- 函数- 模块 开发 名片管理系统 名片管理系统介绍 名片管理系统可以理解成花名册软件,通过个人新建人的信息后可以进行查询等简单操作的程序 名片管理系统有三个作用, 1.新建名片 2.显示全部名…...
算法金 | 我最常用的两个数据可视化软件,强烈推荐
大侠幸会,在下全网同名「算法金」 0 基础转 AI 上岸,多个算法赛 Top 「日更万日,让更多人享受智能乐趣」 抱个拳,送个礼 预警:今天文章的描述可能会让你有点别扭;如感到不适,请及时停止 在我行…...
云原生核心技术 (7/12): K8s 核心概念白话解读(上):Pod 和 Deployment 究竟是什么?
大家好,欢迎来到《云原生核心技术》系列的第七篇! 在上一篇,我们成功地使用 Minikube 或 kind 在自己的电脑上搭建起了一个迷你但功能完备的 Kubernetes 集群。现在,我们就像一个拥有了一块崭新数字土地的农场主,是时…...
Ubuntu系统下交叉编译openssl
一、参考资料 OpenSSL&&libcurl库的交叉编译 - hesetone - 博客园 二、准备工作 1. 编译环境 宿主机:Ubuntu 20.04.6 LTSHost:ARM32位交叉编译器:arm-linux-gnueabihf-gcc-11.1.0 2. 设置交叉编译工具链 在交叉编译之前&#x…...
简易版抽奖活动的设计技术方案
1.前言 本技术方案旨在设计一套完整且可靠的抽奖活动逻辑,确保抽奖活动能够公平、公正、公开地进行,同时满足高并发访问、数据安全存储与高效处理等需求,为用户提供流畅的抽奖体验,助力业务顺利开展。本方案将涵盖抽奖活动的整体架构设计、核心流程逻辑、关键功能实现以及…...
遍历 Map 类型集合的方法汇总
1 方法一 先用方法 keySet() 获取集合中的所有键。再通过 gey(key) 方法用对应键获取值 import java.util.HashMap; import java.util.Set;public class Test {public static void main(String[] args) {HashMap hashMap new HashMap();hashMap.put("语文",99);has…...
dedecms 织梦自定义表单留言增加ajax验证码功能
增加ajax功能模块,用户不点击提交按钮,只要输入框失去焦点,就会提前提示验证码是否正确。 一,模板上增加验证码 <input name"vdcode"id"vdcode" placeholder"请输入验证码" type"text&quo…...
Spring Boot面试题精选汇总
🤟致敬读者 🟩感谢阅读🟦笑口常开🟪生日快乐⬛早点睡觉 📘博主相关 🟧博主信息🟨博客首页🟫专栏推荐🟥活动信息 文章目录 Spring Boot面试题精选汇总⚙️ **一、核心概…...
AI编程--插件对比分析:CodeRider、GitHub Copilot及其他
AI编程插件对比分析:CodeRider、GitHub Copilot及其他 随着人工智能技术的快速发展,AI编程插件已成为提升开发者生产力的重要工具。CodeRider和GitHub Copilot作为市场上的领先者,分别以其独特的特性和生态系统吸引了大量开发者。本文将从功…...
python执行测试用例,allure报乱码且未成功生成报告
allure执行测试用例时显示乱码:‘allure’ �����ڲ����ⲿ���Ҳ���ǿ�&am…...
用机器学习破解新能源领域的“弃风”难题
音乐发烧友深有体会,玩音乐的本质就是玩电网。火电声音偏暖,水电偏冷,风电偏空旷。至于太阳能发的电,则略显朦胧和单薄。 不知你是否有感觉,近两年家里的音响声音越来越冷,听起来越来越单薄? —…...
音视频——I2S 协议详解
I2S 协议详解 I2S (Inter-IC Sound) 协议是一种串行总线协议,专门用于在数字音频设备之间传输数字音频数据。它由飞利浦(Philips)公司开发,以其简单、高效和广泛的兼容性而闻名。 1. 信号线 I2S 协议通常使用三根或四根信号线&a…...
