PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : [Samba] /etc/samba fehlt?



kaszewski
31.10.04, 21:31
Hallo,

habe mir die neuste Samba SOurce geholt , enpackt und installiert. Und zwar so:


tar -zxvf samba.latest.tar.gz
./configure --prefix=/usr/local/samba
make
make install

Nachdem ich nach der Kompilierung 'smb.conf' bearbeiten wollte habe ich gemerkt , dass sie nicht in /etc liegt und /etc/samba nicht vorhanden ist. Dachte ich mir; wird wohl nicht sos chlim sein. SUchte ich nach 'smb.conf' und fand ein parr in dem , nach dem Entpacken der Source , erstellten Samba Ordner und kopierte einfach eine nach /etc und bearbeitete diese. Danach wollte ich mir einen Benutzer via


root@linux: smbpasswd -a user_name

anlegen.Resultat: 'command not found' o_O

Meine Frage , was habe ich falsch gemacht. Hat das mit smbpasswd irgendwas damit zu tun , dass ich keinen /etc/samba Ordner habe ??? Wie kommt das?

- Benutz Slackware 10

tictactux
31.10.04, 21:41
Meine Frage , was habe ich falsch gemacht.


1. Du liest keine Dokumentation.
2. Du weißt deswegen nicht, was --prefix= bedeutet und bewirkt,
sonst hättest Du --prefix=/usr/local genommen, die
samba-Konfigdateien unter /usr/local/etc/ gesucht,
und wüßtes, daß ein so kompiliertes samba in genau jenem
Verzeichnis seine Configs sucht, und nicht in /etc/
auch wenn Tux persönlich sie dahin kopiert ;)

hth, und nichts für ungut
wolfgang

kaszewski
31.10.04, 21:56
Also:

ich habe eine Dokumentation gelesen , wenn du willst kann ich dir sogar den Link dazu geben nur anscheinend war sie nicht so gut (in dieser Dokumentation bzw. HowTo stand auch das mit dem prefix , das habe ich ganz einfach uebernommen). Was soll ich jetzt tun , wo finde ich nun die ganzen Dateien?

Ich benutze Linux auch erst seit 3 Monaten , wenn ich noch nicht alles weiss und mich daher eng an ein HowTo halt , kannst du mir das nicht vorwerfen.

tictactux
31.10.04, 22:18
ich habe eine Dokumentation gelesen , wenn du willst kann ich dir sogar den Link dazu geben nur anscheinend war sie nicht so gut (in dieser Dokumentation bzw. HowTo stand auch das mit dem prefix , das habe ich ganz einfach uebernommen). Was soll ich jetzt tun , wo finde ich nun die ganzen Dateien?

Durch --prefix=/usr/local/samba bei ./configure hat
'make install' die Dateien unterhalb des Verzeichnisses
/usr/local/samba installiert.
Darunter findest Du dann z.B. /usr/local/samba/etc/... sowie
/usr/local/samba/bin.

Letzteres solltest Du Deinem Pfad hinzufügen, um die samba-Programme
direkt aufrufen zu können, also:
export PATH=$PATH:/usr/local/samba/bin

Die Config-Dateien, die Du in /etc/ suchtest sind entsprechend unter
/usr/local/samba/etc/...
(Du kannst ja symbolische Links nach /etc/ ziehen)



Ich benutze Linux auch erst seit 3 Monaten , wenn ich noch nicht alles weiss und mich daher eng an ein HowTo halt , kannst du mir das nicht vorwerfen.
ich hoffe, Du hast den smiley und das 'nichts für ungut'
richtig gedeutet. Die Vorgehensweise mit dem Kopieren war nun mal
'etwas' naiv ;)

Viel Spaß noch,
wolfgang

kaszewski
01.11.04, 14:16
Achso,

aber irgendwie ist es nichgt so ganz wie es sein sollte. /usr/local/samba/bin z.B ist vorhanden , aber /usr/local/samba/etc existiert nicht :rolleyes: Sonst haette ich smb.conf ja auch im /usr/local/samba/etc Ordner gefunden. Irgendwie verstehe ich das nicht , wieso existiert dieser Ordner nicht ?

tictactux
01.11.04, 15:34
Achso,

aber irgendwie ist es nichgt so ganz wie es sein sollte. /usr/local/samba/bin z.B ist vorhanden , aber /usr/local/samba/etc existiert nicht :rolleyes: Sonst haette ich smb.conf ja auch im /usr/local/samba/etc Ordner gefunden. Irgendwie verstehe ich das nicht , wieso existiert dieser Ordner nicht ?

Dann installier es halt nochmal mit 'make install', aber folgendermaßen
(vielleicht vorher ein 'make uninstall', falls es das gibt):

script samba-install.log
make install
exit

Das Paket script kannst Du vorher installieren, wenn nicht vorhanden.
Dadurch wird die gesamte Ausgabe von 'make install' in der
Datei samba-install.log mitgeschnitten, und Du kannst
darin in Ruhe im Editor genau sehen was wohin kopiert/installiert wurde.

Gruss,
Wolfgang

kaszewski
01.11.04, 15:56
Hm , der Ordner /usr/local/samba/etc existiert immernoch nicht , kein Wunder!? Ich hab mal in der erstellten .log Datei nach /etc gesucht hat er nix gefunden :(

tictactux
01.11.04, 16:09
Und wenn Du nach samba.config oder smb.conf suchst ?
Was sagt 'testparm' ? (das liest die smb.conf, und zeigt auch an von wo)

kaszewski
01.11.04, 19:30
Also samba.conf wird nicht gefunden.
Zu smb.conf

/usr/local/samba/swat/help//smb.conf.5.html

testparm ? Habe ich als root in die Konsole eingegeben; Command not found.

tictactux
01.11.04, 19:58
Also testparm ist auf meinem Debian Teil der Samba-Distribution,
und im Samba-Quellcode unter ./utils/testparm.c zu finden
(zusammen mit testprns.c, smbcontrol.c, u.s.w.).

Ich habe mir das Makefile (von 3.0.0-final) angesehen,
und der Default-Installationsort für config-Dateien ist dort:
CONFIGDIR=${LIBDIR},
dürfte bei Dir /usr/local/samba/lib sein.
Wenn keine smb.conf dort ist, mußt Du sie halt selber erstellen.

Eine Lektüre des Makefile von samba hilft da weiter.

Viel Erfolg,
Wolfgang

kaszewski
01.11.04, 20:05
Also testparm ist auf meinem Debian Teil der Samba-Distribution,
und im Samba-Quellcode unter ./utils/testparm.c zu finden
(zusammen mit testprns.c, smbcontrol.c, u.s.w.).

Ich habe mir das Makefile (von 3.0.0-final) angesehen,
und der Default-Installationsort für config-Dateien ist dort:
CONFIGDIR=${LIBDIR},
dürfte bei Dir /usr/local/samba/lib sein.
Wenn keine smb.conf dort ist, mußt Du sie halt selber erstellen.

Eine Lektüre des Makefile von samba hilft da weiter.

Viel Erfolg,
Wolfgang

Dass es in /usr/local/samba/lib sein soll habe ich auch schon irgendwo gelesen , ist es aber nicht. Ok, ich werde eine neue erstellen , hat das denn irgendwas damit zu tun , dass smbpasswd bei mir nicht funktioniert (hat) ?

tictactux
01.11.04, 20:15
Dass es in /usr/local/samba/lib sein soll habe ich auch schon irgendwo gelesen , ist es aber nicht. Ok, ich werde eine neue erstellen , hat das denn irgendwas damit zu tun , dass smbpasswd bei mir nicht funktioniert (hat) ?
also ohne gültige smb.conf -denke ich- starten smbd und nmbd nicht,
und somit wird auch smbpasswd nicht funktionieren.

kaszewski
01.11.04, 20:33
Ok , ich gebs auch , ich werde Samba nochmal ganz von vorne installieren. Bei mir nichteinmal /etc/rc.d/init.d/smb vorhanden. Was empfielst du mir; selber kompilieren oder ein Packet benutzen? Ich habe von mehreren Paketen gehoert die noetig sind , fuer Slackware habe ich aber nur samba-3.0.7-i486-1 reicht das?

tictactux
01.11.04, 22:05
Bei mir nichteinmal /etc/rc.d/init.d/smb vorhanden. Was empfielst du mir; selber kompilieren oder ein Packet benutzen?
Natürlich ist das nicht da. Wenn Du schon an der Paketverwaltung Deiner
Distribution vorbei installierst, mußt Du wirklich ALLES selber machen.

Selber kompilieren ist eine feine Sache, aber die ersten Schritte mit
Serveranwendungen zu machen ist nicht empfehlenswert.

[ich verweise an dieser Stelle ganz vorsichtig auf den Inhalt des Dokumentes
in Deiner Signatur. Ja, ich bin fies :ugly: ]

Also nimm die 3.0.7. Ich wüßte nichts was dagegen spricht.
(ich habe das Standard-Samba von Debian sarge, 3.0.6, bei mehreren
Kunden im Produktionseinsatz, und kann gut schlafen ;) )

Viel Spaß,
Wolfgang

kaszewski
02.11.04, 13:38
Ne ich hab da nicht vorbei installiert. Also ich dachte mit /etc/rc.d/init.d/smb start aktiviere ich Samba , weil ich dass in der Installation deaktiviert habe , weil ich nicht sicher war ob ich es spaeter brauche. ALso in der Auswahl der Dienste (MySQL , sendmail etc.) . Oder ist das falsch ?

EDIT:

Was soll deine Anspielung auf meine SIgnatur; hat das irgendwas damit zu tun dass ich gegen SuSe bin? Willst du irgendwie darauf anspielen , dass ich nicht kompilieren kann oder so ?

tictactux
02.11.04, 15:20
Ne ich hab da nicht vorbei installiert. Also ich dachte mit /etc/rc.d/init.d/smb start aktiviere ich Samba , weil ich dass in der Installation deaktiviert habe , weil ich nicht sicher war ob ich es spaeter brauche. ALso in der Auswahl der Dienste (MySQL , sendmail etc.) . Oder ist das falsch ?

Mit "an der Distribution vorbei" meine ich die Installation einer Software
außerhalb des Paketmanagements und Systemverzeichnisstruktur der
verwendeten Distribution. Dafür ist die /usr/local-Verzeichnisstruktur
unter Linux z.B. auch gedacht. Andere Unixe sind da noch radikaler
(*BSD).

Wenn Du ein solches Paket unter Linux von den init-Scripten der Distribution
verwalten lassen willst (also aus /etc/rc* oder /etc/init.d/*) mußt Du
das halt einrichten. Unter dem angegeben /etc/rc.d/init.d/smb wird wohl
Slackware sein Samba-Paket starten. Deswegen würde ich
die init-Datei des selbsterstellten Samba unter einem anderen Namen
da einrichten, um Konflikten vorzubeugen (gerade wenn/weil Du überlegst,
auch/oder das Slackware-Samba zu installieren).


Was soll deine Anspielung auf meine SIgnatur; hat das irgendwas damit zu tun dass ich gegen SuSe bin? Willst du irgendwie darauf anspielen , dass ich nicht kompilieren kann oder so ?
Hmm, sorry, das war eher als ;) gemeint.
Ein wichtiger Kritikpunkt in dem zitierten Dokument an SuSE-Linux ist in
meiner Lesung, daß ein zu starkes Cachieren/Abstrahieren von elementarer
Funktionalität Anwender davon abhält, ein einigermaßen korrektes Verständnis
der Abläufe in seinem Systems zu erlangen, wodurch ein
systematisch/ analytisches Vorgehen zur Erkennung und Lösung von
Problemen zumindest behindert wird.

Wenn Du nun schreibst:

Bei mir nichteinmal /etc/rc.d/init.d/smb vorhanden
sollte, nach dem bereits hier besprochenen, die Gegenfrage lauten:
woher auch ?

Und nein, ich wollte nicht darauf anspielen, Du könntest
nicht kompilieren.

Viel Erfolg noch,
wolfgang

kaszewski
04.11.04, 16:42
Hi , danke .

Das hab ich schonmal geschafft , also mit der smb.conf , smbpasswd usw. (mit dem Slack-Packet). Nur habe ich jetzt ein weiteres Problem , und zwar mit dem Startskript , was man in /etc/rc.d/init.d/smb erstellen soll. Ich hab es soweit erstellt , doch das Problem liegt bei den Symbolischen-Links; die kann ich nicht erstellen. Das liegt wiederum daran , dass im Skript die Rede von


# Source function library.
. /etc/rc.d/init.d/functions

# Source networking configuration.
. /etc/sysconfig/network

ist. DIese zwei Ordner sind bei mir nicht vorhanden. Ist das normal , musss ich die selbst erstellen?

P.S Falls hier nicht mehr so viele (kann ich mir vorstellen) reingucken werde , werde ich noch einen Thread fuer dieses Thema erstellen.

tictactux
04.11.04, 17:23
Hi , danke .
DIese zwei Ordner sind bei mir nicht vorhanden. Ist das normal , musss ich die selbst erstellen?

Du benutzt Slackware. Das verwendet meines Wissens kein SystemV-Init
(das zitierte Samba-Init-Skript ist auf ein solches zugeschnitten),
sondern ein rc-System (ähnlich wie z.B. FreeBSD),mit /etc/rc*-Skripten.

Deshalb mußt Du die Dokumentation von Slackware bemühen, um
das andersartige Boot-Konzept zu verstehen. Ich kann leider keine
konkreten man-pages nennen, vielleicht hilft 'apropos boot'.

Tipp: entpacke das Slackware-Sambapaket in einem temporären
Verzeichnis, und orientiere dich an der dort enthaltenen smb.conf,
und den /etc/rc*-Skripten.

Gruss,
Wolfgang

kaszewski
04.11.04, 19:37
Also ich glaube /etc/rc.d .

Da hbe ich die Datei rc.samba gefunden , da steht:


# To make Samba start automatically at boot, make this
# file executable: chmod 755 /etc/rc.d/rc.samba

Das heisst aber nicht , dass wenn ich chmod 755 /etc/rc.d/rc.samba mache , dass ich dann dieses startskript und die symbloschen links machen muss? Ich habe auch mal im Internet gesucht , nach SLackware+Samba , habe bisher nicht so viel gefunden.

tictactux
04.11.04, 20:03
Also ich glaube /etc/rc.d .
Da hbe ich die Datei rc.samba gefunden , da steht:

Das heisst aber nicht , dass wenn ich chmod 755 /etc/rc.d/rc.samba mache , dass ich dann dieses startskript und die symbloschen links machen muss? Ich habe auch mal im Internet gesucht , nach SLackware+Samba , habe bisher nicht so viel gefunden.
Nochmal: diese Links haben bei Slackware nichts zu suchen. Die Runlevel
werden nicht über /etc/rc[0-6S].d -Links verwaltet (vielleicht: man init ?)
Du solltest ein zentrales rc-Script finden (in /etc ?) welches die anderen
aufruft.
Ich schau mal nach, ob ich noch eine Slack-LiveCD finde.

------Nachtrag:
OK, ich habe eine Slack 9.1-LiveCD gefunden.
Das zentrale rc-Script heißt /etc/rc.d/rc.M (s.auch /etc/inittab).
Infos liefert, wie bereits vermutet: man init.

Das rc.samba wird von rc.M aufgerufen. Wenn Du es Dir
einfacher machen möchtest, kopiere das rc.samba von Slack
nach /etc/rc.d/rc.samba, setze Perms auf 0775,
und passe die Pfade dort so an, daß sie auf Dein samba in
/usr/local/... verweisen.
Ansonsten kannst Du es in rc.local aufrufen.

Ich sehe zwar, daß Slack über /etc/rc.d/sysvinit eine Emulation
für System-V-init bietet, aber das würde ich nicht nehmen.
(wenn Slackware, dann auf Slackware-Art).

Viel Erfolg,
Wolfgang

kaszewski
06.11.04, 21:52
Danke fuer deine Hilfe , habe soweit alles hinbekommen mit Swat etc. !

tictactux
06.11.04, 22:53
Danke fuer deine Hilfe , habe soweit alles hinbekommen mit Swat etc. !
Dazu ein aufrichtiger Glückwunsch!

kaszewski
07.11.04, 13:51
Danke,

habe da aber nochmal eine Frage. Und zwar bin ich jetzt schon soweit , dass ich mit LinNeighborhood auf Dateien eins WIndows Rechners in meinem Netzwerk zugreifen kann. Aber irgendwie krieg ich es nicht hin , dass jemand mit WIndows Rechner auf mein PC zugreifen kann bzw. ihn ueberhaupt sieht. Ich habe in meine smb.conf das eingetragen


[mp3]
comment = Musik
browseable = yes
path = /home/kasz/Music
writeable = yes
public = yes
guest only = no
directory mask = 777
create mask = 666

Und habe auch chmod 777 /home/kasz/Music ausgefuert , was muss ich noch tun damit mich jemand ubers Netzwek sehen kann?

EDIT:

Sorry , ahbe nicht gesucht bevor ich gepostet habe , ich habe das was gefunden , werde es erstmal ausprobieren. SORRY.

EDIT2:

Also , es hat mir nichts gebracht. Ich hatte naemlich vergessen die Befehle

samba condrestart
samba status

nach der Bearbeitung von smb.conf zu setzen. DIe funktionieren aber bei mir nicht , wegen SLackware? Muss ich wieder was anders machen? Also mit /etc/rc.d/rc.samba hat es nicht geklappt , wenn ich es damit pobiere kommt zwar keine Fehlermeldung aber er aktiviert nur die Daemonen von neu.

Was kann ich noch tun?

Und noch etwas: Ist es normal das ein WIndows Rechner die IP Addresse zum Swat (noch) nicht aufrufen kann? - Denn es ist so , wenn jemand die IP Addresse mit Port; also

http://127.0.0.1:901

aufruft kommt: Seite nicht gefunden!

Wenn er sie aber ohne Port; also http://127.0.0.1 aufruft kommt ein Login , jedoch schlaegt jeder Versuch sich einzuloggen fehl, wir haben es versucht als sein eigener Benutzer und als root von meinem Linux Rechner.

kaszewski
07.11.04, 21:20
Ich kann noch etwas nachliefern , und zwar wollte ich mit smbclient -L meineip gucken , ob das mit der Ordnerfreigabe geklappt hat. Jedoch kommt danach die Aufforderung fuer ein Passwort... Welches muss ich da eingeben? Mit meinem User oder Root Passwort hat es nicht funktioniert.

tictactux
07.11.04, 22:02
Du hast nicht erwähnt, wie Dein Server konfiguriert ist (security = user oder
share). Abhängig davon mußt Du mit smbpasswd User-Accounts anlegen.
Ich muß schon sagen, daß diese Frage mich wundert.

Diese und viele andere wissenswerte Dinge sind in der umfangreichen
Samba-Dokumentation (die Samba-HOWTO-Collection, das im Quellpaket von
Samba enthaltenen O'Reilly-Buch "Using Samba" , u.s.w) sehr gut beschrieben.
Ebenso in der man-Page zu smb.conf.



samba condrestart

Das sagt mir nichts.
- Was ist 'samba' (etwa /etc/rc.d/rc.samba, oder ein Link darauf ?)
- 'condrestart' kenne ich auch nicht als Startskript-Option
(nur start,stop, status,restart), aber ich habe wenig Erfahrung
mit Slackware. Woher stammt diese Anleitung ?

kaszewski
10.11.04, 19:16
Erstmall sorry , dass ich so spaet antworte.

DIe Anleitung stammt aus diesem Forum hier (die wo man immer drauf verwiesen wird wenn man bloede Fragen stellt :D )

Irgendwie komm ich nicht klar mit dem Netzwek und ich versuche mich auch wirklich nicht bloed anzustellen. Ich habe auch schon etwas rumgesucht und wie du gesagt hast in den Doks nachgeschaut , nur leider kann ich das da nicht 100% verstehen , weil Englisch.

ALso , ich bin wie gesagt so weit , dass ich einen anderen (Windows) Rechner uebers Netzwek sehen kann; aber kein WIndows Rechenr kann mich sehen.

Ich habe mal , wie es in einer der Doks stand


pdbedit -L

ausgefuert , und es ergab sich


samba:1003:samba

Das heisst also , dass nur der Bentzer Samba ind er Database vorhanden ist :confused:

Ich habe (weil es in einem adneren HowTo) empfohlen wurde einen extra User namens 'Samba' in meinem System angemeldet. Ist das der? Muss ich mich mit ihm einloggen? Was hat es fuer einen VOrteil gegenueber Root oder meinen normalen User?

Wie egsagt tut mir Leid , wenn ich mit meinen Fragen quaele , aber ich habe irgendwie keine Ahnung was ich noch tun soll und ich habe wirklich gesucht und gelesen.


RDIT:

Hier vielleicht nochmal meine smb.conf


# Samba config file created using SWAT
# from 127.0.0.1 (127.0.0.1)
# Date: 2004/11/08 16:56:57

# Global parameters
[global]
workgroup = ALPHACENTAURI # GRUPA ROBOCZA
netbios name = MONKEYSTORE #AZWA KOMPUTERA WIDZIANA PRZEZ
guest account = kasz # nazwa systemowego usera
log file = /var/log/samba.%m
max log size = 50
comment = Home Directories
admin users = kasz
read only = No
hosts allow = 192.168.1.151, #z, adres, sieci, kt_ra, ma, pra

[printers]
comment = All Printers
path = /var/spool/samba
read only = Yes
printable = Yes
browseable = No

[mp3]
comment = Music
path = /home/kasz/Music
read only = Yes
create mask = 0666
directory mask = 0777
guest ok = Yes

Danke schonmal.