频道栏目
首页 > 网络 > 其他 > 正文

Ubuntu的分步安装指南

2019-02-21 09:09:47           
收藏   我要投稿
第1步:安装Ubuntu 16.04 LTS

为什么我们更喜欢Ubuntu服务器而不是Ubuntu桌面

大多数IT专业人员更喜欢使用命令行界面(CLI)服务器,因为它更安全且不易受******。

业余用户可能会发现使用图形(桌面)界面更容易。

如果您只是将Moodle服务器用于本地实验目的,则可能更喜欢安装桌面(64位首选)版本的Ubuntu。

如果您安装仅CLI服务器并稍后后悔,则可以轻松添加图形桌面:

即使大多数专家都不推荐这样做,您也可以通过发出命令'sudo tasksel'并选择(使用空格键)安装'Ubuntu桌面'来安装图形用户界面(桌面)。

为什么我们更喜欢(或不喜欢)Ubuntu 18.04胜过Ubuntu 16.04胜过Ubuntu 14.04

所有三个包都是LTS(长期服务)版本。

Ubuntu Server 18.04和16.04LTS与14.04LTS有一些差异,主要是PHP 7.0。

Moodle 3.01以后可以使用PHP 7.0

本文档已更新,以反映这些更改。

但请注意,如果您使用的是外部身份验证或注册插件,请注意,在Moodle 3.0.1发布时(2015年12月),php7下既没有MSSQL也没有SQLSRV。因此,任何使用SQL * Server作为主数据库或远程身份验证/注册插件的人都不应该转移到PHP 7!此外,根据您的配置,可能会丢失某些扩展(可以安装memcached,redis,mongodb,xmlrpc ......)或正在进行分发,三重检查您的操作系统的确切可用性。

程序

服务器版amd64首选http://www.ubuntu.com/download

http://www.t7yu.com

Ubuntu Server 18.04LTS amd64具有所有必需的包。

Ubuntu Server 18.04LTS与14.04LTS有一些细微差别,主要是PHP 7.0。本文档已更新,以反映这些更改。

Ubuntu有一个众所周知的问题,它的自动更新填满了/ boot目录,直到自动更新开始失败并且无法从/ boot自动删除旧的内核文件。因此,您应该考虑使用大约5Gb的/ boot目录安装Ubuntu并进行一些自动清理。更多信息可以在这里找到 -[1]

你可以使用VI(轻量级编辑器)或VIM(重量级编辑器),但是,如果你想使用VIM,你需要安装它

sudoapt-getinstallvim

VI或VIM命令

要编辑文件,请按“插入”键要完成编辑,请按“Esc”键要编写文件,请按“:w”要退出编辑器,请按“:q”您还可以编写并退出“:wq”

在Ubuntu中,标准用户(您在安装期间创建的帐户)无权安装/写入许多目录。在下面的教程中,我们将在大多数命令之前使用术语“sudo”代表“超级用户做”。

第2步:安装Apache / MySQL / PHP

注意:Moodle 3.0.1引入了对PHP 7.0的支持,我们将在本教程中使用PHP 7.0

打开终端并安装以下内容;

添加php7 ppa:

sudoadd-apt-repositoryppa:ondrej/php

sudoapt-getupdate

sudoapt-getinstallapache2mysql-clientmysql-serverphp7.0libapache2-mod-php7.0

'它会提示你设置mysql的root密码 - 拜托,亲爱的朋友们,请写下来,给自己一些悲伤,你需要在第6步。

注意:即使大多数专家不推荐这样做,您也可以通过发出命令'sudo tasksel'并选择(使用空格键)安装'Ubuntu桌面'来安装图形用户界面(桌面)

第3步:安装附加软件

sudoapt-getinstallgraphvizaspellghostscriptclamavphp7.0-pspellphp7.0-curlphp7.0-gdphp7.0-intlphp7.0-mysqlphp7.0-xmlphp7.0-xmlrpcphp7.0-ldapphp7.0-zipphp7.0-soapphp7.0-mbstring

重新启动Apache,以便正确加载模块

sudoserviceapache2restart

我们将使用Git来安装/更新Moodle核心应用程序

sudoapt-getinstallgit-core

第4步:下载Moodle(http://www.t7yu.com)

设置本地存储库并下载Moodle,我们将使用/ opt进行此安装。

Git就是所谓的“版本控制系统”。通过使用git,可以更轻松地更新moodle核心应用程序。在第5步中,我们将moodle核心应用程序代码放在/ opt目录中。

cd/opt

下载Moodle代码和索引

sudogitclonegit://git.moodle.org/moodle.git

将目录更改为下载的Moodle文件夹

cdmoodle

检索每个可用分支的列表

sudogitbranch-a

告诉git要跟踪或使用哪个分支

sudogitbranch--trackMOODLE_33_STABLEorigin/MOODLE_33_STABLE

最后,查看指定的Moodle版本

sudogitcheckoutMOODLE_33_STABLE

第5步:将本地存储库复制到/ var / www / html /

sudocp-R/opt/moodle/var/www/html/

sudomkdir/var/moodledata

sudochown-Rwww-data/var/moodledata

sudochmod-R777/var/moodledata

sudochmod-R0755/var/www/html/moodle

说明:

由于我们在上一步中设置了本地存储库,因此您将在任何更新和更改后将其复制到您的webroot。将您的本地存储库放在webroot之外,就像我们在/ opt中一样,您将能够以更有效的方式准备和升级您的升级。例如,您想要进行一些更改或添加一些插件,您可以下载插件并将其复制到本地moodle存储库。添加插件以及可能进行的任何其他更改后,您需要编辑位于/opt/moodle/.git/info/exclude中的文件。在那个文件中你想告诉git当您运行下一个“sudo git pull”时,当它下拉更新时要排除的文件/文件夹。一个示例条目是位于/ opt / moodle / mod / certificate中的证书mod,因此在排除文件中您要在最后一条注释下面添加“/ mod / certificate”。您可以为每个可能已更改的插件或文件添加其他条目,每行1个。如果我要更改favicon.ico文件,您只需将“favicon.ico”添加到排除文件即可。现在,当您运行“sudo git pull”将moodle更新到最新版本时,它将忽略这些文件和目录,只更新核心moodle代码。在复制到您的webroot进行升级之前,您需要确保并下载并复制您可能已添加的最新版本的插件。

第6步:设置MySQL服务器

首先,我们需要将默认存储引擎更改为innodb并将默认文件格式更改为Barracuda,这是与以前版本相比的新设置。您还需要设置innodb_file_per_table以使Barracuda正常工作。参考:https://dev.mysql.com/doc/refman/5.6/en/innodb-compression-usage.htmlhttp://www.t7yu.com

你不应该让innodb成为默认的存储引擎,最新版本的Moodle会在安装过程中自动选择它。无论如何,将它设为默认始终是个好主意。但是,您需要设置默认文件格式!

如果您选择使用VIM,请将vi替换为vim

sudovi/etc/mysql/mysql.conf.d/mysqld.cnf

向下滚动到[mysqld]部分,在“基本设置”下,在最后一个语句下添加以下行。如果你想添加,你必须按键盘上的“插入”按钮。这通常在“删除”按钮之上。这允许您添加一些文本。

default_storage_engine=innodb

innodb_file_per_table=1

innodb_file_format=梭子鱼

为了使用编辑器保存my.cnf,按Esc(Escape)键,依次输入以下内容:w然后关闭编辑器:q

:W

:q

重新启动MySQL Server以使更改生效

sudo服务mysql重启

现在我们需要使用正确的权限创建Moodle数据库和Moodle MySQL用户

使用您在步骤1中创建的密码

mysql-uroot-p

MySQL的>

CREATEDATABASEmoodleDEFAULTCHARACTERSETutf8COLLATEutf8_unicode_ci;

如果它显示“moodledude”和“passwordformoodledude”,您应该更改为您选择的用户名和密码。

MySQL的>

创建用户'moodledude'@'localhost'识别'passwordformoodledude';

MySQL的>

GRANTSELECT,INSERT,UPDATE,DELETE,CREATE,CREATETEMPORARYTABLES,DROP,INDEX,ALTERonmoodle。*tomoodledude@localhostIDENTIFIEDBY'passwordformoodledude';

MySQL的>

放弃;

注 - 如果您关心使用MySQL 5.6+并且当您发出create user并获得有关密码哈希的错误时,您需要调整密码以使用哈希值

您可以通过以下方式获得此信息

MySQL的>

SELECTpassword('passwordformoodledude');

这将打印密码的哈希值,如* AD51BAFB2GD003D3480BCED0DH81AB0BG1712535,您将要在IDENTIFIED BY'部分中使用它

第7步:完成安装

注 - 如果您不方便使用终端创建需要在完成安装程序时创建的config.php文件,则应通过执行以下操作暂时使webroot可写:

sudochmod-R777/var/www/html/moodle

运行安装程序并进行moodle设置后,您需要恢复权限,以便使用以下命令不再可写。

sudochmod-R0755/var/www/html/moodle

打开浏览器并转到http://IP.ADDRESS.OF.SERVER/moodle

按照提示操作:

改变moodledata的路径

在/ var / moodledata

数据库类型

选择:mysqli

数据库设置

主机服务器:localhost

数据库:moodle

用户:moodledude(您在设置数据库时创建的用户)

密码:passwordformoodledude(您创建的用户的密码)

表前缀:mdl_

环境检查

这将指示是否尚未安装运行moodle所需的任何元素。

接下来的下一个......

按照提示并确认安装

创建站点管理员帐户

创建具有站点管理员权限的moodle用户帐户。

您选择的密码必须符合某些安全要求。

安装完成

恭喜!你现在可以开始使用Moodle了!

别忘了

如果您使webroot可写,请还原权限

sudochmod-R0755/var/www/html/moodle

安装后的系统路径

安装Moodle后你应该设置系统路径,这将提供更好的性能VS不设置它们。Moodle中的每个条目都有它的解释。

在moodle网页上导航到“站点管理”>“服务器”>“系统路径”

输入以下内容;

杜的路径:/ usr / bin / du

Apsell的路径:/ usr / bin / aspell

点的路径:/ usr / bin / dot

保存更改

如果您还没有AntiVirus解决方案,则可选

我们还在步骤3中安装了ClamAV,因此我们需要在Moodle中设置路径

1创建隔离目录

sudomkdir/var/quarantine

改变所有权

sudochown-Rwww-data/var/quarantine

导航到“站点管理”>“插件”>“防病毒插件”>“管理防病毒插件”

启用ClamAV防病毒软件

单击“设置”

设置正确的设置

保存更改

在之前的Moodle分支中:选中“在上传的文件上使用ClamAV”ClamAV路径:/ usr / bin / clamscan隔离目录:/ var / quarantine

保存更改

建议:启用Zend OpCache / Change Document Root

由于我们已经安装了Ubuntu Server 14.04LTS,我们可以使用内置的PHP OPcache,https://docs.moodle.org/26/en/OPcache

在上面的链接中,https://docs.moodle.org/26/en/OPcache将建议的设置添加到您的05-opcache.ini文件中。再次,用vim替换vi并记住使用引言中的正确密钥序列。

sudovi/etc/php5/apache2/conf.d/05-opcache.ini

注意:在Ubuntu 16.04中,opcache.ini位于:

/etc/php/7.0/mods-available/opcache.ini

重新启动Apache以使更改生效。

sudoserviceapache2restart

这就是Zend OpCache!

您还可以安装GUI以查看Zend OpCache的状态,不建议在生产服务器上使用。

cd/var/www/html/moodle/

将PHP脚本下载到Moodle目录,您还应该将此文件添加到/opt/moodle/.git/info/exclude文件中,以便在升级安装时不会删除它。

sudowgethttps://github.com/rlerdorf/opcache-status/blob/master/opcache.php

访问http://ip.address.of.server/moodle/opcache.php

访问http://www.t7yu.com

如果您不希望最终用户键入http:// yourserver / moodle并且只是希望它们导航到http:// youserver,则需要编辑Apache的站点配置,这将告诉Apache使用/ var / www / html / moodle作为根目录而不是/ var / www / html

打开Apache站点配置并更改文档根目录

sudovi/etc/apache2/sites-available/000-default.conf

在DocumentRoot所在的行;

更改自:DocumentRoot / var / www / html更改为:DocumentRoot / var / www / html / moodle

:W

:q

重新启动Apache以使更改生效。

sudoserviceapache2restart

重要的提示!

如果您已经安装了Moodle,那么您应该进行以下更改。

编辑moodle的config.php

在安装说明中,“webroot”的建议设置之一是“localhost”。如果你想要做的就是对你的新Moodle安装进行一些本地测试,这很好。但是,如果要从同一局域网中的其他计算机查看新安装,或者在Internet上查看您的站点,则必须更改此设置:

对于本地测试,'localhost'适用于webroot($ CFG-> wwwroot in config.php)。如果要从同一局域网(LAN)上的其他计算机测试您的站点,则必须使用服务计算机的私有IP地址(例如192.168.1.2/moodle)或服务的网络名称计算机(例如network_name_of_serving_machine / moodle)作为Web根目录。根据您的LAN设置,最好使用计算机的网络名称而不是其(私有)IP地址,因为IP地址可以并且将不时更改。如果您不想使用网络名称,则必须与网络管理员联系并让他们为服务机器分配永久IP地址。最后,如果您想通过互联网测试新安装,您必须使用域名或永久(公共)IP地址/ moodle作为您的Web根目录。要处理这两种类型的访问,请参阅伪装。

编辑Moodle的config.php

cd / var / www / html / moodle sudo vim config.php

点击键盘上的“插入”按钮,然后进行需要进行的更改。然后按“escape”并键入以下内容以退出并保存更改(不包括引号):“:wq”

在$CFG-> wwwroot下更改为http://ip.address.of.server而不是http://ip.address.of.server/moodle

在一个Ubuntu服务器中托管几个Moodle分支

这对语言包维护者来说非常有用,可以在几个Moodle分支中测试翻译。

对于开发人员来说,在不同的Moodle分支中测试他们的插件也非常有用。

只需为Web文件夹中的每个实例创建一个文件夹,这就足够了。

要访问这些站点,您只需将该文件夹添加到localhost URL:http:// localhost / moodle31

您可以为1.9到3.1之间的每个版本创建一个实例

您确实需要为每个实例和单独的数据库创建单独的数据文件夹(您可以使用phpmyadmin设置数据库,但这不是必需的),将每个实例添加到其自己的文件夹中,并继续执行上述操作。您还可以在其单独的文件夹中托管其他服务(例如,Mahara)。

例1

因此,一台Linux笔记本电脑上的一个示例文件夹树(实际服务器会更多)可能看起来像:

VAR

- 万维网

----maharadata

----moodlecleandata

----moodlestabledata

----moodlemasterdata

----moodletestingdata

----uswmoodledata

----HTML

------马哈拉

------moodleclean

------moodlestable

------moodlemaster

------moodletesting

------uswmoodle

例2

在单个(CentOS X)服务器上有几个沙盒Moodles所有不同的版本..只有那些支持安全修复及以上的 - 2.7,2.8,2.9,3.0,现在是3.1。几乎是'股票'的Moodles,只有偶尔的插件等,用于测试。

它们都有各自的代码和数据目录以及它们各自的DB。

提示:使用git安装和维护它们...即使你不喜欢/喜欢命令行,这是迄今为止更新和/或升级站点的最有效方法。

/var/www/html/moodle27/version.php:$release='2.7.14(Build:20160509)'/var/www/html/moodle28/version.php:$release='2.8.12(Build:20160509)'/var/www/html/moodle29/version.php:$release='2.9.6+(Build:20160520)'/var/www/html/moodle30/version.php:$release='3.0.4+(Build:20160603)'/var/www/html/moodle31/version.php:$release='3.1+(Build:20160603)'

git -b命令将站点锁定到随git命令的其余部分提供的版本中...例如,安装3.1,这是一个长期支持版本,安装了git -b选项。不要计划升级或测试升级。

gitclone-bMOODLE_31_STABLEgit://git.moodle.org/moodle.gitmoodle31

我在该服务器上的所有其他moodles都是通过git安装的

gitclonegit://git.moodle.org/moodle.git[nameofdir]

然后从nameofdir

gitbranch--trackMOODLE_2#_STABLEorigin/MOODLE_2#_STABLEgitcheckoutMOODLE_2#_STABLE

2#是版本号。

这样就可以让那个moodle向上游......更高的分支。因此,可以测试升级(而不是'更新')。

第二种方法'gits'更多的代码和备份将在5+ Meg范围内,因为所有旧版本的git东西3.1更少(限于3.1分支):

545M ./moodle296-code-20160604145012.tar

193M ./moodle31+-code-2016060883737.tar

相关TAG标签 Ubuntu
上一篇:保密工作与linux系统的发展
下一篇:shell 脚本获取MySQL数据库中所有表记录总数
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站