navody:prirucka:sdileni_adresaru

Rozdíly

Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.

Odkaz na výstup diff

Následující verze
Předchozí verze
Poslední revizeObě strany příští revize
navody:prirucka:obsah [2007/11/28 21:47] – vytvořeno covexnavody:prirucka:sdileni_adresaru [2016/03/05 13:29] – [Sdílení adresářů pomocí serveru Samba] x-lukas
Řádek 1: Řádek 1:
 +[[obsah|Hlavní stránka]]
  
 +===== Sdílení souborů a adresářů =====
 +{{:navody:48x48:places:gnome-fs-smb.png?48 }} Sdílení souborů a adresářů je ve //Fedoře// možné různými způsoby. V této kapitole je popsané sdílení souborů přes //WebDAV//, který je rozšířením protokolu //HTTP//. Hodí se pro jednoduché sdílení mezi linuxovými počítači. Chcete-li pokročilejší sdílení adresářů, které je nativně podporováno i ve //Windows//, zvolte //Sambu//, která je popsána podrobně dále v kapitole. 
 +
 +==== Sdílení souborů pomocí protokolu WebDAV ====
 +Nejjednodušším způsobem, jak sdílet soubory s ostatními počítači, je protokol WebDAV. Je totiž podporovaný již ve výchozí instalaci. Nastavení, jak ho můžete vidět na obrázku níže, naleznete v //Nastavení->Sdílení->Sdílení osobních souborů//. Tam můžete jedním kliknutím aktivovat pro danou síť sdílení složky //Veřejné//, která se nachází ve vašem domovském adresáři. Přístup můžete také chránit heslem. Dejte si také pozor na to, že sdílení nebude pro vzdálený počítač dostupné, dokud bude složka //Veřejné// prázdná.
 +
 +{{ :navody:f22_sdileni_souboru.png?400 | Nastavení sdílení souborů}}
 +
 +Ke sdílené složce se můžete jednoduše připojit z jiného počítače třeba pomocí //Nautilu//. Buď přes //Procházet síť//, kde by se mělo sdílení automaticky objevit, nebo přes //Připojit k serveru//, kde musíte zadat adresu sdílení, kterou máte uvedenou v nastavení.
 +
 +==== Sdílení adresářů pomocí serveru Samba ====
 +//OS// typu //Windows// používají protokol //Microsoft SMB// (**S**erver **M**essage **B**lock) známý také pod jménem //CIFS// (**C**ommon **I**nternet **F**ile **S**ystem). Tento protokol umožňuje sdílení souborů, adresářů, tiskáren apod. 
 +
 +//Linux// tento protokol implementuje ve formě balíku //Samba//.
 +//Samba// je vydána pod //GNU General Public// licencí. Systém umožňuje integraci //OS// typu //Windows// do linuxových sítí. Na straně //Windows// přitom není zapotřebí instalovat žádný speciální software.
 +
 +**Poznámka:** Problematikou sdílení souborů a adresářů mezi počítači s operačním systémem //Fedora// se zabývá kapitola [[sit#Přípojování sdílených adresářů]]. Velice podrobnou knihu o //Sambě// v anglickém jazyce naleznete na [[https://www.samba.org/samba/docs/using_samba/toc.html]].
 +
 +=== Instalace serveru Samba ===
 +  * Přečtěte si kapitolu [[obecne_poznamky|Obecné poznámky]].
 +  * Přečtěte si kapitolu [[instalace_aplikaci#Přidání repozitáře]].
 +
 +Server //Samba// lze nainstalovat přes terminál
 +  
 +  dnf -y install samba
 +  dnf -y install samba-client
 +  dnf -y install system-config-samba
 +
 +=== Konfigurace pomocí grafického rozhraní ===
 +
 +**Poznámka:** Jestliže je třeba přidat uživatele, přečtěte si kapitolu [[uzivatele#Přidání, editace a mazání uživatelů a skupin]]. 
 +
 +Server //Samba// lze nastavit pomocí grafického rozhraní //Samba// (balíček system-config-samba).
 +
 +{{ navody:f22samba_nastaveni.png?400 | Nastavení Samby pomocí grafického rozhraní }}
 +
 +Takto je možné nastavit sdílený adresář a přiřadit mu uživatele, kteří k němu mohou přistupovat.
 +
 +=== Konfigurace pomocí příkazové řádky ===
 +
 +Následující text se zabývá základním nastavením //Samby// pomocí příkazové řádky. Podrobnosti týkající se nastavení //Samby// naleznete na stránkách [[https://www.samba.org/samba/docs/using_samba/toc.html]] popř. [[http://samba.org/samba/docs/man/Samba-HOWTO-Collection/]].
 +
 +== Kontrola protokolu TCP/IP ==
 +
 +Aby bylo možné sdílet adresáře mezi //Windows// a //Linux//em je třeba, aby byl na počítači s //Windows// správně nastaven protokol //TCP/IP//. Na straně //Fedory// by problémy s podporou tohoto protokolu nastat neměly.\\
 +
 +Funkčnost protokolu //TCP/IP// lze velice snadno ověřit z //Linux//u pomocí
 +
 +  ping -c 10 ip_adresa
 +
 +**Poznámka:** //IP// adresu počítače s nainstalovanými //Windows 7// lze zjistit následujícím způsobem. Klikněte na //Start -> Ovládací panely -> Centrum síťových připojení a sdílení//. V okně //Změnit nastavení adaptéru// pak dvakrát klikněte na ikonu, která znázorňuje Vaše síťové připojení. Přejděte na záložku //Podpora// a opište číslo uvedené za položkou //Adresa IP//((Mělo by se jednat o číslo typu 192.168.2.125.)). Další možností, jak získat //IP// adresu, je v příkazovém řádku //Windows// zadat ''ipconfig''.\\
 +
 +Výstup příkazu ''ping -c 10 ip_adresa'' by měl vypadat přibližně následovně
 +
 +  PING 192.168.2.125 (192.168.2.125) 56(84) bytes of data.
 +  64 bytes from 192.168.2.125: icmp_seq=1 ttl=64 time=0.068 ms
 +  64 bytes from 192.168.2.125: icmp_seq=2 ttl=64 time=0.071 ms
 +  64 bytes from 192.168.2.125: icmp_seq=3 ttl=64 time=0.072 ms
 +  64 bytes from 192.168.2.125: icmp_seq=4 ttl=64 time=0.072 ms
 +  64 bytes from 192.168.2.125: icmp_seq=5 ttl=64 time=0.072 ms
 +  64 bytes from 192.168.2.125: icmp_seq=6 ttl=64 time=0.070 ms
 +  64 bytes from 192.168.2.125: icmp_seq=7 ttl=64 time=0.073 ms
 +  64 bytes from 192.168.2.125: icmp_seq=8 ttl=64 time=0.093 ms
 +  64 bytes from 192.168.2.125: icmp_seq=9 ttl=64 time=0.072 ms
 +  64 bytes from 192.168.2.125: icmp_seq=10 ttl=64 time=0.072 ms
 +  
 +  --- 192.168.2.125 ping statistics ---
 +  10 packets transmitted, 10 received, 0% packet loss, time 9000ms
 +  rtt min/avg/max/mdev = 0.068/0.073/0.093/0.010 ms
 +
 +Jestliže tento "test" dopadl úspěšně, můžete pokračovat. V opačném případě budete muset nastavit síťové protokoly na počítači 
 +s //Windows//.
 +
 +== Nastavení uživatelských účtů ==
 +  * Přečtěte si kapitolu [[obecne_poznamky|Obecné poznámky]].
 +  * Přečtěte si kapitolu [[sdileni_adresaru#Instalace serveru Samba]]
 +
 +Nezbytný předpokladem fungování //Samby// je správné nastavení uživatelských účtů ve //Fedoře//, //Windows// a //Sambě//.
 +
 +== Samba ==
 +
 +Noví uživatelé //Samby// jsou mapováni na již existující systémové uživatele //Fedory//. Tato vazba je definována v souboru 
 +
 +''/etc/samba/smbusers''.
 +
 +  gedit /etc/samba/smbusers
 +
 +Do souboru ''smbusers'' přidejte následující řádek
 +
 +  systemovy_uzivatel = samba_uzivatel1 [ samba_uzivatel2 ... ]
 +
 +a soubor uložte. Tento zápis slouží k výše zmiňovanému mapování mezi systémovými uživateli a uživateli //Samby//. Defaulně je v souboru ''smbusers'' uvedeno
 +
 +  # Unix_name = SMB_name1 SMB_name2 ...
 +  root = administrator admin
 +  nobody = guest pcguest smbguest
 +
 +Superuživatel je tak např. pro účely //Samba// serveru namapován na uživatele ''administrator'' a ''admin''. Obecně se doporučuje používat pro účely //Samby// jména uživatelů odpovídající systémovým uživatelům.
 +
 +Dále je třeba nově vytvořenému uživately //Samby// nastavit heslo. Heslo konkrétního uživatele je možné nastavit popř. editovat pomocí
 +
 +  smbpasswd -a samba_uzivatel1
 +
 +Smazat uživatele lze pak pomocí
 +
 +  smbpasswd -x samba_uzivatel1
 +
 +a následným smazáním příslušného řádku v souboru ''/etc/samba/smbusers''.
 +
 +== Windows ==
 +
 +Na počítači s //Windows// vytvořte účet, jehož uživatelské jméno a heslo se shoduje s linuxovým účtem vybraného uživatele. Cílem tedy je, aby pod //Linux//em a //Windows// existovali dva "stejní" uživatelé - v opačném případě nebude níže popsaný postup fungovat.\\
 +
 +Nového uživatele pod //Windows XP// vytvoříte tak, že přes nabídku //Start -> Nastavení -> Ovládací panely// vyvoláte okno //Ovládací panely//, kde klinete na ikonu //Uživatelské účty//. V okně //Uživatelské účty// pokračujte odkazem //Vytvořit nový účet// a postupujte dle instrukcí průvodce.
 +
 +== Nastavení firewallu ==
 +  * Přečtěte si kapitolu [[obecne_poznamky|Obecné poznámky]].
 +  * Přečtěte si kapitolu [[sit#otevreni_uzavreni_portu|Otevření / uzavření portů]].
 +
 +Nezbytnou podmínkou pro fungování //Samby// je její povolení na firewallu. Port 901, přes který //Samba// komunikuje, je v případě //Fedory// standardně uzavřen. Povolit komunikaci přes tento port můžete pomocí nabídky //Systém -> Správa -> Firewall//.
 +
 +== Připojení sdílených adresářů na počítači s OS typu Windows ==
 +  * Přečtěte si kapitolu [[obecne_poznamky|Obecné poznámky]].
 +  * Přečtěte si kapitolu [[sdileni_adresaru#Instalace serveru Samba]].
 +  * Přečtěte si kapitolu [[sdileni_adresaru#Kontrola protokolu TCP/IP]].
 +  * Přečtěte si kapitolu [[sdileni_adresaru#Nastavení uživatelských účtů]].
 +  * Přečtěte si kapitolu [[sdileni_adresaru#Nastavení firewallu]].
 +
 +== Sdílený adresář ==
 +
 +Po té, co jste zkontrolovali funkčnost protokolu //TCP/IP//, provedli nezbytná nastavení uživatelských účtů a otevřeli port 901 na firewallu (ve //Fedora Workstation// by měl být ve výchozím stavu povolený), je možné přistoupit k vytvoření sdíleného adresáře. Ve //Windows XP// sdílený adresář vytvoříte z normálního adresáře tak, že po dvoukliku na ikonu adresáře vybere z nabídky položku //Vlastnosti// a v ní záložku //Sdílení//, kde provedete potřebná nastavení.\\
 +
 +== Připojení v Nautilu ==
 +
 +V //Linuxu// se můžete ke vzdálenému adresáři připojit nejjednodušeji ve správci souborů //Nautilus//, kde ve sloupci nalevo kliknete na //Připojit k serveru//. Adresu serveru zadejte ve tvaru, jak to můžete vidět na obrázku níže.
 +
 +{{ :navody:f22-nautilus-smb.png?400 |}}
 +
 +== Připojení v příkazové řádce ==
 +
 +Dalším krokem je vytvoření adresáře na počítači s //Linux//em, kam připojíte obsah sdíleného adresáře.
 +
 +  mkdir /media/smb
 +  chmod 777 /media/smb
 +
 +Předpokládejme, že počítač s //Windows//, na kterém je uložen sdílený adresář, má //IP// adresu 192.168.2.125 a cesta k tomuto adresáři je ''C:/Linux''. Dále předpokládejme, že na linuxovém stroji je přípojným bodem adresář ''/media/smb''
 +
 +Samotné připojení adresáře pak provedete pomocí
 +
 +  mount -t cifs //192.168.2.125/Linux /media/smb
 +
 +odpojení pak pomocí
 +
 +  umount -t cifs /media/smb
 +
 +**Poznámka:** Příkazy ''mount'' a ''umount'' může standardně používat pouze superuživatel.
 +
 +== Modifikace fstab pro automatické připojení sdílených adresářů ==
 +  * Přečtěte si kapitolu [[obecne_poznamky|Obecné poznámky]].
 +  * Přečtěte si kapitolu [[hardware#Znovupřipojení všech zařízení z /etc/fstab]].
 +
 +Předpokládejme, že sdílení adresářů bylo nastaveno podle výše uvedeného návodu. Pomocí textového editoru vytvořte soubor 
 +
 +''.smbcredentials''
 +
 +  gedit /root/.smbcredentials
 +
 +do kterého následně vložíte řádky
 +
 +  username=samba_uzivatel1
 +  password=heslo
 +
 +Nově vytvořený soubor uložte. Dále nastavte k tomuto souboru přístupová práva.
 +
 +  chmod 700 /root/.smbcredentials
 +
 +Proveďte zazálohování souboru ''fstab''
 +
 +  cp /etc/fstab /etc/fstab_backup
 +
 +a tento soubor otevřete v textovém editoru.
 +
 +  gedit /etc/fstab
 +
 +Na konec tohoto souboru vložte řádek
 +
 +  //192.168.2.126/cesta_k_sdilenemu adresari    /media/smb cifs credentials=/root/.smbcredentials  0    0
 +
 +a zeditovaný soubor uložte.
 +
 +**Poznámka:** Po té, co vložíte do souboru ''fstab'' výše uvedený řádek, je třeba ještě vložit prázdný řádek klávesou //ENTER//. Jestliže soubor ''fstab'' nebude končit prázdnou řádkou, bude systém při jeho načítání v průběhu bootování hlásit chybu.
 +
 +== Připojení sdílených souborů počítače s Fedorou ==
 +  * Přečtěte si kapitolu [[obecne_poznamky|Obecné poznámky]].
 +  * Přečtěte si kapitolu [[sdileni_adresaru#Instalace serveru Samba]].
 +  * Přečtěte si kapitolu [[sdileni_adresaru#Kontrola protokolu TCP/IP]].
 +  * Přečtěte si kapitolu [[sdileni_adresaru#Nastavení uživatelských účtů]].
 +  * Přečtěte si kapitolu [[sit#Zjistění IP adresy počítače s Fedorou]].
 +  * Přečtěte si kapitolu [[sdileni_adresaru#Nastavení firewallu]].
 +
 +V předchozím odstavci jsme připojovali sdílený adresář uložený na počítači s //OS Windows//. Nyní zkusíme opačný postup - budeme připojovat sdílený adresář uložený na počítači s //Fedorou//.\\
 +
 +== Konfigurační soubor Samby ==
 +
 +Nejprve je třeba zkontrolovat funkčnost protokolu //TCP/IP// na počítači s //OS Windows//, provést nezbytná nastavení uživatelských účtů a otevřít port 901 na firewallu. Dalším krokem je pak úprava konfiguračního souboru aplikace //Samba//. Správnost jeho syntaxe a místo uložení lze zjistit pomocí příkazu
 +
 +  testparm
 +
 +Výstup tohoto příkazu pak vypadá přibližně následovně
 +
 +  Load smb config files from /etc/samba/smb.conf
 +  Processing section "[homes]"
 +  Processing section "[printers]"
 +  Global parameter printcap name found in service section!
 +  Processing section "[data]"
 +  Loaded services file OK.
 +  WARNING: passdb expand explicit = yes is deprecated
 +  Server role: ROLE_STANDALONE
 +  Press enter to see a dump of your service definitions
 +
 +Z výpisu je patrné, že konfigurační soubor ''smb.conf'' se nachází v adresáři ''/etc/samba''. Před samotnou modifikací proveďte zálohu původního konfiguračního souboru.
 +
 +  cp /etc/samba/smb.conf /etc/samba/smb.conf.bak
 +
 +Následně otevřete konfigurační soubor v textovém editoru
 +
 +  gedit /etc/samba/smb.conf
 +
 +a obsah souboru zaměňte za((Jedná se o naprosto základní nastavení. Aplikace //Samba// pochopitelně dovoluje nastavení mnohem většího počtu parametrů. To však přesahuje možnosti této příručky.))
 +
 +  [global]
 +          workgroup = SKUPINA
 +          wins support = Yes
 +          security = user
 +          username map = /etc/samba/smbusers
 +  
 +  [homes]
 +          read only = No
 +          map archive = No
 +          browseable = No
 +  
 +  [printers]
 +          path = /var/tmp
 +          printable = Yes
 +          browseable = No
 +  
 +  [data]
 +          path = /opt/macky
 +          read only = No
 +          map archive = No
 +
 +V konfiguračni je třeba dále upravit:
 +  - v sekci ''global'' hodnotu parametru ''workgroup'' na jméno pracovní skupiny, do které patří oba počítače
 +  - v sekci ''data'' nastavit v parametru ''path'' cestu ke sdílenému adresáři
 +
 +**Poznámka:** Jméno pracovní skupiny zjistíte v případě //Windows XP// následovně. Dvojklikem na ikonu //Tento počítač// otevřete nabídku, ve které vyberete položku //Vlastnosti//. V okně //Vlastnosti systému// klikněte na záložku //Název počítače// a opište jméno uvedené za položkou //Pracovní skupina//.
 +
 +Jestliže chcete přidat více sdílených adresářů, přidejte do souboru ''smb.conf'' více sekcí se stejnou syntaxí, jako sekce 
 +
 +''data''.
 +
 +  [data1]
 +          path = /opt/macky/adresar1
 +          read only = No
 +          map archive = No
 +  
 +  [data2]
 +          path = /home/macky/adresar2
 +          read only = No
 +          map archive = No
 +
 +== Připojení / odpojení sdíleného adresáře ==
 +
 +Dále je třeba spustit démoda ''smbd''. To se provede pomocí příkazu
 +
 +  /usr/sbin/smbd
 +
 +Po té, co je démon spuštěn, zadejte pro připojení sdíleného adresáře do příkazové řádky 
 +
 +  smbclient //192.168.2.126/data -U samba_uzivatel1%heslo
 +
 +kde uvedená //IP// adresa "patří" tentokráte počítači s //Fedorou//((Tuto adresu je pochopitelně nutné modifikovat!)) a ''samba_uzivatel1'' představuje //Samba// alias pro uživatele, který je "společný" //Fedoře// a //Windows//.\\
 +
 +Nyní nastal čas přesunout s k počítači s //Windows//. Přihlašte se pod stejným uživatelem, jakého jste specifikovali parametrem ''-U'' u výše uvedeného příkazu ''smbclient''. Klikněte na //Místa v síti// a v části //Práce se sítí// pak na ikonou //Přidat místo v síti//. Pokračujte tlačítkem //Další// a po té ikonou //Jiné umístění v síti//. Pro namapování sdíleného adresáře specifikovaného v ''smb.conf'' v sekci ''data'' zadejte
 + 
 +  \\192.162.2.126\data
 +
 +a potvrďte. Po chvíli by se mělo otevřít okno s obsahem sdíleného adresáře.
 +
 +----
 +[[obsah|Hlavní stránka]]
  • Poslední úprava: 2022/11/14 12:26
  • autor: 127.0.0.1