1 Ismerkedés a Sambával
Ha az olvasó tipikus rendszergazda, akkor tudhatja ,mit jelent mindenesnek lenni. Nap
mint nap azzal telik a munkaideje, hogy vég néklül bajlódik a hardvere inkompatibilitási
problémáival, a rendszerek elavulásával ,az adatok biztonsági mentésével és a felhaszná-
lók aggódó seregével. Ezért némi fenntartással fogadhatja azt, hogy újabb programmal
bõvítse az amúgy is sokrétû eszköztárát, amelynek a karbantartásáért felelõsséggel tarto-
zik. Ha viszont úgy dönt, hogy csökkenteni kívánja a számítástechnikai környezeténe
bonyolultságát,valamint a programok zökkenõmentes futtatásához szükséges feladatait,
akkor talán pont a Samba lehet az, amire szüksége van.
Egy kis magyarázat: e könyv egyik írójána rendszergazdaként az volt a feladata, hogy
70 UNIX fejlesztõ munkájáról gondoskodjon, akik 5 Unix kiszolgálón osztoztak. A szom-
szédjának 20 Windows 3.1 felhasználó és 5 OS/2 és Windows NT kiszolgáló volt a gond-
jaira bízva. Errõl az emberrõl igazán elmondható,hogy mindenes volt. Amikor kilépett a
cégtõl, és az összes gépet özös hálózatba ellett kapcsolni, a Samba jelentette a megol-
dást. A szerzõnk gyorsan lecserélte a Windows NT és az OS/2 kiszolgálókat egy Sambát
futtató Unix iszolgálóra, és a cég fejlesztõi számára PC-ket vásárolt. Ez utóbbi miatt azon-
ban nem vett föl egy új, PC-s rendszergazdát; a rendszergazda most öt elosztott PC helyett
egyetlen, központi Unix alkalmazásból kezeli a teljes rendszert.
Ha Önnek problémái vannak a hálózatával, és biztos abban, hogy van jobb megoldás,
akkor bátran fogjon hozzá ennek a könyvne az olvasásához. Ha pedig már hallott vala-
mit a Sambáról, és szeretné tudni, miben segíthet Önnek, akkor szintén ajánlható ez a
könyv. Mindenekelõtt azért, mert megismerteti az olvasóival a Samba használatát és a
képességeit. Rövid idõn belül Unix szolgáltatásokkal tudja ellátni az összes Windows
alapú gépét anélkül, hogy különösebben sok pénzt vagy idõt kellene áldoznia erre. Csábí-
tóan hangzik? Nos, ha igen a válasz, akkor vágjunk is bele!

Mi a Samba?

A Samba olyan Unix alkalmazások gyûjteménye, amelyek az SMB (Server Message Block
kiszolgálói üzenetblokk) protokollt használják. Számos operációs rendszer, köztük a
Windows és az OS/2 ezt az SMB protokollt használja az ügyfél–kiszolgáló típusú hálóza-
tokban. Azzal, hogy a Samba támogatja ezt a protokollt, lehetõvé teszi, hogy munkába
álljanak a Unix kiszolgáló, és ugyanazt a hálózati protokollt használják, mint amit a Micro-
soft Windows alkalmazások. Így egy Sambával felszerelt Unix gép álcázott kiszolgálóként
jelenhet meg az Ön Microsoft hálózatában, és a következõ szolgáltatásokat nyújthatja:

 

12 | SAMBA
A Samba Andrew Tridgell szellemi gyermeke, aki jelenleg a Samba fejlesztõi csoport veze-
tõje az ausztráliai Canberrában. A projekt 1991-ben indult el, amikor Andrew a helyi háló-
zatához olyan fájlkiszolgáló programot készített, ami a Digital Pathworks bármelyik DEC
protokollját támogatta. Abban az idõben azonban nem tudhatta,hogy a késõbbiek során
ebbõl alakulk ki az SMB protokoll. Néhány évvel ezután bõvítette a testre szabott kiszolgá-
lóját, és SMB Server néven terjeszteni kezdte az interneten a termékét. Andrew azonban
nem tarthatta meg ezt a nevet – idõközben ugyanis már egy másik cég termékének neve
lett – ,ezért megpróbálkozott az alábbi Unix átnevezési kísérlettel:

grep -i ’s. *m. *b’ /usr/dict/words

Az erre érkezett válasz ez volt:

salmonberry
samba
sawtimber
scrable

A legjobban a ,,Samba ” név tetszett..
Jelenleg a Samba csomag mûködése két Unix démon körül forog, amelyek megosztott
erõforrásokat – vagy más szóval megosztásokat – kínálnak a hálózatba kapcsolódó SMB
ügyfeleknek. (A megosztásokat helyenként szolgáltatásoknak is nevezik.) A két démon:

smbd

Ez a démon lehetõvé teszi fájlok és nyomtatók megosztását SMB hálózatban, és az
SMB ügyfelek azonosságának és jogosultságának vizsgálatát.

nmbd

Ez a démon a WINS (Windows Internet Name Service, Windows internet név iszol-
gáló) kezelésérõl gondoskodik, és segítséget nyújt a tallózásban.
A Sambát jelenleg egy önkéntesekbõl álló csoport tartja karban és bõvíti Andrew Tridgell
aktív felügyelete alatt. A Linux operációs rendszerhez hasonlóan a Sambát is nyitott forrá-
sú szoftvernek (OSS) tekintik a szerzõi, és a GNU General Public License (GPL)szabályai
szerint terjesztik. A Samba kifejlesztését kezdetektõl fogva részben az Ausztrál Nemzeti
Egyetem támogatja, ahol Andrew Tridgell megszerezte a Ph.D. doktori címét. Emellett
bizonyos fejlesztéseket független cégek is támogattak, mint például a Whistle és az SGI. A
Sambának jól jött az a törekvés, hogy mind a kereskedelmi, mind a civil szervezetek
készek anyagilag is segíteni a nyílt forráskódú programok kifejlesztését.

 

1.FEJEZET.ISMERKEDÉS A SAMBÁVAL | 13

A Microsoft is hozzájárult a fejlesztéshez anyagilag azzal, hogy fel kínálta a saját SMB
definícióját és az internetes nyelvet ,,beszélõ ” közös internetes fájlrendszerét (Common
Internet File System, CIFS), mint nyilvános RFC-t (Request for Comments), vagyis a szab-
ványos dokumentációját. A CIFS protokoll nem más, mint az SMB protokoll jövõbeli ver-
zióinak Microsofttól származó átnevezése, amelyet a Windows termékeiben fognak hasz-
nálni – ezért ez a két fogalom, az SMB és a CIFS felváltva szerepel ebben a könyvben is,
vagy gyakran olvasható egymás mellett (,,SMB/CIFS ”alakban) a protokoll neveként.

Mit nyújthat számunkra a Samba?

Amint az elõzõekbõl kitûnt, a Samba a Windows és a Unix gépek egymás mellett létezését
segíti ugyanazon a hálózaton. Emellett különleges okai is lehetnek, hogy miért szeretnénk
Samba kiszolgálót telepíteni a hálózatunkra:

Tegyünk egy képzeletbeli sétát, hogy lássuk, miként mûködik a Samba. Tegyük fel,hogy
alapvetõen a következõ hálózati konfigurációval dolgozunk: van egy Sambát értõ Unix
gépünk, amelyhez a hydra nevet rendeljük, és van két Windows ügyfelünk, melyek a
phoenix illetve a chimaera nevet kapták, õ helyi hálózatban (LAN) vanna össze kötve.
Tételezzük fel továbbá, hogy a hydra géphez hozzá van kapcsolva egy lp nevû helyi
tintasugaras nyomtató, továbbá egy network nevû megosztott lemez, és mindkét eszköz-
höz a másik két gép is hozzáférhet. A hálózati elrendezést az 1.1.ábra szemlélteti.


1.1.ábra.Samba kiszolgálóra épülõ egyszerû hálózat

 

14 | SAMBA

Ebben a hálózatban az összes számítógép ugyanannak a munkacsoportnak a része.A
munkacsoport egyszerûen egy névvel azonosított tetszõleges gépcsoport, amelyben a
tagszámítógépek és azok erõforrásai SMB hálózaton keresztül kapcsolódnak egymáshoz.
A hálózatban tetszõleges idõben különbözõ munkacsoportok létezhetnek, de a mi alap-
vetõ hálózati példánkban csak egyetlen, SIMPLE nevû munkacsoport található.

Lemezszolgáltatások megosztása

Ha mindent jól állítottunk be, akkor a phoenix gép Asztalán a Network Neighborhood
(Hálózat) ablakban látnunk kell a hydra nevû Samba kiszolgálót. Az 1.2. ábrán a phoenix
gépnek ez az ablaka látható, amelyben valóban fel van sorolva a SIMPLE munkacsoport-
hoz tartozó összes számítógép, köztük a hydra is. Figyeljük meg, hogy a lista elején az
Entire Network (Teljes hálózat) tétel áll. Amint elõbb említettük, egy SMB hálózatba bár-
mely idõben egynél több munkacsoport is tartozhat. Ha a felhasználó rákattint az Entire
Network ikonra, felsorolást láthat a hálózatban éppen létezõ összes munkacsoportról.


1.2.ábra.A Network Neighborhood ablak

Közelebbrõl is szemügyre vehetjük a hydra kiszolgálót, ha kétszer rákattintunk az ikonjá-
ra. Ekkor a hydra saját magával lép kapcsolatba, és bekéri megosztott erõforrásainak lis-
táját – azokat a fájl-és nyomtató-erõforrásokat, amelyekkel a gép fel van szerelve.
Esetünkben ez a kiszolgálóhoz kapcsolódó lp nyomtató és a network nevû megosztott lemez,
amint az 1.3.ábrán látható. Vegyük észre, hogy a Windows a gazdanevek megjelenítése-
kor vegyesen használ kis- és nagybetûket (Hydra). A gazdanevekben nincs jelentõsége a
kis- és nagybetûk használatának, így a különbözõ ablakokban a hydra, Hydra és a HYDRA
írásmódokkal is találkozhatunk, de mindegyik ugyanazt az egyetlen rendszert jelenti.A
Sambának öszönhetõen a Windows 98 a Unix kiszolgálót érvényes SMB kiszolgálónak
látja,és ugyanúgy férhet hozzá a network mappához, mintha egyszerûen csa egy másik
rendszermappa lenne.

 

1.FEJEZET.ISMERKEDÉS A SAMBÁVAL | 15


1.3.ábra.A hydra kiszolgálón elérhetõ megosztások a phoenix gépbõl nézve

A Windows 95/98/NT egyik népszerû képessége lehetõvé teszi, hogy a Windows Intézõ
Hálózati meghajtó csatlakoztatása parancsának választásával meghajtóazonosító betûjelet
rendeljünk egy ismert hálózati könyvtárhoz*. Miután ezt megtettük, alkalmazásaink egy
normál meghajtóbetûjellel érhetik el a mappát a hálózaton keresztül. Így ebben a mappá-
ban adatokat tárolhatunk, programokat telepíthetünk és futtathatunk, sõt még jelszóval is
megvédhetjük a nem kívánatos látogatókkal szemben. Az 1.4. ábra arra mutat példát,
miként rendelhetünk meghajtóbetûjelet egy hálózati könyvtárhoz.


1.4.ábra.Windows meghajtóbetûjel hozzárendelése hálózati meghajtóhoz


*Azt is megtehetjük, hogy az egér jobb oldali gombjával rákattintunk egy megosztott erõforrásra, majd a
menüben a Hálózati meghajtó csatlakoztatása parancsot választjuk.

 

16 | SAMBA

Vessünk egy pillantást az 1.4. ábrán látható ablak Path (Elérési út)bejegyzésére. Egy háló-
zatban lévõ gépen hasonlóképpen jeleníthetõ meg egy könyvtár úgy, hogy két fordított
törtjel (backslash) után beírjuk a hálózati gép nevét, majd egy újabb fordított törtjel után a
hálózati gép könyvtárát, amint itt látható:

\\hálózati számítógép\könyvtár

A Windows világában ez a névmegadás UNC (Universal Naming Convention) megadás-
ént ismert. Így például az 1.4. ábra párbeszédablakában a hydra kiszolgáló hálózati
könyvtárát az alábbi megadás azonosítja:


\\HYDRA\network

Ha némiképp ismerõsnek tûnik ez a névmegadás, akkor valószínûleg az URL (Uniform
Resource Locator) megadásra gondolunk, amit webes böngészõ, például a Netscape
Navigator vagy az Internet Explorer használ az internethez kapcsolódó gépe neveinek
feloldásához. Ügyeljünk arra, hogy ne keverjük össze a kétféle megadást: a webböngé-
szõk rendszerint a normál törtjelet használják a fordított törtjel helyett, továbbá az elsõ
törtjel elõtt meg kívánják az adatátviteli protokoll jelölését is (úgy mint ftp,http), valamint
utána egy kettõspontot. Az URL-eknek és az UNC-knek a valóságban semmi közük egy-
máshoz.
Miután csatlakoztattuk a hálózati meghajtót, a Windows és a programjai úgy tekintik a
hálózati könyvtárat, mintha egy merevlemezes meghajtó lenne. Ha bármely olyan alkal-
mazásunk van, amely támogatja a többfelhasználós mûködést egy hálózaton, akkor eze-
et a programokat a hálózati meghajtóra is telepíthetjük.
*Az 1.5.ábrán látható az így létre-
jött hálózati meghajtó, ami a Windows 98 ügyfél ablakában pontosan úgy jelenik meg,
mint bármely más tárolóeszköz. Figyeljük meg a G: meghajtó ikonja elõtti csõvezeték
szimbólumot! Jelzi, hogy az illetõ meghajtó valójában nem merevlemez, hanem hálózati
meghajtó.
A chimarea nevû Windows NT munkaállomásunkból nézve a Samba majdnem pon-
tosan úgy látható, mint a Windows 98-as gépbõl. Az 1.6. ábrán a Windows NT 4.0 Net-
work Neighborhood párbeszédablakában ugyanúgy jelenik meg a hydra kiszolgáló. A
Windows NT Workstation 4.0-s gépen ugyanúgy rendelhetünk betûjelet a hálózati meg-
hajtóhoz, amint azt az elõbbiekben tettük.

Nyomtató megosztása

Észrevehettük, hogy az 1.3. ábra párbeszédablakában a hydra gépen elérhetõ megosztá-
sok között az lp jelû nyomtató is megjelenik. Ez azt jelenti, hogy a Unix kiszolgálón olyan
nyomtató is található, amelyhez a munkacsoportba tartozó különbözõ SMB ügyfelek hoz-
záférhetnek. Bármely ügyfél adatokat küldhet a nyomtatóra, amelyeket a Unix kiszolgáló
nyomtatási sorba állít, és az érkezésük sorrendjében kinyomtat.

*Ne feledkezzünk meg arról,hogy számos végfelhasználói engedély tiltja egy program olyan telepítését
a hálózatra, amely lehetõvé tenné több ügyfél számára a hozzáférést. Nézzün utána a licencszerzõdés-
ben,hogy biztosak legyünk a dolgunkban.

 

1.FEJEZET.ISMERKEDÉS A SAMBÁVAL | 17


1.5. ábra. A network könyvtárhoz az ügyfél gépén a G: meghajtóbetûjel van
hozzárendelve


1.6.ábra.A hydra kiszolgálón elérhetõ megosztások (a chimarea gépbõl nézve)

Egy megosztott nyomtatónak a Windows oldali telepítése még egyszerûbb, mint egy
lemezmegosztás elkészítése. Kettõt kattintva a nyomtatóra, majd a gyártóját és a típusát
kiválasztva telepíthetjük a Windows ügyfélgépre a nyomtató illesztõprogramját. A
Windows ekkor az illetõ nyomtatóna megfelelõ formátumban tudja az információkat a
hálózati nyomtatóra küldeni, amelyet úgy érhet el, mint egy helyileg telepített nyomtatót
(a fejezet ésõbbi részében bemutatjuk ezt a mûveletet). Az 1.7. ábrán a Windows 98-as
gép Printers (Nyomtatók) ablakában látjuk a hálózati nyomtatót. Figyeljük meg, hogy a
nyomtató ikonja fölött is megjelenik a csõvezeték szimbóluma, jelezve, hogy az illetõ
nyomtató a hálózaton keresztül érhetõ el.

A dolgok a Unix oldaláról nézve

Amint korábban említettük, a Samba a Unix környezetben démonprogramok gyûjtemé-
nyeként jelenik meg. Ezeket a démonokat a Unix ps és netstat parancsaival tekinthet-
jük meg, az általuk létrehozott üzeneteket pedig egyéni debug fájlokon keresztül vagy a
Unix syslog segítségével, a beállítástól függõen. A konfigurálást a Samba egyetlen,
smb.conf nevû konfigurációs fájljában végezhetjük el. Ha ezen felül még az egyes démo-
nok mûködését is látni szeretnénk, akkor a Samba smbstatus programját kell futtatnunk,
ami szép sorjában mindent megjelenít.

 

18 | SAMBA


1.7.ábra.A hydra kiszolgálón elérhetõ hálóz ti nyomtató
(a chimarea gépbõl nézve)

Íme a mûködése:
# smbstatus

Samba version 2.0.4
Service uid gid pid machine
--------------------------------------
network davecb davecb 7470 phoenix (192.168.220.101) Sun May 16
network davecb davecb 7589 chimaera (192.168.220.102) Sun May 16
Locked files:
Pid DenyMode R/W Oplock Name
-----------------------------------------------
7589 DENY_NONE RDONLY EXCLUSIVE+BATCH /home/samba/quicken/inet/
common/system/help.bmp Sun May 16 21:23:40 1999
7470 DENY_WRITE RDONLY NONE /home/samba/word/office/
findfast.exe Sun May 16 20:51:08 1999
7589 DENY_WRITE RDONLY EXCLUSIVE+BATCH /home/samba/quicken/
lfbmp70n.dll Sun May 16 21:23:39 1999
7589 DENY_WRITE RDWR EXCLUSIVE+BATCH /home/samba/quicken/inet/
qdata/runtime.dat Sun May 16 21:23:41 1999
7470 DENY_WRITE RDONLY EXCLUSIVE+BATCH /home/samba/word/office/
osa.exe Sun May 16 20:51:09 1999
7589 DENY_WRITE RDONLY NONE /home/samba/quicken/
qversion.dll Sun May 16 21:20:33 1999
7470 DENY_WRITE RDONLY NONE /home/samba/quicken/
qversion.dll Sun May 16 20:51:11 1999
Share mode memory usage (bytes):
1043432(99%)free+4312(0%)used+832(0%)overhead = 1048576(100%)total

 

1.FEJEZET.ISMERKEDÉS A SAMBÁVAL | 19

Az eredményben három adatcsoportban jelenik meg a Samba állapota, melyek mind-
egyike ülönálló szakaszokból áll. Az elsõ szakasz azt mondja meg, hogy milyen rend-
szere kapcsolódnak a Samba kiszolgálóhoz, megadva mindegyik ügyfélgép nevét
(phoenix és chimarea és IP címét. A második szakasz felsorolja azon fájlok nevét és
állapotát, amelyek a kiszolgáló megosztásain éppen használatban vannak, beleértve
írás/olvasási állapotukat és a fájlok esetleges zárolásait is. Végül a harmadik szakasz annak
a memóriána a méretét adja meg, amelyet a Samba az általa felügyelt megosztásokhoz
aktuálisan kiosztott, beleértve azt a méretet is, amelyet a megosztások aktívan használnak,
plusz a további fejlécet. (Vegyük figyelembe, hogy ez nem ugyanaz a memóriaméret, mint
amit az smbd vagy az nmbd eljárásai teljes memóriaterületként használnak.)
Ne aggódjunk, ha most nem értenénk ezeket a statisztikákat – ahogyan elõre haladunk
a könyvben, könnyebben meg fogjuk érteni õket.