CentOS 7、Samba問題:USBドライブをEXT4ファイルシステムと共有しようとすると、ファイル/フォルダがゼロです。
Samba設定ファイル:
[global]
workgroup = WORKGROUP
server string = Samba Server %v
netbios name = 271-filesharing
security = user
map to guest = bad user
dns proxy = no
#============================ Share Definitions ==============================
[Administrator]
path = /mnt/ELEMENTERY-1TB/
browsable =yes
writable = yes
public = no
valid users = RVS
SambaにはRVSというユーザーがいます。ユーザーのホームディレクトリパスを使用するときは、自分のMacbook Proを使用してSamba共有にアクセスできます。
私はそれを終えたsudo chown RVS:RVS -R /mnt/ELEMENTERY-1TB
。ドライブの権限は次のとおりです。
[RVS@271 mnt]$ ls -al
total 4
drwxr-xr-x. 3 RVS RVS 28 Sep 12 00:26 .
dr-xr-xr-x. 17 root root 224 Sep 9 11:27 ..
drwxrwxrwx. 4 RVS RVS 4096 Sep 12 00:26 ELEMENTERY-1TB
私はRVSユーザーとしても使用していますsudo mount /deb/sdb /mnt/ELEMENTERY-1TB
。
構成/権限から何かをスキップしましたか?
答え1
CentOSはデフォルトでSELinuxを有効にして、システムにセキュリティの制限を追加します。基本ポリシーは、主に制限されたソフトウェアの一般/基本構成をカバーしています。アクセスが拒否されると、通常は監査ログにログエントリが生成されます/var/log/audit/audit.log
。
リムーバブルメディアの場合は、SELinuxを使用してデバイスをマウントすることを検討する必要があります。コンテキスト別オプション。これにより、システムのSELinuxポリシーを変更し、リムーバブルデバイスのファイルシステムラベルを再割り当てする必要がなくなります。samba_share_t
これは、マウントポイントがSambaで動作するようにしたい場合に機能します。 / labelタイプを使用すると、user_home_t
ファイルはユーザーのホームディレクトリにあると見なされます。
mount -t ext4 /dev/sdb /mnt/ELEMENTERY-1TB \
-o context="system_u:object_r:samba_share_t:s0"
または/etc/fstab
UUID=<...> /mnt/ELEMENTERY-1TB/ ext4 defaults,errors=remount-ro,context="system_u:object_r:samba_share_t:s0" 0 1
SELinuxにまだ問題がある場合は、次のものを使用できます。audit2why
アクセスが拒否された理由とSELinuxが存在できるかどうかを確認してください。ブール値アクセスを許可するために存在します。 SELinuxポリシーを変更する必要がある場合は、次のものを使用できます。audit2allow
アクセスを許可するポリシーモジュールを作成します。
有効にすると、Sambaがすべてのファイルにアクセス(および共有)できるようにするsamba_export_all_ro
2つのブール値もあります。samba_export_all_rw
この場合、これは必要以上に多くのアクセスをSambaに許可するため、してはいけない使用このような状況ではインストールオプションを簡単に設定できるからです。