Apakah kaedah untuk pemasangan dan konfigurasi NFS di bawah Linux?

PHPz
Lepaskan: 2023-05-19 19:46:10
ke hadapan
1924 orang telah melayarinya

1. Perisian bahagian pelayan: Pasang nfs-utils dan portmap (rpcbind)
nfs-utils: Sediakan rpc.nfsd dan rpc.mountd, dua pakej daemon nfs
portmap : nfs sebenarnya boleh dianggap sebagai program pelayan rpc Untuk memulakan program pelayan rpc, anda mesti melakukan kerja port yang sepadan, dan tugasan tersebut diselesaikan oleh peta port. Dalam istilah orang awam, portmap digunakan untuk pemetaan port.
Daemon yang nfs perlu dimulakan

  • pc.nfsd: Pengesanan kebenaran log masuk kompleks utama, dsb. mestilah

  • portmap: mengendalikan rpc Port klien dan pelayan program mesti sepadan dengan

  • rpc.mountd: bertanggungjawab untuk sistem fail nfs Apabila klien log masuk ke pelayan melalui rpc. nfsd, ia melaksanakan akses clinet kepada fail pelayan Satu siri pengurusan mesti

  • dikunci: Mengendalikan permintaan kunci melalui pakej rpc

  • statd: Menyediakan fungsi pemulihan ranap untuk perkhidmatan kunci nfs

  • rquotad: mengendalikan kuota apabila pengguna melekapkan ke pelayan jauh melalui nfs

  • Jujukan permulaan Daemon: rpc. portmap, rpc.mountd, rpc. nfsd, rpc.statd, rpc.lockd (versi baharu akan bermula secara automatik dengan nfsd), rpc.rquotad

nf bahagian pelayan arahan:

•yum install nfs-utils portmap
•chkconfig rpcbind on #chkconfig: Kemas kini dan pertanyaan perkhidmatan sistem pada setiap peringkat run
•chkconfig nfs on
•service rpcbind mulakan
•servis nfs mula

2. Fail konfigurasi sisi pelayan /etc/exports: Tentukan direktori dan kebenaran untuk dikongsi eksport lelaki

Salin kod tersebut ialah seperti berikut:


#: Benarkan komputer dengan alamat IP dalam julat 192.168.0.* mengakses direktori /home/work dengan kebenaran baca dan tulis.
/home/work 192.168.0.* (rw,sync,root_squash)
/home 192.168.1.105 (rw,sync)
/public * (rw,sync)

Konfigurasi Setiap baris fail dibahagikan kepada dua bahagian: bahagian pertama ialah direktori kongsi, menggunakan laluan mutlak, dan bahagian kedua ialah alamat dan kebenaran klien.
Alamat boleh menggunakan IP atau segmen rangkaian yang lengkap, seperti 10.0.0.8 atau 10.0.0.0/24, 10.0.0.0/255.255.255.0 Sudah tentu, alamat juga boleh menggunakan nama hos, resolusi dns dan setempat /etc/hosts resolution. Semuanya OK, wildcard disokong, contohnya: *.chengyongxu.com

Kebenaran ialah:
rw: baca-tulis, baca-tulis Nota, hanya menetapkannya sebagai klien baca-tulis masih tidak boleh menulis seperti biasa , anda juga mesti menetapkan kebenaran direktori kongsi dengan betul, rujuk soalan 7
ro: baca sahaja, baca sahaja
segerak: fail ditulis ke cakera keras dan memori pada masa yang sama; mempunyai keizinan akar untuk direktori yang dikongsi oleh pelayan. Jelas sekali menghidupkan ini adalah tidak selamat.
root_squash: Jika klien nfs menggunakan root apabila menyambung ke pelayan, maka ia mempunyai kebenaran pengguna tanpa nama untuk direktori yang dikongsi oleh pelayan Biasanya dia akan menggunakan identiti nobody atau nfsnobody; Apakah pengguna yang digunakan oleh pelanggan apabila menyambung ke pelayan? anongid: nilai gid pengguna tanpa nama.



Pemetaan pengguna klien nfs:
Pengguna log masuk klien adalah root atau pengguna lain, dan kemudian mengikut konfigurasi pelayan nfs sebelah pelayan, sambungan klien yang sepadan dipetakan ke pengguna bahagian pelayan nfs akar atau pengguna tertentu (ditetapkan melalui anonuid atau anongid), nfsnobody, dsb. Akhir sekali, pengguna pemetaan dan kebenaran direktori dikongsi bersama-sama mempengaruhi sama ada sambungan klien telah membaca dan menulis kebenaran.
Tetapkan secara manual pemetaan pengguna klien dan pelayan, parameter: map_static=/etc/nfs.map

/etc/nfs.map kandungan pemetaan fail adalah seperti berikut:

# remote localgid 500 1000 uid 500 2003


Rujukan: Mengenai perihalan identiti pengguna sambungan klien nfs, perihalan berikut belum disahkan:

•Apabila pelanggan menyambung, untuk pengguna biasa Semak, no.1 jika identiti termampat pengguna biasa ditetapkan dengan jelas, maka identiti pengguna klien ditukar kepada pengguna yang ditentukan pada masa ini, no.2 jika terdapat pengguna dengan nama yang sama pada pelayan nfs, maka identiti akaun log masuk klien pada masa ini Tukar kepada pengguna dengan nama yang sama pada pelayan nfs, no.3 Jika tiada spesifikasi yang jelas, dan tiada pengguna dengan nama yang sama, maka pengguna identiti dimampatkan menjadi nfsnobody
• Apabila klien menyambung, semak akar, no.1 jika Jika no_root_squash ditetapkan, maka identiti pengguna root dimampatkan ke akar pada pelayan nfs Jika no.2 ditetapkan kepada all_squash, anonuid, dan anongid, identiti root dimampatkan kepada pengguna yang ditentukan Jika no.3 tidak dinyatakan dengan jelas, ini Apabila pengguna root dimampatkan ke dalam nfsnobody, no.4 jika no_root_squash dan all_squash ditentukan pada. masa yang sama, pengguna akan dimampatkan ke dalam nfsnobody Jika anonuid dan anongid ditetapkan, pengguna akan dimampatkan ke dalam pengguna dan kumpulan yang ditentukan

3 , pengubahsuaian tetapan firewall


Secara lalai, selepas versi pelayan centos6 dipasang, hanya port 22 dibuka dalam konfigurasi iptables firewall.

Tentukan port berkaitan perkhidmatan nfs dalam fail konfigurasi nfs /etc/sysconfig/nfs, dan ubah suai tembok api untuk melepaskan port yang sepadan

Salin kod Kod ini adalah seperti berikut:


#port rpc.mountd harus mendengar pada
#mountd_port=892

#port rpc.statd harus mendengar pada. . >#statd_port=662

#/usr/sbin/rpc.rquotad port rquotad harus didengari
#rquotad_port=875

#tcp port rpc.lockd harus mendengar.
#lockd_tcpport=32803

#udp port rpc.lockd harus mendengar dihidupkan.
4, /etc/hosts.allow pengubahsuaian konfigurasi

/etc/hosts.allow, /etc/hosts .deny menerangkan hos yang dibenarkan menggunakan perkhidmatan inet tempatan.

Nampaknya tidak perlu mengubah suai ini secara lalai, tetapi sebaiknya tetapkannya supaya hanya membenarkan mesin pelanggan yang diperlukan untuk menyambung, dan kemudian menafikan sambungan daripada mesin lain

#Nama proses Perkhidmatan: Senarai hos: Pilihan apabila peraturan sepadan dengan operasi Perintah

server_name:hosts-list[:command]

Tambah peraturan yang membenarkan akses klien dalam /etc/hosts.allow all:127.0.0.1 #Allow mesin ini untuk mengakses semua proses perkhidmatan pada mesin ini
semua:192.168.0.135 #Benarkan 192.168.0.135 mesin pelanggan mengakses semua proses perkhidmatan pada mesin ini
smbd:192.168.0.0/255.255.255.0 #Benarkan IP untuk mengakses segmen rangkaian perkhidmatan smbd
sshd:192.168. 100.0/255.255.255.0 #Dibenarkan 192.168.100 Proses SSHD pada pelayan akses IP segmen rangkaian
SSHD: 60.28.160.244 proses SSHD. > di/ETC Maklumat sambungan percubaan log masuk yang dilarang dalam /hosts.deny juga boleh ditetapkan untuk direkodkan dan dihantar ke peti mel pengguna
sshd:all #Lumpuhkan semua


5, dan ubah suai kebenaran direktori kongsi kepada 760 , dan ubah suai semua kumpulan dalam direktori kepada nfsnobody

Rujukan: Soalan 7


6, client mount

: Laksanakan arahan berikut untuk memasang pelayan nfs (alamat ip ialah 192.168.1.45) Kongsi /home dipasang pada direktori /mnt/nfs/home tempatan.

showmount -e nfs-serverip: Lihat sumber yang dikongsi oleh pelayan nfs mount -t nfs 192.168.1.45:/home /mnt/nfs/home

7, prestasi nfs ujian :

• Tetapkan nilai wsize dan rsize yang munasabah mengikut masa arahan dd if=/dev/zero of=/mnt/home bs=16k count=16384
•Mengikut bilangan pelanggan nfs, Tetapkan nombor proses bahagian pelayan nfs yang sesuai rpcnfsdcount dalam fail konfigurasi /etc/sysconfig/nfs Lalai ialah 8

arahan exportfs: Jika kita mengubah suai /etc/exports selepas memulakan nfs. , adakah ia masih Bagaimana dengan memulakan semula nfs? Pada masa ini, kita boleh menggunakan perintah exportfs untuk membuat perubahan berkuat kuasa serta-merta Format arahan adalah seperti berikut:

exportfs [-aruv] -a: lekapkan semua atau nyahlekapkan kandungan /etc/exports -r: remount /etc/exports Direktori dikongsi dalam -u: direktori umount -v: Apabila mengeksport, keluarkan maklumat terperinci ke skrin. arahan showmount: memaparkan maklumat pelekap pelayan nfs. showmount -e [nfs-server]: Memaparkan direktori yang dieksport pada pelayan nfs yang ditentukan Apabila IP berikutnya tidak dinyatakan, direktori yang dikongsi secara luaran apabila mesin digunakan sebagai pelayan nfs dilihat. .

arahan rpcinfo -p: paparan maklumat rpc -p parameter: gunakan protokol rpc untuk mengesan rpcbind yang digunakan pada hos dan memaparkan semua program rpc yang didaftarkan.

arahan nfsstat: Lihat status berjalan nfs, yang sangat membantu untuk melaraskan operasi nfs

Menyelesaikan masalah yang timbul semasa proses:


1 , melalui yum Atau selepas memasang portmap melalui rpm, anda mendapati ralat berikut semasa melaksanakan arahan permulaan peta port perkhidmatan: portmap: perkhidmatan tidak diiktiraf.
Dalam centos6 (linux kernel 2.6.32), portmap telah digantikan dengan rpcbind. Jika anda menyemak maklumat pemasangan dengan teliti, anda akan mendapati bahawa rpcbind dipasang apabila melaksanakan perintah yum install portmap. Selepas pemasangan selesai, anda juga boleh melihat maklumat terperinci melalui arahan: yum whatprovides portmap.

2. Apabila klien dipasang, ralat pemasangan clntudp_create: rpc: kegagalan pemeta port - rpc: tidak dapat menerima dilaporkan.

•1 Gunakan perintah rpcinfo -p untuk menyemak permulaan biasa perkhidmatan portmap dan port yang sepadan (lalai 111) •2 Periksa tetapan firewall /etc/sysconfig/iptables untuk membenarkan tcp dan udp. 111 akses port, kemudian perkhidmatan iptables dimulakan semula

·3, semak /etc/hosts.deny, /etc/hosts.allow untuk melihat jika sambungan klien disekat


3, klien melaksanakan arahan showmount - e nfs-server, ralat dilaporkan: mount clntudp_create: rpc: program tidak didaftarkan.

Perkhidmatan nfs dan rpcbind tidak dimulakan. Gunakan chkconfig untuk menambah nfs dan rpcbind pada perkhidmatan sistem dan gunakan perkhidmatan untuk memulakannya

Atau tambahkan peraturan semua:192.168.0.135 untuk membenarkan akses klien dalam /etc/hosts. benarkan

4. Apabila klien melaksanakan arahan showmount -e nfs-server, ralat dilaporkan: rpc mount export: rpc: unable to receive; nfs
Cari tempat tetapan port yang berkaitan dengan perkhidmatan nfs ditetapkan, dan selepas mengalih keluar ulasan, nyatakan dalam tetapan firewall iptables untuk membenarkan aliran udp dan tcp port yang sepadan lulus.
#mountd_port=892
#statd_port=662
#lockd_tcpport=32803
#lockd_udpport=32769
iptables -a input -p tcp --dport 662 -m keadaan baharu j terima
iptables -a input -p udp --dport 661 -m state --state new -j accept

5, showmount -e nfs-server berjaya dan ralat dilaporkan apabila lekapan rasmi ialah: lekapkan: lekap ke pelayan nfs '192.168.1.5' gagal: ralat sistem: tiada laluan ke hos Ini kerana port lalai 2049 perkhidmatan nfs disekat oleh tembok api Sama seperti di atas, ubah suai iptables benarkan port 2049 melepasi

6, showmount -e nfs-server berjaya, tetapi ralat berlaku apabila ia dipasang secara rasmi: mount: mount to nfs server '192.168.1.5' gagal: tamat masa (mencuba semula) .

Apabila mengedit /etc/sysconfig/iptables, port tcp port yang berkaitan Dibenarkan melalui, tetapi bukan udp. Untuk sebab lain yang mungkin, rujuk kepada: perintah mount gagal dengan ralat gagal pelayan nfs.
lumpuhkan permintaan carian nama daripada pelayan nfs ke pelayan dns
atau versi nfs yang digunakan oleh klien nfs adalah selain daripada versi 3.

7 Atribut kebenaran direktori dalam fail konfigurasi eksport ditetapkan kepada rw (lalai ialah root_squash), tetapi apabila melaksanakan arahan sentuh dalam direktori pelekap pelanggan, ralat berlaku: sentuh: tidak boleh sentuh `a': kebenaran ditolak. Penyelesaian:

•Semak kebenaran direktori kongsi bahagian pelayan ll -d /home

•Ubah suai keizinan direktori kongsi bahagian pelayan chown 760 /home (akar pemilik fail mempunyai kebenaran penuh dan semua kumpulan pengguna fail mempunyai kebenaran membaca dan menulis), keizinan pengguna lain tidak mempunyai keizinan, dan kemudian tetapkan kumpulan direktori kepada nfsnobody)
•Ubah suai pemilik kumpulan keizinan direktori kongsi bahagian pelayan kepada nfsnobody (cat /etc/ passwd |. grep nob)
•chgrp nfsnobody /home
•Berjaya mencipta fail baharu pada klien!

Atas ialah kandungan terperinci Apakah kaedah untuk pemasangan dan konfigurasi NFS di bawah Linux?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:yisu.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan