Smb cifs amr protokol untuk. Berkongsi akses kepada sumber rangkaian. Melumpuhkan folder rangkaian, menukar tetapan sambungan pada STB

1.3 Teknologi CIFS dan SMB

Protokol Akses Fail Internet Biasa Sistem fail- CIFS) berhutang asalnya kepada teknologi Server Message Block (SMB), yang pertama kali muncul dalam MS DOS 3.3. Standard SMB menerangkan protokol untuk menghantar arahan sistem fail (buka fail, baca, tulis, kunci dan tutup) daripada klien ke pelayan fail.
Sebelum membincangkan butiran teknikal teknologi CIFS dan SMB, adalah penting untuk memahami perbezaan utama antara mereka. Pada mulanya, hanya ada teknologi SMB, yang digunakan sebagai pelayan pelanggan protokol fail dalam dunia komputer peribadi. Pada pertengahan 1980-an syarikat Microsoft memberikan pelaksanaannya protokol SMB menamakan CIFS dan mula meletakkan CIFS sebagai pesaing langsung kepada piawaian WebNFS dan NFS. Microsoft menyerahkan RFC pengenalan kepada IETF (Pasukan Petugas Kejuruteraan Internet), dan dokumen itu kemudiannya tamat tempoh tanpa cuba menukar RFC kepada spesifikasi IETF.
Pembekal Bebas Microsoft peranti NAS mula membangunkan spesifikasi CIFS dan menganjurkan beberapa acara untuk mempromosikan CIFS. SNIA (Storage Networking Industry Association) telah mengambil tugas untuk menerbitkan CIFS. Microsoft juga mengeluarkan spesifikasi CIFS (dipanggil Common Internet Filesystem Protokol Akses), diedarkan secara percuma.
Spesifikasi SNIA CIFS dan Microsoft CIFS yang serupa menerangkan protokol yang digunakan Pelanggan Windows NT 4.0 untuk mendapatkan akses kepada sumber pelayan Windows NT. Kedua-dua spesifikasi tidak menangani SMB, yang digunakan dalam versi Windows yang lebih baharu (contohnya, ia tidak menangani caching klien, yang disokong dalam Windows 2000). Di samping itu, spesifikasi tidak menerangkan semua protokol komunikasi antara pelayan. Standard baru SMB, yang bukan sebahagian daripada spesifikasi percuma, diterangkan dalam spesifikasi sepadan yang diedarkan oleh Microsoft dengan bayaran, yang dimungkinkan oleh keputusan kehakiman Kesatuan Eropah dan kerajaan AS.
Oleh itu, Microsoft sekali lagi mula memanggil pelaksanaan teknologi yang diterangkan sebagai blok SMB. Pada asasnya, SMB Microsoft ialah protokol proprietari yang merupakan versi lanjutan standard industri CIFS.
Selain itu, perhatikan hubungan sejarah antara SMB/CIFS dan NetBIOS. Antara muka perisian NetBIOS (lapisan sesi dalam model OSI) kini sudah ketinggalan zaman. Antara muka melaksanakan lapisan abstraksi yang membolehkan aplikasi berfungsi dengan pelbagai protokol pengangkutan, seperti TCP/IP, NetWare atau protokol XNS (Sistem Rangkaian Xerox) yang kini dilupakan. Diperlukan untuk antara muka perisian aplikasi, yang menyediakan keupayaan untuk mencipta aplikasi yang tidak bergantung pada protokol rangkaian, masih wujud hari ini. Walau bagaimanapun, pada masa ini, antara muka soket biasanya digunakan untuk ini, khususnya dalam dunia Windows, antara muka Winsock.
Microsoft menggunakan NetBIOS untuk resolusi nama (menerjemahkan nama pelayan ke alamat rangkaian), tetapi kini perkhidmatan DNS standard melakukan ini.
Pada mulanya, Microsoft tidak menggunakan TCP/IP sebagai protokol pengangkutan, yang telah berubah secara dramatik dari semasa ke semasa, walau bagaimanapun Sokongan NetBIOS terus hadir. Walau bagaimanapun, peranan NetBIOS telah semakin berkurangan. Selepas menetapkan port TCP/IP untuk pelayan fail Kebergantungan SMB pada NetBIOS telah "sembuh" sepenuhnya, sekurang-kurangnya dalam konteksnya protokol asas. Tetapi keadaan tetap mengelirukan kerana beberapa perkhidmatan sekunder pada klien dan pelayan Windows masih memerlukan protokol NetBIOS. Contoh yang baik pelayan akan mengiklankan kehadiran mereka pada rangkaian dan menyediakan senarai perkhidmatan yang tersedia, serta penghantaran iklan ini kepada pelanggan oleh pelayan lain. Lama kelamaan, perkhidmatan telah direka bentuk semula dan NetBIOS telah dihapuskan sepenuhnya. Keluaran Windows 2000.
Akhirnya, warisan SMB boleh dilihat dalam setiap permintaan CIFS, kerana setiap permintaan dan respons mesti bermula dengan nilai "0xFF", diikuti dengan yang berikut aksara ASCII, seperti "SMB".

1.3.1 Variasi piawaian CIFS

Malangnya, tiada definisi yang tepat bagi piawaian CIFS. Pelbagai jenis protokol SMB dipanggil dialek. Berikut ialah beberapa pilihan yang mungkin:
■ digunakan oleh pelanggan DOS dan Windows 3.x;
■ digunakan apabila menyambung ke pelayan yang tidak menjalankan Windows;
■ digunakan oleh pelanggan yang menjalankan Windows NT.
Selalunya, pelanggan menghantar permintaan kepada pelayan untuk menubuhkan sesi dan menghantar senarai semua pilihan protokol yang disokong. Pelayan memilih pilihan yang paling berfungsi dan menghantar permintaan yang sepadan kepada klien. Bergantung pada protokol yang telah "dipersetujui" oleh klien dan pelayan, beberapa permintaan dan respons yang sepadan mungkin tidak sah. Versi protokol yang dipersetujui tidak mentakrifkan dengan jelas pelaksanaan sebenar fungsi protokol, yang menambah kekeliruan lagi; Sesetengah bendera boleh ditetapkan atau dikosongkan untuk menunjukkan sokongan untuk ciri tertentu. Dalam erti kata lain, walaupun semasa memilih protokol, terdapat pilihan yang berbeza untuk ciri yang disediakan: contohnya, salah satu bendera mungkin menunjukkan bahawa terdapat sokongan untuk nama fail yang panjang.
Seperti yang diterangkan dalam Microsoft RFC (kini usang oleh peraturan IETF), CIFS menyediakan interaksi pelayan-pelanggan untuk mengakses dan mengurus fail. Ciri-ciri seperti mengiklankan ketersediaan pencetak dan pelayan pada rangkaian adalah di luar keupayaan protokol CIFS.
SNIA terus mengusahakan spesifikasi CIFS. Di samping itu, SNIA menganjurkan persidangan tahunan CIFS dan acara lain yang membincangkan kebolehoperasian CIFS.
Spesifikasi SMB telah menjadi standard sejak 1992 (X/Open CAE Specification C209) dan menerangkan SMB sebagai protokol untuk menyediakan interaksi antara komputer yang menjalankan DOS, Windows, OS/2 dan UNIX.

1.3.2 Penerangan mengenai protokol CIFS

Permintaan dan respons CIFS mempunyai struktur yang jelas dan boleh difahami. Medan dalam paket SMB juga diseragamkan, dan perbezaan bergantung pada rasa CIFS yang dipilih dan ciri yang disokong oleh kedua-dua pelanggan dan pelayan.
Ambil perhatian bahawa hanya elemen biasa untuk semua varian SMB ditunjukkan. Butiran struktur setiap varian pakej SMB berada di luar skop artikel ini.
Sesetengah medan dalam jadual memerlukan lebih banyak penerangan penuh. Medan arahan adalah bersaiz satu bait dan menerangkan jenis permintaan. Pelayan menyalin nilai ini ke dalam respons, membolehkan pelanggan menghuraikan yang terakhir. Spesifikasi CIFS mengandungi makna dan takrifan untuk medan ini. Perintah yang diterangkan membolehkan anda melakukan operasi seperti membuka fail, membaca, menulis dan mengunci julat tertentu fail. Semua operasi ini dilakukan sebagai tindak balas kepada permintaan aplikasi.
Selain itu, permintaan klien CIFS (dan respons pelayan yang berkaitan) dimulakan oleh kod pengarah semula tanpa campur tangan aplikasi yang jelas. Contohnya ialah caching dan penguncian oportunistik. Spesifikasi CIFS RFC dan SNIA, serta Kumpulan Terbuka, mentakrifkan makna dan semantik kod arahan CIFS 1-bait.

Jadual Struktur pengepala SMB

Padang

Saiz

Penerangan

Sentiasa mempunyai nilai 0 xFFSMB

Menentukan jenis permintaan

Kod ralat 32-bit (dijana pelayan Windows NT dan dikembalikan sebagai kod ralat 32-bit kepada pelanggan yang menyokong kod Ralat Windows NT) ATAU

Untuk pelanggan lama yang tidak menyokong kod ralat 32-bit, mesej ralat ditukar kepada yang lama jenis struktur. Jenis lama termasuk:

■ Kelas ralat 8-bit, yang menunjukkan jenisnya, i.e. sama ada ralat ini dilaporkan oleh sistem pengendalian pelayan atau oleh pelayan itu sendiri; Sebagai alternatif, ia boleh menjadi perkakasan atau ralat protokol SMB;

■ 8 digit diabaikan;

■ Kod ralat 16-bit yang hanya bermakna dalam kelas ralat tertentu

Semantik dibentangkan dalam jadual. 3.2

Semantik dibentangkan dalam jadual. 3.3

Pengisian/

Mengisi/menandatangani. Dalam pertimbangan

dalam teks bahagian

Tid-value

Digunakan untuk mengenal pasti sumber pelayan yang diminta oleh klien. Ditentukan menggunakan permintaan SMB TreeConnect

Penerangan

Pengecam

2 bait, tetapi

Dipasang oleh pelanggan. Nota pada

proses (Pid)

jika perlu

proses klien yang dijalankan

permintaan. Digunakan oleh pelayan untuk

Mungkin

mod pembukaan fail penjejakan

diperluaskan kepada

dan untuk menyekat. Dihantar oleh pelayan

kembali kepada pelanggan bersama-sama dengan pengecam pemultipleks (pertengahan) untuk yang unik. mengenal pasti permintaan yang pelayan bertindak balas

Pengecam

Dipasang dan digunakan oleh pelanggan.

pemultipleks

Pelayan mengembalikan Pertengahan yang diterima dalam tindak balas

atas permintaan. Pelanggan menggunakan nilai Pertengahan dan Pid untuk mengenal pasti permintaan yang menerima respons

Nilai Uid

Ditugaskan oleh pelayan selepas pengesahan pelanggan. Pelanggan mesti menggunakan Uid dalam semua permintaan

Pilihan

Pembolehubah

Terdiri daripada pembilang perkataan 16-bit, yang menunjukkan bilangan perkataan 16-bit yang mengikuti pembilang. Untuk setiap arahan SMB, pembilang ini biasanya merupakan nilai tetap dengan satu pembilang perkataan untuk arahan dan satu kedua untuk respons. Biasanya kaunter ini mempunyai nilai 5 atau kurang

Pembolehubah

Terdiri daripada pembilang perkataan 16-bit yang menunjukkan bilangan bait (perkataan 8-bit) data yang mengikuti pembilang. Berbanding dengan medan parameter, medan data boleh bersaiz lebih besar, contohnya 1 KB atau lebih. Dalam permintaan baca dan tulis SMB, medan ini mengandungi data sebenar yang sedang dibaca atau ditulis

Sila ingat bahawa nilai medan dan semantik baharu mungkin muncul tanpa amaran dengan keluaran baharu Versi Windows, kerana protokol CIFS terus berkembang.
Terdapat beberapa arahan untuk melakukan perkara yang sama operasi asas; sebagai contoh, terdapat beberapa kali arahan peribadi untuk buka, baca dan tulis. Sesetengah arahan tidak lagi digunakan, dan dalam beberapa kes arahan alternatif boleh digunakan, bergantung pada dialek protokol yang dipilih.
Berikut adalah contoh fungsi yang diterangkan dalam medan arahan.
■ Pemilihan jenis SMB.
■ Mewujudkan sesi komunikasi.
■ Menavigasi direktori dan menyenaraikan fail dan direktori.
■ Buka, cipta, tutup atau padam fail.
■ Mengunci dan membuka kunci bahagian tertentu fail.
■ Operasi pencetakan.
■ Pemberitahuan tentang perubahan pada fail dan direktori.
■ Transaksi di mana data, parameter dan operasi ditentukan. Pelayan CIFS melaksanakan operasi yang diminta dan mengembalikan hasil - data dan parameter. Contoh urus niaga termasuk pautan dalam sistem fail yang diedarkan dan pengurusan atribut lanjutan.

Jadual Semantik medan Bendera

Maknanya

Penerangan

Terpelihara. Digunakan oleh pertanyaan warisan

Terpelihara. Mesti sama dengan sifar

Menunjukkan bahawa nama fail mestilah sensitif huruf besar

dan katalog

Terpelihara

Terpelihara. Digunakan oleh pertanyaan warisan

Terpelihara. Digunakan oleh pertanyaan warisan

Menunjukkan bahawa ini adalah respons SMB

Medan Flag2 menerangkan lebih banyak lagi fungsi pilihan. Nilai medan ini ditunjukkan dalam jadual di bawah.
Medan Isi/Tandatangan pada asalnya ialah jujukan bait tiruan. Dari masa ke masa, makna bidang ini telah berubah. Medan isian kini boleh memasukkan elemen berikut:

Jadual Semantik medan Flags2

Maknanya

Penerangan

Pelanggan menyokong nama fail yang panjang. Pelayan boleh mengembalikan nama fail yang panjang

Pelanggan menyokong atribut lanjutan OS/2

Penandatanganan paket SMB didayakan

Terpelihara

Terpelihara

Terpelihara

Setiap nama laluan dalam permintaan mewakili nama panjang

Terpelihara

Terpelihara

Terpelihara

Terpelihara

Petunjuk penggunaan mekanisme keselamatan lanjutan, yang dibincangkan dalam bahagian 3.3.3

Laluan dalam permintaan mesti diterjemahkan menggunakan sistem fail yang diedarkan

Halaman I/O yang menunjukkan bahawa bacaan harus dibenarkan apabila klien mempunyai kebenaran yang sesuai

Menunjukkan bahawa kod ralat 32-bit dikembalikan. Jika bendera tidak ditetapkan, kod ralat gaya DOS digunakan

Jika bendera ditetapkan, laluan dalam paket SMB adalah dalam format Unicode. Jika tidak berlaku Pengekodan ASCII

■ 2 bait ID proses, membenarkan ID proses 32-bit ditentukan;
■ 8 bait untuk menyimpan tandatangan paket SMB, jika fungsi ini didayakan (lihat penerangan medan Flags2);
■ 2 bait yang tidak digunakan.

1.3.3 Keselamatan CIFS

Protokol CIFS menyediakan keselamatan bahagian pelayan. Pentadbir boleh melumpuhkan keselamatan CIFS terbina dalam, yang mungkin tidak diperlukan, jadi keselamatan didayakan secara lalai.
Versi lama CIFS membenarkan menghantar kata laluan teks yang jelas daripada klien ke pelayan, yang sangat tidak digalakkan. Protokol CIFS membenarkan perlindungan sumber pelayan menggunakan kata laluan pengguna individu(ini dipanggil keselamatan peringkat pengguna). Untuk memastikan keserasian ke belakang, pelayan CIFS menyokong perlindungan perkongsian berasaskan kata laluan yang sama untuk semua pengguna. Memandangkan sumber akan dikongsi, kaedah ini dipanggil keselamatan peringkat sumber. Keselamatan peringkat sumber tidak disyorkan dan tidak tersedia dalam Pelayan Windows 2000. Paket SMB pertama yang dihantar ke pelayan oleh pelanggan dipanggil SMB_NEG0TIATE_PR0T0C0L. Pakej digunakan untuk memilih jenis CIFS. Sebagai tindak balas kepada permintaan SMB_NEG0TIATE_PR0T0C0L, pelayan melaporkan mekanisme keselamatan yang digunakan (peringkat pengguna atau sumber).
Bermula dengan Windows NT4 SP3 dan Windows 2000, Microsoft menyediakan keupayaan untuk menjadi hos dalam pakej SMB tandatangan digital. Pelayan boleh dikonfigurasikan untuk memerlukan tandatangan digital daripada pelanggan; jika tidak, pelanggan akan dinafikan akses kepada sumber. Menggunakan tandatangan digital menjejaskan prestasi pelayan dan pelanggan, tetapi ini adalah harga yang perlu anda bayar untuk keselamatan. Sila ambil perhatian bahawa penandatanganan dan pengesahan adalah dua arah, i.e. klien menandatangani permintaan yang dihantarnya, pelayan mengesahkan tandatangan klien dan menandatangani respons yang dihantarnya, dan kemudian klien mengesahkan tandatangan pelayan. Tandatangan paket SMB disimpan dalam medan Isi/Tandatangan.
Respons kepada permintaan SMB_NEG0TIATE_PR0T0C0L digunakan untuk memberikan pelanggan maklumat tentang sokongan pelayan untuk menandatangani paket SMB dan sama ada menandatangani paket SMB diperlukan.

1.3.4 Pengesahan CIFS

Protokol CIFS membolehkan anda menentukan tahap keselamatan antara pelayan dan pelanggan. Pelayan boleh dikonfigurasikan untuk menolak perkhidmatan kepada pelanggan yang menawarkan tahap keselamatan yang terlalu rendah.
Protokol CIFS menyediakan mekanisme pengesahan yang diperlukan untuk pelayan untuk mengesahkan klien. Kaedah untuk mengesahkan pelayan oleh pelanggan juga disediakan. Dalam tahap asas pengesahan, pelanggan menyediakan nama pengguna dan kata laluan yang tidak disulitkan. Atas sebab yang jelas, pendekatan ini tidak diingini. Selain itu, pelayan boleh dikonfigurasikan untuk menolak perkhidmatan kepada pelanggan yang menghantar kata laluan dalam teks yang jelas.
Pengesahan boleh dilakukan menggunakan teknologi yang dipanggil protokol cabaran/tindak balas. Apabila pelanggan menghantar paket SMB_NEGOTIATE_PROTOCOL untuk memilih jenis CIFS, bendera dalam respons pelayan menunjukkan bahawa protokol permintaan/tindak balas boleh digunakan. Jika pelayan menyokong protokol ini, cabaran 8-bait disediakan dalam respons pelayan. Permintaan ialah nilai rawak dengan kebarangkalian penjanaan semula yang sangat rendah. Kedua-dua pelanggan dan pelayan menjana kunci daripada kata laluan pengguna. Selepas ini, permintaan itu disulitkan menggunakan kunci dan Algoritma DES(Standard Penyulitan Data). Pelanggan menghantar permintaan kepada pelayan, dan pelayan membandingkan respons dengan nilai yang dikira sendiri. Jika kedua-dua nilai sepadan, pelanggan membuktikan pengetahuan tentang kata laluan dan mengesahkan kesahihannya.
Selain itu, protokol CIFS menyokong keselamatan lanjutan (anda mungkin tidak menjangkakan bahawa pembaca yang meneka petunjuk sokongan keselamatan lanjutan dalam respons pelayan kepada permintaan SMB_NEGOTIATE_PROTOCOL akan menerima ganjaran). Mekanisme keselamatan lanjutan menyediakan keupayaan untuk menyokong protokol pengesahan tersuai dalam protokol CIFS. Apabila anda memilih keselamatan lanjutan, gumpalan keselamatan pertama disediakan sebagai tindak balas kepada permintaan SMB_NEGOTIATE_PROTOCOL. Objek binari keselamatan tidak diproses oleh protokol CIFS. Untuk melakukan ini, ia bergantung pada mekanisme klien dan pelayan untuk menjana dan memproses objek binari. Gumpalan keselamatan seterusnya boleh dihantar dengan data SMB.
Menggunakan mekanisme Keselamatan Lanjutan membenarkan Microsoft menyediakan sokongan untuk protokol Kerberos dalam Windows 2000 dan kemudian versi kemudian. Pelaksanaan Windows 2000 Kerberos ialah contoh penggunaan elemen peribadi. Contohnya, beberapa medan kelayakan Kerberos digunakan untuk menyampaikan maklumat tentang kumpulan yang menjadi milik klien. Pelaksanaan Microsoft Kerberos membolehkan pengesahan bersama, di mana bukan sahaja pelayan mengesahkan klien, tetapi sebaliknya, klien mengesahkan pelayan.
Microsoft menawarkan cara lain untuk mewujudkan sesi antara pelanggan dan pelayan, dipanggil Netlogon. Ini menggunakan data tentang komputer (bukan pengguna). Protokol Netlogon diperlukan untuk mewujudkan sesi RPC yang selamat dan mempunyai banyak lagi lebih banyak kemungkinan, kerana ia menyokong token akses pengguna yang tidak disokong semasa pendaftaran menggunakan protokol CIFS. Biasanya Netlogon digunakan untuk komunikasi antara pelayan (satu pelayan bertindak sebagai pelanggan pelayan lain).
Akhir sekali, pelayan CIFS tidak semestinya perlu menyediakan mekanisme pengesahan. Protokol CIFS menyokong pengesahan hujung ke hujung, di mana pelayan menerima permintaan daripada pelayan lain, menghantar permintaan itu kepada klien dan mengembalikan respons klien kepada pelayan pengesahan. Dalam kes ini, jika pelayan pengesahan bertindak balas secara positif, pelanggan diberikan akses kepada sumber yang diminta. Mekanisme ini dikenali sebagai pengesahan hujung ke hujung.

1.3.5 Pilihan pengoptimuman CIFS

Protokol CIFS mempunyai pelbagai keupayaan untuk mengoptimumkan interaksi antara klien dan pelayan.

1.3.5.1 Fungsi CIFS AndX

Protokol CIFS membolehkan anda menjana urutan permintaan yang saling bergantung antara satu sama lain, jadi pengoptimuman operasi ini membolehkan anda melengkapkan permintaan dalam satu panggilan ke pelayan. Ciri ini dipanggil AndX; Sistem fail NFS versi 4 menyediakan fungsi yang serupa dalam bentuk prosedur COMPOUND. Contohnya adalah menghantar permintaan OpenAndRead atau WriteAndClose ke pelayan CIFS. Daripada menghantar dua permintaan berasingan, seperti Buka dan kemudian Baca, dan menerima dua respons, satu permintaan OpenAndRead dihantar dan satu respons diterima. Ini amat penting apabila permintaan/masa respons terlalu lama.

1.3.5.2 Penyekatan oportunistik

Protokol CIFS menyokong teknologi pengoptimuman prestasi yang dipanggil penguncian opportunistik (atau oplock). Terdapat dua sebab utama untuk menggunakan penyekatan oportunistik.
Yang pertama ialah mengunci fail dan memulakan caching setempatnya. Apabila keadaan penyekatan tidak dapat dikekalkan lagi, protokol membenarkan kelewatan tertentu di mana pelanggan mesti mengosongkan cache. Mengunci dan membuka kunci dilakukan secara telus kepada aplikasi menggunakan klien CIFS dan sistem pelayan. Walau bagaimanapun, pengubahsuaian aplikasi tidak diperlukan untuk meningkatkan prestasi.

Bayangkan aplikasi yang membuka fail pelayan rangkaian baca-tulis dan tulis rekod 128-bait ke fail. Tanpa oplock, setiap penulisan 128-bait memerlukan data untuk dipindahkan ke seluruh rangkaian. Menggunakan oplock membolehkan anda membuat cache fail secara setempat pada sistem klien dan menggabungkan berbilang penulisan menjadi satu yang mengakibatkan data dipindahkan melalui rangkaian. Sebagai contoh, katakan pelanggan menggunakan 4096 penimbal dan menulis 128 bait ke fail secara berurutan. Penampan pertama akan mengandungi data 32 tulis (4096/128 = 32), dan semua data 32 tulis akan dipindahkan melalui rangkaian dalam satu permintaan tulis ke fail. Jika penulisan tidak boleh dicache, 32 penulisan akan dihantar melalui rangkaian (bukannya hanya satu seperti dengan caching). Mengurangkan bilangan tulis daripada 32 kepada satu menghasilkan pengurangan ketara dalam beban rangkaian dan peningkatan prestasi yang ketara.
Tujuan kedua penyekatan oportunistik adalah untuk memperluaskan keadaan di mana penyekatan sedemikian mungkin. Dengan menggunakan oplock anda boleh meningkatkan kecekapan caching. Memperluas keadaan di mana penyekatan oportunistik mungkin menyediakan beberapa faedah tambahan. Mari kita anggap bahawa contoh aplikasi membuka fail (pada pelayan rangkaian) untuk membaca dan menulis. Ini meminta dan memberikan oplock. Kod pelanggan mungkin menulis cache pada fail. Mari kita anggap bahawa satu lagi contoh aplikasi yang sama dijalankan pada klien yang berbeza. Salah satu jalan keluar dari situasi ini adalah dengan mengalih keluar oplock dan menggunakan rangkaian I/O untuk menghantar permintaan tulis kepada fail daripada kedua-dua aplikasi. Cara lain ialah dengan melepaskan oplock apabila contoh kedua aplikasi cuba melakukan operasi tulis. Selalunya aplikasi tidak melakukan operasi tulis sama sekali.
Apabila keadaan berubah, pelayan menghantar pemberitahuan kepada klien untuk melepaskan oplock. Contoh situasi di mana pelayan menghantar pemberitahuan untuk melepaskan oplock adalah permintaan untuk pelanggan lain untuk mengakses atau menulis data ke fail. Pelayan memastikan data keadaan pelayan dibersihkan (termasuk menutup sesi klien) jika klien tidak bertindak balas kepada permintaan untuk melepaskan oplock. Pelanggan meminta oplock hanya apabila perlu; contohnya, jika aplikasi meminta agar fail dibuka untuk akses eksklusif, meminta oplock tidak masuk akal.
Penyekatan oportunistik dilaksanakan dalam tiga varian:

Urutan operasi untuk penguncian oportunistik eksklusif

■ penyekatan oportunistik eksklusif;
■ sekatan oportunistik kelompok;
■ penyekatan oportunistik peringkat kedua. Senario ini diterangkan dengan lebih terperinci di bawah.

Penyekatan oportunistik eksklusif

Pilihan penguncian ini diminta oleh pengarah semula mini CIFS apabila aplikasi membuka fail untuk membaca atau menulis. Pelayan memberikan oplock jika fail belum dibuka oleh klien lain. Urutan operasi ditunjukkan dalam rajah.
Untuk memulakan, pelanggan pertama menghantar permintaan untuk membuka fail, meminta oplock eksklusif. Pelayan melakukan pengesahan yang diperlukan dan menyediakannya. Pelanggan pertama mula menyimpan fail, melakukan operasi baca-depan dan malas-tulis. Selepas beberapa lama, pelanggan lain, contohnya klien 2, menghantar permintaan kepada pelayan untuk membuka fail yang sama. Pelayan mencatatkan bahawa Klien 1 memegang oplock eksklusif pada fail yang diminta dan menghantar pemberitahuan pelepasan kunci kepada Klien 1. Klien 1 mengosongkan penimbal data dengan mengeluarkan permintaan tulis dan kunci yang diperlukan pada fail. Setelah data keadaan fail telah ditulis, klien 1 memberitahu pelayan bahawa pemprosesan pemberitahuan keluaran oplock telah selesai. Pada ketika ini, pelayan menghantar respons kepada klien 2, membenarkannya membuka fail. Pelanggan 1 terus bekerja dengan fail tanpa melakukan sebarang caching setempat. DALAM dalam kes ini diandaikan bahawa klien 1 membuka fail dalam mod yang membolehkan klien lain membuka fail.

Penyekatan oportunistik peringkat kedua

Ia adalah perkara biasa bagi pelanggan untuk membuka fail dalam mod baca/tulis dan tidak menulis apa-apa pada fail sehingga ia ditutup. Tahap 2 oplock direka untuk membenarkan perkongsian fail dan caching dalam situasi ini. Oplock eksklusif dan oplock kelompok (dibincangkan dalam bahagian seterusnya) sentiasa tersedia atas permintaan pelanggan. Tetapi oplock peringkat kedua tidak pernah diminta oleh pelanggan. Pelanggan bermula dengan meminta oplock eksklusif. Jika kunci sedemikian diberikan, pelayan boleh menurunkan taraf oplock eksklusif kepada kunci tahap kedua jika syarat tertentu dipenuhi (diterangkan di bawah).
Klien 1 bermula dengan meminta oplock eksklusif dan mula menyimpan fail secara setempat. Khususnya, Klien 1 melakukan baca ke hadapan dan secara setempat menyimpan data yang dikunci. Ingat bahawa dalam kes ini pelanggan tidak akan menulis data ke fail. Pada satu ketika, klien 2 meminta akses kepada fail yang sama. Pelayan menghantar 1 pemberitahuan kepada klien yang meminta oplock eksklusif diturunkan taraf kepada kunci tahap kedua. Pelanggan melepaskan kunci dan melaporkan bahawa pemprosesan pemberitahuan telah selesai. Seterusnya, pelayan menghantar mesej kepada klien 2 bahawa fail telah berjaya dibuka dan memberikan klien oplock peringkat kedua. Dalam kes ini, diandaikan bahawa klien 1, dengan membuka fail, memaklumkan pelayan bahawa pelanggan lain juga boleh mengakses fail tersebut.
Apabila menggunakan oplock peringkat kedua, pelanggan dilarang daripada menimbal data terkunci. Kelebihan reka bentuk ini ialah koheren data dipermudahkan pada bahagian pelayan, manakala pelanggan akan cache data yang dibaca, dengan itu mengurangkan jumlah maklumat yang dipindahkan melalui rangkaian. Sebaik sahaja salah seorang pelanggan mengeluarkan permintaan tulis, pelayan mengeluarkan oplock tahap kedua, selepas itu tiada kunci yang tinggal sama sekali. Memandangkan tiada pelanggan penimbal mengunci data apabila kunci peringkat kedua hadir, operasi tulis yang berjaya bermakna penulisan dilakukan ke kawasan fail yang tidak dikunci oleh pelanggan lain. Setelah oplock tahap kedua dikeluarkan, pelanggan dihalang daripada menimbal data bacaan.

Penyekatan oportunistik peringkat kedua

Batch oplocking

Pilihan menyekat ini digunakan untuk mengoptimumkan prestasi semasa memproses fail kelompok. Pemproses arahan biasanya membuka fail, mencari baris yang diperlukan, membacanya, menutup fail dan memproses baris baca menggunakan penterjemah baris arahan. Fail kemudiannya dibuka semula dengan baris seterusnya, fail ditutup, dan baris seterusnya diproses oleh jurubahasa baris arahan. Gelung ini berjalan sehingga semua baris dalam fail kelompok habis.

Batch oplocking

Di atas adalah urutan operasi. Klien 1 membuka fail kelompok dan meminta oplock kelompok. Mari kita anggap bahawa pelayan memberikan penguncian kelompok kerana tiada orang lain yang menulis data ke fail. Pelanggan 1 mencari dalam fail rentetan tertentu dan melakukan operasi baca. Jurubahasa melaksanakan baris baca. Fail kemudian ditutup. Pengarah semula mini CIFS tidak melakukan sebarang tindakan apabila ia menerima permintaan untuk menutup fail (iaitu, operasi tutup tertunda dilakukan). Jurubahasa baris arahan membuka fail, tetapi pengarah semula mini CIFS tidak melakukan operasi terbuka, tetapi hanya membatalkan operasi tutup fail menunggu giliran. Apabila jurubahasa baris arahan melakukan operasi carian dan baca pada rentetan, pengarah semula mini CIFS mengeluarkan permintaan carian dan baca.
Akibatnya, jumlah data yang dipindahkan melalui rangkaian berkurangan (kurang permintaan dibuat untuk membuka dan menutup fail). Di samping itu, penggunaan sumber pelayan dioptimumkan, kerana pelayan tidak perlu segera memproses permintaan untuk menutup fail dan kemudian membukanya semula.

Anda memerlukan ini jika Dreambox anda tidak mempunyai cakera keras, dan lambat laun anda mahu merakam filem, atau sebaliknya - lihat atau dengar fail audio-video dari komputer anda, atau untuk menyelesaikan masalah lain.

Apa yang diperlukan untuk itu?

Pertama sekali, keinginan dan perhatian. Komputer dengan kad rangkaian, kabel rangkaian silang dan Dreambox.

Selain itu, anda memerlukan ruang, dan banyak ruang, pada pemacu keras komputer anda.

Bagaimana ia berfungsi?

Folder awam (kongsi) dibuat pada komputer yang menjalankan Windows XP dan diberikan kebenaran baca dan tulis untuk pengguna tertentu.

Dan dalam Dreambox, bagi pihak pengguna ini, dia memasang (menyambung) folder ini ke sistemnya melalui rangkaian, dengan itu mendapat akses kepada cakera keras komputer anda.

Persediaan rangkaian tidak diliputi dalam artikel ini. Tetapi lihat di sini:

Penghala atau penghala TP-Link TL-WR340G / TL-WR340GD.

Pemasangan penghala d-pautan di-604.

Masalah dengan penghala atau penghala

Diandaikan bahawa anda telah menyediakan sambungan rangkaian antara komputer anda dan Dream. Kalau tak... MAGEM.

Beberapa kaveat.

Apabila bekerja pada baris arahan, kami menulis semua arahan, simbol dan tanda baca hanya dalam susun atur bahasa Inggeris!!!

Laluan ke folder dan fail dalam reka letak di mana ia dinamakan. Kerana, sebagai contoh, bahasa Rusia " A"dan bahasa Inggeris" a"Ini adalah huruf yang sama sekali berbeza untuk komputer.

Juga, beri perhatian khusus kepada ruang.

Ruang dilihat oleh komputer dengan cara yang sama seperti huruf lain. Jika terdapat ruang dalam laluan ke folder dan fail, maka sertakan laluan tersebut petikan berganda, sebagai contoh, seperti dalam arahan ini:

net share dreamshare=”C:\Documents and Settings\Kolya\My Documents\My Records” /unlimited.

Mari segera bersetuju bahawa:

IP komputer = 192.168.0.1
IP Dreambox = 192.168.0.2
Folder kongsi = C:\share_dream
Nama panggilan dia = dreamshare
Pengguna = abc
Kata laluan beliau = def

Adalah jelas bahawa "ip" anda mungkin berbeza, tetapi sangat sedikit... biasanya nombor terakhir.

Kami hanya akan bekerja dengan baris arahan. Seterusnya, masukkan arahan dan tekan kekunci Masuk!!!

Pergi:

Pada Windows: Mulakan -> Laksanakan -> cmd.exe

Mari tambah pengguna " abc"dengan kata laluan" def«:
pengguna bersih abc def /add /active:yes /passwordchg:no

(Dengan cara ini, jika nama pengguna anda ditulis dalam huruf Inggeris, contohnya Kolya, dan anda mempunyai kata laluan (juga dalam bahasa Inggeris atau nombor), maka anda tidak perlu menambah pengguna.

Untuk rakaman, adalah dinasihatkan untuk mencipta folder kongsi pada skru berkelajuan tinggi dengan sistem fail NTFS dan dalam partition bukan sistem. Itu. jika anda mempunyai Windows dalam partition C:, maka adalah dinasihatkan untuk membuat folder dalam bahagian tersebut D: atau E:(jika ada), dan perlu ada lebih banyak ruang dalam partition (20 GB atau lebih).

Dan adakah ia penting…

Mari buat folder untuk bola:
mkdir C:\share_dream

(Dengan cara ini, jika anda sudah mempunyai folder dengan video dan muzik, anda boleh menggunakannya. Adalah dinasihatkan supaya tiada huruf atau ruang bukan bahasa Inggeris di laluan ke sana (jika tidak, baca di atas cara untuk mengatasinya) .

Mari buat subfolder yang diperlukan untuk rakaman video:
mkdir C:\dream_share\movie

Mari buat fail ujian untuk ujian (untuk berjaga-jaga):
ujian gema sahaja - %date% > C:\dream_share\test.txt
Mari lumpuhkan akses mudah ke fail kongsi dan folder (barisnya panjang, tetapi perlu):
reg tambah "HKLM\SYSTEM\ControlSet001\Control\Lsa" /v "forceguest" /t REG_DWORD /d 0 /f

Mari kongsi folder dan beri alias dreamshare, di mana Dream akan mengakses folder melalui rangkaian:
kongsi bersih dreamshare=C:\dream_share /unlimited

Biarkan pengguna " abc»sambungkan folder melalui rangkaian dan dapatkan akses penuh kepadanya (tulis, baca, dsb.):
cacls C:\dream_share /e /g abc:f

(Jika perintah cacls mula memaki hamun, kemudian folder kongsi anda berada dalam partition FAT32, dan anda perlu mengutak-atik tetikus anda:

  1. Mulakan -> Panel kawalan -> Sifat folder-> penanda buku Lihat. Nyahtanda kotak " Gunakan akses mudah kepada fail kongsi". Jom berjimat.
  2. Klik kanan tetikus pada folder kongsi -> Hartanah-> penanda buku Akses umum-> butang kebenaran. Mari tambah pengguna " abc" dan berikan dia akses penuh. Jom berjimat.

Nah, yang kita tinggalkan ialah memasang folder kami ke Dream dan semak sama ada semuanya berfungsi.

Pada peringkat ini, anda mungkin perlu memulakan semula komputer anda dan log masuk semula menggunakan akaun anda. Walaupun ia berfungsi untuk saya juga - tanpa but semula.

Jika anda but semula, kemudian kembali ke cmd.exe .

Mari kita sambung ke Dream melalui Telnet, untuk melakukan ini kita menaip:
telnet 192.168.0.2

Jangan lupa itu 192.168.0.2 ini ialah alamat IP Dreambox anda, seperti yang kami persetujui pada mulanya.

Masukkan log masuk anda:

Masukkan kata laluan (lalai kotak impian):

kotak impian

Memasang folder kongsi dreamshare dari komputer ke folder /var/mnt/hdd pada Dreambox bagi pihak

pengguna abc(atau apa sahaja yang mereka panggil anda) dan dengan kata laluan def(sudah tentu, milik anda), ia mungkin mengambil sedikit masa:

Mount -t cifs -o rw,soft,udp,nolock,rsize=8192,wsize=8192,iocharset=utf8,user=abc,password= def //192.168.0.1/dreamshare /var/mnt/hdd

Kami menyemak:
mount -t cifs

Dan kami mendapat kira-kira output ini, yang mengatakan, folder apa dreamshare dipasang:
//192.168.0.1/dreamshare pada /var/mnt/hdd type cifs (rw,nodiratime,unc=\192.168.0.1\dreamshare,usernam e=abc,rsize=8192,wsize=8192)

Mari lihat apa yang ada dalam folder kongsi:
ls -l /var/mnt/hdd

Dan dapatkan kandungannya /var/mnt/hdd, di manakah fail yang kami buat test.txt dan folder filem :
drwxrwxrwx 1 akar akar 7 Jul 29 2008 movie
-rwsrwsrwt 1 punca akar 7 Jul 29 2008 test.txt

Mari semak sama ada kita boleh membuat fail dalam folder kongsi daripada Dreambox:
echo "Ujian daripada Dreambox" > /var/mnt/hdd/test_box.txt

Mari semak semula dengan pasukan ls:
ls -l /var/mnt/hdd

Mari padamkan fail ujian:
rm /var/mnt/hdd/test.txt /var/mnt/hdd/test_box.txt

Mari kita nyahlekap:
umount /var/mnt/hdd

Semua!!!

Sukar?

Ya, saya hampir terlupa. Untuk melekapkan talian secara kekal:
Kod:

Mount -t cifs -o rw,soft,udp,nolock,rsize=8192,wsize=8192,iocharset=utf8, user=abc,password=def //192.168.0.1/dreamshare /var/mnt/hdd

anda boleh menambahkannya pada beberapa skrip permulaan Dreambox, atau lakukan perkara standard:
(untuk Gemini: Menu -> 6 -> 5 -> 1 -> Butang biru)


IP komputer = 192.168.0.1
Jenis Gunung = CIFS
Direktori = dreamshare
Direktori tempatan = /var/mnt/hdd
Pilihan = rw,lembut,udp,nolock,iocharset=utf8
Pilihan tambahan = nolock, saiz=8192, saiz=8192
PENGGUNA = abc
KATA LALUAN = def
Automount = YA(iaitu tandakan kotak)

Nah sekarang itulah yang pasti!!!

P.S. Kaedah ini telah diuji dan berfungsi dalam Windows XP Pro, Windows XP Pro SP1, Windows XP Pro SP2. Tidak diuji dengan Windows XP Pro SP3 dan Window 7, tetapi kemungkinan besar ia juga akan berfungsi.

Dan ingat... kerja CIFS dan kerja Afrika

Belajar Linux, 302 (persekitaran bercampur)

Integrasi dengan protokol CIFS

Menggunakan Linux sebagai pelanggan untuk pelayan SMB/CIFS

Siri Kandungan:

Mengenai siri ini

Siri artikel ini akan membantu anda menguasai tugas pentadbiran bilik bedah. sistem Linux. Anda boleh menggunakan bahan dalam artikel ini untuk menyediakan peperiksaan LPIC Tahap 3 (LPIC-3).

Untuk melihat huraian artikel dalam siri ini dan mendapatkan pautan ke artikel tersebut, sila rujuk artikel kami. Senarai ini sentiasa dikemas kini dengan artikel baharu kerana ia sedia dan mengandungi matlamat semasa (sehingga November 2010). Peperiksaan pensijilan LPIC-3.

Artikel ini merangkumi topik berikut:

  • Protokol Blok Mesej Pelayan (SMB) dan Common Internet File System (CIFS).
  • Ciri dan faedah menggunakan CIFS.
  • Memasang perkongsian fail CIFS pada klien Linux.

Artikel ini akan membantu anda bersedia untuk mengambil LPI 302 (Pengkhususan Persekitaran Campuran) dan mengandungi bahan daripada Objektif 314.1 Topik 314. Objektif mempunyai berat 3.

Prasyarat

Untuk memanfaatkan sepenuhnya artikel kami, anda mesti mempunyai pengetahuan lanjutan tentang Linux dan mempunyai komputer Linux yang berfungsi yang boleh menjalankan semua arahan yang anda hadapi. Khususnya, diandaikan bahawa pembaca tahu cara bekerja dengan arahan Rentetan Linux, mengetahui asas konfigurasi Samba dan mempunyai idea umum tentang struktur fail konfigurasi smb.conf. Anda juga perlu mengetahui asas pemasangan tempatan dan fail yang dipadam sistem (menggunakan arahan mount dan fail /etc/fstab). Pengetahuan tentang arahan ftp yang disertakan dalam set standard Perintah teks Linux dialu-alukan, walaupun tidak diperlukan.

Apa itu SMB/CIFS

Mengenai Peperiksaan Pilihan LPI-302

Seperti kebanyakan program, program Pensijilan Institut Profesional Linux (LPIC) menawarkan tahap pensijilan yang berbeza, dengan setiap peringkat memerlukan pengetahuan yang lebih maju dan pengalaman praktikal. Peperiksaan LPI-302 ialah peperiksaan elektif LPIC Tahap 3 yang memerlukan pengetahuan lanjutan dalam bidang tersebut. pentadbiran sistem Linux.

Untuk mendapatkan pensijilan LPIC Tahap 3 (LPIC-3), anda mesti berjaya lulus dua peperiksaan Tahap 1 (101 dan 102), dua peperiksaan Tahap 2 (201 dan 202) dan peperiksaan Tahap 3 Teras 301 (LPIC-3). Jika anda telah melengkapkan pensijilan Tahap 3 anda, anda mungkin boleh mengambil peperiksaan elektif dalam pengkhususan tertentu, seperti peperiksaan LPI-302.

Sebelum beralih kepada cara menggunakan Linux sebagai pelanggan untuk pelayan SMB/CIFS, adalah berguna untuk membincangkan ciri-ciri protokol ini dan mengetahui sejauh mana ia menyediakan penggunaan sistem fail sepenuhnya apabila bekerja dengan Linux. Kami akan menerangkan cara mempelajari protokol SMB asal berfungsi dan ciri baharu yang dilaksanakan dalam pengubahsuaian CIFSnya. Anda mungkin ingin merujuk kepada artikel developerWorks untuk LPI Exam Objective 310.1, yang merangkumi beberapa konsep asas SMB/CIFS (lihat pautan di bawah ).

Ciri-ciri Utama SMB

SMB mempunyai beberapa keupayaan rangkaian yang unik, termasuk sistem sendiri penamaan komputer (Sistem Input/Output Asas Rangkaian, NetBIOS), kumpulan kerja dan protokol pengesahan. Untuk memahami cara SMB dan CIFS berfungsi dengan klien perkongsian fail Linux, kita perlu bercakap tentang ciri terpenting protokol ini: set metadata yang mereka sediakan.

Metadata- Ini adalah data yang dikaitkan dengan fail, tetapi bukan sebahagian daripadanya. Contoh metadata termasuk cap masa, pemilik, kebenaran, dan juga nama fail. Tidak syak lagi anda mengetahui beberapa cara untuk menggunakan metadata komputer Linux dan, mungkin, tentang beberapa perbezaan mereka dalam Linux dan sistem pengendalian lain, contohnya, Windows. Oleh kerana protokol SMB telah dibangunkan untuk DOS, Windows dan Sistem Pengendalian IBM/2® (OS/2), ia mengandungi banyak metadata yang khusus untuk sistem pengendalian tersebut. Walau bagaimanapun, yang lebih penting, SMB tidak menyokong metadata UNIX® dan Linux seperti pemilik, kumpulan dan kebanyakan kebenaran. Selain itu, SMB tidak menyokong pautan simbolik, pautan keras atau jenis fail khas lain seperti fail peranti. SMB mengandungi beberapa jenis metadata yang tidak diiktiraf oleh Linux dalam mod biasa cth bit tersembunyi(tersembunyi) arkib(arkib) dan sistem(sistemik). Bit Baca sahaja boleh dipetakan ke bit kebenaran Tulis dalam Linux.

Buat saluran anda sendiri

Anda boleh membuat suapan kemas kini RSS, Atom atau HTML anda sendiri dan menerima pemberitahuan tentang artikel baharu atau dikemas kini di tapak kami. Untuk melakukan ini, pergi ke halaman, pilih zon Linux, tandai kotak Artikel dan masukkan Linux Professional Institute sebagai frasa laluan, kemudian pilih jenis saluran yang dikehendaki.

Satu lagi batasan SMB ialah saiz maksimum fail sama dengan dua gigabait. Had ini merupakan masalah yang jelas dalam dunia arkib berbilang gigabait, fail multimedia, dsb.

Untuk membolehkan pelanggan Linux mengendalikan SMB dengan ciri di atas, mereka mesti sama ada mengabaikannya atau boleh menggunakan data "palsu". Pilihan ini serupa dengan yang digunakan semasa memasang fail Linux sistem NTFS atau LEMAK. Nasib baik, protokol CIFS menyediakan set alat yang lebih luas untuk mengatasi beberapa batasan ini.

Ia juga perlu untuk mengetahui tentang port rangkaian, digunakan oleh protokol SMB. Ini ialah port UDP (User Datagram Protocol) 137 dan 138, serta port TCP 139 (perkhidmatan sesi - dengan kata lain, pemindahan fail). Anda memerlukan maklumat ini apabila menyahpepijat SMB menggunakan utiliti diagnostik rangkaian peringkat rendah.

Sambungan CIFS untuk Protokol SMB

Pada pertengahan 1990-an, Microsoft® menamakan semula protokol SMB kepada CIFS dan pada masa yang sama menambah beberapa ciri baharu padanya, termasuk sokongan untuk pautan simbolik dan keras, serta fail besar. CIFS juga menyokong akses kepada pelayan melalui port TCP 445 selamat sebagai tambahan kepada port standard 139.

Sambungan CIFS lain telah terbukti sama pentingnya dengan sambungan SMB Microsoft sendiri. Khususnya, satu set fungsi yang dikenali sebagai sambungan UNIX(sambungan UNIX), menyediakan sokongan untuk pemilikan fail dan kebenaran bersama-sama dengan jenis metadata UNIX yang lain. Jika kedua-dua pelanggan dan pelayan menyokong sambungan ini, maka menggunakan protokol CIFS dan bukannya protokol SMB boleh memberikan yang lebih baik. kerja yang berkesan pelanggan di bawah Kawalan Linux. Seperti yang anda jangkakan, sambungan ini tidak disokong sistem operasi Keluarga Windows Server®, jadi ia hanya berguna apabila pelanggan Linux menyambung ke pelayan Samba. Pelayan mesti dikonfigurasikan dengan tetapan global berikut:

sambungan unix = Ya

Secara lalai tetapan ini ditetapkan kepada Tidak dalam semua versi Samba kurang daripada 3.0, tetapi dalam Samba 3.0 ia ditetapkan kepada Ya secara lalai, menghapuskan keperluan untuk mengkonfigurasinya secara manual.

Menggunakan smbclient

Mungkin cara paling mudah untuk mengakses pelayan SMB/CIFS daripada klien Linux ialah menggunakan utiliti baris arahan smbclient. Utiliti ini serupa dengan arahan ftp klasik, jadi jika anda biasa dengan ftp, anda akan mudah menguasai smbclient. Jika anda tidak biasa dengan ftp, maka sudah cukup untuk mengetahui bahawa program ini menyediakan sambungan ke pelayan tanpa pemasangan standard perkongsian fail. Sebaliknya, pengguna melaksanakan pelbagai arahan untuk melihat, memadam, memuat turun atau memindahkan fail.

Untuk menggunakan smbclient, anda mesti menaip nama arahan ini dan nama perkhidmatan pada baris arahan dalam format berikut: // SERVER / PERKHIDMATAN. Sebagai contoh, jika anda perlu mengakses bahagian GORDON pada pelayan TANGO, anda harus menentukan nama //TANGO/GORDON. Bergantung pada konfigurasi pelayan, anda mungkin dikehendaki memasukkan kata laluan. Jika dimasukkan kata laluan yang betul, maka anda boleh memasukkan pelbagai arahan untuk mengakses fail yang disimpan pada pelayan. Jadual 1 menyenaraikan beberapa arahan smbclient yang paling penting; Untuk maklumat tentang arahan lain yang lebih eksotik, lihat halaman manual utiliti.

Jadual 1. Perintah smbclient yang paling penting
PasukanTindakan
? atau pertolonganMenyenaraikan semua arahan
CDMenukar direktori kerja kepada pelayan jauh
delMemadamkan fail
dir atau lsMenyenaraikan fail dalam direktori semasa (atau ditentukan).
keluar atau berhentiTamat sesi
dapatkanMemindahkan fail dari pelayan kepada klien
lcdMenukar direktori kerja kepada komputer tempatan
md atau mkdirMencipta direktori pada pelayan jauh
mgetMemindahkan berbilang fail dari pelayan kepada klien
lebihMenyenaraikan fail yang dipadam menggunakan arahan paging tempatan
mputMemindahkan berbilang fail daripada klien ke pelayan jauh
letakMemindahkan fail daripada klien ke pelayan jauh
rd atau rmdirMemadam direktori
menamakan semulaMenamakan semula fail pada pelayan jauh
rmMemadam satu atau lebih fail pada pelayan jauh

Secara lalai, smbclient menggunakan nama pengguna semasa untuk menyambung ke pelayan, tetapi anda boleh menentukan nama pengguna secara eksplisit menggunakan pilihan -U. Malah, anda boleh menggunakan beberapa pilihan baris arahan, termasuk pilihan yang membolehkan anda memindahkan fail tanpa log masuk mod interaktif smbclient. Oleh itu, smbclient boleh digunakan dalam skrip untuk melakukan pemindahan fail automatik. Untuk maklumat lanjut, lihat halaman manual untuk utiliti ini.

Sesi dengan smbclient kelihatan seperti ini:

Penyenaraian 1. Contoh sesi dengan smbclient
$ smbclient //TANGO/GORDON/ Masukkan kata laluan gordon: Domain= OS= Server= smb: \> cd mystuff smb: \mystuff\> ls . D 0 Mon May 16 19:20:08 2011 .. D 0 Mon 16 Mei 19:18:12 2011 xv-3.10a-1228.1.src.rpm 3441259 Sel 18 Mei 19:09:26 2010 License.txt 27898 Isn Mei 16 19:17:15 2011 Jan 10:15 2011 18:13 2011 51198 blok bersaiz 2097152. 2666 blok tersedia smb: \mystuff\> dapatkan xorg.conf mendapatkan fail \mystuff\xorg.conf saiz 1210 sebagai xorg.conf (9.4 KiloBytes.sec) (purata 9.4 KiloBytes. ) smb:\mystuff\> keluar

Nasihat. Utiliti smbclient ialah alat penyahpepijatan yang sangat baik. Walaupun kesederhanaannya, ia membolehkan anda mengakses persekitaran rangkaian tanpa memasang sumber, yang boleh memudahkan penyelesaian masalah.

Memasang perkongsian fail SMB/CIFS

Walaupun semua kecekapannya, smbclient tidak membenarkan anda untuk mendapatkan yang sama akses telus ke pelayan, seperti semasa bekerja dengan klien Windows. Jika ini yang anda perlukan, anda perlu menggunakan cara lain untuk memasang saham SMB/CIFS. Ini boleh dilakukan menggunakan arahan standard Lekapan Linux atau dengan mengedit fail /etc/fstab untuk melekapkan perkongsian SMB/CIFS secara automatik apabila komputer but.

Meningkat saham buat sementara waktu

Perkongsian fail SMB/CIFS boleh dipasang menggunakan arahan pelekap, yang juga digunakan untuk melekapkan volum tempatan atau saham NFS. Anda boleh menentukan jenis sistem fail cifs, atau dalam kebanyakan kes mount akan menentukan sama ada pemacu tertentu diperlukan berdasarkan sintaks arahan. Sebagai alternatif, anda boleh menghubungi terus program utiliti mount.cifs. Pada asasnya, pemasangan sistem fail tempatan dan jauh berbeza hanya dalam jenis peranti yang dipasang; Oleh itu, untuk memasang sumber GORDON yang terletak pada pelayan TANGO, jalankan sahaja arahan berikut sebagai pengguna root:

# lekapkan //TANGO/GORDON/mnt

Dalam amalan, arahan ini boleh menimbulkan masalah: ia menghantar akar nama ke pelayan sebagai nama pengguna, dan jika pengguna itu tidak dibenarkan menyambung ke pelayan, pelekap akan gagal. Masalah ini boleh diselesaikan dengan menggunakan pilihan -o user=name untuk menghantar nama pengguna ke pelayan.

# mount -o user=gordon //TANGO/GORDON /mnt Kata laluan:

Beberapa pilihan pelekap lain boleh digunakan, dihantar kepada arahan pelekap menggunakan pilihan -o. Yang paling berguna disenaraikan dalam Jadual 2. Untuk mendapatkan maklumat lanjut tentang pilihan yang selebihnya, lihat halaman manual mount.cifs.

Jadual 2. Pilihan mount.cifs yang paling penting
PilihanTindakan
pengguna= nama atau nama pengguna= nama Menentukan nama pengguna yang dihantar ke pelayan.
kata laluan= lulus Mentakrifkan kata laluan untuk dihantar ke pelayan. Jika tiada kata laluan ditentukan, maka mount.cifs menggunakan nilai tersebut pembolehubah persekitaran PASSWD; jika nilai PASSWD tidak dinyatakan, atur cara menggesa pengguna untuk kata laluan.
tauliah= nama fail Mentakrifkan fail yang mengandungi nama pengguna, kata laluan dan nama kumpulan kerja pilihan. Setiap nilai disenaraikan pada baris yang berasingan, bermula dengan nama pengguna= , kata laluan= dan kumpulan kerja=, masing-masing.
uid= UID Mentakrifkan ID pengguna yang akan menjadi pemilik fail sumber yang dipasang.
gid= GID Sama seperti uid= pilihan UID, tetapi digunakan pada pengecam kumpulan (GID) dan bukannya pengecam pengguna (UID).
mod_fail= mod Menetapkan mod fail (kebenaran) dalam bentuk berangka yang akan diberikan kepada fail pada pelayan.
dir_mode= mod Sama seperti pilihan file_mode=mode, tetapi tidak digunakan untuk fail, tetapi untuk direktori.
tetamuMenghalang gesaan kata laluan. Biasanya, pilihan ini hanya berfungsi jika sumber menyokong akses tetamu.
kerasJika pelayan menjadi tidak tersedia, proses yang cuba mengakses fail yang terletak padanya kekal beku sehingga akses kepada pelayan dipulihkan.
lembutJika pelayan menjadi tidak tersedia, proses yang cuba mengakses fail yang terletak di atasnya menerima mesej ralat. Ini ialah tindakan lalai.

Parameter uid, gid, file_mode dan dir_mode biasanya pilihan apabila menyambung ke pelayan yang menyokong sambungan UNIX yang dilaksanakan dalam CIFS. Walau bagaimanapun, tetapan ini boleh digunakan untuk mengatasi nilai yang ditetapkan pada pelayan. Juga ambil perhatian bahawa semua pilihan ini mempengaruhi cara fail kelihatan kepada klien; ia tidak menjejaskan kebenaran atau pemilikan fail pada pelayan.

Setelah bahagian SMB/CIFS dipasang, ia boleh diakses dengan cara yang sama seperti cakera tempatan atau volum NFS. Anda boleh menyalin dan memadam fail menggunakan arahan cp dan rm, editkannya penyunting teks atau program lain, dsb. Walau bagaimanapun, ingat bahawa jika pelayan tidak menyokong ciri tertentu, anda tidak akan dapat menggunakannya. Sebagai contoh, anda tidak boleh menukar mod fail menggunakan chmod jika pelayan tidak menyokong sambungan UNIX (pengecualian tertentu dalam kes chmod ialah keupayaan untuk menukar kebenaran menulis - kebenaran ini dipetakan secara songsang kepada bit baca sahaja SMB protokol).

Apabila anda selesai bekerja dengan bahagian, anda boleh menyahlekapnya menggunakan arahan umount, sama seperti sistem fail tempatan biasa:

#umount/mnt
Memasang perkongsian fail menggunakan SMB

Kernel Linux sebelum versi 2.6.37 mengandungi pemacu SMB dan CIFS yang berasingan dan membenarkan bahagian itu dipasang menggunakan protokol SMB asal; Untuk melakukan ini, anda sama ada perlu menentukan smbfs sebagai jenis sistem fail, atau gunakan arahan smbmount. Ini berfungsi sama seperti menggunakan jenis sistem fail cifs atau perintah mount.cifs, walaupun terdapat beberapa perbezaan dalam butirannya. Penggunaan protokol SMB menjadikannya mustahil untuk menggunakan ciri khusus CIFS, seperti sambungan UNIX.

Pada masa lalu, kadangkala masuk akal untuk menggunakan SMB; sebagai contoh, adalah mungkin untuk melekapkan perkongsian fail pada komputer Windows 9x/Me yang sangat lama menggunakan pemacu smbfs Linux, tetapi tidak menggunakan cifs. Hari ini, situasi sedemikian sangat jarang berlaku, kerana pelaksanaan moden cifs telah menghapuskan penggunaan O kebanyakan batasannya yang sedia ada. Walau bagaimanapun, jika anda menghadapi masalah yang sama, kemudian cuba pasang versi kernel Linux sebelum 2.6.37 dan lihat sama ada pemandu smbfs membantu menyelesaikannya.

Memasang saham secara kekal

Jika anda perlu memasang perkongsian fail SMB/CIFS pada asas kekal, kemudian untuk melakukan ini, anda perlu menambah entri pada /etc/fstab. Perubahan ini serupa dengan semua perubahan lain pada fail /etc/fstab yang berlaku sebagai sebahagian daripada arahan mount. Walau bagaimanapun, terdapat satu pilihan yang patut perhatian istimewa dalam situasi ini, iaitu kelayakan. Oleh kerana kebanyakan pelayan SMB/CIFS menggunakan kata laluan untuk pengesahan, untuk melekapkan sumber fail menggunakan /etc/fstab adalah perlu untuk menyimpan kata laluan kekal. Walaupun kata laluan boleh disimpan terus dalam fail /etc/fstab (menggunakan pilihan kata laluan), ini tidak disyorkan - kerana fail /etc/fstab mesti boleh dibaca oleh semua pengguna, mana-mana pengguna juga boleh melihat kata laluan. Menggunakan pilihan kelayakan membolehkan anda menyimpan kata laluan dalam fail yang hanya boleh dibaca oleh pengguna root, yang meningkatkan keselamatan mereka.

Entri yang berfungsi dalam fail /etc/password untuk bahagian SMB/CIFS mungkin kelihatan seperti ini:

//TANGO/BACKUPS /saveit cifs credentials=/etc/samba/creds.txt 0 0

Bukti kelayakan yang berkaitan mungkin kelihatan seperti ini:

nama pengguna=buuser kata laluan=Iw2bUmS)