设为首页 收藏本站
云服务器等爆品抢先购,低至4.2元/月
查看: 1975|回复: 0

[经验分享] Ubuntu的分步安装指南

[复制链接]

尚未签到

发表于 2019-4-19 08:24:07 | 显示全部楼层 |阅读模式
第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,你需要安装它
sudo apt-get install vim  

  •   VI或VIM命令

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


  •   在Ubuntu中,标准用户(您在安装期间创建的帐户)无权安装/写入许多目录。在下面的教程中,我们将在大多数命令之前使用术语“sudo”代表“超级用户做”。
第2步:安装Apache / MySQL / PHP
注意: Moodle 3.0.1 引入了对PHP 7.0的支持,我们将在本教程中使用PHP 7.0

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

添加php7 ppa:
sudo add-apt-repository ppa:ondrej / phpsudo apt-get updatesudo apt-get install apache2 mysql-client mysql-server php7.0 libapache2-mod-php7.0  
' 它会提示你设置mysql的root密码 - 拜托,亲爱的朋友们,请写下来,给自己一些悲伤,你需要在第6步。
注意: 即使大多数专家不推荐这样做,您也可以通过发出命令'sudo tasksel'并选择(使用空格键)安装'Ubuntu桌面'来安装图形用户界面(桌面)


第3步:安装附加软件
sudo apt-get install graphviz aspell ghostscript clamav php7.0-pspell php7.0-curl php7.0-gd php7.0-intl php7.0-mysql php7.0-xml php7.0-xmlrpc php7.0-ldap php7 .0-zip php7.0-soap php7.0-mbstring  
重新启动Apache,以便正确加载模块
sudo service apache2 restart  
我们将使用Git来安装/更新Moodle核心应用程序
sudo apt-get install git-core  
第4步:下载Moodle(http://www.t7yu.com)
设置本地存储库并下载Moodle,我们将使用/ opt进行此安装。

  •   Git就是所谓的“版本控制系统”。通过使用git,可以更轻松地更新moodle核心应用程序。在第5步中,我们将moodle核心应用程序代码放在/ opt目录中。
cd / opt  
下载Moodle代码和索引
sudo git clone git://git.moodle.org/moodle.git  
将目录更改为下载的Moodle文件夹
cd moodle检索每个可用分支的列表
sudo git branch -a  
告诉git要跟踪或使用哪个分支
sudo git branch --track MOODLE_33_STABLE origin / MOODLE_33_STABLE  
最后,查看指定的Moodle版本
sudo git checkout MOODLE_33_STABLE  
第5步:将本地存储库复制到/ var / www / html /
sudo cp -R / opt / moodle / var / www / html /sudo mkdir / var / moodledatasudo chown -R www-data / var / moodledatasudo chmod -R 777 / var / moodledatasudo chmod -R 0755 / 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.html http://www.t7yu.com

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


  •   如果您选择使用VIM,请将vi替换为vim
sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf  
向下滚动到[mysqld]部分,在“基本设置”下,在最后一个语句下添加以下行。如果你想添加,你必须按键盘上的“插入”按钮。这通常在“删除”按钮之上。这允许您添加一些文本。
default_storage_engine = innodbinnodb_file_per_table = 1innodb_file_format =梭子鱼  
为了使用编辑器保存my.cnf,按Esc(Escape)键,依次输入以下内容:w然后关闭编辑器:q
:W:q  
重新启动MySQL Server以使更改生效
sudo服务mysql重启  
现在我们需要使用正确的权限创建Moodle数据库和Moodle MySQL用户
使用您在步骤1中创建的密码
mysql -u root -p  
MySQL的>
CREATE DATABASE moodle DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;  
如果它显示“moodledude”和“passwordformoodledude”,您应该更改为您选择的用户名和密码。
  MySQL的>
创建用户'moodledude'@'localhost'识别'passwordformoodledude';  
MySQL的>
GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,CREATE TEMPORARY TABLES,DROP,INDEX,ALTER on moodle。* to moodledude @ localhost IDENTIFIED BY'passwordformoodledude';  
MySQL的>
放弃;  
注 - 如果您关心使用MySQL 5.6+并且当您发出create user并获得有关密码哈希的错误时,您需要调整密码以使用哈希值
您可以通过以下方式获得此信息
  MySQL的>
SELECT password('passwordformoodledude');这将打印密码的哈希值,如* AD51BAFB2GD003D3480BCED0DH81AB0BG1712535,您将要在IDENTIFIED BY'部分中使用它
第7步:完成安装

  •   注 - 如果您不方便使用终端创建需要在完成安装程序时创建的config.php文件,则应通过执行以下操作暂时使webroot可写:
sudo chmod -R 777 / var / www / html / moodle  
运行安装程序并进行moodle设置后,您需要恢复权限,以便使用以下命令不再可写。
sudo chmod -R 0755 / var / www / html / moodle  
打开浏览器并转到http://IP.ADDRESS.OF.SERVER/moodle
按照提示操作:
改变moodledata的路径
在/ var / moodledata
数据库类型
选择:mysqli
数据库设置
主机服务器:localhost
数据库:moodle
用户:moodledude(您在设置数据库时创建的用户)
密码:passwordformoodledude(您创建的用户的密码)
表前缀:mdl_
环境检查
这将指示是否尚未安装运行moodle所需的任何元素。
接下来的下一个......
按照提示并确认安装
创建站点管理员帐户
创建具有站点管理员权限的moodle用户帐户。
您选择的密码必须符合某些安全要求。
安装完成
恭喜!你现在可以开始使用Moodle了!
别忘了
如果您使webroot可写,请还原权限
sudo chmod -R 0755 / var / www / html / moodle  
安装后的系统路径
安装Moodle后你应该设置系统路径,这将提供更好的性能VS不设置它们。Moodle中的每个条目都有它的解释。
在moodle网页上导航到“站点管理”>“服务器”>“系统路径”
输入以下内容;
杜的路径:/ usr / bin / du
Apsell的路径:/ usr / bin / aspell
点的路径:/ usr / bin / dot
保存更改



  •   如果您还没有AntiVirus解决方案,则可选
我们还在步骤3中安装了ClamAV,因此我们需要在Moodle中设置路径
1创建隔离目录
sudo mkdir / var / quarantine  
改变所有权
sudo chown -R www-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并记住使用引言中的正确密钥序列。
sudo vi /etc/php5/apache2/conf.d/05-opcache.ini  
注意:在Ubuntu 16.04中,opcache.ini位于:
/etc/php/7.0/mods-available/opcache.ini  
重新启动Apache以使更改生效。
sudo service apache2 restart  
这就是Zend OpCache!
您还可以安装GUI以查看Zend OpCache的状态,不建议在生产服务器上使用。
cd / var / www / html / moodle /  
将PHP脚本下载到Moodle目录,您还应该将此文件添加到/opt/moodle/.git/info/exclude文件中,以便在升级安装时不会删除它。
sudo wget https://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站点配置并更改文档根目录
sudo vi /etc/apache2/sites-available/000-default.conf  
在DocumentRoot所在的行;

更改自:DocumentRoot / var / www / html

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

:W  
:q  
重新启动Apache以使更改生效。
sudo service apache2 restart  
重要的提示!
如果您已经安装了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选项。不要计划升级或测试升级。
git clone -b MOODLE_31_STABLE git://git.moodle.org/moodle.git moodle31  

  •   我在该服务器上的所有其他moodles都是通过git安装的
git clone git://git.moodle.org/moodle.git [nameofdir]  

  •   然后从nameofdir
git branch --track MOODLE_2#_STABLE origin / MOODLE_2#_STABLEgit checkout MOODLE_2#_STABLE  

  •   2#是版本号。


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


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


  •   545M ./moodle296-code-20160604145012.tar


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




运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-829105-1-1.html 上篇帖子: ubuntu查看crontab日志 下篇帖子: 如何在Ubuntu中重置MySQL Root密码
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表