اشتراک گذاری فایل با samba

احتمالا واسه همه پیش اومده که خواستن دو تا سیستم که یکیش سیستم عامل ویندوز داره و اونیکی گنو/لینوکس رو به اصطلاح شبکه کنن . یا حتی دوتا سیستم لینوکسی . اینکارو میشه با samba انجام داد . تو این پست یه سناریو خیلی ساده رو پیاده سازی می کنیم و خودمونو اصلا درگیر تنظیمات یوزر نمی کنیم .

خب واضحه که تو مرحله اول باید این دو تا یا چنتا سیستم به یه شبکه وصل باشن . بهتره که ip آدرساشون رو هم بدونید و پینگ کنید تا مطمئن شید این وسط مشکلی نیست . بعد می تونید ادامه بدید

Samba چیه ؟

سامبا یه نرم افزار آزاده که از پروتکل SMB/CIFS استفاده می کنه و خدمات عادی شبکه که همه انتظارشو داریم رو در اختیار کلاینت های ویندوزی میذاره . سامبا روی اکثریت سیستم عامل های شبه یونیکسی مثل گنو/لینوکس و سیستم عامل های مک اجرا میشه .

نصب روی ubuntu 20.04 و ویندوز

sudo apt update 
sudo apt install samba python3-samba samba-common samba-common-bin -y

خب با دستور بالا رو اوبونتو نصب میشه . اگه از فایروال ufw تو لینوکس استفاده می کنید یادتون باشه که حتما بهش اجازه کار بدید

sudo ufw allow samba

و برای فعال کردنش تو ویندوز مثل عکس زیر عمل می کنیم . و بعدش باید ریبوت کنید .

enable samba

اشتراک گذاری فولدر تو ویندوز

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

networkaccess

add new

بهتره دسترسی روی فقط خواندن بزارید . رو دکمه share کلیک کنید . اوکیه .

اشتراک گذاری فولدر در لینوکس

اگه میزکارتون گنوم یا kde هست به صورت دیفالت باید یه گزینه باشه که با راست کلیک روش می تونید فولدر مورد نظرتونو به اشتراک بزارید . مثل عکس زیر

localshare foldershare

اگه از میز کار xfce استفاده می کنید مثل من به صورت دیفالت این گزینه نیست ولی به راحتی میشه اضافه ش کرد .

برای به اشتراک گذاری فایل منیجر دیفالت thunar رو باز کنید از منو بالا روی ‌edit و سپس روی Configure custom action کلیک کنید و علامت بعلاوه رو بزنید

share action

و تو قسمت command دستور زیر رو وارد کنید . اگه خواستید می تونید براش آیکون هم ست کنید .

net usershare add %n %f “” Everyone:R guest_ok=y

و برای unsahre کردنش هم یکی جدید بسازید و این دستور تو قسمت command وارد کنید

net usershare delete %n

unsahre

برای دیدن فولدرهای به اشتراک گذاشته شده لینوکسمون روی ویندوز کلیدای ترکیبی win + r رو فشار بدید و به صورت زیر آی پی سیستم لینوکسیتون رو بزنید

open network

ویندوز explorer باز می شه و فولدر های به اشتراک گذاشته شده رو نشونتون میده چون فولدر ها برای گروه کاربران Everyone هست ازتون یوزرنیم و پسورد نمی خواد.

و اما روی لینوکس اگه تو قسمت Browse Network فایل منیجرتون نشون نداد می تونید از طرق کامند لاین هم بازش کنید . من از فایل منیجر thunar استفاده می کنم فایل منیجر های دیگه هم باید به همین منوال باشه .

thunar smb://ip-address 
برای مثال فایل منیجر دیفالت اوبونتو به این صورت 
nautilus smb://ip-address

اگه از روی لینوکس میخوایید به فولدر های ویندوز دسترسی داشته باشید یه همچین پنجره ای میاد که فقط لازمه فیلد های یوزرنیم و پسورد رو با هر اطلاعاتی پر کنید و محتوای فولدر دسترسی پیدا کنید . ( چون تو قسمت قبلی برای everyone به اشتراک گذاشتیم تو ویندوز )

anyuser

اگه قسمت فراموش شده ای نباشه باید با همین مراحل کارتون را بیفته :)

پی نوشت : یکم سرسری نوشتم این پستو :-)