Ero sivun ”Samba” versioiden välillä
(Kumottu muokkaus #23518, jonka teki ARTTUSN WIHOWIIMEINEN MARSSI TÄYTIN TOIVEENNE PÄÄSETTE NYT EROON MUSTA!!!!!!!! ([[User talk:ARTTUSN WIH) |
Pb (keskustelu | muokkaukset) (cifs-liitosohje sopii paremmin tänne) |
||
Rivi 1: | Rivi 1: | ||
Samba on | Samba on Unixeille tehty [[avoin lähdekoodi|avoin]] toteutus Windowsissakin käytetystä [[SMB]]/[[CIFS]]-tiedostonsiirtoprotokollasta. | ||
==Asennus== | |||
Samba-[[palvelin]]ohjelmisto löytyy käytännössä kaikissa [[jakelu]]issa [[paketinhallintajärjestelmä|paketista]] <tt>samba</tt>. | |||
SMB/CIFS-tiedostojärjestelmän [[mount|liittämiseen]] tarvittavat ohjelmistot löytyvät jakelusta riippuen joko paketista <tt>cifs-mount</tt>, <tt>mount-cifs</tt>, <tt>samba-client</tt> tai <tt>smbfs</tt>. | |||
==Palvelimen asetukset== | |||
Asennettuasi Samba-palvelinohjelman, lisää käyttäjiä [[komentorivi]]komennolla | |||
[[smbpasswd]] -a käyttäjänimi | |||
Huomaa että voit tälla tavalla tehdä samba-käyttäjiä vain koneen nykyisistä unix-käyttäjistä. Saatat siis haluta tehdä ensin uuden käyttäjän koko käyttöjärjestelmään. Se onnistuu komennolla | |||
[[useradd]] -m tunnus | |||
Salasanan käyttäjälle voi asettaa komennolla | |||
[[passwd]] tunnus | |||
Jaettuja hakemistoja ja muita Samba-palvelimen asetuksia voi säätää [[asetustiedosto]]ssa <tt>/etc/samba/[[smb.conf]]</tt>. | |||
Samba osaa käyttää myös ulkoista salasanapalvelinta ja luoda paikallisia tunnuksia tarpeen mukaan. Tästä lisää Samban dokumentaatiossa. | Samba osaa käyttää myös ulkoista salasanapalvelinta ja luoda paikallisia tunnuksia tarpeen mukaan. Tästä lisää Samban dokumentaatiossa. | ||
Voit myös käyttää sambaa | Voit myös käyttää sambaa Unix-koneilta Windows-jakojen käyttöön. [[Smbclient]]-ohjelmistolla voit kirjautua [[FTP]]-tyylisesti samba-palvelimelle, ja esimerkiksi siirtää tiedostoja palvelimelle/palvelimelta. Jos [[SELinux]]ia käyttäessä ilmenee ongelmia Windows-jakoon kirjoittamisesssa (ei lukemisessa), voit kokeilla poistaa smb-[[taustapalvelu]]lta SELinux-tuen. Tämä tapahtuu SELinuxin asetusohjelmassa. | ||
==Samba-jaon liittäminen== | |||
Voit lisätä Samba-jaon käyttämällä palvelimen [[wikipedia:en:NetBIOS|NetBIOS]]-nimeä tai IP-osoitetta. IP-osoite on luotettavampi ja toimii varmemmin, mutta sitä käytettäessä täytyy jotenkin estää osoitteen vaihtuminen, tai joutuu tasaisin väliajoin muuttamaan asetuksia. | |||
IP-osoitteen muuttumisen voi estää joko sitomalla se reitittimessä ([[DHCP]]-palvelimessa) tiettyyn [[wikipedia:fi:MAC-osoite|MAC-osoitteeseen]] tai käyttämällä staattista IP-osoitetta. | |||
===Valmistelu=== | |||
Aluksi pitää luoda [[hakemisto]] (liitospiste), jonne jako halutaan liittää. Perinteisesti liitospisteet on luotu hakemiston [[hakemistorakenne|/mnt]] alle. Ainakin joissain [[työpöytäympäristö]]issä hakemiston /media alle liitetyt tiedostojärjestelmät näkyvät automaattisesti kuvakkeena työpöydällä. | |||
Jos DHCP-palvelinta käytetään IP-osoitteiden jakamiseen, on suotavaa käyttää NetBIOS-nimeä, jotta asetuksia ei tarvitse muuttaa joka kerta kun verkko sammutetaan. Mikäli käytössä on IP-osoite, voit hypätä kohtaan liittäminen. | |||
Etsitään [[asetustiedosto]]sta <tt>/etc/nsswitch.conf</tt> rivi | |||
hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4 | |||
ja lisätään sinne sana <tt>wins</tt> '''ennen''' kohtaa dns | |||
hosts: files mdns4_minimal [NOTFOUND=return] wins dns mdns4 | |||
Asennetaan [[winbind]]. Useimmissa jakeluissa se löytyy joko paketista <tt>samba-winbind</tt>, <tt>winbind</tt> tai sitten se on sisällytetty pakettiin <tt>samba</tt>. | |||
Kun olet käynyt edellä olevat vaiheet lävitse, käynnistä <tt>netfs</tt>-[[init]]-skripti (tai tietokone) uudelleen. | |||
===Väliaikainen liittäminen=== | |||
Käyttettäessä tätä tapaa on jako liitettävä joka kerta uudelleen, kun tietokone on käynnistetty uudelleen. | |||
Mikäli liitettävä palvelin vaatii salasanaa: | |||
[[mount]] -t cifs //netbiosnimi/jaon_nimi /mnt/jaon_nimi -o username=käyttäjänimi,password=salasana,iocharset=utf8,file_mode=0777,dir_mode=0777 | |||
Mikäli palvelin ei vaadi salasanaa: | |||
mount -t cifs //netbiosnimi/jaon_nimi /mnt/jaon_nimi -o guest,rw,iocharset=utf8,file_mode=0777,dir_mode=0777 | |||
Jos jakoon halutaan lukuoikeudet käyttäen vierastiliä: | |||
mount -t cifs //netbiosnimi/jaon_nimi /mnt/jaon_nimi -o guest,iocharset=utf8 | |||
===Pysyvä liittäminen=== | |||
Tätä tapaa käyttämällä jakoa ei tarvitse liittää uudestaan joka käynnistyksen jälkeen. Kaikki käynnistyksen yhteydessä liitettävät levyt tallennetaan /etc/[[fstab]]-[[asetustiedosto]]on. Fstabista voi olla hyvä luoda varmuuskopio ennen sen muokkaamista. | |||
Jos palvelin vaatii tunnistautumista, on järkevää luoda salasanoille ja käyttäjätunnuksille [[credentials]]-tiedosto, jossa salasanat ja tunnukset pysyvät piilossa. Tämä tapahtuu luomalla tiedoston <tt>/etc/samba/palvelin.credentials</tt> sisällöksi seuraavat rivit: | |||
username=käyttäjätunnus_palvelimeen | |||
password=käyttäjätunnuksen_salasana | |||
Muokkaa tiedoston oikeuksia niin, että vain pääkäyttäjä pystyy lukemaan sitä: | |||
[[chmod]] 700 /etc/samba/palvelin.credentials | |||
Mikäli liitettävä palvelin vaatii salasanaa, lisätään fstabin loppuun rivi | |||
//netbiosnimi/jaon_nimi /mnt/jaon_nimi cifs credentials=/etc/samba/palvelin.credentials,iocharset=utf8,file_mode=0777,dir_mode=0777 0 0 | |||
Mikäli palvelin ei vaadi salasanaa, lisätään rivi | |||
//netbiosnimi/jaon_nimi /mnt/jaon_nimi cifs guest,rw,iocharset=utf8,file_mode=0777,dir_mode=0777 0 0 | |||
Mikäli halutaan vain lukuoikeudet käyttäen vierastiliä, lisätään rivi | |||
//netbiosnimi/jaon_nimi /mnt/jaon_nimi cifs guest,iocharset=utf8 0 0 | |||
Kaikki fstabissa listatut listatut tiedostojärjestelmät voi liittää komennolla | |||
mount -a | |||
==Virheilmoituksia== | |||
===Liitosvirhe 13=== | |||
Jos näet liitosvirheen 13 = pääsy evätty: | |||
<tt>("CIFS VFS: cifs_mount failed w/return code = -13" in dmesg)</tt> kun olet antanut komennon <tt>mount -a</tt>, lisää liitoskomentoon asetus <tt>nounix</tt>. Esimerkiksi | |||
//netbiosnimi/jaon_nimi /mnt/jaon_nimi cifs credentials=/etc/samba/palvelin.credentials,'''nounix''',iocharset=utf8,file_mode=0777,dir_mode=0777 0 0 | |||
===Väli tiedoston nimessä=== | |||
Jos jonkin jaon nimessä esintyy väli, täytyy se korvata liitoskomennossa merkillä <tt>\040</tt> | |||
//netbiosnimi/jaon_nimi'''\040'''ja'''\040'''väli /mnt/jaon_nimi cifs credentials=/etc/samba/palvelin.credentials,iocharset=utf8,file_mode=0777,dir_mode=0777 0 0 | |||
===OpenOfficen tallennusvirhe=== | |||
Jos saat virheen yrittäessäsi muokata jaettua tiedostoa [[OpenOffice.org]]illa, täytyy lisätä asetus <tt>nobrl</tt> | |||
//netbiosnimi/jaon_nimi /mnt/jaon_nimi cifs credentials=/etc/samba/palvelin.credentials,iocharset=utf8,'''nobrl''',file_mode=0777,dir_mode=0777 0 0 | |||
===Pääkäyttäjän omistamat tiedostot=== | |||
Jos pystyt näkemään, mutta et muokkaamaan, poistamaan tai lisäämään tiedostoja [[Samba]]-jakoon, niin kokeile seuraavaa: | |||
1. Selvitä käyttäjänumerosi ([[UID]]) ja ensisijaisen ryhmäsi numero ([[GID]]). | |||
[[cat]] /etc/[[passwd-tiedosto|passwd]] | [[grep]] käyttäjätunnus | |||
Tuloste on seuraavaa muotoa, missä ensimmäinen numero (tässä 500) on UID ja toinen numero (tässä 100) GID. | |||
masa:x:500:100:Matti Meikäläinen ,,,:/home/masa:/bin/bash | |||
2. Lisää GID- ja UID-numerot, sekä asetus <tt>nounix</tt> fstabissa olevaan liitoskomentoon: | |||
/netbiosnimi/jako_nimi /mnt/jako_nimi cifs credentials=/etc/samba/palvelin.credentials,iocharset=utf8,'''gid=100''','''uid=500''','''nounix''',file_mode=0777,dir_mode=0777 0 0 | |||
===Tyhjä rivi puuttuu fstab-tiedostosta=== | |||
Jos fstab-tiedoston lopusta puuttuu tyhjä rivi, voi ilmaantua virheilmoitus | |||
(warning: no final newline at the end of /etc/fstab) | |||
Ongelma poistuu lisäämällä tyhjä rivi tiedoston loppuun. | |||
==Katso myös== | ==Katso myös== |
Versio 25. maaliskuuta 2009 kello 00.30
Samba on Unixeille tehty avoin toteutus Windowsissakin käytetystä SMB/CIFS-tiedostonsiirtoprotokollasta.
Asennus
Samba-palvelinohjelmisto löytyy käytännössä kaikissa jakeluissa paketista samba.
SMB/CIFS-tiedostojärjestelmän liittämiseen tarvittavat ohjelmistot löytyvät jakelusta riippuen joko paketista cifs-mount, mount-cifs, samba-client tai smbfs.
Palvelimen asetukset
Asennettuasi Samba-palvelinohjelman, lisää käyttäjiä komentorivikomennolla
smbpasswd -a käyttäjänimi
Huomaa että voit tälla tavalla tehdä samba-käyttäjiä vain koneen nykyisistä unix-käyttäjistä. Saatat siis haluta tehdä ensin uuden käyttäjän koko käyttöjärjestelmään. Se onnistuu komennolla
useradd -m tunnus
Salasanan käyttäjälle voi asettaa komennolla
passwd tunnus
Jaettuja hakemistoja ja muita Samba-palvelimen asetuksia voi säätää asetustiedostossa /etc/samba/smb.conf.
Samba osaa käyttää myös ulkoista salasanapalvelinta ja luoda paikallisia tunnuksia tarpeen mukaan. Tästä lisää Samban dokumentaatiossa.
Voit myös käyttää sambaa Unix-koneilta Windows-jakojen käyttöön. Smbclient-ohjelmistolla voit kirjautua FTP-tyylisesti samba-palvelimelle, ja esimerkiksi siirtää tiedostoja palvelimelle/palvelimelta. Jos SELinuxia käyttäessä ilmenee ongelmia Windows-jakoon kirjoittamisesssa (ei lukemisessa), voit kokeilla poistaa smb-taustapalvelulta SELinux-tuen. Tämä tapahtuu SELinuxin asetusohjelmassa.
Samba-jaon liittäminen
Voit lisätä Samba-jaon käyttämällä palvelimen NetBIOS-nimeä tai IP-osoitetta. IP-osoite on luotettavampi ja toimii varmemmin, mutta sitä käytettäessä täytyy jotenkin estää osoitteen vaihtuminen, tai joutuu tasaisin väliajoin muuttamaan asetuksia. IP-osoitteen muuttumisen voi estää joko sitomalla se reitittimessä (DHCP-palvelimessa) tiettyyn MAC-osoitteeseen tai käyttämällä staattista IP-osoitetta.
Valmistelu
Aluksi pitää luoda hakemisto (liitospiste), jonne jako halutaan liittää. Perinteisesti liitospisteet on luotu hakemiston /mnt alle. Ainakin joissain työpöytäympäristöissä hakemiston /media alle liitetyt tiedostojärjestelmät näkyvät automaattisesti kuvakkeena työpöydällä.
Jos DHCP-palvelinta käytetään IP-osoitteiden jakamiseen, on suotavaa käyttää NetBIOS-nimeä, jotta asetuksia ei tarvitse muuttaa joka kerta kun verkko sammutetaan. Mikäli käytössä on IP-osoite, voit hypätä kohtaan liittäminen.
Etsitään asetustiedostosta /etc/nsswitch.conf rivi
hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4
ja lisätään sinne sana wins ennen kohtaa dns
hosts: files mdns4_minimal [NOTFOUND=return] wins dns mdns4
Asennetaan winbind. Useimmissa jakeluissa se löytyy joko paketista samba-winbind, winbind tai sitten se on sisällytetty pakettiin samba.
Kun olet käynyt edellä olevat vaiheet lävitse, käynnistä netfs-init-skripti (tai tietokone) uudelleen.
Väliaikainen liittäminen
Käyttettäessä tätä tapaa on jako liitettävä joka kerta uudelleen, kun tietokone on käynnistetty uudelleen.
Mikäli liitettävä palvelin vaatii salasanaa:
mount -t cifs //netbiosnimi/jaon_nimi /mnt/jaon_nimi -o username=käyttäjänimi,password=salasana,iocharset=utf8,file_mode=0777,dir_mode=0777
Mikäli palvelin ei vaadi salasanaa:
mount -t cifs //netbiosnimi/jaon_nimi /mnt/jaon_nimi -o guest,rw,iocharset=utf8,file_mode=0777,dir_mode=0777
Jos jakoon halutaan lukuoikeudet käyttäen vierastiliä:
mount -t cifs //netbiosnimi/jaon_nimi /mnt/jaon_nimi -o guest,iocharset=utf8
Pysyvä liittäminen
Tätä tapaa käyttämällä jakoa ei tarvitse liittää uudestaan joka käynnistyksen jälkeen. Kaikki käynnistyksen yhteydessä liitettävät levyt tallennetaan /etc/fstab-asetustiedostoon. Fstabista voi olla hyvä luoda varmuuskopio ennen sen muokkaamista.
Jos palvelin vaatii tunnistautumista, on järkevää luoda salasanoille ja käyttäjätunnuksille credentials-tiedosto, jossa salasanat ja tunnukset pysyvät piilossa. Tämä tapahtuu luomalla tiedoston /etc/samba/palvelin.credentials sisällöksi seuraavat rivit:
username=käyttäjätunnus_palvelimeen password=käyttäjätunnuksen_salasana
Muokkaa tiedoston oikeuksia niin, että vain pääkäyttäjä pystyy lukemaan sitä:
chmod 700 /etc/samba/palvelin.credentials
Mikäli liitettävä palvelin vaatii salasanaa, lisätään fstabin loppuun rivi
//netbiosnimi/jaon_nimi /mnt/jaon_nimi cifs credentials=/etc/samba/palvelin.credentials,iocharset=utf8,file_mode=0777,dir_mode=0777 0 0
Mikäli palvelin ei vaadi salasanaa, lisätään rivi
//netbiosnimi/jaon_nimi /mnt/jaon_nimi cifs guest,rw,iocharset=utf8,file_mode=0777,dir_mode=0777 0 0
Mikäli halutaan vain lukuoikeudet käyttäen vierastiliä, lisätään rivi
//netbiosnimi/jaon_nimi /mnt/jaon_nimi cifs guest,iocharset=utf8 0 0
Kaikki fstabissa listatut listatut tiedostojärjestelmät voi liittää komennolla
mount -a
Virheilmoituksia
Liitosvirhe 13
Jos näet liitosvirheen 13 = pääsy evätty: ("CIFS VFS: cifs_mount failed w/return code = -13" in dmesg) kun olet antanut komennon mount -a, lisää liitoskomentoon asetus nounix. Esimerkiksi
//netbiosnimi/jaon_nimi /mnt/jaon_nimi cifs credentials=/etc/samba/palvelin.credentials,nounix,iocharset=utf8,file_mode=0777,dir_mode=0777 0 0
Väli tiedoston nimessä
Jos jonkin jaon nimessä esintyy väli, täytyy se korvata liitoskomennossa merkillä \040
//netbiosnimi/jaon_nimi\040ja\040väli /mnt/jaon_nimi cifs credentials=/etc/samba/palvelin.credentials,iocharset=utf8,file_mode=0777,dir_mode=0777 0 0
OpenOfficen tallennusvirhe
Jos saat virheen yrittäessäsi muokata jaettua tiedostoa OpenOffice.orgilla, täytyy lisätä asetus nobrl
//netbiosnimi/jaon_nimi /mnt/jaon_nimi cifs credentials=/etc/samba/palvelin.credentials,iocharset=utf8,nobrl,file_mode=0777,dir_mode=0777 0 0
Pääkäyttäjän omistamat tiedostot
Jos pystyt näkemään, mutta et muokkaamaan, poistamaan tai lisäämään tiedostoja Samba-jakoon, niin kokeile seuraavaa:
1. Selvitä käyttäjänumerosi (UID) ja ensisijaisen ryhmäsi numero (GID).
cat /etc/passwd | grep käyttäjätunnus
Tuloste on seuraavaa muotoa, missä ensimmäinen numero (tässä 500) on UID ja toinen numero (tässä 100) GID.
masa:x:500:100:Matti Meikäläinen ,,,:/home/masa:/bin/bash
2. Lisää GID- ja UID-numerot, sekä asetus nounix fstabissa olevaan liitoskomentoon:
/netbiosnimi/jako_nimi /mnt/jako_nimi cifs credentials=/etc/samba/palvelin.credentials,iocharset=utf8,gid=100,uid=500,nounix,file_mode=0777,dir_mode=0777 0 0
Tyhjä rivi puuttuu fstab-tiedostosta
Jos fstab-tiedoston lopusta puuttuu tyhjä rivi, voi ilmaantua virheilmoitus
(warning: no final newline at the end of /etc/fstab)
Ongelma poistuu lisäämällä tyhjä rivi tiedoston loppuun.