SMB-Howto

Autor:David Wood, dwood@plugged.net.au v1.0, 10 August 1996
Wersja polskiea: Bartosz Maruszewski B.Maruszewski@zsmeie.torun.pl
v1.12, 26 Lipca 1997


Jest to dokument z serii HOWTO (Jak To Zrobić). Opisuje on jak używać Session Message Protocol, zwanego też NetBIOS lub LanManager z Linux-em. Dokument ten został napisany w standardzie ISO-8859-2. Oryginał można znaleźć pod adresem ftp.icm.edu.pl w katalogu /pub/Linux/sunsite/docs/HOWTO.

1. Wprowadzenie.

Jest to dokument z serii HOWTO (Jak To Zrobić). Opisuje on jak używać z Linuxem Session Message Protocol, zwanego też NetBIOS lub LanManager.

Dokument ten jest prowadzony przez Davida Wooda dwood@plugged.net.au. Wszelkie dodatki, modyfikacje lub poprawki mogą być przesłane do mnie, aby je później umieścić w następnej wersji.

Protokół SMB używany jest przez Microsoft Windows 3.11, NT i 95 aby współdzielić zasoby dyskowe i drukarki. Maszyny Unix-owe (w tym także Linux) mogą korzystać z tych zasobów używając narzędzi stworzonych przez Andrew Tridgella.

Są cztery rzeczy, które można zrobić Sambą:

  1. Udostępniać dysk Linux-owy dla komputerów z Windows.
  2. Udostępniać dysk Windows-owy dla komputerów z Linux-em.
  3. Udostępniać drukarkę pod Linux-em dla Windows.
  4. Udostępniać drukarkę pod Windows dla Linux-a.

Wszystko to zostało opisane w tym dokumencie.

Disclaimer. Procedury i skrypty albo działały u autora, albo zostały opisane jako działające przez tych, którzy je napisali. Różne konfiguracje mogą nie działać z podanymi tutaj informacjami. Jeśli odkryjesz taką sytuację możesz napisać do autora list z sugestią na ulepszenie tego dokumentu, ale autor nic nie gwarantuje. A czego się spodziewałeś ? W końcu autor jest tyklo konsultantem.

1.1 Dalsze informacje.

Dokument ten jest próbą opisania jak skonfigurować na Linux-ie podstawowe serwisy SMB związane z plikami i drukarkami. Samba jest bardzo złożonym i kompletnym pakietem. Nie ma sensu, żeby kopiować tutaj wszystko to co jest zawarte w dokumentacji dla tego pakietu.

Dalszych informacji możesz szukać w:

2. Instalacja.

Najświeższe źródła Samby dostępne są pod adresem ftp.icm.edu.pl w katalogu /pub/samba.

Jeśli instalowałeś dystrybucję Red Hat mogłeś wybrać instalację Samby jako jedną z opcji. Niektóre inne dystrybycje też oferują binaria Samby.

Następujące demony są wymagane do pracy z Sambą. Zwykle znajdują się one w katalogu /usr/sbin i są uruchamiane w momencie startu systemu albo przez demon inetd. Przykładowe skrypt znajdują się w sekcji Uruchamianie demonów.


      smbd (Demon SMB) i nmbd (Świadczy usługi nameservera NetBIOS-u)

Zwykle w systemie instalowane są następujące binaraia w katalogu /usr/bin:


   smbclient (Klient dla maszyn Unix-owych), smbprint (skrypt do
   drukowania na drukarce przyłączonej do hosta SMB), smbprint.sysv
   (To samo co wcześniej, ale dla systemu UNIX SVR4), smbstatus
   (Wyświetla bieżące połączenia SMB na lokalnym hoście), smbrun
   (Główny skrypt do uruchamiania aplikacji na hoście SMB)

Dodatkowo zawarty jest w tym dokumencie skrypt o nazwie "print", który jest pożytecznym dokończeniem skryptu smbprint.

Pakiet Samba jest prosty w instalacji. Ściągnij go z podanego wcześniej miejsca i przeczytaj plik README znajdujący się w dystrybucji. Jest jeszcze plik docs/INSTALL.txt, który podaje krok po kroku co należy zrobić, aby zainstalować Sambę.

Postępując wraz z instalacją, umieść demony w /usr/sbin i binaria w /usr/bin. Zainstaluj strony do podręcznika systemowego "man" w /usr/local/man.

Kiedy będziesz instalował pakiet Samba, będziesz musiał podać miejsce, gdzie ma się znajdować plik konfiguracyjny smb.conf. Z reguły jest to katalog /etc, ale możesz go umieścić, gdzie ci się podoba. Dla dalszych instrukcji założymy, że plik konfiguracyjny umieściłeś w /etc, plik logujący to /var/log/samba-log.%m i katalog blokujący to /var/lock/samba.

Zainstaluj plik konfiguracyjny smb.conf. Przejdź do katalogu, gdzie została skompilowana Samba. Zajrzyj do katalogu examples/simple i przeczytaj plik README. Skopiuj znaleziony tam plik smb.conf do /etc. OSTROŻNIE !!! Jeśli masz dystrybucję Linux-a, która miała Sambę i zainstalowałeś ją to pewnie masz już plik smb.conf w katalogu /etc i lepiej zacznij od tego pliku.

Jeśli nie chcesz umieszczać pliku konfiguracyjnego w /etc, to umieść go tam, gdzie chcesz i zrób symboliczne dołączenie:


     ln -s /gdzie/jest/smb.conf /etc/smb.conf

3. Uruchamianie demonów.

Dwoma demonami SMB są: /usr/sbin/smbd i /usr/sbin/nmbd. Możesz je uruchomić przez demona inetd lub jako osobne procesy. Jeśli konfigurujesz na stałe serwer plikowy, to powinny one być uruchamiane przez inetd po to, żeby je ponownie uruchomić jeśli z jakiegoś powodu przestaną działać. Jeśli chcesz korzystać z Samby tylko czasami, to możesz je uruchomić z któregoś ze skryptów startowych w katalogu /etc/rc.d albo po prostu od ręki wtedy kiedy je potrzebujesz.

Aby uruchomić demony przez inetd umieść następujące linie w pliku /etc/inetd.conf:


 Serwis NetBIOS dla Samby
      # netbios-ssn
      stream tcp nowait root /usr/sbin/smbd smbd netbios-ns dgram udp wait
      root /usr/sbin/nmbd nmbd

Następnie wyślij sygnał HUP do procesu nr 1:


     kill -HUP 1

Dla użytkowników dystrybucji Red Hat. Aby uruchomić te demony ze skryptów startowych, umieść następujący skrypt w katalogu /etc/rc.d/init.d/smb i dołącz je symbolicznie do plików podanych w komentarzu:


     #!bin/sh

     #
     # /etc/rc.d/init.d/smb - startuje i zatrzymuje serwis SMB
     #
     # Następujące pliki powinny być symbolicznymi dołączeniami do
     # tego pliku:
     # /etc/rc.d/rc1.d/K35smb (Zatrzymuje serwis SMB podczas
     # zamknięcia systemu.
     # /etc/rc.d/rc3.d/S91smb (Startuje serwis SMB w trybie
     # wieloużytkownikowym
     # /etc/rc.d/rc6.d/K35smb (zatrzymuje serwis SMB podczas resetu)
     #
     
     # Biblioteka funkcji
     etc/rc.d/init.d/functions
           
     # Konfiguracja sieci
     etc/sysconfig/network
   
     # Sprawdź czy jesteśmy w sieci
     [ ${NETWORKING} = "no" ] && exit 0
       
     # Zobacz jak zostaliśmy wywołani
     case "$1" in
        start) echo -n "Starting SMB services: " 
                daemon smbd -D
                daemon nmbd -D
                echo touch /var/lock/subsys/smb
        ;;
        stop) echo -n "Shutting down SMB services: "
                killproc smbd
                killproc nmbd
                rm -f /var/lock/subsys/smb echo ""
        ;;
        *) echo "Usage: smb {start|stop}" exit 1
     esac

Od tłumacza: Jeśli używasz dystrybucji Slackware. Umieść poniższy fragment w skrypcie startowym /etc/rc.d/rc.local:


   
   # czy jesteśmy w sieci
   [ ${NETWORKING} = "no" ] && exit 0
   
   # Uruchmon demony Samby
   /usr/sbin/smbd -D
   /usr/sbin/nmbd -D

4. Ogólna konfiguracja. (/etc/smb.conf)

Konfiguracja Samby na Unix-ie jest kontrolowana jednym plikiem: /etc/smb.conf. W pliku tym umieszczasz zasoby jakie chcesz udostępnić dla świata i jakie restrykcje chcesz wprowadzić.

Ponieważ ta sekcja opisuje udostępnianie dysków i drukarek Linux-owych Windowsom, plik smb.conf będzie najprostszym z możliwych.

Nie martw się o szczegóły. Późniejsze sekcje wprowadzą ogólny koncept.

Każda sekcja pliku zaczyna się od nazwy jak np.: [global], [homes], [printers] itp.

Sekcja [global] definiuje kilka ogólnych zmiennych, które będą się odnosić do wszystkich udostępnianych zasobów.

Sekcja [homes] pozwala użytkownikom na dostęp do ich (i tyklo ich) katalogów domowych na lokalnej maszynie Linux-owej. Jeśli jakiś użytkownik Windows będzie chciał skorzystać z udostępnianych zasobów, to zostanie podłączony do swojego katalogu domowego. Zauważ, że aby to zrobić użytkownik musi mieć swoje konto na maszynie Linux-owej.

Poniższy przykładowy plik smb.conf pozwala użytkownikom na dostęp do swoich katalogów domowych i na zapis do katalogu tymczasowego. Aby użytkownik Windows zobaczył udostępniane zasoby, Linux musi być w tej samej sieci lokalnej. Użytkownik Windows po prostu dołącza dysk sieciowy z Menedżera Plików lub Eksploratora Windows.

W następnych sekcjach będą dodawane kolejne linie do tego pliku, aby umożliwić dostęp do większej ilości zasobów.


 etc/smb.conf
   ; 
   ; Po wprowadzeniu zmian do tego pliku zrestartuj demony Samby
   ; kill -9 `pidof smbd`; kill -9 `pidof nmbd`
   ; /usr/sbin/smbd; /usr/sbin/nmbd
   [global] Umieść to w pliku jeśli chcesz konto anonimowe guest account = nobody
      log file = /var/log/samba-log.%m lock directory = /var/lock/samba share
      modes = yes

   [homes] comment = Katalogi Domowe browseable = no read only = no create
      mode = 0750

   [tmp] comment = Miejsce na pliki tymczasowe path = /tmp read only = no
      public = yes

5. Udostępnianie dysku Linux-owego komputerom z Windows.

Jak widać na powyższym przykładzie udostępnianie dysków Linux-owych użytkownikom Windows jest proste. Dostęp do zasobów udostępnianych poprzez Sambę można w bardzo dużym stopniu kontrolować.

Aby udostępnić wszystkim jakieś zasoby, dodaj poniższe linie do smb.conf:


   [public]     
   comment = Public Stuff path = /home/public public = yes writable = yes
      printable = yes

Aby umożliwić zapis do tego katalogu tylko dla członków grupy staff, zmodyfikuj te linie w następujący sposób:


   [public]
   comment = Public Stuff path = /home/public public = yes writable = yes
      printable = no write list = @staff

Więcej informacji na temat różnych sposobów udostępniania zasobów znajdziesz w dokumentacji do Samby.

6. Udostępnianie dysku spod Windows maszynom z Linux-em.

Wraz z dystrybucją Samby otrzymujemy klienta dla Unix-ów. Jego interfejs poleceń jest podobny do ftp. Możesz go używać, aby przenosić pliki między Windowsowym "serwerem" a klientem Linux-owym.

Aby zobaczyć jakie zasoby sa udostępnione na danym hoście napisz:


     /usr/sbin/smbclient -L host

gdzie host jest nazwą maszyny, której zasoby chcesz zobaczyć. Polecenie to zwróci listę nazw serwisów - to znaczy nazw dysków lub drukarek, które może udostępnić. Serwer Samby będzie cię pytał o hasło, o ile nie ma skonfigurowanego bezpiecznego dostępu.

Np.


     smbclient -L zimmermann

Polecenie to powinno wyświetlić coś na kształt:


 Server time is Sat Aug 10 15:58:27 1996 Timezone is UTC+10.0
Password: Domain=[WORKGROUP] OS=[Windows NT 3.51] Server=[NT LAN Manager 3.51]

   Server=[ZIMMERMAN] User=[] Workgroup=[WORKGROUP] Domain=[]

           Sharename      Type      Comment
           ---------      ----      -------
           ADMIN$         Disk      Remote Admin public Disk Public C$ Disk
           Default share IPC$ IPC Remote IPC OReilly Printer OReilly print$
           Disk Printer Drivers


   This machine has a browse list:

           Server               Comment
           ---------            -------
           HOPPER               Samba 1.9.15p8 KERNIGAN Samba 1.9.15p8 LOVELACE
           Samba 1.9.15p8 RITCHIE Samba 1.9.15p8 ZIMMERMAN

Browse list pokazuje inne serwery SMB udostępniające zasoby w sieci.

Aby użyć klienta napisz:


     /usr/sbin/smbclient serwis <hasło>

gdzie serwis jest nazwą maszyny i zasobu. Na przykład jeśli próbujesz dostać się do katalogu, który jest udostępniany jako public na maszynie o nazwie zimmermann, serwisem byłoby: \\zimmerman\public. Chociaż z powodu powłoki w Linux-ie będziesz musiał oznaczyć znaki \ specjalnie i polecenie ostatecznie wygląda tak:


     usr/sbin/smbclient \\\\zimmerman\\public hasło

gdzie hasło jest łańcuchem znaków będącym twoim hasłem.

Pojawi się wtedy znak zachęty klienta Samby:


    Server time is Sat Aug 10 15:58:44 1996 Timezone is UTC+10.0
    Domain=[WORKGROUP] OS=[Windows NT 3.51] Server=[NT LAN Manager
    3.51] smb: \>

Napisz 'h', aby uzyskać pomoc:


     smb: \> h ls dir lcd cd pwd get mget put mput rename more mask del rm
     mkdir md rmdir rd prompt recurse translate lowercase print printmode
     queue cancel stat quit q exit newer archive tar blocksize tarmode
     setmode help ?  !  smb: \>

Jeśli umiesz używać ftp, to nie powinieneś potrzebować czytać podręcznika systemowego na temat smbclient.

7. Udostępnianie drukarki Linux-owej komputerom z Windows.

Aby udostepnić drukarkę Linux-ową Windowsom musisz się upewnić, że drukarka działa dobrze pod Linux-em. Jeśli możesz drukować spod Linux-a to ustawienie serwera SMB dla drukarki jest bardzo proste.

Przeczytaj Priniting-HOWTO na temat ustawienia drukarki pod Linux-em.

Ponieważ autor używa drukarki połączonej z Windows NT, sekcja ta nie powinna być brana za definicję, ale bardziej jako sugestia. Jeśli ktokolwiek ma ochotę się podzielić szczegółami na temat innych konfiguracji proszę o kontakt, aby ta sekcja mogła zostać skończona: dwood@plugged.net.au.

Dodaj konfigurację na temat drukowania do smb.conf:


     [global]
     printing = bsd printcap name = /etc/printcap load printers = yes
     log file = /var/log/samba-log.%m lock directory = /var/lock/samba

     [printers] comment = Wszystkie drukarki security = server path = /var/spool/lpd/lp
     browseable = no printable = yes public = yes writable = no
     create mode = 0700

     [ljet] security = server path = /var/spool/lpd/lp printer name = lp
     writable = yes public = yes printable = yes
     print command = lpr -r -h -P %p %s

Upewnij się, że ścieżka do drukarki (w tym wypadku w sekcji ]ljet[) /defs" na "chmod 600 /etc/login.defs" plik ten nie musi być wykonywalny,

  • - "cp passwd ~passwd" na "cp passwd ~/passwd" - ewidentna literówka autora
  • - "chmod 600 ~passwd" na "chmod 600 ~/passwd" - to samo
  • - przy zmianie grupy pliku /etc/shadow dodane "cd /etc"
  • - oraz polskie serwery WWW i ftp.
  • usr/doc/LANG/pl/HOWTO/html/SMB-HOWTO.pl.html100644 0 0 72305 6507515467 16400 0ustar rootroot SMB-Howto

    SMB-Howto

    Autor:David Wood, dwood@plugged.net.au v1.0, 10 August 1996
    Wersja polskiea: Bartosz Maruszewski B.Maruszewski@zsmeie.torun.pl
    v1.12, 26 Lipca 1997


    Jest to dokument z serii HOWTO (Jak To Zrobić). Opisuje on jak używać Session Message Protocol, zwanego też NetBIOS lub LanManager z Linux-em. Dokument ten został napisany w standardzie ISO-8859-2. Oryginał można znaleźć pod adresem ftp.icm.edu.pl w katalogu /pub/Linux/sunsite/docs/HOWTO.

    1. Wprowadzenie.

    Jest to dokument z serii HOWTO (Jak To Zrobić). Opisuje on jak używać z Linuxem Session Message Protocol, zwanego też NetBIOS lub LanManager.

    Dokument ten jest prowadzony przez Davida Wooda dwood@plugged.net.au. Wszelkie dodatki, modyfikacje lub poprawki mogą być przesłane do mnie, aby je później umieścić w następnej wersji.

    Protokół SMB używany jest przez Microsoft Windows 3.11, NT i 95 aby współdzielić zasoby dyskowe i drukarki. Maszyny Unix-owe (w tym także Linux) mogą korzystać z tych zasobów używając narzędzi stworzonych przez Andrew Tridgella.

    Są cztery rzeczy, które można zrobić Sambą:

    1. Udostępniać dysk Linux-owy dla komputerów z Windows.
    2. Udostępniać dysk Windows-owy dla komputerów z Linux-em.
    3. Udostępniać drukarkę pod Linux-em dla Windows.
    4. Udostępniać drukarkę pod Windows dla Linux-a.

    Wszystko to zostało opisane w tym dokumencie.

    Disclaimer. Procedury i skrypty albo działały u autora, albo zostały opisane jako działające przez tych, którzy je napisali. Różne konfiguracje mogą nie działać z podanymi tutaj informacjami. Jeśli odkryjesz taką sytuację możesz napisać do autora list z sugestią na ulepszenie tego dokumentu, ale autor nic nie gwarantuje. A czego się spodziewałeś ? W końcu autor jest tyklo konsultantem.

    1.1 Dalsze informacje.

    Dokument ten jest próbą opisania jak skonfigurować na Linux-ie podstawowe serwisy SMB związane z plikami i drukarkami. Samba jest bardzo złożonym i kompletnym pakietem. Nie ma sensu, żeby kopiować tutaj wszystko to co jest zawarte w dokumentacji dla tego pakietu.

    Dalszych informacji możesz szukać w:

    2. Instalacja.

    Najświeższe źródła Samby dostępne są pod adresem ftp.icm.edu.pl w katalogu /pub/samba.

    Jeśli instalowałeś dystrybucję Red Hat mogłeś wybrać instalację Samby jako jedną z opcji. Niektóre inne dystrybycje też oferują binaria Samby.

    Następujące demony są wymagane do pracy z Sambą. Zwykle znajdują się one w katalogu /usr/sbin i są uruchamiane w momencie startu systemu albo przez demon inetd. Przykładowe skrypt znajdują się w sekcji Uruchamianie demonów.


          smbd (Demon SMB) i nmbd (Świadczy usługi nameservera NetBIOS-u)
    

    Zwykle w systemie instalowane są następujące binaraia w katalogu /usr/bin:


       smbclient (Klient dla maszyn Unix-owych), smbprint (skrypt do
       drukowania na drukarce przyłączonej do hosta SMB), smbprint.sysv
       (To samo co wcześniej, ale dla systemu UNIX SVR4), smbstatus
       (Wyświetla bieżące połączenia SMB na lokalnym hoście), smbrun
       (Główny skrypt do uruchamiania aplikacji na hoście SMB)
    

    Dodatkowo zawarty jest w tym dokumencie skrypt o nazwie "print", który jest pożytecznym dokończeniem skryptu smbprint.

    Pakiet Samba jest prosty w instalacji. Ściągnij go z podanego wcześniej miejsca i przeczytaj plik README znajdujący się w dystrybucji. Jest jeszcze plik docs/INSTALL.txt, który podaje krok po kroku co należy zrobić, aby zainstalować Sambę.

    Postępując wraz z instalacją, umieść demony w /usr/sbin i binaria w /usr/bin. Zainstaluj strony do podręcznika systemowego "man" w /usr/local/man.

    Kiedy będziesz instalował pakiet Samba, będziesz musiał podać miejsce, gdzie ma się znajdować plik konfiguracyjny smb.conf. Z reguły jest to katalog /etc, ale możesz go umieścić, gdzie ci się podoba. Dla dalszych instrukcji założymy, że plik konfiguracyjny umieściłeś w /etc, plik logujący to /var/log/samba-log.%m i katalog blokujący to /var/lock/samba.

    Zainstaluj plik konfiguracyjny smb.conf. Przejdź do katalogu, gdzie została skompilowana Samba. Zajrzyj do katalogu examples/simple i przeczytaj plik README. Skopiuj znaleziony tam plik smb.conf do /etc. OSTROŻNIE !!! Jeśli masz dystrybucję Linux-a, która miała Sambę i zainstalowałeś ją to pewnie masz już plik smb.conf w katalogu /etc i lepiej zacznij od tego pliku.

    Jeśli nie chcesz umieszczać pliku konfiguracyjnego w /etc, to umieść go tam, gdzie chcesz i zrób symboliczne dołączenie:


         ln -s /gdzie/jest/smb.conf /etc/smb.conf
    

    3. Uruchamianie demonów.

    Dwoma demonami SMB są: /usr/sbin/smbd i /usr/sbin/nmbd. Możesz je uruchomić przez demona inetd lub jako osobne procesy. Jeśli konfigurujesz na stałe serwer plikowy, to powinny one być uruchamiane przez inetd po to, żeby je ponownie uruchomić jeśli z jakiegoś powodu przestaną działać. Jeśli chcesz korzystać z Samby tylko czasami, to możesz je uruchomić z któregoś ze skryptów startowych w katalogu /etc/rc.d albo po prostu od ręki wtedy kiedy je potrzebujesz.

    Aby uruchomić demony przez inetd umieść następujące linie w pliku /etc/inetd.conf:


     Serwis NetBIOS dla Samby
          # netbios-ssn
          stream tcp nowait root /usr/sbin/smbd smbd netbios-ns dgram udp wait
          root /usr/sbin/nmbd nmbd
    

    Następnie wyślij sygnał HUP do procesu nr 1:


         kill -HUP 1
    

    Dla użytkowników dystrybucji Red Hat. Aby uruchomić te demony ze skryptów startowych, umieść następujący skrypt w katalogu /etc/rc.d/init.d/smb i dołącz je symbolicznie do plików podanych w komentarzu:


         #!bin/sh
    
         #
         # /etc/rc.d/init.d/smb - startuje i zatrzymuje serwis SMB
         #
         # Następujące pliki powinny być symbolicznymi dołączeniami do
         # tego pliku:
         # /etc/rc.d/rc1.d/K35smb (Zatrzymuje serwis SMB podczas
         # zamknięcia systemu.
         # /etc/rc.d/rc3.d/S91smb (Startuje serwis SMB w trybie
         # wieloużytkownikowym
         # /etc/rc.d/rc6.d/K35smb (zatrzymuje serwis SMB podczas resetu)
         #
         
         # Biblioteka funkcji
         etc/rc.d/init.d/functions
               
         # Konfiguracja sieci
         etc/sysconfig/network
       
         # Sprawdź czy jesteśmy w sieci
         [ ${NETWORKING} = "no" ] && exit 0
           
         # Zobacz jak zostaliśmy wywołani
         case "$1" in
            start) echo -n "Starting SMB services: " 
                    daemon smbd -D
                    daemon nmbd -D
                    echo touch /var/lock/subsys/smb
            ;;
            stop) echo -n "Shutting down SMB services: "
                    killproc smbd
                    killproc nmbd
                    rm -f /var/lock/subsys/smb echo ""
            ;;
            *) echo "Usage: smb {start|stop}" exit 1
         esac
    

    Od tłumacza: Jeśli używasz dystrybucji Slackware. Umieść poniższy fragment w skrypcie startowym /etc/rc.d/rc.local:


       
       # czy jesteśmy w sieci
       [ ${NETWORKING} = "no" ] && exit 0
       
       # Uruchmon demony Samby
       /usr/sbin/smbd -D
       /usr/sbin/nmbd -D
    

    4. Ogólna konfiguracja. (/etc/smb.conf)

    Konfiguracja Samby na Unix-ie jest kontrolowana jednym plikiem: /etc/smb.conf. W pliku tym umieszczasz zasoby jakie chcesz udostępnić dla świata i jakie restrykcje chcesz wprowadzić.

    Ponieważ ta sekcja opisuje udostępnianie dysków i drukarek Linux-owych Windowsom, plik smb.conf będzie najprostszym z możliwych.

    Nie martw się o szczegóły. Późniejsze sekcje wprowadzą ogólny koncept.

    Każda sekcja pliku zaczyna się od nazwy jak np.: [global], [homes], [printers] itp.

    Sekcja [global] definiuje kilka ogólnych zmiennych, które będą się odnosić do wszystkich udostępnianych zasobów.

    Sekcja [homes] pozwala użytkownikom na dostęp do ich (i tyklo ich) katalogów domowych na lokalnej maszynie Linux-owej. Jeśli jakiś użytkownik Windows będzie chciał skorzystać z udostępnianych zasobów, to zostanie podłączony do swojego katalogu domowego. Zauważ, że aby to zrobić użytkownik musi mieć swoje konto na maszynie Linux-owej.

    Poniższy przykładowy plik smb.conf pozwala użytkownikom na dostęp do swoich katalogów domowych i na zapis do katalogu tymczasowego. Aby użytkownik Windows zobaczył udostępniane zasoby, Linux musi być w tej samej sieci lokalnej. Użytkownik Windows po prostu dołącza dysk sieciowy z Menedżera Plików lub Eksploratora Windows.

    W następnych sekcjach będą dodawane kolejne linie do tego pliku, aby umożliwić dostęp do większej ilości zasobów.


     etc/smb.conf
       ; 
       ; Po wprowadzeniu zmian do tego pliku zrestartuj demony Samby
       ; kill -9 `pidof smbd`; kill -9 `pidof nmbd`
       ; /usr/sbin/smbd; /usr/sbin/nmbd
       [global] Umieść to w pliku jeśli chcesz konto anonimowe guest account = nobody
          log file = /var/log/samba-log.%m lock directory = /var/lock/samba share
          modes = yes
    
       [homes] comment = Katalogi Domowe browseable = no read only = no create
          mode = 0750
    
       [tmp] comment = Miejsce na pliki tymczasowe path = /tmp read only = no
          public = yes
    

    5. Udostępnianie dysku Linux-owego komputerom z Windows.

    Jak widać na powyższym przykładzie udostępnianie dysków Linux-owych użytkownikom Windows jest proste. Dostęp do zasobów udostępnianych poprzez Sambę można w bardzo dużym stopniu kontrolować.

    Aby udostępnić wszystkim jakieś zasoby, dodaj poniższe linie do smb.conf:


       [public]     
       comment = Public Stuff path = /home/public public = yes writable = yes
          printable = yes
    

    Aby umożliwić zapis do tego katalogu tylko dla członków grupy staff, zmodyfikuj te linie w następujący sposób:


       [public]
       comment = Public Stuff path = /home/public public = yes writable = yes
          printable = no write list = @staff
    

    Więcej informacji na temat różnych sposobów udostępniania zasobów znajdziesz w dokumentacji do Samby.

    6. Udostępnianie dysku spod Windows maszynom z Linux-em.

    Wraz z dystrybucją Samby otrzymujemy klienta dla Unix-ów. Jego interfejs poleceń jest podobny do ftp. Możesz go używać, aby przenosić pliki między Windowsowym "serwerem" a klientem Linux-owym.

    Aby zobaczyć jakie zasoby sa udostępnione na danym hoście napisz:


         /usr/sbin/smbclient -L host
    

    gdzie host jest nazwą maszyny, której zasoby chcesz zobaczyć. Polecenie to zwróci listę nazw serwisów - to znaczy nazw dysków lub drukarek, które może udostępnić. Serwer Samby będzie cię pytał o hasło, o ile nie ma skonfigurowanego bezpiecznego dostępu.

    Np.


         smbclient -L zimmermann
    

    Polecenie to powinno wyświetlić coś na kształt:


     Server time is Sat Aug 10 15:58:27 1996 Timezone is UTC+10.0
    Password: Domain=[WORKGROUP] OS=[Windows NT 3.51] Server=[NT LAN Manager 3.51]
    
       Server=[ZIMMERMAN] User=[] Workgroup=[WORKGROUP] Domain=[]
    
               Sharename      Type      Comment
               ---------      ----      -------
               ADMIN$         Disk      Remote Admin public Disk Public C$ Disk
               Default share IPC$ IPC Remote IPC OReilly Printer OReilly print$
               Disk Printer Drivers
    
    
       This machine has a browse list:
    
               Server               Comment
               ---------            -------
               HOPPER               Samba 1.9.15p8 KERNIGAN Samba 1.9.15p8 LOVELACE
               Samba 1.9.15p8 RITCHIE Samba 1.9.15p8 ZIMMERMAN
    

    Browse list pokazuje inne serwery SMB udostępniające zasoby w sieci.

    Aby użyć klienta napisz:


         /usr/sbin/smbclient serwis <hasło>
    

    gdzie serwis jest nazwą maszyny i zasobu. Na przykład jeśli próbujesz dostać się do katalogu, który jest udostępniany jako public na maszynie o nazwie zimmermann, serwisem byłoby: \\zimmerman\public. Chociaż z powodu powłoki w Linux-ie będziesz musiał oznaczyć znaki \ specjalnie i polecenie ostatecznie wygląda tak:


         usr/sbin/smbclient \\\\zimmerman\\public hasło
    

    gdzie hasło jest łańcuchem znaków będącym twoim hasłem.

    Pojawi się wtedy znak zachęty klienta Samby:


        Server time is Sat Aug 10 15:58:44 1996 Timezone is UTC+10.0
        Domain=[WORKGROUP] OS=[Windows NT 3.51] Server=[NT LAN Manager
        3.51] smb: \>
    

    Napisz 'h', aby uzyskać pomoc:


         smb: \> h ls dir lcd cd pwd get mget put mput rename more mask del rm
         mkdir md rmdir rd prompt recurse translate lowercase print prin