sshfs マウント - ファイル/フォルダは uid/gid オプションを無視してルートとして作成されます

sshfs マウント - ファイル/フォルダは uid/gid オプションを無視してルートとして作成されます

地元: 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 -vroot としてログインしていることを示します。 を使用してリモート ディレクトリをマウントします。sshfs [email protected]:/var/www/a /home/gruz/debian

この-oフラグは、ローカル マシン上のリモート ファイルの uid/gid を変更します。sshfs他のユーザーにマウントポイントを所有させたい場合、そのユーザーとしてコマンドを実行できます。ユーザーでファイルを操作する場合は、その必要はありませんgruz

関連情報