CIFS

Kohteesta Linux.fi
Loikkaa: valikkoon, hakuun

CIFS (Common Internet Filesystem) on uusi nimi SMB-verkkotiedostojärjestelmälle. CIFS-nimen käyttöönoton yhteydessä Microsoft lisäsi SMB:hen joitakin ominaisuuksia. Nykyisin SMB ja CIFS ovat käytännössä synonyymejä. SMB- ja CIFS-toiminnallisuutta Linuxissa tarjoaa Samba-ohjelmistopaketti.

Milloin käyttää CIFS-protokollaa?[muokkaa]

CIFS-protokolla ei toimi versiota 2.4.14 vanhemmissa ytimissä.

CIFS:n edut suhteessa SMB:hen[muokkaa]

  • CIFS VFS (Virtual File System) on suunniteltu hyödyntämään kehittyneitä verkkotekniikoita, kuten lukittautumista (eng. locking), Unicode-merkistöä, kovia linkkejä, hajautettua ja itseään toistavaa tiedostojärjestelmää (dfs) sekä jaettua puskurointia. CIFS tukee oletuksena DNS-pohjaisia nimiä sen sijaan, että käyttäisi RFC1001- ja Netbios-nimiä.
  • Version 1.48 myötä CIFS tukee myös krb5/SPNEGO-tunnistautumista. Toisin sanoen silloin, kun tarvitaan erityistä turvallisuutta, ei ole enää pakottavaa syytä käyttää SMB-protokollaa. Toinen mahdollisuus on käyttää NFSv4-protokollaa, mutta se on toisaalta vaikeampi asettaa käyttämään Microsoftin kehittämää Active Directory-palvelua (jonka kautta Kerberosta käytetään Windows-maailmassa).
  • CIFS on myös varteenotettava vaihtoehto joissakin yhteensopimattomuustapauksissa. Esimerkiksi käytettäessä Dlinkin NAS-323-tiedostopalvelinta on suositeltavaa käyttää SMB:n sijasta CIFS:iä.
  • CIFS on yhteensopiva ja voi toimia rinnakkain SMB:n kanssa.

Suorituskyky[muokkaa]

Parhaimman suorituskyvyn saamiseksi on yleensä järkevää käyttää NFS:ää. NFSv3 erityisen tehokas silloin, kun yksi prosessi käsittelee suuria tiedostoja, joskin CIFS on hiljalleen kuromassa eroa umpeen.

CIFS:in ja SMB:n erot[muokkaa]

Asetukset[muokkaa]

Toisin kuin SMB, käyttää CIFS asetuksissaan /proc-hakemistoa (esim. /proc/fs/cifs). Lisäksi CIFS ei hyödynnä Samban työkaluja kuten smbmountia. Suurin osa CIFS:in toiminnallisuudesta on sulautettu ytimeen, joskin CIFS hyödyntää pientä käyttäjätilassa toimivaa liitosavustajaa (/sbin/mount.cifs).

Tiedostojärjestelmän liittäminen[muokkaa]

Liitettäessä CIFS-tiedostojärjestelmiä vuotta 1997 vanhempiin palvelimiin, voi joutua asettamaan kaksi lisäkenttää.

  • a) CIFS ei oleta, että palvelimen netbios-nimi ja TCP/IP-osoite vastaavat toisiaan. Palvelimen Netbios-nimi määritetään asetuksella servern=PALVELIMENNIMI (Netbios-nimi kirjoitetaan yleensä isolla). Mm useimmille vanhoille Lanman-palvelimille pitää määrittää tcp- ja Netbios-nimet:
 mount -t cifs //palvelimen-tcp-nimi/jako     /mnt     -o     user=username,sec=lanman,servern=PALVELIMENNIMI
  • b) Turvallisuusasetuksen sec=lanman pitää olla päällekytkettynä, jotta asiakaskone voi lähettää vanhemmille palvelimille heikomman hash-tunnisteen. Windows 98 vaatii tämän toimiakseen, mutta asetus vaarantaa myös verkon muut salasanat. Liitettäessä uudempiin palvelimiin jotka käyttävät vahvempaa ntlmv2-tunnistusta, vaaditaan usein lisäasetus sec=ntlmv2 ellei asetusta ole muutettu /proc/fs/cifs-tiedostosta.

Etätiedostojen oletus-UID/GID-tila[muokkaa]

Liitettäessä palvelimiin, jotka pystyvät käsittelemään UID- ja GID-tunnuksia, kuten Sambaa käyttävät palvelimet, voi olla tarpeellista poistaa Unix-laajennokset (engl. Unix extensions) käytöstä, mikäli palvelimen ja asiakaskoneen UID- ja GID-tunnukset eivät täsmää. Palvelimet, jotka eivät tue Unix-laajennosta suoraan, kuten useimmat Windowsit, raportoivat SMB:n suhteen poikkeavia arvoja. Näissä tapauksissa oletusasetus voidaan muuttaa käyttämällä lisäasetuksia file_mode ja dir_mode.

Katso myös[muokkaa]