web-dev-qa-db-ja.com

内部からchrootの外部のディレクトリにアクセスするにはどうすればよいですか?

彼女のホームディレクトリにchrootされているユーザーがいますが、/var/www内のファイルも管理できるようにしたいと考えています。そのため、私は次のことを行いました。

root@server:/home/username# ln -s /var/www www
root@server:/home/username# cd www
root@server:/home/username/www# chown username:username *

しかし、FileZillaで/wwwを開こうとすると、「そのようなファイルまたはディレクトリはありません」と返されます。リンクされたディレクトリは表示されますが、アクセスできません。何が悪いのですか?

35
Doc

シンボリックリンクは、本質的には別のファイルへのポインタにすぎません。name/var/www、これはchroot内には存在しません)。一方、ハードリンクはiノードへのポインタです。そのため、それを行う場合は、-sを省略してハードリンクを使用する必要があります。ただし、Linuxではディレクトリ(...以外)をハードリンクすることはできません(主な理由は、これらのファイルシステムが [〜#〜] dagであることです)。 [〜#〜] )。

おそらく最良の方法は、バインドマウントを使用することです。これを試して:

mount --bind /var/www /home/username/www
56
Chris Down