我正在将 Apache 安装复制到不同数据中心的新服务器。
我在新服务器上安装了相同版本的 Apache,并想从旧服务器复制所有相关文件。
以下是否包含所有相关的 Apache 文件,或者我是否遗漏了一些文件/目录?
#!/bin/bash
HOSTNAME=$( hostname )
ARCHIVE="/tmp/httpd_on_${HOSTNAME}.tar"
rm $ARCHIVE
tar cf $ARCHIVE --exclude="ssl*log*" /run/httpd /sys/fs/cgroup/devices/system.slice/httpd.service /sys/fs/cgroup/systemd/system.slice/httpd.service /etc/logrotate.d/httpd /etc/systemd/system/multi-user.target.wants/httpd.service /etc/systemd/system/httpd.service.d /etc/sysconfig/httpd /etc/httpd /etc/httpd/conf/httpd.conf /var/tmp/systemd-private-*-httpd.service-* /var/log/httpd /var/cache/httpd /var/www
注意:Apache 版本是 2.4.6(在 CentOS 7.6 上)
答案1
首先!阅读有关 Apache 配置的信息。有很多文档可以帮到你。甚至还有示例可以帮助你理解你的设置
您还需要修改目标位置的配置文件,因为您的新服务器 IP 将会不一样(1 个示例)。
删除此内容:/run/https/ /sys/fs/cgroup/devices/system.slice/httpd.service /sys/fs/cgroup/systemd/system.slice/httpd.service /etc/systemd/system/multi-user.target.wants/httpd.service /etc/systemd/system/httpd.service.d /etc/sysconfig/httpd /var/tmp/systemd-private--httpd.服务-/var/log/httpd的 /var/缓存/httpd的 /var/www
保留此内容:/var/www <<--- 这是网站数据(大多数情况下,除非您只是代理)
/etc/httpd(所有内容及下方内容,因为这是您的 Apache 配置)
可以保留这个:/etc/logrotate.d/httpd(如果存在修改,否则,目的地将已经有了)
/var/log/httpd(如果您想保留以前的 Apache 日志)
另外...永远不要执行“rm $variable”,更具体地说是“rm -rf”,如果变量最终为空,这将执行“rm -rf /”......那是你的整个机器!
抱歉,大家!!