Pas d'accès aux partages Samba


8

J'ai trois dossiers partagés dans mon répertoire personnel local, c'est-à-dire sur / home / me / sur mon bureau Ubuntu. Tous ont été configurés à l'aide des "Options de partage" dans le menu contextuel de Nautilus. Les dossiers standard "Musique" et "Vidéos" sont configurés de façon identique: la case "Accès invité" est cochée, mais pas "Autoriser les autres à créer et supprimer". Le troisième dossier, appelé "partagé", est configuré pour ne pas autoriser l'accès Invité mais pour permettre aux autres de modifier les fichiers. Je n'ai pas modifié /etc/samba/smb.confà la main, j'ai seulement utilisé les options de partage pour créer et modifier ces soi-disant "partages".

Mes colocataires ont deux ordinateurs Windows 7 et un netbook Ubuntu Netbook Remix. J'ai la machine de bureau et l'ordinateur portable susmentionnés exécutant 10.04. Aucune de ces machines ne peut accéder aux partages. Les tentatives d'accès aux partages d'invité aboutissent au message

\\machine\directory is not accessible. The network name could not be found.

Il s'agit du message d'erreur généré par une machine virtuelle exécutant Windows 2000. Les autres machines Windows génèrent une erreur similaire. L'ordinateur portable Ubuntu donne l'erreur Unable to mount location: Failed to mount Windows share. Vive encore une fois les messages d'erreur informatifs. Cela aide vraiment beaucoup.

Lorsque je tente de parcourir le dossier appelé «partagé» de l'ordinateur portable, je suis confronté à une boîte de dialogue de mot de passe. Ce comportement est le même pour toutes les machines que j'ai essayées dans la situation. En entrant mon nom d'utilisateur et mon mot de passe pour le compte auquel appartiennent les partages, la boîte de dialogue de mot de passe disparaît brièvement et est remplacée par une boîte de dialogue identique. Aucun message d'erreur, utile ou non, n'apparaît.

Lorsque vous essayez de parcourir ce dossier avec la machine virtuelle, le résultat est le même, sauf que la boîte de dialogue de mot de passe indique utilement "nom d'utilisateur ou mot de passe incorrect". Mon hypothèse est que le nom d'utilisateur et le mot de passe en question sont ceux de l'utilisateur propriétaire des partages. J'ai essayé toutes les autres combinaisons de nom d'utilisateur et de mot de passe disponibles dans ce contexte et le résultat est le même.

Je voudrais pouvoir partager des fichiers. Les partager avec des machines Windows est une fonctionnalité intéressante, ou le serait si elle était disponible. Je considère vraiment que le partage de fichiers entre deux machines avec la même version du même système d'exploitation est une condition minimale pour l'utilisabilité du réseau.

Samba a fonctionné pour la dernière fois de manière fiable il y a plus de dix ans. Depuis lors, j'ai essayé de l'utiliser sur et en dehors avec un succès intermittent.

Oh, et "Partage de fichiers personnels" dans le menu Préférences n'entraîne pas une entrée dans Lieux → Réseau → mon-serveur. En fait, l'ancienne entrée "MY-SERVER" disparaît et est remplacée par "koanhead's public files on my-server", qui lorsque j'essaie de l'ouvrir à partir de l'ordinateur portable donne un "DBus.Error.NoRply: le message n'a pas été reçu une réponse."

Je sais que je viens ici et me plaigne beaucoup d'Ubuntu, mais d'un autre côté, je passe littéralement des heures chaque jour à essayer de réparer les choses dans Ubuntu. C'est un bon système qui aspire à la grandeur, c'est pourquoi des choses comme ça non plus

  1. Besoin de travailler; ou

  2. Être correctement documenté.

Idéalement, les deux seraient le cas. Quoi qu'il en soit, déclamez. J'espère que quelqu'un aura un aperçu de cette question. Merci à tous ceux qui prennent la peine de lire ce mur de texte pour votre temps.


1
Ce n'est vraiment pas un bon moyen de résoudre le problème, mais c'est une solution de contournement. Tant que /etc/samba/smb.conf a map to guest = bad userdans la section globale et que le partage a guest ok = yesalors si vous entrez un nom d'utilisateur et un mot de passe incorrects (mais pas vides, mettez simplement les ordures dans les deux champs), les choses semblent fonctionner. Je sais que c'est moche, et j'espère que quelqu'un a une meilleure réponse, donc je peux aussi réparer ma configuration.
Jeremy

1
avez-vous pensé à utiliser scp? mettez winscp sur les machines Windows et exécutez le serveur ssh sur votre machine. Très simple à configurer et à administrer. Les protocoles de partage de fichiers Windows doivent être évités à tout prix, ils ne fonctionnent même pas très bien entre les machines Windows. J'ai abandonné la samba il y a longtemps.
The Unix Janitor

@Jeremy, merci pour la suggestion, je vais l'essayer dans les deux prochains jours et publier les résultats ici. @ user5883, oui, j'utilise régulièrement sshfs et parfois scp- mais je ne peux pas abandonner Samba car Ubuntu l'a adopté comme méthode de partage de fichiers "officiel" et je dois pouvoir aider les autres avec.
koanhead

@Jeremy, 'map to guest = bad user' était déjà présent dans la section globale de smb.conf. L'ajout d'invité ok = oui n'a eu aucun effet perceptible.
koanhead

2
J'ai attribué la prime pour cette réponse, non pas parce que Samba fonctionne maintenant correctement mais parce que je ne voulais pas le laisser expirer. Le partage de fichiers dans Ubuntu est toujours désespérément cassé pour autant que je sache; cela n'a jamais fonctionné pour moi depuis 2006. Samba n'a jamais fonctionné de manière satisfaisante que sous Caldera OpenLinux (en 1999) et Fedora Core 2. Dans les deux cas, cela a pris plusieurs jours d'étude, d'essais et d'erreurs. Mon point en postant cette question n'était pas que j'ai besoin de Samba pour travailler, mais que Ubuntu a besoin pour que cela fonctionne. Ceci est une rupture de contrat pour le bogue n ° 1 et me rend incapable de recommander Ubuntu.
koanhead

Réponses:


7

Je pense qu'il n'a pas d'utilisateurs de samba.

sudo smbpasswd -a <username>  
gksu gedit /etc/samba/smbusers  

1
c'est quelque chose qui me jetait ... sans intégrer les utilisateurs de samba et les utilisateurs du système, mais il y a une raison.
RobotHumans

À partir de la page de manuel smbpasswd: "De plus, la commande smbpasswd n'est utile que si Samba a été configuré pour utiliser des mots de passe chiffrés." Je n'ai pas configuré samba pour le faire manuellement et je ne sais pas si Ubuntu l'a configuré de cette façon par défaut. De plus, la page de manuel smbpasswd ne fait aucune référence aux smbusers. Cela laisse entendre que la commande «smbpasswd -a» est suffisante pour ajouter un utilisateur, mais alors pourquoi le fichier smbusers existe-t-il? Pourquoi cela serait-il même pertinent pour l'authentification au niveau du partage? Les partages sont censés être lisibles globalement sans mot de passe. Pourquoi Samba est-il utilisable uniquement pour les experts Samba?
koanhead

J'ai ajouté un utilisateur via 'smbpasswd -a' et redémarré smbd sans effet immédiat discernable. Après avoir effectué et annulé certaines des modifications de smb.conf notées ci-dessus, avec les redémarrages smbd associés, le dossier nommé 'shared' est désormais accessible depuis l'ordinateur portable via le mot de passe que j'ai configuré. L'accès au niveau de l'utilisateur fonctionne maintenant, mais pas l'accès au niveau du partage, ce que je voulais réellement. L'accès au niveau utilisateur ne m'est pas très utile, car j'utilise sshfs pour cela, mais votre réponse est la plus correcte (la seule qui a effectué un changement positif), je vais donc vous attribuer la prime.
koanhead

J'apprécie le chèque ... et je comprends la frustration. L'utilisation d'utilisateurs pour fournir des autorisations au niveau du partage était quelque chose sur laquelle je suis tombé il y a longtemps (j'oublie même les circonstances, mais je me sentais beaucoup comme vous maintenant). Pour contourner ce problème, utilisez des utilisateurs et mappez un lecteur avec une sorte d'option "authentifier en tant que" dans le montage du lecteur. Ce ne sont pas de vraies autorisations au niveau du partage, mais cela m'a donné une implémentation gratuite qui fonctionnait comme souhaité.
RobotHumans

Je l'ai fait. N'a pas aidé. BTW theres pas un tel fichier gksu gedit / etc / samba / smbusers donc je l'ai enregistré afin que son nouveau vide. À quoi ça sert? Comment cette réponse est-elle acceptée? Ça ne marche pas.
Kangarooo

3

Ce n'est pas une réponse, mais plutôt un commentaire, car je ne semble pas encore avoir le privilège de commenter. Je ne suis pas surpris que votre colocataire utilise Windows 7. J'ai parfois du mal à partager des fichiers entre Windows XP et Windows 7.

J'avais l'habitude de travailler sur un ordinateur Windows XP avec Ubuntu fonctionnant sous VMware et de transférer des fichiers via le partage via Samba. Quand j'ai essayé la même configuration avec Windows 7, pas de joie.

Il semble que quelque chose ait changé dans Windows 7. Donc, sauf si vous rencontrez des problèmes de partage avec un Windows XP, je ne dirais pas exactement que Samba était plus fiable il y a 10 ans.

référence ici et / ou essayez d'obtenir des versions plus récentes de Samba

http://wiki.samba.org/index.php/Windows7


1
Merci pour la réponse, et je me soupçonne que Windows 7 pourrait contribuer au problème. Cependant, je ne peux pas non plus me connecter à partir d'un autre ordinateur exécutant le même système d'exploitation que le serveur (Ubuntu 10.04) ni la machine virtuelle Win2k locale. Malheureusement, il n'y a pas de machine XP à proximité avec laquelle j'ai pu tester cela. Mon point dans la diatribe étendue était que dans Ubuntu, Samba devrait simplement fonctionner (tm) car c'est la méthode de partage de fichiers «officielle». Devoir pirater des choses pour les faire fonctionner est bien dans Arch ou même Fedora, mais pas Ubuntu. Btw, quand je veux réellement utiliser des fichiers distants, j'utilise sshfs.
koanhead

Il ne peut même pas se connecter à une autre machine Ubuntu? votre Ubuntu 10.04 peut-il parfaitement voir l'autre ordinateur? Je sais que vous avez probablement vérifié cela, mais ces ordinateurs sont-ils dans le même GROUPE?
hansioux

oui, les deux ordinateurs Ubuntu s'affichent l'un dans l'autre dans Lieux-> Réseau. En fait, tous les ordinateurs impliqués peuvent se voir, mais aucun ne peut accéder aux partages hébergés par la boîte Ubuntu et aucune boîte Ubuntu ne peut accéder aux partages (je n'ai pas de compte sur la machine Windows, donc je ne m'attends pas à ce que pour fonctionner quand même.) Initialement, les deux ordinateurs Ubuntu faisaient partie d'un groupe de travail séparé, mais j'ai changé cela afin que tous les ordinateurs du réseau local soient sur «WORKGROUP».
koanhead

3

Je le fais habituellement en éditant le fichier conf. J'ai fait ceci:, et l'ai sudo nano /etc/samba/smb.confajouté à la fin du fichier.

[Shared]
     comment = My Files
     path = /home/me
     read only = yes
     write list = koanhead
     guest ok = yes

Dans «liste d'écriture», mentionnez le nom d'utilisateur de votre système, afin que vous n'ayez qu'une autorisation d'écriture. Sur la machine Windows, tapez ceci lors de l'exécution: \\ ip-of-the-samba-pc \ shared. Sur la machine Ubuntu, ouvrez le navigateur de fichiers et saisissez-le dans la barre d'adressesmb://ip-of-the-samba-pc/shared


Merci pour la suggestion, je vais l'essayer dans les deux prochains jours et faire rapport.
koanhead

L'ajout du texte cité à /etc/samba/smb.conf fait disparaître tous les partages de la fenêtre Nautilus " Partages Windows sur mon serveur".
koanhead

3

Vous dites que vous avez pu faire fonctionner l'accès au niveau utilisateur. Cela me semble que c'est simplement votre configuration de samba qui est fausse. Dans les temps anciens, j'aurais dit de supprimer le samba.conf et d'en créer un qui correspond à vos besoins, un bon samba.conf n'a pas besoin de plus de 10 lignes, peut-être.

Quoi qu'il en soit, depuis lors, une solution plus simple a émergé: installer system-config-samba

sudo apt-get install system-config-samba

Avant de commencer, vous voudrez peut-être réinitialiser le samba.conf à son état d'origine. Pour vous assurer qu'aucune erreur de syntaxe "cachée" ne s'est glissée pendant tout le dépannage

Le panneau de contrôle est assez simple:

  • cliquez sur le signe '+'
  • sélectionner le répertoire
  • rendre visible (et inscriptible?)
  • allez dans l'onglet 'Accès'
  • choisissez «Autoriser l'accès à tout le monde»

Une manière alternative (et légèrement plus appropriée) de le faire:

  • créer un utilisateur * nix nommé: guest (ou ce que vous voulez)
    • pour des raisons de sécurité, assurez-vous que "guest" a /bin/falsecomme shell de connexion (sauf si vous voulez que l'invité puisse se connecter via ssh, etc.)
  • dans le menu "Préférences": sélectionnez "Utilisateurs Samba"
  • assurez-vous que "guest" est sur la liste: s'il ne l'est pas, créez-le.

puis

  • dans le menu "Préférences": sélectionnez "Paramètres serveur"
  • Sur l'onglet "Sécurité": par "Compte invité", sélectionnez "invité"

Désormais, toute personne qui tente de se connecter de manière anonyme sera affectée à l'utilisateur «invité» et aura donc tous les droits dont dispose «invité».

  • créez maintenant le partage comme décrit précédemment, sauf qu'au lieu de choisir «Autoriser l'accès à tout le monde», sélectionnez simplement «invité».

assurez-vous que l'utilisateur * nix 'invité' dispose des droits suffisants pour lire et / ou écrire dans le dossier partagé.

Bonne chance!

/ B2S


2

Pour que les nouveaux systèmes Windows accèdent aux partages Ubuntu Samba actuels / anciens, vous devez activer le chiffrement du mot de passe (chiffrer les mots de passe = oui dans le smb.conf).

La chose qui a changé dans Windows 7, c'est qu'ils ont mis en place une exigence de sécurité pour les mots de passe Samba à chiffrer. La même chose s'applique à XP si vous avez installé KB2536276.

J'ai fait le tour de ce problème sur notre réseau au travail jusqu'à ce que je trouve la solution de changer ce " non " en " oui " sur les mots de passe cryptés. Cela fonctionne toujours pour un partage grand ouvert auquel tout le monde a accès en lecture / écriture sans mot de passe - même si vous n'avez pas de mot de passe, il doit toujours dire à Windows que le mot de passe inexistant est crypté pour que Windows vous y autorise.

Cette réponse suppose que tout le reste est configuré pour que Samba fonctionne correctement, comme les utilisateurs (ou leur absence) et les autorisations définies.

Pour la part ouverte / facile sans mot de passe , etc, assurez - vous que vous avez security = share, guest account = nobodyet / ou map to guest = Bad Userdans le conf.


1

Je suis désolé de le dire, mais j'ai eu le même problème, mon ordinateur était indétectable en LAN, après cela, j'ai réinstallé le système (réinstallez clairement avec un formatage complet) et tout a bien fonctionné.


1

Si vous utilisez Windows 7, vous devrez peut-être modifier vos paramètres de registre:

Consultez le wiki Samba pour plus d'informations, ou exécutez simplement le fichier Win7_SambaDomainMember.reg

Si vous utilisez Ubuntu 11.10, assurez-vous que python-glade2 est installé

sudo apt-get install python-glade2

1

Une solution simple pour partager votre dossier personnel consiste à décommenter les lignes de la [homes]section /etc/samba/smb.conf (supprimez le ";")


0

Je pense que vous devriez vérifier si vous avez ou non des règles de pare-feu / iptables. Si vous n'êtes pas sûr que le moyen le plus simple est (et de gérer également iptables à l'avenir) pour installer ufw et

sudo ufw allow samba
sudo ufw enable

ufw est déjà configuré pour autoriser la samba.
koanhead
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.