DuplicatorでWordPressサイトをコピー(エラー編)

DuplicatorでWordPressサイトをコピー(エラー編)

DuplicatorでWordPressサイトをコピー(エラー編)

昨年Duplicatorで外部レンタルサーバーに当サイトをコピーした時には何の問題もなくスムーズに完了しましたが、今回自宅のバックアップサーバー(CentOS7)にコピーする際にエラーになりました。
Duplicatorで作成したインストールファイルをバックアップサーバーにコピーするまでは順調で、過去記事”DuplicatorでWordPressサイトをコピー”のとおりです。

バックアップサーバーにコピーしたinstaller.phpにアクセスすると、Root Directry Failになり、PHPによる書き込みが出来ないエラーらしいので、httpdのlogを確認しました。
tail -f /var/log/httpd/error_log
PHP Warning: Unknown: failed to open stream: Permission denied in Unknown on line 0
PHP Fatal error: Unknown: Failed opening required ‘/var/www/cat-one/installer.php’ (include_path=’.:/usr/share/pear:/usr/share/php’) in Unknown on line 0

アクセス制限のエラーはSELinuxの厳しさによるものが多いので、SELinuxトラブルシューターで確認すると次の通り、しっかり制限されていました。


SELinux is preventing /usr/sbin/httpd from read access on the file /var/www/cat-one/installer.php.

***** Plugin catchall_boolean (89.3 confidence) suggests ******************

If httpd がユーザーのコンテンツを読み取ることを許可します。 がしたい
Then ‘httpd_read_user_content’ boolean を有効にすることにより、 これを SELinux に伝える必要があります。
詳細情報については、’None’ man ページをご覧下さい。
Do
setsebool -P httpd_read_user_content 1

***** Plugin catchall (11.6 confidence) suggests **************************

If httpd に、 installer.php file の read アクセスがデフォルトで許可されるべきです。
Then バグとして報告してください。
ローカルのポリシーモジュールを生成すると、
このアクセスを許可することができます。
Do
このアクセスを一時的に許可するには、以下を実行してください。
# grep httpd /var/log/audit/audit.log | audit2allow -M mypol
# semodule -i mypol.pp

Additional Information:
(以下略)


では、ということでSELinux管理ツールでhttpd_read_user_contentを許可してみます。
SELinux-05-28-08r
パッケージは見つかったようですが、まだルートディレクトリのアクセスがFailedになっています。
Dup-err-05-36-54r

SELinuxトラブルシューターで確認するとまだ他にもひっかかっていました。
移行作業中は、SELinuxを一時的に解除した方がよさそうなのでSELinux管理ツールで強制モード”容認”にしておきます。

SELinuxによるアクセス制限を止めることによりエラーは出なくなりました。
Dup-ok-05-47-17r

ここからは以下のように順調に進みました。

Dup-installer-step1-21-26-28r

installer-step1-1

Dup-installer-step1-21-31-16r

installer-step1-2

Dup-installer-step2-21-34-29r

installer-step2-1

Dup-installer-step2-21-35-42r

installer-step2-2

Dup-installer-step3-21-37-14r

installer-step3-1

Dup-installer-step3-21-38-23r

installer-step3-2

Dup-installer-step3-21-39-53r

installer-step3-3

最後にインストールに使ったファイルを削除して終了です。

Dup-installer-step3-21-44-35r

installer-step3-4