انڈروئد

اوبنٹو 18.04 پر این ایف ایس سرور کو انسٹال اور تشکیل کا طریقہ

دس فنی Ù„Ù…ØØ§Øª جس ميں لوگوں Ú©ÛŒ کيسے دوڑيں لگتی ہيں ™,999 فنی

دس فنی Ù„Ù…ØØ§Øª جس ميں لوگوں Ú©ÛŒ کيسے دوڑيں لگتی ہيں ™,999 فنی

فہرست کا خانہ:

Anonim

نیٹ ورک فائل سسٹم (این ایف ایس) ایک تقسیم شدہ فائل سسٹم پروٹوکول ہے جو آپ کو نیٹ ورک پر ریموٹ ڈائریکٹریوں کا اشتراک کرنے کی سہولت دیتا ہے۔ این ایف ایس کے ذریعہ ، آپ اپنے سسٹم پر ریموٹ ڈائریکٹریوں کو ماؤنٹ کرسکتے ہیں اور ریموٹ مشین پر موجود فائلوں کے ساتھ اس طرح کام کرسکتے ہیں جیسے وہ مقامی فائلیں ہوں۔

این ایف ایس پروٹوکول ڈیفالٹ کے لحاظ سے خفیہ نہیں ہے اور سامبا کے برعکس ، یہ صارف کی توثیق نہیں کرتا ہے۔ سرور تک رسائی کلائنٹ کے IP پتوں یا میزبان ناموں کے ذریعہ ممنوع ہے۔

اس ٹیوٹوریل میں ، ہم اوبنٹو 18.04 پر NFSv4 سرور مرتب کرنے کا طریقہ دیکھیں گے۔ ہم آپ کو یہ بھی دکھائیں گے کہ کلائنٹ پر این ایف ایس فائل سسٹم کو کیسے ماؤنٹ کیا جائے۔

شرطیں

اس مثال نے یہ مانا ہے کہ آپ کے پاس اوبنٹو 18.04 چلانے والا ایک سرور ہے اور دوسرا لینکس کی کوئی دوسری تقسیم چل رہا ہے۔ سرور اور مؤکلوں کو ایک دوسرے کے ساتھ نجی نیٹ ورک پر بات چیت کرنے کے قابل ہونا چاہئے۔ اگر آپ کا میزبان فراہم کنندہ نجی IP پتے پیش نہیں کرتا ہے تو ، آپ عوامی IP پتوں کا استعمال کرسکتے ہیں اور سرور فائر وال کو تشکیل دے سکتے ہیں تاکہ صرف 2049 پورٹ پر ٹریفک کی اجازت دی جاسکے۔

اس مثال کی مشینوں میں درج ذیل IPs ہیں:

NFS Server IP: 192.168.33.10 NFS Clients IPs: From the 192.168.33.0/24 range

NFS سرور مرتب کریں

ہم NFS سرور کو انسٹال اور تشکیل دے کر شروع کریں گے۔

این ایف ایس سرور انسٹال کرنا

پیکیجز انڈیکس کو تازہ دم کریں اور این ایف ایس سرور پیکیج کو انسٹال کریں۔

sudo apt update sudo apt install nfs-kernel-server

ایک بار جب انسٹالیشن مکمل ہوجائے گی تو ، این ایف ایس کی خدمات خودبخود شروع ہوجائیں گی۔

پہلے سے طے شدہ طور پر ، اوبنٹو 18.04 پر NFS ورژن 2 غیر فعال ہے۔ ورژن 3 اور 4 قابل ہیں۔ آپ درج ذیل کمانڈ کو چلانے کے ذریعہ تصدیق کرسکتے ہیں:

sudo cat /proc/fs/nfsd/versions

-2 +3 +4 +4.1 +4.2

این ایف ایس وی 2 اب کافی بوڑھا ہوچکا ہے ، اور اسے قابل بنانے کی کوئی وجہ نہیں ہے۔

این ایف ایس سرور کی تشکیل کے اختیارات /etc/default/nfs-kernel-server اور /etc/default/nfs-common فائلوں میں سیٹ کیے گئے ہیں۔ ہمارے معاملے میں پہلے سے طے شدہ ترتیبات کافی ہیں۔

فائل سسٹم بنانا

جب کسی NFSv4 سرور کو تشکیل دیتے ہیں تو یہ ایک اچھا عمل ہے کہ عالمی NFS روٹ ڈائرکٹری کا استعمال کریں اور اصل ڈائریکٹریوں کو شیئر ماؤنٹ پوائنٹ پر باندھ دیں۔ اس مثال میں ، ہم /srv/nfs4 ڈائریکٹر NFS جڑ کے طور پر استعمال کریں گے۔

ہم دو مختلف ڈائریکٹریز ( /var/www اور /opt/backups ) کو اشتراک کرنے جا رہے ہیں ، جس میں مختلف ترتیب والے ترتیبات کے ساتھ ، بہتر طریقے سے یہ بیان کرنے کے لئے کہ NFS ماونٹس کو کس طرح تشکیل دیا جاسکتا ہے۔

/var/www/ صارف اور گروپ www-data ملکیت ہے اور /opt/backups root ملکیت root ۔

mkdir کمانڈ استعمال کرکے ایکسپورٹ فائل سسٹم بنائیں۔

sudo mkdir -p /srv/nfs4/backups sudo mkdir -p /srv/nfs4/www

اصل ڈائریکٹریوں کو ماؤنٹ کریں:

sudo mount --bind /opt/backups /srv/nfs4/backups sudo mount --bind /var/www /srv/nfs4/www

بائنڈ ماونٹس کو مستقل کرنے کے لئے ، /etc/fstab فائل کھولیں:

sudo nano /etc/fstab

اور درج ذیل لائنیں شامل کریں:

/ وغیرہ / fstab

/opt/backups /srv/nfs4/backups none bind 0 0 /var/www /srv/nfs4/www none bind 0 0

فائل سسٹم کو ایکسپورٹ کرنا

اگلا مرحلہ فائل سسٹم کی وضاحت کرنا ہے جو این ایف ایس سرور ، حصص کے اختیارات اور مؤکلوں کو برآمد کریں گے جو ان فائل سسٹم تک رسائی کی اجازت رکھتے ہیں۔ ایسا کرنے کے لئے /etc/exports فائل کو کھولیں۔

sudo nano /etc/exports /etc/exports فائل میں ایسے تبصرے بھی ہوتے ہیں جو بیان کرتے ہیں کہ ڈائریکٹری کو کس طرح ایکسپورٹ کرنا ہے۔

ہمارے معاملے میں ہمیں www اور backups ڈائریکٹریوں کو ایکسپورٹ کرنے کی ضرورت ہے اور صرف 192.168.33.0/24 نیٹ ورک پر موکلوں سے رسائی حاصل کرنے کی اجازت ہے۔

/ وغیرہ / برآمدات

/srv/nfs4 192.168.33.0/24(rw, sync, no_subtree_check, crossmnt, fsid=0) /srv/nfs4/backups 192.168.33.0/24(ro, sync, no_subtree_check) 192.168.33.3(rw, sync, no_subtree_check) /srv/nfs4/www 192.168.33.110(rw, sync, no_subtree_check)

پہلی لائن میں fsid=0 جو NFS روٹ ڈائریکٹری /srv/nfs وضاحت کرتا ہے۔ اس این ایف ایس حجم تک رسائی صرف مؤکلوں کو ہی 192.168.33.0/24 سب نیٹ سے حاصل کرنے کی اجازت ہے۔ ایک برآمد شدہ ڈائریکٹری کی سب ڈائریکٹریوں والی ڈائریکٹریوں کو crossmnt آپشن کی ضرورت ہوتی ہے۔

دوسری لائن میں ایک فائل سسٹم کے لئے برآمد کے متعدد قواعد کی وضاحت کرنے کا طریقہ دکھاتا ہے۔ یہ /srv/nfs4/backups ڈائرکٹری برآمد کرتا ہے اور صرف 192.168.33.0/24 رینج تک ہی پڑھنے تک رسائی کی اجازت دیتا ہے اور دونوں کو 192.168.33.3 تک پڑھنے اور لکھنے تک رسائی حاصل ہے۔ sync کا اختیار NFS کو جواب دینے سے پہلے ڈسک میں تبدیلیاں لکھنے کو بتاتا ہے۔

آخری سطر خود وضاحتی ہونی چاہئے۔ تمام دستیاب اختیارات کے بارے میں مزید معلومات کے ل type اپنے ٹرمینل میں man exports ٹائپ کریں۔

فائل کو محفوظ کریں اور حصص کو برآمد کریں:

sudo exportfs -ra

جب آپ /etc/exports فائل کو تبدیل کرتے ہیں تو آپ کو ہر بار اوپر کمانڈ چلانے کی ضرورت ہوتی ہے۔ اگر کوئی غلطیاں یا انتباہ ہیں تو وہ ٹرمینل پر دکھائے جائیں گے۔

موجودہ فعال برآمدات اور ان کی حالت دیکھنے کے ل use ، استعمال کریں:

sudo exportfs -v

آؤٹ پٹ میں تمام حصص کو ان کے اختیارات کے ساتھ شامل کیا جائے گا۔ جیسا کہ آپ دیکھ سکتے ہیں کہ وہاں آپشنز بھی موجود ہیں جن کی ہم نے /etc/exports فائل میں وضاحت نہیں کی ہے۔ یہ پہلے سے طے شدہ اختیارات ہیں اور اگر آپ انہیں تبدیل کرنا چاہتے ہیں تو آپ کو واضح طور پر ان اختیارات کو ترتیب دینے کی ضرورت ہوگی۔

/srv/nfs4/backups 192.168.33.3(rw, wdelay, root_squash, no_subtree_check, sec=sys, rw, secure, root_squash, no_all_squash) /srv/nfs4/www 192.168.33.110(rw, wdelay, root_squash, no_subtree_check, sec=sys, rw, secure, root_squash, no_all_squash) /srv/nfs4 192.168.33.0/24(rw, wdelay, crossmnt, root_squash, no_subtree_check, fsid=0, sec=sys, rw, secure, root_squash, no_all_squash) /srv/nfs4/backups 192.168.33.0/24(ro, wdelay, root_squash, no_subtree_check, sec=sys, ro, secure, root_squash, no_all_squash)

اوبنٹو پر ، root_squash ڈیفالٹ فعال کیا جاتا ہے۔ این ایف ایس سیکیورٹی کے حوالے سے یہ ایک سب سے اہم آپشن ہے۔ یہ کلائنٹ سے جڑے ہوئے جڑوں صارفین کو ماونٹڈ شیئرز پر جڑ کی مراعات دینے سے روکتا ہے۔ یہ جڑ UID اور GID کو nobody / nogroup UID / GID نقشہ بنائے گا۔

کلائنٹ مشینوں کے صارفین تک رسائی حاصل کرنے کے ل N ، این ایف ایس توقع کرتا ہے کہ کلائنٹ کا صارف اور گروپ آئی ڈی سرور کے ساتھ مل سکے۔ دوسرا اختیار NFSv4 idmapping کی خصوصیت استعمال کرنا ہے جو صارف اور گروپ IDs کا نام اور اس کے آس پاس دوسرے طریقوں سے ترجمہ کرتا ہے۔

یہی ہے. اس مقام پر ، آپ نے اپنے اوبنٹو سرور پر ایک NFS سرور ترتیب دیا ہے۔ اب آپ اگلے مرحلے میں جاسکتے ہیں اور مؤکلوں کو تشکیل دے سکتے ہیں اور این ایف ایس سرور سے رابطہ قائم کرسکتے ہیں۔

فائر وال کنفیگریشن

فرض کریں کہ آپ اپنے فائر وال کو سنبھالنے کے لئے UFW استعمال کر رہے ہیں تاکہ 192.168.33.0/24 سب نیٹ سے آپ کو مندرجہ ذیل کمانڈ کو چلانے کی ضرورت ہوگی۔

sudo ufw allow from 192.168.33.0/24 to any port nfs

تبدیلی کی تصدیق کے ل::

sudo ufw status

آؤٹ پٹ کو یہ ظاہر کرنا چاہئے کہ 2049 پورٹ پر ٹریفک کی اجازت ہے:

To Action From -- ------ ---- 2049 ALLOW 192.168.33.0/24 22/tcp ALLOW Anywhere 22/tcp (v6) ALLOW Anywhere (v6)

این ایف ایس کلائنٹ مرتب کریں

اب جب کہ این ایف ایس سرور سیٹ اپ ہے اور اگلے مرحلے میں گاہکوں کو تشکیل دینے اور ریموٹ فائل سسٹم کو ماؤنٹ کرنے کے لئے حصص برآمد کیے جاتے ہیں۔

آپ میکوس اور ونڈوز مشینوں پر بھی این ایف ایس شیئر کو ماؤنٹ کرسکتے ہیں لیکن ہم لینکس سسٹم پر توجہ دیں گے۔

این ایف ایس کلائنٹ انسٹال کرنا

کلائنٹ مشینوں پر ہمیں ریموٹ این ایف ایس فائل سسٹم کو ماؤنٹ کرنے کے لئے ضروری ٹولز صرف انسٹال کرنے کی ضرورت ہے۔

  • دبیان اور اوبنٹو پر این ایف ایس کلائنٹ انسٹال کریں

    اس پیکیج کا نام جس میں دبیان پر مبنی تقسیم پر این ایف ایس فائل سسٹم کے ماؤنٹ کرنے کے پروگرام شامل ہیں این ایف ایس nfs-common ۔ انسٹال کرنے کے لئے یہ چلائیں:

    sudo apt update sudo apt install nfs-common

    سینٹوس اور فیڈورا پر این ایف ایس کلائنٹ انسٹال کریں

    ریڈ ہیٹ اور اس کے nfs-utils پر nfs-utils پیکیج انسٹال کریں:

    sudo yum install nfs-utils

بڑھتے ہوئے فائل سسٹمز

ہم آئی پی 192.168.33.110 ساتھ کلائنٹ مشین پر کام کریں گے جس نے /srv/nfs4/www فائل سسٹم کو پڑھنے اور لکھنے تک رسائی حاصل کی ہے اور صرف /srv/nfs4/backups فائل سسٹم تک رسائی پڑھی ہے۔

ماؤنٹ پوائنٹس کے لئے دو نئی ڈائریکٹریز بنائیں۔ آپ اپنی مطلوبہ جگہ پر یہ ڈائریکٹریز تشکیل دے سکتے ہیں۔

sudo mkdir -p /backups sudo mkdir -p /srv/www

برآمد فائل فائلوں کو mount کمانڈ کے ساتھ mount کریں:

sudo mount -t nfs -o vers=4 192.168.33.10:/backups /backups sudo mount -t nfs -o vers=4 192.168.33.10:/www /srv/www sudo mount -t nfs -o vers=4 192.168.33.10:/backups /backups sudo mount -t nfs -o vers=4 192.168.33.10:/www /srv/www

جہاں 192.168.33.10 NFS سرور کا IP ہے۔ آپ IP ایڈریس کے بجائے میزبان نام بھی استعمال کرسکتے ہیں لیکن اسے کلائنٹ مشین کے ذریعہ حل کرنے کی ضرورت ہے۔ یہ عام طور پر IP میں میزبان نام کی /etc/hosts فائل میں میپنگ کرکے کیا جاتا ہے۔

جب این ایف ایس وی 4 فائل سسٹم کو بڑھاتے ہو تو ، آپ کو این ایف ایس روٹ ڈائرکٹری کو ختم کرنے کی ضرورت ہوتی ہے ، لہذا آپ کو /srv/nfs4/backups این ایف ایس 4 /srv/nfs4/backups بجائے /srv/nfs4/backups استعمال کرنے کی ضرورت ہے۔

تصدیق کریں کہ ریموٹ فائل سسٹم کو کامیابی کے ساتھ ماؤنٹ یا df کمانڈ کا استعمال کرتے ہوئے نصب کیا گیا ہے۔

df -h

کمانڈ تمام سوفٹ فائل سسٹم کو پرنٹ کرے گی۔ آخری دو لائنیں سوار حصص ہیں۔

Filesystem Size Used Avail Use% Mounted on /dev/mapper/VolGroup00-LogVol00 38G 1.7G 36G 5% / devtmpfs 236M 0 236M 0% /dev tmpfs 244M 0 244M 0% /dev/shm tmpfs 244M 4.5M 240M 2% /run tmpfs 244M 0 244M 0% /sys/fs/cgroup /dev/sda2 1014M 87M 928M 9% /boot tmpfs 49M 0 49M 0% /run/user/1000 192.168.33.10:/backups 9.7G 1.2G 8.5G 13% /backups 192.168.33.10:/www 9.7G 1.2G 8.5G 13% /srv/www

ماؤنٹ کو ریبوٹ پر مستقل کرنے کیلئے ، /etc/fstab فائل کھولیں:

sudo nano /etc/fstab

اور درج ذیل لائنیں شامل کریں:

/ وغیرہ / fstab

192.168.33.10:/backups /backups nfs defaults, timeo=900, retrans=5, _netdev 0 0 192.168.33.10:/www /srv/www nfs defaults, timeo=900, retrans=5, _netdev 0 0

این ایف ایس فائل سسٹم کو بڑھاتے وقت دستیاب اختیارات کے بارے میں مزید معلومات کے man nfs ، ، اپنے ٹرمینل میں man nfs این ایف ایس ٹائپ کریں۔

ریموٹ فائل سسٹم کو ماؤنٹ کرنے کا ایک اور آپشن autofs ٹول کا استعمال کرنا ہے یا autofs یونٹ بنانا ہے۔

این ایف ایس رسائی کی جانچ ہو رہی ہے

آئیے ان میں سے ہر ایک کے لئے ایک نئی فائل بنا کر حصص تک رسائی کی جانچ کرتے ہیں۔

پہلے ، touch کمانڈ کا استعمال کرتے ہوئے /backups ڈائرکٹری میں ٹیسٹ فائل بنانے کی کوشش کریں۔

sudo touch /backups/test.txt

/backup فائل سسٹم کو صرف پڑھنے کے بطور برآمد کیا جاتا ہے اور توقع کے مطابق آپ کو Permission denied غلطی کا پیغام نظر آئے گا:

touch: cannot touch '/backups/test': Permission denied

اگلا ، /srv/www ڈائرکٹری میں روٹ کے طور پر sudo کمانڈ کا استعمال کرکے ٹیسٹ فائل بنانے کی کوشش کریں۔

sudo touch /srv/www/test.txt

ایک بار پھر ، آپ Permission denied پیغام دیکھیں گے۔

touch: cannot touch '/srv/www': Permission denied

یہ فرض کرتے ہوئے کہ آپ کے پاس کلائنٹ مشین پر www-data کا استعمال اسی UID اور GID ساتھ ہے جس طرح ریموٹ سرور پر ہے (جس کی مثال ایسی صورت میں ہونی چاہئے اگر آپ نے دونوں مشینوں پر nginx انسٹال کیا ہے) تو آپ صارف کی حیثیت سے فائل بنانے کے ل test جانچ کرسکتے ہیں www-data ساتھ:

sudo -u www-data touch /srv/www/test.txt

کمانڈ کوئی آؤٹ پٹ نہیں دکھائے گی جس کا مطلب ہے کہ فائل کامیابی کے ساتھ تشکیل دی گئی تھی۔

اس کی تصدیق کے /srv/www the فائلوں کو /srv/www ڈائرکٹری میں درج کریں:

ls -la /srv/www

آؤٹ پٹ کو نئی تشکیل شدہ فائل دکھانی چاہئے۔

drwxr-xr-x 3 www-data www-data 4096 Jun 23 22:18. drwxr-xr-x 3 root root 4096 Jun 23 22:29.. -rw-r--r-- 1 www-data www-data 0 Jun 23 21:58 index.html -rw-r--r-- 1 www-data www-data 0 Jun 23 22:18 test.txt

این ایف ایس فائل سسٹم کو ماقبل

sudo umount /backups

اگر ماؤنٹ پوائنٹ کی تعریف /etc/fstab فائل میں کی گئی ہے تو ، لائن کے آغاز میں اس بات کو یقینی بنائیں کہ آپ لائن کو ہٹا دیں یا اس پر تبصرہ کریں۔

نتیجہ اخذ کرنا

اس ٹیوٹوریل میں ، ہم نے آپ کو دکھایا ہے کہ کس طرح این ایف ایس سرور مرتب کرنا ہے اور کلائنٹ مشینوں پر ریموٹ فائل سسٹم کو کیسے ماؤنٹ کیا جائے۔ اگر آپ این ایف ایس کو پیداوار میں نافذ کررہے ہیں اور سمجھدار ڈیٹا کا اشتراک کر رہے ہیں تو کرربیروز کی توثیق کو قابل بنانا ایک اچھا خیال ہے۔

این ایف ایس کے متبادل کے طور پر ، آپ کسی ایس ایس ایچ کنکشن پر ریموٹ ڈائریکٹریوں کو ماؤنٹ کرنے کے لئے ایس ایس ایچ ایف ایس کا استعمال کرسکتے ہیں۔ ایس ایس ایچ ایف ایس کو ڈیفالٹ کے ذریعہ مرموز کیا گیا ہے اور تشکیل اور استعمال میں بہت آسان ہے۔

اگر آپ کے ذہن میں کوئی سوال ہے تو بلا جھجھک۔

اوبنٹو این ایف ایس ماؤنٹ ٹرمینل