Magaz, The Greek Linux Magazine
Magaz Logo

Επόμενο  Προηγούμενο  Περιεχόμενα

9. Περί Samba προβλήματα

Από : Αλεξάκο Φώτη

Απάντηση : Μιχάλης Καμπριάνης

Παιδιά χαιρετώ
Λοιπόν είμαι ένας "νεοφώτιστος" στο Linux (ναι γιατρέ... "θεραπεύτηκα") και σας γράφω γιατί το Samba με έχει κυριολεκτικά απελπίσει. Η κατάσταση έχει ως εξής: Θέλω να στήσω ένα πολύ μικρό LAN που αποτελείται από :
a) Ένα Win-95 μηχάνημα με local IP address : 147.10.10.2 και όνομα ας πούμε "linuxclient.mydomain.gr" το οποίο θέλω να είναι ο Samba client.
b) Ένα Linux μηχάνημα με local IP address : 147.10.10.1 και όνομα π.χ. "linuxserver.mydomain.gr" που τρέχει το RedHat Linux 5.1

Πρώτα πρώτα, το θέμα που έθιξε ο Νίκος Κόκρας. Χρησιμοποίησε ένα private space, π.χ. 192.168.0.0. ΜΗΝ χρησιμοποιείς πραγματικές διευθύνσεις. Ενδέχεται να συμβούν πολλά (από το απλό του να μην δουλεύεις, μέχρι να έχει στήσει ο provider σου λάθος τους routers του και να κάνεις ένα Internet μπάχαλο)

Διαβάζω το άρθρο του Μιχάλη του Καμπριάνη στο magaz του Φλεβάρη αν θυμάμαι καλά. Κάνω τα πάντα ΑΚΡΙΒΩΣ όπως τα γράφει. Ακολουθούν τα σχετικά αποσπάσματα από το /etc/services πρώτα:


 
netbios-ns 137/tcp nbns
netbios-ns 137/udp nbns
netbios-dgm 138/tcp nbdgm
netbios-dgm 138/udp nbdgm
netbios-ssn 139/tcp nbssn

Πολύ ωραία. Μήπως έχεις udp connection και για το netbios-ssn?

και το /etc/inetd.conf


# ---- Samba
netbios-ssn stream tcp nowait root /usr/bin/smbd smbd
netbios-ns dgram udp wait root /usr/bin/nmbd nmbd
# ---- End Samba

Και τα nmbd και smbd είναι στο /usr/bin, έτσι;

το /etc/hosts


 
127.0.0.1 localhost localhost.localdomain
147.10.10.1 linuxserver linuxserver.mydomain.gr
147.10.10.2 linuxclient linuxclient.mydomain.gr

Εδώ βάλε πρώτα το FQDN, κάνε το δηλαδή:
127.0.0.1 localhost
147.10.10.1 linuxserver.mydomain.gr linuxserver
147.10.10.2 linuxclient.mydomain.gr linuxclient

Το "/etc/hosts.allow" είναι άδειο

Σου χρειάζεται μόνο για τα tcp-wrappers (tcpd) Μπορείς να το αγνοήσεις προσωρινά. Αργότερα θα το χρησιμοποιήσεις για να "κλείσεις" την πρόσβαση στο μηχάνημά σου.

Χρησιμοποιώ το default smb.conf και τα αποτελέσματα του "netstat -a | grep netbios" είναι τα ακόλουθα:


tcp 0 0 *:netbios-ssn *:* LISTEN
udp 0 0 *:netbios-ns *:*
udp 0 0 *:netbios-ns *:*
udp 0 0 *:netbios-dgm *:*
udp 0 0 linuxserver.:netbios-ns *:*
udp 0 0 linuxserver:netbios-dgm *:*
udp 0 0 linuxclient.:netbios-ns *:*
udp 0 0 linuxclient:netbios-dgm *:*

και το ΤΡΕΛΛΟ output της εντολής: /etc/rc.d/init.d/smb status
smbd is stopped

Ας τα πάρουμε με την σειρά. Έτρεξες το testparm; Αν ναι, τι σου έβγαλε; Το smbd που κάνει stop, γιατί κάνει stop; Το /var/adm/messages δεν λέει τίποτα; ΑΛΛΑ, αφού είναι στο /etc/inetd.conf ΔΕΝ χρειάζεσαι το /etc/rc.d/init.d/smbd.

nmbd (pid 2084) is running...
Αν τώρα δώσω : "smbclient -L linuxserver" παίρνω :


 
doing parameter printing = bsd
doing parameter printcap name = /etc/printcap
doing parameter load printers = yes
doing parameter interfaces = 147.10.10.1/24 147.10.10.2/24
doing parameter bind interfaces only = True
doing parameter guest account = nobody
doing parameter log file = /var/log/samba-log.%m
doing parameter log file = /usr/local/samba/log.%m
pm_process() returned Yes
adding IPC service
load_client_codepage: filename /etc/codepages/codepage.850 does not exist.
Added interface ip=147.10.10.1 bcast=147.10.10.255 nmask=255.255.255.0
Added interface ip=147.10.10.2 bcast=147.10.10.255 nmask=255.255.255.0
Opening sockets
resolve_name: Attempting lmhosts lookup for name LINUXSERVER
resolve_name: Attempting host lookup for name LINUXSERVER
Connecting to 147.10.10.1 at port 139
Connected
Session request failed (0,0) with myname=LINUXSERVER destname=LINUXSERVER
Unspecified error 0x0
Your server software is being unfriendly

Όπως το περιμέναμε δηλαδή εδώ. Αφού δεν τρέχει το smbd, πως να δέχεται connections? Κοίτα το προηγούμενο σχόλιο

Παρ' όλα αυτά η smbmount μου κάνει mount στον δίσκο του Linux όλον τον σκληρό του μηχανήματος (client) που τρέχει Win95 !!!!

Ναι, γιατί στα Win 95 το αντίστοιχο του smbd τρέχει κανονικά.

Μπορεί κανείς να μου πει τι φταίει;

Ναι, το smbd. Έλεγξε αν στην θύρα που πάει να σηκωθεί (139 από default) τρέχει κάτι άλλο Κοίτα το messages καθώς και όλα τα logs του smbd. Κάπου χτυπάει, και δεν πρέπει να είναι πολύ δύσκολο να βρεις που χτυπάει από τα logs. Αν δεν βρεις άκρη, στείλε το /etc/rc.d/init.d/smbd να του ρίξουμε μια ματιά, μαζί με το smb.conf (αλλά προσπάθησε πρώτα μόνος σου σε παρακαλώ)

Είναι τόσο δύσκολο να έχω ένα Linux ως file server και μερικά Win95 μηχανήματα ως clients σ' ένα τοπικό δίκτυο;

Όχι, δεν είναι :-)

Επόμενο  Προηγούμενο  Περιεχόμενα


Valid HTML 4.01!   Valid CSS!