
地元: OpenSUSE、マウントポイント/home/gruz/debian
リモート: Debian (VirtualBox) 192.168.0.100
、マウントポイント/var/www/a
192.168.0.100:/var/www/a
ローカル マシンにフォルダーをマウントしたいので、ローカル マシンのマウントされたフォルダーにファイル/フォルダーを作成するとwww-data:www-data
、サーバー (Debian では 33:33) で作成されます。ただし、所有者 (0:0) で作成されますroot:root
。
ローカルの OpenSUSE で、正しい所有者であることを確認します。
sudo chown 33:33 /home/gruz/debian
次に、次のようにマウントします。
sudo sshfs -o uid=33,gid=33,allow_other [email protected]:/var/www/a /home/gruz/debian
mkdir
マウント時にフォルダーを作成すると、33:33 で作成されます。
gruz@linux-k9eu:~/debian> ls -lan
total 16
drwxr-xr-x 1 33 33 4096 Apr 28 16:13 .
drwxr-xr-x 41 1000 100 4096 Apr 28 16:08 ..
drwxr-xr-x 1 33 33 4096 Apr 28 16:10 aa
drwxr-xr-x 1 33 33 4096 Apr 28 16:13 bb
しかし、サーバーでは 0:0 と表示されます。
root@debian:/var/www/a# ls -lan
total 16
drwxr-xr-x 4 33 33 4096 Apr 28 09:13 .
drwxr-xr-x 6 0 0 4096 Apr 28 09:09 ..
drwxr-xr-x 2 0 0 4096 Apr 28 09:10 aa
drwxr-xr-x 2 0 0 4096 Apr 28 09:13 bb
mount -v
そして、ローカルマシンで実行すると奇妙なことに、
[email protected]:/var/www/a on /home/gruz/debian type fuse.sshfs (rw,nosuid,nodev,relatime,user_id=0,group_id=0,allow_other)
sshfsは無視しているようですuid=33,gid=33,
アドバイスをお願いします。
答え1
リモート マシンでは、ログインに使用するユーザーでファイルが作成されます。 の出力は、mount -v
root としてログインしていることを示します。 を使用してリモート ディレクトリをマウントします。sshfs [email protected]:/var/www/a /home/gruz/debian
この-o
フラグは、ローカル マシン上のリモート ファイルの uid/gid を変更します。sshfs
他のユーザーにマウントポイントを所有させたい場合、そのユーザーとしてコマンドを実行できます。ユーザーでファイルを操作する場合は、その必要はありませんgruz
。