اشتراک‌گذاری فایل‌ها در NAS

Samba

اشتراک وفاداری (ماهی یک چایی)

می‌توانید از محتویات این باکس بگذرید و یک‌راست به سراغ نوشته اصلی بروید. قبل از خرید اشتراک وفاداری، مزایای آن را از طریق این پیوند مشاهده کنید. لطفا تنها بعد از خواندن «مزایای خرید اشتراک» اقدام به خرید کنید.

در بخش اول در خصوص مزیت‌های داشتن یک ذخیره‌ساز متصل به شبکه صحبت کردیم و با نحوه‌ی نصب یک سیستم‌عامل بسیار سبک بر روی کامپیوتر عهد بوقی در بخش دوم نوشته را ادامه دادیم. امروز برای شما در خصوص نحوه‌ی به اشتراک‌گذاری فایل‌های موجود بر روی آن سیستم صحبت خواهیم کرد.


نکته: در حین اجرایی کردن راهنمای زیر، نام کاربری archuser را با نام کاربری که پیشتر برای سیستم تعیین کرده‌اید تعویض کنید.

یک راست به سراغ سیستم سرور برویم. در خط فرمان دستور SSH برای اتصال به سیستم سرور را تایپ کنید.

ssh archuser@192.168.1.100

دستورات زیر بایستی با مجوز ریشه اجرا شود، پس بهتر است قبل از هر چیزی مجوزهای لازم را دریافت کنیم:

sudo su

حالا Samba را نصب نمائید. برای این منظور دستور زیر را صادر کنید.

pacman -S samba

اکنون فایل تنظیمات را کپی کنید.

cp /etc/samba/smb.conf.default /etc/samba/smb.conf

بعد از نصب برای کاربر Samba پسوردی را تعیین کنید. من پسوردی مشابه با پسورد کاربر را برای سمبا انتخاب کردم.

pdbedit -a -u archuser

برای تغییر پسورد هم از دستور زیر استفاده کنید:

smbpasswd archuser

بعد از نصب، لازم است که به سیستم بفهمانید که در هر اجرا، سمبا را نیز راه‌اندازی کند.

systemctl start smbd.socket
systemctl enable smbd.socket

در مسیر خانگی خود یک دایرکتوری بسازید. این مسیر میزبان فایل‌ها و فولدرهایی خواهد بود که شما به اشتراک می‌گذارید. من آن را تحت نام share به صورت زیر ایجاد می‌کنم.
exit

mkdir ~/share

اکنون به مسیر share بروید و pwd بگیرید تا مسیر دقیق را داشته باشید.

cd ~/share
pwd

خروجی pwd به شما مسیر کامل پوشه‌ای که قرار است میزبان فایل‌های اشتراکی باشد را نشان می‌دهد.

اکنون نوبت به پیکربندی Samba رسیده. با توجه به انعطاف‌پذیری زیاد Samba شما می‌توانید پیکربندی مخصوص به خود را داشته باشید. من در این راهنما به شما نحوه‌ی به اشتراک‌گذاری یک فولدر در مسیر خانه را آموزش خواهم داد. توجه داشته باشید که در این پیکربندی مجوزهای لازم به کسانی که با استفاده از نام‌کاربری و کلمه‌ی عبور به این فولدر در شبکه دسترسی دارند، برای خواندن، ویرایش (شامل حذف کردن)، و اجرا داده می‌شود. البته شما می‌توانید بنا به خواست خودتان این مجوزها را تغییر دهید و مثلا فقط اجازه‌ی خواندن را به دیگران بدهید.

دستور زیر را برای باز کردن فایل پیکربندی Samba صادر کنید.

sudo nano /etc/samba/smb.conf

خطوط زیر را در فایل کانفیگ یا آن‌کامنت و یا به آخر فایل اضافه کنید:

[public]
   path = /home/archuser/share
   public = yes
   only guest = yes
   writable = yes
   printable = no

توجه کنید که مقدار جلوی path بایستی دقیقا آن چیزی که در خروجی دستور pwd گرفتید، باشد. از آنجایی که لینوکس به بزرگی و کوچکی حروف حساس است، پیشنهاد می‌کنم برای وارد کردن این مقدار توجه خود را دوچندان کنید.
سمبا را ری‌استارت کنید تا مسیر تعیین شده بر روی شبکه به اشتراک گذاشته شود.

sudo systemctl restart samba

دسترسی به پوشه‌ به اشتراک‌گذاشته شده

در لینوکس

از طریق خط فرمان وارد فایل fstab شوید

sudo nano /etc/fstab

و خط زیر را به آن اضافه کنید:

//192.168.1.100/archuser/share/ /mnt/share cifs username=archuser,password=PASS,workgroup=MYGROUP,ip=192.168.1.100,noauto,x-systemd.automount,x-systemd.device-timeout=10   0 0

در خط بالا به جای archuser، نام کاربری که قبلا انتخاب کرده بودید و به جای PASS هم کلمه‌ی عبوری که برای سمبا پیشتر برگزدید را قرار دهید.
حالا یک پوشه با نام share در مسیر /mnt/ می‌سازیم.

sudo mkdir /mnt/share

اکنون با دستور زیر می‌توانیم در سیستم لینوکسی به این پوشه که محتویاتش همان فایل‌های موجود در پوشه‌ی share موجود در ذخیره‌ساز شبکه‌مان است دسترسی پیدا کنیم.

sudo mount -a

من بعد در هر بار ری‌استارت شدن سیستم، این مسیر به صورت خودکار متصل می‌شود و از طریق فایل‌منیجر در دسترس است.

در ویندوز

بر روی مای کامپیوتر در دسکتاپ راست کلیک و گزینه‌ی Map Network Drive را انتخاب کنید. در دیالوگ باز شده، جلوی درایو یک حرف را انتخاب کنید و در فیلد پایین خط زیر را وارد کنید (به جای اسلش از بک‌اسلش استفاده کنید).

\192.168.1.100archusershare

سپس Reconnect at Login را تیک بزنید و بر روی Finish کلیک کنید. اکنون از شما نام کاربری و پسورد سمبا خواسته می‌شود. با وارد کردن این مقادیر یک درایو جدید در کامپیوتر نشان داده می‌شود که حاوی محتویات پوشه‌ی به اشتراک گذاشته شده بر روی سرور است.

در اندروید

برنامه‌ی ES File manager را نصب کنید. در صفحه‌ی اصلی (Homepage) بر روی Network در زیر قسمت Tools بزنید. در صفحه‌ی باز شده بر روی New در گوشه پایین-چپ بزنید. در دیالوگ باز شده بر روی LAN بزنید.
جلوی Server عبارت زیر را وارد کنید.

192.168.1.100/archuser/share/

جلوی Username و Password هم نام کاربری و پسورد سمبا را وارد کنید. می‌توانید اسمی هم برای این ورودی در فیلد Display as انتخاب کنید. با کلیک بر روی OK پوشه از این به بعد در صفحه‌ی Network دسترس شما خواهد بود.

به همین راحتی چند صد گیگ به فضای دیوایس‌های متصل به شبکه‌ی خود اضافه کردید.

10 دیدگاه

  1. سلام
    من یک مشکلی در نوشتن روی هارد سرور دارم من سرور رو دارم اجازه نوشتن ندارم یا پاک کردن قایل ندارم

    • دو روش به ذهنم می‌رسه. اولی رو تست کنید و ببینید مشکل حل میشه اگه نشد روش دوم رو تست کنید.
      اون قسمتی هست که نوشته:
      [public]
      path = /home/archuser/share
      public = yes
      only guest = yes
      writable = yes
      printable = no
      اینجا یه خط جدید اضافه کنید و یوزرنیم سرورتون رو اضافه کنید:
      force user = archuser
      به جای archuser یوزنیم سرور رو بنویسید.
      —-
      روش دوم باید کاربر شما دسترسی لازم برای این کار رو داشته باشه. اول با استفاده از کاربر روت از طریق خط فرمان وارد بشید تا همه‌ی دسترسی‌ها رو داشته باشید. بعد می‌تونید یک گروه رو مشخص کنید و اون مسیر رو متعلق به اون گروه کنید:
      sudo chgrp -R www-data /home/archuser
      sudo chmod -R g+w /home/archuser
      حالا که اون مسیر متعلق به گروه www-data شد می‌تونید کاربرتون رو جزئی از این گروه کنید و روی اون فولدر بنویسید و به تبعش فایل‌ها رو حذف کنید:
      sudo usermod -a -G www-data archuser

      البته من الان سرورم خاموشه و نمی‌تونم تست کنم ولی باید جواب بده بهتون.

      به جای archuser نام کاربری خودتون رو بنویسید.

  2. سلام
    آره یه هوایی (به اصطلاح عامیانه که) سر ماخوردگی زیاد شده امیدوارم زود خوبشی
    آره حتما بنویس قلمت رو دوست دارم

    • سلام
      مرسی، الان خیلی بهترم.
      پس حتما می‌نویسم، مایه‌ی افتخارم هست که دوستان عزیزی مثل خودت منت می‌ذارن و نوشته‌هام رو می‌خونن 😉

  3. سلام
    امید وارم خوب باشی
    راستی اشتراک گذاری در دو سیستم لینوکسی چطوری هستش البته با ssh راستش میخوام مخزن pkg رو برای سیستمهای دیگم به اشتراک بزارم و یک مخزن محلی بسازم راستش موفق شدم آرچ رو روی فلش نصب کنم با فایل سیستم btrfs با سیستم آماده و در حال استفاده نصب سیستم جدید خیلی راحت هستش

    • سلام.
      ممنون. یکمی سرما خوردم. حالا سرما چه وقته بود رو نمی‌دونم ‎:D
      من خودم از طریق اون فولدری که با samba به اشتراک گذاشتم، مخزن پک‌من سیستم اصلی رو با اون سیستم یکی کردم. خیلی ساده‌ست. ولی اگه نخوای از samba استفاده کنی، چیزی به اسم sshfs هست که می‌تونی فایل‌سیستم رو از راه دور، روی سیستم خودت مانت یا سوار کنی.
      اگه کارت با این اطلاعات جزئی راه می‌افته که هیچی. اگه نه، بگو تا یکمی که حالم بهتر شد در خصوص راه‌اندازی‌ش روی آرچ‌لینوکس بنویسم. البته اگه موفق بشم که کانفیگش کنم ‎:D

  4. سلام من او ن پاراتیشن رو تو fstab به آدرس example: home/userarch/share ماونت کردم مشکلم حل شد

  5. سلام دوست عزیز اگر بخوام یک پاراتیشن رو که با همین نام روی سیستم مونت شده share/ رو به اشتراک بزارم چیکار باید بکنم

    • سلام
      اول مطمئن شو که اون پارتیشن توی استارت‌آپ به صورت خودکار سوار میشه. یعنی خط مربوط به سوار شدنش توی اف‌استب وجود داره.بعد همون کارهایی رو که برای پارتیشن داخل مسیر خانه کردی رو برای همین باید تکرار کنی.

پاسخ دهید

ایمیل شما نمایش داده نخواهد شد