Samba a sdílení souborů (nejen) s Windows

samba-logoSdílet soubory lze i v heterogenní síti, tedy mezi počítači s Linuxem a Windows. V Linuxu se k tomu používá Samba. Její konfiguraci a problémy s tím spojené si ukážeme v tomto návodu. Návod je primárně zaměřen na openSUSE 11.1 s KDE 4.x.

Nejdříve si spustíme řídící středisko YaST a podíváme se na to, jak máme nastavenou síť. V sekci Síťová zařízení klikněte na položku Síť.

samba

Přejděte na kartu Jméno počítače/DNS, kde si případně nastavte a zvláště si zapamatujte Jméno domény.

samba

Po uložení případných změn přejděte v YaSTu do sekce Síťové služby a zvolte položku Samba server.

samba

Nemáte-li, budou vám nabídnuty k instalaci balíčky samba a samba-client. Samozřejmě je musíte dát Instalovat.

samba

Po instalaci potřebných balíčků, spouštíte-li Sambu poprvé, vás přivítá její instalační průvodce prvním krokem, ve kterém zadáte Pracovní skupinu nebo jméno domény, ano, je to ten název, co máte v nastavení sítě, o kterém jsem vám říkal, že si ho máte zapamatovat. Po jeho zadání kliknete na tlačítko Další.

samba

V druhém kroku ponechte volbu PDC (Primary Domain Controller) a opět klikněte na tlačítko Další.

samba

V následujícím konfiguračním okně na kartě Spustit nastavte spuštění služby Během zavádění systému a dále zvolte, že chcete Otevřít port na firewallu.

samba

Přejděte na kartu Sdílení, kde Povolíte uživatelům sdílet jejich adresáře.

samba

Nakonec přejdete na kartu Identita, kde zkontrolujete zápis již zmiňovaného názvu pracovní skupiny nebo jméno domény a to, že je doménový kontroler nastaven na Primární (PDC) a pak vše potvrdíte tlačítkem OK.

samba

Může se stát, že na vás vyskočí požadavek na zadání hesla administrátora Samby. Tedy zadejte heslo superuživatele root a potvrďte OK.

samba

Přejděte ve správci souborů (např. Dolphin nebo Konqueror) do umístění, kde se nalézá složka, kterou chcete sdílet. Klikněte na ni pravým tlačítkem, zvolte v nabídce položku Vlastnosti a pak přejděte na kartu Sdílení. Tam klikněte na tlačítko Nastavit sdílení souborů.

samba

Povolíme Sdílení souborů v lokální síti, mohlo by nám samozřejmě stačit Jednoduché sdílení. Dále klikneme na tlačítko Povolení uživatelé.

samba

Zde necháme Povolit všem uživatelům sdílet složky a potvrdíme to tlačítkem OK.

samba

Teď již potvrdíme i předchozí dialog a můžeme nastavit sdílení. Ve vlastnostech složky na kartě Sdílet zaklikneme volbu Sdíleno a potvrdíme tlačítkem OK a mělo by být hotovo.

samba

Mělo by být hotovo, ale pakliže máte openSUSE 11.1 s KDE 4.x, vyskočí na vás následující ošklivá hláška:

samba

To by taky bylo, aby v openSUSE něco fungovalo bez problémů (viz např. současné problémy s Bluetooth). Jedná se o bug, a tento je tím nepříjemnější, že tato chybová hláška je zavádějící. Samozřejmě, že soubor /usr/bin/fileshareset má oprávnění nastavená správně! Problém je zcela někde jinde, a to v konfiguračním souboru /etc/security/fileshare.conf. Obejití bugu je nicméně relativně jednoduché. Spusťte si konzoli a zadejte příkaz (tento příkaz, abyste ho nemuseli datlovat, si můžete odsud zkopírovat do schránky a do konzole ho vložíte klávesovou zkratkou Shift+Insert nebo pomocí klávesové zkratky Ctrl+Shift+V):

cat /etc/security/fileshare.conf

Ve výpisu by se měl objevit řádek RESTRICT=no a ten je právě špatně.

Nyní se tedy už musíte přihlásit příkazem su jako root, zadat heslo, a pak zadat další příkaz, který zní:

echo RESTRICT=yes > /etc/security/fileshare.conf

Když teď znovu použijete příkaz cat /etc/security/fileshare.conf, uvidíte, že soubor obsahuje již jen řádek RESTRICT=yes. Kompletní výpis z konzole je zobrazen na dalším screenshotu.

samba

Vrátíme se do vlastností složky, kterou chceme sdílet, a opět klikneme na tlačítko Nastavit sdílení souborů.

samba

Teď již musíme použít volbu Pokročilé sdílení a opět, jako v prvním případě, klikneme na tlačítko Povolení uživatelé.

samba

Zde zvolíme, že Pouze uživatelé z dané skupiny mohou sdílet adresáře, a pak také celkem logicky musíme kliknout na tlačítko Zvolit skupinu.

samba

Samozřejmě bychom asi chtěli povolit sdílení všem uživatelům jako v prvním případě. To uděláme tak, že v tomto bohužel nepochopitelně do češtiny nepřeloženém dialogu zvolíme v roletce skupinu uživatelů users a potvrdíme tlačítkem OK.

samba

V následujícím dialogu ještě zvolíme, že Členové skupiny mohou sdílet adresáře bez zadání rootovského hesla a opět potvrdíme tlačítkem OK.

samba

Nyní se musíme okamžitě vrátit do nastavení uživatelů kliknutím na tlačítko Povolení uživatelé.

samba

Zde přesuneme přepínač na Povolit všem uživatelům sdílet složky a znovu dáme OK.

samba

No, a teď již po dalším potvrzení můžeme konečně přistoupit k Sdílení této složky v místní síti. Zvolíme, zda chceme Sdílet pomocí NFS (Linux/UNIX) nebo Sdílet pomocí Samby (Microsoft Windows), případně obojí. Samozřejmě opět potvrdíme nastavení sdílení tlačítkem OK.

samba

Ani teď se ještě z Windows připojit nepůjde. Musíme ještě nastavit firewall. Zvolíme si v YaSTu sekci Bezpečnost a uživatelé a tam pak položku Firewall. V něm přejdeme do sekce Povolené služby. V povolených službách bude pouze Samba Server, což nám vytvořila volba Otevřít port na firewallu v okně Konfigurace Samby. Musíme tam z roletky přidat ještě Službu k povolení a to Samba Client a také Netbios Server.

samba

Takto vypadá obsah sdílené složky ve správci souborů Dolphin:

samba

A takto již vypadá nasdílená složka otevřená v Průzkumníku Windows XP. Vidíte, že např. došlo i k nasdílení tiskáren:

samba

Poznámka: počítač se systémem Windows samozřejmě nemusí být nutně ve stejné skupině (Workgroup).

Takže hodně štěstí s nastavováním Samby, firewallu a se sdílením.

Na přání přikládám soubor /etc/samba/smb.conf

-------------------------------------------------------
http://audiolinux.czweb.org/

Autor: Aidamos

Komentáře

Ilfirin odpověděl -

Čumím jak umím a tiše tleskám. Naprosto vyčerpávající popis.

randy odpověděl -

wau. super navod. len cumim, ake je v yaste na to pekne klikatko. do dnesneho dna som to sice nepotreboval, ale niekomu sa to isto zide ;))

ra100 odpověděl -

preco to este nie je na wiki? :-)
sup tam s nim

Aidamos odpověděl -

Páč jsem to teprve dneska na základě dotazu ve fóru sesmolil, hledání řešení i s psaním návodu mi zabralo čas zhruba od 11:30 do 20:00 téměř bez přestávky. Navíc přiznávám se bez mučení, že ani Wiki nějak neznám, vím tedy, že něco takového existuje, ale ještě jsem neměl čas se tím zabývat. Tak možná začnu. Ale píšu už sem a pak hlavně na svoje stránky http://audiolinux.czweb.org/. Já vím, škudlím si to bokem :-)

ra100 odpověděl -

to Aidamos: ak ti to nevadi, tak by som to hodil na wiki.

Aidamos odpověděl -

Klidně to tam hoď. Open-source, voe, ne?

Ilfirin odpověděl -

Autorský zákon zakazuje rozšiřování textu napsaného konkrétním autorem bez jeho souhlasu ;-).

Aidamos odpověděl -

Tak já to příště vydám s poznámkou, že je to vydáno pod licencí GPL :-)

Aidamos odpověděl -

To je fuk, prostě pod nějakou svobodnou. Víceméně to byla jen nadsázka... ale když tak o tom uvažuju, proč by to nemohla být CC? Koukal jsem na ty stránky. Moc se mi líbí ten konfigurátor licence :-)

nesnera odpověděl -

má zato, že na "pouhé" čtení dat z nasdíleného windows adresáře Samba server nepotřebuji. Příslušný zdroj otevřu nějakým file managerem (Krusader, Konqueror, Dolphin..), kde do umístění zadám smb://nazevUctu@nazevPocitace.
A když už píšu. Při načítání z Widlí jsem měl problémy u položek s diakritikou v názvu a přenosovou rychlost mám hanebně nízkou (rozhodně mi vychází lépe to hodit na flash.. :-( ). Máte někdo stejnou zkušenost?
Jinak moc pěkné pro wiki ;?)

Aidamos odpověděl -

Není to Sama, ale Samba (překlep?) a jak můžeš vidět z posledních dvou obrázků, problémy s diakritikou nemám, takže nevím.

nesnera odpověděl -

baže to je překlep. Zkusím opravit, ale asi to nepůjde, když už je na to reakce.
Obrázků jsem si všim, ale to je opačný směr, než jsem měl na mysli. Ve našem firemním prostředí je drtivá většina desktopů a serverů na Widlích => sosám či ukládám na widlí server.. Na svůj compl nemám potřebu někoho pouštět, byť Tvůj návod je právě o tom ;?)

ra100 odpověděl -

Navod pridany na wiki.

Aidamos odpověděl -

Bezva. Koukám, že jsi vypreparoval mou pichlavou poznámku (která se na wiki samořejmě nehodí) a vypadlo Ti také "u" v textu "skupinu uživatelů sers a potvrdíme". Už jsem to opravil.

kriskami odpověděl -

Super článek. Nechce se ti přihodit ještě /etc/samba/smb.conf, nemám na serveru Xka a ty poslední kroky tudíž neprovedu, rád bych porovnal. Díky

Aidamos odpověděl -

Je tam :-)

kriskami odpověděl -

dnes už se mi do toho nechce, zítra to porovnám