web-dev-qa-db-fra.com

Résolution de Samba TestParm Message: RLIMIT_MAX: RLIMIT_MAX (8192) En dessous de la limite de Windows minimale (16384)

testParm à Samba peut produire ce message:

rlimit_max: rlimit_max (8192) below minimum Windows limit (16384) 

Cela semble être résolu en augmentant la limite de fichier opencale maximale à l'aide de cette commande Linux ulimit -n 16384 ..

Est-ce un changement de sécurité pour la boîte typiquement samba? Où ce paramètre devrait-il être stocké de manière à ce qu'il soit disponible pour le service Samba au démarrage?

9
jcalfee

Tout d'abord, ceci est juste un avertissement. Sur MS Windows, le nombre de gestionnaires de fichiers sur le client et le serveur doit être identique, sinon vous verrez le message "Trop de fichiers ouverts" lorsque e. g. Copier des fichiers sur le réseau. Les versions Samba plus récentes s'occupent de ceci.

Toutefois, si vous souhaitez supprimer cet avertissement, vous pouvez le faire en modifiant les limites de votre fichier local. Il est toujours utile de distinguer les limites locales (utilisateur ou session) et limites mondiales (globales). Vérifiez vos limites globales avec

 cat /proc/sys/fs/file-max

Les chances sont bonnes que vos limites globales dépassent de loin vos limites locales. Je pense que la limite typique GNU/Linux est dans la gamme 100K, je n'ai pas regardé depuis très longtemps. Vous pouvez modifier cette valeur temporairement en exécutant

sysctl -w fs.file-max=n

ou en permanence en édité /etc/sysctl.conf et courir sysctl -p.

Pour vérifier vos limites locales, passez à l'utilisateur concerné, e. g. samba et courir

ulimit -Hn
ulimit -Sn

Cela vous montrera des limites difficiles et douces pour la session locale. La limite dure est appliquée par le système, tandis que la limite molle est appliquée par la session locale. Vous pouvez augmenter la limite logicielle locale jusqu'à la limite dure globale, si nécessaire.

Vous pouvez changer les limites temporairement en courant

ulimit -Hn n
ulimit -Sn m

ou vous pouvez définir des limites utilisateur via /etc/security/limits.conf Et vous pouvez même spécifier pour lequel les utilisateurs qui limitent s'appliquent, e. g.

samba soft nofile 16384
samba hard nofile 32768

Comme toujours, les pages manuelles des deux fichiers et des commandes offrent beaucoup plus de perspicacité. J'espère que cela pourra aider.

8
bjanssen

La limite est prise à partir de /etc/security/limits.conf.

vous montrez votre limite réelle avec Ulimit -N

vous pouvez le changer en modifiant (ou en ajoutant) la ligne

*               -       nofile          16385

et recharger votre param (ou quitter Shell et entrez à nouveau Shell).

3
Loris

Une faute de frappe en /etc/samba/smb.conf Le fichier peut générer ce type d'erreur. J'ai suivi ceci link et mine rexaminé uniquement pour trouver mon problème était une faute de frappe: "yess" au lieu de "oui".

0
Chiadi

C'est simple, mais je crois que tant de gens perdent du temps avec cette question (comme moi haha).

Nous avons besoin de configurer la limite de paramètre [~ # ~ ~] NOFILE [~ # ~ ~] dans "/etc/security/limits.conf" ou dans un autre fichier alternatif tel que "/ etc/sécurité/limites. d/limite-file.conf "Ainsi:

*    -    nofile  16384

Le problème est que cette configuration ne s'applique pas à la session en cours, nous avons besoin de sortie et de vous connecter pour appliquer les modifications, par conséquent, nos tests avec Tesparm échouent.

Si vous ne souhaitez pas redémarrer la session, appliquez cette commande et résolvez ce problème :

ulimit -n 16384

J'espère que cela t'aides!

0
Marcelo Guedes