Mac クライアントは Samba 共有に対する権限を設定できません。

Mac クライアントは Samba 共有に対する権限を設定できません。

私はローカルホームネットワークのDebianサーバーでSambaを実行しています。 Sambaのバージョンでは、4.9.5-DebianMy Mac Mini(Big Surを含む)がこのサーバーに接続されています。ある共有はTime Machineのバックアップに使用され、もう一方の共有はデータを保存するために使用されます。 Time Machineバックアップが機能しているようです(少なくともTime Machineは文句を言わず、バックアップから単一のファイルを正常に復元しました)。

ところで、データ共有に対する権限が正しく機能しないことがわかりました。ファイルやフォルダの権限を変更しようとすると(使用するなど)、chmod 640 testfile.txt共有に対する権限は影響を受けません。権限は常に同じままです。

私はこれをインターネットと読書で見つけた情報に基づいていましたman smb.confman vfs_fruit

smb.confファイルのグローバルセクションに次のパラメータを追加しました。

   server min protocol = SMB3_00
   ea support = yes
   vfs objects = acl_xattr catia fruit streams_xattr
   fruit:aapl = yes
   fruit:metadata = netatalk
   fruit:resource = file
   fruit:encoding = native
   fruit:copyfile = yes
   fruit:model = MacSamba
   fruit:veto_appledouble = no
   fruit:posix_rename = yes
   fruit:zero_file_id = yes
   fruit:wipe_intentionally_left_blank_rfork = yes
   fruit:delete_empty_adfiles = yes
   fruit:nfs_aces = no

データ共有の構成は次のとおりです。

[DataShare]
   comment = Samba data share
   path = /srv/samba/datashare
   browseable = yes
   read only = no
   guest ok = no
   valid users = myuser
   create mask = 0777
   directory mask = 0777

私はSambaに初めて触れ、さまざまなパラメータについて少し混乱しました。今、私のMacクライアントが共有内のファイルのファイル権限を設定できない理由がわかりません。

これは単にファイルを保存するのに問題はありませんが、アプリケーションに問題を引き起こす可能性があります。たとえば、大きなイメージライブラリを共有に保存したいとします。そこにコピーしてAppleのフォトアプリで開きたかったのですが、フォトでは権限が破損していると言うことができず、権限も修正する方法がありませんでした。

この設定が機能するようにしたいので、助けてくれてありがとう。

答え1

私はパーティーに遅れていましたが、(少なくとも私にとっては)うまくいく解決策を探してそこに出さない人になることはできません。なぜなら、私はいつも「nvmが問題を解決しました」と叫ぶ人だったからです。詳細な説明と;)

最初のステップは、あなたが持っていることをfstab確認することです。

  1. xattrs共有ファイルシステムのサポートが有効になっています。を確認してくださいfstab

  2. そこにいる間、マウントオプションでもACLが有効になりました。このように環境に合わせて調整してください。

    /dev/disk/by-label/nas1 /mnt/nas1 ext4 defaults,user_xattr,acl,commit=60 0 2
    

    権限エラーが発生した理由を解決するために数時間を費やしました。先ほどポイント2を忘れてしまいました。

設定の残りの部分はすでに大丈夫で、思ったよりもはるかに少ない作業が必要です。

  1. これをsmb.conf[global]セクションに入れます。

    [global]
    vfs objects = fruit catia streams_xattr acl_xattr
    map acl inherit = yes
    fruit:aapl = yes
    fruit:model = MacSamba
    fruit:metadata = stream
    readdir_attr:aapl_rsize = yes
    readdir_attr:aapl_finder_info = yes
    readdir_attr:aapl_max_access = yes
    

    これらの設定が何をしているのか気になった方は謙虚にアドバイスいたします。$> man smb.conf(OPを掘り下げる必要はありません。その投稿のテキストをもっと...無知の古い投稿と混同しました。)

ファイルの残りの部分はデフォルト値のままにできます。従来の Windows 3.11 ユーザーで、自分の LAN でワークグループ名を同期することが心配な場合は、ワークグループ名を変更してください。

  1. タグをサポートする共有では、次のオプションが適しています。
    [Pr0n]
      comment = Pr0n
      path = /mnt/nas1/Pr0n
      browseable = no
      guest ok = no
      read only = no
      writable = yes
      valid users = 
    
    [ -- snip -- ]
    
      force directory mode = 0775
      force create mode = 0664
    
      # Fruit config
      fruit:posix_rename = yes
      fruit:veto_appledouble = yes
      fruit:nfs_aces = yes
      fruit:wipe_intentionally_left_blank_rfork = no
      fruit:delete_empty_adfiles = no
    

SeDiskOperatorStatusディレクトリは私の個人ユーザーとグループが所有しているため、net grantなどを操作する必要はありません。

一度再起動した後(おそらく動作する可能性がある)、すべてが自動的に正規化され、タグがすべて許可されて貼り付けられます。

答え2

PAM(プラグイン認証モジュール)設定では、ディレクトリマスクを無視してマスク設定を作成できます。行を確認してください:smb.confでpamの制限を尊重します= no。これで問題が解決します。

関連情報