如何解决在 2 个位置之间重复 mediawiki
我已经设置了一个在 Ubuntu Mate 上运行的私有 wiki (1.35.1),它是 VMWare Workstation 16 上的来宾操作系统。我想在 2 个隔离的位置(A 和 B)运行这个 wiki(没有 VPN联系)。我将是唯一访问的用户,因为它是我的私人 wiki。
我已经在位置 A 设置并运行了 wiki,我将简单地存档来宾并将其作为相同副本在位置 B 中提供。
问题:在位置 A 度过一天后(在那里编辑我的 wiki),我是否可以简单地复制整个 /var/www/html/Mediawiki
文件夹和整个 /var/lib/mysql
文件夹( MariaDB) 到 U 盘并转储到位置 B?
目的是让这些维基是相同的 - 由我(sneakernet)用拇指驱动器同步。
更新 - 到目前为止运行良好。下面是我的做法。
- 停止 mysql 服务器 -
sudo service mysql stop
- 将所有新的或更改的文件从
/var/lib/mysql/
复制(使用 rsync)到我的外部共享:sudo rsync -cavurt --delete --info=del,name,stats2 "/var/lib/mysql/" "/home/rp/shares/VM_share_ubuntu/wiki_sql_files"
- 将所有新的或更改的文件从
/var/www/html/mediawiki-1.35.1
复制到我的外部共享:sudo rsync -cavurt --delete --info=del,stats2 "/var/www/html/mediawiki-1.35.1/" "/home/rp/shares/VM_share_ubuntu/wiki_mediawiki_files"
- 启动mysql服务器 -
sudo service mysql start
现在,将新的/更改的文件复制到第二台机器:
- 停止 mysql 服务器 -
sudo service mysql stop
- 使用以下命令复制(使用 rsync)所有新的或更改的 mysql 文件:
sudo rsync -cavurt --delete --info=del,stats2 "/home/rp/shares/VM_share_ubuntu/wiki_sql_files/" "/var/lib/mysql"
- 使用以下命令复制所有新的或更改的 mediawiki 文件:
sudo rsync -cavurt --delete --info=del,stats2 "/home/rp/shares/VM_share_ubuntu/wiki_mediawiki_files/" "/var/www/html/mediawiki-1.35.1"
- 启动mysql服务器 -
sudo service mysql start
在这些 rsync 命令中,请注意 source 文件夹的结尾必须是 /
而 target 文件夹没有结尾 {{1} }. this thread 中解释了其重要性。
更新 2:如果您在一台机器上修改 /
文件,您需要确保在另一台机器上进行相同的更新。例如如果您从默认的 2M 或其他影响 /etc/php/7.4/apache2/php.ini
的更改change the file upload size。
解决方法
只要您动态设置 $wgServer,这通常会起作用。使用绝对 URL 并从缓存加载的页面会链接到错误的 URL,但这应该非常罕见 - 几乎所有内容都使用相对 URL。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。