Samba

Samba är ett program som gör att Windows maskiner upplever Linux maskinen (och andra Unix maskiner, OS/2 och Novell) som en NT-server, och kan logga in i en "NT domain" och mappa upp diskar/printrar som är definierade på Linux maskinen.

Innehållsförteckning

Kompilera
Konfigurera Samba
Bibliotekstrukturen
Konfigurations filen (smb.conf)
Logon skript
Användare
Starta Samba
Konfigurering av Windows95/98

Kompilera

Om du får kompileringsfel så kan du prova att ta bort -O flaggan från raden som börjar med CFLAGS i Makefile

Konfigurera Samba

Bibliotekstrukturen

Bibliotekstrukturen ser ut så hör under /usr/local/samba:
BibliotekFunktion
binProgramfiler. Både server, status och klientprogram
libKonfigurationsfiler
manManual sidor
netlogonFinns inte default, men skapa den, jag använder det för att lägga logon skripten i
privateKänsliga filer, password ..., som endast root(servern) skall kunna läsa
swatEtt WWW baserat konfigurationsprogram, inte riktigt heltäckande ännu.
varlogfiler och andra temporära filer

Konfigurations filen (smb.conf)

Så här ser min konfigurations fil (den skall ligga i lib biblioteket):
[global]
# Text som står jämte maskinnamnet när du browsar nätet
   server string = Samba at dahlstr.org
   comment = Samba at dahlstr.org
# Domänen som servern tillhör
   workgroup = DAHLSTR
# Performans parameter
   max xmit = 32767
# Tillåt långa namn
   mangled names = no
# Om inte resursen använs, koppla ner den efter 30 minuter.
   dead time = 30
# Debugnivå
   debug level = 0
# Skall den vara domain logon server?
   domain logons = yes
# Säkerhetnivå
   security = USER
# För att få svenska tecken
   character set = iso8859-1
   valid chars = 206:217 204:216 224:231 32
# Skript som körs när man loggar in, skall finnas i NETLOGON resursen
   logon script = logon.bat

[homes]
# Hemkataloger
# Skall inte kunna browsas
   browseable = no
# Ingen "guest" användare
   guest ok = no
# Skall kunna både läsa och skriva
   read only = no
# Behåll stora och små bokstäver i filnamn
   preserve case = yes
   short preserve case = yes
# Skilj inte mellan stora och små bokstäver i filnamn
   case sensitive = no

[netlogon]
# Resurse för att kunna köra logon skript
   comment = Netlogon
# Var ligger logon skripten
   path = /usr/local/samba/netlogon
# Alla skall kunna mappa denna resurs
   public = yes
# Endast läsbar
   writable = no

[tmp]
# Resurs för att kunna lägga temporära filer, alla kan läsa och skriva hit
   comment = temp area
   path = /tmp
   public = yes
   writable = yes
   printable = no

Logon skript

Det kan vara bra att när en användare loggar in så körs en .bat fil som mappar upp dom resurser som användaren skall ha.

Detta förutsätter att resursen netlogon är definierad och att "logon script" är definerad i smb.conf.

Så här ser min .bat fil ut, den mappar upp min hem katalog på H: och /tmp på T:

@echo off
net use h: \\gw\homes
net use t: \\gw\tmp

Användare

Samba använder den userdatabase som Linux använder, detta innebär att man måste skapa användaren i Linux först.

Starta Samba

Det är 2 program som skall startas:
/usr/local/samba/bin/nmbd -D
/usr/local/samba/bin/smbd -D
Kontrollera att dom har startat och titta i logfilerna om du får någon felkod: /usr/local/samba/var/log.nmb och /usr/local/samba/var/log.smb.

Konfigurering av Windows95/98

Klicka med höger musknapp på "Network Neighborhood" iconen på skrivbordet och fyll i dialogrutorna enligt nedanstående bilder:
Du behöver följande 3 nätverks komponenter för att koppla upp dig mot en Samba server:
  • Client for Microsoft Networks
  • Nätverkskort
  • TCP/IP
Bry dig inte om dom andra 2 komponenterna som syns i bilden det är inga standard komponenter och behövs inte!

Se till så att det står "Client for Microsoft Networks" i "Primary Network Logon:" rutan.

Denna bilden kommer du till om du markerar "Client for Microsoft Networks" och klicka på Properties:
  • Klicka i "Log on to Windows NT domain".
  • Skriv in domännamnet, som du definierade i smb.conf, i rutan "Windows NT domain"
  • Klicka i "Quick logon", eftersom logon skriptet fixar mappningarna så behöver inte windows göra det.
  • Klicka på Ok för att stänga.
Denna fliken kommer du till genom att klicka på "Identification" fliken högst up.
  • Skriv in vad du vill kalla din lokal dator i rutan "Computer name".
  • Skriv in den NT domänen du definierade i smb.conf i rutan "Workgroup".
  • Skriv någon lämplig beskrivning på din lokala dator i rutan "Computer Description"
Klicka på Ok knappen när du är färdig och låt datorn boota om, nu borde du kunna logga in på domänen som du har definierat upp i smb.conf på Linux maskinen.
19990723