Windows megosztások elérése

Terméktámogatási adatbázis (fhassel_smb)
Következőkre vonatkozik

SuSE Linux: Verziók a következő dátum óta: 8.1

Szituáció

Szeretnénk elérni a Windows gépeken megosztott mappákat a Linux rendszerből.

Manuális eljárás

A Windows megosztásokat manuálisan csatolhatjuk a mount paranccsal. Ehhez azonban a samba-client csomagot előbb telepítenünk kell. Először is nézzük meg, mely megosztások léteznek a Windows gépen az alábbi paranccsal (rendszergazdaként):
smbclient -L netbios-név
A netbios-név helyén az adott Windowsot futtató gépen beállított NetBIOS nevet kell megadnunk (vagyis a gép nevét), ha hiba lépett fel volna az azonosítás során, akkor a felhasználó nevét is meg kell adnunk. Ez esetben a parancs így fog kinézni:
smbclient -L netbios-név -U felhasználónév
A kimeneten kapott listában láthatjuk a megosztásokat:
earth:~ # smbclient -L winmachine -U testuser
added interface ip=192.168.0.1 bcast=192.168.0.255 nmask=255.255.255.0
Password:
Anonymous login successful
Domain=[WORKGROUP] OS=[Windows 5.0] Server=[Windows 2000 LAN Manager]

        Sharename      Type      Comment
        ---------      ----      -------
        IPC$           IPC       Remote-IPC
        testshare      Disk      test-share
        ADMIN$         Disk      Remoteadmin
        C$             Disk      Standard share

        Server               Comment
        ---------            -------
        WINMACHINE

        Workgroup            Master
        ---------            -------
        WORKGROUP            WINMACHINE
A listának megfelelően a testshare mappa a winmachine gépen meg van osztva. Ennek csatolásához a mount paranccsal, létre kell hoznunk egy csatolási pontot:
mkdir -p /windows/winshare
Most már csatolhatjuk a megosztást a fájlrendszerünkhöz az alábbi paranccsal: (természetesen a számítógép és könyvtárnevet rendszerünknek megfelelően kell megadnunk):
mount -t smbfs //winmachine/testshare /windows/winshare
Ez a parancs a testshare megosztást a winmachine Windows gépről csatolja a /windows/winshare könyvtárunkhoz, ahonnét a továbbiakban a fájlokat elérhetjük.

Ha a Windows gépnél szükség van azonosításra, a parancs az alábbiak szerint módosul:

mount -t smbfs -o username=felhasználónév,password=jelszó //winmachine/testshare /windows/winshare
A user mezőbe a felhasználónevet, míg a password mezőbe a hozzá tartozó jelszót kell megadnunk.

Ahhoz, hogy a megosztás minden rendszerindításkor automatikusan csatolásra kerüljön, a megfelelő opciókat adjuk meg az /etc/fstab fájlban (egyetlen sorba írjuk):

//winmachine/testshare      /windows/winshare    smbfs
auto,gid=users,fmask=0664,dmask=0775,iocharset=iso8859-2 0 0
A példa további opciókat is tartalmaz, mint a gid=users, amely azt jelenti, hogy nem csak a root, hanem az összes Linux felhasználó is elérheti a Windows által megosztott adatokat, vagy az fmask és dmask, amely a jogosultságokat adja meg a fájlok illetve könyvtárak esetében. Az iocharset=iso8859-2 paraméterben a karakterkészletet adtuk meg. További opciókat is megjeleníthetünk a man smbmount paranccsal.

Mivel az összes rendszerben található felhasználónak olvasási joga van az /etc/fstab fájlhoz, a username és password opciókat itt nem adhatjuk meg. E helyett a credentials=/útvonal/fájlnév opcióval megadhatunk egy fájlt, amelyet úgy hoztunk létre, hogy csak a root számára legyen olvasható, és tartalmazza a felhasználóneveket valamint a jelszavakat.

A megfelelő sor az /etc/fstab fájlban ehhez hasonló lesz (megint csak egyetlen sorba kell írnunk):

//winmachine/testshare      /windows/winshare    smbfs
auto,gid=users,umask=0002,iocharset=iso8859-2,credentials=/etc/winpassword 0 0
Az /etc/winpassword jelszófájlt az alábbi tartalommal hozzuk létre:
  username = felhasználónév
  password = jelszó
most pedig állítsuk be a fájl jogosultságait, hogy csak a root tudja olvasni:
chmod 600 /etc/winpassword

Eljárás KDE esetében

A LISa (LAN Information Server - hálózati információs szerver) a KDE része, amely lehetővé teszi a Windows megosztások egyszerű elérését a Konqueror fájlkezelő és böngészőprogramon keresztül. A LISa által lehetővé válik a közös erőforrások megkeresése a hálózatban. A keresési módtól függően nem csak a Windows megosztások, hanem az FTP, HTTP, SSH és NFS szolgáltatások is megadhatók.

Először is telepítenünk kell a kdenetwork3-lisa, kdenetwork3-lan, kdebase3-samba, samba-client, és (ha szükséges) a samba csomagokat a YaST2 segítségével.

A LISa beállításához indítsuk el a KDE vezérlőközpontot és válasszuk ki a következő menüpontokat a LISa beállító varázsló elindításához:

Először is adjuk meg a keresés módját. A "Ping csomagok küldése (ICMP echo csomagok)" módszer előnye, hogy a Windows megosztásokon felül az összes hálózati szolgáltatással rendelkező számítógépet megtalálhatjuk. Annak ellenére, hogy ez nagyon megbízható, nem javasoljuk ezt módszert nagyobb hálózatokban.

A samba csomagot telepítenünk kell a "NetBIOS Broadcast üzenetek küldése az nmblookuppal" módszer használatához, mivel az nmblookup parancsra épül. Csak a Windows megosztással rendelkező gépek jelennek meg ekkor. További információkért a segítő szövegeket érdemes elolvasnunk.

Ha az első módszert választottuk, egy címtartomány lesz megszólítva ("pingelve"), amelyet a következő beviteli mezőben adhatunk meg. Adjuk meg a hálózat IP címét és hálózati maszkját. Például C osztályú magánhálózatban ez 192.168.0.0/255.255.255.0 lehet. Természetesen ezt a már meglévő követelményekhez kell igazítanunk. Ha nem tudnánk mit állítsunk be, az IP/netmaszk meghatározható az alábbi paranccsal is:

/sbin/ifconfig
Ha a LISa szolgáltatás csak Linux gépről érhető el, adjuk meg a gép IP címét és hálózati maszkját a "Megbízható IP címek" mezőben. A Linux gép IP címét az "Broadcast cím" mezőben is meg kell adnunk. A frissítési értéknek adjuk meg a 300 s alapértelmezett értéket. Az "Speciális beállítások" alatt található opciókra csak akkor van szükségünk, ha a LISa nem talál meg minden hálózaton lévő gépet. Zárjuk be a beállításablakot és fejezzük be a beállításokat, így újból a KDE vezérlőközpontban találjuk magunkat.

A beállítások mentéséhez az /etc/lisarc fájlba, nyomjuk meg az Alkalmazás gombot a vezérlőközpontban (a bal alsó sarokban), adjuk meg a rendszergazda jelszavát, majd kattintsunk az OK gombra. Most már bezárhatjuk a KDE vezérlőközpont ablakát.

Ezután indítsuk el a LISa-t a következő parancs rendszergazdaként történő kiadásával:

rclisa start
Ha azt szeretnénk hogy ez a szolgáltatás automatikusan elinduljon a következő rendszerindításkor, adjuk ki az alábbi parancsot:
insserv lisa

A Windows megosztások eléréséhez nyissuk meg a KDE Konqueror fájlkezelőt és adjuk ki meg a lan:/ címet az URL mezőben. A gépen elérhető hálózati szolgáltatások listáját fogjuk kapni. Ezek a szolgáltatások megjeleníthetők a gépnévre kattintva (smb a Windows megosztást jelöli). Ezután már elérhetjük az erőforrásokat a gépen.

További információk a LISa-val kapcsolatban az alábbi címen olvashatók: http://lisa-home.sourceforge.net

Problémák a LISa elérésekor

Ha az alábbi "Error while loading 'kio_lan'" hibaüzenetet kapjuk, amikor beírjuk a lan:/ címet, akkor hibásan frissített csomagot használunk. Ez esetben a Window gép neve az alábbi módon adható meg a Konquerorban:
smb://netbios-név
Alternatívaként telepítsük újra a kdenetwork3-lan csomagot a CD/DVD lemezről.

Kérjük vegye figyelembe, hogy a Windows megosztások csatolása kívül esik telepítési terméktámogatásunk keretein.


Kulcsszavak: WINDOWS, SMB, SMBCLIENT, LAN, LISA, KDENETWORK3, SAMBA-CLIENT, SHARE, MEGOSZTáS, ELéRéS

Kategóriák: ,

SDB-fhassel_smb, Copyright SuSE Linux AG, Nürnberg, Germany - Verzió: 03. Mar 2003
SuSE Linux AG - Utoljára frissítve: 23. Apr 2003 feladó: comp (sdb_gen 1.40.0)