[手順] 仮想ホストディレクトリのデフォルトパーミッションを復元するには

Created:

2016-11-16 12:45:41 UTC

Modified:

2017-08-16 16:22:57 UTC

14

Was this article helpful?


Have more questions?

リクエストを送信

[手順] 仮想ホストディレクトリのデフォルトパーミッションを復元するには

Applicable to:

  • Plesk for Linux/Unix

症状

ドメイン仮想ホストディレクトリの下の一部のファイルとディレクトリのパーミッションが失われました。その一部は、所有者がユーザ apache または root です。

ファイルマネージャまたは FTP クライアント経由でファイルのアップロードを試みると、" Permission denied " または " Access denied " というエラーが表示されます。バックアップタスクが失敗し、ログが表示されます。

/bin/tar: httpdocs/path/to/a/file: Cannot open: Permission denied

仮想ホストのデフォルトパーミッションを復元するには、どうすればよいですか?

解決策

Parallels Plesk 9.5 の場合

# /usr/local/psa/admin/sbin/vhostmng --install-vhost --vhost-name=domain.tld --user-name=ftp_user_name --set-content-permissions

Parallels Plesk 10.0~10.3 の場合

# /usr/local/psa/admin/sbin/vhostmng --install-vhost --vhost-name=domain.tld --user-name=ftp_user_name --www-root=/var/www/vhosts/domain.tld/httpdocs --cgi-bin-path=/var/www/vhosts/domain.tld/cgi-bin --set-content-permissions

ここで、 domain.tld はパーミッションを復元するドメインで、 ftp_user_name はドメインの FTP ユーザです。ユーザを取得するには、次のクエリを使用します。

# mysql -uadmin -p`cat /etc/psa/.psa.shadow` psa -e"select d.name as domain, su.login as user_name from domains d, sys_users su, hosting h where d.id=h.dom_id and h.sys_user_id=su.id and 
d.name='domain.tld'"
+--------------+---------------+
| domain       | user_name     |
+--------------+---------------+
|  domain.tld  | ftp_user_name |
+--------------+---------------+
#

Parallels Plesk 10.4 の場合

スーパーユーザの権限で次のコマンドを実行し、 アーカイブされたシェルスクリプト をダウンロードします。これを展開して実行します。引数には、必要なドメイン名を指定します。

# wget http://kb.sp.parallels.com/Attachments/kcs-20264/recover_plesk_directories-10.4.zip
# unzip recover_plesk_directories-10.4.zip
# sh recover_plesk_directories-10.4 domain.tld

Parallels Plesk 11.0 の場合

スーパーユーザの権限で次のコマンドを実行し、 アーカイブされたシェルスクリプト をダウンロードします。これを展開して実行します。引数には、必要なドメイン名を指定します。

# wget http://kb.sp.parallels.com/Attachments/kcs-20264/recover_plesk_directories.zip
# unzip recover_plesk_directories.zip
# sh recover_plesk_directories.sh domain.tld

Parallels Plesk 11.5、12 の場合

  1. 最新のマイクロアップデートがインストールされていることを確認してください。

  2. 以下のコマンドをスーパーユーザ権限で実行します。

    /usr/local/psa/bin/repair --restore-vhosts-permissions

追加情報

仮想ホスト構造についての説明は、「 Virtual Host Structure 」ページを参照してください。

Parallels Plesk 11.5 ドメインのデフォルトパーミッションは次の通りです。

# ls -la /var/www/vhosts/example.com
total 32
drwx--x---   5 examplesysuser psaserv  4096 Jun  7 01:27 .
drwxr-xr-x 220 root           root    16384 Jun  7 01:27 ..
drwxr-xr-x   2 examplesysuser psacln   4096 Jun  7 01:27 error_docs
drwxr-x---   6 examplesysuser psaserv  4096 Jun  7 01:27 httpdocs
drwx------   2 examplesysuser root     4096 Jun  7 01:27 logs
# ls -la /var/www/vhosts/system/example.com
total 40
drwx--x--x   7 root   psaserv  4096 Jun  7 01:27 .
drwxr-xr-x 219 root   root    16384 Jun  7 01:27 ..
drwxr-x---   2 root   psaserv  4096 Jun  7 01:27 conf
drwxr-xr-x   2 root   root     4096 Jun  7 01:27 etc
drwx------   2 psaadm root     4096 Jun  7 01:27 logs
drwx--x---   2 root   psaserv  4096 Jun  7 01:27 pd
dr-xr-x---   6 root   psaserv  4096 Jun  7 01:27 statistics

Attachments:

他にご質問がございましたら、リクエストを送信してください
ログインしてコメントを残してください。