Le problème
Le service SMB ne peut pas démarrer, les partages SAMBA ne sont pas accessibles. L'utilisation de systemctl ne permet pas de démarrer le service et vous trouverez ci-dessous l'état du service smb.
# systemctl status smb.service ? smb.service - Samba SMB Daemon Loaded: loaded (/usr/lib/systemd/system/smb.service; disabled; vendor preset: disabled) Active: failed (Result: exit-code) since Fri 2017-07-07 10:07:54 AEST; 3 days ago Process: 25847 ExecStart=/usr/sbin/smbd $SMBDOPTIONS (code=exited, status=1/FAILURE) Main PID: 25847 (code=exited, status=1/FAILURE) The following entries are logged to the /var/log/messages file: Jul 07 10:07:54 localhost smbd[25847]: Unable to open new log file '/var/log/sa...ed Jul 07 10:07:54 localhost smbd[25847]: [2017/07/07 10:07:54, 0] ../lib/util/de...l) Jul 07 10:07:54 localhost smbd[25847]: Unable to open new log file '/var/log/sa...ed Jul 07 10:07:54 localhost smbd[25847]: [2017/07/07 10:07:54, 0] ../source3/smb...n) Jul 07 10:07:54 localhost smbd[25847]: smbd version 4.2.3 started. Jul 07 10:07:54 localhost smbd[25847]: Copyright Andrew Tridgell and the Samba ...14 Jul 07 10:07:54 localhost systemd[1]: smb.service: main process exited, code=ex...RE Jul 07 10:07:54 localhost systemd[1]: Failed to start Samba SMB Daemon. Jul 07 10:07:54 localhost systemd[1]: Unit smb.service entered failed state. Jul 07 10:07:54 localhost systemd[1]: smb.service failed.
La solution
Dans la plupart des cas dans RHEL 7, le service samba ne démarre pas si SELinux est activé (appliqué). Désactivez SELinux ou rendez-le uniquement consultatif. La setenforce La commande est utilisée pour basculer entre le mode d'application et le mode permissif. Pour passer en mode permissif :
# setenforce 0
Utilisez la commande getenforce pour afficher le mode SELinux actuel :
# getenforce PermissiveComment activer/désactiver les modes SELinux dans RHEL/CentOS
Si vous ne souhaitez pas désactiver SELinux, vous pouvez consulter la politique SELinux permettant au sous-système SAMBA de s'exécuter. Pour vérifier les politiques SELinux actuelles, utilisez les commandes ci-dessous.
# getsebool -a | grep samba # getsebool -a | grep nmb
Cela devrait donner une liste d'options et si elles sont activées ou désactivées. Ils devraient être allumés. Les paramètres peuvent être modifiés à l'aide des commandes ci-dessous.
Syntaxe :
# setsebool -P [boolean] on
Par exemple :
# setsebool -P bacula_use_samba on