mount -t cifs は root としてのみマウントされ、uid と gid をサポートしなくなりました。

mount -t cifs は root としてのみマウントされ、uid と gid をサポートしなくなりました。

有効なユーザーのuidとgidを使用しても、リモートcifs共有はrootとしてのみマウントできます。

これした長年の作業の後でも、fstabは同じままです。私は継続的にパッチを適用しているので(openSUSE Leap 15.3)、何か問題があるか、もう使用されていないかどうか疑問に思います。明確な答えがなければ、この問題を最もよく解決する方法は何ですか?

# whoami
root

# uname -a
Linux my_user7 5.3.18-59.40-preempt #1 SMP PREEMPT Mon Jan 3 18:43:20 UTC 2022 (34edd9c) x86_64 x86_64 x86_64 GNU/Linux

# ls -lah /external/
total 0
drwxr-xr-x 1 root   root   76 Apr 13  2021 .
drwxr-xr-x 1 root   root  422 Sep  4 14:26 ..
drwxr-xr-x 1 my_user users   0 Jul 28  2018 Data1
drwxr-xr-x 1 my_user users   0 Nov 26  2019 Data2
drwxr-xr-x 1 my_user users   0 Jul 27  2018 Data3
drwxr-xr-x 1 my_user users   0 Jul 27  2018 Data4
drwxr-xr-x 1 my_user users   0 Jul 27  2018 Data5
drwxr-xr-x 1 my_user users   0 Apr 13  2021 Data6

# mount -v -t cifs -o username=my_user,password=my_pass,vers=1.0,uid=my_user,gid=users //192.168.1.1/Data5 /external/Data5
mount.cifs kernel mount options: ip=192.168.1.1,unc=\\192.168.1.1\Data5,vers=1.0,uid=1000,gid=100,user=my_user,pass=********

# ls -lah /external/
total 0
drwxr-xr-x 1 root   root   76 Apr 13  2021 .
drwxr-xr-x 1 root   root  422 Sep  4 14:26 ..
drwxr-xr-x 1 my_user users   0 Jul 28  2018 Data1
drwxr-xr-x 1 my_user users   0 Nov 26  2019 Data2
drwxr-xr-x 1 my_user users   0 Jul 27  2018 Data3
drwxr-xr-x 1 my_user users   0 Jul 27  2018 Data4
drwxrwxrwx 1 root   root     0 Jul 27 14:14 Data5
drwxr-xr-x 1 my_user users   0 Apr 13  2021 Data6

# id my_user
uid=1000(my_user) gid=100(users) groups=491(cdrom),463(vboxusers),100(users)

私は何を見逃していますか?

よろしくお願いします。

編集:追加情報...

mount cifs は root としてのみ実行できます。

# whoami
my_user

# mount -v -t cifs -o username=my_user,password=my_pass,vers=1.0,uid=my_user,gid=users //192.168.1.1/Data5 /external/Data5
This program is not installed setuid root -  "user" CIFS mounts not supported.

sudoはうまくいきます。

# sudo mount -v -t cifs -o username=my_user,password=my_pass,vers=1.0,uid=my_user,gid=users //192.168.1.1/Data5 /external/Data5
mount.cifs kernel mount options: ip=192.168.1.1,unc=\\192.168.1.1\Data5,vers=1.0,uid=1000,gid=100,user=my_user,pass=********

しかし、最終結果は同じです。ルートとしてマウントします。

# ls -lah /external/
total 0
drwxr-xr-x 1 root   root   76 Apr 13  2021 .
drwxr-xr-x 1 root   root  422 Sep  4 14:26 ..
drwxr-xr-x 1 my_user users   0 Jul 28  2018 Data1
drwxr-xr-x 1 my_user users   0 Nov 26  2019 Data2
drwxr-xr-x 1 my_user users   0 Jul 27  2018 Data3
drwxr-xr-x 1 my_user users   0 Jul 27  2018 Data4
drwxrwxrwx 1 root   root     0 Jul 27 14:14 Data5
drwxr-xr-x 1 my_user users   0 Apr 13  2021 Data6

私のfstabは次のようになります

# cat /etc/fstab | grep Data5
//192.168.1.1/Data5                       /external/Data5            cifs   user,nofail,x-systemd.device-timeout=10,x-systemd.automount,x-systemd.idle-timeout=60,uid=my_user,gid=users,username=my_user,password=my_pass,vers=1.0 0  0

どちらが正常に実行されますか?

# sudo mount -a

しかし、まだrootとしてインストールされています

# ls -lah /external/
total 16K
drwxr-xr-x 1 root   root    76 Apr 13  2021 .
drwxr-xr-x 1 root   root   422 Sep  4 14:26 ..
drwxr-xr-x 1 my_user users  12K Nov  4 14:14 Data1
drwxr-xr-x 8 my_user users  170 May  6  2021 Data2
drwxr-xr-x 2 my_user users 4.0K Oct  4 10:04 Data3
drwxr-xr-x 5 my_user users  110 Nov 19 12:02 Data4
drwxrwxrwx 1 root   root      0 Jul 27 14:14 Data5
drwxr-xr-x 1 my_user users    0 Apr 13  2021 Data6

まだ混乱しています!

編集2 ...

部分的な解決策。

forceuidとforcegid固定所有権を追加しましたが、file_modeとdir_modeを使用してもモードを設定できませんでした。

# mount -v -t cifs -o username=my_user,password=my_pass,uid=my_user,gid=users,forceuid,forcegid,file_mode=0755,dir_mode=0755,vers=1.0 //192.168.1.1/Data5 /external/Data5
mount.cifs kernel mount options: ip=192.168.1.1,unc=\\192.168.1.1\Data5,forceuid,forcegid,file_mode=0755,dir_mode=0755,vers=1.0,uid=1000,gid=100,user=my_user,pass=********

# ls -lah /external/
total 0
drwxr-xr-x 1 root   root   76 Jan 25 14:20 .
drwxr-xr-x 1 root   root  422 Sep  4 14:26 ..
drwxr-xr-x 1 my_user users   0 Jul 28  2018 Data1
drwxr-xr-x 1 my_user users   0 Nov 26  2019 Data2
drwxr-xr-x 1 my_user users   0 Jul 27  2018 Data3
drwxr-xr-x 1 my_user users   0 Jul 27  2018 Data4
drwxrwxrwx 1 my_user users   0 Jul 27 14:14 Data5
drwxr-xr-x 1 my_user users   0 Apr 13  2021 Data6

これでパターンだけを把握すればいいのに…

ベストアンサー1

(a)共有にアクセスする唯一の人であり、(b)とにかくモード変更がCIFSファイルシステムに書き戻されないため、モードが777か755かは重要ではないと思いました。したがって、次の方法で問題を解決します。

# mount -v -t cifs -o username=my_user,password=my_pass,uid=my_user,gid=users,forceuid,forcegid,vers=1.0 //192.168.1.1/Data5 /external/Data5
mount.cifs kernel mount options: ip=192.168.1.1,unc=\\192.168.1.1\Data5,forceuid,forcegid,file_mode=0755,dir_mode=0755,vers=1.0,uid=1000,gid=100,user=my_user,pass=********

# ls -lah /external/
total 0
drwxr-xr-x 1 root   root   76 Jan 25 14:20 .
drwxr-xr-x 1 root   root  422 Sep  4 14:26 ..
drwxr-xr-x 1 my_user users   0 Jul 28  2018 Data1
drwxr-xr-x 1 my_user users   0 Nov 26  2019 Data2
drwxr-xr-x 1 my_user users   0 Jul 27  2018 Data3
drwxr-xr-x 1 my_user users   0 Jul 27  2018 Data4
drwxrwxrwx 1 my_user users   0 Jul 27 14:14 Data5
drwxr-xr-x 1 my_user users   0 Apr 13  2021 Data6

そしてfstabに対応する内容は次のとおりです。

# cat /etc/fstab | grep Data5
//192.168.1.1/Data5 /external/Data5 cifs user,nofail,x-systemd.device-timeout=10,x-systemd.automount,x-systemd.idle-timeout=60,uid=my_user,gid=users,credentials=/root/.data5cred,vers=1.0,forceuid,forcegid 0  0

これが誰かに役立つことを願っています。

注1:権利を修正する解決策を知っている人がいれば、学習の観点からまだ興味があります。

注2:突然forceuidとforcegidを指定する理由を知っている人がいる場合は、そうします。非常に聞きたいのなら!

みんな乾杯してください!

おすすめ記事